:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-primary-900:#0f2f5f;--color-primary-800:#174278;--color-primary-700:#1d5fa8;--color-primary-050:#eef6ff;--color-ink:#172033;--color-muted:#64748b;--color-soft:#f6f8fb;--color-card:#fff;--color-line:#dbe3ef;--color-danger:#b42318;--color-danger-soft:#fef3f2;--color-success:#067647;--color-success-soft:#ecfdf3;--color-warning:#9a6700;--color-warning-soft:#fffbeb;--shadow-sm:0 1px 2px #0f172a0f;--shadow-md:0 16px 36px #0f172a14;--radius-sm:6px;--radius-md:8px;--sidebar-width:17.5rem;color:var(--color-ink);background:var(--color-soft);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.5}*{box-sizing:border-box}body{background:radial-gradient(circle at top left, #2477c914, transparent 22rem), var(--color-soft);min-width:320px;margin:0}a{color:var(--color-primary-700);overflow-wrap:anywhere;font-weight:650;text-decoration:none}a:hover{color:var(--color-primary-900);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:2px}button,.button{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-card);min-height:2.5rem;color:var(--color-primary-800);font:inherit;cursor:pointer;box-shadow:var(--shadow-sm);justify-content:center;align-items:center;padding:.55rem .9rem;font-weight:750;line-height:1.2;display:inline-flex}button:hover,.button:hover{background:#f8fbff;border-color:#b7c6db;text-decoration:none}button:disabled{cursor:wait;opacity:.62}button[type=submit],.button--primary,form>button:last-child{border-color:var(--color-primary-700);background:var(--color-primary-700);color:#fff}button[type=submit]:hover,.button--primary:hover,form>button:last-child:hover{border-color:var(--color-primary-900);background:var(--color-primary-900);color:#fff}button.danger,.button--danger{background:var(--color-danger-soft);color:var(--color-danger);border-color:#f3b4ad}input,select,textarea{border-radius:var(--radius-sm);width:100%;min-height:2.5rem;color:var(--color-ink);font:inherit;background:#fff;border:1px solid #cbd5e1;padding:.58rem .72rem;box-shadow:0 1px 1px #0f172a08}textarea{resize:vertical;min-height:7rem}input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline-offset:2px;outline:3px solid #2477c93d}label{color:#334155;gap:.38rem;font-size:.9rem;font-weight:700;display:grid}label.check,.check{align-items:center;gap:.55rem;display:flex}input[type=checkbox]{width:1rem;min-height:1rem}form{grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));align-items:end;gap:1rem;margin:1.25rem 0;display:grid}form h2,form h3,form p,form fieldset,form .form-span{grid-column:1/-1}fieldset{border:1px solid var(--color-line);border-radius:var(--radius-md);gap:.55rem;padding:.9rem;display:grid}legend{color:#334155;padding:0 .25rem;font-weight:800}h1,h2,h3{color:#0f172a;letter-spacing:0;margin:0;line-height:1.18}h1{font-size:clamp(1.75rem,2.4vw,2.35rem);font-weight:850}h2{font-size:1.18rem;font-weight:800}h3{font-size:1rem;font-weight:800}p{color:var(--color-muted);margin:.55rem 0}ul,ol{margin:1rem 0;padding-left:1.25rem}li{margin:.55rem 0}table{border-collapse:separate;border-spacing:0;border:1px solid var(--color-line);border-radius:var(--radius-md);width:100%;box-shadow:var(--shadow-sm);background:#fff;margin:1rem 0;overflow:hidden}th,td{text-align:left;vertical-align:top;border-bottom:1px solid #edf2f7;padding:.78rem .85rem}thead th{z-index:1;color:#475569;text-transform:uppercase;background:#f8fafc;font-size:.75rem;font-weight:850;position:sticky;top:0}tbody tr:hover{background:#f8fbff}tbody tr:last-child th,tbody tr:last-child td{border-bottom:0}article,.section-card{border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-card);box-shadow:var(--shadow-sm);margin:1rem 0;padding:1.15rem}small{color:var(--color-muted);margin-top:.3rem;font-size:.75rem;font-weight:700;display:block}[role=alert]{color:var(--color-danger);font-weight:700}.auth-page{min-height:100vh;padding:1.5rem}.auth-page--centered{place-items:center;display:grid}.auth-panel{border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-card);width:min(100%,34rem);box-shadow:var(--shadow-md);padding:1.5rem}.auth-panel--password-change{gap:1.25rem;width:min(100%,30rem);display:grid}.auth-panel--password-change form{grid-template-columns:1fr;margin:0}.app-shell{grid-template-columns:var(--sidebar-width) minmax(0, 1fr);min-height:100vh;display:grid}.app-shell--guest{display:block}.app-sidebar{background:linear-gradient(180deg, var(--color-primary-900), #143c73);color:#fff;height:100vh;padding:1.2rem;position:sticky;top:0;overflow-y:auto}.brand{color:#fff;align-items:center;gap:.75rem;text-decoration:none;display:flex}.brand:hover{color:#fff;text-decoration:none}.brand__mark{border-radius:var(--radius-md);width:2.35rem;height:2.35rem;color:var(--color-primary-900);letter-spacing:0;background:#fff;flex:none;justify-content:center;align-items:center;font-size:.78rem;font-weight:900;display:inline-flex}.brand strong,.brand small{display:block}.brand small{color:#cfe3ff;margin-top:.1rem;font-size:.78rem;font-weight:650}.brand--compact{color:var(--color-primary-900)}.brand--compact .brand__mark{background:var(--color-primary-900);color:#fff}.brand--compact:hover{color:var(--color-primary-900)}.side-nav{gap:1.1rem;margin-top:2rem;display:grid}.side-nav section{gap:.25rem;display:grid}.side-nav h2{color:#9fc5f8;text-transform:uppercase;padding:0 .7rem;font-size:.72rem;font-weight:850}.side-nav a{border-radius:var(--radius-sm);color:#e9f3ff;padding:.62rem .7rem;font-weight:720;display:block}.side-nav a:hover,.side-nav a.active{color:#fff;background:#ffffff1f;text-decoration:none}.side-nav a.active{box-shadow:inset 3px 0 #fff}.app-body{min-width:0}.topbar{z-index:5;border-bottom:1px solid var(--color-line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffeb;justify-content:space-between;align-items:center;gap:1rem;min-height:4.25rem;padding:.85rem 1.5rem;display:flex;position:sticky;top:0}.topbar__context{gap:.1rem;display:grid}.topbar__context strong{color:#0f172a;font-size:.98rem}.topbar__context span,.account-nav__user{color:var(--color-muted);font-size:.85rem;font-weight:700}.account-nav{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.65rem;display:flex}.account-nav a,.account-nav button{min-height:2.2rem;padding:.45rem .68rem;font-size:.86rem}.content{width:min(100%,78rem);margin:0 auto;padding:1.8rem}.app-shell--guest .content{align-content:center;width:min(100%,34rem);min-height:calc(100vh - 4.25rem);display:grid}.app-shell--guest .content>*{width:100%}.page-header{gap:.45rem;margin-bottom:1.25rem;display:grid}.page-header .eyebrow,.eyebrow{color:var(--color-primary-700);letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:850}.page-description{max-width:56rem;font-size:1rem}.page-actions,.section-card__actions{flex-wrap:wrap;gap:.65rem;display:flex}.page-actions form{display:contents}.section-card__header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.section-card__header p{margin-bottom:0}.dashboard-grid,.card-grid,.class-grid,.result-grid{grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:1rem;display:grid}.dashboard-card,.class-card,.result-card{border:1px solid var(--color-line);border-radius:var(--radius-md);min-height:10rem;box-shadow:var(--shadow-sm);background:#fff;gap:.55rem;padding:1rem;display:grid}.dashboard-card:hover,.class-card:hover{box-shadow:var(--shadow-md);border-color:#b9cbe2}.dashboard-card__icon{border-radius:var(--radius-md);background:var(--color-primary-050);width:2.35rem;height:2.35rem;color:var(--color-primary-800);justify-content:center;align-items:center;font-weight:900;display:inline-flex}.meta-list{flex-wrap:wrap;gap:.5rem;margin:.25rem 0;padding:0;list-style:none;display:flex}.meta-list li,.meta-pill{border:1px solid var(--color-line);color:#475569;background:#f8fafc;border-radius:999px;margin:0;padding:.28rem .55rem;font-size:.78rem;font-weight:760}.breadcrumbs{margin-bottom:1rem}.breadcrumbs ol{flex-wrap:wrap;gap:.45rem;margin:0;padding:0;list-style:none;display:flex}.breadcrumbs li{color:var(--color-muted);margin:0;font-size:.86rem;font-weight:700}.breadcrumbs li+li:before{content:"/";color:#94a3b8;margin-right:.45rem}.filter-panel{margin:1rem 0}.filter-panel__bar{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.filter-panel__body{border:1px solid var(--color-line);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);background:#fff;margin-top:.85rem;padding:1rem}.filter-panel__body form{margin:0}.empty-state{border-radius:var(--radius-md);text-align:center;background:#fbfdff;border:1px dashed #b8c7dc;justify-items:center;gap:.55rem;padding:2rem;display:grid}.empty-state__icon{border-radius:var(--radius-md);background:var(--color-primary-050);width:2.7rem;height:2.7rem;color:var(--color-primary-800);justify-content:center;align-items:center;font-size:.8rem;font-weight:900;display:inline-flex}.empty-state__action{margin-top:.35rem}.status-badge{color:#475569;white-space:nowrap;background:#f8fafc;border:1px solid #cbd5e1;border-radius:999px;align-items:center;padding:.18rem .5rem;font-size:.75rem;font-weight:850;display:inline-flex}.status-badge[data-status=active],.status-badge[data-status=published],.status-badge[data-status=completed]{background:var(--color-success-soft);color:var(--color-success);border-color:#abefc6}.status-badge[data-status=draft],.status-badge[data-status=planned],.status-badge[data-status=pending],.status-badge[data-status=in_progress],.status-badge[data-status=open]{background:var(--color-warning-soft);color:var(--color-warning);border-color:#fedf89}.status-badge[data-status=inactive],.status-badge[data-status=closed],.status-badge[data-status=archived],.status-badge[data-status=cancelled],.status-badge[data-status=absent],.status-badge[data-status=ended]{background:var(--color-danger-soft);color:var(--color-danger);border-color:#fecaca}.flash{border-radius:var(--radius-md);width:min(100% - 3.6rem,78rem);box-shadow:var(--shadow-sm);margin:1rem auto 0;padding:.9rem 1rem}.flash--success{background:var(--color-success-soft);color:var(--color-success);border:1px solid #abefc6}.flash--warning{background:var(--color-warning-soft);color:#7a4b00;border:1px solid #fedf89}.assessment-grid{overflow-x:auto}.assessment-grid table{min-width:58rem}.assessment-grid tbody tr:has(select:disabled){background:#fff7ed}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.trail-subtitle{color:#334155;margin:-.7rem 0 1rem;font-weight:700}.compact-meta,.publication-checklist{flex-wrap:wrap;gap:.75rem;padding:0;list-style:none;display:flex}.compact-meta li{gap:.15rem;min-width:10rem;margin:0;display:grid}.compact-meta span{color:var(--color-muted)}.compact-details{margin-top:.8rem}.compact-details summary{color:var(--color-primary-700);cursor:pointer;font-weight:750}.trail-config-form{margin:0;display:block}.skill-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1rem;display:grid}.question-configuration select{min-width:7rem}.question-configuration td:nth-child(4) select{min-width:10rem}.publication-checklist li{border:1px solid var(--color-line);border-radius:var(--radius-sm);grid-template-columns:auto 1fr;gap:.05rem .5rem;min-width:13rem;margin:0;padding:.65rem .8rem;display:grid}.publication-checklist li>span:last-child{color:var(--color-muted);grid-column:2;font-size:.82rem}.publication-checklist .is-ready>span:first-child{color:var(--color-success)}.publication-checklist .is-pending>span:first-child{color:var(--color-warning)}@media (width<=760px){.skill-fields{grid-template-columns:1fr}}.question-block{gap:.75rem;display:grid}.question-option{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:#f8fafc;grid-template-columns:auto 1fr;align-items:start;gap:.6rem;padding:.65rem;display:grid}.question-option strong{color:var(--color-primary-800)}.primary-result{background:linear-gradient(#fff,#f5faff);border-color:#b8d8ff}.auth-panel{border:1px solid var(--color-line);border-radius:var(--radius-md);box-shadow:var(--shadow-md);background:#fff;padding:1.5rem}@media (width<=960px){.app-shell{display:block}.app-sidebar{height:auto;padding:1rem;position:relative}.side-nav{gap:1rem;margin-top:1rem;padding-bottom:.25rem;display:flex;overflow-x:auto}.side-nav section{min-width:11rem}.topbar{flex-direction:column;align-items:flex-start;position:relative}.account-nav{justify-content:flex-start}.content{padding:1.1rem}}@media (width<=640px){form{grid-template-columns:1fr}.section-card__header{display:grid}th,td{padding:.65rem}.flash{width:calc(100% - 2rem)}}
