._scaler_20vys_5{--navy: #03386c;--navy-dark: #09305c;--navy-ink: #0a3768;--navy-light: #0b4a85;--yellow: #f5c518;--yellow-light: #ffd84d;--sky: #e3f0fa;--card: #1f2933;--ink: #111827;--muted: #6b7280;position:relative;width:100vw;min-height:100dvh;overflow:hidden;background:linear-gradient(180deg,var(--navy) 0%,var(--navy-dark) 100%);color:#fff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}._stage_20vys_27{position:absolute;visibility:hidden;width:1920px;height:1080px;transform-origin:top left}._stageReady_20vys_34{visibility:visible}._heroBg_20vys_40{position:absolute;inset:0;overflow:hidden;isolation:isolate}._heroPhoto_20vys_41{position:absolute;inset:0;background:linear-gradient(180deg,#0000,#0000008c),url(/login/bg.png) center / cover no-repeat;opacity:.94;filter:grayscale(1) contrast(1.08) brightness(.9)}._heroTint_20vys_49{position:absolute;inset:0;background:var(--navy);mix-blend-mode:color}._heroUnion_20vys_54{position:absolute;left:-155px;top:-180px;width:4022px;height:1363.573px;color:var(--navy-light)}._heroUnion_20vys_54 svg{display:block;width:100%;height:100%}._lowerBand_20vys_61{position:absolute;left:0;bottom:0;width:100%;height:280px;background:linear-gradient(180deg,var(--navy) 0%,var(--navy-light) 100%)}._topnav_20vys_66{position:absolute;top:80px;right:90px;z-index:10;display:flex;gap:20px}._pill_20vys_72{display:inline-flex;align-items:center;gap:14px;border:0;border-radius:42px;padding:16px 30px;background:#09305cdb;color:var(--sky);box-shadow:inset 0 0 0 1px #e3f0fa47,0 6px 22px #00000047;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);font:inherit;font-size:25px;font-weight:700;letter-spacing:0}._card_20vys_85{position:absolute;left:783px;bottom:38px;width:1152px;min-height:663px;overflow:hidden;border-radius:61px;background:var(--card);box-shadow:0 30px 80px #00000061}._card_20vys_85:before{position:absolute;inset:0;border-radius:61px;background:radial-gradient(120% 60% at 50% 0%,rgba(255,255,255,.06),transparent 60%);content:"";pointer-events:none}._cardInner_20vys_97{display:flex;flex-direction:column;gap:28px;padding:105px 85px 60px 220px}._logo_20vys_106{display:flex;justify-content:center;margin-bottom:2px}._brand_20vys_107{display:inline-flex;align-items:center;gap:12px}._brandMark_20vys_108{display:block;width:46px;height:50px;flex:0 0 auto;object-fit:contain}._brandText_20vys_109{display:flex;flex-direction:column;align-items:flex-start}._brandWordmark_20vys_110{display:block;padding-bottom:4px;border-bottom:3px solid #fff;color:#fff;font-family:Liebling,Inter,ui-sans-serif,system-ui,sans-serif;font-size:32px;font-weight:700;line-height:30px;white-space:nowrap}._brandInstitution_20vys_115{display:block;margin-top:8px;color:#ffffffc7;font-family:Liebling,Inter,ui-sans-serif,system-ui,sans-serif;font-size:14px;font-weight:300;line-height:14px;white-space:nowrap}._brandBreak_20vys_124{display:none}._title_20vys_126{margin:0;color:#fff;font-size:36px;font-weight:700;letter-spacing:0;line-height:.95;text-align:center}._accent_20vys_136{color:var(--yellow)}._titleBreak_20vys_140{display:inline}._form_20vys_144{display:flex;flex-direction:column;gap:16px;margin:0;width:100%;max-width:640px;align-self:center}._formMain_20vys_148{display:flex;flex-direction:column;gap:16px}._fieldGroup_20vys_149{min-width:0}._fieldBox_20vys_150{position:relative;display:flex;height:56px;align-items:center;border:2px solid transparent;border-radius:20px;background:#fff;padding:0 24px;transition:border-color .15s ease,box-shadow .15s ease}._fieldBox_20vys_150:focus-within{border-color:var(--navy);box-shadow:0 0 0 4px #f5c51852}._fieldBoxError_20vys_157{border-color:#f87171}._input_20vys_158{width:100%;border:0;outline:0;background:transparent;color:var(--ink);font:inherit;font-size:16px;font-weight:500;letter-spacing:0}._input_20vys_158::placeholder{color:var(--muted)}._input_20vys_158:-webkit-autofill,._input_20vys_158:-webkit-autofill:hover,._input_20vys_158:-webkit-autofill:focus{-webkit-text-fill-color:var(--ink);box-shadow:0 0 0 1000px #fff inset;caret-color:var(--ink)}._inputWithAction_20vys_171{padding-right:42px}._rightSlot_20vys_172{position:absolute;top:50%;right:18px;display:grid;place-items:center;transform:translateY(-50%)}._iconButton_20vys_173{display:grid;width:34px;height:34px;place-items:center;border:0;border-radius:999px;background:transparent;color:var(--navy);cursor:pointer;transition:background .15s ease,color .15s ease}._iconButton_20vys_173:hover{background:#03386c1f;color:var(--navy-dark)}._fieldError_20vys_180{display:flex;align-items:center;gap:6px;margin-top:6px;color:#fee2e2;font-size:13px;font-weight:600;line-height:1.2}._helperRow_20vys_185{display:flex;align-items:center;justify-content:flex-end;gap:16px;color:#fff}._linkButton_20vys_186{border:0;background:transparent;color:#fff;cursor:pointer;font:inherit;font-size:15px;font-weight:700;text-decoration:underline;text-underline-offset:3px}._errorAlert_20vys_192{display:flex;align-items:flex-start;gap:8px;border-radius:16px;padding:10px 14px;background:#fee2e2f5;color:#991b1b;font-size:14px;font-weight:600;line-height:1.3}._submitWrap_20vys_199{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:6px}._marks_20vys_207{display:flex;align-items:center;gap:20px}._marks_20vys_207 img{height:40px;width:auto;filter:brightness(0) invert(1);opacity:.88}._submit_20vys_199{display:inline-flex;align-items:center;justify-content:center;min-width:178px;border:0;border-radius:36px;padding:14px 46px;background:linear-gradient(180deg,var(--yellow-light) 0%,var(--yellow) 100%);box-shadow:0 8px 22px #f5c51857,inset 0 -2px #00000014;color:var(--navy-ink);cursor:pointer;font:inherit;font-size:22px;font-weight:700;letter-spacing:0;transition:transform .15s ease,filter .2s ease,opacity .2s ease}._submit_20vys_199:hover:not(:disabled){filter:brightness(1.04);transform:translateY(-1px)}._submit_20vys_199:disabled{cursor:not-allowed;opacity:.66}._submitBusy_20vys_223{cursor:wait}._model_20vys_225{position:absolute;left:230px;bottom:0;width:710px;height:auto;pointer-events:none;filter:drop-shadow(0 30px 40px rgba(0,0,0,.25))}._bottomLinks_20vys_229{position:absolute;left:1070px;top:1042px;z-index:12;width:770px}._helperLinks_20vys_230{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px 14px;color:#fff;font-size:16px;font-weight:600;text-align:center}._separator_20vys_234{opacity:.65}._srOnly_20vys_236{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;clip-path:inset(50%)}@media(max-width:767px){html,body{width:100%;max-width:100%;overflow-x:hidden}._scaler_20vys_5{width:100%;max-width:100vw;min-height:100svh;overflow-x:clip;overflow-y:auto;background:var(--card);overscroll-behavior-x:none;touch-action:pan-y}._stage_20vys_27{position:relative;left:0!important;top:0!important;width:100%!important;height:auto!important;min-height:100svh;overflow-x:clip;transform:none!important;contain:paint}._heroBg_20vys_40{position:relative;inset:auto;max-width:100%;height:405px;overflow:hidden}._heroPhoto_20vys_41{background-position:center,center 30%;background-size:100% 100%,auto 112%}._heroBg_20vys_40:before{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,#03386c73,#03386c00 50%);content:"";pointer-events:none}._heroUnion_20vys_54{left:-180px;top:-60px;z-index:2;width:820px;height:280px}._lowerBand_20vys_61{display:none}._topnav_20vys_66{top:max(32px,calc(env(safe-area-inset-top,0px) + 8px));left:0;right:0;z-index:40;max-width:100%;box-sizing:border-box;padding:0 16px}._pill_20vys_72{width:100%;justify-content:center;border-radius:999px;padding:11px 10px;background:#09305ceb;font-size:12.5px;white-space:nowrap;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}._model_20vys_225{top:84px;bottom:auto;left:50%;z-index:5;width:320px;transform:translate(-50%);filter:drop-shadow(0 16px 24px rgba(0,0,0,.35))}._card_20vys_85{position:relative;left:auto;top:auto;bottom:auto;z-index:10;width:100%;max-width:100%;box-sizing:border-box;height:auto;min-height:0;margin-top:-4px;overflow:visible;border-radius:32px 32px 0 0;box-shadow:0 -12px 30px #00000040}._card_20vys_85:before{inset:10px auto auto 50%;width:40px;height:4px;border-radius:4px;background:#ffffff40;transform:translate(-50%)}._cardInner_20vys_97{gap:12px;padding:26px 22px 22px}._logo_20vys_106{margin-top:8px;margin-bottom:0}._brandMark_20vys_108{width:30px;height:33px}._brandWordmark_20vys_110{padding-bottom:3px;border-bottom-width:2px;font-size:21px;line-height:20px}._brandInstitution_20vys_115{margin-top:6px;font-size:10.5px;line-height:12.5px;white-space:normal}._brandBreak_20vys_124{display:inline}._title_20vys_126{margin:0 0 6px;font-size:22px;line-height:1.05;text-wrap:balance}._titleBreak_20vys_140{display:none}._form_20vys_144,._formMain_20vys_148{gap:12px}._fieldBox_20vys_150{height:50px;border-radius:16px;padding:0 18px}._input_20vys_158{font-size:14.5px}._fieldError_20vys_180{font-size:11px}._linkButton_20vys_186{font-size:13px}._submitWrap_20vys_199{flex-direction:column;align-items:stretch;gap:14px;margin-top:4px}._marks_20vys_207{justify-content:center;gap:14px}._marks_20vys_207 img{height:30px}._submit_20vys_199{width:100%;min-width:0;border-radius:999px;padding:14px 0;font-size:17px}._bottomLinks_20vys_229{position:relative;left:auto;top:auto;z-index:12;width:auto;max-width:100%;box-sizing:border-box;padding:12px 22px max(24px,calc(env(safe-area-inset-bottom,0px) + 16px));background:var(--card);font-size:13px}._helperLinks_20vys_230{gap:6px 10px;font-size:13px}}@font-face{font-family:Liebling;src:url(/assets/LieblingBold-DyUfxuYE.otf) format("opentype");font-style:normal;font-weight:700;font-display:swap}@font-face{font-family:Liebling;src:url(/assets/LieblingLight-Cahw3aIO.otf) format("opentype");font-style:normal;font-weight:300;font-display:swap}:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#e4e4e7;background:#121212;font-synthesis:none;text-rendering:optimizeLegibility;color-scheme:dark;--background: #121212;--surface: #1e1f20;--surface-hover: #242528;--surface-strong: #27272a;--border: #2b2c2f;--border-hover: #3c3e42;--text: #e4e4e7;--muted: #9ca3af;--dim: #71717a;--blue: #3b82f6;--green: #34d399;--green-soft: rgba(52, 211, 153, .12);--amber: #fbbf24;--amber-soft: rgba(251, 191, 36, .12);--red: #f87171;--red-strong: #ef4444;--red-soft: rgba(248, 113, 113, .12);--violet: #a78bfa}*{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100%}body{margin:0;min-height:100vh;background:var(--background)}button,input,select,textarea{font:inherit;letter-spacing:0}button,a{-webkit-tap-highlight-color:transparent}a{color:#93c5fd;text-decoration:none}a:hover{text-decoration:none}h1,h2,h3,p{margin-top:0}h1{margin-bottom:6px;color:#f4f4f5;font-size:24px;line-height:1.25;letter-spacing:0}h2{margin-bottom:16px;color:#f4f4f5;font-size:16px;line-height:1.4;letter-spacing:0}small{color:var(--muted)}.app-frame{min-height:100vh;overflow:hidden;background:var(--background)}.app-header{position:relative;z-index:50;display:flex;height:70px;align-items:center;justify-content:space-between;padding:0 16px;border-bottom:1px solid var(--border);background:var(--background)}.header-brand{display:flex;align-items:center;gap:8px;min-width:0}.brand{display:flex;min-width:0;align-items:center;gap:7px;color:var(--text)}.brand-logo{display:block;width:35px;height:38px;flex:0 0 auto;object-fit:contain}.brand-text{display:flex;min-width:0;flex-direction:column;align-items:flex-start}.brand-wordmark{display:block;padding-bottom:3px;border-bottom:2px solid #ffffff;color:#fff;font-family:Liebling,ui-sans-serif,system-ui,sans-serif;font-size:19px;font-weight:700;line-height:18px;transform:translateY(5px);white-space:nowrap}.brand-institution{display:block;margin-top:7px;color:#ffffffc7;font-family:Liebling,ui-sans-serif,system-ui,sans-serif;font-size:11px;font-weight:300;line-height:11px;white-space:nowrap}.brand-mark{display:grid;width:30px;height:30px;place-items:center;border-radius:8px;color:#001d35;background:#c2e7ff}.brand-mark svg{width:19px;height:19px}.brand-copy{display:flex;min-width:0;flex-direction:column;line-height:1.05}.brand-copy strong{color:#f4f4f5;font-size:15px}.brand-copy small{margin-top:3px;color:var(--dim);font-size:10px}.header-menu{flex:0 0 auto;margin-left:-8px}.header-search-container{display:block;max-width:768px;flex:1 1 0%;padding:0 16px}.header-search{position:relative;display:flex;width:100%;height:36px;min-height:36px;max-height:36px;align-items:center;gap:0;padding:8px 16px;border:0;border-radius:999px;background:#d9d9df;box-shadow:inset 0 1px #ffffff80,0 1px 2px #0000004d,0 3px 7px #0003;transition:box-shadow .15s ease,background .15s ease,transform .15s ease}.header-search:focus-within{background:#e6e6eb;box-shadow:0 0 0 1px #3b82f673,inset 0 1px #ffffff80,0 2px 4px #00000052,0 6px 14px #0000003d;transform:translateY(-1px)}.header-search svg{width:16px;height:16px;flex:0 0 auto;color:#636366}.header-search input{min-height:0;padding:0 12px;border:0;color:#1d1d1f;background:transparent;box-shadow:none;font-size:15px;line-height:22px}.header-search input::placeholder{color:#636366}.header-search input:focus{border:0;box-shadow:none}.header-search input::-webkit-search-cancel-button{opacity:.55}.header-search kbd{display:grid;min-width:0;place-items:center;padding:2px 6px;border:0;border-radius:4px;color:#636366;background:#c8c8d0;font-size:10px;line-height:normal;white-space:nowrap}.search-clear{display:grid;flex:0 0 auto;place-items:center;padding:2px;border:0;color:#6b7280;background:transparent;cursor:pointer;transition:color .15s ease}.search-clear:hover{color:#1d1d1f}.search-clear svg{width:14px;height:14px}.search-results{position:absolute;top:calc(100% + 8px);right:0;left:0;overflow:hidden;border:1px solid var(--border-hover);border-radius:12px;background:#1e1f20;box-shadow:0 18px 45px #00000073}.search-results button{display:flex;width:100%;min-height:52px;align-items:center;gap:11px;padding:7px 12px;border:0;border-bottom:1px solid var(--border);color:var(--text);background:transparent;cursor:pointer;text-align:left}.search-results button:last-child{border-bottom:0}.search-results button:hover{background:var(--surface-hover)}.search-results button>svg{width:18px;height:18px;color:#a78bfa}.search-results button>span{display:flex;flex:1;flex-direction:column}.search-results button strong{color:#e4e4e7;font-size:12px}.search-results button small{margin-top:2px;color:var(--dim);font-size:9px}.search-results button kbd{border:0;color:#52525b;background:transparent}.search-results>p{margin:0;padding:22px;color:var(--dim);text-align:center;font-size:11px}.header-actions{position:relative;display:flex;align-items:center;justify-content:flex-end;gap:12px;min-width:0}.header-action-button{display:grid;width:28px;height:28px;place-items:center;padding:4px;border:0;border-radius:50%;color:#9ca3af;background:transparent;cursor:pointer;transition:color .15s ease,background .15s ease}.header-action-button:hover{color:#e4e4e7;background:var(--surface-strong)}.header-action-button svg{width:20px;height:20px}.theme-button{color:#facc15}.notification-action{display:none}.mobile-search-action{display:grid}.account-avatar{display:grid;width:32px;height:32px;flex:0 0 auto;place-items:center;padding:0;border:0;border-radius:50%;color:#fff;background:var(--blue);cursor:pointer;font-size:13px;font-weight:700;transition:box-shadow .15s ease}.account-avatar:hover,.account-avatar.active{box-shadow:0 0 0 2px #3b82f659}.header-popover{position:absolute;top:42px;right:0;width:260px;overflow:hidden;border:1px solid #2a2a2e;border-radius:12px;color:#d4d4d8;background:#1e1e1e;box-shadow:0 18px 45px #0000006b}.header-popover>strong{display:block;padding:13px 15px;border-bottom:1px solid #2a2a2e;font-size:13px}.header-popover>p{margin:0;padding:24px 15px;color:var(--dim);text-align:center;font-size:11px}.shortcuts-popover>div{display:flex;align-items:center;justify-content:space-between;padding:9px 15px;color:var(--muted);font-size:11px}.shortcuts-popover kbd{padding:2px 7px;border:1px solid #3f3f46;border-radius:5px;background:#27272a;font-size:10px}.popover-account{display:flex;flex-direction:column;padding:13px 15px;border-bottom:1px solid #2a2a2e}.popover-account strong{font-size:13px}.popover-account small{margin-top:3px;color:var(--dim);font-size:10px}.account-popover button{display:flex;width:100%;align-items:center;gap:10px;padding:10px 15px;border:0;color:#ef4444;background:transparent;cursor:pointer;font-size:12px}.account-popover button:hover{background:#ef44441a}.account-popover button svg{width:16px}.mobile-search-panel{position:fixed;z-index:70;top:70px;right:8px;left:8px;overflow:hidden;border:1px solid var(--border);border-radius:12px;background:var(--background);box-shadow:0 18px 45px #00000080}.mobile-search-panel>form{display:flex;height:48px;align-items:center;gap:10px;padding:0 12px;border-bottom:1px solid var(--border)}.mobile-search-panel>form>svg{width:18px;color:var(--muted)}.mobile-search-panel>form input{min-height:0;padding:0;border:0;background:transparent;box-shadow:none}.mobile-search-panel>form button{display:grid;width:30px;height:30px;place-items:center;padding:0;border:0;border-radius:50%;color:var(--muted);background:transparent}.mobile-search-panel>form button svg{width:17px}.mobile-search-results{display:flex;max-height:280px;flex-direction:column;overflow-y:auto;padding:6px 0}.mobile-search-results button{display:flex;min-height:42px;align-items:center;gap:11px;padding:0 14px;border:0;color:var(--muted);background:transparent;text-align:left}.mobile-search-results button:hover{background:var(--surface-hover)}.mobile-search-results button svg{width:17px}.mobile-search-results p{margin:0;padding:18px;color:var(--dim);text-align:center;font-size:11px}.app-shell{display:grid;height:calc(100vh - 70px);grid-template-columns:224px minmax(0,1fr) 56px;transition:grid-template-columns .2s ease}.app-shell.navigation-collapsed{grid-template-columns:0 minmax(0,1fr) 56px}.sidebar{position:relative;z-index:40;display:flex;width:224px;min-height:0;flex-direction:column;overflow:hidden;color:var(--text);background:var(--background);transition:transform .2s ease,opacity .2s ease}.navigation-collapsed .sidebar{transform:translate(-224px);opacity:0;pointer-events:none;visibility:hidden}.sidebar-action-wrap{padding:10px 10px 3px}.sidebar-action{display:inline-flex;min-height:34px;align-items:center;gap:7px;padding:5px 13px;border-radius:16px;color:#001d35;background:#c2e7ff;font-size:17px;font-weight:500;line-height:24px;transition:background .15s ease}.sidebar-action:hover{background:#b3d4eb}.sidebar-action svg{width:18px;height:18px}.sidebar nav{position:relative;display:flex;min-height:0;flex-direction:column;gap:4px;overflow-y:auto;padding:14px 0}.nav-pill{position:absolute;z-index:0;top:0;right:0;left:0;height:0;opacity:0;background:var(--surface);pointer-events:none;will-change:transform;transition:transform .34s cubic-bezier(.34,1.32,.64,1),height .2s ease,opacity .18s ease;--pill-color: var(--surface)}.nav-pill:before,.nav-pill:after{content:"";position:absolute;right:0;width:12px;height:12px;pointer-events:none}.nav-pill:before{top:-12px;background:radial-gradient(circle at top left,transparent 12px,var(--pill-color) 12px)}.nav-pill:after{bottom:-12px;background:radial-gradient(circle at bottom left,transparent 12px,var(--pill-color) 12px)}.sidebar nav a{position:relative;z-index:1;display:flex;min-height:42px;align-items:center;gap:9px;padding:8px 11px;border-radius:0 999px 999px 0;color:#a1a1aa;font-size:18px;font-weight:500;line-height:26px;transition:color .15s ease,background .15s ease}.sidebar nav a:hover{color:#e4e4e7;background:var(--surface-hover)}.sidebar nav a.active,.sidebar nav a.active:hover{color:#e4e4e7;background:transparent}.sidebar nav svg{width:18px;height:18px;flex:0 0 auto}.more-navigation{position:relative;z-index:1;display:flex;min-height:42px;align-items:center;gap:9px;padding:8px 11px;border:0;border-radius:0 999px 999px 0;color:#a1a1aa;background:transparent;cursor:pointer;font-size:18px;font-weight:500;line-height:26px;text-align:left}.more-navigation:hover{color:#e4e4e7;background:var(--surface-hover)}.more-navigation svg{width:18px;height:18px;transition:transform .2s ease}.more-navigation svg.expanded{transform:rotate(180deg)}.more-links{max-height:0;overflow:hidden;opacity:0;transition:max-height .2s ease,opacity .2s ease}.more-links.more-links-open{max-height:160px;opacity:1}.sidebar nav .more-links a{padding-left:36px;font-size:16px}.sidebar nav .more-links svg{width:16px;height:16px}.sidebar-backdrop{display:none}.workspace{min-width:0;min-height:0;overflow:hidden;padding:8px 8px 8px 0;background:var(--background)}.workspace-panel{width:100%;height:100%;overflow:hidden;border-radius:16px;background:var(--surface)}.right-toolbar{position:relative;display:flex;width:56px;min-height:0;flex-direction:column;align-items:center;gap:18px;padding:16px 0;border-left:1px solid var(--border);background:var(--background)}.right-toolbar>a,.right-toolbar>button{display:grid;width:32px;height:32px;flex:0 0 auto;place-items:center;padding:0;border:0;border-radius:50%;color:var(--muted);background:transparent;cursor:pointer;transition:background .15s ease}.right-toolbar>a:hover,.right-toolbar>button:hover,.right-toolbar>a.active{background:var(--surface-strong)}.right-toolbar svg{width:20px;height:20px}.toolbar-blue{color:#60a5fa}.toolbar-yellow{color:#facc15}.toolbar-green{color:#10b981}.toolbar-violet{color:#a78bfa}.toolbar-amber{color:#f59e0b}.toolbar-divider{width:24px;height:1px;background:var(--border)}.toolbar-panel{position:absolute;z-index:60;top:148px;right:48px;width:280px;overflow:hidden;border:1px solid var(--border);border-radius:14px;background:#1a1b1c;box-shadow:0 20px 48px #00000080}.toolbar-panel strong{display:block;padding:14px 16px;border-bottom:1px solid var(--border);color:#e4e4e7;font-size:13px}.toolbar-panel p{margin:0;padding:18px 16px;color:var(--dim);font-size:11px;line-height:1.55}.toolbar-panel button{width:calc(100% - 32px);margin:0 16px 14px;padding:7px;border:0;border-radius:7px;color:#d4d4d8;background:var(--surface-strong);cursor:pointer;font-size:11px}.page{display:flex;height:100%;min-height:0;flex-direction:column;gap:0;overflow-y:auto}.page-header{position:sticky;top:0;z-index:10;display:flex;min-height:49px;flex:0 0 auto;align-items:center;justify-content:space-between;gap:20px;padding:9px 24px;border-bottom:1px solid var(--border);background:var(--surface)}.page-header-title{display:flex;min-width:0;align-items:center;gap:10px}.page-header-icon{display:grid;place-items:center;color:#a78bfa}.page-header-icon svg{width:20px;height:20px}.page-header h1{margin:0;color:#f4f4f5;font-family:Liebling,ui-sans-serif,system-ui,sans-serif;font-size:18px;font-weight:700}.page-header p{max-width:560px;margin:1px 0 0;overflow:hidden;color:var(--dim);font-size:10px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.page-header-badge{padding:2px 8px;border-radius:999px;color:#9ca3af;background:var(--border);font-size:10px;font-weight:600}.page-actions{display:flex;flex-wrap:wrap;gap:8px}.page-header-centered{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}.page-header-centered .page-header-title{grid-column:2;justify-content:center}.page-header-centered .page-header-title>div{text-align:center}.page-header-centered .page-actions{grid-column:3;justify-self:stretch}.page-header-centered .page-actions{min-width:0;justify-content:flex-end;text-align:right}.page-header-centered .learning-header-actions{min-width:0;flex-wrap:wrap;justify-content:flex-end;gap:4px 12px}.page-header-centered .page-actions .context-updated,.page-header-centered .page-actions .back-link{white-space:nowrap}.page>.section,.page>.metrics-grid,.page>.offering-grid,.page>.two-columns,.page>.dashboard-summary,.page>.dashboard-list-section,.page>.back-link{margin-right:24px;margin-left:24px}.page>:nth-child(2){margin-top:24px}.page>.section,.page>.two-columns,.page>.dashboard-list-section{margin-top:16px}.page>:last-child{margin-bottom:24px}.section{padding:18px 19px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.section-heading h2,.section-heading span{margin:0}.section-heading>span{color:var(--muted);font-size:12px}.page-subject-overview .section-heading h2{color:#f4f4f5;font-family:Liebling,ui-sans-serif,system-ui,sans-serif;font-size:20px;font-weight:700}.metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px}.metric{min-height:132px;padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--surface);transition:border-color .15s ease}.metric:hover{border-color:var(--border-hover)}.metric-icon{display:grid;width:36px;height:36px;margin-bottom:12px;place-items:center;border-radius:8px;color:#60a5fa;background:#3b82f626}.metric-icon svg{width:18px;height:18px}.metric:nth-child(2) .metric-icon{color:#34d399;background:#34d39926}.metric:nth-child(3) .metric-icon{color:#fbbf24;background:#fbbf2426}.metric:nth-child(4) .metric-icon{color:#a78bfa;background:#a78bfa26}.metric>strong{display:block;color:#f4f4f5;font-size:24px;line-height:1}.metric-label{display:block;margin-top:5px;color:var(--dim);font-size:11px}.metric>small{display:block;margin-top:3px;color:#52525b;font-size:10px}.dashboard-summary{display:flex;align-items:center;justify-content:space-between;gap:20px}.dashboard-summary h2{margin:0;font-size:18px}.dashboard-summary p{margin:4px 0 0;color:var(--dim);font-size:11px}.completion-summary{display:flex;align-items:center;gap:12px}.completion-summary>div:first-child{display:flex;flex-direction:column;align-items:flex-end}.completion-summary strong{color:#f4f4f5;font-size:22px}.completion-summary small{margin-top:2px;color:var(--dim);font-size:9px}.completion-ring{--completion: 0;display:grid;width:48px;height:48px;place-items:center;border-radius:50%;background:conic-gradient(var(--blue) calc(var(--completion) * 1%),var(--border) 0);transform:rotate(-90deg)}.completion-ring span{width:38px;height:38px;border-radius:50%;background:var(--surface)}.dashboard-list-section{overflow:hidden;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.dashboard-list-heading{display:flex;min-height:46px;align-items:center;justify-content:space-between;gap:16px;padding:0 16px;border-bottom:1px solid rgba(43,44,47,.65)}.dashboard-list-heading>div{display:flex;align-items:center;gap:9px}.dashboard-list-heading svg{width:17px;height:17px;color:#818cf8}.dashboard-list-heading h2{margin:0;font-size:13px}.dashboard-list-heading span{padding:2px 7px;border-radius:999px;color:var(--muted);background:var(--border);font-size:9px}.dashboard-list-heading>a{color:#93c5fd;font-size:11px}.academic-rows{display:flex;flex-direction:column}.academic-row{display:grid;min-height:62px;grid-template-columns:20px 34px minmax(180px,1.4fr) minmax(180px,1fr) 86px 74px 55px;align-items:center;gap:12px;padding:8px 16px;border-bottom:1px solid rgba(43,44,47,.65);color:inherit;transition:background .15s ease}.academic-row:last-child{border-bottom:0}.academic-row:hover{background:var(--surface-hover)}.row-chevron{width:16px;height:16px;color:#52525b;transition:color .15s ease,transform .15s ease}.academic-row:hover .row-chevron{color:#a78bfa;transform:translate(2px)}.row-icon{display:grid;width:32px;height:32px;place-items:center;border-radius:8px;color:#fff;background:#2563eb}.row-icon-1{background:#7c3aed}.row-icon-2{background:#059669}.row-icon-3{background:#db2777}.row-icon svg{width:16px;height:16px}.row-primary,.row-secondary,.row-meta{display:flex;min-width:0;flex-direction:column}.row-primary strong{overflow:hidden;color:#f4f4f5;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.row-primary small{margin-top:3px;color:var(--dim);font-size:9px}.row-secondary strong{overflow:hidden;color:#a1a1aa;font-size:10px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.row-secondary small,.row-meta small{margin-top:3px;color:#52525b;font-size:9px}.row-meta strong{margin-top:2px;color:#a1a1aa;font-size:10px;font-weight:500}.row-students{display:flex;align-items:center;justify-content:flex-end;gap:6px;color:var(--dim)}.row-students svg{width:14px;height:14px;color:#a78bfa}.row-students strong{color:#a1a1aa;font-size:11px}.button{display:inline-flex;min-height:36px;align-items:center;justify-content:center;gap:8px;padding:0 13px;border:1px solid transparent;border-radius:6px;cursor:pointer;font-size:12px;font-weight:700;transition:border-color .15s ease,background .15s ease,color .15s ease}.button svg{width:16px;height:16px}.button:disabled{cursor:not-allowed;opacity:.5}.button-primary{color:#fff;background:#2563eb}.button-primary:hover:not(:disabled){background:#3b82f6}.button-secondary{color:#d4d4d8;border-color:var(--border-hover);background:var(--surface-strong)}.button-secondary:hover:not(:disabled){color:#fafafa;background:#353638}.button-danger{color:#fff;background:var(--red-strong)}.button-danger:hover:not(:disabled){background:#dc2626}.button-ghost{width:100%;justify-content:flex-start;padding-left:8px;color:#d4d4d8;background:transparent}.button-ghost:hover:not(:disabled){background:var(--surface-hover)}.icon-button{display:grid;width:36px;height:36px;flex:0 0 auto;place-items:center;border:0;border-radius:50%;color:#a1a1aa;background:transparent;cursor:pointer;transition:color .15s ease,background .15s ease}.icon-button:hover{color:#f4f4f5;background:var(--surface-hover)}.icon-button svg{width:20px;height:20px}label{display:flex;flex-direction:column;gap:6px;color:#d4d4d8;font-size:12px;font-weight:600}input,select,textarea{width:100%;min-height:38px;padding:8px 10px;border:1px solid var(--border-hover);border-radius:6px;color:var(--text);background:#18181b;outline:none;transition:border-color .15s ease,box-shadow .15s ease}input::placeholder,textarea::placeholder{color:#52525b}select{color-scheme:dark}textarea{resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #3b82f61f}.form-section form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.full{grid-column:1 / -1}.options-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.inline-form{display:flex;flex-direction:column;gap:13px}.horizontal-form{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));align-items:end;gap:13px}.horizontal-form .form-error{grid-column:1 / -1}.two-columns .horizontal-form{grid-template-columns:repeat(2,minmax(0,1fr))}.form-error,.form-success{padding:10px 12px;border:1px solid transparent;border-radius:6px;font-size:12px}.form-error{color:#fca5a5;border-color:#f8717133;background:var(--red-soft)}.form-success{color:#6ee7b7;border-color:#34d39933;background:var(--green-soft)}.field-error{color:var(--red)}.filters label{max-width:420px}.file-input strong{padding:11px;border:1px dashed #52525b;border-radius:6px;color:var(--muted);background:#18181b;font-weight:500}.page-materials .upload-tool,.page-questions .form-section{width:calc((100% - 224px) / 12 * 7 + 96px)}.upload-tool form{display:flex;flex-direction:column;gap:12px}.upload-tool .button{align-self:flex-start}.upload-tool form,.form-section form,.form-section>.inline-form,.form-section>.horizontal-form{padding:9px 14px;border:1px solid var(--pcard-inner-border);border-radius:16px;background:var(--pcard-inner-bg);box-shadow:0 1px 3px #0000000f}.upload-tool label,.form-section label{color:var(--pcard-text)}.theme-light .upload-tool form,.theme-light .form-section form,.theme-light .form-section>.inline-form,.theme-light .form-section>.horizontal-form{background:#e8e8ec}.theme-light .form-section .segmented{border-color:#9ca3af}.theme-light .form-section .segmented button{border-right-color:#9ca3af;color:#374151;background:#f9fafb}.theme-light .form-section .segmented button:hover{color:#111827;background:#eef1f5}.theme-light .form-section .segmented button.active{color:#1e3a8a;background:#dbe6f4}.theme-light .form-section .compact-list li{border-bottom-color:#cbd5e1;color:#374151}.theme-light .upload-tool input,.theme-light .upload-tool select,.theme-light .form-section input,.theme-light .form-section select,.theme-light .form-section textarea{border-color:#9ca3af;color:#111827;background:#f9fafb}.theme-light .upload-tool select,.theme-light .form-section select{color-scheme:light}.theme-light .upload-tool .file-input strong{border-color:#9ca3af;color:#374151;background:#f9fafb}.file-input input{position:absolute;width:1px;height:1px;opacity:0}fieldset{display:flex;max-height:260px;flex-direction:column;gap:8px;overflow:auto;padding:12px;border:1px solid var(--border);border-radius:6px}legend{padding:0 5px;color:#d4d4d8;font-size:12px;font-weight:700}.check-row{flex-direction:row;align-items:flex-start;font-weight:500}.check-row input{width:17px;min-height:17px;margin-top:1px;accent-color:var(--blue)}.table-wrap{position:relative;width:100%;overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:12px}th{padding:10px 12px;border-bottom:1px solid var(--border-hover);color:var(--dim);text-align:left;font-size:10px;font-weight:700;text-transform:uppercase}td{padding:12px;border-bottom:1px solid var(--border);color:#d4d4d8;vertical-align:middle}tbody tr{transition:background .15s ease}tbody tr:hover{background:#ffffff06}tbody tr:last-child td{border-bottom:0}td small{display:block;margin-top:3px;color:var(--dim)}.status{display:inline-flex;padding:3px 8px;border:1px solid #3f3f46;border-radius:999px;color:var(--muted);background:#3f3f4659;font-size:10px;font-weight:700;text-transform:capitalize}.status-active,.status-approved,.status-published,.status-completed{color:#6ee7b7;border-color:#34d39940;background:var(--green-soft)}.status-pending,.status-draft,.status-processing,.status-retry{color:#fcd34d;border-color:#fbbf2440;background:var(--amber-soft)}.status-suspended,.status-dead_letter,.status-failed{color:#fca5a5;border-color:#f8717140;background:var(--red-soft)}.offering-grid{display:grid;grid-template-columns:repeat(3,minmax(250px,1fr));gap:12px}.offering-card{display:flex;min-height:210px;flex-direction:column;justify-content:space-between;padding:17px;border:1px solid var(--border);border-radius:8px;color:inherit;background:var(--surface);transition:border-color .15s ease,background .15s ease,transform .15s ease}.offering-card:hover{border-color:var(--border-hover);background:#202123;transform:translateY(-1px)}.offering-card h2{margin:5px 0}.offering-card p{color:var(--muted);font-size:12px;line-height:1.5}.eyebrow{color:#60a5fa;font-size:10px;font-weight:800;text-transform:uppercase}.offering-card dl{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:15px 0 0}.offering-card dl div{min-width:0}.offering-card dt{display:flex;align-items:center;gap:4px;color:var(--dim);font-size:10px}.offering-card dt svg{width:13px}.offering-card dd{margin:4px 0 0;color:#e4e4e7;font-size:12px;font-weight:700}.question-list{display:flex;flex-direction:column}.question-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid var(--border)}.question-row:last-child{border-bottom:0}.question-row p{margin:8px 0 4px;color:#d4d4d8}.back-link{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;color:#93c5fd;font-size:12px}.back-link svg{width:16px}.two-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.segmented{display:grid;grid-template-columns:repeat(3,1fr);margin-bottom:15px;overflow:hidden;border:1px solid var(--border-hover);border-radius:6px}.segmented button{min-height:35px;border:0;border-right:1px solid var(--border-hover);color:var(--muted);background:#18181b;cursor:pointer}.segmented button:last-child{border-right:0}.segmented button:hover{color:var(--text);background:var(--surface-hover)}.segmented button.active{color:#dbeafe;background:#3b82f638}.compact-list{display:flex;max-height:260px;flex-direction:column;gap:0;margin:18px 0 0;padding:0;overflow:auto;list-style:none}.compact-list li{display:grid;grid-template-columns:90px 1fr auto;gap:10px;padding:9px 2px;border-bottom:1px solid var(--border);color:#d4d4d8;font-size:12px}.state{display:flex;min-height:220px;flex-direction:column;align-items:center;justify-content:center;gap:9px;padding:24px;color:var(--muted);text-align:center}.state svg{width:27px}.state strong{color:#d4d4d8}.state-error svg{color:var(--red)}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.login-page,.center-page{display:grid;min-height:100vh;place-items:center;padding:24px;background:#0a0a0b}.login-panel{width:min(100%,400px);padding:28px;border:1px solid var(--border);border-radius:8px;background:var(--surface);box-shadow:0 18px 50px #00000047}.login-panel h1{margin:22px 0 20px;font-size:22px}.login-subtitle{margin:-12px 0 4px;color:var(--muted);font-size:12px;line-height:1.4}.login-panel form{display:flex;flex-direction:column;gap:13px}.login-panel .button{width:100%;margin-top:6px}.login-brand{display:flex;align-items:center;gap:9px;color:#f4f4f5;font-size:17px;font-weight:800}.login-brand svg{color:#7dd3fc}.login-back-link{display:inline-flex;align-items:center;gap:6px;justify-content:center;margin-top:2px;color:#93c5fd;font-size:12px}.password-hints{display:flex;flex-wrap:wrap;gap:6px 10px;margin:0;padding:0;list-style:none;font-size:11px}.password-hints li{display:inline-flex;align-items:center;gap:4px}.hint-pass{color:var(--green)}.hint-fail{color:var(--muted)}.stack{display:flex;flex-direction:column;gap:12px}.center-page{align-content:center;color:var(--text);text-align:center}.center-page>svg{width:42px;height:42px;color:var(--red)}.center-page p{max-width:480px;color:var(--muted)}.theme-light{color:#1d1d1f;--background: #1f2933;--surface: #e8e8ec;--surface-hover: #e5e5ea;--surface-strong: #f0f0f2;--border: #d1d1d6;--border-hover: #c7c7cc;--text: #1d1d1f;--muted: #636366;--dim: #8e8e93}.theme-light .brand-copy strong,.theme-light h1,.theme-light h2,.theme-light .metric>strong,.theme-light .dashboard-summary h2,.theme-light .completion-summary strong,.theme-light .row-primary strong,.theme-light .search-results button strong,.theme-light .toolbar-panel strong{color:#1d1d1f}.theme-light .page-header h1,.theme-light .page-subject-overview .section-heading h2{color:#1f2933}.theme-light .brand-copy small,.theme-light .page-header p,.theme-light .metric-label,.theme-light .dashboard-summary p,.theme-light .row-primary small,.theme-light .row-secondary small,.theme-light .row-meta small{color:#8e8e93}.theme-light .sidebar nav a,.theme-light .more-navigation,.theme-light .header-action-button{color:#636366}.theme-light .brand-wordmark{border-bottom-color:#1d1d1f;color:#1d1d1f}.theme-light .brand-institution{color:#1d1d1fb8}.theme-light .sidebar nav a:hover,.theme-light .more-navigation:hover{color:#1d1d1f}.theme-light .sidebar nav a.active{color:#1e3a8a;background:transparent}.theme-light .header-search{background:#d9d9df}.theme-light input,.theme-light select,.theme-light textarea{color:#d1d5db;background:#1f2933}.theme-light .header-search input{color:#1d1d1f;background:transparent}.theme-light .search-results,.theme-light .header-popover,.theme-light .toolbar-panel{color:#d1d5db;background:#1f2933;box-shadow:0 14px 35px #00000024}.theme-light .section,.theme-light .metric,.theme-light .dashboard-list-section,.theme-light .offering-card,.theme-light .completion-ring span{background:#e8e8ec}.theme-light .row-secondary strong,.theme-light .row-meta strong,.theme-light .row-students strong,.theme-light td,.theme-light label{color:#3a3a3c}.theme-light .account-popover button{color:#dc2626}.theme-light .app-header,.theme-light .sidebar,.theme-light .navigation-collapsed .sidebar{border-color:#374151;background:#1f2933}.theme-light .app-header .header-menu,.theme-light .app-header .header-action-button,.theme-light .sidebar nav a,.theme-light .sidebar .more-navigation{color:#d1d5db}.theme-light .search-results button small,.theme-light .search-results>p,.theme-light .header-popover>p,.theme-light .toolbar-panel p{color:#9ca3af}.theme-light .header-search svg,.theme-light .header-search input::placeholder{color:#636366}.theme-light .search-results button,.theme-light .search-results button strong,.theme-light .toolbar-panel strong{color:#d1d5db}.theme-light .app-header .theme-button{color:#facc15}.theme-light .brand-wordmark{border-bottom-color:#fff;color:#fff}.theme-light .brand-institution{color:#ffffffc7}.theme-light .app-header .header-menu:hover,.theme-light .app-header .header-action-button:hover,.theme-light .sidebar nav a:hover,.theme-light .sidebar .more-navigation:hover{color:#fff;background:#ffffff1a}.theme-light .sidebar nav a.active,.theme-light .sidebar nav a.active:hover{color:#1e3a8a;background:transparent}.theme-light .app-header .header-menu:focus-visible,.theme-light .app-header .brand:focus-visible,.theme-light .app-header .header-action-button:focus-visible,.theme-light .app-header .account-avatar:focus-visible,.theme-light .sidebar .sidebar-action:focus-visible,.theme-light .sidebar nav a:focus-visible,.theme-light .sidebar .more-navigation:focus-visible{outline:2px solid #ffffff;outline-offset:2px}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{border:2px solid transparent;border-radius:999px;background:#3f3f46;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:#52525b;background-clip:padding-box}@media(min-width:768px){body{overflow:hidden}#root{width:100%;height:80vh;min-height:80vh;zoom:1.25}html.auth-stage #root{height:100%;min-height:100%;zoom:normal}.app-frame{height:80vh;min-height:80vh}.notification-action{display:grid}.mobile-search-action{display:none}.app-header{height:44.8px;padding:0 12.8px}.app-shell{height:calc(80vh - 44.8px);grid-template-columns:224px minmax(0,1fr) 44.8px}.app-shell.navigation-collapsed{grid-template-columns:0 minmax(0,1fr) 44.8px}.header-brand{gap:6.4px}.header-menu{width:28.8px;height:28.8px;margin-left:-6.4px}.header-menu svg{width:16px;height:16px}.brand{gap:5.6px}.brand-logo{width:28px;height:30.4px}.brand-wordmark{padding-bottom:2.4px;border-bottom-width:1.6px;font-size:15.2px;line-height:14.4px;transform:translateY(4px)}.brand-institution{margin-top:5.6px;font-size:8.8px;line-height:8.8px}.header-search-container{position:absolute;left:calc(50% + 21.492px);width:min(491.52px,calc(100% - 268.104px));max-width:none;padding:0 10.24px;transform:translate(-50%,.4px)}.header-search{height:24.775px;min-height:24.775px;max-height:24.775px;padding:5.12px 10.24px}.header-search svg{width:10.24px;height:10.24px}.header-search input{width:auto;flex:1 1 0%;padding:0 7.68px;color:#1d1d1f;font-family:ui-sans-serif,system-ui,sans-serif;font-size:10.24px;line-height:14.4px}.header-search input::placeholder{color:#636366}.header-search kbd{padding:1.28px 3.84px;border-radius:2.56px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:8px}.search-clear{padding:1.28px}.search-clear svg{width:8.96px;height:8.96px}.search-results{top:calc(100% + 6.4px);border-radius:9.6px}.header-actions{gap:9.6px}.header-action-button{width:22.4px;height:22.4px;padding:3.2px}.header-action-button svg{width:16px;height:16px}.notification-action{width:28.8px;height:28.8px;padding:6.4px}.account-avatar{width:25.6px;height:25.6px;font-size:9.6px}.sidebar{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;letter-spacing:0}.sidebar-action-wrap{padding:7.68px 7.68px 2.56px}.sidebar-action{min-height:27.2px;gap:5.12px;padding:3.84px 10.24px;border-radius:10.24px;font-size:14.4px;font-weight:500;line-height:19.2px}.sidebar-action svg{width:14.4px;height:14.4px}.sidebar nav{gap:3.2px;padding:11.2px 0}.nav-pill:before,.nav-pill:after{width:9.6px;height:9.6px}.nav-pill:before{top:-9.6px;background:radial-gradient(circle at top left,transparent 9.6px,var(--pill-color) 9.6px)}.nav-pill:after{bottom:-9.6px;background:radial-gradient(circle at bottom left,transparent 9.6px,var(--pill-color) 9.6px)}.sidebar nav a,.more-navigation{min-height:32px;gap:6.4px;padding:6.4px 8.96px;font-size:16px;font-weight:500;line-height:19.2px}.sidebar nav svg,.more-navigation svg{width:17.6px;height:17.6px}.sidebar nav .more-links a{padding-right:8.96px;padding-left:23.04px;font-size:14.8px;line-height:18.4px}.sidebar nav .more-links svg{width:13.6px;height:13.6px}.workspace{padding:6.4px 6.4px 6.4px 0}.workspace-panel{border-radius:12.8px}.right-toolbar{width:44.8px;gap:19.2px;padding:12.8px 0}.right-toolbar>a,.right-toolbar>button{width:25.6px;height:25.6px}.right-toolbar svg{width:16px;height:16px}}@media(min-width:768px)and (max-width:1023px){.header-search>kbd{display:none}}@media(max-width:1100px){.metrics-grid,.offering-grid,.horizontal-form{grid-template-columns:repeat(2,1fr)}.academic-row{grid-template-columns:20px 34px minmax(180px,1.4fr) minmax(150px,1fr) 70px 55px}.academic-row .row-room{display:none}}@media(max-width:767px){.app-header{padding:0 16px}.header-search-container,.brand-institution{display:none}.header-actions{gap:12px}.mobile-search-action{width:36px;height:36px;padding:8px}.mobile-search-action svg{width:20px;height:20px}.theme-button{width:28px;height:28px;padding:4px}.theme-button svg{width:20px;height:20px}.desktop-action{display:none}.app-shell,.app-shell.navigation-collapsed{display:block;height:calc(100vh - 70px)}.sidebar,.navigation-collapsed .sidebar{position:fixed;z-index:45;inset:70px 8px auto;width:auto;max-height:80vh;overflow-y:auto;border:1px solid var(--border);border-radius:12px;background:var(--background);box-shadow:0 20px 50px #0000008c;opacity:0;transform:translateY(-10px);pointer-events:none;visibility:hidden;transition:transform .2s ease,opacity .2s ease,visibility .2s ease}.sidebar.sidebar-open{opacity:1;transform:translateY(0);pointer-events:auto;visibility:visible}.sidebar-action-wrap{display:none}.sidebar nav{gap:2px;padding:8px 0}.nav-pill{display:none}.sidebar nav a.active,.sidebar nav a.active:hover{color:#dbeafe;background:#3b82f62e}.theme-light .sidebar nav a.active,.theme-light .sidebar nav a.active:hover{color:#dbeafe;background:#3b82f647}.sidebar nav a,.more-navigation{min-height:46px;gap:12px;border-radius:0;padding:12px 16px;font-size:18px;font-weight:500;line-height:22px}.sidebar nav svg,.more-navigation svg{width:20px;height:20px}.sidebar nav .more-links a{padding-left:40px;font-size:17px;line-height:20px}.sidebar nav .more-links svg{width:16px;height:16px}.sidebar-backdrop{display:block;position:fixed;inset:70px 0 0;z-index:35;border:0;background:#0000007a;backdrop-filter:blur(3px)}.right-toolbar{display:none}.workspace{height:100%;padding:4px}.workspace-panel{border-radius:0}.page-header{min-height:48px;padding:8px 16px}.page-header-centered{display:flex}.page-header-centered .page-header-title{justify-content:flex-start}.page-header-centered .page-header-title>div{text-align:left}.page-header h1,.page-subject-overview .section-heading h2{font-size:16px}.page-header p{display:none}.page>.section,.page>.metrics-grid,.page>.offering-grid,.page>.two-columns,.page>.dashboard-summary,.page>.dashboard-list-section,.page>.back-link{margin-right:16px;margin-left:16px}.page>:nth-child(2){margin-top:16px}.page>:last-child{margin-bottom:16px}.two-columns,.offering-grid{grid-template-columns:1fr}.question-row{align-items:flex-start;flex-direction:column}.academic-row{min-height:72px;grid-template-columns:40px minmax(0,1fr) auto;grid-template-rows:auto auto;gap:2px 10px;padding:10px 12px}.row-icon{grid-column:1;grid-row:1 / span 2;width:40px;height:40px;border-radius:12px}.row-icon svg{width:19px;height:19px}.row-primary{grid-column:2;grid-row:1}.row-primary strong{white-space:normal}.row-secondary{grid-column:2;grid-row:2}.row-secondary strong{display:none}.row-secondary small{margin-top:1px}.academic-row .row-meta{display:none}.row-chevron{grid-column:3;grid-row:1}.row-students{grid-column:3;grid-row:2}}@media(max-width:520px){.brand-mark{width:28px;height:28px}.brand-copy strong{font-size:14px}.metrics-grid,.form-section form,.options-grid,.horizontal-form{grid-template-columns:1fr}.full{grid-column:auto}.metric{min-height:100px}.login-panel{padding:24px 20px}.section{padding:16px 13px}.page-actions,.page-actions .button{width:100%}.dashboard-summary{align-items:flex-start}.completion-summary>div:first-child{display:none}.completion-ring{width:42px;height:42px}.completion-ring span{width:33px;height:33px}.dashboard-list-heading{padding:0 12px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;border:0;clip:rect(0 0 0 0);white-space:nowrap}.dashboard-body{display:flex;min-width:0;flex-direction:column;gap:16px;margin:0;padding:16px 24px 24px}.page-subject-overview .dashboard-body{padding-top:8px}.scope-row>.scope-card{width:100%;max-width:820px;flex:0 1 auto;align-self:flex-start}.scope-row>.scope-card .filters-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.scope-row{display:flex;align-items:center;gap:24px}.scope-illustration{display:none;flex:0 0 auto;width:299px;height:auto;margin-left:auto}@media(min-width:1500px){.scope-illustration{display:block}}.scope-card .dashboard-context,.scope-card .dashboard-filters{width:auto;padding:9px 14px;border:1px solid var(--pcard-inner-border);border-radius:16px;background:var(--pcard-inner-bg);box-shadow:0 1px 3px #0000000f}.scope-card .dashboard-context small{color:var(--pcard-sub)}.scope-card .dashboard-context strong,.scope-card label{color:var(--pcard-text)}.theme-light .scope-card input,.theme-light .scope-card select{border-color:#9ca3af;color:#111827;background:#f9fafb}.theme-light .scope-card select{color-scheme:light}.demo-banner{margin:0;padding:9px 12px;border:1px solid rgba(167,139,250,.3);border-radius:8px;color:#c4b5fd;background:#a78bfa1a;font-size:11px}.dashboard-context{display:flex;flex-wrap:wrap;gap:10px 26px;padding:12px 16px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.dashboard-context span{display:flex;min-width:0;flex-direction:column;gap:2px}.dashboard-context small{color:var(--dim);font-size:9px;text-transform:uppercase}.dashboard-context strong{color:var(--text);font-size:12px}.context-updated{color:var(--muted);font-size:11px;white-space:nowrap}.dashboard-filters{padding:12px 16px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.filters-toggle{display:none}.filters-fields{display:grid;grid-template-columns:repeat(3,minmax(140px,1fr));align-items:end;gap:12px}.filters-fields .button{justify-self:start}.dashboard-cards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.page-subject-overview .dashboard-cards{position:relative;margin-right:-24px;margin-left:-24px;padding:12px 24px;background:#dbe6f4}.page-subject-overview .dashboard-cards:before,.page-subject-overview .dashboard-cards:after{content:"";position:absolute;top:-30px;bottom:-30px;width:30px;background-repeat:no-repeat;background-position:top center,bottom center;background-size:30px 30px;pointer-events:none}.page-subject-overview .dashboard-cards:before{left:0;background-image:radial-gradient(circle at top right,transparent 30px,#dbe6f4 30px),radial-gradient(circle at bottom right,transparent 30px,#dbe6f4 30px)}.page-subject-overview .dashboard-cards:after{right:0;background-image:radial-gradient(circle at top left,transparent 30px,#dbe6f4 30px),radial-gradient(circle at bottom left,transparent 30px,#dbe6f4 30px)}.page-subject-overview .dashboard-columns{position:relative}.metric-card{display:flex;min-height:148px;min-width:0;flex-direction:column;gap:4px;padding:14px 16px;border:1px solid var(--border);border-radius:12px;background:var(--surface);transition:border-color .15s ease}.metric-card:hover{border-color:var(--border-hover)}.metric-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:6px}.metric-card h3{margin:0;color:var(--muted);font-size:11px;font-weight:600}.metric-info{width:26px;height:26px}.metric-info svg{width:15px;height:15px}.metric-card-value{color:#f4f4f5;font-size:24px;line-height:1.1}.metric-card-sample{color:var(--muted);font-size:10px}.metric-card-state{color:var(--amber);font-size:10px}.metric-card-comparison{margin-top:auto;color:var(--dim);font-size:10px}.metric-card-stat{position:relative;min-height:128px;gap:0;overflow:hidden;padding:0;border-radius:16px;--metric-badge-bg: #1e3a8a;--metric-badge-fg: #ffffff;--metric-delta-bg: #dbe6f4;--metric-delta-fg: #1e3a5f;--metric-delta-icon-bg: #ffffff;--metric-delta-icon-fg: #1e3a8a}.metric-card.metric-card-stat{border-color:transparent;background:#fff}.metric-card.metric-card-stat:hover{border-color:#00000024}.metric-card.metric-card-stat h3{color:#4a5350}.metric-card.metric-card-stat .metric-card-value{color:#1b2422}.metric-card.metric-card-stat .metric-card-sample{color:#6b7573}.metric-card.metric-card-stat .metric-card-state{color:#92400e}.metric-card.metric-card-stat .metric-info{color:#6b7573}.metric-card.metric-card-stat .metric-info:hover{color:#1b2422;background:#eff2f2}.metric-card.metric-card-stat .metric-card-delta-none{color:#5c6664;background:#eff2f2}.metric-card.metric-card-stat .metric-card-delta-none .metric-card-delta-icon{color:#5c6664;background:#fff}.metric-card-stat .metric-card-main{display:flex;flex:1 1 auto;align-items:flex-start;justify-content:space-between;gap:12px;padding:13px 16px 10px}.metric-card-stat .metric-card-text{display:flex;min-width:0;flex-direction:column;gap:2px}.metric-card-stat header{gap:4px}.metric-card-stat:has(.metric-card-badge) header{justify-content:flex-start}.metric-card-stat header h3{min-width:0}.metric-card-stat .metric-info{position:relative;z-index:1;flex:0 0 auto}.metric-card-stat h3{font-size:13px;font-weight:500}.metric-card-stat .metric-card-value{margin-top:3px;font-size:30px;font-weight:800;letter-spacing:-.02em}.metric-card-stat header{display:block}.metric-card-stat header h3{padding:0 18px;text-align:center}.metric-card-stat .metric-info{position:absolute;top:8px;right:8px}.metric-card-stat .metric-card-value{text-align:center}.metric-card-stat .metric-card-sample{font-size:11px}.metric-card-badge{display:grid;width:42px;height:42px;flex:0 0 auto;place-items:center;border-radius:13px;color:var(--metric-badge-fg);background:var(--metric-badge-bg)}.metric-card-badge svg{width:21px;height:21px}.metric-card-delta{display:flex;margin:0;align-items:center;gap:10px;padding:8px 16px;color:var(--metric-delta-fg);background:var(--metric-delta-bg);font-size:12px;font-weight:500}.metric-card-delta-icon{display:grid;width:24px;height:24px;flex:0 0 auto;place-items:center;border-radius:50%;color:var(--metric-delta-icon-fg);background:var(--metric-delta-icon-bg)}.metric-card-delta-icon svg{width:14px;height:14px}.dashboard-columns{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px}.dashboard-columns>.span-8{grid-column:span 8;min-width:0}.dashboard-columns>.span-4{grid-column:span 4;min-width:0}.dashboard-stack{display:flex;flex-direction:column;gap:16px;align-self:start}.dashboard-columns .section{height:100%}.panel-card{--pcard-surface: #1a1a1a;--pcard-border: #71717a;--pcard-inner: #27272a;--pcard-inner-bg: linear-gradient(to bottom, #3f3f46, #27272a);--pcard-inner-border: #52525b;--pcard-text: #f4f4f5;--pcard-sub: #a1a1aa;--pcard-muted: #e4e4e7;display:flex;flex-direction:column;gap:8px;padding:20px;border:1px solid var(--pcard-border);border-radius:36px;background:var(--pcard-surface);box-shadow:0 1px 6px #00000080}.theme-light .panel-card{--pcard-surface: #ffffff;--pcard-border: #b0b3be;--pcard-inner: #ecedf1;--pcard-inner-bg: linear-gradient(to bottom, #ffffff, #e2e8f0);--pcard-inner-border: #cbd5e1;--pcard-text: #111827;--pcard-sub: #6b7280;--pcard-muted: #374151}.theme-light .section.panel-card{background:var(--pcard-surface);box-shadow:0 1px 3px #0000000f}.panel-card .section-heading{flex-wrap:wrap;gap:6px 12px;margin-bottom:0}.panel-card .section-heading h2{white-space:nowrap}.section-title-button{padding:0;border:0;color:inherit;background:transparent;cursor:pointer;font:inherit;letter-spacing:inherit;text-align:inherit}.section-title-button:hover{text-decoration:underline;text-underline-offset:3px}.dialog-body .priority-list{gap:8px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.dialog-body .priority-item-foot{flex-wrap:wrap}.dialog-body .priority-item-foot .priority-actions{margin-left:auto}.dashboard-columns>.span-4 .panel-card .section-heading h2{max-width:100%;white-space:normal}.dashboard-columns>.span-4 .panel-card .section-heading{flex-wrap:nowrap;flex-direction:column;align-items:center;justify-content:flex-start;gap:8px;text-align:center}.dashboard-columns>.span-4 .panel-card .learning-header-actions{flex-wrap:wrap;justify-content:center;gap:6px 14px}.panel-card .section-heading>span{flex:0 0 auto;color:var(--pcard-sub);font-size:14px;white-space:nowrap}.panel-card .priority-list,.panel-card .followup-list,.panel-card .review-list{gap:6px}.panel-card .priority-item,.panel-card .followup-list>li,.panel-card .review-list>li,.panel-card .tournament-row-cards>li,.panel-card .table-wrap,.panel-card .participation-chart{padding:9px 14px;border:1px solid var(--pcard-inner-border);border-radius:16px;background:var(--pcard-inner-bg);box-shadow:0 1px 3px #0000000f}.panel-card .table-wrap{padding:0 14px}.panel-card .participation-chart{margin-bottom:0;padding:12px 8px 4px}.panel-card th{border-bottom-color:var(--pcard-border);color:var(--pcard-sub)}.panel-card td{border-bottom-color:var(--pcard-border);color:var(--pcard-muted)}.panel-card tbody tr:last-child td{border-bottom:0}.panel-card td small{color:var(--pcard-sub)}.panel-card .participation-summary{margin-bottom:0;color:var(--pcard-muted);font-size:13px;line-height:1.4}.panel-card .review-hypothesis{color:var(--pcard-sub);font-size:12px}.panel-card .priority-item-head,.panel-card .review-head{gap:6px}.panel-card .priority-item-head strong,.panel-card .review-head strong{color:var(--pcard-text);font-size:14px;font-weight:600}.panel-card .priority-item p,.panel-card .followup-list p{margin-top:1px;color:var(--pcard-muted);font-size:13px;line-height:1.35}.panel-card .priority-meta{color:var(--pcard-sub);font-size:12px}.panel-card .priority-chip{color:var(--pcard-muted);background:var(--pcard-surface)}.panel-card .signal-badge{border-color:var(--pcard-border);color:var(--pcard-muted);background:var(--pcard-surface)}.panel-card .button{min-height:26px;padding:0 12px}.panel-card .section-heading a{display:inline-flex;min-height:22px;align-items:center;padding:0 10px;border:1px solid #101820;border-radius:8px;color:#fff;background:linear-gradient(180deg,#2b3846,#1f2933 55%,#1a222b);box-shadow:inset 0 1px #ffffff38,inset 0 -1px #00000080,0 1px 1px #00000047,0 2px 4px #0000002e;font-size:11px;font-weight:600;line-height:1;white-space:nowrap;transition:background .15s ease,box-shadow .15s ease,transform .1s ease}.panel-card .section-heading a:hover{background:linear-gradient(180deg,#354556,#26323e 55%,#1f2933)}.panel-card .section-heading a:active{transform:translateY(1px);box-shadow:inset 0 2px 3px #0000008c,inset 0 -1px #ffffff0f}.priority-section .priority-actions .button{border-color:#101820;color:#fff;background:linear-gradient(180deg,#2b3846,#1f2933 55%,#1a222b);box-shadow:inset 0 1px #ffffff38,inset 0 -1px #00000080,0 1px 1px #00000047,0 2px 4px #0000002e;transition:background .15s ease,box-shadow .15s ease,transform .1s ease}.priority-section .priority-actions .button:hover:not(:disabled){color:#fff;background:linear-gradient(180deg,#354556,#26323e 55%,#1f2933)}.priority-section .priority-actions .button:active:not(:disabled){transform:translateY(1px);box-shadow:inset 0 2px 3px #0000008c,inset 0 -1px #ffffff0f}.priority-section .priority-actions .button.button-secondary{color:var(--pcard-text);border-color:var(--pcard-sub);background:var(--pcard-surface);box-shadow:inset 0 1px #ffffff8c,0 1px 1px #0000001f,0 2px 3px #00000012}.theme-light .priority-section .priority-actions .button.button-secondary{color:#1f2933;border-color:#1f2933}.priority-section .priority-actions .button.button-secondary:hover:not(:disabled){color:var(--pcard-text);background:var(--pcard-inner)}.theme-light .priority-section .priority-actions .button.button-secondary:hover:not(:disabled){color:#1f2933}.priority-section .priority-actions .button.button-secondary:active:not(:disabled){transform:translateY(1px);box-shadow:inset 0 2px 3px #0000002e}.priority-item-foot{display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:8px 12px;margin-top:5px}.panel-card .priority-item-foot .priority-meta{min-width:0;flex:1 1 auto;margin:0}.panel-card .priority-actions{flex:0 0 auto;flex-wrap:nowrap;margin-top:0}.priority-list,.review-list,.followup-list,.evidence-list{display:flex;flex-direction:column;gap:0;margin:0;padding:0;list-style:none}.priority-item,.review-list>li,.followup-list>li{padding:13px 0;border-bottom:1px solid var(--border)}.priority-item:last-child,.review-list>li:last-child,.followup-list>li:last-child{border-bottom:0}.priority-item p,.review-list p,.followup-list p{margin:4px 0 0;color:var(--muted);font-size:12px;line-height:1.5}.priority-item-head,.review-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.priority-item-head strong,.review-head strong{color:#f4f4f5;font-size:13px}.priority-chip{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:999px;color:var(--muted);background:var(--surface-strong);font-size:10px;font-weight:600}.priority-chip svg{width:12px;height:12px}.priority-hypothesis{font-style:italic}.priority-meta{color:var(--dim);font-size:11px}.priority-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.review-hypothesis{color:var(--dim);font-size:11px}.demo-local-note{color:#c4b5fd;font-size:11px}.signal-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border:1px solid #3f3f46;border-radius:999px;color:var(--muted);background:#3f3f4659;font-size:10px;font-weight:700}.signal-possible_difficulty{color:#fcd34d;border-color:#fbbf244d;background:var(--amber-soft)}.signal-consistent{color:#6ee7b7;border-color:#34d3994d;background:var(--green-soft)}.signal-mixed{color:#c4b5fd;border-color:#a78bfa4d;background:#a78bfa1f}.evidence-not_assessed,.evidence-insufficient,.signal-unavailable{color:var(--muted)}.evidence-stable{color:#93c5fd;border-color:#3b82f64d;background:#3b82f61f}.participation-summary{margin:0 0 10px;color:var(--muted);font-size:12px;line-height:1.5}.participation-chart{min-width:0;margin-bottom:12px}.section-state{display:flex;min-height:140px;flex-direction:column;align-items:center;justify-content:center;gap:7px;padding:18px;color:var(--muted);text-align:center;font-size:12px}.section-state svg{width:24px;height:24px}.section-state strong{color:#d4d4d8}.section-state-error svg{color:var(--red)}.section-notice{display:flex;align-items:flex-start;gap:8px;margin:0 0 12px;padding:9px 12px;border:1px solid rgba(251,191,36,.3);border-radius:8px;color:#fcd34d;background:var(--amber-soft);font-size:11px;line-height:1.45}.section-notice svg{width:15px;height:15px;flex:0 0 auto;margin-top:1px}.section-notice-stale,.section-notice-recalculating{color:#93c5fd;border-color:#3b82f64d;background:#3b82f61a}.truncation-note{margin:10px 0 0;color:var(--dim);font-size:11px}.link-button{padding:2px 0;border:0;color:#93c5fd;background:transparent;cursor:pointer;font-size:12px;text-align:left}.link-button:hover{text-decoration:underline}.unavailable-action{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:8px}.unavailable-action [role=status]{color:var(--dim);font-size:11px}.definition-list{display:flex;flex-direction:column;gap:12px;margin:0 0 16px}.definition-list dt{color:var(--dim);font-size:10px;font-weight:700;text-transform:uppercase}.definition-list dd{margin:3px 0 0;color:var(--text);font-size:12px;line-height:1.5}.evidence-list li{padding:3px 0;border-bottom:0}.plan-action-evidence{margin:0;color:var(--muted);font-size:11px}.plan-action-confirmation{display:flex;flex-direction:column;gap:14px}.dialog-layer{position:fixed;z-index:90;inset:0}.dialog-backdrop{position:absolute;inset:0;border:0;background:#0000008c;backdrop-filter:blur(2px)}.dialog{position:absolute;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--border-hover);background:var(--surface);outline:none}.dialog-drawer{top:0;right:0;bottom:0;width:min(420px,100%);border-top:0;border-right:0;border-bottom:0;border-radius:36px 0 0 36px;background:#1a1a1a;box-shadow:-18px 0 45px #0006}.theme-light .dialog.dialog-drawer{border-color:#e5e7eb;background:#fff}.dialog-drawer .dialog-panel{border-radius:36px 0 0 36px}.dialog-drawer .dialog-head{position:relative;justify-content:center;padding:24px 56px 16px;border-bottom-color:#2a2a2e}.dialog-drawer .dialog-head h2{color:#fff;font-size:18px;font-weight:700;text-align:center;text-transform:uppercase}.dialog-drawer .dialog-head .icon-button{position:absolute;top:14px;right:16px}.theme-light .dialog-drawer .dialog-head{border-bottom-color:#e5e7eb}.theme-light .dialog-drawer .dialog-head h2{color:#111827}.theme-light .dialog-drawer .dialog-head .icon-button{color:#6b7280}.theme-light .dialog-drawer .dialog-head .icon-button:hover{color:#111827;background:#f3f4f6}.dialog .definition-list>div{padding:10px 14px;border:1px solid var(--pcard-inner-border, #52525b);border-radius:16px;background:var(--pcard-inner-bg, linear-gradient(to bottom, #3f3f46, #27272a));box-shadow:0 1px 3px #0000000f}.theme-light .dialog .definition-list>div{--pcard-inner-border: #cbd5e1;--pcard-inner-bg: linear-gradient(to bottom, #ffffff, #e2e8f0)}.theme-light .dialog .definition-list dt{color:#6b7280}.theme-light .dialog .definition-list dd{color:#111827}.theme-light .dialog input,.theme-light .dialog select,.theme-light .dialog textarea{border-color:#9ca3af;color:#111827;background:#f9fafb}.theme-light .dialog select{color-scheme:light}.theme-light .dialog input::placeholder,.theme-light .dialog textarea::placeholder{color:#9ca3af}.theme-light .dialog input:read-only{color:#374151;background:#e5e7eb}.theme-light .dialog label{color:#374151}.theme-light .dialog .plan-action-evidence{color:#6b7280}.dialog-panel{display:flex;min-height:0;flex:1 1 auto;flex-direction:column;overflow:hidden}.dialog-modal{top:50%;left:50%;width:min(480px,calc(100% - 32px));max-height:min(85vh,640px);border-radius:36px;background:#1a1a1a;box-shadow:0 24px 60px #00000080;transform:translate(-50%,-50%)}.theme-light .dialog.dialog-modal{border-color:#e5e7eb;background:#fff}.dialog-modal .dialog-panel{border-radius:36px}@keyframes dialog-modal-in{0%{opacity:0;transform:translate(-50%,-50%) translate(var(--origin-x, 0px),var(--origin-y, 0px)) scale(.05)}10%{opacity:.42;transform:translate(-50%,-50%) translate(calc(var(--origin-x, 0px) * .704),calc(var(--origin-y, 0px) * .704)) scale(.33,.32)}20%{opacity:.74;transform:translate(-50%,-50%) translate(calc(var(--origin-x, 0px) * .287),calc(var(--origin-y, 0px) * .287)) scale(.73,.74)}30%{opacity:.92;transform:translate(-50%,-50%) translate(calc(var(--origin-x, 0px) * .038),calc(var(--origin-y, 0px) * .038)) scale(.96,1.01)}40%{opacity:1;transform:translate(-50%,-50%) translate(0) scale(1.04,1.1)}50%{transform:translate(-50%,-50%) translate(0) scale(1.04,1.08)}60%{transform:translate(-50%,-50%) translate(0) scale(1.02,1.04)}70%{transform:translate(-50%,-50%) translate(0) scaleX(1.01)}80%{transform:translate(-50%,-50%) translate(0) scaleY(.99)}to{opacity:1;transform:translate(-50%,-50%) translate(0) scale(1)}}@keyframes dialog-backdrop-in{0%{opacity:0}to{opacity:1}}.dialog-modal{animation:dialog-modal-in .5s linear both}.dialog-layer:has(.dialog-modal) .dialog-backdrop{animation:dialog-backdrop-in .22s ease both}@media(prefers-reduced-motion:reduce){.dialog-modal,.dialog-layer:has(.dialog-modal) .dialog-backdrop{animation:none}}.dialog-modal .dialog-head{position:relative;justify-content:center;padding:24px 56px 16px;border-bottom-color:#2a2a2e}.dialog-modal .dialog-head h2{color:#fff;font-size:20px;font-weight:700;text-align:center;text-transform:uppercase}.dialog-modal .dialog-head .icon-button{position:absolute;top:14px;right:16px}.theme-light .dialog-modal .dialog-head{border-bottom-color:#e5e7eb}.theme-light .dialog-modal .dialog-head h2{color:#111827}.theme-light .dialog-modal .dialog-head .icon-button{color:#6b7280}.theme-light .dialog-modal .dialog-head .icon-button:hover{color:#111827;background:#f3f4f6}.dialog-head{display:flex;flex:0 0 auto;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-bottom:1px solid var(--border)}.dialog-head h2{margin:0;font-size:14px}.dialog-body{overflow-y:auto;padding:16px 18px}.skeleton{position:relative;overflow:hidden;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.skeleton:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.05),transparent);animation:skeleton-sweep 1.4s ease-in-out infinite}.skeleton-card{min-height:148px}.skeleton-block{min-height:260px}@keyframes skeleton-sweep{0%{transform:translate(-100%)}to{transform:translate(100%)}}.theme-light .metric-card-value,.theme-light .priority-item-head strong,.theme-light .review-head strong,.theme-light .dialog-head h2,.theme-light .metric-card h3{color:#1d1d1f}.theme-light .demo-banner{color:#6d28d9;background:#7c3aed14}.theme-light .demo-local-note{color:#6d28d9}.theme-light .metric-card,.theme-light .dashboard-context,.theme-light .dashboard-filters,.theme-light .dialog{background:#e8e8ec}.theme-light .metric-card.metric-card-stat{border-color:transparent;background:#fff}.theme-light .link-button{color:#1d4ed8}.theme-light .signal-badge{color:#3a3a3c}.theme-light .button-secondary{color:#1d1d1f;border-color:#b0b3be;background:#fff}.theme-light .button-secondary:hover:not(:disabled){color:#000;background:#f0f0f2}.theme-light .evidence-stable,.theme-light .section-notice-stale,.theme-light .section-notice-recalculating{color:#1d4ed8}.theme-light .signal-possible_difficulty,.theme-light .section-notice{color:#92400e}.theme-light .signal-consistent{color:#047857}.theme-light .signal-mixed{color:#6d28d9}.theme-light .metric-card-state{color:#92400e}@media(max-width:1100px){.dashboard-columns>.span-8,.dashboard-columns>.span-4{grid-column:span 12}.dashboard-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.filters-fields{grid-template-columns:repeat(2,minmax(140px,1fr))}}@media(max-width:767px){.dashboard-body{padding:12px 16px 16px}.page-subject-overview .dashboard-cards{margin-right:-16px;margin-left:-16px;padding:12px 16px}.filters-toggle{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 12px;border:1px solid var(--border-hover);border-radius:8px;color:var(--text);background:var(--surface-strong);cursor:pointer;font-size:13px;font-weight:600}.filters-toggle svg{width:16px;height:16px}.filters-fields{display:none;margin-top:12px}.filters-fields.filters-fields-open{display:grid;grid-template-columns:1fr}.filters-fields .button,.priority-actions .button{min-height:44px}.priority-item-foot{flex-wrap:wrap}.link-button,.dashboard-filters select,.dashboard-filters input{min-height:44px}.dialog-drawer{width:100%}}@media(max-width:600px){.dashboard-cards{grid-template-columns:1fr}.metric-card{min-height:0}}@media(prefers-reduced-motion:reduce){.skeleton:after{animation:none}}.learning-cards{grid-template-columns:repeat(4,minmax(0,1fr))}.learning-header-actions{display:flex;align-items:center;gap:14px}.node-name-cell{display:flex;align-items:center;gap:6px;min-width:0}.node-toggle{width:26px;height:26px}.node-toggle svg{width:15px;height:15px;transition:transform .2s ease}.node-toggle svg.expanded{transform:rotate(180deg)}.node-toggle-spacer{display:inline-block;width:26px;flex:0 0 auto}.node-select{font-weight:600}.node-selected-button{color:#dbeafe}.node-row-selected>td:first-child{box-shadow:inset 3px 0 0 var(--blue)}.learning-tree-table tbody .node-row-selected{background:#3b82f614}.node-row-child td:first-child{padding-left:26px}.node-status-message{display:block;margin-top:3px;color:var(--dim);font-size:10px}.learning-tree-cards{display:none;margin:0;padding:0;list-style:none}.learning-tree-cards>li{padding:13px 0;border-bottom:1px solid var(--border)}.learning-tree-cards>li:last-child{border-bottom:0}.learning-tree-cards p{margin:5px 0 0;color:var(--muted);font-size:12px}.learning-tree-cards ul{margin:8px 0 0;padding-left:14px;list-style:none;border-left:2px solid var(--border)}.learning-tree-cards ul li{padding:8px 0}.learning-tree-cards .node-row-selected{border-radius:8px;background:#3b82f614}.tabs{display:flex;gap:4px;margin-bottom:16px;overflow:hidden;border-bottom:1px solid var(--border)}.tab-button{position:relative;min-height:40px;padding:8px 14px;border:0;color:var(--muted);background:transparent;cursor:pointer;font-size:12px;font-weight:600}.tab-button:hover{color:var(--text)}.tab-button.tab-active{color:#dbeafe}.tab-button.tab-active:after{content:"";position:absolute;right:8px;bottom:0;left:8px;height:2px;border-radius:2px 2px 0 0;background:var(--blue)}.tab-button:focus-visible{outline:2px solid var(--blue);outline-offset:-2px}.node-details .node-subheading{margin:18px 0 10px;color:#e4e4e7;font-size:13px}.node-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px}.student-filter{max-width:320px;margin-bottom:14px}.distribution-list{display:flex;flex-direction:column;gap:8px;margin:0;padding:0;list-style:none}.distribution-list li{display:grid;grid-template-columns:170px minmax(60px,1fr) 90px;align-items:center;gap:10px;font-size:12px}.distribution-label{color:var(--muted)}.distribution-bar{display:block;height:8px;overflow:hidden;border-radius:999px;background:var(--surface-strong)}.distribution-fill{display:block;height:100%;border-radius:999px;background:var(--dim)}.distribution-consistent{background:var(--green)}.distribution-mixed{background:var(--violet)}.distribution-possibleDifficulty{background:var(--amber)}.distribution-insufficientEvidence{background:var(--dim)}.distribution-notAssessed{background:var(--border-hover)}.distribution-count{color:var(--dim);text-align:right}.learning-trend{margin-bottom:4px}.theme-light .node-selected-button,.theme-light .tab-button.tab-active{color:#1d4ed8}.theme-light .learning-tree-table tbody .node-row-selected,.theme-light .learning-tree-cards .node-row-selected{background:#3b82f61a}@media(max-width:1100px){.scope-illustration{display:none}.learning-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.node-facts{grid-template-columns:1fr}}@media(max-width:767px){.learning-tree-table{display:none}.learning-tree-cards{display:block}.learning-header-actions{flex-wrap:wrap;gap:8px}.tab-button{min-height:44px}.node-select{min-height:44px;display:inline-flex;align-items:center}.distribution-list li{grid-template-columns:1fr;gap:4px}.distribution-count{text-align:left}}@media(max-width:600px){.learning-cards{grid-template-columns:1fr}}.engagement-filters{display:grid;grid-template-columns:repeat(2,minmax(160px,320px));gap:12px;margin-bottom:14px}.funnel-list{margin-bottom:10px}.funnel-list li{grid-template-columns:260px minmax(60px,1fr) 170px}.funnel-fill{background:var(--blue)}.engagement-signal-panel{margin-top:6px}@media(max-width:767px){.engagement-filters{grid-template-columns:1fr}.funnel-list li{grid-template-columns:1fr;gap:4px}}.synthesis-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:8px}.synthesis-column{min-width:0;padding:14px 16px;border:1px solid var(--border);border-radius:12px;background:var(--surface-strong)}.synthesis-column .node-subheading{margin-top:0}.journey-timeline{display:flex;flex-direction:column;margin:0;padding:0;list-style:none}.journey-timeline>li{position:relative;display:grid;grid-template-columns:110px minmax(0,1fr);gap:14px;padding:12px 0 12px 14px;border-left:2px solid var(--border)}.journey-timeline>li:before{content:"";position:absolute;top:19px;left:-5px;width:8px;height:8px;border-radius:50%;background:var(--blue)}.journey-timeline>li:last-child{border-left-color:transparent}.timeline-date{color:var(--dim);font-size:11px;white-space:nowrap}.timeline-body p{margin:4px 0 0;color:var(--muted);font-size:12px;line-height:1.5}.dimension-opportunity{color:#93c5fd;border-color:#3b82f64d;background:#3b82f61f}.dimension-participation{color:#6ee7b7;border-color:#34d3994d;background:var(--green-soft)}.dimension-learning{color:#c4b5fd;border-color:#a78bfa4d;background:#a78bfa1f}.dimension-intervention{color:#fcd34d;border-color:#fbbf244d;background:var(--amber-soft)}.journey-filters{grid-template-columns:repeat(5,minmax(140px,1fr))}.theme-light .synthesis-column{background:#f0f0f2}.theme-light .dimension-opportunity{color:#1d4ed8}.theme-light .dimension-participation{color:#047857}.theme-light .dimension-learning{color:#6d28d9}.theme-light .dimension-intervention{color:#92400e}@media(max-width:1100px){.synthesis-grid{grid-template-columns:1fr}.journey-filters{grid-template-columns:repeat(2,minmax(140px,1fr))}}@media(max-width:767px){.journey-timeline>li{grid-template-columns:1fr;gap:4px}.journey-filters{grid-template-columns:1fr}}.tournament-filters-fields{grid-template-columns:repeat(5,minmax(130px,1fr))}.tournament-sub{display:block;margin-top:3px;color:var(--dim);font-size:11px}.tournament-table table td{vertical-align:top}.tournament-row-cards{display:none;margin:0;padding:0;list-style:none;flex-direction:column;gap:12px}.tournament-row-cards li{padding:14px 16px;border:1px solid var(--border);border-radius:12px;background:var(--surface-strong)}.tournament-row-cards li strong{display:block;margin-bottom:6px}.tournament-row-cards li p{margin:5px 0;color:var(--muted);font-size:12px}.tournament-row-cards li .button{margin-top:8px}.tournament-state-registration_open{color:#93c5fd;border-color:#3b82f64d;background:#3b82f61f}.tournament-state-in_progress{color:#6ee7b7;border-color:#34d3994d;background:var(--green-soft)}.tournament-state-under_review{color:#fcd34d;border-color:#fbbf244d;background:var(--amber-soft)}.tournament-state-cancelled,.tournament-state-archived,.tournament-state-draft{color:var(--dim)}.integrity-clear{color:#6ee7b7;border-color:#34d3994d;background:var(--green-soft)}.integrity-attention{color:#fcd34d;border-color:#fbbf244d;background:var(--amber-soft)}.integrity-blocked{color:#fca5a5;border-color:#f871714d;background:#f871711f}.integrity-under_review{color:#93c5fd;border-color:#3b82f64d;background:#3b82f61f}.integrity-reversal_pending{color:#c4b5fd;border-color:#a78bfa4d;background:#a78bfa1f}.tournament-signal{margin-top:10px}.tournament-drawer-body .tabs{flex-wrap:wrap;margin:12px 0 14px}.tournament-drawer-body .tab-button{padding:8px 10px}.dialog-drawer:has(.tournament-drawer-body){width:min(560px,100%)}.theme-light .tournament-state-registration_open,.theme-light .integrity-under_review{color:#1d4ed8}.theme-light .tournament-state-in_progress,.theme-light .integrity-clear{color:#047857}.theme-light .tournament-state-under_review,.theme-light .integrity-attention{color:#92400e}.theme-light .integrity-blocked{color:#b91c1c}.theme-light .integrity-reversal_pending{color:#6d28d9}.theme-light .tournament-row-cards li{background:#f0f0f2}@media(max-width:1100px){.tournament-filters-fields{grid-template-columns:repeat(2,minmax(140px,1fr))}}@media(max-width:767px){.tournament-table{display:none}.tournament-row-cards{display:flex}.tournament-filters-fields{grid-template-columns:1fr}}.planner-stepper{margin:6px 0 4px}.planner-stepper ol{display:flex;gap:8px;margin:0;padding:0;list-style:none}.planner-step{flex:1 1 0;min-width:0}.planner-step button{display:flex;width:100%;min-height:44px;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px;border:1px solid var(--border);border-radius:12px;color:var(--muted);background:var(--surface-strong);cursor:pointer;text-align:left}.planner-step button:disabled{color:var(--dim);cursor:not-allowed}.planner-step-current button{border-color:var(--blue);color:var(--text)}.planner-step-order{font-size:10px;font-weight:700;letter-spacing:.08em}.planner-step-label{font-size:13px;font-weight:600}.planner-step-state{color:var(--dim);font-size:10px}.planner-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:18px}.planner-main{min-width:0;display:flex;flex-direction:column;gap:14px}.planner-step-panel{min-width:0;padding:18px 20px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.planner-step-panel h2{margin:0 0 6px}.planner-step-panel h2:focus-visible{outline:2px solid var(--blue);outline-offset:4px}.planner-step-hint{margin:0 0 16px;color:var(--muted);font-size:12px;line-height:1.55}.planner-subheading{margin:18px 0 8px;color:#e4e4e7;font-size:13px}.planner-field{display:flex;max-width:460px;flex-direction:column;gap:6px;margin-bottom:14px;font-size:12px}.planner-field-narrow{max-width:220px}.planner-field small{color:var(--dim);font-size:11px;line-height:1.5}.planner-field-error{color:#fca5a5}.planner-field-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}.planner-fieldset{margin:0 0 14px;padding:12px 14px;border:1px solid var(--border);border-radius:12px}.planner-fieldset legend{padding:0 6px;color:var(--muted);font-size:12px}.planner-radio{display:flex;min-height:44px;flex-direction:row;align-items:center;gap:10px;font-size:13px;font-weight:500}.planner-radio input{width:18px;min-height:18px;flex:0 0 auto;padding:0;accent-color:var(--blue)}.planner-fixed-facts{margin-top:8px}.planner-allocation-list{display:flex;flex-direction:column;gap:10px;margin:0 0 12px;padding:0;list-style:none}.planner-allocation-list li{display:grid;grid-template-columns:minmax(0,1fr) 110px auto;align-items:end;gap:10px;padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-strong)}.planner-allocation-list label{display:flex;flex-direction:column;gap:4px;font-size:11px}.planner-allocation-empty{display:block;color:var(--dim);font-size:12px}.planner-reason-list{display:flex;flex-direction:column;gap:6px;margin:0 0 10px;padding:0;list-style:none;font-size:12px}.planner-reason-list li{display:flex;align-items:center;gap:8px}.planner-reason-list li strong{margin-left:auto}.planner-source-facts{margin:10px 0 0;color:var(--dim);font-size:11px;line-height:1.6;overflow-wrap:anywhere}.planner-inline-note{display:block;margin:8px 0 0;padding:8px 10px;border:1px solid rgba(251,191,36,.3);border-radius:10px;color:var(--muted);background:var(--amber-soft);font-size:11px;line-height:1.55}.planner-pool-sufficient{color:#6ee7b7;border-color:#34d3994d;background:var(--green-soft)}.planner-pool-insufficient{color:#fcd34d;border-color:#fbbf244d;background:var(--amber-soft)}.planner-actions{display:flex;flex-wrap:wrap;gap:10px}.planner-actions .button{min-height:44px}.planner-summary{position:sticky;top:8px;min-width:0;padding:16px 18px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.planner-summary h2{margin:0 0 10px;font-size:15px}.planner-readiness{margin:0 0 6px}.planner-readiness-ready_for_simulation{color:#6ee7b7;border-color:#34d3994d;background:var(--green-soft)}.planner-readiness-partial{color:#93c5fd;border-color:#3b82f64d;background:#3b82f61f}.planner-readiness-blocked{color:#fca5a5;border-color:#f871714d;background:#f871711f}.planner-readiness-incomplete,.planner-readiness-stale{color:#fcd34d;border-color:#fbbf244d;background:var(--amber-soft)}.planner-publication-note{margin:0 0 12px;color:var(--dim);font-size:11px}.planner-check-summary{margin:0 0 10px;color:var(--muted);font-size:12px}.planner-check-list,.planner-notice-list{display:flex;flex-direction:column;gap:10px;margin:0 0 12px;padding:0;list-style:none}.planner-check{padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-strong);font-size:12px}.planner-check p{margin:4px 0 0;color:var(--muted);line-height:1.5}.planner-check-rule{color:var(--dim);font-size:11px;line-height:1.55;overflow-wrap:anywhere}.planner-check-fail{border-color:#f8717159}.planner-check-unknown{border-color:#fbbf2459}.planner-conclusion{margin-top:16px;padding:14px 16px;border:1px solid rgba(52,211,153,.3);border-radius:12px;background:var(--green-soft)}.planner-conclusion h3{margin:0 0 6px;font-size:14px}.planner-conclusion h3:focus-visible{outline:2px solid var(--blue);outline-offset:4px}.planner-dialog-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.planner-dialog-actions .button{min-height:44px}.planner-review-facts dd{line-height:1.6}.theme-light .planner-step button,.theme-light .planner-check,.theme-light .planner-allocation-list li{background:#f0f0f2}.theme-light .planner-subheading{color:#1d1d1f}.theme-light .planner-readiness-ready_for_simulation{color:#047857}.theme-light .planner-readiness-partial{color:#1d4ed8}.theme-light .planner-readiness-blocked{color:#b91c1c}.theme-light .planner-readiness-incomplete,.theme-light .planner-readiness-stale{color:#92400e}.theme-light .planner-field-error{color:#b91c1c}@media(max-width:1100px){.planner-layout{grid-template-columns:1fr}.planner-summary{position:static}}@media(max-width:767px){.planner-stepper ol{flex-direction:column}.planner-allocation-list li{grid-template-columns:1fr;align-items:stretch}.planner-actions{flex-direction:column}.planner-actions .button{width:100%;justify-content:center}.planner-field,.planner-field-narrow{max-width:none}}.overview-shell{--dash-teal: #1e3a8a;--dash-teal-dark: #1e3a8a;--dash-teal-deep: #1e3a5f;--dash-mint: #dbe6f4;--dash-chip: #eef2f9;--dash-bg: #f4f5f7;--dash-ink: #1b2422;--dash-mut: #6b7573;--dash-faint: #9aa3a0;--dash-line: #f2f4f4;--dash-red-bg: #fbe7e7;--dash-red: #c96a6a;--dash-r-lg: 20px;--dash-r-md: 15px;padding:0 24px 24px}.overview-shell a{color:var(--dash-teal);text-decoration:none}.overview-shell a:hover{color:var(--dash-teal-deep)}.overview-shell h2{margin:0}.overview-shell ul{margin:0;padding:0;list-style:none}.overview-shell .dash-canvas{display:flex;flex-direction:column;gap:18px;padding:4px 0 0}.overview-shell .dash-row{display:flex;align-items:stretch;gap:18px}.overview-shell .dash-row>.dash-card--wide{min-width:0;flex:1.9}.overview-shell .dash-row>.dash-card{min-width:0;flex:1}.overview-shell .dash-row--stats{flex-wrap:wrap;margin:0 -20px;padding:12px 20px;background:#dbe6f4}.overview-shell .dash-row--stats>*{min-width:0;flex:1 1 0}.overview-shell .dash-stat{overflow:hidden;border-radius:var(--dash-r-lg);background:#fff}.overview-shell .dash-stat__body{display:flex;align-items:flex-start;justify-content:space-between;padding:18px 20px 14px}.overview-shell .dash-stat__label{color:#4a5350;font-size:14px;font-weight:500}.overview-shell .dash-stat__value{margin-top:10px;font-size:30px;font-weight:800;letter-spacing:-.02em}.overview-shell .dash-stat__icon{display:flex;width:42px;height:42px;align-items:center;justify-content:center;border-radius:13px;color:#fff;background:var(--dash-teal-dark)}.overview-shell .dash-stat__delta{display:flex;align-items:center;gap:10px;padding:11px 20px;color:#2c4744;background:var(--dash-mint);font-size:12.5px;font-weight:500}.overview-shell .dash-stat__delta-icon{display:flex;width:26px;height:26px;align-items:center;justify-content:center;border-radius:13px;color:var(--dash-teal-deep);background:#fff}.overview-shell .dash-card{padding:20px 22px;border-radius:var(--dash-r-lg);background:#fff}.overview-shell .dash-card--full{width:100%}.overview-shell .dash-card__head{display:flex;align-items:center;justify-content:space-between;gap:12px}.overview-shell .dash-card__head h2{font-size:16.5px;font-weight:700}.overview-shell .dash-card__head-group{display:flex;align-items:center;gap:24px}.overview-shell .dash-card__meta{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:8px 12px;margin-top:12px}.overview-shell .dash-card__meta-label{color:var(--dash-faint);font-size:12.5px}.overview-shell .dash-card__meta-value{margin-top:2px;color:var(--dash-teal);font-size:24px;font-weight:800}.overview-shell .dash-pill{display:inline-flex;align-items:center;gap:6px;padding:7px 13px;border-radius:16px;color:#2c4744;background:var(--dash-mint);font-size:12.5px;font-weight:600}.overview-shell .dash-iconbtn{display:inline-flex;color:#8f9895}.overview-shell .dash-legend{display:flex;flex-wrap:wrap;gap:8px 14px;color:#4a5350;font-size:12.5px}.overview-shell .dash-legend li{display:flex;align-items:center;gap:7px}.overview-shell .dash-legend span{width:9px;height:9px;border-radius:5px}.overview-shell .dash-chart{margin-top:14px}.overview-shell .dash-donut{position:relative;margin-top:8px}.overview-shell .dash-donut__center{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:center;inset:0;pointer-events:none}.overview-shell .dash-donut__center span{color:var(--dash-mut);font-size:12px}.overview-shell .dash-donut__center strong{margin-top:2px;font-size:23px;font-weight:800}.overview-shell .dash-dept-legend{display:grid;grid-template-columns:1fr 1fr;gap:14px 12px;margin-top:12px}.overview-shell .dash-dept-legend li{display:flex;gap:9px}.overview-shell .dash-dept-legend__swatch{width:13px;height:13px;flex:none;margin-top:2px;border-radius:4px}.overview-shell .dash-dept-legend__name{font-size:12.5px;font-weight:600}.overview-shell .dash-dept-legend__count{margin-top:2px;color:var(--dash-faint);font-size:11.5px}.overview-shell .dash-reports{display:flex;flex-direction:column;margin-top:4px}.overview-shell .dash-reports__item{display:flex;gap:12px;padding:14px 0}.overview-shell .dash-reports__item+.dash-reports__item{border-top:1px solid var(--dash-line)}.overview-shell .dash-reports__icon{display:flex;width:34px;height:34px;flex:none;align-items:center;justify-content:center;border-radius:17px;color:var(--dash-teal);background:var(--dash-chip)}.overview-shell .dash-reports__body{min-width:0;flex:1}.overview-shell .dash-reports__title{font-size:13px;font-weight:600;line-height:1.35}.overview-shell .dash-reports__source{margin-top:3px;color:var(--dash-faint);font-size:12px}.overview-shell .dash-reports__foot{display:flex;align-items:center;justify-content:space-between;margin-top:4px;color:var(--dash-faint);font-size:11.5px}.overview-shell .dash-reports__foot a{font-size:12px;font-weight:600}.overview-shell .dash-table{width:100%;margin-top:16px;border-collapse:collapse;font-size:13.5px}.overview-shell .dash-table th{padding:11px 14px;color:#4a5350;background:#f8f9f9;font-size:13px;font-weight:500;text-align:left}.overview-shell .dash-table th:first-child{border-radius:11px 0 0 11px}.overview-shell .dash-table th:last-child{border-radius:0 11px 11px 0}.overview-shell .dash-table th span{display:inline-flex;align-items:center;gap:5px}.overview-shell .dash-table th svg{color:var(--dash-faint)}.overview-shell .dash-table td{padding:13px 14px;border-bottom:1px solid var(--dash-line);vertical-align:middle}.overview-shell .dash-table tr:last-child td{border-bottom:0}.overview-shell .dash-table__primary{font-weight:600}.overview-shell .dash-table__secondary{margin-top:2px;color:var(--dash-faint);font-size:12px}.overview-shell .dash-status{display:inline-block;padding:6px 13px;border-radius:14px;font-size:12px;font-weight:600;white-space:nowrap}.overview-shell .dash-status.is-completed{color:var(--dash-teal-deep);background:var(--dash-mint)}.overview-shell .dash-status.is-scheduled{color:var(--dash-teal);background:#eaf2f1}.overview-shell .dash-status.is-canceled{color:var(--dash-red);background:var(--dash-red-bg)}@media(max-width:1100px){.overview-shell .dash-row{flex-direction:column}}.overview-shell .dash-card__head h2,.overview-shell .dash-stat__value,.overview-shell .dash-donut__center strong,.overview-shell .dash-table td{color:var(--dash-ink)}.overview-shell .dash-table td small{color:var(--dash-faint)}.overview-shell .dash-table__primary,.overview-shell .dash-table__primary a{color:var(--dash-ink)}.overview-shell .dash-table__primary a:hover{color:var(--dash-teal-deep)}.overview-shell .dash-table__secondary{color:var(--dash-mut)}.overview-shell .dash-reports__title{color:var(--dash-ink)}.overview-shell .dash-reports__source{color:var(--dash-mut)}.overview-shell .dash-dept-legend__name{color:var(--dash-ink)}.overview-shell .dash-dept-legend__count,.overview-shell .dash-card__meta-label{color:var(--dash-mut)}.overview-shell .dash-table th,.overview-shell .dash-table td{padding-right:10px;padding-left:10px}.overview-shell{display:flex;align-items:flex-start;gap:0}.overview-shell>.overview-dash{min-width:0;flex:1}.overview-shell .dash-rail{display:flex;width:372px;flex:none;flex-direction:column;gap:22px;padding:20px 24px 24px 16px}.overview-shell .dash-rail__user{display:flex;align-items:center;gap:12px}.overview-shell .dash-rail__user-info{display:flex;min-width:0;flex:1;flex-direction:column}.overview-shell .dash-rail__user-info strong{color:var(--text);font-size:15px;font-weight:700}.overview-shell .dash-rail__user-info span{color:var(--muted);font-size:12px}.overview-shell .dash-avatar{display:flex;width:38px;height:38px;flex:none;align-items:center;justify-content:center;border-radius:19px;color:var(--dash-teal-deep);background:var(--dash-mint);font-size:12px;font-weight:700}.overview-shell .dash-avatar--lg{width:46px;height:46px;border-radius:23px;font-size:14px}.overview-shell .dash-rail__block{display:flex;flex-direction:column}.overview-shell .dash-rail__head{display:flex;align-items:center;justify-content:space-between;padding:0 2px}.overview-shell .dash-rail__head h2{color:var(--text);font-size:16px;font-weight:700}.overview-shell .dash-rail__navbtns{display:flex;gap:10px;color:#4a5350}.overview-shell .dash-rail__empty{margin:12px 0 0;color:var(--muted);font-size:12px;line-height:1.55}.overview-shell .dash-cal{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-top:12px;font-size:12.5px;text-align:center}.overview-shell .dash-cal__dow{padding:6px 0;color:var(--dim)}.overview-shell .dash-cal__day{display:flex;align-items:center;justify-content:center;padding:4px 0;color:var(--text)}.overview-shell .dash-cal__day span{display:flex;width:32px;height:32px;align-items:center;justify-content:center;border-radius:16px}.overview-shell .dash-cal__day.is-out{color:var(--dim)}.overview-shell .dash-cal__day.is-selected span{color:#fff;background:var(--dash-teal);font-weight:600}.overview-shell .dash-docstats{display:flex;margin-top:12px;padding:14px 8px;border:1px solid var(--border);border-radius:16px;background:var(--surface-strong);text-align:center}.overview-shell .dash-docstats>div{display:flex;flex:1;flex-direction:column}.overview-shell .dash-docstats>div+div{border-left:1px solid var(--border)}.overview-shell .dash-docstats strong{color:var(--text);font-size:22px;font-weight:800}.overview-shell .dash-docstats span{margin-top:3px;color:var(--muted);font-size:11.5px}.overview-shell .dash-doclist{display:flex;flex-direction:column;gap:14px;margin-top:16px}.overview-shell .dash-doclist__item{display:flex;align-items:center;gap:11px}.overview-shell .dash-doclist__info{display:flex;min-width:0;flex:1;flex-direction:column}.overview-shell .dash-doclist__info strong{color:var(--text);font-size:13px;font-weight:600}.overview-shell .dash-doclist__info strong a{color:var(--text)}.overview-shell .dash-doclist__info strong a:hover{color:var(--dash-teal-deep)}.overview-shell .dash-doclist__info span{margin-top:2px;color:var(--muted);font-size:11.5px}.overview-shell .dash-doclist__right{display:flex;flex-direction:column;align-items:flex-end;gap:4px;text-align:right}.overview-shell .dash-doclist__right .dash-status{padding:4px 11px;font-size:11px}.overview-shell .dash-doclist__hours{color:var(--muted);font-size:11px}.overview-shell .dash-activity{display:flex;flex-direction:column;gap:15px;margin-top:14px}.overview-shell .dash-activity__item{display:flex;align-items:flex-start;gap:12px}.overview-shell .dash-activity__icon{display:flex;width:36px;height:36px;flex:none;align-items:center;justify-content:center;border-radius:18px;color:var(--dash-teal-deep);background:var(--dash-mint)}.overview-shell .dash-activity__body{display:flex;min-width:0;flex:1;flex-direction:column}.overview-shell .dash-activity__body strong{color:var(--text);font-size:12.5px;font-weight:600}.overview-shell .dash-activity__body span{margin-top:2px;color:var(--muted);font-size:11.5px}@media(max-width:1400px){.overview-shell .dash-rail{width:320px}}@media(max-width:1800px){.overview-shell{flex-direction:column}.overview-shell .dash-rail{display:grid;width:100%;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));align-items:start;gap:22px 24px;padding:4px 20px 24px}.overview-shell .dash-rail__user{grid-column:1 / -1}}.overview-shell .dash-card__head{flex-wrap:wrap}.overview-shell .dash-card__head-group{flex-wrap:wrap;gap:8px 16px}.overview-shell .dash-table{font-size:12.5px}.overview-shell .dash-table th,.overview-shell .dash-table td{padding-right:8px;padding-left:8px}.overview-shell .dash-table th{font-size:12px}.overview-shell .dash-table th span{gap:3px}.overview-shell .dash-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:24px 4px 18px}.overview-shell .dash-header__title{margin:0;color:var(--text);font-size:27px;font-weight:800;letter-spacing:-.02em}.overview-shell .dash-header__sub{margin:3px 0 0;color:var(--muted);font-size:13px}.overview-shell .dash-footer{display:flex;align-items:center;gap:30px;padding:20px 6px 24px;color:var(--dim);font-size:12.5px}.overview-shell .dash-footer__links{display:flex;gap:24px}.overview-shell .dash-footer__links a{color:var(--dim)}.overview-shell .dash-roundbtn{position:relative;display:flex;width:42px;height:42px;align-items:center;justify-content:center;border-radius:21px;color:#2c4744;background:var(--dash-chip)}.overview-shell .dash-roundbtn--dot:after{content:"";position:absolute;top:8px;right:10px;width:8px;height:8px;border:2px solid var(--dash-chip);border-radius:4px;background:var(--dash-teal)}.overview-shell .dash-agenda{display:flex;flex-direction:column;gap:12px;margin-top:12px}.overview-shell .dash-agenda__item{display:flex;align-items:center;gap:14px;padding:14px;border-radius:18px;background:var(--dash-mint)}.overview-shell .dash-agenda__date{display:flex;width:54px;height:54px;flex:none;flex-direction:column;align-items:center;justify-content:center;border-radius:14px;background:#fff}.overview-shell .dash-agenda__date strong{color:var(--dash-ink);font-size:18px;font-weight:800;line-height:1}.overview-shell .dash-agenda__date span{margin-top:3px;color:var(--dash-faint);font-size:10.5px}.overview-shell .dash-agenda__body{min-width:0;flex:1}.overview-shell .dash-agenda__tag{display:inline-block;padding:3px 10px;border-radius:9px;color:#fff;font-size:10.5px;font-weight:600}.overview-shell .dash-agenda__tag.is-dark{background:var(--dash-teal-dark)}.overview-shell .dash-agenda__tag.is-teal{background:var(--dash-teal)}.overview-shell .dash-agenda__tag.is-soft{background:#5b7db1}.overview-shell .dash-agenda__title{overflow:hidden;margin-top:6px;color:var(--dash-ink);font-size:13px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.overview-shell .dash-agenda__time{margin-top:3px;color:var(--dash-mut);font-size:11.5px}@media(max-width:767px){.overview-shell .dash-header{flex-direction:column;align-items:stretch}.overview-shell .dash-footer{flex-direction:column;align-items:flex-start;gap:10px}}.overview-shell .dash-card--rounded{border-radius:36px}.overview-shell .dash-card{padding:15px 18px}.overview-shell .dash-row,.overview-shell .dash-canvas{gap:14px}.overview-shell .dash-card__head h2{font-size:15.5px}.overview-shell .dash-card__meta{margin-top:8px}.overview-shell .dash-card__meta-value{font-size:21px}.overview-shell .dash-chart{margin-top:8px}.overview-shell .dash-donut{margin-top:4px}.overview-shell .dash-dept-legend{gap:10px 12px;margin-top:8px}.overview-shell .dash-reports{margin-top:0}.overview-shell .dash-reports__item{gap:10px;padding:10px 0}.overview-shell .dash-reports__icon{width:30px;height:30px;border-radius:15px}.overview-shell .dash-table{margin-top:10px}.overview-shell .dash-table th{padding-top:8px;padding-bottom:8px}.overview-shell .dash-table td{padding-top:9px;padding-bottom:9px}.overview-shell .dash-header{padding:18px 4px 14px}.overview-shell .dash-footer{padding:14px 6px 18px}.overview-shell .dash-card__meta{flex-wrap:nowrap;gap:6px 12px;margin-top:6px}.overview-shell .dash-card__meta-value{font-size:19px}.overview-shell .dash-legend{gap:4px 12px;font-size:12px}.overview-shell .dash-chart{margin-top:4px}.overview-shell .dash-donut__center strong{font-size:20px}.overview-shell .dash-card__meta{flex-wrap:wrap}.overview-shell .dash-card__meta>div:first-child{white-space:nowrap}.overview-shell .dash-donut__center span{font-size:11px}.overview-shell .dash-donut__center strong{margin-top:0;font-size:18px}.skeleton-line{display:inline-block;max-width:100%;border-radius:6px;vertical-align:middle}.skeleton-rows{display:flex;flex-direction:column;gap:10px}.skeleton-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;padding:10px 0;border-bottom:1px solid var(--border)}.skeleton-row:last-child{border-bottom:0}.skeleton-row-block{flex-direction:column;align-items:flex-start;gap:6px}.panel-card .skeleton-row{padding:10px 14px;border:1px solid var(--pcard-inner-border);border-radius:16px;background:var(--pcard-inner-bg)}.skeleton-chart{display:flex;align-items:flex-end;gap:10px;height:150px;padding:12px 14px}.skeleton-bar{flex:1;border-radius:6px 6px 0 0}.scope-row>.scope-card{gap:6px;padding:14px}.scope-row>.scope-card .dashboard-context{gap:6px 22px;padding:8px 12px}.scope-row>.scope-card .dashboard-filters{padding:8px 12px}.scope-row>.scope-card .filters-fields{gap:8px 12px}.scope-row>.scope-card .filters-fields label{gap:3px;font-size:11px}.scope-row>.scope-card input,.scope-row>.scope-card select{min-height:32px;padding:5px 10px}.scope-row>.scope-card .filters-fields .button{min-height:32px;padding:0 12px}.overview-shell .engagement-issues{display:grid;gap:10px;margin-top:14px}.overview-shell .engagement-issues li{display:flex;align-items:flex-start;gap:10px;font-size:13.5px;line-height:1.45}.overview-shell .engagement-issues__tag{flex:none;min-width:62px;padding:3px 9px;border-radius:999px;font-size:11.5px;font-weight:700;text-align:center;text-transform:uppercase;letter-spacing:.02em}.overview-shell .engagement-issues li[data-severity=warning] .engagement-issues__tag{color:#7a5300;background:#fdf0d5}.overview-shell .engagement-issues li[data-severity=info] .engagement-issues__tag{color:#2c4744;background:var(--dash-mint)}.overview-shell .engagement-issues li[data-severity=blocking] .engagement-issues__tag{color:#8a1c1c;background:#fbe3e3}.academic-row-group{border-bottom:1px solid rgba(43,44,47,.65)}.academic-row-group:last-child{border-bottom:0}.academic-row-group .academic-row{border-bottom:0}.academic-row-button{width:100%;border:0;background:none;font:inherit;text-align:left;cursor:pointer}.academic-row-button .row-chevron{transition:transform .18s ease,color .15s ease}.academic-row-button.is-open .row-chevron{color:#a78bfa;transform:rotate(90deg)}.academic-row-button.is-open{background:var(--surface-hover)}.academic-row-button:focus-visible{outline:2px solid #a78bfa;outline-offset:-2px}.academic-row-panel{padding:4px 16px 18px;border-top:1px solid rgba(43,44,47,.45)}.academic-row-panel .metrics-grid,.academic-row-panel .section{margin-top:14px}.page>.dashboard-list-section{flex:none;margin-bottom:24px}@keyframes academic-panel-in{0%{opacity:0}to{opacity:1}}.academic-row-panel{animation:academic-panel-in .3s ease both}@media(prefers-reduced-motion:reduce){.academic-row-panel{animation:none}}
