:root,html[data-theme=light]{--bg:#f4f7fb;--bg-2:#ecf2f8;--surface:#ffffff;--surface-secondary:#eff4f8;--surface-strong:#ffffff;--text:#1c3048;--muted:#52657b;--faint:#63748a;--line:#dbe4ef;--line-strong:#9bafc5;--accent:#146b77;--accent-hover:#0d5360;--accent-text:#fff;--tone-blue:#2b61af;--tone-violet:#7354b4;--green:#216b4b;--amber:#895413;--red:#b63245;--nav-bg:#12273e;--nav-active:#c0e9e6;--glass-surface:var(--surface);--glass-elevated:var(--surface-strong);--glass-border:var(--line);--shadow:0 2px 5px rgba(26,52,82,.025),0 12px 32px rgba(26,52,82,.045);--floating-shadow:0 20px 60px rgba(18,39,62,.16);--mesh-teal:rgba(115,178,183,.13);--mesh-violet:rgba(135,147,201,.10);--mesh-blue:rgba(121,174,220,.15);--radius:14px;--radius-lg:18px;--topbar-height:76px}html[data-theme=dark]{--bg:#0e1927;--bg-2:#142237;--surface:#18283c;--surface-secondary:#20344a;--surface-strong:#1b2c41;--text:#edf4fd;--muted:#bdcbe0;--faint:#a8b8cf;--line:#30465f;--line-strong:#7289a4;--accent:#9cddd9;--accent-hover:#c1eeeb;--accent-text:#102b34;--tone-blue:#b1ccff;--tone-violet:#cdbaff;--green:#9adbb5;--amber:#f0ca91;--red:#ffb5bf;--nav-bg:#0c1929;--nav-active:#b6e8e4;--glass-surface:var(--surface);--glass-elevated:var(--surface-strong);--glass-border:var(--line);--shadow:0 2px 6px rgba(0,0,0,.05),0 16px 40px rgba(0,0,0,.14);--floating-shadow:0 20px 60px rgba(0,0,0,.36)}html[data-accent=blue],html[data-accent=indigo]{--accent:#365f9f;--accent-hover:#274b84}html[data-theme=dark][data-accent=blue],html[data-theme=dark][data-accent=indigo]{--accent:#b1ccff;--accent-hover:#ccddff}html[data-accent=graphite]{--accent:#435a71;--accent-hover:#30465f}html[data-theme=dark][data-accent=graphite]{--accent:#c4d7ea;--accent-hover:#e1edfa}html[data-theme=dark] [data-nav-tone=blue]{--nav-tone:#b1ccff}html[data-theme=dark] [data-nav-tone=green]{--nav-tone:#9adbb5}html[data-theme=dark] [data-nav-tone=violet]{--nav-tone:#cdbaff}html[data-theme=dark] [data-nav-tone=slate]{--nav-tone:#c4d7ea}.topbar{background:var(--glass-elevated);box-shadow:0 1px 0 var(--line);border-bottom:0}.dashboard-stack{gap:24px;max-width:1440px}.welcome-row{padding:6px 0 18px;border-radius:0;border:0;border-bottom:1px solid var(--line);background:transparent;box-shadow:none}.welcome-row h1{font-size:clamp(1.8rem,2.6vw,2.7rem);line-height:1.18;letter-spacing:-.045em}.welcome-row .eyebrow{letter-spacing:.14em;font-size:.67rem}.primary-button{border-radius:12px;min-height:46px;font-weight:650;box-shadow:none}.secondary-button{border-radius:12px;min-height:44px}.glass-card,.profile-panel,.record-table-card,.setting-panel{border-radius:14px;background:var(--surface);box-shadow:0 1px 3px rgba(24,48,62,.04)}.metric-card{border-radius:20px;box-shadow:var(--shadow);border-color:var(--line)}.metric-card strong{font-variant-numeric:tabular-nums;letter-spacing:-.045em}.status-pill{font-weight:600;border-radius:8px;letter-spacing:0}.filter-tabs{flex-wrap:wrap;max-width:100%}.filter-tabs button{min-height:44px;padding:9px 13px;font-size:.78rem}.card-heading{gap:16px;flex-wrap:wrap}.card-heading h3{font-size:1.18rem;letter-spacing:-.025em}.record-controls :is(input,select),.search-box{border-radius:12px}.faculty-hero{padding:24px;border-radius:22px;background:var(--surface)}.faculty-hero-stats>div{border-radius:14px}.clinical-rule-note,.faculty-hero-stats>div{border:1px solid var(--line);background:var(--surface-secondary)}.clinical-rule-note{padding:15px 18px;border-radius:14px;font-size:.8rem;color:var(--muted)}.clinical-rule-note>span{color:var(--text);font-weight:650}.app-mark{filter:none!important;border-radius:14px;background-color:transparent;box-shadow:none}.login-brand-panel{background:radial-gradient(ellipse at 10% 0,rgba(86,166,174,.25),transparent 65%),linear-gradient(155deg,#173851,#112239)}.login-card{border-radius:26px;border-color:var(--line);background:var(--glass-elevated)}.login-card h1{letter-spacing:-.04em}.login-card input{border-radius:12px}:where(input,select,textarea){accent-color:var(--accent)}@media(min-width:1001px){.app-shell{padding:14px;gap:14px;grid-template-columns:244px minmax(0,1fr);background:var(--bg)}.sidebar{top:14px;height:calc(100dvh - 28px);border:1px solid rgba(196,221,242,.15);border-radius:24px;background:var(--nav-bg);box-shadow:none;padding:24px 13px 13px}.sidebar .brand{padding:0 8px 24px}.sidebar .course-chip{margin:0 3px 18px;background:rgba(229,241,255,.055);border-radius:14px}.sidebar nav .nav-group>p{font-size:.6rem;letter-spacing:.15em;color:#b5c9df;margin:20px 10px 8px}.sidebar nav button{min-height:46px;margin:3px 0;border:1px solid transparent;border-radius:12px;padding:7px 10px;color:#c7d9ed;gap:12px}.sidebar nav button>b{font-size:.82rem;font-weight:500}.sidebar nav button>span{width:30px;height:30px;flex-basis:30px;background:transparent;color:#abc4df;border-radius:9px}.sidebar nav button.active{background:rgba(185,225,238,.12);border-color:rgba(185,225,238,.19);box-shadow:inset 3px 0 0 #b6e8e4;color:#fff}.sidebar nav button.active>b{font-weight:650}.sidebar nav button.active>span{background:#b6e8e4;color:#153547}.sidebar nav button:hover{background:rgba(210,230,255,.08);color:#fff}.content-shell{height:calc(100dvh - 28px);border:1px solid var(--line);border-radius:24px;background:color-mix(in srgb,var(--surface) 24%,transparent);overflow:hidden}.content-scroll{padding:30px 32px 32px}.topbar{padding:10px 26px;height:76px}}@media(max-width:1000px){.welcome-row{padding:4px 0 16px}.content-scroll{padding-top:22px}.mobile-nav{left:0;right:0;bottom:0;border-radius:0;border-color:var(--line);background:var(--surface);box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.mobile-nav button.active{background:color-mix(in srgb,var(--nav-tone) 12%,var(--surface));color:var(--text)}}@media(max-width:600px){.dashboard-stack{gap:18px}.welcome-row{padding:4px 0 16px;border-radius:0}.welcome-row h1{font-size:1.8rem}.welcome-row .welcome-actions{width:100%}.welcome-row .welcome-actions button{flex:1}.faculty-hero{padding:18px}.content-scroll{padding-top:16px}.card-heading{align-items:flex-start}.filter-tabs{width:100%}.filter-tabs button{flex:1 1 auto}.metric-card{min-height:132px}.clinical-rule-note{font-size:.76rem}.login-card{border-radius:22px}}@media(prefers-reduced-transparency:reduce){.glass-card,.login-card,.mobile-nav,.topbar,.welcome-row{background:var(--surface-strong);backdrop-filter:none;-webkit-backdrop-filter:none}}html[data-contrast=high]{--muted:var(--text);--faint:var(--text);--line-strong:var(--text)}html[data-contrast=high] :is(.glass-card,.welcome-row,.topbar,.mobile-nav,.login-card){background:var(--surface-strong);border-color:var(--text)}@media(forced-colors:active){.content-shell,.glass-card,.sidebar,.sidebar nav button.active,.welcome-row{background:Canvas;color:CanvasText;border-color:CanvasText}.sidebar nav button,.sidebar nav button>span{color:CanvasText;background:Canvas}.primary-button{background:ButtonFace;color:ButtonText}}.workspace-loading{padding:24px;border:1px solid var(--line);border-radius:16px;background:var(--surface-secondary);color:var(--muted)}.topbar{backdrop-filter:none;-webkit-backdrop-filter:none}.content-scroll,.content-shell,.dashboard-stack{min-width:0}:is(.welcome-row,.card-heading) :is(h1,h2,h3,p){overflow-wrap:anywhere}:is(.primary-button,.secondary-button,.icon-button,.mobile-nav button){touch-action:manipulation}:is(button,a,input,select,textarea):focus-visible{outline:2px solid var(--accent);outline-offset:3px}.mobile-nav button{transition:background-color .12s ease,color .12s ease}.mobile-nav button.active{box-shadow:inset 0 3px 0 var(--nav-tone,var(--accent));font-weight:650}@media(max-width:600px){.topbar{padding-inline:12px;gap:4px}.topbar>div:first-child{min-width:0;flex:1}.topbar h2{font-size:1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.content-scroll{padding-inline:14px;padding-bottom:calc(100px + env(safe-area-inset-bottom))}.welcome-row{gap:14px}.welcome-row h1{font-size:clamp(1.45rem,6.5vw,1.8rem)}.welcome-row p{line-height:1.6}.welcome-actions{flex-wrap:wrap}.glass-card,.record-table-card,.setting-panel{border-radius:16px}.filter-tabs{gap:6px}.filter-tabs button{min-height:44px}.mobile-nav small{font-size:.66rem;text-align:center;overflow-wrap:anywhere;line-height:1.2}.pagination{flex-wrap:wrap;gap:10px}.pagination>span{width:100%;font-size:.8rem}.pagination button{min-height:44px;flex:1}.modal-footer{flex-wrap:wrap;gap:10px;padding-bottom:calc(14px + env(safe-area-inset-bottom))}.modal-footer>div{min-width:0;flex:1;flex-wrap:wrap}.modal-footer button{min-height:48px;white-space:normal}.toast{left:12px;right:12px;max-width:calc(100vw - 24px);overflow-wrap:anywhere;font-size:.85rem}}@media(prefers-reduced-motion:reduce){.mobile-nav button{transition:none}}@media print{@page{size:A4 landscape;margin:9mm}body.rotation-printing .rotation-sheet>footer,body.rotation-printing .rotation-sheet>footer span{color:#344955!important}body.rotation-printing{background:#fff!important;color:#17212b!important;font-size:9pt;-webkit-print-color-adjust:exact;print-color-adjust:exact}body.rotation-printing .app-footer,body.rotation-printing .app-shell>:not(.content-shell),body.rotation-printing .closure-banner,body.rotation-printing .mobile-nav,body.rotation-printing .rotation-workspace>:not(.rotation-sheet),body.rotation-printing .toast,body.rotation-printing .topbar{display:none!important}body.rotation-printing .app-shell,body.rotation-printing .content-scroll,body.rotation-printing .content-shell{display:block!important;width:100%!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;background:#fff!important;overflow:visible!important}body.rotation-printing .rotation-sheet{display:block!important;border:1px solid #c6d0d8!important;border-radius:0!important;background:#fff!important;color:#17212b!important;box-shadow:none!important;overflow:visible!important}body.rotation-printing .rotation-row>button,body.rotation-printing .rotation-sheet>header>button{display:none!important}body.rotation-printing .rotation-document-header{padding:8mm 8mm 5mm!important;border-bottom:0!important;gap:5mm!important;align-items:flex-start!important}body.rotation-printing .rotation-document-brand{width:100%;justify-content:center;text-align:center;position:relative}body.rotation-printing .rotation-document-brand .app-mark{position:absolute;left:0;top:0;width:15mm;height:15mm;border-radius:3mm}body.rotation-printing .rotation-document-brand .eyebrow{color:#1b6689!important;font-size:7.5pt!important;letter-spacing:1.2pt!important}body.rotation-printing .rotation-document-brand h2{margin-top:2mm!important;font-size:18pt!important;color:#102638!important}body.rotation-printing .rotation-document-brand span{color:#415766!important;font-size:9pt!important}body.rotation-printing .rotation-document-meta{grid-template-columns:repeat(4,1fr)!important;gap:2mm!important}body.rotation-printing .rotation-document-meta>span{border:1px solid #cbd6de!important;border-radius:1.5mm!important;background:#f2f7fa!important;padding:2.2mm 3mm!important}body.rotation-printing .rotation-document-meta small{color:#5e7382!important;font-size:6.5pt!important}body.rotation-printing .rotation-document-meta b{color:#17212b!important;font-size:8.5pt!important}body.rotation-printing .rotation-allocation-table,body.rotation-printing .rotation-faculty-grid,body.rotation-printing .rotation-sheet-tools,body.rotation-printing .rotation-table{display:none!important}body.rotation-printing .rotation-print-summary{display:block!important;width:calc(100% - 16mm)!important;margin:0 8mm 4mm!important}body.rotation-printing .rotation-print-summary table{width:100%;border:1px solid #b7c9d3;border-collapse:collapse;table-layout:fixed}body.rotation-printing .rotation-print-summary thead{display:table-header-group!important}body.rotation-printing .rotation-print-summary tr{break-inside:avoid!important;page-break-inside:avoid!important}body.rotation-printing .rotation-print-summary th{padding:2.2mm 2.4mm!important;background:#176a79!important;color:#fff!important;font-size:7.5pt!important;text-align:left;text-transform:uppercase;letter-spacing:.35pt}body.rotation-printing .rotation-print-summary td{padding:2.2mm 2.4mm!important;border-top:1px solid #d9e2e7;color:#17212b!important;font-size:8pt!important;line-height:1.25;vertical-align:middle;overflow-wrap:anywhere}body.rotation-printing .rotation-print-summary tbody tr:nth-child(2n){background:#f2f7f8!important}body.rotation-printing .rotation-print-summary td:first-child,body.rotation-printing .rotation-print-summary th:first-child{width:36%;font-weight:700}body.rotation-printing .rotation-print-summary td:nth-child(2),body.rotation-printing .rotation-print-summary th:nth-child(2){width:54%;font-variant-numeric:tabular-nums}body.rotation-printing .rotation-print-summary td:nth-child(3),body.rotation-printing .rotation-print-summary th:nth-child(3){width:10%;text-align:center}body.rotation-printing .rotation-print-summary p{margin:3mm 0 0;color:#526674!important;font-size:7pt!important;line-height:1.35}body.rotation-printing .rotation-sheet>footer{padding:3mm 8mm!important;border-top:1px solid #cbd6de!important;color:#526674!important;font-size:7pt!important}body.gradebook-printing{background:#fff!important;color:#17212b!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}body.gradebook-printing .app-footer,body.gradebook-printing .app-shell>:not(.content-shell),body.gradebook-printing .closure-banner,body.gradebook-printing .gradebook-view>:not(.gradebook-print-sheet),body.gradebook-printing .mobile-nav,body.gradebook-printing .toast,body.gradebook-printing .topbar{display:none!important}body.gradebook-printing .app-shell,body.gradebook-printing .content-scroll,body.gradebook-printing .content-shell,body.gradebook-printing .gradebook-view{display:block!important;width:100%!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;background:#fff!important;overflow:visible!important}body.gradebook-printing .gradebook-print-sheet{display:block!important;color:#17212b!important}body.gradebook-printing .gradebook-print-sheet>header{display:flex;align-items:center;justify-content:center;gap:5mm;text-align:center;padding:0 0 4mm;border-bottom:1px solid #bfcbd3}body.gradebook-printing .gradebook-print-sheet .app-mark{width:15mm;height:15mm}body.gradebook-printing .gradebook-print-sheet h1,body.gradebook-printing .gradebook-print-sheet p,body.gradebook-printing .gradebook-print-sheet span{margin:0;color:#17212b!important}body.gradebook-printing .gradebook-print-sheet p{color:#1b6689!important;font-size:7.5pt;font-weight:700;text-transform:uppercase;letter-spacing:1pt}body.gradebook-printing .gradebook-print-sheet h1{margin:1mm 0;font-size:17pt}body.gradebook-printing .gradebook-print-sheet header span{font-size:8.5pt;color:#4d6472!important}body.gradebook-printing .gradebook-print-meta{display:flex;justify-content:space-between;gap:4mm;padding:3mm 0;font-size:7pt;color:#4d6472!important}body.gradebook-printing .gradebook-print-sheet table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:7.2pt}body.gradebook-printing .gradebook-print-sheet thead{display:table-header-group}body.gradebook-printing .gradebook-print-sheet th{padding:2.2mm 1.6mm;background:#225b84!important;color:#fff!important;text-align:left;overflow-wrap:anywhere}body.gradebook-printing .gradebook-print-sheet td{padding:2mm 1.6mm;border-bottom:1px solid #d5dee4;vertical-align:top;overflow-wrap:anywhere}body.gradebook-printing .gradebook-print-sheet tbody tr:nth-child(2n){background:#f3f6f8!important}body.gradebook-printing .gradebook-print-sheet tr{break-inside:avoid;page-break-inside:avoid}body.gradebook-printing .gradebook-print-sheet footer{display:block!important;margin-top:3mm;padding-top:2mm;border-top:1px solid #c5d0d7;color:#5a6f7c!important;font-size:6.5pt}body.clinical-report-printing .app-footer,body.clinical-report-printing .mobile-nav,body.clinical-report-printing .reports-view>:not(.clinical-report-print-sheet),body.clinical-report-printing .sidebar,body.clinical-report-printing .topbar{display:none!important}body.clinical-report-printing,body.clinical-report-printing .app-shell,body.clinical-report-printing .content-scroll,body.clinical-report-printing .content-shell,body.clinical-report-printing .reports-view{display:block!important;width:100%!important;max-width:none!important;height:auto!important;min-height:0!important;overflow:visible!important;margin:0!important;padding:0!important;background:white!important;box-shadow:none!important;border:0!important}.clinical-report-print-sheet{display:block;color:#172b42;background:white;font:9pt Arial,sans-serif}.clinical-report-print-sheet h1{font-size:18pt}.clinical-report-print-sheet h2{font-size:13pt;margin-top:18pt}.clinical-report-print-sheet table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:7pt}.clinical-report-print-sheet td,.clinical-report-print-sheet th{border:1px solid #c8d5dc;padding:5pt;overflow-wrap:anywhere;vertical-align:top}.clinical-report-print-sheet th{background:#ecf3f6}.clinical-report-print-sheet thead{display:table-header-group}.clinical-report-print-sheet tr{break-inside:avoid}.clinical-report-print-sheet h2{break-after:avoid}}@media print{html body:is(.clinical-report-printing,.gradebook-printing,.rotation-printing),html:has(body:is(.clinical-report-printing,.gradebook-printing,.rotation-printing)){background:#fff!important;background-image:none!important}body.clinical-report-printing .closure-banner,body.clinical-report-printing .toast,body.clinical-report-printing .workflow-sync-banner,body.gradebook-printing .grade-date-note{display:none!important}body:is(.clinical-report-printing,.gradebook-printing,.rotation-printing) *,body:is(.clinical-report-printing,.gradebook-printing,.rotation-printing) :after,body:is(.clinical-report-printing,.gradebook-printing,.rotation-printing) :before{animation:none!important;transition:none!important;transform:none!important;filter:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;box-shadow:none!important;text-shadow:none!important}body:is(.clinical-report-printing,.gradebook-printing,.rotation-printing) .ambient,body:is(.clinical-report-printing,.gradebook-printing,.rotation-printing) .app-shell:before,body:is(.clinical-report-printing,.gradebook-printing,.rotation-printing) .noise,body:is(.clinical-report-printing,.gradebook-printing,.rotation-printing):before{display:none!important}}