.nav-group-label { margin: 18px 12px 6px; color: #71809f; font-size: .68rem; font-weight: 800; letter-spacing: .08em; }
.workspace-context { display: flex; align-items: center; gap: 8px; margin-right: auto; }
.context-button { min-height: 38px; padding: 0 12px; border: 1px solid #dfe5ef; border-radius: 8px; background: #fff; color: #14213d; }
@media (max-width: 760px) { .nav-group-label { display: none; } .workspace-context { min-width: 0; } .context-button { max-width: 150px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } }
.brand { display: grid; gap: 2px; }
.brand small { color: #8e9ab2; font-size: .7rem; font-weight: 700; letter-spacing: .04em; }
.session-summary { display: flex; align-items: center; justify-content: flex-end; gap: 10px; }
.session-summary > span { white-space: nowrap; }
.field-help { display: block; color: #66738e; font-size: .78rem; line-height: 1.45; }
.check-option { display: flex !important; flex-direction: row !important; align-items: center; gap: 9px; }
.check-option input { width: 18px; height: 18px; }
.form input[readonly] { background: #f3f6fb; color: #53617b; cursor: not-allowed; }
.form label.is-derived::after { content: "Tự tính theo chu kỳ"; color: #59708f; font-size: .72rem; font-weight: 600; }
@media (max-width: 760px) { .session-summary strong { display: none; } .session-summary { gap: 6px; } }

.module-failure { max-width: 720px; display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 16px; align-items: start; border-color: #fecaca; background: #fffafa; }
.module-failure .error-mark { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 50%; background: #fee2e2; color: #b42318; font-weight: 900; }
.module-failure h1 { margin: 0 0 8px; }
.module-failure code { display: inline-block; margin: 8px 0 18px; padding: 6px 9px; border-radius: 6px; background: #fff; color: #b42318; }
