@import"https://fonts.googleapis.com/css2?family=Ubuntu:wght@400;500;600;700&display=swap";:root{font-family:Ubuntu,system-ui,sans-serif;color:var(--ink);background:var(--page-bg);font-synthesis:none;--brand: #005f86;--brand-deep: #01557e;--primary-button: #01557e;--brand-dark: #003b55;--ink: #102e40;--muted: #545964;--line: #dce4e8;--soft: #edf3f6;--white: #ffffff;--page-bg: #f8fbfd;--surface: #ffffff;--surface-muted: #f8fbfd;--surface-soft: #f5f8fa;--input-bg: #ffffff;--input-border: #ccd8de;--input-icon: #75828a;--switch-bg: #ffffff;--switch-border: #dce4e8;--disabled-bg: #f3f6f8;--disabled-text: #545964;--disabled-border: #d8e1e6;--table-head: #f5f8f9;--table-hover: #fbfcfd;--sidebar-bg: #063a52;--sidebar-active: #075574;--workspace-panel: #06445f;--workspace-panel-item: #0a526f;--focus-ring: rgba(1,85,126,.12);--shadow-soft: rgba(20,51,65,.1);--danger: #b42318;--danger-bg: #fff0ee;--success: #147a55;--success-bg: #eaf7f1}[data-theme=dark]{--brand: #4aa7c7;--brand-deep: #005f86;--primary-button: #005f86;--brand-dark: #f4f6f8;--ink: #f4f6f8;--muted: #b5bec8;--line: #303a47;--soft: #1a2430;--white: #ffffff;--page-bg: #111720;--surface: #111720;--surface-muted: #161f2a;--surface-soft: #1a2430;--input-bg: #111720;--input-border: #36414f;--input-icon: #a7b4c0;--switch-bg: #151d27;--switch-border: #303a47;--disabled-bg: transparent;--disabled-text: #aab3bd;--disabled-border: #36414f;--table-head: #1b2430;--table-hover: #1f2937;--sidebar-bg: #0b1420;--sidebar-active: #075574;--workspace-panel: #082737;--workspace-panel-item: #0d3b52;--focus-ring: rgba(74,167,199,.14);--shadow-soft: rgba(0,0,0,.34);--danger: #ffb4ab;--danger-bg: #3a1716;--success: #75d7ad;--success-bg: #103426}*{box-sizing:border-box}html{min-width:320px;background:var(--page-bg)}body{margin:0;min-width:320px;min-height:100vh;background:var(--page-bg)}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit}.login-shell{min-height:100svh;display:grid;grid-template-columns:minmax(0,1.04fr) minmax(520px,.96fr);background:var(--surface)}.visual-panel{position:relative;min-height:100svh;overflow:hidden;isolation:isolate;color:#fff}.visual-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;animation:image-arrival 1.15s cubic-bezier(.2,.75,.25,1) both}.visual-scrim{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#050c1561,#050c150f 52%,#050c1547),linear-gradient(180deg,#050c159e,#050c1514 44%,#050c15f0)}.visual-eyebrow,.form-eyebrow,.dashboard-kicker,.section-kicker{display:inline-flex;align-items:center;gap:9px;color:#20c6ef;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.visual-eyebrow:before{content:"";width:36px;height:2px;background:currentColor}.visual-site-link{position:absolute;z-index:2;top:24px;left:28px;display:inline-flex;align-items:center;gap:9px;min-height:38px;padding:0 13px;border:1px solid rgba(255,255,255,.28);border-radius:8px;color:#fff;background:#050c15f0;text-decoration:none;font-size:.86rem;font-weight:700;text-shadow:0 1px 3px rgba(0,0,0,.9);box-shadow:0 8px 24px #00000047,0 0 0 1px #00000024;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.visual-site-link svg{transition:transform .2s ease}.visual-site-link:hover svg{transform:translate(4px)}.visual-module-pills{position:absolute;z-index:2;left:32px;right:32px;bottom:26px;min-height:34px;display:flex;align-items:center;justify-content:center;gap:clamp(10px,1.85vw,28px);padding:8px 0}.visual-module-pills span{min-width:0;flex:0 1 auto;display:inline-flex;align-items:center;color:#fff;font-size:clamp(.62rem,.76vw,.75rem);font-weight:700;line-height:1.1;letter-spacing:-.01em;text-align:center;white-space:nowrap;text-shadow:0 2px 7px rgba(0,0,0,1),0 0 18px rgba(0,0,0,1),0 0 2px rgba(0,0,0,.9)}.visual-module-pills span+span:before{content:"/";margin-right:4px;color:#50c9e8;font-weight:500;text-shadow:0 2px 7px rgba(0,0,0,1),0 0 14px rgba(0,0,0,1)}.form-panel{position:relative;min-height:100svh;display:flex;flex-direction:column;overflow-y:auto;padding:clamp(24px,3.3vh,36px) clamp(32px,4.4vw,64px) 18px;background:var(--surface)}.login-topbar{display:flex;align-items:center;justify-content:space-between;gap:24px}.topbar-controls{display:inline-flex;align-items:center;gap:10px}.compact-brand{display:inline-flex;align-items:center;gap:12px;color:#005f86;font-weight:700;text-decoration:none;letter-spacing:-.01em}.compact-brand img{flex:0 0 auto;width:38px;height:38px;object-fit:contain}.brand-logo-dark,[data-theme=dark] .brand-logo-light{display:none}[data-theme=dark] .brand-logo-dark{display:block}.form-wrap{width:min(100%,520px);margin:auto;padding:clamp(34px,5.2vh,58px) 0 clamp(26px,4vh,44px);animation:form-arrival .7s .08s cubic-bezier(.2,.75,.25,1) both}.login-slogan{display:flex;align-items:baseline;justify-content:center;gap:clamp(10px,1.7vw,20px);margin-bottom:clamp(28px,4.4vh,46px);color:#545964;font-size:clamp(2.65rem,4.05vw,4.2rem);font-weight:800;line-height:1;letter-spacing:.22em;text-transform:uppercase;white-space:nowrap}.login-slogan strong{color:var(--brand-deep);font:inherit}[data-theme=dark] .login-slogan{color:#d9dee4}[data-theme=dark] .login-slogan strong{color:var(--brand)}.form-heading{margin-bottom:26px}.form-heading h1{margin:0 0 9px;color:#545964;font-size:clamp(1.7rem,1.95vw,2.05rem);font-weight:700;line-height:1.06;letter-spacing:-.035em}.form-heading .title-accent{color:var(--brand)}.form-heading p{margin:0;max-width:500px;color:var(--muted);font-size:.94rem;line-height:1.48}.form-eyebrow{color:var(--brand)}.language-switcher,.theme-switcher{display:inline-flex;align-items:center;padding:3px;border:1px solid var(--switch-border);background:var(--switch-bg);border-radius:10px;box-shadow:none}.language-switcher button{border:0;min-width:38px;height:30px;border-radius:7px;background:transparent;color:var(--muted);font-size:.72rem;font-weight:700;transition:color .2s ease,background .2s ease}.theme-switcher{position:relative;overflow:visible}.theme-switcher button{position:relative;display:inline-grid;place-items:center;border:0;width:34px;min-width:34px;height:30px;border-radius:8px;background:transparent;color:var(--muted);font-size:.68rem;font-weight:700;transition:color .2s ease,background .2s ease,transform .2s ease,box-shadow .2s ease}.theme-switcher button:hover{color:var(--brand-deep);transform:translateY(-1px)}.theme-switcher button:after{content:attr(data-tooltip);position:absolute;z-index:40;top:calc(100% + 9px);left:50%;width:max-content;max-width:180px;padding:7px 10px;border:1px solid var(--line);border-radius:9px;color:var(--ink);background:var(--surface);box-shadow:0 14px 32px var(--shadow-soft);font-size:.7rem;font-weight:700;line-height:1.2;opacity:0;pointer-events:none;transform:translate(-50%,-4px);transition:opacity .16s ease,transform .16s ease;white-space:nowrap}.theme-switcher button:before{content:"";position:absolute;z-index:41;top:calc(100% + 4px);left:50%;width:8px;height:8px;border-left:1px solid var(--line);border-top:1px solid var(--line);background:var(--surface);opacity:0;pointer-events:none;transform:translate(-50%) rotate(45deg);transition:opacity .16s ease}.theme-switcher button:hover:after,.theme-switcher button:hover:before,.theme-switcher button:focus-visible:after,.theme-switcher button:focus-visible:before{opacity:1;transform:translate(-50%)}.theme-switcher button:hover:before,.theme-switcher button:focus-visible:before{transform:translate(-50%) rotate(45deg)}.language-switcher button.active,.theme-switcher button.active{color:#fff;background:var(--brand-deep);box-shadow:none}.language-switcher.compact button{min-width:37px;height:30px}.login-form{display:grid;gap:8px}.field-label{color:#545964;font-size:.84rem;font-weight:600}.input-shell{min-height:52px;display:flex;align-items:center;gap:12px;padding:0 14px;border:1px solid var(--input-border);border-radius:9px;background:var(--input-bg);color:var(--input-icon);transition:border-color .2s ease,box-shadow .2s ease}.input-shell:focus-within{border-color:var(--brand-deep);box-shadow:0 0 0 3px var(--focus-ring)}.input-shell.invalid{border-color:#d92d20;background:var(--danger-bg)}.input-shell input{min-width:0;flex:1;height:50px;border:0;outline:0;background:transparent;color:var(--ink);caret-color:var(--brand-deep);font-size:.96rem}.input-shell input::placeholder{color:#929ca3}.input-shell input::selection{color:#fff;background:var(--brand-deep)}.input-shell input:-webkit-autofill,.input-shell input:-webkit-autofill:hover,.input-shell input:-webkit-autofill:focus{-webkit-text-fill-color:var(--ink);box-shadow:0 0 0 1000px var(--input-bg) inset;transition:background-color 9999s ease-out 0s}.field-error{color:var(--danger);font-size:.82rem}.account-message{margin:1px 0 2px;padding:9px 12px;border-radius:8px;font-size:.8rem;line-height:1.38}.account-message.checking{color:var(--muted);background:var(--surface-muted)}.account-message.blocked{color:var(--danger);background:var(--danger-bg)}.password-toggle{display:grid;place-items:center;width:38px;height:38px;border:0;background:transparent;color:var(--input-icon);border-radius:8px}.password-toggle:hover{background:var(--soft);color:var(--brand)}.password-stage{display:grid;gap:7px;margin-top:3px;animation:method-reveal .34s ease both}.login-method{display:flex;align-items:flex-start;gap:11px;margin:4px 0 2px;padding:12px 13px;color:#545964;background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--brand-deep);border-radius:4px 9px 9px 4px;animation:method-reveal .34s ease both}.login-method svg{flex:0 0 auto;margin-top:2px;color:var(--brand)}.login-method div{display:grid;gap:3px}.login-method strong{color:#545964;font-size:.9rem}.login-method span{color:var(--muted);font-size:.82rem;line-height:1.45}.form-error{margin-top:2px;padding:10px 12px;border-radius:8px;color:var(--danger);background:var(--danger-bg);font-size:.82rem;line-height:1.38}.session-expired-notice{display:flex;align-items:flex-start;gap:10px;margin-bottom:8px;padding:12px 13px;border:1px solid color-mix(in srgb,var(--brand) 28%,var(--line));border-left:3px solid var(--brand);border-radius:6px 9px 9px 6px;color:var(--ink);background:var(--surface-soft);font-size:.84rem;line-height:1.45}.session-expired-notice svg{flex:0 0 auto;margin-top:1px;color:var(--brand)}.password-requirements{display:grid;gap:8px;padding:12px 13px;border:1px solid var(--line);border-radius:9px;color:var(--muted);background:var(--surface-soft);font-size:.78rem;line-height:1.4}.password-requirements strong{color:var(--ink);font-size:.82rem}.password-requirements ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 10px;margin:0;padding:0;list-style:none}.password-requirements li{display:flex;align-items:center;gap:7px;min-width:0}.password-requirements li span{flex:0 0 auto;width:17px;height:17px;display:grid;place-items:center;border-radius:50%;color:var(--muted);background:var(--soft);font-size:.7rem;font-weight:800}.password-requirements li.met{color:var(--success);font-weight:600}.password-requirements li.met span{color:#fff;background:var(--success)}.password-requirements small{color:var(--muted);line-height:1.45}.password-requirements.compact{padding:10px;font-size:.74rem}.forgot-row{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:2px;color:var(--muted);font-size:.84rem}.forgot-row a,.forgot-row button{border:0;padding:0;color:var(--brand);background:transparent;text-decoration:none;font-weight:700}.forgot-row button:disabled{color:#9aa5aa}.reset-confirmation{display:flex;align-items:flex-start;gap:9px;padding:12px 13px;border-radius:8px;color:var(--success);background:var(--success-bg);font-size:.84rem;line-height:1.45}.reset-confirmation svg{flex:0 0 auto}.login-submit{width:100%;min-height:52px;display:flex;align-items:center;justify-content:center;gap:12px;margin-top:6px;border:1px solid var(--brand-deep);border-radius:9px;padding:0 18px;color:#fff;background:var(--brand-deep);font-weight:700;box-shadow:none;transition:transform .18s ease,background .18s ease,border-color .18s ease}.login-submit svg:last-child{margin-left:auto}.login-submit:before{content:"";width:19px}.login-submit.microsoft:before{display:none}.login-submit:hover:not(:disabled){transform:translateY(-1px);background:#004d72}.login-submit:active:not(:disabled){transform:translateY(0)}.login-submit:disabled{color:var(--disabled-text);border-color:var(--disabled-border);background:transparent;box-shadow:none}.login-submit:not(.microsoft):hover:not(:disabled){transform:translateY(-2px);border-color:#545964;color:#fff;background:#545964}.login-submit.microsoft:hover:not(:disabled){transform:translateY(-2px);border-color:#dce4e8;color:#545964;background:#fff}[data-theme=dark] .compact-brand{color:#fff}[data-theme=dark] .form-heading h1,[data-theme=dark] .field-label,[data-theme=dark] .login-method,[data-theme=dark] .login-method strong{color:#b8c1cc}[data-theme=dark] .login-submit.microsoft:hover:not(:disabled){border-color:#fff;color:#545964;background:#fff}.turnstile-stage{width:100%;min-width:0;overflow:hidden}.turnstile-widget{width:100%}.turnstile-widget:empty{display:none}.ms-logo{display:grid;grid-template-columns:repeat(2,9px);grid-template-rows:repeat(2,9px);gap:2px}.ms-logo span:nth-child(1){background:#f35325}.ms-logo span:nth-child(2){background:#81bc06}.ms-logo span:nth-child(3){background:#05a6f0}.ms-logo span:nth-child(4){background:#ffba08}.access-note{display:flex;align-items:flex-start;gap:10px;margin-top:14px;color:var(--muted);font-size:.8rem;line-height:1.42}.access-note svg{flex:0 0 auto;margin-top:2px;color:var(--brand)}.access-note p{margin:0}.access-note a{color:var(--brand);font-weight:600;text-decoration:none}.login-footer{margin:auto 0 0;text-align:center;color:var(--muted);font-size:.72rem}.boot-screen,.callback-screen{min-height:100svh;display:grid;place-items:center;background:var(--page-bg)}.boot-screen{align-content:center;gap:28px}.boot-screen img{width:62px}.loader{width:25px;height:25px;border:3px solid #d8e5ea;border-top-color:var(--brand);border-radius:50%;animation:spin .8s linear infinite}.callback-screen{position:relative;padding:32px}.callback-brand{position:absolute;top:30px;left:34px;display:flex;align-items:center;gap:10px;color:var(--brand);font-weight:700;text-decoration:none}.callback-brand img{width:40px}.callback-state{width:min(100%,520px);text-align:center}.callback-icon{width:66px;height:66px;display:grid;place-items:center;margin:0 auto 26px;color:var(--brand);background:var(--soft);border-radius:50%}.callback-icon svg{width:29px;height:29px}.callback-state.error .callback-icon{color:var(--danger);background:var(--danger-bg)}.callback-state h1{margin:0 0 12px;color:var(--ink);font-size:2.15rem;letter-spacing:-.035em}.callback-state p{margin:0;color:var(--muted);line-height:1.6}.callback-loader{width:140px;height:3px;margin:34px auto 0;overflow:hidden;background:var(--line);border-radius:99px}.callback-loader span{display:block;width:50%;height:100%;background:var(--brand);animation:loading-line 1.1s ease-in-out infinite alternate}.primary-link{display:inline-flex;margin-top:28px;padding:13px 22px;border-radius:8px;color:#fff;background:var(--brand-deep);text-decoration:none;font-weight:600}.session-warning-backdrop{position:fixed;z-index:5000;inset:0;display:grid;place-items:center;padding:20px;background:#04121c9e;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.session-warning-dialog{width:min(100%,460px);padding:30px;border:1px solid var(--line);border-radius:16px;color:var(--ink);background:var(--surface);box-shadow:0 24px 80px #001e2d47}.session-warning-dialog h2{margin:10px 0;font-size:clamp(1.55rem,3vw,2rem);line-height:1.15;letter-spacing:-.03em}.session-warning-dialog p{margin:0;color:var(--muted);line-height:1.6}.session-warning-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.session-warning-actions button{min-height:44px}@media(max-width:560px){.session-warning-dialog{padding:24px 20px}.session-warning-actions{flex-direction:column-reverse}.session-warning-actions button{width:100%}}.set-password-screen{min-height:100svh;display:grid;place-items:center;padding:28px;background:radial-gradient(circle at 20% 10%,rgba(0,95,134,.13),transparent 32%),var(--page-bg)}.set-password-panel{width:min(100%,560px);padding:34px;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:0 24px 70px var(--shadow-soft)}.set-password-topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:34px}.set-password-panel .compact-brand{min-width:0}.set-password-panel form{display:grid;gap:12px}.set-password-panel h1,.set-success h1{margin:10px 0;color:var(--ink);font-size:2.2rem;letter-spacing:-.04em}.set-password-panel p{margin:0 0 14px;color:var(--muted);line-height:1.6}.set-success{display:grid;justify-items:start;gap:10px}.set-success svg{width:46px;height:46px;color:var(--success)}.set-password-status .status-spinner{color:var(--brand);animation:status-spin .85s linear infinite}.set-password-status[role=alert] svg{color:var(--danger)}@keyframes status-spin{to{transform:rotate(360deg)}}.app-shell{min-height:100svh;display:grid;grid-template-columns:250px minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);background:var(--page-bg);transition:grid-template-columns .2s ease}.app-shell.sidebar-collapsed{grid-template-columns:76px minmax(0,1fr)}:fullscreen .sidebar,:fullscreen .platform-topbar,:fullscreen .view-as-banner{display:none}:fullscreen .app-shell,:fullscreen .app-shell.sidebar-collapsed{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(100svh,auto)}:fullscreen .dashboard-main{grid-column:1;grid-row:1;width:100%;max-width:none}.sidebar{grid-column:1;grid-row:1 / span 2;position:sticky;top:0;z-index:40;height:100svh;display:flex;flex-direction:column;padding:27px 18px 20px;color:#dcecf2;background:var(--sidebar-bg);transition:padding .2s ease}.sidebar-toggle{width:36px;height:36px;display:grid;place-items:center;align-self:flex-end;margin:-9px -5px 15px 0;border:1px solid rgba(255,255,255,.16);border-radius:10px;color:#dcecf2;background:#ffffff0f;cursor:pointer;transition:color .16s ease,background .16s ease,border-color .16s ease}.sidebar-toggle:hover{color:#fff;border-color:#ffffff47;background:#ffffff1f}.sidebar.collapsed{align-items:center;padding-inline:12px}.sidebar.collapsed .sidebar-toggle{align-self:center;margin-right:0}.sidebar.collapsed .sidebar-brand-wrap{width:100%}.sidebar.collapsed .sidebar-brand{justify-content:center;padding-inline:0}.sidebar.collapsed .sidebar-brand span,.sidebar.collapsed .sidebar-nav button span{display:none}.sidebar.collapsed .sidebar-nav{justify-items:center;gap:7px}.sidebar.collapsed .sidebar-nav button{width:46px;min-height:46px;gap:0;justify-content:center;padding:0;border-radius:12px}.sidebar.collapsed .sidebar-active-pill{box-shadow:none}.sidebar-brand-wrap{position:relative;padding-bottom:27px}.sidebar-brand{width:100%;display:flex;align-items:center;gap:11px;border:0;padding:0 9px;color:#fff;background:transparent;text-align:left;text-decoration:none;font:inherit;font-size:1rem;font-weight:700;letter-spacing:-.01em}.sidebar-logo{width:43px;height:43px;object-fit:contain;padding:0;border-radius:0;background:transparent}.sidebar-logo-dark,[data-theme=dark] .sidebar-logo-light{display:none}[data-theme=dark] .sidebar-logo-dark{display:block}.sidebar-brand span{display:grid}.sidebar-brand small{color:#7dc9e0;font-size:.7rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.sidebar-brand-menu{margin-left:auto;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:9px;color:#9fd6e8;background:#ffffff0f;opacity:.9;animation:sidebar-brand-menu-hint 2.4s ease-in-out infinite;transition:opacity .15s ease,color .15s ease,background .15s ease,transform .2s ease}.sidebar-brand-wrap:hover .sidebar-brand-menu,.sidebar-brand-menu.open{opacity:1;color:#fff;background:#ffffff24;transform:scale(1.06);animation:none}.sidebar.collapsed .sidebar-brand-menu{display:none}@keyframes sidebar-brand-menu-hint{0%,to{opacity:.55}50%{opacity:1}}.sidebar-toggle-bottom{margin-top:auto;align-self:flex-end}.sidebar.collapsed .sidebar-toggle-bottom{align-self:center}.sidebar-section-label{margin:3px 7px 9px;padding:13px 7px 0;border-top:1px solid rgba(255,255,255,.1);color:#7dc9e0;font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.sidebar.collapsed .sidebar-section-label{font-size:0;padding-top:13px}.sidebar-nav{min-height:0;display:grid;align-content:start;gap:5px;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(220,236,242,.34) transparent}.sidebar>.sidebar-nav{flex:1 1 auto;padding-right:4px;padding-bottom:10px}.sidebar-nav::-webkit-scrollbar{width:7px}.sidebar-nav::-webkit-scrollbar-track{background:transparent}.sidebar-nav::-webkit-scrollbar-thumb{border-radius:999px;background:#dcecf247}.sidebar-nav::-webkit-scrollbar-thumb:hover{background:#dcecf270}.sidebar-overview-panel{margin-inline:0;padding:0;border:0;border-radius:0;background:transparent}.sidebar-overview-floating{position:absolute;top:78px;left:calc(100% + 10px);width:248px;z-index:60;padding:12px 14px 16px;border-radius:14px;background:var(--sidebar-bg);box-shadow:0 24px 54px #00000073;border:1px solid rgba(255,255,255,.1)}.sidebar-overview-floating:before{content:"";position:absolute;top:0;bottom:0;left:-18px;width:18px}.sidebar-overview-floating .sidebar-section-label{margin-top:0}.sidebar.collapsed .sidebar-overview-floating{left:calc(100% + 14px);width:min(340px,calc(100vw - 110px));padding:14px 16px 18px}.sidebar.collapsed .sidebar-overview-floating .sidebar-section-label{margin:0 0 12px;padding:0 0 10px;font-size:.68rem;border-top:0;border-bottom:1px solid rgba(255,255,255,.1)}.sidebar.collapsed .sidebar-overview-floating .sidebar-nav{justify-items:stretch;gap:8px}.sidebar.collapsed .sidebar-overview-floating .sidebar-nav button{width:100%;min-height:56px;justify-content:flex-start;gap:14px;padding:0 16px;border-radius:12px}.sidebar.collapsed .sidebar-overview-floating .sidebar-nav button span{display:inline}.sidebar-nav-animated{animation:sidebar-nav-in .16s ease both}@keyframes sidebar-nav-in{0%{opacity:.55;transform:translate(-4px)}to{opacity:1;transform:translate(0)}}.sidebar-nav button{position:relative;overflow:hidden;width:100%;min-height:45px;display:flex;align-items:center;gap:12px;border:0;border-radius:8px;padding:0 13px;color:#bcd4df;background:transparent;text-align:left;font-size:.9rem;transition:color .18s ease,background .18s ease}.sidebar-nav button:hover{color:#fff;background:#ffffff12}.sidebar-nav button.active{color:#fff}.sidebar-nav button>svg,.sidebar-nav button>span{position:relative;z-index:1}.sidebar-active-pill{position:absolute;inset:0;z-index:0;border-radius:inherit;background:var(--sidebar-active);box-shadow:inset 3px 0 #22b9e0}.sidebar-nav button.disabled{color:#bcd4df73;cursor:not-allowed}.sidebar-nav button.disabled:hover{color:#bcd4df73;background:transparent}.sidebar-module-title{display:flex;align-items:center;gap:11px;margin:3px 7px 14px;padding:13px 7px;border-top:1px solid rgba(255,255,255,.1);color:#fff;font-size:1.04rem;font-weight:800;letter-spacing:.01em}.sidebar-module-title.preview{color:#dff7ff}.sidebar-module-title svg{flex:0 0 auto;color:#dcecf2}.sidebar-project-label{min-width:0;max-width:100%}.sidebar-project-label span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar.collapsed .sidebar-module-title{justify-content:center;margin-inline:0;padding-inline:0}.sidebar.collapsed .sidebar-module-title span{display:none}.platform-topbar{grid-column:2;grid-row:1;position:sticky;top:0;z-index:30;min-width:0;min-height:70px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px clamp(22px,3vw,42px);color:var(--ink);background:var(--surface);border-bottom:1px solid var(--line);box-shadow:0 8px 22px var(--shadow-soft)}.platform-topbar-actions-only{justify-content:flex-end}.platform-topbar-context{min-width:0;display:flex;align-items:center;gap:10px;color:var(--ink);font-size:1.02rem;font-weight:800;letter-spacing:.01em}.platform-topbar-context svg{flex:0 0 auto;color:var(--brand)}.platform-topbar-context span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.platform-topbar-actions{flex:0 0 auto;display:flex;align-items:center;justify-content:flex-end;gap:9px}.platform-topbar-actions select{min-width:190px;min-height:42px;border:1px solid var(--line);border-radius:9px;padding:0 34px 0 12px;color:var(--ink);background:var(--surface);font-weight:700}.platform-topbar-actions select:disabled{color:var(--muted);opacity:1}.platform-topbar-actions select option{color:var(--ink);background:var(--surface)}.platform-topbar-actions .theme-switcher,.platform-topbar-actions .language-switcher{border-color:var(--line);background:var(--surface)}.platform-topbar-actions .theme-switcher button,.platform-topbar-actions .language-switcher button{color:var(--muted)}.platform-topbar-actions .theme-switcher button.active,.platform-topbar-actions .language-switcher button.active{color:#fff;background:var(--brand-deep)}.user-menu{position:relative;flex:0 0 auto}.user-menu-trigger{display:flex;align-items:center;gap:9px;min-height:42px;max-width:230px;border:1px solid var(--line);border-radius:9px;padding:0 10px;color:var(--ink);background:var(--surface);cursor:pointer;transition:border-color .16s ease,background .16s ease}.user-menu-trigger:hover{border-color:var(--brand);background:var(--page-bg)}.user-menu-avatar{flex:0 0 auto;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--brand);font-size:.82rem;font-weight:700}.user-menu-avatar.lg{width:40px;height:40px;font-size:.95rem}.user-menu-id{min-width:0;display:grid;gap:2px;text-align:left}.user-menu-id strong{overflow:hidden;color:var(--ink);font-size:.8rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.user-menu-id span{overflow:hidden;color:var(--muted);font-size:.68rem;text-overflow:ellipsis;white-space:nowrap}.user-menu-caret{flex:0 0 auto;color:var(--muted);transition:transform .16s ease}.user-menu.open .user-menu-caret{transform:rotate(180deg)}.user-menu-dropdown{position:absolute;z-index:40;top:calc(100% + 8px);right:0;min-width:252px;display:grid;gap:4px;padding:9px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:0 20px 44px #05243442}.user-menu-head{display:flex;align-items:center;gap:11px;padding:6px 8px 11px;border-bottom:1px solid var(--line)}.user-menu-head div{min-width:0;display:grid;gap:2px}.user-menu-head strong{overflow:hidden;color:var(--ink);font-size:.9rem;text-overflow:ellipsis;white-space:nowrap}.user-menu-head span{overflow:hidden;color:var(--muted);font-size:.74rem;text-overflow:ellipsis;white-space:nowrap}.user-menu-roles{color:var(--brand-deep)!important;font-weight:600}.user-menu-item{width:100%;min-height:40px;display:flex;align-items:center;gap:10px;border:0;border-radius:8px;padding:0 10px;color:var(--ink);background:transparent;text-align:left;font-size:.86rem;font-weight:600;cursor:pointer;transition:background .14s ease}.user-menu-item svg{flex:0 0 auto;color:var(--muted)}.user-menu-item:hover{background:var(--page-bg)}.user-menu-role-switch{display:grid;gap:4px;padding:8px 4px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:2px 0}.user-menu-role-switch-label{display:flex;align-items:center;gap:6px;padding:2px 6px 4px;color:var(--muted);font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.user-menu-role-option{width:100%;min-height:34px;display:flex;align-items:center;border:0;border-radius:8px;padding:0 10px;color:var(--ink);background:transparent;text-align:left;font-size:.82rem;font-weight:600;cursor:pointer;transition:background .14s ease}.user-menu-role-option:hover{background:var(--page-bg)}.user-menu-role-option.active{background:#005f861a;color:var(--brand-deep)}.view-as-banner{display:flex;align-items:center;gap:8px;margin:0 0 18px;padding:9px 12px;border:1px solid rgba(0,95,134,.25);border-left:3px solid var(--brand);border-radius:8px;background:#005f8612;color:var(--brand-deep);font-size:.82rem}.view-as-banner strong{color:var(--brand-deep)}.view-as-banner small{margin-left:auto;color:var(--muted);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.view-as-banner button{padding:6px 12px;border:1px solid rgba(0,95,134,.3);border-radius:6px;background:var(--surface);color:var(--brand-deep);font:inherit;font-size:.78rem;font-weight:700;cursor:pointer}.view-as-banner button:hover{background:var(--surface-soft)}.view-as-overlay{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;background:#05243459;padding:20px}.view-as-modal{width:min(480px,100%);max-height:80vh;display:flex;flex-direction:column;gap:14px;padding:20px;border-radius:14px;background:var(--surface);box-shadow:0 24px 60px #0524344d}.view-as-modal header{display:flex;align-items:center;justify-content:space-between}.view-as-modal header>span{display:flex;align-items:center;gap:8px;color:var(--ink);font-size:1rem;font-weight:700}.view-as-modal header button{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--muted);cursor:pointer}.view-as-hint{margin:0;color:var(--muted);font-size:.78rem}.view-as-class-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(70px,1fr));gap:8px}.view-as-class-grid button{padding:9px 0;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--ink);font:inherit;font-size:.84rem;font-weight:700;cursor:pointer}.view-as-class-grid button:hover{border-color:var(--brand);color:var(--brand-deep)}.view-as-search{display:flex;align-items:center;gap:8px;padding:0 11px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--muted)}.view-as-search input{flex:1;border:none;outline:0;padding:9px 0;background:transparent;color:var(--ink);font:inherit;font-size:.85rem}.view-as-back{flex-shrink:0;padding:5px 10px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--brand-deep);font:inherit;font-size:.72rem;font-weight:700;cursor:pointer}.view-as-list{display:flex;flex-direction:column;gap:6px;overflow-y:auto;max-height:340px}.view-as-candidate{display:grid;gap:2px;padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:var(--surface);text-align:left;cursor:pointer}.view-as-candidate:hover{border-color:var(--brand);background:#005f860d}.view-as-candidate-name{color:var(--ink);font-size:.86rem;font-weight:700}.view-as-candidate-meta{color:var(--muted);font-size:.74rem}.dashboard-main{grid-column:2;grid-row:2;min-width:0;padding:34px clamp(28px,4vw,62px) 60px}.school-context-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:24px;padding:15px 16px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:0 14px 38px var(--shadow-soft)}.school-context-label{display:grid;gap:5px}.school-context-bar strong{color:var(--ink);font-size:1rem}.school-context-bar select{min-width:min(300px,46vw);min-height:42px;border:1px solid var(--line);border-radius:9px;padding:0 36px 0 12px;color:var(--ink);background:var(--input-bg);font-weight:700}.header-controls{display:flex;align-items:center;justify-content:flex-end;gap:10px}.school-context-bar .header-controls{display:flex}.header-controls .theme-switcher,.header-controls .language-switcher{flex:0 0 auto;display:inline-flex;flex-direction:row}.dashboard-header{display:flex;align-items:flex-start;justify-content:space-between;gap:30px;padding-bottom:30px;border-bottom:1px solid var(--line)}.dashboard-kicker,.section-kicker{color:var(--brand);font-size:.7rem}.dashboard-header h1{margin:9px 0 7px;color:var(--ink);font-size:clamp(1.8rem,2.5vw,2.65rem);letter-spacing:-.04em}.dashboard-header p{margin:0;color:var(--muted);line-height:1.55}.dashboard-alert{display:flex;align-items:center;gap:9px;margin-top:18px;padding:12px 15px;border-radius:8px;font-size:.86rem}.dashboard-alert.error{color:var(--danger);background:var(--danger-bg)}.dashboard-alert.success{color:var(--success);background:var(--success-bg)}.dashboard-alert.info{color:var(--brand-dark);background:#005f8614;border:1px solid rgba(0,95,134,.18)}.dashboard-alert button{margin-left:auto;display:grid;place-items:center;border:0;color:inherit;background:transparent}.dashboard-loader{min-height:400px;display:grid;place-content:center;justify-items:center;gap:14px;color:var(--muted)}.upload-progress{position:fixed;top:22px;left:50%;transform:translate(-50%);z-index:999;display:flex;align-items:center;gap:12px;padding:14px 22px;border-radius:12px;font-size:.95rem;font-weight:600;color:#fff;background:var(--brand);box-shadow:0 12px 32px #00000047;max-width:min(92vw,520px)}.upload-progress p{margin:0}.upload-progress .loader{width:22px;height:22px;border-width:3px;border-color:#ffffff59;border-top-color:#fff;flex:none}.overview-workspace,.workspace-section{padding-top:32px;animation:workspace-arrival .38s ease both}.overview-intro{margin-bottom:30px;padding-top:6px}.overview-timetable{margin-bottom:24px;border:1px solid rgba(0,95,134,.16);border-radius:14px;overflow:hidden;background:linear-gradient(135deg,#fff,#f7fbfd 58%,#eef7fb);box-shadow:0 16px 38px #05243417}.overview-timetable-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:18px 20px 14px;color:var(--ink);border-bottom:1px solid var(--line);background:linear-gradient(90deg,rgba(0,95,134,.08) 0 1px,transparent 1px 20%),linear-gradient(180deg,#fbfdfe,#f2f8fb)}.overview-timetable-kicker{display:block;margin-bottom:6px;color:var(--brand);font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.overview-timetable-head h2{display:flex;align-items:center;gap:10px;margin:0;font-size:clamp(1.05rem,1.8vw,1.35rem);letter-spacing:-.025em}.overview-timetable-head h2 svg{color:var(--brand)}.overview-timetable-note{flex:0 0 auto;padding:5px 10px;border:1px solid rgba(0,95,134,.18);border-radius:999px;color:var(--brand-deep);background:#eef7fb;font-size:.7rem;font-weight:700}.overview-timetable-greeting{margin-left:auto;margin-right:4px;flex:0 1 auto;min-width:0;padding:5px 12px;border-radius:999px;background:#005f860f;color:var(--muted);font-size:.82rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.overview-timetable-class-select{flex:0 0 auto;padding:6px 10px;border:1px solid rgba(0,95,134,.18);border-radius:999px;background:#eef7fb;color:var(--brand-deep);font:inherit;font-size:.78rem;font-weight:700;cursor:pointer}.overview-timetable-greeting strong{color:var(--brand-deep)}.overview-timetable-body{display:grid;grid-template-columns:minmax(0,1fr) 170px;gap:18px;align-items:stretch;padding:0 20px 20px;background:radial-gradient(circle at 0 100%,rgba(0,95,134,.08),transparent 32%),linear-gradient(180deg,#ffffffdb,#f8fbfdf0)}.overview-period-strip{min-width:0;display:grid;border:1px solid var(--line);background:repeating-linear-gradient(0deg,rgba(0,95,134,.035) 0 1px,transparent 1px 34px),#f7fafc;overflow-x:auto}.overview-period-card{min-height:118px;display:grid;align-content:start;gap:7px;padding:10px 14px 9px;border-right:1px solid var(--line);color:var(--muted);background:#ffffffad}.overview-period-card:last-child{border-right:0}.overview-period-card strong{text-align:center;font-size:.92rem;font-weight:800}.overview-period-card span{text-align:center;font-size:.74rem;font-weight:700;color:#6b7280;white-space:nowrap}.overview-period-card em{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:2.6em;overflow:hidden;color:var(--brand-deep);font-size:.76rem;font-style:normal;font-weight:800;line-height:1.3;text-align:center}.overview-period-loads{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:4px;min-height:22px;max-height:50px;overflow:hidden}.slot-picker-list{display:grid;gap:8px}.slot-picker-item{display:grid;gap:2px;padding:10px 13px;border:1px solid var(--line);border-radius:10px;background:var(--surface);text-align:left;cursor:pointer}.slot-picker-item:hover{border-color:var(--brand);background:#005f860d}.slot-picker-item strong{color:var(--ink);font-size:.86rem;overflow-wrap:anywhere}.slot-picker-item small{color:var(--muted);font-size:.74rem}.overview-period-load{max-width:92px;overflow:hidden;padding:3px 7px;border:1px solid rgba(0,95,134,.18);border-radius:999px;color:var(--brand-deep);background:#eaf6fb;font-size:.62rem;font-weight:800;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.overview-period-load.btec{border-color:#54596433;color:#545964;background:#f0f2f4}.overview-period-load.clickable{cursor:pointer}.overview-period-load.clickable:hover{background:var(--brand-deep);border-color:var(--brand-deep);color:#fff}.task-summary-overlay{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:20px;background:transparent}.task-summary-modal{width:min(560px,100%);max-height:88vh;overflow-y:auto;display:grid;gap:14px;padding:22px;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:0 24px 60px #0524344d}.task-summary-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.task-summary-head h3{margin:4px 0 2px;color:var(--ink);font-size:1.05rem;overflow-wrap:anywhere}.task-summary-head button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--muted);cursor:pointer}.task-summary-kind{font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--brand-deep)}.task-summary-meta{display:block;color:var(--muted);font-size:.8rem}.task-summary-dates{display:flex;flex-wrap:wrap;gap:14px;color:var(--muted);font-size:.8rem}.task-summary-dates strong{color:var(--ink)}.task-summary-notes{margin:0;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--surface-soft);color:var(--ink);font-size:.84rem;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.task-summary-open{justify-self:start;display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border:1px solid var(--brand-deep);border-radius:10px;background:var(--brand-deep);color:#fff;font:inherit;font-size:.84rem;font-weight:700;cursor:pointer}.task-summary-open:hover{background:var(--brand);border-color:var(--brand)}.task-summary-tasks{display:grid;gap:8px}.task-summary-tasks-label{font-size:.74rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.task-summary-tasks ol{margin:0;padding-left:20px;display:grid;gap:8px}.task-summary-tasks li{color:var(--ink);font-size:.86rem;line-height:1.5;overflow-wrap:anywhere}.overview-period-load.substitute{border-color:#01557e38;color:#01557e;background:#edf8fc}.overview-period-load.muted{color:var(--muted);background:#fff}.overview-period-card small{display:block;min-height:1.2em;overflow:hidden;color:#70808a;font-size:.68rem;font-weight:800;text-align:center;text-overflow:ellipsis;white-space:nowrap}.overview-period-card.active{color:var(--brand-deep);background:linear-gradient(180deg,#e9f6fb,#dceff6);box-shadow:inset 0 -3px 0 var(--brand)}.overview-period-card.active span{color:#51636d}.overview-period-card.active small{color:var(--brand)}.overview-period-card.active .overview-period-load{background:#fff}.overview-period-empty{grid-column:1 / -1;display:grid;min-height:118px;place-items:center;padding:18px;color:var(--muted);font-size:.82rem;font-weight:800;text-align:center}.overview-period-now{display:flex;align-items:center;gap:12px;padding:16px 0;color:var(--ink)}.overview-period-now svg{flex:0 0 auto;color:var(--brand)}.overview-period-now div{display:grid;gap:1px}.overview-period-now span{color:var(--brand);font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.overview-period-now strong{font-size:.92rem}.overview-period-now small{color:var(--ink);font-size:.86rem;font-weight:800}[data-theme=dark] .overview-timetable{border-color:#54cef42e;background:#0f1a24;box-shadow:0 18px 42px #00000038}[data-theme=dark] .overview-timetable-head{color:#f4f8fb;border-bottom-color:#a0b5c42e;background:linear-gradient(90deg,rgba(84,206,244,.1) 0 1px,transparent 1px 20px),linear-gradient(180deg,#142434,#101d29)}[data-theme=dark] .overview-timetable-kicker,[data-theme=dark] .overview-timetable-head h2 svg,[data-theme=dark] .overview-period-now svg,[data-theme=dark] .overview-period-now span{color:#54cef4}[data-theme=dark] .overview-timetable-head h2,[data-theme=dark] .overview-period-now strong,[data-theme=dark] .overview-period-now small{color:#f4f8fb}[data-theme=dark] .overview-timetable-note,[data-theme=dark] .overview-timetable-greeting{border-color:#54cef438;background:#54cef41a;color:#d8edf7}[data-theme=dark] .overview-timetable-greeting strong{color:#54cef4}[data-theme=dark] .overview-timetable-class-select{border-color:#54cef438;background:#54cef41a;color:#54cef4}[data-theme=dark] .overview-timetable-body{background:radial-gradient(circle at 0 100%,rgba(84,206,244,.08),transparent 36%),linear-gradient(180deg,#0f1a24,#0c1620)}[data-theme=dark] .overview-period-strip{border-color:#a0b5c43d;background:repeating-linear-gradient(0deg,rgba(84,206,244,.04) 0 1px,transparent 1px 34px),#0d1823}[data-theme=dark] .overview-period-card{border-right-color:#a0b5c43d;color:#8fa3b3;background:#111f2cb8}[data-theme=dark] .overview-period-card strong{color:#a8b7c4}[data-theme=dark] .overview-period-card span,[data-theme=dark] .overview-period-card small{color:#9fb0bd}[data-theme=dark] .overview-period-card em{color:#54cef4}[data-theme=dark] .overview-period-card.active{color:#f4f8fb;background:linear-gradient(180deg,#54cef42e,#54cef41a);box-shadow:inset 0 -3px #54cef4}[data-theme=dark] .overview-period-card.active strong,[data-theme=dark] .overview-period-card.active span,[data-theme=dark] .overview-period-card.active small{color:#f4f8fb}[data-theme=dark] .overview-period-load{border-color:#54cef43d;background:#54cef424;color:#d8edf7}[data-theme=dark] .overview-period-load.btec,[data-theme=dark] .overview-period-load.substitute{border-color:#a0b5c43d;background:#a0b5c41f;color:#d8edf7}[data-theme=dark] .overview-period-load.muted,[data-theme=dark] .overview-period-card.active .overview-period-load{background:#ffffff1a}[data-theme=dark] .overview-period-empty{color:#9fb0bd}@media(max-width:640px){.overview-timetable{border-radius:12px}.overview-timetable-head{align-items:flex-start;flex-direction:column;padding:16px 14px 12px}.overview-timetable-body{padding:0 14px 16px}.overview-period-card{min-height:112px;padding-inline:12px}.overview-period-now{gap:10px}}.metrics-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface)}.metric{min-width:0;display:flex;align-items:center;gap:14px;padding:24px 22px;border-right:1px solid var(--line)}.metric:last-child{border-right:0}.metric>span{width:40px;height:40px;display:grid;place-items:center;border-radius:9px;color:var(--brand);background:var(--soft)}.metric svg{width:20px}.metric div{min-width:0;display:grid;gap:4px}.metric small{overflow:hidden;color:var(--muted);font-size:.76rem;text-overflow:ellipsis;white-space:nowrap}.metric strong{color:var(--ink);font-size:1.65rem;letter-spacing:-.03em}.access-overview{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.8fr);gap:70px;align-items:center;margin-top:32px;padding:clamp(30px,4vw,52px);color:#fff;background:var(--workspace-panel)}.access-copy h2{margin:10px 0 12px;font-size:2rem;letter-spacing:-.035em}.access-copy p{max-width:650px;margin:0;color:#c3dae3;line-height:1.65}.access-copy .section-kicker{color:#50c7e8}.access-methods{display:grid;gap:1px;background:#ffffff29}.access-methods>div{display:grid;grid-template-columns:46px 1fr;grid-template-rows:auto auto;column-gap:13px;padding:17px;background:var(--workspace-panel-item)}.method-mark{grid-row:1 / 3;width:43px;height:43px;display:grid;place-items:center;border-radius:8px;color:#fff;font-weight:700}.method-mark.microsoft{background:#08739c}.method-mark.password{background:#3e6474;letter-spacing:2px}.access-methods strong{align-self:end;font-size:.9rem}.access-methods small{color:#a8c7d3;font-size:.73rem}.role-distribution{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-top:30px;border-top:1px solid var(--line)}.role-distribution div{display:flex;align-items:baseline;justify-content:space-between;padding:20px 22px;border-right:1px solid var(--line)}.role-distribution div:last-child{border-right:0}.role-distribution span{color:var(--muted);font-size:.82rem}.role-distribution strong{color:var(--brand);font-size:1.45rem}.module-section{margin-top:32px;padding:clamp(26px,3.5vw,42px);border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface)}.module-heading{max-width:720px;margin-bottom:22px}.module-heading h2{margin:8px 0;color:var(--ink);font-size:1.85rem;letter-spacing:-.035em}.module-heading p{margin:0;color:var(--muted);line-height:1.6}.module-list{border-top:1px solid var(--line)}.module-row{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:18px;align-items:center;padding:22px 0;border-bottom:1px solid var(--line);transition:padding-left .18s ease,color .18s ease}.module-row:hover{padding-left:8px}.module-number{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;color:var(--brand);background:var(--soft);font-size:.78rem;font-weight:700}.module-row h3{margin:0 0 5px;color:var(--ink);font-size:1.16rem;letter-spacing:-.02em}.module-row p{margin:0;max-width:700px;color:var(--muted);font-size:.88rem;line-height:1.55}.module-row small{color:var(--brand);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}.section-heading-row{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:25px}.section-heading-row h2{margin:7px 0;color:var(--ink);font-size:1.85rem;letter-spacing:-.035em}.section-heading-row p{margin:0;color:var(--muted);line-height:1.55}.user-category-tabs{display:flex;align-items:center;gap:6px;margin-bottom:16px;padding-bottom:10px;overflow-x:auto;border-bottom:1px solid var(--line)}.user-category-tabs button{min-width:150px;min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:18px;border:0;border-radius:8px;padding:0 12px;color:var(--muted);background:transparent;font-size:.82rem;font-weight:600;transition:color .16s ease,background .16s ease,transform .16s ease}.user-category-tabs button:hover{color:var(--brand);background:var(--surface-soft);transform:translateY(-1px)}.user-category-tabs button.active{color:#fff;background:var(--brand-deep)}.user-category-tabs strong{min-width:24px;height:24px;display:grid;place-items:center;border-radius:999px;color:var(--brand);background:var(--soft);font-size:.7rem}.user-category-tabs button.active strong{color:var(--brand-deep);background:#fff}.primary-action,.secondary-action{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:8px;padding:0 15px;font-size:.84rem;font-weight:600}.primary-action{border:1px solid var(--brand-deep);color:#fff;background:var(--brand-deep)}.primary-action:hover:not(:disabled){background:#004a6d}.primary-action:disabled{opacity:.5}.secondary-action{border:1px solid var(--line);color:var(--brand);background:var(--surface)}.secondary-action:hover{background:var(--surface-muted)}.secondary-action.danger-action{border-color:#b423184d;color:#b42318;background:#b423180f}.secondary-action.danger-action:hover:not(:disabled){background:#b423181f}.primary-action.danger-action{border-color:var(--danger);color:#fff;background:var(--danger)}.primary-action.danger-action:hover:not(:disabled){background:#962015}.btec-confirm-dialog{width:min(100%,420px)}.btec-confirm-dialog .drawer-actions{margin-top:0}.btec-window-picker-dialog{width:min(100%,520px)}.btec-window-picker-list{display:grid;gap:8px;margin-bottom:22px;max-height:46svh;overflow-y:auto}.btec-window-picker-item{display:grid;gap:3px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;text-align:left;color:var(--ink);background:var(--surface);cursor:pointer}.btec-window-picker-item:hover{border-color:var(--brand);background:var(--surface-muted)}.btec-window-picker-item span{color:var(--muted);font-size:.78rem}.delete-users-drawer{width:min(760px,calc(100vw - 32px));height:auto;max-height:calc(100svh - 36px);border-radius:22px;padding:38px;box-shadow:0 24px 70px #001e2d38;animation:modal-pop .24s cubic-bezier(.2,.75,.25,1) both}.delete-users-drawer h2{max-width:620px;font-size:clamp(2rem,4vw,2.65rem);line-height:1.03}.delete-users-drawer>p{max-width:660px;margin-bottom:22px}.delete-users-drawer .dashboard-alert{margin:0 0 14px}.delete-users-confirm{display:grid;grid-template-columns:minmax(230px,1fr) minmax(190px,auto) minmax(150px,190px);gap:12px;align-items:center;padding:18px;border:1px solid rgba(180,35,24,.22);border-radius:18px;background:var(--danger-bg)}.delete-users-confirm-copy{min-width:0}.delete-users-confirm-copy strong{display:block;color:var(--brand-dark);font-size:1rem;line-height:1.25}.delete-users-confirm-copy p{margin:6px 0 0;color:var(--muted);font-size:.9rem;line-height:1.45}.delete-users-confirm .secondary-action,.delete-users-confirm .primary-action,.delete-users-confirm input{width:100%;min-height:48px}.delete-users-confirm .primary-action{grid-column:1 / -1}@media(max-width:720px){.delete-users-drawer{width:calc(100vw - 20px);max-height:calc(100svh - 20px);padding:38px 22px 24px;border-radius:18px}.delete-users-confirm{grid-template-columns:1fr;padding:14px}.delete-users-drawer .drawer-close{top:14px;right:14px}}.directory-toolbar{height:48px;display:flex;align-items:center;gap:11px;padding:0 14px;border:1px solid var(--line);border-bottom:0;background:var(--surface);color:var(--input-icon)}.directory-toolbar input{min-width:0;flex:1;height:46px;border:0;outline:0;color:var(--ink);background:transparent}.directory-toolbar>span{min-width:30px;text-align:center;color:var(--brand);font-size:.78rem;font-weight:700}.access-policy-strip{display:grid;grid-template-columns:minmax(240px,.7fr) minmax(0,1.3fr);gap:22px;align-items:center;margin-bottom:16px;padding:18px 20px;border:1px solid var(--line);background:var(--surface-soft)}.access-policy-strip strong{display:block;margin-top:6px;color:var(--ink);font-size:.95rem;line-height:1.45}.access-policy-strip ul{display:grid;gap:8px;margin:0;padding:0;list-style:none;color:var(--muted);font-size:.82rem;line-height:1.45}.access-policy-strip li{display:flex;align-items:flex-start;gap:8px}.access-policy-strip li svg{flex:0 0 auto;margin-top:2px;color:var(--brand)}.user-table-wrap{overflow-x:hidden;border:1px solid var(--line);background:var(--surface)}.user-table{width:100%;min-width:0;table-layout:fixed;border-collapse:collapse}.user-table th{padding:11px 9px;color:var(--muted);background:var(--table-head);text-align:left;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.user-table td{padding:13px 9px;border-top:1px solid var(--line);color:var(--ink);font-size:.82rem;vertical-align:middle;overflow-wrap:anywhere}.user-table tr:hover td{background:var(--table-hover)}.user-col-select{width:36px;text-align:center}.user-col-first{width:14%}.user-col-last{width:10%}.user-col-email{width:21%}.user-col-role{width:18%}.user-col-relations{display:none}.user-col-class{width:12%}.user-col-subjects{width:16%}.user-col-method{width:10%}.user-col-status{width:9%}.user-col-actions{width:150px}.user-col-class input{width:100%;min-height:32px;border:1px solid var(--line);border-radius:7px;padding:0 9px;color:var(--ink);background:var(--input-bg);font:inherit;font-weight:600}.user-col-class input:focus{outline:0;border-color:var(--brand);box-shadow:0 0 0 2px var(--focus-ring)}.subject-chip-row{display:flex;flex-wrap:wrap;gap:5px}.subject-chip{display:inline-flex;padding:4px 8px;border-radius:999px;color:var(--brand);background:var(--soft);font-size:.7rem;font-weight:700}.user-table-pagination{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:12px;padding:10px 14px}.user-table-pagination span{color:var(--muted);font-size:.8rem;font-weight:600}.user-table-pagination button{border:1px solid var(--line);background:var(--surface);color:var(--ink);padding:6px 14px;font-size:.8rem;font-weight:600;cursor:pointer}.user-table-pagination button:disabled{opacity:.4;cursor:not-allowed}.user-table-pagination button:not(:disabled):hover{border-color:var(--brand);color:var(--brand)}.user-identity{min-width:0;display:flex;align-items:center;gap:9px}.user-identity>span{flex:0 0 auto;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;color:var(--brand);background:var(--soft);font-weight:700}.user-identity div{min-width:0;display:grid;gap:3px}.user-identity strong{display:block;overflow-wrap:anywhere;font-size:.84rem}.user-identity small{color:var(--muted)}.user-table select{min-height:34px;border:1px solid var(--line);border-radius:7px;padding:0 28px 0 9px;color:var(--ink);background:var(--input-bg);font-size:.8rem}.user-table select:disabled{color:var(--muted);background:var(--surface-muted)}.role-editor{min-width:0}.role-editor summary{display:flex;flex-wrap:wrap;gap:5px;list-style:none;cursor:pointer}.role-editor summary::-webkit-details-marker{display:none}.role-editor summary>span{display:inline-flex;padding:5px 8px;border-radius:999px;color:var(--brand);background:var(--soft);font-size:.7rem;font-weight:700}.role-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin-top:8px;padding-top:8px;border-top:1px solid var(--line)}.role-options label{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:.7rem;cursor:pointer}.role-options input,.role-checkboxes input{accent-color:var(--brand)}.provider-tag{display:inline-flex;max-width:100%;padding:5px 8px;border-radius:999px;font-size:.7rem;font-weight:600;overflow-wrap:anywhere}.provider-tag.microsoft{color:var(--brand);background:var(--soft)}.provider-tag.local{color:var(--muted);background:var(--surface-muted)}.status-toggle{display:inline-flex;align-items:center;gap:7px;border:0;padding:5px 8px;border-radius:999px;color:var(--muted);background:var(--surface-muted);font-size:.74rem}.status-toggle span{width:7px;height:7px;border-radius:50%;background:var(--muted)}.status-toggle.active{color:var(--success);background:var(--success-bg)}.status-toggle.active span{background:var(--success)}.status-toggle:disabled{opacity:.6}.reset-action{border:1px solid var(--line);border-radius:999px;padding:6px 10px;color:var(--brand);background:var(--surface);font-size:.73rem;font-weight:700}.reset-action.requested{color:#9a5b00;border-color:#f3d29a;background:#fff7e7}.section-action-group{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.section-action-group .primary-action,.section-action-group .secondary-action{min-height:38px;padding-inline:12px}.user-email{color:var(--muted);font-size:.82rem;word-break:break-word}.user-no-email-cell{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.user-no-email-badge{border:1px solid var(--danger);color:var(--danger);border-radius:999px;padding:2px 9px;font-size:.7rem;font-weight:700;white-space:nowrap}.user-no-email-cell input{flex:1;min-width:140px;border:1px solid var(--input-border);border-radius:8px;padding:4px 8px;background:var(--input-bg);color:var(--ink);font:inherit;font-size:.8rem}.login-evidence-cell{min-width:150px;display:grid;gap:3px}.login-evidence-cell strong{color:var(--brand-dark);font-size:.76rem;white-space:nowrap}.login-evidence-cell span{color:var(--muted);font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.row-actions{display:flex;flex-direction:column;align-items:stretch;gap:6px}.row-actions .reset-action{width:100%;padding:7px 10px;white-space:nowrap;text-align:center}.invite-policy-strip{display:grid;grid-template-columns:42px minmax(220px,.72fr) minmax(0,1.28fr);gap:16px;align-items:start;margin-bottom:16px;padding:17px 18px;border:1px solid rgba(0,95,134,.18);border-left:4px solid var(--brand);border-radius:10px;background:var(--surface)}.invite-policy-strip>span{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;color:var(--brand);background:var(--soft)}.invite-policy-strip strong{display:block;margin-bottom:4px;color:var(--brand-dark);font-size:.9rem}.invite-policy-strip p{margin:0;color:var(--muted);font-size:.8rem;line-height:1.5}.invite-policy-strip ul{display:grid;gap:6px;margin:0;padding:0;list-style:none;color:var(--muted);font-size:.78rem;line-height:1.45}.invite-policy-strip li{position:relative;padding-left:16px}.invite-policy-strip li:before{content:"";position:absolute;left:0;top:.58em;width:6px;height:6px;border-radius:50%;background:var(--brand)}.import-school-note{display:flex;align-items:flex-start;gap:10px;margin:0 0 14px;padding:12px 13px;border:1px solid rgba(0,95,134,.18);border-left:4px solid var(--brand);border-radius:9px;color:var(--muted);background:var(--surface-soft);font-size:.82rem;line-height:1.45}.import-school-note strong{color:var(--ink)}.link-chip-list{display:flex;align-items:center;gap:6px;flex-wrap:wrap;min-width:0}.link-chip{display:inline-flex;align-items:center;gap:6px;max-width:100%;min-height:28px;padding:0 7px 0 10px;border:1px solid rgba(0,95,134,.18);border-radius:999px;color:var(--brand-deep);background:#005f860b;font-size:.72rem;font-weight:700}.link-chip button{width:18px;height:18px;display:grid;place-items:center;border:0;border-radius:50%;color:var(--muted);background:transparent;font:inherit;cursor:pointer}.link-chip button:hover{color:#fff;background:var(--brand)}.student-parent-email-field{display:grid;gap:5px;margin-top:8px;color:var(--muted);font-size:.68rem;font-weight:700}.student-parent-email-field input{width:min(100%,260px);min-height:32px;border:1px solid var(--line);border-radius:7px;padding:0 9px;color:var(--muted);background:var(--surface);font:inherit;font-weight:600}.student-parent-email-field input:focus{outline:0;border-color:var(--brand);box-shadow:0 0 0 2px var(--focus-ring)}.school-access-dialog{width:min(96vw,1040px)}.school-access-list{display:grid;gap:10px;margin:18px 0;max-height:min(38vh,320px);overflow-y:auto}.school-access-list:empty{display:none}.school-access-empty{margin:16px 0;padding:14px;border:1px dashed var(--line);border-radius:10px;color:var(--muted);background:var(--surface-soft);font-size:.82rem;text-align:center}.school-access-list article{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--surface-soft)}.school-access-list article>div{display:grid;gap:4px;min-width:0}.school-access-list strong{color:var(--brand-deep);font-size:.92rem}.school-access-list span{color:var(--muted);font-size:.78rem;line-height:1.35}.school-access-form{display:grid;gap:16px;margin-top:10px}.school-access-form label{display:grid;gap:8px;color:var(--ink);font-size:.82rem;font-weight:600}.school-access-form select{height:46px;border:1px solid var(--input-border);border-radius:8px;padding:0 12px;color:var(--ink);background:var(--input-bg)}.subject-settings-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:12px;margin-bottom:18px}.subject-settings-grid.two{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}.subject-settings-grid label,.subject-assignment-form label{display:grid;gap:8px;color:var(--ink);font-size:.82rem;font-weight:600}.subject-settings-grid select,.subject-assignment-form select{height:46px;border:1px solid var(--input-border);border-radius:8px;padding:0 12px;color:var(--ink);background:var(--input-bg)}.subject-list-card{display:grid;gap:14px;min-width:0;padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.subject-list-card h3{margin:0;color:var(--ink);font-size:1.05rem}.subject-list,.subject-assignment-list{display:grid;gap:8px;max-height:420px;overflow-y:auto}.subject-list article,.subject-assignment-list article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface-soft)}.subject-list article>div,.subject-assignment-list article>div{display:grid;gap:3px;min-width:0}.subject-list strong,.subject-assignment-list strong{color:var(--brand-deep);font-size:.86rem}.subject-list span,.subject-assignment-list span{overflow:hidden;color:var(--muted);font-size:.76rem;text-overflow:ellipsis;white-space:nowrap}.subject-list small{display:grid;place-items:center;min-width:28px;height:28px;border-radius:999px;color:var(--brand);background:var(--soft);font-weight:800}.subject-assignment-form{display:grid;gap:12px}.drawer-two-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.wide-drawer{width:min(100%,650px)}.import-file-summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid rgba(0,95,134,.16);border-radius:10px;color:var(--brand-dark);background:var(--surface-soft);font-size:.8rem}.import-file-summary strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.import-file-summary span{flex:0 0 auto;padding:4px 8px;border-radius:999px;color:var(--brand);background:var(--soft);font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.import-textarea{width:100%;min-height:260px;border:1px solid var(--input-border);border-radius:8px;padding:12px;color:var(--ink);background:var(--input-bg);font:500 .82rem/1.45 Ubuntu,sans-serif;resize:vertical}.import-textarea:focus{outline:0;border-color:var(--brand);box-shadow:0 0 0 3px var(--focus-ring)}.import-mode-help{margin:-4px 0 2px;color:var(--muted);font-size:.78rem;line-height:1.5}.inline-checkbox{display:flex!important;grid-template-columns:auto 1fr;align-items:center;gap:10px!important}.inline-checkbox input{width:18px!important;height:18px!important}.import-result{display:grid;gap:8px;padding:13px;border:1px solid rgba(0,95,134,.18);border-radius:10px;color:var(--muted);background:#005f860a;font-size:.82rem}.import-result strong{color:var(--brand-deep)}.import-result small{color:var(--muted);line-height:1.45}.import-result ul{margin:4px 0 0;padding-left:18px}.link-dialog{width:min(1120px,calc(100vw - 32px));max-height:min(88vh,840px);overflow:auto}.link-dialog select{width:100%;height:48px;border:1px solid var(--input-border);border-radius:8px;padding:0 12px;color:var(--ink);background:var(--input-bg);font:inherit}.link-management-form{display:grid;gap:14px}.link-mode-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:5px;border:1px solid var(--line);border-radius:12px;background:var(--surface-soft)}.link-mode-switch button{min-height:42px;border:0;border-radius:9px;color:var(--muted);background:transparent;font:800 .82rem/1 Ubuntu,sans-serif;cursor:pointer;transition:transform .18s ease,color .18s ease,background .18s ease}.link-mode-switch button:hover{color:var(--brand-deep);transform:translateY(-1px)}.link-mode-switch button.active{color:#fff;background:var(--brand);box-shadow:0 8px 18px #005f862e}.link-dialog-guidance{display:flex;align-items:flex-start;gap:9px;padding:11px 12px;border-left:3px solid var(--brand);border-radius:10px;color:var(--muted);background:var(--surface-soft);font-size:.78rem;line-height:1.45}.link-dialog-guidance svg{flex:0 0 auto;color:var(--brand)}.link-workspace-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:14px;align-items:stretch}.link-selection-panel{min-width:0;min-height:420px;display:grid;grid-template-rows:auto auto auto minmax(260px,1fr);border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--surface)}.link-selection-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 15px 11px;border-bottom:1px solid var(--line)}.link-selection-header div{min-width:0;display:grid;gap:3px}.link-selection-header strong{color:var(--brand-dark);font-size:.9rem}.link-selection-header span{color:var(--muted);font-size:.74rem}.link-selection-header small{flex:0 0 auto;border-radius:999px;padding:5px 8px;color:var(--brand);background:var(--soft);font-size:.68rem;font-weight:800}.link-selection-search{position:relative;display:flex!important;align-items:center;gap:9px!important;min-height:46px;padding:0 13px;border-bottom:1px solid var(--line);color:var(--input-icon);background:var(--input-bg)}.link-selection-search input{min-width:0;width:100%;height:44px!important;border:0!important;padding:0!important;color:var(--ink);background:transparent!important;box-shadow:none!important;outline:0;font:700 .82rem/1 Ubuntu,sans-serif}.link-selection-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:34px;padding:0 15px;border-bottom:1px solid var(--line);color:var(--muted);background:var(--surface-soft);font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.link-table-wrap{max-height:min(42vh,420px);overflow:auto}.link-selection-table{width:100%;border-collapse:collapse}.link-selection-table tr{cursor:pointer;transition:background .16s ease}.link-selection-table tr:hover{background:var(--surface-soft)}.link-selection-table tr.selected{background:#005f8614}.link-selection-table tr.locked{cursor:default}.link-selection-table tr.locked:hover{background:#005f8614}.link-selection-table td{border-bottom:1px solid var(--line);padding:10px 9px;vertical-align:middle}.link-selection-table td:first-child{width:34px;padding-left:13px}.link-selection-table td:nth-child(2){width:42px}.link-selection-table input{width:16px;height:16px;accent-color:var(--brand);cursor:pointer}.link-selection-table input:disabled{cursor:not-allowed;opacity:.85}.table-user-avatar{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;color:var(--brand);background:var(--soft);font-size:.72rem;font-weight:900}.link-selection-table strong{display:block;color:var(--ink);font-size:.78rem;overflow-wrap:anywhere}.link-selection-table small{display:block;color:var(--muted);font-size:.68rem;overflow-wrap:anywhere}.link-count-badge{min-width:28px;min-height:24px;display:inline-grid;place-items:center;border-radius:999px;color:var(--brand);background:var(--soft);font-size:.72rem;font-weight:900}.link-existing-label{display:inline-flex;margin-top:5px;padding:3px 7px;border-radius:999px;color:var(--success);background:var(--success-bg);font-style:normal;font-size:.62rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.link-new-label{display:inline-flex;margin-top:5px;padding:3px 7px;border-radius:999px;color:var(--brand);background:var(--soft);font-style:normal;font-size:.62rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.link-empty-row{padding:24px 16px!important;color:var(--muted);text-align:center;font-size:.8rem}.link-save-row{display:grid;grid-template-columns:minmax(220px,.55fr) minmax(160px,.45fr);gap:12px;align-items:end}.btec-workspace{display:grid;gap:22px}.btec-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding-top:2px}.btec-header-refresh-only{justify-content:flex-end}.btec-header h2{margin:0 0 7px;color:var(--brand-dark);font-size:clamp(2.05rem,3.2vw,3rem);line-height:.98;letter-spacing:0}.btec-header p,.btec-empty{margin:0;color:var(--muted);line-height:1.55}.btec-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.secondary-action.strong{min-height:44px;border-color:var(--brand);color:var(--brand);font-weight:800}.primary-action.compact,.secondary-action.compact{min-height:36px;padding-inline:12px;font-size:.78rem}.btec-tabs{position:relative;z-index:30;display:flex;align-items:flex-end;gap:26px;overflow:visible;border-bottom:1px solid var(--line)}.btec-tabs-scroll{min-width:0;display:flex;align-items:flex-end;gap:26px;flex:1 1 auto;overflow-x:auto;overflow-y:hidden}.btec-tabs-scroll>button,.btec-more-trigger{min-height:44px;display:inline-flex;align-items:center;gap:8px;flex:0 0 auto;border:0;border-bottom:3px solid transparent;padding:0 2px;color:var(--brand-dark);background:transparent;font-size:.9rem;font-weight:800;cursor:pointer}.btec-tabs button svg{color:currentColor}.btec-tabs-scroll>button:hover,.btec-tabs-scroll>button.active,.btec-more-tabs.active .btec-more-trigger,.btec-more-tabs.open .btec-more-trigger,.btec-more-trigger:hover{color:var(--brand);border-bottom-color:var(--brand)}.btec-more-tabs{position:relative;flex:0 0 auto;overflow:visible}.btec-more-menu{position:absolute;z-index:100;top:calc(100% + 8px);right:0;min-width:190px;max-width:min(260px,calc(100vw - 32px));display:grid;gap:2px;border:1px solid var(--line);border-radius:10px;padding:6px;background:var(--surface);box-shadow:0 18px 42px var(--shadow-soft)}.btec-more-menu button{width:100%;min-height:36px;display:inline-flex;align-items:center;justify-content:flex-start;gap:8px;border:0;border-radius:8px;padding:0 10px;color:var(--brand-dark);background:transparent;font-size:.8rem;font-weight:800;cursor:pointer}.btec-more-menu button:hover,.btec-more-menu button.active{color:var(--brand);background:var(--surface-soft)}.btec-dashboard-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.btec-dashboard{display:grid;gap:16px}.btec-dashboard-columns{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:16px}.dashboard-documents{grid-column:1 / -1}.btec-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.btec-status-card{min-height:122px;display:grid;grid-template-columns:48px minmax(0,1fr);gap:12px;align-items:start;border:1px solid var(--line);border-radius:8px;padding:16px;background:var(--surface);box-shadow:none}.btec-status-card>span{width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--line);border-radius:8px;color:var(--brand);background:var(--surface-muted)}.btec-status-card div{min-width:0;display:grid;gap:5px}.btec-status-card strong{color:var(--brand-dark);font-size:.88rem;line-height:1.25}.btec-status-card .btec-status-value{color:var(--brand-dark);font-size:1.9rem;font-weight:700;line-height:1}button.btec-status-card{cursor:pointer;text-align:left;font:inherit;transition:border-color .16s ease,background .16s ease}button.btec-status-card:hover{border-color:#005f866b;background:var(--surface-muted)}.btec-status-card small{color:var(--muted);font-size:.78rem;line-height:1.45}.btec-action-section,.btec-recent-section{display:grid;gap:14px}.btec-action-section h3,.btec-recent-section h3{margin:0;color:var(--brand-dark);font-size:1.25rem;letter-spacing:0}.btec-action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.btec-action-card{min-height:112px;display:grid;grid-template-columns:34px minmax(0,1fr) 22px;gap:14px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:16px;color:var(--brand);background:var(--surface);text-align:left;box-shadow:none;transition:border-color .16s ease,background .16s ease,transform .16s ease}.btec-action-card:hover{border-color:#005f866b;background:var(--surface-muted);transform:translateY(-1px)}.btec-action-card>span{display:grid;place-items:center;color:var(--brand)}.btec-action-card div{min-width:0;display:grid;gap:7px}.btec-action-card strong{color:var(--brand-dark);font-size:1rem}.btec-action-card small{color:var(--muted);font-size:.78rem;line-height:1.45}.btec-action-card-arrow{display:grid;place-items:center;color:var(--brand)}.btec-recent-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.btec-recent-panel{display:grid;gap:12px;border:1px solid var(--line);border-radius:8px;padding:16px;background:var(--surface);box-shadow:none}.btec-recent-panel header{display:flex;align-items:center;justify-content:space-between;gap:12px}.btec-recent-panel h4{margin:0;color:var(--brand-dark);font-size:1rem}.btec-recent-panel header button{border:0;color:var(--brand);background:transparent;font-size:.76rem;font-weight:900}.btec-dashboard-empty{min-height:138px;display:grid;grid-template-columns:64px minmax(0,1fr);gap:18px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:20px;background:var(--surface)}.btec-dashboard-empty>span{display:grid;place-items:center;color:#8b9499}.btec-dashboard-empty div{min-width:0;display:grid;justify-items:start;gap:8px}.btec-dashboard-empty strong{color:var(--brand-dark);font-size:.94rem}.btec-dashboard-empty small{color:var(--muted);font-size:.78rem}.btec-quick-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.quick-action{min-height:72px;display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:8px;padding:12px;color:var(--brand);background:var(--surface);text-align:left;cursor:pointer;box-shadow:0 8px 18px var(--shadow-soft)}.quick-action:hover{border-color:#005f8647;background:var(--surface-soft)}.quick-action>span{display:grid;gap:3px;min-width:0}.quick-action strong{color:var(--brand-dark);font-size:.82rem}.quick-action small{color:var(--muted);font-size:.72rem;font-weight:700}.btec-panel{border:1px solid var(--line);border-radius:8px;padding:18px;background:var(--surface);box-shadow:0 10px 24px var(--shadow-soft)}.btec-panel h3{margin:0 0 14px;color:var(--brand-dark);font-size:1rem;letter-spacing:0}.btec-student-progress,.btec-parent-module{display:grid;gap:16px}.btec-parent-child-picker{min-width:220px;display:grid;gap:5px;color:var(--muted);font-size:.72rem;font-weight:800}.btec-parent-child-picker select{min-height:38px;border:1px solid var(--line);border-radius:7px;padding:0 10px;color:var(--text);background:var(--surface);font:inherit}.btec-parent-calendar{padding:0;overflow:hidden}.btec-parent-calendar .btec-student-generation-head{padding:14px 16px 11px}.btec-parent-calendar-row{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(150px,1fr) minmax(150px,1fr) auto;align-items:center;gap:12px;border-top:1px solid var(--line);padding:12px 16px}.btec-parent-calendar-row>div{min-width:0;display:grid;gap:4px}.btec-parent-calendar-row strong{color:var(--brand-dark);font-size:.84rem;overflow-wrap:anywhere}.btec-parent-calendar-row span{color:var(--muted);font-size:.74rem}.btec-student-progress-header{align-items:flex-start}.btec-student-progress-summary{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.btec-student-progress-summary span{min-height:34px;display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:7px;padding:7px 10px;color:var(--muted);background:var(--surface);font-size:.76rem}.btec-student-progress-summary strong{color:var(--brand-dark);font-size:.9rem}.btec-student-generation{display:grid;gap:12px}.btec-generation-tabs{width:100%;overflow-x:auto;flex-wrap:nowrap}.btec-generation-tabs>button{min-width:108px;flex-direction:column;gap:4px;align-items:flex-start;padding:8px 14px}.btec-generation-tabs>button span{font-size:.9rem;line-height:1}.btec-generation-tabs>button strong{color:inherit;font-size:.7rem;line-height:1;opacity:.78}.btec-student-generation-head{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding-bottom:10px}.btec-student-generation-head h3{margin:0}.btec-student-generation-head span{color:var(--muted);font-size:.78rem;font-weight:700}.btec-student-unit-list{display:grid;gap:10px}.btec-student-unit{border:1px solid var(--line);border-radius:8px;background:var(--surface-soft);overflow:hidden}.btec-student-unit-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;background:var(--surface)}.btec-student-unit-head div{min-width:0;display:grid;gap:3px}.btec-student-unit-head strong{color:var(--brand-dark);font-size:.92rem;overflow-wrap:anywhere}.btec-student-unit-kicker{color:var(--brand);font-size:.68rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.btec-student-grade,.btec-student-project-grade,.btec-student-project-status{min-height:28px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:999px;padding:5px 10px;white-space:nowrap;color:var(--muted);background:var(--surface);font-size:.74rem;font-weight:800}.btec-student-grade.graded,.btec-student-project-grade.graded{border-color:#005f8640;color:var(--brand-dark);background:#005f8614}.btec-student-grade.pending{border-color:#b77a0047;color:#7a5300;background:#b77a001a}.btec-student-projects{display:grid}.btec-student-project-block{border-top:1px solid var(--line)}.btec-student-project-row{display:grid;grid-template-columns:minmax(220px,1fr) auto auto minmax(170px,auto);align-items:center;gap:10px;border-top:1px solid var(--line);padding:10px 14px}.btec-student-project-block>.btec-student-project-row{border-top:0}.btec-student-project-main{min-width:0;display:grid;gap:3px}.btec-student-project-main strong{color:var(--brand-dark);font-size:.82rem}.btec-student-project-main span{color:var(--muted);font-size:.74rem;line-height:1.35;overflow-wrap:anywhere}.btec-student-project-status.status-graded{border-color:#15803d38;color:#17643b;background:#15803d17}.btec-student-project-status.status-in_progress{border-color:#005f8640;color:var(--brand-dark);background:#005f8614}.btec-student-project-action{min-width:1px}.btec-student-criteria-list{display:grid;border-top:1px solid var(--line);background:var(--surface)}.btec-student-criterion{display:grid;grid-template-columns:minmax(72px,auto) minmax(0,1fr) auto;align-items:center;gap:12px;padding:9px 14px;border-top:1px solid var(--line)}.btec-student-criterion:first-child{border-top:0}.btec-student-criterion>strong{color:var(--brand-dark);font-size:.78rem}.btec-student-criterion>span{color:var(--text);font-size:.76rem;line-height:1.4}.btec-student-criterion>em{border:1px solid;border-radius:999px;padding:3px 8px;font-size:.7rem;font-style:normal;font-weight:800;white-space:nowrap}.btec-student-criterion>em.met{border-color:#15803d3d;color:#17643b;background:#15803d14}.btec-student-criterion>em.not-met{border-color:#b91c1c38;color:#961f1f;background:#b91c1c0f}.assessment-student-project-tabs{display:inline-flex;max-width:100%;border:1px solid var(--line);border-radius:8px;overflow:hidden;margin:0 0 16px}.assessment-student-project-tabs button{min-width:128px;border:0;border-right:1px solid var(--line);background:var(--surface);color:var(--muted);padding:10px 14px;font:inherit;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px}.assessment-student-project-tabs button:last-child{border-right:0}.assessment-student-project-tabs button.active{color:#fff;background:var(--brand)}.assessment-student-project-tabs strong{font-size:.76rem}.btec-student-project-cards{display:grid;gap:10px}.btec-student-project-card{border:1px solid var(--line);border-radius:7px;padding:16px;background:var(--surface);display:grid;gap:12px}.btec-student-project-card-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.btec-student-project-card-head>div{min-width:0}.btec-student-project-card-head span:first-child{color:var(--brand);font-size:.76rem;font-weight:800;text-transform:uppercase}.btec-student-project-card-head h2{margin:5px 0 0;color:var(--brand-dark);font-size:1rem;line-height:1.28}.btec-student-project-dates{display:flex;flex-wrap:wrap;gap:10px 20px;color:var(--muted);font-size:.82rem}.btec-student-project-dates span{display:inline-flex;align-items:center;gap:6px}.btec-student-project-status.status-overdue{border-color:#b91c1c52;color:#a11f1f;background:#b91c1c12}.btec-student-project-card .assessment-primary-button{width:max-content}.btec-student-health{border:1px solid var(--line);border-left:4px solid var(--brand);border-radius:7px;padding:11px 14px;min-width:210px;display:flex;align-items:center;gap:10px;background:var(--surface);color:var(--brand-dark)}.btec-student-health span{display:block;color:var(--muted);font-size:.76rem}.btec-student-health strong{display:block;font-size:.9rem;margin-top:2px}.btec-student-health.attention{border-left-color:#b7791f;color:#8b5d0d}.btec-student-health.urgent{border-left-color:#b91c1c;color:#a11f1f}.btec-student-status-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(270px,.72fr);align-items:start;gap:16px}.btec-student-status-main{display:grid;gap:16px}.btec-status-actions,.btec-status-active,.btec-status-updates{padding:0;overflow:hidden;box-shadow:none}.btec-status-actions .btec-student-generation-head,.btec-status-active .btec-student-generation-head,.btec-status-updates .btec-student-generation-head{padding:13px 16px 11px}.btec-status-actions .btec-student-generation-head>div,.btec-status-active .btec-student-generation-head>div,.btec-status-updates .btec-student-generation-head>div{display:grid;gap:3px}.btec-status-actions .section-kicker,.btec-status-active .section-kicker,.btec-status-updates .section-kicker{font-size:.64rem}.btec-status-count{min-width:26px;height:26px;display:inline-grid;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--brand-dark)!important;background:var(--surface-soft);font-size:.75rem!important}.btec-status-action,.btec-status-project,.btec-status-update{padding:14px 16px;border-top:1px solid var(--line);display:grid;gap:8px}.btec-status-action:first-of-type,.btec-status-project:first-of-type,.btec-status-update:first-of-type{border-top:0}.btec-status-action{grid-template-columns:auto minmax(0,1fr) auto;align-items:start}.btec-status-action>svg{color:#a11f1f;margin-top:2px}.btec-status-action.action-due_soon>svg{color:#9a6700}.btec-status-action strong,.btec-status-project strong,.btec-status-update strong{display:block;color:var(--brand-dark);font-size:.9rem}.btec-status-action span,.btec-status-project span,.btec-status-update span{color:var(--muted);font-size:.78rem}.btec-status-action p{margin:5px 0 0;color:var(--text);font-size:.82rem;line-height:1.45}.btec-status-clear{min-height:92px;display:flex;align-items:center;gap:10px;padding:16px;color:#17643b;background:#15803d09}.btec-status-clear p{margin:0;color:var(--text);font-size:.84rem}.btec-status-project{grid-template-columns:minmax(0,1fr) auto;align-items:center}.btec-status-project-meta{display:flex;flex-wrap:wrap;gap:10px 16px;color:var(--muted);font-size:.79rem}.btec-status-project-meta span{display:inline-flex;align-items:center;gap:5px}.btec-status-project .inline-action{justify-self:end;grid-column:2;grid-row:1 / span 2}.btec-status-update{grid-template-columns:minmax(0,1fr) auto;align-items:center}.btec-status-updates .btec-status-update{grid-template-columns:1fr;gap:9px}.btec-status-updates .btec-status-update>:last-child{justify-self:start}.btec-status-updates .btec-empty,.btec-status-active .btec-empty{margin:0;padding:16px}@media(max-width:720px){.assessment-student-project-tabs{display:grid;width:100%;grid-template-columns:repeat(3,minmax(0,1fr))}.assessment-student-project-tabs button{min-width:0;padding:10px 7px;gap:4px;font-size:.8rem}.btec-student-project-card-head,.btec-status-project,.btec-status-update{display:grid;grid-template-columns:1fr}.btec-student-project-card .assessment-primary-button{width:100%;justify-content:center}.btec-student-health{min-width:0;width:100%}.btec-parent-child-picker{width:100%;min-width:0}.btec-parent-calendar-row{grid-template-columns:1fr;align-items:start;gap:6px}.btec-status-action{grid-template-columns:auto minmax(0,1fr)}.btec-status-action .inline-action{grid-column:1 / -1;width:100%;justify-content:center}.btec-status-project .inline-action{justify-self:stretch;grid-column:1;grid-row:auto;width:100%;justify-content:center}.btec-stage-review-list .btec-list-row{grid-template-columns:1fr;align-items:start}.btec-stage-review-actions{justify-content:flex-start}}@media(max-width:900px){.btec-student-status-layout{grid-template-columns:1fr}.btec-student-progress-header{flex-direction:column}.btec-student-progress-summary{justify-content:flex-start}.btec-student-unit-head{grid-template-columns:1fr}.btec-student-grade{justify-self:start}.btec-student-project-row{grid-template-columns:minmax(0,1fr);align-items:stretch}.btec-student-project-row .inline-action{width:100%;justify-content:center}.btec-student-project-status,.btec-student-project-grade{justify-self:start}.btec-student-criterion{grid-template-columns:minmax(0,1fr) auto;gap:5px 10px}.btec-student-criterion>span{grid-column:1 / -1;grid-row:2}}.panel-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.panel-title-row>div{display:flex;align-items:center;gap:8px;color:var(--brand-dark)}.panel-title-row strong{font-size:.92rem}.panel-title-row svg{color:var(--muted)}.panel-title-row button{border:0;color:var(--brand);background:transparent;font-size:.74rem;font-weight:800;cursor:pointer}.btec-metric{display:grid;gap:8px;min-height:94px}.btec-metric span{color:var(--muted);font-size:.78rem;font-weight:700;text-transform:uppercase}.btec-metric strong{color:var(--brand);font-size:2rem;line-height:1}.btec-list{display:grid;border:1px solid var(--line);border-radius:8px;overflow:hidden}.btec-list.compact .btec-list-row{min-height:52px}.btec-list-row{min-height:60px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding:10px 12px;background:var(--surface)}.btec-list-row:last-child{border-bottom:0}.btec-list-row-clickable{cursor:pointer}button.btec-list-row{width:100%;text-align:left;border-left:0;border-right:0;border-top:0;font:inherit}.btec-attention-section{display:grid;gap:14px}.btec-attention-section h3{margin:0;display:inline-flex;align-items:center;gap:8px;color:var(--brand-dark);font-size:1.25rem;letter-spacing:0}.btec-attention-section .btec-empty{border:1px dashed var(--line);border-radius:8px;padding:14px 16px}.btec-attention-counters{display:flex;flex-wrap:wrap;gap:12px}.btec-attention-counter{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:8px;padding:10px 14px;color:var(--brand-dark);background:var(--surface);font-size:.82rem;font-weight:700;cursor:pointer;transition:border-color .16s ease,background .16s ease}.btec-attention-counter:hover{border-color:#005f866b;background:var(--surface-muted)}.btec-attention-counter b{font-size:1.15rem;line-height:1;color:var(--brand)}.btec-attention-counter.is-pending{border-color:var(--danger)}.btec-attention-counter.is-pending b{color:var(--danger)}.btec-dashboard-first-run-actions{display:flex;flex-wrap:wrap;gap:10px}.btec-skeleton-block{min-height:122px;border:1px solid var(--line);border-radius:8px;background:var(--surface-muted);animation:btec-skeleton-pulse 1.4s ease-in-out infinite}.btec-dashboard-skeleton .btec-recent-panel.btec-skeleton-block{min-height:220px}@keyframes btec-skeleton-pulse{0%,to{opacity:1}50%{opacity:.55}}@media(prefers-reduced-motion:reduce){.btec-skeleton-block{animation:none}}.btec-list-row-clickable:hover{background:var(--surface-alt, rgba(0,0,0,.03))}.btec-list-row strong{display:block;color:var(--brand-dark);font-size:.82rem}.btec-list-row span,.btec-list-row small{color:var(--muted);font-size:.72rem;font-weight:700}.btec-stage-review-list .btec-list-row{display:grid;grid-template-columns:minmax(220px,1fr) minmax(155px,.42fr) auto;justify-content:stretch}.btec-stage-review-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:6px}.btec-stage-review-actions .secondary-action{min-height:34px;padding-inline:10px;white-space:nowrap}.btec-stage-review-actions .icon-button{flex:0 0 auto}.btec-stage-review-list .btec-criteria-detail{grid-column:1 / -1;margin:2px 0 0}.btec-list-page,.btec-create-page{display:grid;gap:14px;min-width:0}.btec-list-header,.btec-back-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.btec-list-header h3,.btec-back-header h3{margin:4px 0 6px;color:var(--brand-dark);font-size:1.22rem;letter-spacing:0}.btec-list-header p,.btec-back-header p{margin:0;max-width:72ch;color:var(--muted);font-size:.86rem;line-height:1.5}.btec-list-header .primary-action,.btec-back-header .secondary-action{flex:0 0 auto}.btec-back-header{flex-direction:column}.btec-form-wide{width:100%;max-width:none}.btec-form{display:grid;gap:12px}.btec-guide-form{margin:14px 0;padding:16px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.btec-form-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.btec-field{display:grid;gap:6px;color:var(--muted);font-size:.78rem;font-weight:700}.btec-field input,.btec-field select,.btec-field textarea{width:100%;border:1px solid var(--line);border-radius:8px;padding:10px 11px;color:var(--ink);background:var(--surface-soft);font:inherit;font-weight:500}.btec-field textarea{resize:vertical;min-height:92px}.btec-field input:focus,.btec-field select:focus,.btec-field textarea:focus{outline:2px solid var(--focus-ring);outline-offset:1px;border-color:var(--brand)}.btec-field small{color:var(--muted);font-size:.72rem;font-weight:500}.btec-file-picker{min-height:44px;display:flex;align-items:center;gap:10px;border:1px solid #d6e0e7;border-radius:8px;padding:6px;color:var(--ink);background:#fff;cursor:pointer}.btec-file-picker:hover{border-color:#005f866b;background:#f8fbfd}.btec-file-picker:focus-within{outline:2px solid var(--focus-ring);outline-offset:1px;border-color:var(--brand)}.btec-file-picker input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.btec-file-picker-action{flex:0 0 auto;min-height:32px;display:inline-flex;align-items:center;gap:7px;border:1px solid #01557e;border-radius:7px;padding:0 12px;color:#fff;background:#01557e;font-size:.78rem;font-weight:800}.btec-file-picker-action svg{color:currentColor;stroke-width:2.2}.btec-file-picker:hover .btec-file-picker-action{border-color:#005f86;background:#005f86}.btec-file-picker-name{min-width:0;overflow:hidden;color:#374151;font-size:.82rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.btec-file-picker-name.selected{color:#0f2f44}.btec-settings-form{max-width:980px}.btec-settings-card{display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:14px;padding-bottom:14px;border-bottom:1px solid var(--line)}.btec-settings-card h3,.btec-recipient-panel h3{margin:0 0 4px;color:var(--brand-dark);font-size:1rem}.btec-settings-card p,.btec-recipient-panel p{margin:0;color:var(--muted);font-size:.82rem;line-height:1.45}.btec-settings-icon{width:46px;height:46px;display:grid;place-items:center;border:1px solid var(--line);border-radius:8px;color:var(--brand);background:var(--surface-soft)}.btec-toggle-row{display:inline-flex;align-items:center;gap:8px;color:var(--brand-dark);font-size:.84rem;font-weight:700;white-space:nowrap}.btec-toggle-row input{width:18px;height:18px;accent-color:var(--brand)}.btec-recipient-panel{display:grid;gap:12px;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--surface-soft)}.btec-recipient-search{min-height:42px;display:flex;align-items:center;gap:9px;border:1px solid var(--line);border-radius:8px;padding:0 11px;color:var(--muted);background:var(--surface)}.btec-recipient-search input{min-width:0;flex:1;border:0;outline:0;color:var(--ink);background:transparent;font:inherit}.btec-recipient-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.btec-recipient-actions button{min-height:32px;border:1px solid var(--line);border-radius:7px;padding:0 10px;color:var(--brand);background:var(--surface);font:inherit;font-size:.76rem;font-weight:700}.btec-recipient-actions button:disabled{cursor:not-allowed;opacity:.5}.btec-recipient-actions span{margin-left:auto;color:var(--muted);font-size:.76rem;font-weight:700}.btec-recipient-list{max-height:260px;overflow-y:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding-right:3px}.btec-recipient-list>label{min-width:0;display:grid;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:9px;min-height:48px;border:1px solid var(--line);border-radius:8px;padding:7px 10px;color:var(--ink);background:var(--surface);cursor:pointer}.btec-recipient-list>label:hover,.btec-recipient-list>label.selected{border-color:#005f8673;background:#005f860d}.btec-recipient-list input{width:17px;height:17px;accent-color:var(--brand)}.btec-recipient-list span{min-width:0;display:grid;gap:2px}.btec-recipient-list strong,.btec-recipient-list small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btec-recipient-list strong{color:var(--brand-dark);font-size:.82rem}.btec-recipient-list small{color:var(--muted);font-size:.72rem}.btec-recipient-required{margin:-2px 0 0;color:var(--danger);font-size:.78rem;font-weight:700}@media(max-width:720px){.btec-recipient-list{grid-template-columns:1fr}}.btec-grade-chip{display:inline-flex;align-items:center;gap:4px;margin:0 6px 4px 0;border:1px solid var(--line);border-radius:999px;padding:1px 9px;color:var(--brand-dark);background:var(--surface);font-size:.74rem;font-weight:600}.btec-final-grades-table th:last-child,.btec-final-grades-table td:last-child{width:150px;text-align:right}.btec-final-grades-table td:last-child .secondary-action{margin-left:auto}.btec-final-grade-details-row>td{padding:0!important;background:var(--surface-soft)}.btec-final-grade-decision{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding:10px 14px}.btec-final-grade-decision strong{color:var(--brand-dark);font-size:.82rem}.btec-final-grade-decision span{margin:0!important;color:var(--muted);font-size:.72rem;font-weight:700}.btec-final-grade-criteria{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:0;padding:5px 14px 12px}.btec-final-grade-criteria>div{display:grid;grid-template-columns:minmax(58px,auto) auto;align-items:center;gap:3px 10px;border-bottom:1px solid var(--line);padding:8px 6px}.btec-final-grade-criteria strong{color:var(--brand-dark);font-size:.78rem}.btec-final-grade-criteria span{margin:0!important;color:var(--text)!important;font-size:.76rem!important;font-weight:800;text-align:right}.btec-final-grade-criteria small{grid-column:1 / -1;color:var(--muted);font-size:.68rem}@media(max-width:720px){.btec-final-grades-table th:last-child,.btec-final-grades-table td:last-child{width:auto}.btec-final-grade-decision{align-items:flex-start;flex-direction:column}.btec-final-grade-criteria{grid-template-columns:1fr}}.btec-table tr.btec-row-active>td{background:#005f860f}.btec-local-tabs,.settings-tabs.btec-settings-local-tabs{display:inline-flex;flex-wrap:wrap;gap:4px;width:fit-content;max-width:100%;margin-top:4px;padding:4px;border:1px solid var(--line);border-radius:10px;background:var(--surface-muted)}.btec-local-tabs>button,.settings-tabs.btec-settings-local-tabs>button{min-height:38px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:7px;padding:0 14px;color:var(--muted);background:transparent;font:inherit;font-size:.82rem;font-weight:800;line-height:1;cursor:pointer;transition:color .16s ease,background .16s ease,box-shadow .16s ease}.btec-local-tabs>button:hover,.settings-tabs.btec-settings-local-tabs>button:hover{color:var(--brand);background:var(--surface)}.btec-local-tabs>button.active,.settings-tabs.btec-settings-local-tabs>button.active{color:#fff;background:var(--brand);box-shadow:0 1px 2px #00304424}.btec-settings-email-form{display:grid;gap:14px}.btec-scenario-email-tab{display:grid;gap:28px}.btec-scenario-email-tab>.btec-settings-email-form:not(:last-child){padding-bottom:24px;border-bottom:1px solid var(--line)}.btec-settings-section-desc{margin:0;color:var(--muted);font-size:.84rem;line-height:1.5}.btec-email-template-block,.btec-late-notice-block{display:grid;gap:13px;border:1px solid var(--line);border-radius:10px;padding:16px;background:var(--surface)}.btec-warning-block .btec-email-template-block{border-color:#d977063d;background:#fffbeb}.btec-late-notice-block{border-color:#b91c1c2e;background:snow}.btec-template-header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-bottom:10px;border-bottom:1px solid var(--line)}.btec-template-header h4{margin:0;color:var(--brand-dark);font-size:.98rem}.btec-template-edit-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:10px;border-bottom:1px solid var(--line)}.btec-template-edit-head strong{color:var(--brand-dark);font-size:.94rem}.btec-sender-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:38px;border:1px solid var(--line);border-radius:8px;padding:0 11px;background:var(--surface-soft);color:var(--muted);font-size:.8rem}.btec-sender-row strong{color:var(--brand-dark);font-size:.82rem}.btec-config-status{display:grid;gap:8px;margin:0;padding:0;list-style:none}.btec-config-status li{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:36px;border:1px solid var(--line);border-radius:8px;padding:0 11px;background:var(--surface-soft);font-size:.8rem}.btec-config-status li span{color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.btec-config-status li strong{color:var(--brand-dark);font-size:.8rem}.btec-run-report{width:100%;border-collapse:collapse;font-size:.78rem}.btec-run-report th,.btec-run-report td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--line);vertical-align:top}.btec-run-report th{color:var(--muted);font-weight:800}.btec-success-banner{margin:0;padding:10px 12px;border-radius:8px;font-size:.8rem;background:#16a34a1a;color:#15803d;border:1px solid rgba(22,163,74,.24)}.btec-error-banner{margin:0;padding:10px 12px;border-radius:8px;font-size:.8rem;background:#dc262614;color:#b91c1c;border:1px solid rgba(220,38,38,.22)}.btec-package-wizard-page{display:grid;gap:18px;min-width:0}.btec-source-back{justify-self:start;min-height:34px;display:inline-flex;align-items:center;gap:8px;border:0;padding:0;color:var(--ink);background:transparent;font-size:.8rem;font-weight:800}.btec-source-back:hover{color:var(--brand)}.package-stepper{width:min(100%,960px);margin:0 auto;grid-template-columns:repeat(4,minmax(0,1fr))}.btec-wizard-card{width:min(100%,820px);justify-self:center;padding:clamp(20px,3vw,34px)}.btec-wizard-card.wide{width:min(100%,1180px)}.package-step{display:grid;gap:18px}.step-title h3{margin:0 0 7px;color:var(--ink);font-size:1.22rem;letter-spacing:0}.step-title p{margin:0;color:var(--muted);line-height:1.55}.step-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.source-mode-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:5px;border:1px solid var(--line);border-radius:10px;background:var(--surface-soft)}.source-mode-row button{min-height:40px;border:0;border-radius:8px;color:var(--muted);background:transparent;font-size:.8rem;font-weight:800}.source-mode-row button.active{color:#fff;background:var(--brand-deep)}.space-block{display:grid;gap:9px}.package-section-label{display:inline-flex;align-items:center;gap:7px;color:var(--brand-dark);font-size:.86rem;font-weight:800}.package-section-label span{color:#d92d20}.unit-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.unit-choice{min-height:82px;display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto;gap:4px 12px;border:1px solid var(--line);border-radius:10px;padding:13px;color:var(--ink);background:var(--surface);text-align:left}.unit-choice:hover{border-color:#005f8652;background:var(--surface-muted)}.unit-choice.active{border-color:#2b7fff;background:#2b7fff14;box-shadow:inset 0 0 0 1px #2b7fff}.unit-choice span{grid-row:1 / 3;align-self:start;border-radius:999px;padding:5px 9px;color:var(--brand-dark);background:var(--soft);font-size:.76rem;font-weight:900;white-space:nowrap}.unit-choice.active span{color:#fff;background:#2b7fff}.unit-choice strong{min-width:0;color:var(--ink);font-size:.82rem;line-height:1.28}.unit-choice small{color:var(--muted);font-size:.72rem;font-weight:700}.brief-dropzone{min-height:185px;display:grid;place-items:center;gap:7px;border:2px dashed var(--line);border-radius:12px;padding:28px;color:#9aa8b4;background:var(--surface-muted);text-align:center}.brief-dropzone:hover{border-color:#2b7fff;background:#2b7fff0f}.brief-dropzone strong{color:var(--muted);font-size:.9rem}.brief-dropzone span{color:#8a99a8;font-size:.78rem;font-weight:700}.attachment-dropzone{min-height:54px;display:flex;align-items:center;justify-content:center;gap:10px;border:1px dashed var(--line);border-radius:10px;padding:0 14px;color:var(--muted);background:var(--surface);font-size:.84rem;font-weight:700}.attachment-list{display:flex;flex-wrap:wrap;gap:7px}.attachment-list span{border:1px solid var(--line);border-radius:999px;padding:6px 10px;color:var(--brand);background:var(--soft);font-size:.72rem;font-weight:800}.attachment-zone{display:grid;gap:8px}.attachment-picker{min-height:52px;display:flex;align-items:center;gap:10px;border:1px dashed var(--line);border-radius:10px;padding:0 14px;color:var(--muted);background:var(--surface);font-size:.84rem;font-weight:700;cursor:pointer}.attachment-picker:hover{border-color:var(--brand);background:var(--soft);color:var(--brand)}.attachment-row{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--line);border-radius:9px;padding:8px 10px;background:var(--surface-muted);color:var(--muted);font-size:.8rem;font-weight:700}.attachment-row.ready{background:#ecfdf5;border-color:#bbf7d0;color:#047857}.attachment-row.error{background:#fef2f2;border-color:#fecaca;color:#b91c1c}.attachment-row span{min-width:0;display:flex;align-items:center;gap:7px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-row small{color:inherit;opacity:.72;font-size:.72rem;font-weight:800}.attachment-row button{width:28px;height:28px;border:0;border-radius:7px;display:grid;place-items:center;color:inherit;background:transparent;cursor:pointer}.attachment-row button:hover{background:#0000000f}.administration-module{display:grid;grid-template-columns:260px minmax(0,1fr);gap:22px;align-items:start}.administration-menu{position:sticky;top:94px;display:grid;gap:16px;border:1px solid var(--line);border-radius:12px;padding:16px;background:var(--surface);box-shadow:0 10px 24px var(--shadow-soft)}.administration-menu-brand{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--line);padding-bottom:14px}.administration-menu-brand>span{width:44px;height:44px;display:grid;place-items:center;border-radius:10px;color:var(--brand);background:var(--soft)}.administration-menu-brand strong{display:block;color:var(--brand-dark)}.administration-menu-brand small{color:var(--muted);font-size:.76rem}.administration-menu nav{display:grid;gap:6px}.administration-menu nav button{width:100%;min-height:42px;display:flex;align-items:center;gap:10px;border:0;border-radius:8px;padding:0 11px;color:var(--muted);background:transparent;text-align:left;font-weight:800}.administration-menu nav button:hover,.administration-menu nav button.active{color:#fff;background:var(--brand-deep)}.administration-content{min-width:0;display:grid;gap:18px}.administration-header{border-bottom:1px solid var(--line);padding-bottom:18px}.administration-header h2{margin:6px 0 7px;color:var(--brand-dark);font-size:clamp(1.8rem,3vw,2.7rem);line-height:1;letter-spacing:0}.administration-header p,.administration-note{margin:0;color:var(--muted);line-height:1.55}.administration-dashboard{display:grid;gap:18px}.administration-document-panel{display:grid;gap:14px;border:1px solid var(--line);border-radius:12px;padding:18px;background:var(--surface);box-shadow:0 10px 24px var(--shadow-soft)}.administration-document-panel header{border-bottom:1px solid var(--line);padding-bottom:12px}.administration-document-panel h3{margin:4px 0 6px;color:var(--brand-dark);font-size:1.12rem}.administration-search-row{height:44px;display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:8px;padding:0 12px;color:var(--brand);background:var(--surface-muted)}.administration-search-row input{min-width:0;flex:1;height:42px;border:0;outline:0;color:var(--ink);background:transparent;font:inherit;font-weight:800}.administration-table-wrap{overflow-x:auto}.administration-table{width:100%;min-width:760px;border-collapse:collapse}.administration-table th{padding:10px 11px;color:var(--muted);background:var(--table-head);text-align:left;font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.administration-table td{border-top:1px solid var(--line);padding:12px 11px;color:var(--muted);font-size:.82rem}.administration-table td strong{color:var(--brand-dark)}.phone-document-workspace{display:grid;gap:18px}.phone-document-panel{display:grid;gap:18px;border:1px solid var(--line);border-radius:10px;padding:22px 26px 28px;background:var(--surface);box-shadow:0 10px 24px var(--shadow-soft)}.phone-document-panel header{border-bottom:1px solid var(--line);padding-bottom:18px}.phone-document-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px}.phone-document-panel h3{margin:7px 0 5px;color:var(--ink);font-size:1.45rem;line-height:1.1}.phone-document-panel p{margin:0;color:var(--muted);font-size:1.05rem}.phone-generation-line{display:block;margin-top:3px;color:var(--muted);font-size:.82rem;font-weight:800}.phone-document-actions{display:grid;grid-template-columns:minmax(240px,360px) auto auto auto;align-items:center;justify-content:flex-end;gap:8px}.phone-header-search{min-width:0;min-height:40px;display:flex;align-items:center;gap:9px;border:1px solid var(--input-border);border-radius:8px;padding:0 12px;color:var(--brand);background:var(--input-bg)}.phone-header-search input{min-width:0;flex:1;height:38px;border:0;outline:0;color:var(--ink);background:transparent;font:inherit;font-size:.82rem;font-weight:850}.phone-header-search input::placeholder{color:var(--muted);font-weight:800}.phone-document-actions span{color:var(--muted);font-size:.82rem;font-weight:900;white-space:nowrap}.phone-document-actions button{width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--line);border-radius:8px;padding:0;color:var(--brand-dark);background:var(--surface);font:inherit;font-size:.82rem;font-weight:900}.phone-document-actions button:hover:not(:disabled){border-color:#005f8659;color:#fff;background:var(--brand-deep)}.phone-document-actions button:disabled{opacity:.48;cursor:not-allowed}.phone-table-wrap{overflow-x:auto}.phone-table{width:100%;min-width:1040px;border-collapse:collapse}.phone-table th{padding:13px 18px;color:var(--ink);background:var(--table-head);text-align:left;font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.phone-table td{border-bottom:1px solid var(--line);padding:15px 18px;color:var(--muted);font-size:.88rem;font-weight:800;vertical-align:middle}.phone-table td strong{color:var(--ink)}.phone-class-chip{display:inline-flex;min-width:54px;min-height:30px;align-items:center;justify-content:center;border:1px solid rgba(0,95,134,.18);border-radius:7px;padding:0 10px;color:var(--brand-dark);background:var(--soft);font-weight:900}.phone-pagination{display:flex;align-items:center;justify-content:flex-end;gap:10px;border-top:1px solid var(--line);padding-top:14px}.phone-pagination span{color:var(--muted);font-size:.8rem;font-weight:900}.phone-pagination button{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--line);border-radius:8px;color:var(--brand);background:var(--surface)}.phone-pagination button:hover:not(:disabled){border-color:#005f8659;color:#fff;background:var(--brand-deep)}.phone-pagination button:disabled{opacity:.45;cursor:not-allowed}@media(max-width:900px){.phone-document-head{align-items:flex-start;flex-direction:column}.phone-document-actions{width:100%;grid-template-columns:minmax(0,1fr) auto auto;justify-content:stretch}.phone-document-actions span{grid-column:1 / -1}}@media(max-width:560px){.phone-document-panel{padding:16px}.phone-document-actions{grid-template-columns:1fr auto auto}.phone-pagination{justify-content:center}}.administration-staff-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px}.administration-check-card{display:flex;align-items:flex-start;gap:10px;border:1px solid var(--line);border-radius:8px;padding:12px;background:var(--surface-muted)}.administration-check-card input{margin-top:3px;accent-color:var(--brand-deep)}.administration-check-card span{min-width:0;display:grid;gap:3px}.administration-check-card strong{color:var(--brand-dark);font-size:.86rem}.administration-check-card small{color:var(--muted);font-size:.72rem;overflow-wrap:anywhere}.administration-view-switch{display:inline-flex;width:fit-content;gap:4px;border:1px solid var(--line);border-radius:8px;padding:4px;background:var(--surface)}.administration-view-switch button{min-height:38px;display:inline-flex;align-items:center;gap:8px;border:0;border-radius:6px;padding:0 13px;color:var(--muted);background:transparent;font-weight:900}.administration-view-switch button.active{color:#fff;background:var(--brand-deep)}.minutes-workspace{display:grid;gap:16px}.minutes-archive-layout{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:16px;align-items:start}.minutes-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.minutes-form-grid label,.minutes-text-grid label,.minutes-calendar-panel label{min-width:0;display:grid;gap:7px;color:var(--muted);font-size:.78rem;font-weight:800}.minutes-form-grid input,.minutes-text-grid textarea,.minutes-calendar-panel input,.minutes-staff-card>input{width:100%;border:1px solid var(--input-border);border-radius:8px;color:var(--ink);background:var(--input-bg);font:inherit;font-weight:800}.minutes-form-grid input,.minutes-calendar-panel input,.minutes-staff-card>input{min-height:40px;padding:0 11px}.minutes-text-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.minutes-text-grid textarea{min-height:190px;resize:vertical;padding:11px;line-height:1.45}.minutes-action-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:12px}.minutes-action-primary,.minutes-action-secondary{min-height:52px;display:inline-flex;align-items:center;justify-content:center;gap:12px;border-radius:9px;padding:0 22px;font:inherit;font-size:.92rem;font-weight:900;line-height:1;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}.minutes-action-primary{min-width:220px;border:1px solid var(--brand-deep);color:#fff;background:var(--brand-deep)}.minutes-action-primary:hover:not(:disabled){background:#004a6d;transform:translateY(-1px)}.minutes-action-secondary{min-width:230px;border:1px solid var(--brand-deep);color:var(--brand-deep);background:var(--surface)}.minutes-action-secondary:hover:not(:disabled){background:#005f860f;transform:translateY(-1px)}.minutes-action-primary:disabled,.minutes-action-secondary:disabled{opacity:.55;cursor:not-allowed;transform:none}.minutes-staff-section{display:grid;gap:12px}.minutes-staff-section h4{margin:4px 0 0;color:var(--brand-dark);font-size:1rem}.minutes-staff-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.minutes-staff-card{display:grid;grid-template-columns:minmax(0,1fr) 96px;gap:8px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:10px;background:var(--surface-muted)}.minutes-check-row{min-width:0;display:flex;align-items:flex-start;gap:9px;cursor:pointer}.minutes-check-row input{flex:0 0 auto;margin-top:4px;accent-color:var(--brand-deep)}.minutes-check-row span{min-width:0;display:grid;gap:3px}.minutes-check-row strong{color:var(--brand-dark);font-size:.82rem;line-height:1.25;overflow-wrap:anywhere}.minutes-check-row small{color:var(--muted);font-size:.68rem;line-height:1.25;overflow-wrap:anywhere}.minutes-staff-time{display:grid;gap:4px;min-width:0;color:var(--muted);font-size:.66rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.minutes-staff-time input{width:100%;min-height:40px;border:1px solid var(--input-border);border-radius:8px;padding:0 9px;color:var(--ink);background:var(--input-bg);font:inherit;font-weight:800}.minutes-staff-time input:disabled{opacity:.55}.minutes-save-notice{margin:-6px 0 0;color:#027a48;font-size:.85rem;font-weight:900}.minutes-ai-error{margin:-6px 0 0;color:#b42318;font-size:.85rem;font-weight:900}.minutes-ai-modal{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:24px;background:#06121c85}.minutes-ai-modal article{width:min(920px,100%);max-height:min(820px,92vh);overflow:auto;display:grid;gap:14px;border:1px solid var(--line);border-radius:10px;padding:18px;background:var(--surface);box-shadow:0 24px 60px #0000003d}.minutes-ai-modal header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding-bottom:12px}.minutes-ai-modal header button{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--line);border-radius:8px;color:var(--muted);background:var(--surface)}.minutes-ai-modal h3{margin:4px 0 5px;color:var(--brand-dark);font-size:1.1rem}.minutes-ai-modal p{margin:0;color:var(--muted)}.minutes-ai-modal label{display:grid;gap:7px;color:var(--muted);font-size:.78rem;font-weight:800}.minutes-ai-modal textarea{width:100%;min-height:180px;resize:vertical;border:1px solid var(--input-border);border-radius:8px;padding:11px;color:var(--ink);background:var(--input-bg);font:inherit;font-weight:800;line-height:1.45}@media(max-width:1180px){.minutes-staff-grid{grid-template-columns:repeat(2,minmax(240px,1fr))}}@media(max-width:760px){.minutes-action-row{flex-direction:column;align-items:stretch}.minutes-action-primary,.minutes-action-secondary{width:100%;min-width:0}.minutes-staff-grid,.minutes-form-grid,.minutes-archive-layout{grid-template-columns:1fr}}.minutes-calendar-panel{position:sticky;top:18px}.minutes-calendar-list{display:grid;gap:8px}.minutes-calendar-list button{display:grid;gap:5px;border:1px solid var(--line);border-radius:8px;padding:12px;color:var(--muted);background:var(--surface-muted);text-align:left}.minutes-calendar-list button:hover{border-color:#005f8647;background:var(--soft)}.minutes-calendar-list strong{color:var(--brand-dark);font-size:.84rem}.minutes-calendar-list span,.minutes-calendar-list p{margin:0;color:var(--muted);font-size:.78rem}.minutes-latest-block{display:grid;gap:5px;border-top:1px solid var(--line);margin-top:8px;padding-top:14px}.minutes-latest-block h4{margin:0;color:var(--brand-dark);font-size:.96rem}.minutes-latest-block p{margin:0;color:var(--muted);font-size:.8rem;line-height:1.45}.minutes-word-list{display:grid;gap:10px}.minutes-word-list article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:11px;background:var(--surface-muted)}.minutes-word-list article.active{border-color:#005f8661;background:var(--soft)}.minutes-word-list article>button:first-child{min-width:0;display:flex;align-items:center;gap:12px;border:0;padding:0;color:var(--muted);background:transparent;text-align:left}.minutes-word-list article svg{flex:0 0 auto;color:var(--brand)}.minutes-word-list article span{min-width:0;display:grid;gap:4px}.minutes-word-list article strong{overflow:hidden;color:var(--brand-dark);font-size:.88rem;text-overflow:ellipsis;white-space:nowrap}.minutes-word-list article small{color:var(--muted);font-size:.72rem;font-weight:800}.minutes-word-actions{display:inline-flex;align-items:center;gap:6px}.minutes-word-actions button{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--line);border-radius:8px;color:var(--brand);background:var(--surface)}.minutes-word-actions button:hover{border-color:#005f8659;color:#fff;background:var(--brand-deep)}.minute-word-preview{overflow-x:auto;padding-top:6px}.minute-word-page{width:min(100%,820px);min-height:520px;margin:0 auto;border:1px solid var(--line);border-radius:4px;padding:34px 42px;background:#fff;box-shadow:0 16px 38px var(--shadow-soft);color:#1f2937}[data-theme=dark] .minute-word-page{background:#fff;color:#1f2937}.minute-word-heading{display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:8px;align-items:center;border-bottom:1px solid #d1d5db;padding-bottom:12px;margin-bottom:16px}.minute-word-heading strong{color:#0f3550;overflow-wrap:anywhere}.minute-word-heading span{color:#545964;font-size:.78rem;font-weight:800}.minute-word-page h4{margin:18px 0 8px;color:#0f3550}.minute-word-page p{color:#374151;line-height:1.55;white-space:pre-wrap}.minute-word-page table{width:100%;border-collapse:collapse;margin:8px 0 12px}.minute-word-page td{border:1px solid #d1d5db;padding:7px 9px;font-size:.78rem}.transcript-workspace{display:grid;gap:18px}.transcript-form-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.transcript-form-head .minutes-action-primary{min-width:150px;min-height:42px;padding:0 14px;font-size:.78rem}.transcript-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.transcript-info-grid label,.transcript-subject-row label,.transcript-subject-name{min-width:0;display:grid;gap:7px;color:var(--muted);font-size:.66rem;font-weight:900;text-transform:uppercase;letter-spacing:.02em}.transcript-info-grid input,.transcript-subject-row input,.transcript-subject-row select{width:100%;min-height:40px;border:1px solid var(--input-border);border-radius:8px;padding:0 11px;color:var(--ink);background:var(--input-bg);font:inherit;font-size:.78rem;font-weight:850;text-transform:none;letter-spacing:0}.transcript-subject-name strong{min-height:40px;display:flex;align-items:center;border:1px solid var(--input-border);border-radius:8px;padding:0 11px;color:var(--ink);background:var(--surface);font-size:.82rem;line-height:1.25;text-transform:none;letter-spacing:0;overflow-wrap:anywhere}.transcript-year-picker{display:grid;gap:8px}.transcript-year-picker>span{color:var(--brand);font-size:.68rem;font-weight:950;text-transform:uppercase;letter-spacing:.12em}.transcript-year-picker>div{display:flex;flex-wrap:wrap;gap:8px}.transcript-year-picker label{min-height:34px;display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:7px;padding:0 12px;color:var(--muted);background:var(--surface-muted);font-size:.74rem;font-weight:900}.transcript-year-picker label.active{border-color:#005f8666;color:var(--brand-dark);background:var(--soft)}.transcript-year-picker input{accent-color:var(--brand-deep)}.transcript-subject-editor{display:grid;gap:12px}.transcript-grade-editor{display:grid;gap:9px;border-top:1px solid var(--line);padding-top:12px}.transcript-grade-editor>header{display:flex;align-items:center;justify-content:space-between;gap:12px;border:0;padding:0}.transcript-grade-editor>header strong{color:var(--brand-dark);font-size:.9rem}.transcript-grade-editor>header .secondary-action{min-height:34px;padding:0 12px;font-size:.74rem}.transcript-subject-row{display:grid;grid-template-columns:minmax(380px,1fr) 88px 88px 82px;gap:8px;align-items:end;border:1px solid var(--line);border-radius:9px;padding:9px;background:var(--surface-muted)}.transcript-preview-wrap{overflow-x:auto}.transcript-preview-actions{display:flex;align-items:center;justify-content:space-between;gap:14px}.transcript-preview-icon-actions{display:flex;align-items:center;gap:8px}.transcript-preview-icon-button{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line-strong);border-radius:8px;color:var(--brand);background:var(--surface);transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}.transcript-preview-icon-button:hover:not(:disabled){border-color:var(--brand);color:#fff;background:var(--brand);transform:translateY(-1px)}.transcript-preview-icon-button:disabled{opacity:.55;cursor:wait}.transcript-page{width:min(100%,794px);min-height:1123px;margin:0 auto;padding:42px 46px 30px;border:1px solid #cfd6df;background:#fff;color:#111827;box-shadow:0 18px 44px var(--shadow-soft);font-family:Arial,Helvetica,sans-serif}[data-theme=dark] .transcript-page{background:#fff;color:#111827}.transcript-top{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;margin:-8px 0 14px;min-height:108px}.transcript-logo{display:flex;justify-content:flex-start}.transcript-logo img{width:112px;height:112px;object-fit:contain;border-radius:999px}.transcript-contact-list{display:grid;gap:5px;padding-top:4px;color:#9ec5dc;font-size:.68rem;font-weight:800;line-height:1.1}.transcript-contact-list span{display:flex;align-items:center;gap:8px;white-space:nowrap}.transcript-contact-list svg{flex:0 0 auto;width:16px;height:16px;border:1.3px solid currentColor;border-radius:999px;padding:3px;color:#9ec5dc}.transcript-page h2{margin:0 0 17px;color:#73777d;text-align:center;font-size:.92rem;font-weight:900;letter-spacing:0}.transcript-student-meta{display:grid;grid-template-columns:1.15fr .9fr;gap:32px;margin-bottom:18px}.transcript-student-meta p,.transcript-footer-grid p{margin:0 0 6px;color:#111827;font-size:.72rem;line-height:1.2}.transcript-course-table{width:100%;border-collapse:collapse;table-layout:fixed}.transcript-course-table th,.transcript-course-table td{height:18px;border:1px solid #111827;padding:2px 6px;color:#111827;font-size:.67rem;line-height:1.05}.transcript-course-table th{border:1px solid #111827;padding:2px 6px;color:#111827;font-size:.68rem;line-height:1.05}.transcript-course-table th{background:#fff;text-align:center;font-weight:900}.transcript-course-table .transcript-grade-heading th{height:19px;padding:2px 6px}.transcript-course-table .transcript-grade-subhead th{height:17px;padding:2px 6px;font-size:.64rem}.transcript-course-table th:first-child,.transcript-course-table td:first-child{width:82%;text-align:left}.transcript-course-table th:first-child{width:82%;text-align:center}.transcript-course-table th:nth-child(2),.transcript-course-table td:nth-child(2),.transcript-course-table th:nth-child(3),.transcript-course-table td:nth-child(3),.transcript-course-table th:nth-child(4),.transcript-course-table td:nth-child(4){width:6%;text-align:center}.transcript-course-table tbody tr:not(.transcript-grade-heading):not(.transcript-grade-subhead):nth-child(odd) td{background:#d9e3f2}.transcript-footer-grid{position:relative;display:grid;grid-template-columns:1.12fr .72fr;gap:54px;margin-top:22px;min-height:238px}.transcript-footer-left{position:relative;z-index:1}.transcript-sign{display:grid;grid-template-columns:max-content 220px;align-items:center;gap:0;margin:12px 0 7px;color:#111827;font-size:.72rem;font-weight:900}.transcript-sign span{position:relative;width:220px;min-height:82px;margin-left:-2px}.transcript-sign img{position:absolute;left:-4px;top:50%;display:block;max-width:230px;max-height:130px;object-fit:contain;transform:translateY(-50%)}.transcript-stamp{position:absolute;left:49%;top:82px;z-index:0;width:180px;max-height:180px;object-fit:contain;transform:translate(-50%)}.transcript-pearson{margin-top:16px!important;color:#111827!important}.transcript-grade-scale{position:relative;z-index:1;display:grid;align-content:start;gap:4px;color:#111827;font-size:.76rem;line-height:1.2;padding-top:4px}.transcript-grade-scale strong{color:#111827}@media(max-width:980px){.transcript-info-grid,.transcript-student-meta,.transcript-footer-grid{grid-template-columns:1fr}.transcript-subject-row{grid-template-columns:minmax(260px,1fr) repeat(3,minmax(76px,.25fr))}.transcript-course-grid{grid-template-columns:1fr}}@media(max-width:680px){.transcript-form-head,.transcript-preview-actions{flex-direction:column;align-items:stretch}.transcript-preview-icon-actions{justify-content:flex-end}.transcript-subject-row{grid-template-columns:1fr}.transcript-page{min-width:720px;padding:36px 34px}.transcript-top{align-items:flex-start}}.suspensions-workspace{display:grid;gap:18px}.suspension-form-panel{overflow:visible}.suspension-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.suspension-form-grid label{position:relative;min-width:0;display:grid;gap:7px;color:var(--muted);font-size:.72rem;font-weight:900}.suspension-form-grid input,.suspension-form-grid select,.suspension-form-grid textarea{width:100%;min-height:42px;border:1px solid var(--input-border);border-radius:8px;padding:0 12px;color:var(--ink);background:var(--input-bg);font:inherit;font-size:.82rem;font-weight:850}.suspension-form-grid input[readonly]{color:var(--muted);background:var(--surface-muted)}.suspension-student-field{grid-column:span 2;z-index:4}.suspension-guardian-email-field{grid-column:span 2}.suspension-email-chips{min-height:42px;display:flex;flex-wrap:wrap;align-items:center;gap:7px;border:1px solid var(--input-border);border-radius:8px;padding:7px 9px;background:var(--surface-muted)}.suspension-email-chips span{max-width:100%;overflow-wrap:anywhere;border:1px solid var(--line);border-radius:999px;padding:5px 9px;color:var(--ink);background:var(--surface);font-size:.72rem;font-weight:850;line-height:1.2}.suspension-email-chips em{color:var(--muted);font-style:normal;font-size:.82rem;font-weight:850}.suspension-incident-field{grid-column:1 / -1}.suspension-incident-field textarea{min-height:118px;resize:vertical;padding:12px;line-height:1.45}.suspension-student-results{position:static;display:grid;gap:4px;border:1px solid var(--line);border-radius:8px;padding:6px;background:var(--surface);box-shadow:0 12px 24px var(--shadow-soft)}.suspension-student-results button{display:flex;align-items:center;justify-content:space-between;gap:10px;border:0;border-radius:7px;padding:9px 10px;color:var(--ink);background:transparent;text-align:left;font:inherit;font-size:.8rem;font-weight:850}.suspension-student-results button:hover{background:var(--soft)}.suspension-student-results span{color:var(--muted);font-size:.72rem;font-weight:900}.suspension-email-preview{max-height:260px;overflow:auto;border:1px solid var(--line);border-radius:10px;margin:2px 0 0;padding:14px;color:var(--muted);background:var(--surface-muted);font:inherit;font-size:.82rem;font-weight:800;line-height:1.5;white-space:pre-wrap}.suspension-table-email{display:block;margin-top:3px;color:var(--muted);font-size:.68rem;font-weight:800}.suspension-alert{width:max-content;display:inline-flex;align-items:center;gap:7px;border:1px solid transparent;border-radius:999px;padding:6px 10px;font-size:.72rem;font-weight:900;white-space:nowrap}.suspension-alert.warning{color:#8a5a00;border-color:#f3c251;background:#fff7df}.suspension-alert.high{color:#b42318;border-color:#f1a29a;background:#fff1f0}.suspension-history-actions{display:flex;align-items:center;gap:8px}.suspension-history-button{width:32px;height:32px;display:grid;place-items:center;border:1px solid var(--line);border-radius:8px;color:var(--brand);background:var(--surface)}.suspension-history-button:hover{color:#fff;background:var(--brand-deep)}.suspension-history-modal{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:28px}.suspension-history-modal-backdrop{position:absolute;inset:0;background:#03111c9e;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.suspension-report-modal{position:relative;z-index:1;width:min(100%,980px);max-height:min(86vh,900px);overflow:auto;margin:0}.suspension-modal-close{position:absolute;top:14px;right:14px;width:34px;height:34px;display:grid;place-items:center;border:1px solid #d6dce3;border-radius:8px;color:#111;background:#fff}.suspension-modal-close:hover{color:#fff;background:#005f86}.suspension-history-panel{display:grid;gap:8px;border-top:1px solid var(--line);margin-top:10px;padding-top:14px}.suspension-history-panel h4{margin:0;color:var(--brand-dark)}.suspension-history-panel article{display:grid;gap:4px;border:1px solid var(--line);border-radius:8px;padding:11px;background:var(--surface-muted)}.suspension-history-panel strong{color:var(--brand-dark);font-size:.82rem}.suspension-history-panel span,.suspension-history-panel p{margin:0;color:var(--muted);font-size:.78rem;line-height:1.45}.suspension-report-sheet{margin-top:18px;border:1px solid #d6dce3;border-radius:4px;padding:34px 34px 38px;color:#000;background:#fff;box-shadow:0 12px 28px #0f233414}.suspension-report-header{display:grid;grid-template-columns:118px minmax(0,1fr);align-items:center;gap:30px;border-bottom:1px solid #111;padding-bottom:10px}.suspension-report-header img{width:96px;height:96px;object-fit:contain}.suspension-report-header div{text-align:center}.suspension-report-header h4{margin:0;color:#000;font-size:clamp(1.75rem,3vw,2.55rem);font-weight:400;line-height:1.15}.suspension-report-header p{margin:22px 0 0;color:#000;font-size:1rem;font-weight:400}.suspension-report-sheet>h3{margin:22px 0 0;color:#000;text-align:center;font-size:1.65rem;line-height:1.1}.suspension-report-meta{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-top:6px;color:#000;font-size:1rem}.suspension-report-meta>div{display:grid;gap:2px;min-width:180px;text-align:right}.suspension-report-meta strong{color:#000;font-weight:800}.suspension-report-meta span{color:#000}.suspension-report-table-wrap{overflow-x:auto;margin-top:96px}.suspension-report-table{width:100%;min-width:760px;border-collapse:collapse;color:#000;background:#fff;font-size:1rem}.suspension-report-table td{border:1px solid #111;padding:9px 8px;vertical-align:top;line-height:1.25}.suspension-report-table td:nth-child(1){width:54px;text-align:center}.suspension-report-table td:nth-child(2){width:116px;white-space:nowrap}.suspension-report-table td:nth-child(3){width:132px}.suspension-report-table td:nth-child(4){width:150px;white-space:pre-line}.suspension-report-table td:nth-child(5){width:190px}.suspension-report-table td:nth-child(6){white-space:pre-line}.suspension-report-icon{width:34px;height:34px;display:inline-grid;place-items:center;border-radius:9px;color:#fff;background:#ed5b55}@media print{body *{visibility:hidden!important}.suspension-history-modal,.suspension-history-modal *,.suspension-report-modal,.suspension-report-modal *{visibility:visible!important}.suspension-history-modal{position:fixed!important;inset:0!important;display:block!important;padding:0!important;background:#fff!important}.suspension-history-modal-backdrop,.suspension-modal-close{display:none!important}.suspension-report-modal{position:absolute!important;inset:0 auto auto 0!important;width:100%!important;max-height:none!important;overflow:visible!important;margin:0!important;border:0!important;box-shadow:none!important}.suspension-report-table-wrap{overflow:visible!important}}@media(max-width:980px){.suspension-form-grid{grid-template-columns:1fr 1fr}}@media(max-width:680px){.suspension-form-grid{grid-template-columns:1fr}.suspension-student-field,.suspension-guardian-email-field{grid-column:auto}.suspension-report-sheet{padding:22px 16px}.suspension-report-header{grid-template-columns:1fr;gap:12px;justify-items:center}.suspension-report-header h4{font-size:1.65rem}.suspension-report-meta{display:grid}.suspension-report-meta>div{text-align:left}.suspension-report-table-wrap{margin-top:38px}}.btec-registration-pill{display:inline-flex;min-height:26px;align-items:center;border-radius:999px;padding:0 9px;color:#8a5a00;background:#fff7e6;font-size:.7rem;font-weight:900}.btec-registration-pill.verified{color:#17663d;background:#e8f5ed}.btec-verification-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:14px 0;border:1px solid var(--line);border-radius:8px;padding:12px 14px;background:var(--surface-muted)}.btec-verification-summary{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px;color:var(--muted);font-size:.78rem;font-weight:800}.btec-verification-summary strong{color:var(--brand-dark);font-size:1.2rem}.btec-verification-summary b{margin-left:8px;color:#8a5a00;font-size:.72rem}.btec-verification-upload .minutes-action-primary{min-width:150px;min-height:40px;padding:0 14px;font-size:.78rem}.btec-verification-source{display:grid;gap:2px}.btec-verification-source strong{color:var(--ink);font-size:.76rem}.btec-verification-source small{max-width:260px;overflow:hidden;color:var(--muted);font-size:.68rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.btec-match-review{display:grid;gap:12px;margin:0 0 16px;border-top:1px solid var(--line);padding-top:14px}.btec-match-review>header{display:flex;align-items:flex-end;justify-content:space-between;gap:14px}.btec-match-review h4{margin:3px 0;color:var(--brand-dark);font-size:1rem}.btec-match-review p{margin:0;color:var(--muted);font-size:.76rem;font-weight:700}.btec-match-count{flex:0 0 auto;border-radius:999px;padding:6px 10px;color:#8a5a00;background:#fff7e6;font-size:.7rem;font-weight:900}.btec-match-table select{width:100%;min-width:240px;min-height:38px;border:1px solid var(--input-border);border-radius:7px;padding:0 10px;color:var(--ink);background:var(--input-bg);font:inherit;font-size:.76rem;font-weight:750}.btec-match-table th:nth-child(1){width:22%}.btec-match-table th:nth-child(2){width:42%}.btec-match-table th:nth-child(3){width:12%}.btec-match-table th:nth-child(4){width:24%}.btec-match-score{display:inline-flex;min-width:48px;min-height:27px;align-items:center;justify-content:center;border-radius:999px;color:var(--brand-dark);background:var(--soft);font-size:.72rem;font-weight:900}.btec-match-table .secondary-action{white-space:nowrap}.uniforms-workspace,.contracts-workspace{display:grid;gap:16px}.contracts-tabs{display:flex;gap:8px;align-items:center}.contract-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.contract-form-grid h4{grid-column:1 / -1;margin:10px 0 0;color:var(--brand);font-size:.85rem;text-transform:uppercase;letter-spacing:.06em}.contract-form-grid label{display:grid;gap:7px;color:var(--muted);font-size:.74rem;font-weight:800}.contract-form-grid input,.contract-form-grid select{width:100%;min-height:42px;border:1px solid var(--input-border);border-radius:8px;padding:0 12px;color:var(--ink);background:var(--input-bg);font:inherit;font-weight:700}.contract-span-all{grid-column:1 / -1}.contracts-preview-shell{display:grid;gap:16px;padding:20px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.contracts-preview-shell>header{display:flex;align-items:center;justify-content:space-between;gap:16px}.registration-contract-preview{display:grid;gap:20px;justify-content:center;padding:20px;background:#e9eef1}.contract-page{position:relative;box-sizing:border-box;width:210mm;min-height:297mm;padding:20mm 19mm 18mm;color:#111;background:#fff;font-family:Arial,sans-serif;font-size:10.5pt;line-height:1.45;box-shadow:0 2px 12px #0000001f;page-break-after:always}.contract-page>img{display:block;width:180px;max-width:55%;height:auto;margin:0 auto 22px}.contract-page h1{margin:22px 0;text-align:center;font-size:14pt}.contract-page p{margin:0 0 11px;text-align:justify}.contract-article{margin:0 0 16px}.contract-article h2{margin:0;font-size:11pt}.contract-article h3{margin:2px 0 6px;font-size:10.5pt}.contract-page footer{position:absolute;right:19mm;bottom:10mm;color:#666;font-size:8pt}.contract-signatures{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-top:55px;text-align:center}.contract-signatures div{display:grid;gap:30px}@media(max-width:900px){.contract-form-grid{grid-template-columns:1fr 1fr}.contract-page{width:100%;min-height:auto;padding:32px 24px 48px}.registration-contract-preview{padding:8px}}@media(max-width:620px){.contract-form-grid{grid-template-columns:1fr}.contract-span-all{grid-column:auto}.contracts-preview-shell>header{align-items:flex-start;flex-direction:column}}.uniforms-entry-table input,.uniforms-entry-table select{width:100%;min-width:90px;min-height:38px;border:1px solid var(--input-border);border-radius:7px;padding:0 10px;color:var(--ink);background:var(--input-bg);font:inherit;font-size:.78rem;font-weight:750}.uniforms-entry-table input[type=number]{min-width:68px}.uniform-item-cell{display:flex;align-items:center;gap:10px;min-width:230px}.uniform-item-photo{display:block;width:58px;height:46px;padding:0;overflow:hidden;flex:0 0 auto;border:1px solid var(--line);border-radius:7px;background:#fff;cursor:zoom-in;box-shadow:0 1px 3px #0f23321f}.uniform-item-photo img{display:block;width:100%;height:100%;object-fit:cover}.uniform-item-photo:hover{border-color:var(--brand);box-shadow:0 3px 10px #005f8633}.uniform-photo-modal{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:24px;background:#08121cb8}.uniform-photo-dialog{position:relative;display:grid;gap:14px;width:min(760px,94vw);padding:24px;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:0 24px 80px #00000059}.uniform-photo-dialog>strong{color:var(--ink);font-size:.95rem;line-height:1.35}.uniform-photo-gallery{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;max-height:70vh;overflow:auto;padding:8px}.uniform-photo-gallery img{display:block;width:min(360px,42vw);max-height:360px;object-fit:contain;border-radius:8px;background:#fff}.uniform-photo-close{position:absolute;top:10px;right:10px;z-index:1;width:34px;height:34px;border:1px solid var(--line);border-radius:50%;color:var(--ink);background:var(--surface);font-size:1.35rem;line-height:1;cursor:pointer}.uniforms-notes{display:grid;gap:7px;color:var(--muted);font-size:.72rem;font-weight:900}.uniforms-notes textarea{width:100%;min-height:90px;resize:vertical;border:1px solid var(--input-border);border-radius:8px;padding:10px 12px;color:var(--ink);background:var(--input-bg);font:inherit}.uniforms-status-pill{display:inline-flex;min-height:26px;align-items:center;border-radius:999px;padding:0 9px;color:var(--brand-dark);background:var(--soft);font-size:.7rem;font-weight:900;white-space:nowrap}.uniforms-inline-form{display:grid;grid-template-columns:minmax(220px,1fr) minmax(220px,.8fr) minmax(130px,.35fr) auto;gap:12px;align-items:end}.uniforms-inline-form label{display:grid;gap:7px;color:var(--muted);font-size:.72rem;font-weight:900}.uniforms-inline-form input,.uniforms-inline-form select,.uniforms-report-filter select{width:100%;min-height:42px;border:1px solid var(--input-border);border-radius:8px;padding:0 12px;color:var(--ink);background:var(--input-bg);font:inherit;font-size:.8rem;font-weight:800}.uniforms-inline-form .minutes-action-primary{min-width:150px;min-height:42px;padding:0 15px;font-size:.78rem}.uniforms-wide-field{grid-column:1 / -1}.uniforms-wide-field textarea{min-height:104px;padding:10px 12px;resize:vertical}.uniforms-report-filter{display:grid;grid-template-columns:minmax(280px,.7fr) minmax(240px,1fr);gap:12px;align-items:center}.uniforms-report-filter>span{min-height:42px;display:flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:8px;padding:0 12px;color:var(--muted);background:var(--surface-muted);font-size:.78rem;font-weight:800}.uniforms-report-filter>span strong{color:var(--brand-dark);font-size:1rem}.uniforms-report-filter>span.attention{border-color:#b4231859;color:#9b2c20;background:#fff1f0}.uniforms-report-bar{width:min(260px,100%);height:8px;display:block;overflow:hidden;border-radius:999px;background:var(--line)}.uniforms-report-bar i{height:100%;display:block;border-radius:inherit;background:var(--brand)}.uniforms-rule-row{display:grid;grid-template-columns:minmax(260px,1fr) 90px auto auto;gap:12px;align-items:center}.uniforms-rule-row>div{display:grid;gap:4px}.uniforms-rule-row strong{color:var(--brand-dark);font-size:.88rem}.uniforms-rule-row span{color:var(--muted);font-size:.75rem;font-weight:750}.uniforms-rule-row input{width:90px;min-height:42px;border:1px solid var(--input-border);border-radius:8px;padding:0 10px;color:var(--ink);background:var(--input-bg);font:inherit;font-weight:900}.uniforms-rule-row .minutes-action-primary{min-width:120px;min-height:42px;padding:0 14px;font-size:.78rem}@media(max-width:680px){.btec-verification-toolbar{align-items:stretch;flex-direction:column}.btec-verification-upload .minutes-action-primary{width:100%}.btec-match-review>header{align-items:flex-start;flex-direction:column}.uniforms-inline-form,.uniforms-report-filter,.uniforms-rule-row{grid-template-columns:1fr}.uniforms-inline-form .minutes-action-primary,.uniforms-rule-row .minutes-action-primary{width:100%}}.project-source-summary,.assessor-note{display:grid;gap:4px;border-radius:10px;padding:14px 16px;color:var(--muted);background:var(--surface-soft);font-size:.84rem}.project-source-summary strong,.assessor-note strong{color:var(--brand-dark)}.assessor-note span{display:block;margin-top:2px;color:#8a99a8;font-size:.76rem;font-weight:700}.primary-action.wide,.secondary-action.wide{width:100%;min-height:48px;justify-content:center}.btec-resume-action{margin-top:-6px}.criteria-editor{display:grid;gap:9px}.criteria-editor-row{display:grid;grid-template-columns:30px minmax(90px,.7fr) minmax(120px,.7fr) minmax(180px,1.6fr) 34px;gap:8px;align-items:center;border:1px solid var(--line);border-radius:9px;padding:8px}.criteria-editor-row>span{color:var(--muted);text-align:center;font-size:.74rem;font-weight:800}.criteria-editor-row input,.criteria-editor-row select,.stage-doc-row input,.stage-doc-row select{min-height:36px;min-width:0;border:1px solid var(--line);border-radius:8px;padding:0 10px;color:var(--ink);background:var(--surface);font:inherit;font-size:.78rem;font-weight:700}.criteria-editor-row button,.icon-danger{display:grid;place-items:center;width:32px;height:32px;border:0;border-radius:8px;color:#b42318;background:transparent}.criteria-editor-row button:hover,.icon-danger:hover{background:#fff1f0}.scenario-options{display:grid;gap:10px}.scenario-options button{display:grid;grid-template-columns:18px minmax(0,1fr);gap:4px 12px;align-items:start;border:1px solid var(--line);border-radius:10px;padding:15px;color:var(--ink);background:var(--surface);text-align:left}.scenario-options button>span{grid-row:1 / 3;width:17px;height:17px;margin-top:2px;border:1px solid var(--brand);border-radius:50%}.scenario-options button.active>span{box-shadow:inset 0 0 0 4px var(--surface);background:var(--brand)}.scenario-options strong{color:var(--ink);font-size:.88rem}.scenario-options small{color:var(--muted);font-size:.75rem;font-weight:700}.stage-list{display:grid;gap:10px}.stage-card{display:grid;grid-template-columns:28px minmax(0,1fr) 34px;gap:12px;border:1px solid var(--line);border-radius:10px;padding:12px;background:var(--surface)}.stage-number{width:24px;height:24px;display:grid;place-items:center;border-radius:999px;color:var(--brand);background:var(--soft);font-size:.74rem;font-weight:900}.stage-card strong{color:var(--ink);font-size:.84rem}.stage-card p{margin:5px 0 8px;color:var(--muted);font-size:.76rem;line-height:1.42}.stage-badges{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:8px}.stage-badges span{border-radius:999px;padding:4px 8px;color:var(--brand-dark);background:var(--soft);font-size:.68rem;font-weight:800}.stage-doc-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(140px,.55fr);gap:8px}.stage-gantt{display:grid;gap:12px;overflow-x:auto;border:1px solid var(--line);border-radius:10px;padding:14px;background:var(--surface)}.stage-gantt-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;min-width:820px}.stage-gantt-head>div:first-child{display:grid;gap:4px}.stage-gantt-head strong{color:var(--brand-dark);font-size:.9rem}.stage-gantt-head span{max-width:500px;color:var(--muted);font-size:.72rem;font-weight:700;line-height:1.4}.stage-gantt-head dl{display:grid;grid-template-columns:repeat(2,minmax(108px,1fr));gap:8px;margin:0}.stage-gantt-head dl div{display:grid;gap:2px;border:1px solid var(--line);border-radius:8px;padding:7px 9px;background:var(--surface-soft)}.stage-gantt-head dt{color:var(--muted);font-size:.62rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.stage-gantt-head dd{margin:0;color:var(--brand-dark);font-size:.82rem;font-weight:900;white-space:nowrap}.stage-gantt-empty{border:1px dashed var(--line);border-radius:10px;padding:12px;color:var(--muted);background:var(--surface-soft);font-size:.78rem;font-weight:700}.stage-gantt-saving{margin:0;color:var(--brand);font-size:.74rem;font-weight:800}.gantt-chart{min-width:820px;display:grid;grid-template-columns:minmax(230px,.42fr) minmax(560px,1fr);border:1px solid var(--line);border-radius:9px;overflow:hidden;background:var(--surface)}.gantt-axis-label,.gantt-axis{min-height:42px;background:var(--surface-soft)}.gantt-stage-label{display:grid;align-content:center;gap:2px;min-width:0;border-top:1px solid var(--line);padding:8px 9px;color:var(--ink)}.gantt-axis-label{border-top:0;color:var(--muted);font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.gantt-stage-label strong{min-width:0;overflow:hidden;color:var(--brand-dark);font-size:.74rem;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.gantt-stage-label span{color:var(--muted);font-size:.66rem;font-weight:800}.gantt-axis,.gantt-lane{position:relative;border-top:1px solid var(--line);background-image:linear-gradient(to right,rgba(0,95,134,.1) 1px,transparent 1px);background-size:25% 100%}.gantt-axis{border-top:0}.gantt-tick{position:absolute;top:10px;transform:translate(-50%);color:var(--brand-dark);font-size:.64rem;font-weight:900;white-space:nowrap}.gantt-tick.start{transform:translate(0)}.gantt-tick.end{transform:translate(-100%)}.gantt-tick:before{content:"";position:absolute;left:50%;top:19px;width:1px;height:12px;background:#54596457}.gantt-tick.start:before{left:0}.gantt-tick.end:before{left:100%}.gantt-row{display:contents}.gantt-lane{min-height:62px}.gantt-bar{position:absolute;top:50%;height:32px;min-width:42px;display:flex;align-items:center;justify-content:space-between;gap:4px;transform:translateY(-50%);border-radius:7px;color:#fff;background:var(--brand);box-shadow:inset 0 -1px #0000002e;cursor:default;touch-action:none;-webkit-user-select:none;user-select:none}.gantt-bar.saving{opacity:.72;cursor:progress}.gantt-bar>span{flex:1;min-width:0;text-align:center;color:#fff;font-size:.66rem;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gantt-bar-label-out{position:absolute;top:50%;transform:translateY(-50%);color:var(--brand-dark);font-size:.66rem;font-weight:900;white-space:nowrap;pointer-events:none}.gantt-resize-handle{align-self:stretch;width:12px;border:0;padding:0;border-radius:7px;background:#ffffff3d;cursor:ew-resize;touch-action:none}.gantt-resize-handle:hover{background:#ffffff61}.gantt-fixed-edge{width:12px;flex:0 0 12px;opacity:.3}.generation-preview{justify-items:stretch;text-align:left}.generation-preview h3{margin:0;color:var(--ink);font-size:1rem}.generation-preview p{margin:0;color:var(--muted);font-size:.8rem}.generation-preview>h3,.generation-preview>p{text-align:center}.generation-spinner{width:58px;height:58px;border:4px solid var(--line);border-top-color:var(--brand);border-radius:50%}.generation-spinner.active{animation:spin .85s linear infinite}.generation-head{position:relative;width:100%;display:grid;justify-items:center;gap:4px;padding:4px 0 8px}.generation-head-status{display:grid;justify-items:center;gap:6px;text-align:center}.generation-head-icon{display:inline-flex}.generation-head-icon.loading{color:var(--brand)}.generation-head-icon.loading svg{animation:spin .85s linear infinite}.generation-head-icon.done{color:#047857}.generation-finalize{position:absolute;top:0;right:0}@media(max-width:760px){.generation-finalize{position:static;margin-top:8px}}.wizard-hint{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:.78rem;font-weight:700}.wizard-hint.success{color:#047857}.scenario-regen-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.scenario-regen-row .wizard-hint{flex:1 1 260px}.criteria-editor-row.readonly{grid-template-columns:minmax(80px,.5fr) 110px minmax(180px,2fr)}.criteria-editor-row.readonly strong{color:var(--ink);font-size:.74rem;font-weight:800}.criteria-editor-row.readonly small{color:var(--muted);font-size:.74rem}.generation-doc-list{width:min(100%,560px);list-style:none;margin:0;padding:0;display:grid;gap:6px;text-align:left}.generation-folder-tree{width:100%;max-height:min(62vh,640px);display:grid;gap:10px;overflow:auto;padding-right:4px}.generation-folder{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:9px;background:var(--surface)}.generation-folder header{min-width:0;display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--line);color:var(--brand-dark);background:var(--surface-soft)}.generation-folder header strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.82rem}.generation-folder header em{color:var(--muted);font-style:normal;font-size:.68rem;font-weight:800;white-space:nowrap}.generation-folder ul{display:grid;gap:0;margin:0;padding:0;list-style:none}.generation-folder .gen-doc{border:0;border-top:1px solid var(--line);border-radius:0;padding-left:24px}.generation-folder .gen-doc:first-child{border-top:0}.gen-doc{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:8px;border:1px solid var(--line);border-radius:8px;padding:7px 11px;color:var(--ink);font-size:.78rem}.gen-doc span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gen-doc em{font-style:normal;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.gen-doc-state{display:inline-flex;align-items:center;justify-content:flex-end;gap:6px;min-width:112px;white-space:nowrap}.gen-doc-state.generating{color:var(--brand)}.gen-doc-state.generating svg{animation:spin .85s linear infinite}.gen-doc-state.ready{color:#047857}.gen-doc-state.failed{color:#b42318}.gen-doc-state.pending{color:#b45309}.gen-doc-draft,.gen-doc-approved,.gen-doc-edited,.gen-doc-regenerated{border-color:#04785759}.gen-doc-draft em,.gen-doc-approved em,.gen-doc-edited em{color:#047857}.gen-doc-failed{border-color:#b4231859}.gen-doc-failed em{color:#b42318}.gen-doc-pending em,.gen-doc-generating em{color:#b45309}.gen-doc .gen-doc-state.generating{color:var(--brand)}.gen-doc .gen-doc-state.ready{color:#047857}.gen-doc .gen-doc-state.failed{color:#b42318}.gen-doc .gen-doc-state.pending{color:#b45309}.generation-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;width:100%}.document-tree{width:min(100%,520px);display:grid;gap:7px;border:1px solid var(--line);border-radius:10px;padding:14px 18px;text-align:left;background:var(--surface)}.document-tree div{display:flex;align-items:center;gap:8px;color:var(--ink)}.document-tree section{display:grid;gap:7px;margin-left:18px;padding-left:12px;border-left:1px solid var(--line)}.document-tree p{display:flex;align-items:center;gap:8px;margin:0 0 0 18px;color:var(--muted);font-size:.76rem;font-weight:700}.document-tree p svg{color:var(--brand)}.btec-table-wrap{min-width:0;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain}.btec-table{width:100%;border-collapse:collapse}.btec-table th,.btec-table td{padding:11px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;font-size:.82rem}.btec-table th{color:var(--muted);background:var(--surface-soft);font-size:.68rem;text-transform:uppercase}.btec-table td strong{display:block;color:var(--brand-dark);font-size:.86rem}.btec-table td span{display:block;margin-top:3px;color:var(--muted);font-size:.74rem}.btec-export-template-table{table-layout:fixed}.btec-export-template-table th:nth-child(1){width:35%}.btec-export-template-table th:nth-child(2){width:32%}.btec-export-template-table th:nth-child(3){width:10%}.btec-export-template-table th:nth-child(4){width:7%}.btec-export-template-table th:nth-child(5){width:9%}.btec-export-template-table th:nth-child(6){width:7%}.btec-export-template-table td:nth-child(6){white-space:nowrap}.btec-export-template-table .row-actions-icons{display:flex;gap:6px;flex-wrap:nowrap;justify-content:flex-end}.btec-window-table{table-layout:fixed}.btec-window-table th:nth-child(1){width:30%}.btec-window-table th:nth-child(2){width:10%}.btec-window-table th:nth-child(3),.btec-window-table th:nth-child(4),.btec-window-table th:nth-child(5){width:11%}.btec-window-table th:nth-child(6){width:10%}.btec-window-table th:nth-child(7){width:17%}.btec-window-table td{vertical-align:middle}.btec-window-data-row{cursor:pointer}.btec-window-data-row:hover>td,.btec-window-data-row:focus-visible>td{background:#005f860d}.btec-window-data-row:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}.btec-settings-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px}.projects-table-panel{min-width:0}.btec-toolbar{display:grid;gap:10px;margin-bottom:12px}.btec-search{min-height:42px;display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:8px;padding:0 11px;color:var(--muted);background:var(--surface-soft)}.btec-search input{flex:1;min-width:0;border:0;outline:0;color:var(--ink);background:transparent;font:inherit;font-size:.82rem}.btec-filter-pills{display:flex;flex-wrap:wrap;gap:7px}.btec-filter-pills button{min-height:32px;display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:999px;padding:0 10px;color:var(--muted);background:var(--surface);font-size:.72rem;font-weight:800;cursor:pointer}.btec-filter-pills button.active{color:var(--brand);border-color:#005f8647;background:var(--soft)}.btec-filter-pills span{min-width:22px;min-height:20px;display:grid;place-items:center;border-radius:999px;background:var(--surface-soft)}.table-link{display:grid;gap:2px;border:0;padding:0;color:inherit;background:transparent;text-align:left;cursor:pointer}.table-link:hover strong{color:var(--brand)}.truncate-cell{max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-pill{display:inline-flex;align-items:center;min-height:24px;border-radius:999px;padding:0 8px;color:var(--muted);background:var(--surface-soft);font-size:.68rem;font-weight:900;white-space:nowrap}.status-draft,.status-pending{color:#475569;background:#f1f5f9}.status-ready,.status-extracted,.status-configured,.status-preview,.status-in-progress{color:var(--brand);background:var(--soft)}.status-generated,.status-complete,.status-approved,.status-pass{color:#027a48;background:#ecfdf3}.status-failed,.status-archived{color:#b42318;background:#fff1f0}.status-merit{color:#005f86;background:#005f8614}.status-distinction{color:#6941c6;background:#f4f3ff}.btec-empty-state{display:grid;place-items:center;gap:8px;min-height:150px;border:1px dashed var(--line);border-radius:8px;padding:24px;text-align:center}.btec-empty-state strong{color:var(--brand-dark);font-size:.9rem}.btec-empty-state p{margin:0;max-width:360px;color:var(--muted);font-size:.78rem;line-height:1.45}.btec-empty-state span{max-width:360px;color:var(--muted);font-size:.78rem;line-height:1.45}.btec-empty-state .primary-action{margin-top:4px}.btec-guide-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.btec-guide-section-head h3{margin:0;color:var(--brand-dark);font-size:1rem}.btec-guide-section-head p{margin:4px 0 0;max-width:720px;color:var(--muted);font-size:.82rem;line-height:1.5}.btec-guide-section-head>span{flex:0 0 auto;border:1px solid var(--line);border-radius:999px;padding:5px 10px;color:var(--muted);background:var(--surface-soft);font-size:.74rem;font-weight:700}.btec-guides-table th:first-child,.btec-guides-table td:first-child{width:42%}.btec-guides-table th:last-child,.btec-guides-table td:last-child{width:1%;white-space:nowrap}.btec-guides-table .row-actions-icons{flex-wrap:nowrap}.btec-assessment-report-panel{margin-top:12px}.btec-assessment-report-panel .btec-summary>div:first-child{min-width:min(100%,360px);margin-right:auto}.btec-assessment-report-panel .btec-assessment-context{margin:4px 0 0}.btec-report-status{margin-left:6px;border:1px solid var(--line);border-radius:999px;padding:2px 7px;font-size:.68rem;font-weight:700}.btec-report-status.draft{color:#7a5314;background:#fff8e6;border-color:#ead7aa}.btec-report-status.final{color:#25603b;background:#edf8f1;border-color:#b9ddc5}.project-detail{display:grid;gap:16px}.detail-topbar{display:flex;align-items:center;gap:10px}.detail-topbar .primary-action{margin-left:auto;width:auto}.project-detail-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.project-detail-hero h3{margin-bottom:5px;font-size:1.15rem}.project-detail-hero p,.detail-muted,.detail-text{margin:0;color:var(--muted);line-height:1.55}.project-detail-stats{display:grid;grid-template-columns:repeat(3,minmax(90px,1fr));gap:8px;min-width:min(460px,100%)}.project-detail-stats .btec-panel{min-height:74px;padding:12px;box-shadow:none}.project-detail-stats .btec-metric strong{font-size:1.45rem}.project-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);gap:16px;align-items:start}.detail-list{display:grid;margin:0}.detail-list-item{display:grid;grid-template-columns:130px minmax(0,1fr);gap:12px;border-bottom:1px solid var(--line);padding:10px 0}.detail-list-item:last-child{border-bottom:0}.detail-list-item dt{color:var(--muted);font-size:.68rem;font-weight:900;text-transform:uppercase}.detail-list-item dd{margin:0;color:var(--ink);font-size:.82rem;line-height:1.5;white-space:pre-wrap}.criteria-list{display:grid;gap:8px}.criteria-row{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:start;border:1px solid var(--line);border-radius:8px;padding:10px;background:var(--surface-soft)}.criteria-row p{margin:0;color:var(--muted);font-size:.82rem;line-height:1.45}.project-wizard{display:grid;gap:16px}.wizard-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;border-bottom:1px solid var(--line);padding-bottom:14px}.wizard-header h3{margin-bottom:4px}.wizard-header p{margin:0;color:var(--muted);font-size:.82rem;line-height:1.45}.wizard-badges{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.wizard-badges span,.criterion-column-header span{min-height:24px;display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;padding:0 8px;color:var(--muted);background:var(--surface-soft);font-size:.68rem;font-weight:800}.btec-stepper{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.btec-step{display:grid;gap:7px;min-width:0;border:0;padding:0;color:inherit;background:transparent;text-align:left;font:inherit}.btec-step.available{cursor:pointer}.btec-step.available:hover small{color:var(--brand-dark)}.btec-step.available:hover span{background:var(--brand)}.btec-step:focus-visible{outline:2px solid var(--focus-ring);outline-offset:4px;border-radius:8px}.btec-step:disabled{cursor:default}.btec-step span{height:6px;border-radius:999px;background:var(--line)}.btec-step.active span,.btec-step.complete span{background:var(--brand)}.btec-step small{color:var(--muted);font-size:.72rem;font-weight:700;overflow-wrap:anywhere}.btec-step.active small{color:var(--brand-dark)}.wizard-error{display:flex;align-items:flex-start;gap:8px;border:1px solid rgba(180,35,24,.25);border-radius:8px;padding:10px 12px;color:#b42318;background:#fff1f0;font-size:.8rem;font-weight:700}.wizard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.wizard-span{grid-column:1 / -1}.wizard-stack{display:grid;gap:12px}.criteria-wizard{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.criteria-summary{grid-column:1 / -1;display:grid;gap:5px;border:1px solid var(--line);border-radius:8px;padding:12px;background:var(--surface-soft)}.criteria-summary strong{color:var(--brand-dark);font-size:.9rem}.criteria-summary span{color:var(--ink);font-size:.82rem;font-weight:700}.criteria-summary small{color:var(--muted);font-size:.75rem;line-height:1.45}.criterion-column{display:grid;align-content:start;gap:10px;border:1px solid var(--line);border-radius:8px;padding:12px;background:var(--surface)}.criterion-column-header{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid var(--line);padding-bottom:9px;color:var(--brand-dark);font-size:.86rem}.criterion-card{display:grid;gap:10px;border:1px solid var(--line);border-radius:8px;padding:10px;background:var(--surface-soft)}.secondary-action.compact{min-height:34px;padding-inline:10px;font-size:.76rem}.wizard-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding-top:14px}.inline-action{min-height:32px;display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:7px;padding:0 10px;color:var(--brand);background:var(--surface);font-size:.76rem;font-weight:700;cursor:pointer}.inline-action:hover{background:var(--surface-muted)}.inline-action.danger{color:#b42318;border-color:#b4231840}.inline-action.danger:hover{background:#fff1f0}.btec-unit-row-editing{background:var(--surface-soft)}.btec-unit-row-highlighted{animation:btec-unit-added 1.8s ease-out}.btec-unit-row-clickable{cursor:pointer}.btec-unit-row-clickable:hover>td{background:#005f860d}.btec-unit-row-clickable:hover td strong{color:var(--brand)}@keyframes btec-unit-added{0%,to{background:transparent}25%,65%{background:#005f8629}45%{background:#005f860a}}.btec-unit-inline-fields{display:grid;grid-template-columns:minmax(90px,.35fr) minmax(220px,1fr);gap:8px;min-width:360px}.btec-unit-inline-fields label,.btec-unit-inline-credits{display:grid;gap:4px}.btec-unit-inline-fields label>span,.btec-unit-inline-credits>span{margin:0;color:var(--muted);font-size:.68rem;font-weight:700}.btec-unit-inline-fields input,.btec-unit-inline-credits input,.btec-unit-inline-credits select{width:100%;min-height:36px;border:1px solid var(--line);border-radius:6px;padding:7px 9px;color:var(--brand-dark);background:var(--surface);font:inherit}.btec-unit-inline-fields input:focus,.btec-unit-inline-credits input:focus,.btec-unit-inline-credits select:focus{border-color:var(--brand);outline:2px solid rgba(0,95,134,.14);outline-offset:1px}.btec-unit-inline-credits select{padding-right:26px;text-overflow:ellipsis}.btec-unit-inline-credits{width:100px}.btec-unit-inline-actions{display:flex;flex-wrap:wrap;gap:7px}.btec-unit-aims-detail-row>td{background:var(--surface-soft);padding-top:10px;padding-bottom:12px}.btec-unit-aims-editor{display:grid;gap:10px;max-width:920px}.btec-unit-aims-header{display:flex;align-items:baseline;gap:10px}.btec-unit-aims-header strong{color:var(--brand-dark);font-size:.82rem}.btec-unit-aims-header span,.btec-muted-text{color:var(--muted);font-size:.74rem}.btec-unit-aim-list{display:grid;gap:7px}.btec-unit-aim-row{display:grid;grid-template-columns:34px minmax(180px,1fr) 140px auto;align-items:center;gap:8px}.btec-unit-aim-group{width:100%;min-height:34px;border:1px solid var(--line);border-radius:6px;padding:6px 8px;color:var(--brand-dark);background:var(--surface);font:inherit;font-size:.8rem}.btec-unit-aim-row>span:last-child{color:var(--brand-dark);font-size:.8rem}.btec-unit-aim-letter{flex:none;display:inline-block;width:28px;height:28px;box-sizing:border-box;padding:0;border:1px solid rgba(0,95,134,.24);border-radius:6px;color:var(--brand);background:var(--surface);font-size:.75rem;font-weight:800;line-height:26px;text-align:center}.btec-unit-aim-row input{width:100%;min-height:34px;border:1px solid var(--line);border-radius:6px;padding:7px 9px;color:var(--brand-dark);background:var(--surface);font:inherit;font-size:.8rem}.btec-unit-aim-row input:focus{border-color:var(--brand);outline:2px solid rgba(0,95,134,.14);outline-offset:1px}.btec-unit-board{display:grid;gap:12px;border:1px solid var(--line);border-radius:8px;padding:12px;margin-bottom:14px;background:var(--surface-soft)}.btec-unit-board h4{margin:0;color:var(--brand-dark);font-size:.9rem}.btec-unit-board-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:8px}.btec-unit-board-card{display:grid;gap:4px;align-content:start;text-align:left;border:1px solid var(--line);border-radius:7px;padding:11px 12px;background:var(--surface);color:var(--brand-dark);cursor:pointer;font:inherit}.btec-unit-board-card:hover{border-color:var(--brand)}.btec-aim-title-list{margin:4px 0 8px;padding-left:0;list-style:none;color:var(--brand-dark);font-size:.8rem;display:grid;gap:2px}.btec-aim-window-list button{display:grid;gap:4px;text-align:left;border:1px solid var(--line);border-radius:7px;padding:10px;background:var(--surface);color:var(--brand-dark);cursor:pointer}.btec-unit-board-card:hover,.btec-aim-window-list button:hover{background:var(--surface-muted)}.btec-unit-board-card strong,.btec-aim-window-list strong{font-size:.82rem}.btec-unit-board-card .btec-unit-board-kicker{color:var(--brand);font-size:.68rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.btec-unit-board-card small.btec-unit-board-empty{font-style:italic}.btec-unit-board-card span,.btec-aim-board-row span,.btec-aim-window-list span{color:var(--muted);font-size:.75rem}.btec-unit-board-card small,.btec-aim-window-list small,.btec-aim-board-row p{color:var(--muted);font-size:.72rem;margin:0}.btec-unit-board-card.taken{position:relative;overflow:hidden;cursor:not-allowed;background:var(--surface-soft)}.btec-unit-board-card.taken:hover{border-color:var(--line);background:var(--surface-soft)}.btec-unit-board-card.taken>:not(.btec-unit-board-taken-ribbon){opacity:.55}.btec-unit-board-card span.btec-unit-board-taken-ribbon{position:absolute;left:50%;top:50%;width:170%;transform:translate(-50%,-50%) rotate(-22deg);background:var(--brand);color:#fff;text-align:center;font-size:.68rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:3px 0;pointer-events:none;white-space:nowrap;box-shadow:0 1px 6px #0000002e}.btec-aim-calendar{display:grid;gap:12px}.btec-aim-calendar-head{display:flex;align-items:flex-start;gap:9px;color:var(--brand)}.btec-aim-calendar-head div{display:grid;gap:2px}.btec-aim-calendar-head strong{color:var(--brand-dark);font-size:.86rem}.btec-aim-calendar-head span{color:var(--muted);font-size:.74rem}.btec-aim-calendar-group{display:grid;gap:6px}.btec-aim-calendar-group h5{margin:0;color:var(--brand);font-size:.7rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.btec-aim-calendar-rows{display:grid;gap:6px}.btec-aim-calendar-row{display:grid;grid-template-columns:130px 1fr auto;align-items:center;gap:12px;border:1px solid var(--line);border-radius:7px;padding:9px 12px;background:var(--surface)}.btec-aim-calendar-when{display:grid;gap:1px}.btec-aim-calendar-when strong{color:var(--brand-dark);font-size:.82rem}.btec-aim-calendar-when small,.btec-aim-calendar-what small{color:var(--muted);font-size:.7rem}.btec-aim-calendar-what{display:grid;gap:2px;min-width:0}.btec-aim-calendar-what strong{color:var(--brand-dark);font-size:.8rem}.btec-aim-calendar-what span{color:var(--muted);font-size:.74rem}.btec-aim-board-list{display:grid;gap:10px}.btec-aim-board-row{display:grid;gap:9px;border:1px solid var(--line);border-radius:8px;padding:10px;background:var(--surface)}.btec-aim-board-row header{display:grid;gap:3px}.btec-aim-window-list{display:grid;gap:7px}@media(prefers-reduced-motion:reduce){.btec-unit-row-highlighted{animation:none;background:#005f861f}}.row-actions{display:flex;flex-wrap:wrap;gap:6px}.evaluation-list{display:grid;gap:6px;color:var(--text);font-size:.82rem}.evaluation-list strong{color:var(--brand-dark)}.evaluation-list ul{margin:0;padding-left:18px}.link-relationship-help{display:block;margin-top:7px;color:var(--muted);font-size:.68rem;font-weight:600;line-height:1.35}.link-ready-card{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid rgba(0,95,134,.18);border-radius:10px;padding:0 14px;color:var(--brand-dark);background:var(--soft)}.link-ready-card strong{font-size:.78rem}.link-ready-card span{min-width:34px;min-height:30px;display:grid;place-items:center;border-radius:999px;color:#fff;background:var(--brand);font-size:.9rem;font-weight:900}.login-evidence-dialog{width:min(620px,calc(100vw - 32px))}.login-evidence-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:16px 0}.login-evidence-summary div{display:grid;gap:5px;border:1px solid var(--line);border-radius:12px;padding:13px;background:var(--surface-soft)}.login-evidence-summary small{color:var(--muted);font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.login-evidence-summary strong{color:var(--brand-dark);font-size:.95rem}.login-event-list{display:grid;max-height:360px;overflow:auto;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.login-event-list article{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:center;padding:12px 14px;border-bottom:1px solid var(--line)}.login-event-list article:last-child{border-bottom:0}.login-event-list article>span{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;color:var(--brand);background:var(--soft)}.login-event-list strong{display:block;color:var(--ink);font-size:.86rem}.login-event-list small{color:var(--muted);font-size:.74rem}.login-event-list p{margin:0;padding:18px;color:var(--muted);font-size:.84rem}.login-history-toggle{width:100%;margin-top:10px;min-height:40px;border:1px solid var(--line);border-radius:10px;color:var(--brand-deep);background:var(--surface-soft);font-size:.8rem;font-weight:700;cursor:pointer;transition:background .16s ease,border-color .16s ease}.login-history-toggle:hover{border-color:var(--brand);background:var(--soft)}.optional-link-panel{display:grid;gap:12px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface-soft)}.optional-link-panel>div:first-child{display:grid;gap:4px}.optional-link-panel strong{color:var(--brand-dark);font-size:.86rem}.optional-link-panel p{margin:0;color:var(--muted);font-size:.78rem;line-height:1.45}.optional-link-panel select{width:100%;height:46px;border:1px solid var(--input-border);border-radius:8px;padding:0 12px;color:var(--ink);background:var(--input-bg)}.user-picker-field{position:relative;display:grid;gap:8px}.user-picker-input{position:relative;display:flex;align-items:center;gap:9px;height:48px;border:1px solid var(--input-border);border-radius:8px;padding:0 12px;color:var(--input-icon);background:var(--input-bg)}.user-picker-input:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px var(--focus-ring)}.user-picker-input input{min-width:0;flex:1;height:46px;border:0!important;box-shadow:none!important;padding:0!important;color:var(--ink);background:transparent;outline:0}.user-picker-results{position:absolute;z-index:30;top:calc(100% + 4px);left:0;right:0;max-height:260px;overflow-y:auto;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:0 18px 40px var(--shadow-soft)}.user-picker-results button{width:100%;display:grid;gap:3px;border:0;border-bottom:1px solid var(--line);padding:11px 12px;color:var(--muted);background:var(--surface);text-align:left}.user-picker-results button:hover{background:var(--surface-soft)}.user-picker-results strong{color:var(--ink);font-size:.84rem}.user-picker-results span{color:var(--muted);font-size:.74rem;word-break:break-word}.user-picker-results p{margin:0;padding:14px 12px;color:var(--muted);font-size:.78rem}.selected-user-card{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:center;padding:9px 10px;border:1px solid rgba(0,95,134,.16);border-radius:9px;background:#005f860b}.selected-user-card>span{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--brand-deep);font-size:.8rem;font-weight:800}.selected-user-card div{min-width:0;display:grid;gap:2px}.selected-user-card strong{overflow:hidden;color:var(--brand-dark);font-size:.82rem;text-overflow:ellipsis;white-space:nowrap}.selected-user-card small{overflow:hidden;color:var(--muted);font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}.muted-dash{color:#98a3a9}.empty-state{padding:35px;text-align:center;color:var(--muted)}.student-class-input{width:100%;max-width:110px;min-height:34px;border:1px solid var(--line);border-radius:7px;padding:0 8px;color:var(--muted);background:var(--surface)}.role-checkboxes{margin:0;padding:0;border:0}.role-checkboxes legend{margin-bottom:8px;color:var(--muted);font-size:.78rem;font-weight:700}.role-checkboxes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.role-checkboxes label{min-height:40px;display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:8px;padding:0 10px;color:var(--muted);background:var(--surface);font-size:.78rem;cursor:pointer}.role-checkboxes label:has(input:checked){border-color:var(--brand);color:var(--brand);background:var(--soft)}.role-checkboxes input[type=checkbox]{flex:0 0 auto;width:18px;height:18px;margin:0;padding:0}.role-checkboxes label span{min-width:0;overflow-wrap:anywhere}.appearance-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(290px,.6fr);min-height:460px;border:1px solid var(--line);background:var(--surface)}.image-preview-frame{position:relative;min-height:460px;overflow:hidden;background:#0b3346}.image-preview-frame img{width:100%;height:100%;min-height:460px;object-fit:cover}.image-preview-frame span{position:absolute;left:18px;bottom:18px;padding:7px 10px;border-radius:5px;color:#fff;background:#001927b3;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em}.image-controls{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:35px}.image-controls>svg{color:var(--brand)}.image-controls h3{margin:18px 0 8px;color:var(--ink);font-size:1.25rem}.image-controls p{margin:0 0 25px;color:var(--muted);font-size:.86rem;line-height:1.55}.image-controls button{width:100%;margin-top:9px}.image-controls small{margin-top:14px;color:var(--muted);word-break:break-word}.image-url-row{width:100%;margin-top:18px;display:flex;flex-direction:column;gap:8px}.image-url-divider{color:var(--muted);font-size:.76rem;text-transform:uppercase;letter-spacing:.06em}.image-url-row input{width:100%;height:44px;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);font-size:.9rem}.image-url-row input:focus{outline:none;border-color:var(--brand)}.image-url-row button{margin-top:0}.settings-workspace{display:grid;gap:18px;padding-top:28px;animation:workspace-arrival .38s ease both}.settings-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.settings-header h2,.settings-panel-heading h2{margin:4px 0 7px;color:var(--brand-dark);font-size:clamp(1.45rem,1.8vw,1.9rem);letter-spacing:0}.settings-header p,.settings-panel-heading p{margin:0;max-width:68ch;color:var(--muted);line-height:1.55}.settings-panel{display:grid;gap:16px}.cleanup-actions-row{display:flex;flex-wrap:wrap;gap:10px}.cleanup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.cleanup-card{display:grid;gap:14px;border:1px solid var(--line);border-radius:16px;background:var(--surface);padding:16px}.cleanup-card-head strong{color:var(--brand-dark);font-size:1rem}.cleanup-option-list{display:grid;gap:10px}.cleanup-option{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:start;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-muted);cursor:pointer}.cleanup-option.active{border-color:#005f8657;background:#005f860f}.cleanup-option input{margin-top:2px}.cleanup-option strong{display:block;font-size:.92rem;color:var(--brand-dark)}.cleanup-option small{display:block;margin-top:4px;color:var(--muted);line-height:1.45}.cleanup-confirm{display:grid;grid-template-columns:minmax(0,1fr) minmax(140px,180px) auto;gap:12px;align-items:center;padding:16px;border:1px solid rgba(180,35,24,.18);border-radius:16px;background:var(--danger-bg)}.cleanup-confirm strong{color:var(--brand-dark)}.cleanup-confirm p{margin:4px 0 0;color:var(--muted);font-size:.85rem}.cleanup-confirm input{height:42px;border:1px solid var(--input-border);border-radius:10px;padding:0 12px;background:var(--input-bg);color:var(--ink)}.cleanup-result-list{display:flex;flex-wrap:wrap;gap:10px}.cleanup-result-list span{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border-radius:999px;border:1px solid rgba(0,95,134,.16);background:#005f8614;color:var(--brand-dark);font-size:.8rem;font-weight:700}.settings-placeholder-panel{max-width:760px;display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:18px;background:var(--surface)}.settings-placeholder-panel>svg{width:42px;height:42px;padding:10px;border:1px solid var(--line);border-radius:10px;color:var(--brand);background:var(--surface-soft)}.settings-placeholder-panel div{display:grid;gap:3px}.settings-placeholder-panel strong{color:var(--brand-deep);font-size:.95rem}.settings-placeholder-panel span{color:var(--muted);font-size:.8rem;line-height:1.45}.global-ai-panel{max-width:1180px;display:grid;gap:18px;border:1px solid var(--line);border-radius:12px;padding:20px;background:var(--surface)}.global-ai-summary-card{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(360px,1.1fr);gap:18px;align-items:stretch;border:1px solid var(--line);border-radius:12px;padding:16px;background:var(--surface-soft)}.global-ai-summary-main{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;align-items:start;min-width:0}.global-ai-summary-main>svg{width:44px;height:44px;padding:10px;border:1px solid var(--line);border-radius:10px;color:var(--brand);background:var(--surface)}.global-ai-summary-main div{display:grid;gap:4px;min-width:0}.global-ai-summary-main strong{color:var(--brand-deep);font-size:1rem}.global-ai-summary-main p{margin:0;color:var(--muted);font-size:.82rem;line-height:1.45}.global-ai-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0}.global-ai-summary-grid div{min-width:0;border:1px solid var(--line);border-radius:10px;padding:10px 11px;background:var(--surface)}.global-ai-summary-grid dt{margin-bottom:4px;color:var(--muted);font-size:.65rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.global-ai-summary-grid dd{margin:0;color:var(--ink);font-size:.86rem;font-weight:800;overflow-wrap:anywhere}.global-ai-status{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;align-items:center;padding-bottom:16px;border-bottom:1px solid var(--line)}.global-ai-status>svg{width:42px;height:42px;padding:10px;border:1px solid var(--line);border-radius:10px;color:var(--brand);background:var(--surface-soft)}.global-ai-status div{display:grid;gap:3px}.global-ai-status strong{color:var(--brand-deep);font-size:.95rem}.global-ai-status span{color:var(--muted);font-size:.8rem;line-height:1.45}.global-ai-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.global-ai-field{display:grid;gap:6px;color:var(--muted);font-size:.78rem;font-weight:700}.global-ai-field:last-child{grid-column:1 / -1}.global-ai-field input,.global-ai-field select{width:100%;min-height:44px;border:1px solid var(--input-border);border-radius:8px;padding:0 11px;color:var(--ink);background:var(--input-bg);font:inherit;font-weight:500}.global-ai-field input:focus,.global-ai-field select:focus{outline:2px solid var(--focus-ring);outline-offset:1px;border-color:var(--brand)}.global-ai-model-row{display:flex;gap:6px}.global-ai-model-row select,.global-ai-model-row input{flex:1;min-width:0}.global-ai-refresh{flex:none;width:44px;min-height:44px;border:1px solid var(--input-border);border-radius:8px;background:var(--surface-muted);color:var(--muted);display:flex;align-items:center;justify-content:center;cursor:pointer}.global-ai-refresh:hover{border-color:var(--brand);color:var(--brand)}.global-ai-key-row{display:flex;gap:6px}.global-ai-key-row input{flex:1;min-width:0;font-family:monospace;letter-spacing:.5px}.global-ai-key-btn{flex:none;width:44px;min-height:44px;border:1px solid var(--input-border);border-radius:8px;background:var(--surface-muted);color:var(--muted);display:flex;align-items:center;justify-content:center;cursor:pointer}.global-ai-key-btn:hover{border-color:var(--brand);color:var(--brand)}.ai-tabs{display:flex;gap:0;border-bottom:2px solid var(--line);margin-bottom:16px}.ai-tabs button{display:flex;align-items:center;gap:7px;padding:10px 18px;border:0;border-bottom:2px solid transparent;margin-bottom:-2px;background:transparent;color:var(--muted);font:inherit;font-size:.84rem;font-weight:600;cursor:pointer;transition:color .1s,border-color .1s}.ai-tabs button:hover{color:var(--ink)}.ai-tabs button.active{color:var(--brand);border-bottom-color:var(--brand)}.ai-tabs button:disabled{opacity:.5;cursor:default}.btec-banner{padding:9px 13px;border:1px solid var(--line);border-left:3px solid var(--brand);border-radius:6px;background:var(--surface-soft);color:var(--ink);font-size:.82rem;margin-bottom:14px}.btec-banner.error{border-left-color:#b42318;color:#b42318}.btec-summary{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:14px;font-size:.82rem;color:var(--muted)}.btec-summary strong{color:var(--ink)}.btec-assessment-context{font-size:.82rem;color:var(--muted);margin:-4px 0 14px}.btec-criteria-snapshot{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 14px;padding:12px 14px;border:1px solid var(--line);border-left:3px solid var(--color-primary);border-radius:8px;background:var(--surface-soft)}.btec-criteria-snapshot p{margin:3px 0 0;color:var(--muted);font-size:.8rem}.btec-criteria-snapshot.saved{border-left-color:#3f7d58}.btec-criteria-snapshot.intervention{border-left-color:#a45a52}.btec-criteria-snapshot-actions{display:flex;flex-wrap:wrap;gap:8px;flex:0 0 auto}.btec-criteria-snapshot.compact{justify-content:flex-start;gap:9px;padding:9px 12px}.btec-criteria-snapshot.compact>svg{flex:0 0 auto;color:#3f7d58}.btec-criteria-preview{margin-bottom:14px;max-height:320px;overflow:auto}.btec-grading-panel>h3{margin-bottom:12px}.btec-grading-flow{overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.btec-grading-step{padding:15px 16px;border-bottom:1px solid var(--line)}.btec-grading-step:last-child{border-bottom:0}.btec-grading-step-heading{display:grid;grid-template-columns:26px minmax(0,1fr);align-items:start;gap:10px;margin-bottom:12px}.btec-grading-step-heading.with-action{grid-template-columns:26px minmax(0,1fr) auto;align-items:center}.btec-grading-step-heading h4{margin:0;color:var(--brand-dark);font-size:.88rem}.btec-grading-step-heading p{margin:3px 0 0;color:var(--muted);font-size:.74rem;line-height:1.4}.btec-grading-step-number{width:26px;height:26px;display:grid;place-items:center;border:1px solid rgba(0,95,134,.3);border-radius:50%;color:var(--brand);background:#005f860f;font-size:.72rem;font-weight:800}.btec-grading-student-toolbar{display:grid;grid-template-columns:minmax(260px,440px) auto minmax(160px,1fr);align-items:end;gap:10px;padding-left:36px}.btec-grading-student-toolbar label,.btec-grading-final-row label{display:grid;gap:5px;min-width:0;color:var(--muted);font-size:.72rem;font-weight:700}.btec-grading-student-toolbar select,.btec-grading-final-row select{width:100%;min-height:40px;border:1px solid var(--input-border);border-radius:7px;padding:0 10px;color:var(--ink);background:var(--input-bg);font:inherit;font-size:.82rem}.btec-grading-student-toolbar select:focus,.btec-grading-final-row select:focus{outline:2px solid var(--focus-ring);outline-offset:1px;border-color:var(--brand)}.btec-grading-student-toolbar .primary-action,.btec-grading-final-row .primary-action{min-height:40px}.btec-grading-ai-status{align-self:center;color:var(--muted);font-size:.76rem}.btec-grading-ai-status strong{color:var(--brand-dark)}.btec-grading-empty{min-height:52px;display:flex;align-items:center;gap:9px;margin-left:36px;border:1px dashed var(--line);border-radius:7px;padding:10px 12px;color:var(--muted);background:var(--surface-soft);font-size:.8rem}.btec-grading-empty>svg{flex:0 0 auto;color:var(--brand)}.btec-grading-results-table th:first-child,.btec-grading-results-table td:first-child{width:110px}.btec-grading-results-table td:first-child small{display:block;margin-top:2px;color:var(--muted);font-size:.68rem;font-weight:500}.btec-grading-results-table th:nth-child(2),.btec-grading-results-table td:nth-child(2),.btec-grading-results-table th:nth-child(3),.btec-grading-results-table td:nth-child(3){width:150px}.btec-grading-extraction,.btec-grading-review-warning{display:flex;align-items:center;flex-wrap:wrap;gap:5px;margin:0 0 10px 36px;padding:8px 10px;border:1px solid var(--line);border-radius:7px;background:var(--surface-soft);color:var(--muted);font-size:.72rem}.btec-grading-extraction strong{color:var(--brand-dark)}.btec-grading-review-warning{align-items:flex-start;border-color:#a66b0059;background:#a66b000f}.btec-grading-review-warning strong{color:#795000}.btec-grading-extraction.warning{border-color:#a66b0059;background:#a66b000f;color:#795000}.btec-grading-final-row{display:grid;grid-template-columns:minmax(220px,320px) max-content;align-items:end;gap:10px;padding-left:36px}.btec-grading-approved{margin:15px 0 0 36px;padding-top:14px;border-top:1px solid var(--line)}.btec-grading-approved>h4{margin:0 0 9px;color:var(--brand-dark);font-size:.82rem}.btec-grading-empty-text{margin:0;color:var(--muted);font-size:.78rem}.btec-grading-bulk-action{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:12px;padding:11px 13px;border:1px solid var(--line);border-radius:8px;background:var(--surface-soft)}.btec-grading-bulk-action>div{display:grid;gap:2px}.btec-grading-bulk-action strong{color:var(--brand-dark);font-size:.8rem}.btec-grading-bulk-action span{color:var(--muted);font-size:.72rem;line-height:1.4}@media(max-width:720px){.btec-criteria-snapshot{align-items:stretch;flex-direction:column}.btec-criteria-snapshot.compact{align-items:center;flex-direction:row}.btec-criteria-snapshot-actions>button{flex:1 1 auto}.btec-grading-step{padding:14px 12px}.btec-grading-step-heading.with-action{grid-template-columns:26px minmax(0,1fr)}.btec-grading-step-heading.with-action>button{grid-column:1 / -1;width:100%}.btec-grading-student-toolbar,.btec-grading-final-row{grid-template-columns:1fr;padding-left:0}.btec-grading-student-toolbar .primary-action,.btec-grading-final-row .primary-action{width:100%}.btec-grading-empty,.btec-grading-approved,.btec-grading-extraction,.btec-grading-review-warning{margin-left:0}.btec-grading-bulk-action{align-items:stretch;flex-direction:column}.btec-grading-bulk-action>button{width:100%}}.btec-edit-panel{margin-top:16px;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--surface-soft)}.btec-edit-panel h4{margin:0 0 12px;font-size:.9rem;color:var(--brand-dark)}.btec-window-create-wizard{display:grid;gap:16px;margin-top:0;scroll-margin-top:84px}.btec-window-create-wizard>h4{margin-bottom:0}.btec-window-stepper{grid-template-columns:repeat(3,minmax(0,1fr))}.btec-window-stepper .btec-step span{position:relative;overflow:hidden;background:var(--line)}.btec-window-stepper .btec-step span:after{content:"";position:absolute;inset:0;border-radius:inherit;background:var(--brand);transform:scaleX(0);transform-origin:left center;transition:transform .55s cubic-bezier(.22,1,.36,1)}.btec-window-stepper .btec-step.complete span:after{transform:scaleX(1)}.btec-window-stepper .btec-step.active:not(.complete) span,.btec-window-stepper .btec-step.active.available:not(.complete):hover span{background:var(--line)}.btec-board-create-stepper{margin-bottom:2px}.btec-window-wizard-step{display:grid;gap:12px}.btec-window-wizard-heading{display:grid;gap:3px}.btec-window-wizard-heading>strong{color:var(--brand-dark);font-size:.88rem}.btec-window-wizard-heading>span{color:var(--muted);font-size:.76rem}.btec-window-aim-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px}.btec-window-date-grid{display:grid;grid-template-columns:minmax(220px,1.25fr) repeat(2,minmax(160px,1fr));gap:10px}.btec-window-date-grid>label,.btec-window-assessor{display:grid;gap:5px;color:var(--muted);font-size:.74rem;font-weight:700}.btec-window-date-grid input,.btec-window-assessor select{width:100%;min-height:38px;box-sizing:border-box;border:1px solid var(--line);border-radius:6px;padding:7px 9px;color:var(--ink);background:var(--surface);font:inherit;font-size:.82rem}.btec-window-date-grid>div{display:grid;align-content:center;gap:4px;border:1px solid var(--line);border-radius:6px;padding:8px 10px;background:var(--surface)}.btec-window-date-grid>div span{color:var(--muted);font-size:.7rem;font-weight:700}.btec-window-date-grid>div strong{color:var(--brand-dark);font-size:.82rem}.btec-window-roster-info{margin:0;border-left:3px solid var(--brand);padding:8px 10px;color:var(--ink);background:var(--surface);font-size:.8rem}.btec-window-assessor{max-width:360px}.btec-window-generation-block{display:grid;justify-items:start;gap:8px;border:1px solid rgba(180,35,24,.24);border-left:3px solid #b42318;border-radius:7px;padding:12px;background:#fff8f7}.btec-window-generation-block strong{color:#b42318;font-size:.86rem}.btec-window-generation-block p{margin:0;color:var(--ink);font-size:.8rem;line-height:1.45}.btec-window-wizard-actions{margin:0;padding-top:2px}.btec-window-detail-page{display:grid;gap:16px}.btec-window-detail-back{width:fit-content}.btec-window-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;border-bottom:1px solid var(--line);padding-bottom:14px}.btec-window-detail-header h4{margin:4px 0;color:var(--brand-dark);font-size:1.08rem}.btec-window-detail-header span,.btec-window-detail-header p{margin:0;color:var(--muted);font-size:.78rem}.btec-window-detail-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.btec-window-generate-actions{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0}.btec-window-detail-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.btec-window-detail-grid>div{display:grid;gap:5px;border:1px solid var(--line);border-radius:7px;padding:10px;background:var(--surface-soft)}.btec-window-detail-grid span{color:var(--muted);font-size:.7rem;font-weight:700}.btec-window-detail-grid strong{color:var(--brand-dark);font-size:.82rem}.btec-project-workspace{display:grid;gap:14px;min-width:0}.btec-project-context{display:grid;min-width:0;gap:3px;padding:0 2px}.btec-project-context>span{min-width:0;color:var(--muted);font-size:.76rem;font-weight:700;overflow-wrap:anywhere}.btec-project-context h1{margin:0;color:var(--brand-dark);font-size:clamp(1.15rem,1.5vw,1.4rem);line-height:1.3;overflow-wrap:anywhere}.btec-project-context h1:focus-visible{border-radius:4px;outline:2px solid var(--brand);outline-offset:4px}.btec-project-section-stack{display:grid;gap:14px;min-width:0}.btec-project-section-stack>*{min-width:0}.btec-project-section-stack .btec-table-wrap{width:100%}.btec-project-section-stack .btec-table{min-width:680px}.btec-project-overview-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;border-top:1px solid var(--line);border-left:1px solid var(--line)}.btec-project-overview-list>div{min-width:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:9px 10px}.btec-project-overview-list dt{margin:0 0 4px;color:var(--muted);font-size:.68rem;font-weight:700}.btec-project-overview-list dd{margin:0;color:var(--ink);font-size:.8rem;font-weight:700;overflow-wrap:anywhere}.btec-project-overview-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.btec-project-section-placeholder h2{margin:0;color:var(--brand-dark);font-size:1rem}.historical-import-panel{display:grid;gap:14px;box-shadow:none}.historical-import-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.historical-import-heading h3{margin:3px 0 5px}.historical-import-heading p{max-width:780px;margin:0;color:var(--muted);font-size:.8rem;line-height:1.5}.historical-import-heading .secondary-action{flex:none}.historical-import-file-input{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.historical-import-summary{display:grid;grid-template-columns:repeat(6,minmax(100px,1fr));border:1px solid var(--line);border-radius:7px;background:var(--surface-soft)}.historical-import-summary span{padding:9px 10px;border-right:1px solid var(--line);color:var(--muted);font-size:.74rem}.historical-import-summary span:last-child{border-right:0}.historical-import-summary strong{color:var(--ink)}.historical-import-summary .is-matched strong{color:#237247}.historical-import-table-wrap{max-height:min(48vh,520px);border:1px solid var(--line);border-radius:7px}.historical-import-table{min-width:860px!important}.historical-import-table td:nth-child(3) span{max-width:360px;overflow-wrap:anywhere}.historical-import-status{display:inline-flex!important;width:fit-content;margin:0!important;border:1px solid var(--line);border-radius:999px;padding:3px 8px;font-size:.7rem!important;font-weight:700;white-space:nowrap}.historical-import-status.is-matched{border-color:#23724759;color:#237247;background:#23724714}.historical-import-status.is-unmatched,.historical-import-status.is-ambiguous{border-color:#8f5b0f59;color:#80540f;background:#8f5b0f14}.historical-import-status.is-conflict,.historical-import-status.is-invalid{border-color:#b423184d;color:#b42318;background:#b423180f}.historical-import-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.historical-import-confirmation{display:grid;gap:12px;border-left:3px solid var(--brand);padding:11px 12px;background:var(--surface-soft)}.historical-import-confirmation>p{margin:0;color:var(--muted);font-size:.8rem}.historical-import-confirmation>p[role=alert]{color:#b42318}.historical-import-confirmation label{display:flex;align-items:flex-start;gap:9px;color:var(--ink);font-size:.8rem;line-height:1.45;cursor:pointer}.historical-import-confirmation input{margin-top:2px;accent-color:var(--brand)}.historical-import-empty,.historical-import-result{border:1px dashed var(--line);border-radius:7px;padding:18px;color:var(--muted);background:var(--surface-soft);font-size:.8rem;text-align:center}.historical-import-result{border-style:solid;color:var(--ink)}.btec-window-reopen-history{display:grid;gap:9px}.btec-window-reopen-history h4{margin:0;color:var(--brand-dark);font-size:.9rem}.btec-window-reopen-history>p{margin:0;color:var(--muted);font-size:.8rem}.btec-edit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin-bottom:12px}.btec-edit-grid label{display:flex;flex-direction:column;gap:4px;font-size:.74rem;color:var(--muted);font-weight:600}.btec-edit-grid input,.btec-edit-grid select{padding:7px 9px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink);font:inherit;font-size:.82rem}.btec-roster-picker{margin-bottom:12px}.btec-roster-picker>strong{display:block;font-size:.76rem;color:var(--muted);margin-bottom:6px}.btec-roster-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:4px 14px;max-height:220px;overflow-y:auto;padding:8px;border:1px solid var(--line);border-radius:6px;background:var(--surface)}.btec-roster-item{display:flex;align-items:center;gap:7px;font-size:.8rem;color:var(--ink);font-weight:500}@media(max-width:720px){.btec-window-date-grid{grid-template-columns:1fr}.btec-window-stepper{gap:6px}.btec-window-detail-header{flex-direction:column}.btec-window-detail-actions{justify-content:flex-start}.btec-window-detail-grid{grid-template-columns:1fr}.btec-project-workspace,.btec-project-section-stack{gap:10px}.btec-project-context{padding-inline:0}.historical-import-heading{flex-direction:column}.historical-import-heading .secondary-action{width:100%}.historical-import-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.historical-import-summary span{border-bottom:1px solid var(--line)}.historical-import-summary span:nth-child(2n){border-right:0}.historical-import-summary span:nth-last-child(-n+2){border-bottom:0}.historical-import-actions{flex-direction:column-reverse}.historical-import-actions .primary-action,.historical-import-actions .secondary-action{width:100%}.btec-project-overview-list{grid-template-columns:repeat(2,minmax(0,1fr))}.btec-project-overview-actions .primary-action,.btec-project-overview-actions .secondary-action{width:100%;justify-content:center}}@media(prefers-reduced-motion:reduce){.btec-window-stepper .btec-step span:after{transition-duration:.01ms}}.global-ai-school-card-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;justify-content:space-between;margin-top:6px}.global-ai-users-section{margin-top:0;padding-top:0;border-top:0}.global-ai-users-section h3{margin:6px 0 4px;font-size:.95rem}.global-ai-users-section p{margin:0 0 10px;font-size:.82rem;color:var(--muted)}.global-ai-users-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin:12px 0 8px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface-soft)}.global-ai-select-all,.global-ai-user-select{display:inline-flex;align-items:center;gap:8px;color:var(--ink);font-size:.8rem;font-weight:700}.global-ai-select-all input,.global-ai-user-select input{width:16px;height:16px;accent-color:var(--brand)}.global-ai-bulk-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px}.global-ai-bulk-actions>span{font-size:.76rem;color:var(--muted);font-weight:700}.global-ai-bulk-actions .secondary-action{min-height:34px;padding:0 12px;font-size:.78rem}.global-ai-users-list{display:grid;gap:6px;margin-top:10px}.global-ai-user-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:9px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.global-ai-user-row.disabled{opacity:.55}.global-ai-user-info{flex:1;min-width:0;display:flex;flex-direction:column}.global-ai-user-info strong{font-size:.84rem}.global-ai-user-info span{font-size:.72rem;color:var(--muted)}.global-ai-user-row select{height:34px;min-width:140px;border:1px solid var(--input-border);border-radius:8px;padding:0 10px;background:var(--input-bg);color:var(--ink);font:inherit;font-size:.8rem}.global-ai-user-source{flex:none;min-width:130px;text-align:right;font-size:.76rem;color:var(--muted)}.global-ai-user-toggle{cursor:pointer;flex:none}.global-ai-user-toggle input{display:none}.global-ai-toggle-track{display:block;width:40px;height:22px;border-radius:20px;background:var(--line);position:relative;transition:background .15s ease}.global-ai-toggle-track.on{background:var(--brand)}.global-ai-toggle-thumb{position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;transition:left .15s ease}.global-ai-toggle-track.on .global-ai-toggle-thumb{left:20px}.global-ai-key-help{display:grid;gap:2px;border-left:3px solid var(--line);padding-left:9px;color:var(--muted);font-size:.74rem;line-height:1.35}.global-ai-key-help strong{color:var(--ink);font-size:.76rem}.global-ai-key-help span{color:inherit;font-weight:500}.global-ai-key-help.active{border-left-color:var(--brand);color:var(--brand-deep)}.global-ai-key-help.warning{border-left-color:#d97706;color:#92400e}.global-ai-key-help.danger{border-left-color:#dc2626;color:#b91c1c}.global-ai-options{display:grid;gap:9px}.global-ai-options label{display:flex;align-items:center;gap:9px;color:var(--ink);font-size:.84rem;font-weight:700}.global-ai-options input{width:16px;height:16px;accent-color:var(--brand)}.global-ai-options input:disabled+span{color:var(--muted)}.my-ai-dialog{position:relative;width:min(100%,520px);max-height:calc(100svh - 40px);overflow-y:auto;margin:auto;padding:28px 30px;border-radius:14px;background:var(--surface);box-shadow:0 24px 80px #001e2d3d;display:flex;flex-direction:column;gap:12px;animation:method-reveal .22s ease both}.my-ai-dialog h2{margin:0}.my-ai-dialog>p{margin:0 0 4px;color:var(--muted);font-size:.84rem}.my-ai-locked{display:flex;gap:12px;align-items:flex-start;padding:16px;border:1px solid var(--line);border-radius:10px;background:var(--surface-muted);color:var(--muted)}.my-ai-locked strong{display:block;color:var(--ink);font-size:.88rem;margin-bottom:2px}.my-ai-locked span{font-size:.78rem}.my-ai-status{display:flex;gap:11px;align-items:flex-start;padding:13px 15px;border-radius:10px;border:1px solid var(--line);background:var(--surface-muted)}.my-ai-status.ok{border-left:3px solid var(--brand)}.my-ai-status.warning{border-left:3px solid #d97706}.my-ai-status strong{display:block;font-size:.86rem;color:var(--ink)}.my-ai-status span{font-size:.76rem;color:var(--muted)}.my-ai-label{font-size:.78rem;font-weight:700;color:var(--ink)}.my-ai-sources{display:grid;gap:8px}.my-ai-source{display:flex;gap:10px;align-items:center;padding:11px 13px;border:1px solid var(--input-border);border-radius:10px;cursor:pointer}.my-ai-source.active{border-color:var(--brand);background:color-mix(in srgb,var(--brand) 6%,transparent)}.my-ai-source.muted strong{color:var(--muted)}.my-ai-source input{width:16px;height:16px;accent-color:var(--brand);flex:none}.my-ai-source span{display:flex;flex-direction:column}.my-ai-source strong{font-size:.82rem;color:var(--ink)}.my-ai-source small{font-size:.72rem;color:var(--muted)}.my-ai-own{display:grid;gap:12px;padding:14px;border:1px solid var(--line);border-radius:10px;background:var(--surface-muted)}.my-ai-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:4px}.global-ai-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-top:2px}.global-ai-actions small{color:var(--muted);font-size:.76rem}.global-ai-action-buttons{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.global-ai-test-result{display:grid;gap:3px;border:1px solid var(--line);border-radius:9px;padding:11px 13px;font-size:.8rem}.global-ai-test-result.success{border-color:#15803d47;color:#166534;background:#f0fdf4}.global-ai-test-result.error{border-color:#b91c1c38;color:#b91c1c;background:#fef2f2}.global-ai-test-result strong{font-size:.84rem}.global-ai-test-result span{color:inherit;line-height:1.4}.global-ai-test-result.compact{padding:10px 11px;font-size:.76rem}.global-ai-school-access{display:grid;grid-template-columns:minmax(260px,.95fr) minmax(260px,1.05fr);gap:18px;align-items:start;padding:16px;border:1px solid var(--line);border-radius:10px;background:var(--surface-soft)}.global-ai-school-access h3{margin:6px 0;color:var(--ink);font-size:1rem}.global-ai-school-access p{margin:0;color:var(--muted);font-size:.8rem;line-height:1.5}.global-ai-school-checks{display:grid;gap:9px}.global-ai-school-checks label,.global-ai-clear-school-key{display:flex;align-items:center;gap:9px;color:var(--ink);font-size:.83rem;font-weight:700}.global-ai-school-checks input,.global-ai-clear-school-key input{width:16px;height:16px;accent-color:var(--brand)}.global-ai-school-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px}.global-ai-school-card{display:grid;gap:14px;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.global-ai-school-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.global-ai-school-card header div{display:grid;gap:3px}.global-ai-school-card header small{color:var(--muted);font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.global-ai-school-card header strong{color:var(--ink);font-size:.95rem}.global-ai-school-card header>span{flex:0 0 auto;display:inline-flex;align-items:center;min-height:25px;padding:0 9px;border-radius:999px;color:var(--brand);background:var(--soft);font-size:.68rem;font-weight:800}.global-ai-options.compact{gap:7px}.global-ai-form-grid.compact{grid-template-columns:1fr;gap:10px}.global-ai-form-grid.compact .global-ai-field:last-child{grid-column:auto}.global-ai-clear-school-key input:disabled+span{color:var(--muted)}.global-ai-toast{position:fixed;right:24px;bottom:24px;z-index:1200;width:min(390px,calc(100vw - 32px));display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border:1px solid var(--line);border-radius:12px;padding:13px 14px;background:var(--surface);box-shadow:0 18px 42px #0f172a2e}.global-ai-toast.success{border-color:#15803d47;background:#f0fdf4;color:#166534}.global-ai-toast.error{border-color:#b91c1c3d;background:#fef2f2;color:#b91c1c}.global-ai-toast div{display:grid;gap:3px;min-width:0}.global-ai-toast strong{font-size:.86rem}.global-ai-toast span{color:inherit;font-size:.78rem;line-height:1.4}.global-ai-toast button{flex:0 0 auto;width:28px;height:28px;display:grid;place-items:center;border:0;border-radius:7px;color:inherit;background:transparent;cursor:pointer}.global-ai-toast button:hover{background:#0000000f}.platform-toast{position:fixed;right:24px;bottom:24px;z-index:1200;width:min(390px,calc(100vw - 32px));display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border:1px solid var(--line);border-radius:12px;padding:13px 14px;background:var(--surface);box-shadow:0 18px 42px #0f172a2e;font-size:.82rem;line-height:1.4}.platform-toast.success{border-color:#15803d47;background:#f0fdf4;color:#166534}.platform-toast.error{border-color:#b91c1c3d;background:#fef2f2;color:#b91c1c}.platform-toast span{color:inherit;min-width:0}.platform-toast button{flex:0 0 auto;width:28px;height:28px;display:grid;place-items:center;border:0;border-radius:7px;color:inherit;background:transparent;cursor:pointer}.platform-toast button:hover{background:#0000000f}@media(max-width:640px){.platform-toast{right:16px;bottom:16px}}.member-home{display:flex;align-items:flex-start;gap:20px;margin-top:40px;padding:34px;border-left:4px solid var(--brand);background:var(--surface)}.member-home>svg{color:var(--brand)}.member-home h2{margin:0 0 8px}.member-home p{margin:0;color:var(--muted);line-height:1.6}.care-role-switch{display:flex;align-items:center;gap:12px;margin-bottom:14px}.care-role-switch-label{color:var(--muted);font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.care-role-switch-group{display:inline-grid;grid-auto-flow:column;gap:4px;padding:4px;border:1px solid var(--line);border-radius:12px;background:var(--surface-soft)}.care-role-switch-btn{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 18px;border:1px solid transparent;border-radius:9px;color:var(--brand);background:transparent;cursor:pointer;font-size:.84rem;font-weight:600;transition:background .15s,color .15s,border-color .15s,box-shadow .15s}.care-role-switch-btn:hover:not(.active){background:#005f860f}.care-role-switch-btn.active{color:#fff;border-color:var(--brand-deep);background:var(--brand);box-shadow:0 4px 12px #005f8638}.care-role-switch-btn:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}@media(max-width:720px){.care-role-switch{flex-direction:column;align-items:flex-start;gap:8px}.care-role-switch-group{width:100%;grid-auto-columns:1fr}}.student-care-workspace{display:grid;gap:14px}.counselor-page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding-bottom:4px}.counselor-new-referral{min-height:42px;padding-inline:16px;border-radius:8px}.counselor-header-actions{display:flex;align-items:center;gap:8px}.counselor-header-actions .secondary-action.active{color:var(--brand-deep);border-color:#005f8659;background:#005f860f}.counselor-direct-meeting{display:flex;flex-direction:column;gap:16px;padding:18px 20px;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:none}.counselor-direct-meeting-header{display:grid;gap:4px;padding-bottom:14px;border-bottom:1px solid var(--line)}.counselor-direct-meeting h3{margin:0;color:var(--brand-deep);font-size:.98rem}.counselor-direct-meeting p{margin:0;color:var(--muted);font-size:.76rem}.counselor-direct-meeting-grid{display:flex;flex-wrap:wrap;align-items:end;gap:14px}.counselor-direct-meeting label{display:grid;gap:6px;color:var(--muted);font-size:.7rem;font-weight:600}.counselor-direct-meeting-student{flex:1 1 240px;min-width:220px}.counselor-direct-meeting-with{flex:0 0 auto}.counselor-direct-meeting-date{flex:0 0 150px}.counselor-direct-meeting-time{flex:0 0 130px}.counselor-direct-meeting input,.counselor-direct-meeting select{width:100%;min-height:40px;border:1px solid var(--line);border-radius:8px;padding:0 10px;outline:0;color:var(--ink);background:var(--surface)}.counselor-direct-meeting input:focus,.counselor-direct-meeting select:focus{border-color:var(--brand);box-shadow:0 0 0 2px var(--focus-ring)}.counselor-direct-meeting-recur{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:center;gap:16px 32px;padding:16px 14px;border:1px dashed var(--line);border-radius:10px;background:var(--surface-soft);text-align:center}.counselor-direct-meeting-recur .counselor-recur-day-chips{justify-content:center}.counselor-direct-meeting-recur .counselor-recur-hint{text-align:center}.counselor-recur-label{display:block;margin-bottom:6px;color:var(--muted);font-size:.7rem;font-weight:600}.counselor-recur-day-chips{display:inline-flex;flex-wrap:wrap;gap:6px}.counselor-recur-day-chip{min-width:42px;min-height:36px;padding:0 10px;border:1px solid var(--line);border-radius:8px;color:var(--brand);background:var(--surface);font-size:.72rem;font-weight:600;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.counselor-recur-day-chip:hover{background:#005f8614}.counselor-recur-day-chip.active{color:#fff;background:var(--brand);border-color:var(--brand)}.counselor-recur-months select{min-height:36px;border:1px solid var(--line);border-radius:8px;padding:0 10px;outline:0;color:var(--ink);background:var(--surface)}.counselor-recur-months select:disabled{color:var(--muted);background:var(--surface-soft);cursor:not-allowed}.counselor-recur-months select:focus{border-color:var(--brand);box-shadow:0 0 0 2px var(--focus-ring)}.counselor-recur-hint{flex:1 1 100%;margin:0;color:var(--muted);font-size:.68rem;line-height:1.4}.counselor-direct-meeting-footer{display:flex;flex-direction:column;align-items:flex-end;gap:10px;padding-top:14px;border-top:1px solid var(--line)}.counselor-direct-meeting-footer .counselor-inline-error{align-self:stretch}.counselor-direct-meeting-footer .primary-action{min-width:180px}@media(max-width:880px){.counselor-direct-meeting-student,.counselor-direct-meeting-with{flex:1 1 100%}.counselor-direct-meeting-footer{align-items:stretch}}.counselor-student-search{position:relative}.counselor-student-results{position:absolute;top:calc(100% + 5px);left:0;right:0;z-index:12;max-height:240px;overflow-y:auto;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:0 12px 28px #001e2d1f}.counselor-student-results button{width:100%;display:grid;gap:2px;border:0;border-bottom:1px solid var(--line);padding:9px 10px;color:var(--muted);background:var(--surface);text-align:left}.counselor-student-results button:hover{background:var(--surface-soft)}.counselor-student-results strong{color:var(--brand-deep);font-size:.76rem}.counselor-student-results span{font-size:.68rem}.counselor-student-results p{margin:0;padding:12px 10px;color:var(--muted);font-size:.72rem}.counselor-inbox-card .student-care-card-header{grid-template-columns:44px minmax(0,1fr) auto;align-items:center;padding-bottom:14px}.counselor-archive-toggle{min-height:38px;white-space:nowrap}.counselor-archive-toggle.active{color:var(--brand-deep);border-color:#005f8659;background:#005f860f}.counselor-date-filter{min-height:42px;display:flex;align-items:center;gap:10px;padding:0 12px;border:1px solid var(--line);border-radius:9px;color:var(--muted);background:var(--surface);font-size:.74rem;font-weight:600;white-space:nowrap}.counselor-date-filter input{border:0;outline:0;color:var(--muted);background:transparent;font:inherit}.counselor-toolbar-select{min-height:42px;max-width:180px;border:1px solid var(--line);border-radius:9px;padding:0 30px 0 10px;color:var(--muted);background:var(--surface);font-size:.76rem}.counselor-operations{display:grid;gap:10px}.counselor-monthly-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line);border-radius:10px;background:var(--surface)}.counselor-monthly-stats>div{display:flex;align-items:center;justify-content:space-between;min-height:56px;padding:0 14px;border-right:1px solid var(--line)}.counselor-monthly-stats>div:last-child{border-right:0}.counselor-monthly-stats span{color:var(--muted);font-size:.74rem}.counselor-monthly-stats strong{color:var(--brand);font-size:1.05rem}.counselor-operations-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:10px}.counselor-operation-panel{border:1px solid var(--line);border-radius:10px;background:var(--surface);overflow:hidden}.counselor-operation-panel>header{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 14px;border-bottom:1px solid var(--line)}.counselor-operation-panel h3{margin:0;color:var(--brand-deep);font-size:.86rem}.counselor-operation-panel header>span{min-width:24px;height:24px;display:grid;place-items:center;border-radius:6px;color:#fff;background:var(--brand);font-size:.7rem}.counselor-operation-panel header input{min-height:32px;border:1px solid var(--line);border-radius:6px;padding:0 7px;color:var(--muted);background:var(--surface)}.counselor-calendar-quick{display:inline-flex;gap:4px;padding:3px;border:1px solid var(--line);border-radius:8px;background:var(--surface-soft)}.counselor-calendar-chip{border:0;border-radius:6px;padding:4px 12px;color:var(--brand);background:transparent;font-size:.72rem;font-weight:600;cursor:pointer;transition:background .15s ease,color .15s ease}.counselor-calendar-chip:hover{background:#005f8614}.counselor-calendar-chip.active{color:#fff;background:var(--brand);box-shadow:0 1px 3px #001e2d2e}.counselor-full-calendar{border:1px solid var(--line);border-radius:10px;background:var(--surface);padding:14px}.counselor-full-calendar-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.counselor-full-calendar-head h3{margin:0;color:var(--brand-deep);font-size:.9rem}.counselor-full-calendar-head small{color:var(--muted);font-size:.7rem}.counselor-full-calendar-nav{display:inline-flex;align-items:center;gap:10px}.counselor-full-calendar-nav strong{min-width:140px;text-align:center;color:var(--brand-deep);font-size:.82rem;text-transform:capitalize}.counselor-full-calendar-nav button{width:30px;height:30px;border:1px solid var(--line);border-radius:7px;color:var(--brand);background:var(--surface);font-size:1rem;line-height:1;cursor:pointer}.counselor-full-calendar-nav button:hover{background:#005f8614}.counselor-full-calendar-close{border:1px solid var(--line);border-radius:7px;padding:5px 12px;color:var(--brand);background:var(--surface);font-size:.72rem;font-weight:600;cursor:pointer}.counselor-full-calendar-close:hover{background:#005f8614}.counselor-full-calendar-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin-bottom:6px}.counselor-full-calendar-weekdays span{text-align:center;color:var(--muted);font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.counselor-full-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.counselor-full-calendar-cell{position:relative;min-height:58px;display:flex;align-items:flex-start;justify-content:flex-start;border:1px solid var(--line);border-radius:8px;padding:6px 8px;color:var(--brand-deep);background:var(--surface);font-size:.8rem;cursor:pointer;transition:border-color .15s ease,background .15s ease}.counselor-full-calendar-cell:hover{border-color:var(--brand);background:#005f860d}.counselor-full-calendar-cell.muted{color:var(--muted);background:var(--surface-soft);opacity:.6}.counselor-full-calendar-cell.today{border-color:var(--brand)}.counselor-full-calendar-cell.selected{border-color:var(--brand);background:#005f861a;box-shadow:inset 0 0 0 1px var(--brand)}.counselor-full-calendar-day{font-weight:600}.counselor-full-calendar-badge{position:absolute;right:6px;bottom:6px;min-width:20px;height:20px;display:grid;place-items:center;padding:0 5px;border-radius:10px;color:#fff;background:var(--brand);font-size:.68rem;font-weight:700}.counselor-meeting-type-toggle{display:inline-flex;gap:6px;padding:3px;border:1px solid var(--line);border-radius:8px;background:var(--surface-soft)}.counselor-direct-meeting-with .counselor-meeting-type-toggle{display:flex;min-height:40px;padding:4px}.counselor-direct-meeting-with .counselor-calendar-chip{display:inline-flex;align-items:center;justify-content:center;padding:0 16px;border-radius:6px;white-space:nowrap}.counselor-meeting-tag{display:inline-block;align-self:flex-start;padding:0;font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--brand);background:transparent;border:0}.counselor-meeting-tag.parent{color:var(--brand-deep)}.counselor-full-calendar-day-list{margin-top:12px;border-top:1px solid var(--line);padding-top:10px;display:grid;gap:8px}.counselor-full-calendar-day-list article{display:grid;gap:3px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface-soft)}.counselor-full-calendar-day-list strong{color:var(--brand-deep);font-size:.8rem}.counselor-full-calendar-day-list small{color:var(--muted);font-size:.7rem}.counselor-full-calendar-day-list>p{margin:0;color:var(--muted);font-size:.74rem}.counselor-next-appointment{display:grid;grid-template-columns:110px minmax(0,1fr);align-items:center;gap:12px;padding:11px 14px;border-bottom:1px solid var(--line);background:#005f860a}.counselor-next-appointment>span{color:var(--brand);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.counselor-next-appointment>div{display:grid;gap:3px}.counselor-next-appointment strong{color:var(--brand-deep);font-size:.8rem}.counselor-next-appointment small{color:var(--muted);font-size:.7rem}.counselor-next-appointment p{margin:0;color:var(--muted);font-size:.72rem}.counselor-notification-list,.counselor-calendar-list{max-height:220px;overflow-y:auto}.counselor-notification-list>button{width:100%;display:grid;gap:3px;border:0;border-bottom:1px solid var(--line);padding:10px 14px;color:var(--muted);background:var(--surface);text-align:left}.counselor-notification-list>button:hover{background:var(--surface-soft)}.counselor-notification-list strong{color:var(--brand-deep);font-size:.78rem}.counselor-notification-list span,.counselor-notification-list small{font-size:.7rem}.counselor-notification-list>p,.counselor-calendar-list>p{margin:0;padding:18px 14px;color:var(--muted);font-size:.76rem}.counselor-calendar-list>article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:10px 14px;border-bottom:1px solid var(--line)}.counselor-calendar-list article>div:first-child{display:grid;gap:3px}.counselor-calendar-list article strong{color:var(--brand-deep);font-size:.78rem}.counselor-calendar-list article span{color:var(--muted);font-size:.7rem}.counselor-calendar-actions{display:flex;gap:6px}.counselor-calendar-actions button,.counselor-reschedule-form button{border:1px solid var(--line);border-radius:6px;padding:0 8px;color:var(--brand);background:var(--surface);font-size:.68rem}.counselor-reschedule-form{grid-column:1 / -1;display:flex;gap:6px}.counselor-reschedule-form input{min-height:32px;border:1px solid var(--line);border-radius:6px;padding:0 7px;color:var(--muted);background:var(--surface)}.referral-case-operations{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.referral-case-operations>section{min-width:0;padding:12px;border:1px solid var(--line);border-radius:8px}.referral-case-operations h4{margin:0 0 8px;color:var(--brand-deep);font-size:.78rem}.referral-case-operations section>p{margin:-4px 0 8px;color:var(--muted);font-size:.68rem}.referral-history-list,.referral-private-note-list{display:grid;gap:7px;max-height:150px;overflow-y:auto}.referral-private-note-list{max-height:118px;padding-right:3px}.referral-history-list>div{display:grid;gap:2px;padding-left:9px;border-left:2px solid rgba(0,95,134,.22)}.referral-history-list strong{color:var(--muted);font-size:.72rem}.referral-history-list span,.referral-private-note-list small{color:var(--muted);font-size:.65rem}.referral-case-operations form{display:grid;gap:6px;margin-bottom:9px}.referral-case-operations textarea{min-height:58px;border:1px solid var(--line);border-radius:7px;padding:8px;resize:vertical;color:var(--muted);background:var(--surface)}.referral-case-operations form button{justify-self:end;min-height:30px;border:0;border-radius:6px;padding:0 10px;color:#fff;background:var(--brand-deep);font-size:.7rem}.referral-private-note-list article{padding:8px;border-radius:6px;background:var(--surface-soft)}.referral-private-note-list p{margin:0 0 4px;color:var(--muted);font-size:.72rem;line-height:1.4}.referral-private-note-meta{display:flex;align-items:center;justify-content:space-between;gap:8px}.referral-private-note-meta button{min-height:24px;border:1px solid var(--line);border-radius:6px;padding:0 8px;color:var(--muted);background:var(--surface);font-size:.66rem;font-weight:700}.referral-private-note-meta button:hover:not(:disabled){color:var(--brand);border-color:#005f864d}.referral-private-note-meta button:disabled{opacity:.5}.referral-case-error{display:block;margin-bottom:7px;color:#a33b2b;font-size:.68rem}.student-care-page-heading{display:grid;gap:6px}.student-care-page-heading h2{margin:0;color:var(--muted);font-size:clamp(1.5rem,2vw,2rem);letter-spacing:-.04em}.student-care-breadcrumb{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:.82rem}.student-care-breadcrumb strong{color:var(--muted);font-weight:600}.student-care-alert{margin-top:0}.student-care-confirm-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:16px 18px;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:0 10px 26px #001e2d0f}.student-care-confirm-card h3{margin:4px 0 10px;color:var(--brand-deep);font-size:1rem}.student-care-confirm-card dl{display:flex;flex-wrap:wrap;gap:10px;margin:0}.student-care-confirm-card dl div{min-width:145px;padding:9px 11px;border:1px solid var(--line);border-radius:9px;background:var(--surface-soft)}.student-care-confirm-card dt{color:var(--muted);font-size:.68rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.student-care-confirm-card dd{margin:3px 0 0;color:var(--ink);font-size:.84rem;font-weight:700}.student-care-confirm-actions{display:flex;align-items:center;gap:8px}.student-care-top-actions{display:flex;justify-content:center}.student-care-top-actions-inner{width:min(100%,820px);display:grid;justify-items:center;gap:10px}.student-care-tab-group{display:inline-grid;grid-auto-flow:column;gap:4px;padding:4px;border:1px solid var(--line);border-radius:12px;background:var(--surface-soft)}.student-care-tab{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 20px;border:1px solid transparent;border-radius:9px;color:var(--brand);background:transparent;cursor:pointer;font-size:.86rem;font-weight:600;letter-spacing:-.01em;transition:background .15s,color .15s,border-color .15s,box-shadow .15s}.student-care-tab svg{color:currentColor}.student-care-tab:hover:not(.active){background:#005f860f}.student-care-tab.active{color:#fff;border-color:var(--brand-deep);background:var(--brand);box-shadow:0 4px 12px #005f8638}.student-care-tab:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.student-care-counselor-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.student-care-counselor-stats .metric{min-height:74px;display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:12px;padding:14px 16px;background:var(--surface);box-shadow:none}.student-care-counselor-stats .metric>span{width:34px;height:34px;color:var(--brand);background:#005f860d}.student-care-counselor-stats .metric small{color:var(--muted);font-size:.74rem}.student-care-counselor-stats .metric strong{color:var(--brand-deep);font-size:1.25rem}.student-care-access-panel{width:min(100%,260px);display:grid;gap:10px;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:0 10px 26px #001e2d0f}.student-care-access-panel-copy{display:grid;gap:6px}.student-care-access-panel-copy h3{margin:0;color:var(--muted);font-size:.82rem;letter-spacing:-.02em}.student-care-access-panel-copy p{margin:0;color:var(--muted);font-size:.72rem;line-height:1.42}.student-care-access-panel-actions{display:grid;gap:8px}.student-care-access-panel-actions .secondary-action{width:100%}.student-care-microsoft-link{min-height:46px;display:flex;align-items:center;justify-content:center;gap:10px;width:100%;border-radius:12px;padding:10px 12px;color:#fff;background:var(--brand);text-decoration:none;font-size:.84rem;font-weight:700;letter-spacing:-.02em}.student-care-microsoft-link:hover{background:var(--brand-deep)}.student-care-locked-gate{max-width:none;margin-inline:0}.student-care-locked-gate-body{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 22px 22px;border-top:1px solid var(--line)}.student-care-locked-gate-copy{display:grid;gap:5px;min-width:0;color:var(--muted)}.student-care-locked-gate-copy strong{color:var(--brand-deep);font-size:.9rem}.student-care-locked-gate-copy span{max-width:68ch;font-size:.8rem;line-height:1.45}.student-care-locked-gate .student-care-microsoft-link{width:min(100%,320px);flex:0 0 auto;margin-inline:0}.student-care-microsoft-logo{display:grid;grid-template-columns:repeat(2,10px);grid-template-rows:repeat(2,10px);gap:3px;flex:0 0 auto}.student-care-microsoft-logo span:nth-child(1){background:#f25022}.student-care-microsoft-logo span:nth-child(2){background:#7fba00}.student-care-microsoft-logo span:nth-child(3){background:#00a4ef}.student-care-microsoft-logo span:nth-child(4){background:#ffb900}.student-care-layout{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:18px;align-items:start}.student-care-layout:not(.reports-open){grid-template-columns:1fr}.student-care-layout:not(.reports-open)>.student-care-card:first-child{max-width:none;margin-inline:0}.student-care-card{border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:0 10px 26px #001e2d0f;overflow:hidden}.student-care-card-minimized{box-shadow:none}.student-care-card-header{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;align-items:start;padding:20px 22px 16px;border-bottom:1px solid var(--line)}.student-care-card-icon{width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--line);border-radius:12px;color:var(--brand-dark);background:linear-gradient(180deg,#fff,var(--surface-soft))}.student-care-card-header h3{margin:2px 0 4px;color:var(--muted);font-size:1rem;letter-spacing:-.02em}.student-care-card-header p{margin:0;max-width:58ch;color:var(--muted);font-size:.84rem;line-height:1.45}.student-care-form{display:grid;gap:14px;padding:18px 22px 22px}.student-care-minimized-body{padding:12px 22px;color:var(--muted);background:var(--surface-soft);font-size:.78rem}.student-care-form-block{display:grid;gap:14px;padding:14px;border:1px solid var(--line);border-radius:14px;background:#fcfdff}[data-theme=dark] .student-care-form-block{background:var(--surface-muted)}.student-care-form-block-bottom{grid-template-columns:minmax(0,1fr) minmax(220px,.62fr);align-items:start;gap:14px}.student-care-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}.student-care-grid label,.student-care-notes-field,.student-care-urgency-panel{display:grid;gap:8px;color:var(--ink);font-size:.82rem;font-weight:600}.student-care-date-field{grid-column:1 / -1;width:min(100%,calc(50% - 7px));justify-self:center}@media(max-width:820px){.student-care-date-field{width:100%}}.student-care-form input:not([type=checkbox]):not([type=radio]),.student-care-form select,.student-care-form textarea{width:100%;border:1px solid var(--input-border);border-radius:12px;padding:0 13px;outline:0;color:var(--ink);background:var(--input-bg)}.student-care-form input:not([type=checkbox]):not([type=radio]),.student-care-form select,.student-care-readonly{min-height:52px}.student-care-form textarea{min-height:118px;padding-block:12px;resize:vertical}.student-care-form input:not([type=checkbox]):not([type=radio]):focus,.student-care-form select:focus,.student-care-form textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--focus-ring)}.student-care-form small{color:var(--muted);font-size:.72rem;font-weight:400;line-height:1.35}.student-care-required{color:#c74228;font-style:normal}.student-care-readonly{display:flex;align-items:center;gap:9px;padding:0 13px;border:1px solid var(--line);border-radius:12px;color:var(--ink);background:var(--surface-soft)}.student-care-readonly svg{color:var(--brand)}.student-care-student-picker{position:relative;min-height:52px;display:flex;align-items:center;gap:9px;border:1px solid var(--input-border);border-radius:12px;padding:0 12px;color:var(--ink);background:var(--input-bg)}.student-care-student-picker:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px var(--focus-ring)}.student-care-student-picker>svg{flex:0 0 auto;color:var(--input-icon)}.student-care-student-picker input{min-width:0;flex:1;height:50px;border:0!important;border-radius:0!important;padding:0!important;color:var(--ink);background:transparent!important;box-shadow:none!important}.student-care-student-picker input:focus{box-shadow:none!important}.student-care-student-picker>button{width:28px;height:28px;display:grid;place-items:center;border:1px solid var(--line);border-radius:999px;color:var(--muted);background:var(--surface-soft);font-size:.78rem;font-weight:900}.student-care-student-options{position:absolute;z-index:30;top:calc(100% + 6px);left:0;right:0;max-height:280px;overflow-y:auto;display:grid;gap:4px;padding:6px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:0 18px 42px var(--shadow-soft)}.student-care-student-options button{width:100%;display:grid;gap:3px;border:0;border-radius:9px;padding:9px 10px;color:var(--ink);background:transparent;text-align:left}.student-care-student-options button:hover,.student-care-student-options button[aria-selected=true]{color:var(--brand-dark);background:var(--surface-soft)}.student-care-student-options strong{overflow:hidden;color:inherit;font-size:.82rem;text-overflow:ellipsis;white-space:nowrap}.student-care-student-options span,.student-care-student-options p{margin:0;color:var(--muted);font-size:.72rem;line-height:1.35}.student-care-reasons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.reason-card-group{padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.reason-card-heading{display:flex;align-items:center;gap:8px;margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid var(--line);color:var(--brand)}.reason-card-heading h3{margin:0;font-size:.78rem;color:var(--brand-deep);font-weight:700;letter-spacing:.05em;text-transform:uppercase}.reason-card-list{display:grid;gap:4px}.reason-card{display:flex;align-items:flex-start;gap:9px;padding:8px 10px;border:1px solid transparent;border-radius:9px;color:var(--ink);background:transparent;cursor:pointer;font-size:.78rem;font-weight:500;line-height:1.35;transition:background .12s,border-color .12s}.reason-card:hover{background:#005f860a}.reason-card input{margin-top:2px;accent-color:var(--brand-deep)}.reason-card.active{border-color:#005f8638;background:#005f8612;color:var(--brand-deep);font-weight:600}.reason-card-hint{position:relative;flex:0 0 auto;margin-left:auto;display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;border:1px solid rgba(0,95,134,.35);color:var(--brand);background:#005f860f;font-size:.62rem;font-weight:700;cursor:help;outline:none}.reason-card-hint:hover,.reason-card-hint:focus-visible{background:var(--brand);color:#fff;border-color:var(--brand)}.reason-card-hint:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);right:0;width:240px;padding:8px 10px;border-radius:8px;background:var(--brand-deep);color:#fff;font-size:.68rem;font-weight:500;line-height:1.4;text-align:left;white-space:normal;box-shadow:0 6px 18px #0000002e;opacity:0;visibility:hidden;transform:translateY(3px);transition:opacity .12s,transform .12s,visibility .12s;z-index:20;pointer-events:none}.reason-card-hint:hover:after,.reason-card-hint:focus-visible:after{opacity:1;visibility:visible;transform:translateY(0)}.student-care-notes-field textarea{border-radius:12px}.student-care-notes-field small{justify-self:end}.student-care-urgency-panel{gap:8px;align-content:start}.student-care-urgency-options{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.student-care-urgency-option{position:relative;display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;border:1px solid var(--line);border-radius:10px;padding:0 10px;color:var(--muted);background:var(--surface);cursor:pointer;font-size:.8rem;font-weight:600;transition:border-color .15s,background .15s,color .15s}.student-care-urgency-option:before{content:"";width:9px;height:9px;border-radius:50%;border:1.5px solid currentColor;background:transparent}.student-care-urgency-option:hover{border-color:#005f864d}.student-care-urgency-option.active{border-color:var(--brand);color:var(--brand-dark);background:#005f8612}.student-care-urgency-option.active:before{background:currentColor}.student-care-urgency-option input{position:absolute;inset:0;opacity:0;pointer-events:none}.student-care-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding-top:2px}.student-care-actions .secondary-action{min-width:104px}.student-care-actions .primary-action{min-width:168px}.student-care-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 22px;background:var(--surface-soft)}.student-care-search{flex:1;min-width:0;height:42px;display:flex;align-items:center;gap:10px;padding:0 12px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--input-icon)}.student-care-search input{min-width:0;flex:1;height:100%;border:0;outline:0;color:var(--ink);background:transparent;font-size:.9rem}.student-care-filter{position:relative}.student-care-filter-button{min-width:112px;min-height:42px}.student-care-filter-menu{position:absolute;top:calc(100% + 8px);right:0;z-index:5;min-width:220px;display:grid;gap:4px;padding:8px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:0 14px 30px #001e2d1f}.student-care-filter-menu button{min-height:38px;display:flex;align-items:center;width:100%;border:0;border-radius:10px;padding:0 12px;color:var(--ink);background:transparent;text-align:left;font-size:.82rem}.student-care-filter-menu button:hover,.student-care-filter-menu button.active{color:var(--brand-dark);background:#005f8614}.student-care-table-wrap{overflow:visible;border-top:1px solid var(--line)}.student-care-table{width:100%;min-width:0;border-collapse:collapse;table-layout:fixed}.student-care-table th{padding:12px 14px;color:var(--muted);background:var(--table-head);text-align:left;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.student-care-table td{padding:14px;border-top:1px solid var(--line);color:var(--ink);font-size:.81rem;vertical-align:middle}.student-care-table tr:hover td{background:var(--table-hover)}.student-care-table th:nth-child(1),.student-care-table td:nth-child(1){width:17%}.student-care-table th:nth-child(2),.student-care-table td:nth-child(2){width:35%}.student-care-table th:nth-child(3),.student-care-table td:nth-child(3){width:11%}.student-care-table th:nth-child(4),.student-care-table td:nth-child(4){width:12%}.student-care-table th:nth-child(5),.student-care-table td:nth-child(5){width:15%}.student-care-table th:nth-child(6),.student-care-table td:nth-child(6){width:10%}.student-care-date{display:grid;gap:4px;min-width:0}.student-care-date strong{color:var(--ink);font-size:.86rem;font-weight:600}.student-care-date span{color:var(--muted);font-size:.76rem}.student-care-locked-cell{min-width:0;display:grid;justify-items:start;gap:4px}.student-care-confidential-mask{width:112px;height:10px;border-radius:999px;background:linear-gradient(90deg,#5459642e,#54596414);filter:blur(.2px)}.student-care-locked-cell svg{color:var(--muted)}.student-care-locked-cell strong{color:var(--ink);font-size:.82rem}.student-care-locked-cell p{margin:0;max-width:24ch;color:var(--muted);font-size:.74rem;line-height:1.35}.student-care-unlocked-cell{display:grid;gap:4px;min-width:0}.student-care-unlocked-cell strong{overflow:hidden;color:var(--brand-deep);font-size:.84rem;text-overflow:ellipsis;white-space:nowrap}.student-care-unlocked-cell p{overflow:hidden;margin:0;color:var(--muted);font-size:.74rem;text-overflow:ellipsis;white-space:nowrap}.student-care-class-cell{font-weight:600;white-space:normal;word-break:break-word}.student-care-urgency-badge{display:inline-flex;align-items:center;gap:7px;font-size:.78rem;font-weight:600;white-space:nowrap}.student-care-urgency-badge span:first-child,.student-care-urgency-badge>span{width:9px;height:9px;border-radius:50%;background:currentColor}.student-care-urgency-badge.low{color:#6c8aa8}.student-care-urgency-badge.medium{color:var(--brand)}.student-care-urgency-badge.high{color:var(--brand-deep)}.student-care-urgency-badge.high>span,.student-care-urgency-badge.high span:first-child{box-shadow:0 0 0 3px #005f8629}.student-care-status-badge{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:0 11px;border:1px solid var(--line);border-radius:999px;color:var(--muted);background:var(--surface-soft);font-size:.74rem;font-weight:600;white-space:nowrap}.student-care-status-badge:before{content:"";width:7px;height:7px;border-radius:50%;border:1.5px solid currentColor;background:transparent}.student-care-status-badge.is-pending{color:var(--brand);border-color:#005f864d;background:var(--surface)}.student-care-status-badge.is-progress{color:var(--brand);border-color:#005f864d;background:#005f8612}.student-care-status-badge.is-progress:before{background:currentColor}.student-care-status-badge.is-positive{color:#fff;border-color:var(--brand-deep);background:var(--brand-deep)}.student-care-status-badge.is-positive:before{border-color:#fff;background:#fff}.student-care-status-badge.is-muted{color:var(--muted);border-color:var(--line);background:var(--surface-soft)}.student-care-status-badge.is-neutral{color:var(--brand);border-color:#005f864d;background:var(--surface)}.student-care-row-actions{width:52px;text-align:center}.student-care-row-actions button{width:34px;height:34px;display:inline-grid;place-items:center;border:0;border-radius:50%;color:var(--muted);background:transparent}.student-care-row-actions button:hover{background:var(--surface-soft)}.student-care-row-actions button:disabled{opacity:.45;cursor:not-allowed}.professor-referral-detail-row td{padding:0!important;background:var(--surface-soft)}.professor-referral-detail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px 16px;border-top:1px solid var(--line)}.professor-referral-detail section{display:grid;gap:4px;min-width:0;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.professor-referral-detail small{color:var(--muted);font-size:.7rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.professor-referral-detail strong{color:var(--brand-deep);font-size:.86rem}.professor-referral-detail span,.professor-referral-detail p{margin:0;color:var(--muted);font-size:.78rem;line-height:1.45}.professor-referral-detail-wide{grid-column:1 / -1}.professor-counselor-message p{margin:4px 0 0;padding:8px 12px;border-left:3px solid var(--brand);border-radius:6px;background:var(--soft);color:var(--brand-deep);white-space:pre-wrap}.counselor-advisory{display:flex;flex-direction:column;gap:16px;padding:18px 20px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.counselor-advisory-header{display:flex;align-items:flex-start;gap:10px;padding-bottom:14px;border-bottom:1px solid var(--line);color:var(--brand)}.counselor-advisory-header h3{margin:0;color:var(--brand-deep);font-size:.98rem}.counselor-advisory-header p{margin:2px 0 0;color:var(--muted);font-size:.76rem}.counselor-advisory-form{display:grid;gap:12px}.counselor-advisory-form label{display:grid;gap:6px;color:var(--muted);font-size:.7rem;font-weight:600}.counselor-advisory-form input,.counselor-advisory-form textarea{width:100%;border:1px solid var(--line);border-radius:8px;padding:9px 10px;outline:0;color:var(--ink);background:var(--surface);font:inherit}.counselor-advisory-form input{min-height:40px}.counselor-advisory-form textarea{min-height:96px;resize:vertical;line-height:1.45}.counselor-advisory-form input:focus,.counselor-advisory-form textarea:focus{border-color:var(--brand);box-shadow:0 0 0 2px var(--focus-ring)}.counselor-advisory-student{position:relative}.teacher-feedback-panel{display:grid;gap:12px;padding:14px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--surface) 88%,#e7f3f7)}.teacher-feedback-head{display:grid;gap:3px}.teacher-feedback-head strong{color:var(--brand-deep);font-size:.86rem}.teacher-feedback-head span{color:var(--muted);font-size:.76rem;line-height:1.4}.teacher-feedback-grid{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:10px}.teacher-feedback-grid label,.teacher-feedback-question{display:grid;gap:6px;color:var(--muted);font-size:.72rem;font-weight:700}.teacher-feedback-grid select,.teacher-feedback-grid input,.teacher-feedback-question textarea,.teacher-feedback-response-grid select,.teacher-feedback-response-grid textarea{width:100%;border:1px solid var(--line);border-radius:8px;padding:9px 10px;outline:0;color:var(--ink);background:var(--surface);font:inherit}.teacher-feedback-teachers{display:grid;gap:8px;min-width:0;margin:0;padding:0;border:0}.teacher-feedback-teachers legend{margin:0 0 2px;padding:0;color:var(--muted);font-size:.72rem;font-weight:700}.teacher-feedback-teachers-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.teacher-feedback-teacher-search{display:flex;align-items:center;gap:8px;min-height:38px;padding:0 11px;border:1px solid var(--line);border-radius:9px;color:var(--muted);background:var(--surface)}.teacher-feedback-teacher-search input{width:100%;min-width:0;border:0;outline:0;color:var(--ink);background:transparent;font:inherit}.teacher-feedback-teacher-list{display:flex;flex-wrap:wrap;gap:8px;max-height:128px;overflow-y:auto;padding:2px 3px 2px 0;scrollbar-gutter:stable}.teacher-feedback-teacher-list label{display:inline-flex;align-items:center;gap:7px;min-height:32px;padding:0 10px;border:1px solid var(--line);border-radius:999px;color:var(--brand-deep);background:var(--surface);font-size:.72rem;font-weight:700}.teacher-feedback-summary,.teacher-feedback-response-list{display:grid;gap:9px;max-height:300px;overflow-y:auto;padding-right:3px;scrollbar-gutter:stable}.teacher-feedback-summary article,.teacher-feedback-response-list article{display:grid;gap:7px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.teacher-feedback-summary strong,.teacher-feedback-response-list strong{color:var(--brand-deep);font-size:.8rem}.teacher-feedback-summary span,.teacher-feedback-response-list span{color:var(--muted);font-size:.72rem}.teacher-feedback-summary p,.teacher-feedback-response-list p{margin:0;color:var(--ink);font-size:.78rem;line-height:1.45}.teacher-feedback-summary small{color:var(--muted);font-size:.72rem;line-height:1.45}.teacher-feedback-response-list article.answered{border-color:#005f8638;background:color-mix(in srgb,var(--surface) 90%,#e7f3f7)}.teacher-feedback-item-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.teacher-feedback-item-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.teacher-feedback-item-title strong{font-size:.84rem}.teacher-feedback-chip{padding:2px 8px;border:1px solid var(--line);border-radius:999px;color:var(--brand-deep);background:var(--surface-soft);font-size:.66rem;font-weight:700;letter-spacing:.02em}.teacher-feedback-item-meta{display:inline-flex;align-items:center;gap:10px;color:var(--muted);font-size:.7rem}.teacher-feedback-pill{padding:2px 9px;border-radius:999px;border:1px solid rgba(0,95,134,.25);color:var(--brand);background:#005f860f;font-size:.66rem;font-weight:700}.teacher-feedback-pill.answered{color:#fff;background:var(--brand);border-color:var(--brand)}.teacher-feedback-question{margin:2px 0 6px}.teacher-feedback-response-grid{display:grid;grid-template-columns:180px minmax(0,1fr) auto;gap:8px;align-items:start}.teacher-feedback-response-grid .primary-action{min-height:38px;white-space:nowrap}.teacher-feedback-toolbar{grid-template-columns:minmax(220px,1fr) minmax(150px,auto) minmax(170px,auto)}.teacher-feedback-saved{display:grid;gap:12px;margin-top:6px;padding-top:14px;border-top:1px solid var(--line)}.teacher-feedback-saved-toggle{justify-self:start}.counselor-advisory-reason-field{display:grid;gap:8px;min-width:0;margin:0;padding:0;border:0}.counselor-advisory-reason-field legend{margin:0 0 2px;padding:0;color:var(--muted);font-size:.7rem;font-weight:700}.counselor-advisory-reason-grid{display:flex;flex-wrap:wrap;gap:8px}.counselor-advisory-reason{display:inline-flex!important;grid-template-columns:none!important;align-items:center;gap:7px!important;min-height:34px;padding:0 10px;border:1px solid var(--line);border-radius:999px;color:var(--muted)!important;background:var(--surface);cursor:pointer;font-size:.74rem!important;font-weight:700!important}.counselor-advisory-reason:hover,.counselor-advisory-reason.active{border-color:#005f8659;color:var(--brand-deep)!important;background:#005f8612}.counselor-advisory-reason input{width:auto;min-height:0;margin:0;accent-color:var(--brand-deep)}.counselor-advisory-actions{display:flex;justify-content:flex-end}.counselor-advisory-list{display:grid;gap:10px}.counselor-advisory-list h4{margin:4px 0 0;color:var(--brand-deep);font-size:.82rem}.counselor-report-toggle{justify-self:start;width:auto}.counselor-report-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) minmax(160px,.35fr);gap:10px;align-items:center}.counselor-report-search,.counselor-report-filter{min-height:38px;display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:9px;padding:0 10px;color:var(--muted);background:var(--surface)}.counselor-report-search input,.counselor-report-filter select{min-width:0;width:100%;border:0;outline:0;color:var(--ink);background:transparent;font:inherit}.counselor-report-list-scroll{display:grid;gap:10px;max-height:286px;overflow-y:auto;padding-right:4px;scrollbar-gutter:stable}.counselor-intake-toggle{justify-self:start;width:auto}.counselor-intake-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) minmax(160px,.35fr);gap:10px;align-items:center}.counselor-intake-search,.counselor-intake-filter{min-height:38px;display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:9px;padding:0 10px;color:var(--muted);background:var(--surface)}.counselor-intake-search input,.counselor-intake-filter select{min-width:0;width:100%;border:0;outline:0;color:var(--ink);background:transparent;font:inherit}.counselor-intake-list-scroll{display:grid;gap:10px;max-height:286px;overflow-y:auto;padding-right:4px;scrollbar-gutter:stable}.counselor-advisory-item{padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--surface-soft)}.counselor-advisory-item-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}.counselor-advisory-item-head strong{color:var(--brand-deep);font-size:.82rem}.counselor-advisory-item-actions{display:inline-flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}.counselor-advisory-view{min-height:30px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--line);border-radius:8px;padding:0 10px;color:var(--brand-deep);background:var(--surface);cursor:pointer;font-size:.72rem;font-weight:700}.counselor-advisory-view:hover{border-color:var(--brand);background:#005f8614}.counselor-advisory-reasons{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 8px}.counselor-advisory-reasons span{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border:1px solid rgba(0,95,134,.22);border-radius:999px;color:var(--brand-deep);background:#005f860f;font-size:.68rem;font-weight:700}.counselor-advisory-item p{margin:0;color:var(--ink);font-size:.8rem;line-height:1.5;white-space:pre-wrap}.counselor-advisory-delete{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid var(--line);border-radius:8px;color:var(--brand);background:var(--surface);cursor:pointer}.counselor-advisory-delete:hover{border-color:var(--brand);background:#005f8614}.counselor-advisory-empty{margin:0;color:var(--muted);font-size:.76rem}.counselor-intake-fields{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:12px}@media(max-width:760px){.teacher-feedback-grid,.teacher-feedback-response-grid{grid-template-columns:1fr}}@media(max-width:640px){.counselor-intake-fields,.counselor-intake-toolbar,.counselor-report-toolbar{grid-template-columns:1fr}}.student-care-page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;flex-wrap:wrap}.professor-advisory{display:flex;flex-direction:column;gap:12px;padding:16px 18px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.professor-advisory-header{display:flex;align-items:flex-start;gap:10px;color:var(--brand)}.professor-advisory-header h3{margin:0;color:var(--brand-deep);font-size:.92rem}.professor-advisory-header p{margin:2px 0 0;color:var(--muted);font-size:.74rem}.professor-advisory-list{display:grid;gap:10px}.professor-advisory-item{padding:12px 14px;border:1px solid var(--line);border-left:3px solid var(--brand);border-radius:10px;background:var(--surface-soft)}.professor-advisory-item-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:6px}.professor-advisory-item-head strong{color:var(--brand-deep);font-size:.82rem}.professor-advisory-item-head span{color:var(--muted);font-size:.7rem}.professor-advisory-item p{margin:0;color:var(--ink);font-size:.8rem;line-height:1.5;white-space:pre-wrap}.counselor-complete-backdrop{z-index:1300}.counselor-complete-dialog{position:relative;width:min(100%,540px);max-height:calc(100svh - 40px);overflow-y:auto;padding:28px 30px 24px;border-radius:18px;background:var(--surface);box-shadow:0 24px 80px #001e2d3d;animation:method-reveal .24s ease both}.counselor-complete-dialog-head{display:flex;align-items:flex-start;gap:14px;margin-bottom:18px;padding-right:32px}.counselor-complete-dialog-icon{flex:0 0 auto;width:44px;height:44px;display:grid;place-items:center;border-radius:12px;color:var(--brand);background:var(--soft)}.counselor-complete-dialog-head h2{margin:2px 0 4px;color:var(--ink);font-size:1.35rem;letter-spacing:-.02em}.counselor-complete-dialog-head p{margin:0;color:var(--muted);font-size:.82rem;line-height:1.45}.counselor-complete-dialog-student{display:flex;align-items:center;gap:11px;margin-bottom:18px;padding:11px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface-soft)}.counselor-complete-dialog-avatar{flex:0 0 auto;width:36px;height:36px;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--brand)}.counselor-complete-dialog-student>div{display:grid;gap:1px}.counselor-complete-dialog-student strong{color:var(--brand-deep);font-size:.92rem}.counselor-complete-dialog-student small{color:var(--muted);font-size:.74rem}.counselor-complete-dialog-field{display:grid;gap:6px}.counselor-complete-dialog-field>span{color:var(--ink);font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.counselor-complete-dialog-field textarea{width:100%;min-height:150px;resize:vertical;border:1px solid var(--input-border);border-radius:12px;padding:13px 15px;font:inherit;line-height:1.55;color:var(--ink);background:var(--input-bg);outline:0;transition:border-color .15s ease,box-shadow .15s ease}.counselor-complete-dialog-field textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--focus-ring)}.counselor-complete-dialog-count{justify-self:end;color:var(--muted);font-size:.7rem;font-variant-numeric:tabular-nums}.counselor-complete-dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}.counselor-complete-dialog-actions .primary-action,.counselor-complete-dialog-actions .secondary-action{min-width:130px;justify-content:center}.counselor-complete-dialog-submit{display:inline-flex;align-items:center;gap:8px}.professor-referral-detail-actions{grid-column:1 / -1;display:flex!important;align-items:center;justify-content:flex-end;padding:0!important;border:0!important;background:transparent!important}.student-care-table-empty{padding:28px 16px!important;color:var(--muted);text-align:center}.student-care-pagination{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 22px 18px;color:var(--muted);font-size:.78rem}.student-care-pagination div{display:flex;align-items:center;gap:8px}.student-care-pagination button,.student-care-pagination div>span{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink)}.student-care-pagination button:disabled{opacity:.45}.counselor-referral-list{display:grid;gap:10px;padding:14px 16px 16px;border-top:1px solid var(--line)}.counselor-referral-list.today-list{max-height:310px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.counselor-referral-list.today-list.has-expanded{max-height:none;overflow:visible;scrollbar-gutter:auto}.counselor-referral-card{border:1px solid var(--line);border-radius:12px;background:var(--surface);overflow:hidden}.counselor-referral-summary{display:grid;grid-template-columns:minmax(180px,1.25fr) .4fr 1fr .7fr auto 30px;align-items:center;gap:14px;width:100%;min-height:68px;border:0;padding:11px 14px;color:var(--muted);background:var(--surface);text-align:left}.counselor-referral-summary:hover{background:#005f8606}.counselor-referral-summary:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}.counselor-referral-summary>span{min-width:0;display:grid;gap:4px}.counselor-referral-summary small{overflow:hidden;color:var(--muted);font-size:.7rem;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.counselor-referral-summary strong{overflow:hidden;color:var(--muted);font-size:.82rem;text-overflow:ellipsis;white-space:nowrap}.counselor-referral-summary .counselor-referral-identity strong{color:var(--brand-deep);font-size:.92rem}.counselor-referral-summary .counselor-referral-meta{display:flex;align-items:center;justify-content:flex-end}.counselor-summary-toggle{width:30px;height:30px;display:grid!important;place-items:center;border:1px solid var(--line);border-radius:8px;color:var(--brand);font-size:1rem;background:var(--surface)}.counselor-referral-expanded{display:grid;grid-template-columns:minmax(0,1fr) 220px;border-top:1px solid var(--line);background:#fff}.counselor-referral-content{display:grid;gap:14px;min-width:0;padding:16px}.counselor-referral-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.counselor-referral-identity{display:grid;gap:4px;min-width:0}.counselor-referral-identity small{color:var(--muted);font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.counselor-referral-identity strong{color:var(--brand-deep);font-size:1rem}.counselor-referral-identity span{color:var(--muted);font-size:.79rem;word-break:break-word}.counselor-referral-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.counselor-referral-meta .student-care-urgency-badge{min-height:29px;padding:0 10px;border:1px solid rgba(0,95,134,.2);border-radius:8px;color:var(--brand);background:#005f860a}.counselor-referral-grid{display:grid;grid-template-columns:.45fr 1.25fr .9fr .6fr .9fr;gap:12px;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--surface-soft)}.counselor-referral-details{display:grid;gap:14px}.counselor-referral-field{display:grid;gap:6px;min-width:0}.counselor-referral-field small{color:var(--muted);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.counselor-referral-field strong{color:var(--muted);font-size:.86rem}.counselor-referral-field p{margin:0;color:var(--muted);font-size:.82rem;line-height:1.5}.counselor-referral-inline{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:.82rem}.counselor-referral-inline svg{color:var(--brand);flex:0 0 auto}.counselor-referral-inline span{min-width:0;word-break:break-word}.counselor-reason-badges{display:flex;flex-wrap:wrap;gap:8px}.counselor-reason-badge{display:inline-flex;align-items:center;min-height:28px;padding:0 9px;border:1px solid rgba(0,95,134,.18);border-radius:7px;color:var(--brand);background:#005f860a;font-size:.74rem;font-weight:600}.counselor-referral-source{display:grid;gap:9px;padding:12px 14px;border:1px solid var(--line);border-left:3px solid var(--brand);border-radius:8px;background:var(--surface-soft)}.counselor-referral-source>small{color:var(--brand-deep);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.counselor-referral-source-meta{color:var(--muted);font-size:.8rem}.counselor-referral-source-notes{margin:0;color:var(--muted);font-size:.82rem;line-height:1.5}.counselor-referral-casework{display:grid;gap:7px}.counselor-notes-box{display:grid;gap:7px;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--surface-soft)}.counselor-notes-box small{color:var(--muted);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.counselor-notes-box p{margin:0;color:var(--muted);font-size:.82rem;line-height:1.5}.counselor-action-panel{display:flex;flex-direction:column;gap:7px;padding:16px 14px;border-left:1px solid var(--line);background:var(--surface-soft)}.counselor-action-panel>strong{margin-bottom:4px;color:var(--muted);font-size:.72rem;letter-spacing:.06em;text-transform:uppercase}.counselor-action-panel button{min-height:38px;display:flex;align-items:center;gap:8px;width:100%;border:1px solid var(--line);border-radius:7px;padding:0 10px;color:var(--brand);background:var(--surface);text-align:left;font-size:.76rem;font-weight:600}.counselor-action-panel button:hover{border-color:#005f8659;background:#005f860a}.counselor-action-panel button:disabled{opacity:.55;cursor:not-allowed}.counselor-action-panel .close-action{margin-top:auto;color:var(--muted)}.counselor-inline-error{margin:0;padding:8px 10px;border:1px solid rgba(0,95,134,.3);border-radius:8px;background:#005f8612;color:var(--brand-deep);font-size:.72rem;font-weight:600;line-height:1.4}.counselor-appointment-form{display:grid;gap:8px;margin-block:4px;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.counselor-appointment-form p{margin:0;color:var(--muted);font-size:.7rem;line-height:1.4}.counselor-appointment-form label{display:grid;gap:4px;color:var(--muted);font-size:.68rem;font-weight:600}.counselor-appointment-form input{width:100%;min-height:34px;border:1px solid var(--line);border-radius:6px;padding:0 8px;outline:0;color:var(--muted);background:var(--surface);font:inherit}.counselor-appointment-form input:focus{border-color:var(--brand);box-shadow:0 0 0 2px var(--focus-ring)}.counselor-appointment-form input:disabled{background:var(--surface-soft)}.counselor-action-panel .appointment-save{justify-content:center;color:#fff;border-color:var(--brand-deep);background:var(--brand-deep)}.wellbeing{display:grid;gap:22px;max-width:720px;margin:6px auto 0}.wellbeing-header{position:relative;display:grid;gap:6px;padding-right:150px}.wellbeing-kicker{display:inline-flex;align-items:center;gap:7px;color:var(--brand);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.wellbeing-header h2{margin:2px 0 0;font-size:1.5rem}.wellbeing-header p{margin:0;max-width:520px;color:var(--muted);font-size:.86rem;line-height:1.6}.wellbeing-requests-toggle{position:absolute;top:0;right:0;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;padding:8px 12px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--ink);font:inherit;font-size:.78rem;font-weight:700;cursor:pointer}.wellbeing-requests-toggle:hover{border-color:var(--brand);color:var(--brand)}.wellbeing-requests-toggle>span{display:inline-flex;align-items:center;justify-content:center;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:var(--brand);color:#fff;font-size:.65rem}.wellbeing-next{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid rgba(0,95,134,.22);border-radius:12px;background:#005f860d}.wellbeing-next-icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;background:var(--surface);color:var(--brand-deep);flex-shrink:0}.wellbeing-next-body{display:grid;gap:2px;flex:1}.wellbeing-next-label{color:var(--brand-deep);font-size:.74rem;font-weight:600}.wellbeing-next-body strong{color:var(--ink);font-size:.92rem;font-weight:700}.wellbeing-next-who{color:var(--brand-deep);font-size:.78rem}.wellbeing-urgency-chips{display:flex;gap:8px}.wellbeing-urgency-chips button{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:9px 14px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--muted);font:inherit;font-size:.8rem;font-weight:600;cursor:pointer}.wellbeing-urgency-chips button.active{background:var(--brand);border-color:var(--brand);color:#fff}.wellbeing-urgency-chips button:disabled{opacity:.55;cursor:default}.wellbeing-error{margin:0;color:var(--brand-deep);font-weight:600;font-size:.8rem}.wellbeing-notice{margin:0;color:var(--brand-deep);font-size:.8rem}.wellbeing-hint{margin:0;color:var(--muted);font-size:.78rem}.wb-wizard{display:flex;gap:0;border:1px solid var(--line);border-radius:14px;background:var(--surface);overflow:hidden}.wb-wizard-rail{width:240px;flex-shrink:0;display:flex;flex-direction:column;padding:22px 18px;border-right:1px solid var(--line);background:var(--surface-soft)}.wb-step{display:flex;gap:12px;padding:12px 0;border-top:1px solid var(--line);align-items:flex-start}.wb-step:first-child{border-top:none}.wb-step-number{flex-shrink:0;min-width:20px;color:var(--muted);font-size:.76rem;font-weight:700}.wb-step.done .wb-step-number{color:var(--brand)}.wb-step.active .wb-step-number{color:var(--ink)}.wb-step-title{color:var(--muted);font-size:.78rem;font-weight:600}.wb-step.active .wb-step-title{color:var(--ink);font-weight:700}.wb-step-value{margin-top:2px;color:var(--muted);font-size:.74rem;overflow-wrap:anywhere}.wb-wizard-note{margin:auto 0 0;padding-top:16px;color:var(--muted);font-size:.72rem;line-height:1.5}.wb-wizard-main{flex:1;min-width:0;padding:26px 28px}.wb-eyebrow{display:block;color:var(--brand);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.wb-heading{margin:8px 0 0;font-size:1.3rem;color:var(--ink)}.wb-subhead{margin:8px 0 0;max-width:480px;color:var(--muted);font-size:.84rem;line-height:1.5}.wb-actions{display:flex;gap:12px;margin-top:26px}.wb-btn-primary{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border:1px solid var(--brand-deep);border-radius:10px;background:var(--brand-deep);color:#fff;font:inherit;font-size:.85rem;font-weight:700;cursor:pointer}.wb-btn-primary:disabled{opacity:.5;cursor:default}.wb-btn-secondary{display:inline-flex;align-items:center;gap:6px;padding:10px 16px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--muted);font:inherit;font-size:.85rem;font-weight:600;cursor:pointer}.wb-btn-secondary:hover{color:var(--brand-deep);border-color:#005f864d}.wb-advisor-list{display:grid;gap:10px;margin-top:24px;max-width:480px}.wb-advisor-card{display:flex;align-items:center;gap:14px;width:100%;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:var(--surface);cursor:pointer;text-align:left}.wb-advisor-card:hover{border-color:#005f864d}.wb-advisor-card.selected{border-color:var(--brand);background:#005f860f}.wb-advisor-avatar{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:40px;height:40px;border-radius:10px;color:#fff;font-size:.78rem;font-weight:700}.wb-advisor-info{display:grid;gap:2px;flex:1;min-width:0}.wb-advisor-name{color:var(--ink);font-size:.88rem;font-weight:600}.wb-advisor-role{color:var(--muted);font-size:.74rem}.wb-advisor-radio{flex-shrink:0;width:17px;height:17px;border-radius:50%;border:2px solid var(--line)}.wb-advisor-card.selected .wb-advisor-radio{border-color:var(--brand);background:var(--brand);box-shadow:inset 0 0 0 3px var(--surface)}.wb-textarea{width:100%;max-width:520px;min-height:150px;margin-top:22px;border:1px solid var(--line);border-radius:10px;padding:14px;outline:0;color:var(--ink);background:var(--surface);font:inherit;font-size:.88rem;resize:vertical;box-sizing:border-box}.wb-textarea:focus{border-color:var(--brand);box-shadow:0 0 0 2px var(--focus-ring)}.wb-textarea-sm{min-height:100px}.wb-grid-nav{display:flex;align-items:center;gap:10px;margin-top:22px}.wb-grid-nav button{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--muted);cursor:pointer}.wb-grid-nav button:disabled{opacity:.4;cursor:default}.wb-grid-nav span{color:var(--ink);font-size:.8rem;font-weight:700}.wb-slot-grid-wrap{margin-top:12px;max-width:600px;max-height:340px;overflow-y:auto;border:1px solid var(--line);border-radius:10px}.wb-slot-grid{display:grid;gap:0}.wb-slot-grid-corner{position:sticky;top:0;z-index:1;background:var(--surface-soft);border-bottom:1px solid var(--line);border-right:1px solid var(--line)}.wb-slot-day-head{position:sticky;top:0;z-index:1;display:grid;place-items:center;padding:8px 4px;border-bottom:1px solid var(--line);border-right:1px solid var(--line);background:var(--surface-soft)}.wb-slot-day-head span{color:var(--muted);font-size:.62rem;font-weight:700;letter-spacing:.03em}.wb-slot-day-head strong{margin-top:1px;color:var(--ink);font-size:.9rem}.wb-slot-time-head{display:flex;align-items:center;justify-content:center;padding:6px 4px;border-bottom:1px solid var(--line);border-right:1px solid var(--line);color:var(--muted);font-size:.68rem;font-weight:600}.wb-slot-cell{padding:6px 2px;border:none;border-bottom:1px solid var(--line);border-right:1px solid var(--line);background:transparent;color:var(--ink);font:inherit;font-size:.68rem;font-weight:600;cursor:pointer;text-align:center}.wb-slot-cell:hover:not(:disabled){background:#005f8614}.wb-slot-cell.selected{background:var(--brand);color:#fff}.wb-slot-cell.disabled{color:var(--muted);text-decoration:line-through;cursor:not-allowed;opacity:.55}.wb-urgency{display:grid;gap:8px;margin-top:24px;max-width:360px;font-size:.78rem;font-weight:600;color:var(--muted)}.wb-summary-card{display:grid;grid-template-columns:auto 1fr;gap:4px 14px;align-items:baseline;margin-top:24px;padding:18px 20px;border:1px solid var(--line);border-radius:12px;background:var(--surface-soft);max-width:480px}.wb-summary-card strong{color:var(--ink);font-size:.88rem}.wb-confirm{display:grid;gap:6px;justify-items:start;padding:30px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.wb-confirm-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;margin-bottom:6px;border-radius:12px;background:var(--brand);color:#fff}.wb-confirm h3{margin:0;font-size:1.2rem;color:var(--ink)}.wb-confirm p{margin:4px 0 0;max-width:480px;color:var(--muted);font-size:.85rem;line-height:1.55}.wb-confirm-summary{display:grid;grid-template-columns:auto 1fr;gap:4px 16px;align-items:baseline;margin:18px 0 6px;padding:18px 20px;border:1px solid var(--line);border-radius:12px;background:var(--surface-soft);max-width:420px}.wb-confirm-summary strong{color:var(--ink);font-size:.9rem}.wb-confirm-summary-label{color:var(--muted);font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}@media(max-width:720px){.wellbeing-header{padding-right:0;padding-top:48px}.wellbeing-requests-toggle{right:auto;left:0}.wb-wizard{flex-direction:column}.wb-wizard-rail{width:auto;border-right:0;border-bottom:1px solid var(--line);flex-direction:row;flex-wrap:wrap;gap:6px 18px}.wb-step{border-top:none;padding:6px 0;flex:1 1 auto;min-width:140px}.wb-wizard-note{display:none}}.wellbeing-requests{display:grid;gap:10px}.wellbeing-requests h3{margin:0 0 2px;font-size:.95rem;color:var(--ink)}.wellbeing-request{display:grid;gap:7px;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.wellbeing-request header{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.wellbeing-request header small{margin-left:auto;color:var(--muted);font-size:.7rem}.wellbeing-status{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:999px;font-size:.72rem;font-weight:700}.wellbeing-status.pending{background:var(--surface-soft);color:var(--muted)}.wellbeing-status.accepted{background:#005f861a;color:var(--brand-deep)}.wellbeing-status.declined,.wellbeing-status.cancelled{background:var(--surface-soft);color:var(--muted)}.wellbeing-tag{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:999px;background:#005f861a;color:var(--brand-deep);font-size:.68rem;font-weight:700}.wellbeing-request-reason{margin:0;color:var(--ink);font-size:.85rem;line-height:1.45;white-space:pre-wrap}.wellbeing-request-meta{margin:0;color:var(--muted);font-size:.76rem}.wellbeing-request-note{margin:0;padding:8px 10px;border-radius:8px;background:var(--surface-soft);color:var(--ink);font-size:.8rem}.wellbeing-cancel{justify-self:start;padding:6px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--muted);font:inherit;font-size:.76rem;font-weight:600;cursor:pointer}.wellbeing-cancel:hover{color:var(--brand-deep);border-color:#005f864d}@media(max-width:640px){.wellbeing-form-row{grid-template-columns:1fr}}.messages-preview{position:relative;margin-top:32px;padding:22px clamp(24px,3vw,36px);border:1px solid var(--line);border-radius:16px;background:var(--surface)}.rooms-now{margin-top:32px;padding:22px clamp(20px,2.6vw,30px);border:1px solid var(--line);border-radius:16px;background:var(--surface)}.rooms-now-head{display:grid;gap:4px;margin-bottom:14px}.rooms-now-head h2{margin:2px 0 0;font-size:1.2rem}.rooms-now-head p{margin:0;color:var(--muted);font-size:.84rem}.rooms-now-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px}.rooms-now-card{display:grid;gap:4px;align-content:start;padding:13px 15px;border:1px solid var(--line);border-radius:12px;background:var(--surface-soft)}.rooms-now-card.active{border-color:var(--brand);background:#005f860d;box-shadow:0 4px 14px #01557e14}.rooms-now-room{display:inline-flex;align-items:center;gap:6px;color:var(--brand-deep);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.03em}.rooms-now-card strong{color:var(--ink);font-size:.95rem;overflow-wrap:anywhere}.rooms-now-meta{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:.78rem}.rooms-now-time{color:var(--brand-deep);font-size:.74rem;font-weight:700;margin-top:2px}.rooms-now-free{color:var(--muted);font-size:.85rem;font-weight:700}.rooms-now-foot{margin:12px 0 0;color:var(--muted);font-size:.76rem}.overview-notify-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:32px;align-items:stretch}.overview-notify-row .messages-preview{margin-top:0;height:100%;display:flex;flex-direction:column}.overview-notify-row .messages-preview .messages-preview-list{flex:1 1 auto;align-content:start}.overview-calendar{display:grid;gap:12px;padding:20px clamp(18px,2.4vw,26px);border:1px solid var(--line);border-radius:16px;background:var(--surface)}.overview-calendar-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.overview-calendar-nav{display:flex;align-items:center;gap:10px}.overview-calendar-nav strong{min-width:130px;text-align:center;color:var(--ink);font-size:.9rem}.overview-calendar-nav button{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--muted);cursor:pointer}.overview-calendar-nav button:hover{border-color:var(--brand);color:var(--brand-deep)}.overview-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.overview-calendar-weekday{text-align:center;color:var(--muted);font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;padding-bottom:2px}.overview-calendar-cell{position:relative;aspect-ratio:1 / 1;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:9px;background:var(--surface-soft);color:var(--ink);font-size:.82rem;cursor:pointer;box-shadow:0 1px 2px #102e400d;transition:box-shadow .12s ease,border-color .12s ease,background .12s ease}.overview-calendar-cell.weekend{background:#102e4013;border-color:#102e401f}.overview-calendar-cell.empty{border-color:transparent;background:transparent;box-shadow:none;cursor:default}.overview-calendar-cell:not(.empty):hover{border-color:var(--brand);box-shadow:0 4px 10px #102e401a}.overview-calendar-cell.has-events{font-weight:800;background:#005f860f}.overview-calendar-cell.today{border-color:#005f8680;box-shadow:0 0 0 1px #005f8640}.overview-calendar-cell.selected{background:var(--brand);border-color:var(--brand);color:#fff;box-shadow:0 4px 12px #01557e47}.overview-calendar-dot{position:absolute;bottom:4px;left:50%;transform:translate(-50%);min-width:15px;height:15px;padding:0 3px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--brand-deep);color:#fff;font-size:.58rem;font-weight:800}.overview-calendar-cell.selected .overview-calendar-dot{background:#fff;color:var(--brand-deep)}.overview-calendar-events{display:grid;gap:8px;max-height:220px;overflow-y:auto;border-top:1px solid var(--line);padding-top:12px}.overview-calendar-event{display:flex;align-items:center;gap:10px;padding:9px 11px;border:1px solid var(--line);border-radius:10px;background:var(--surface);text-align:left;cursor:pointer}.overview-calendar-event:hover{border-color:var(--brand);background:#005f860a}.overview-calendar-event-kind{flex:0 0 auto;font-size:.62rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;padding:3px 8px;border-radius:999px;background:#005f861a;color:var(--brand-deep)}.overview-calendar-event-kind.homework{background:#d69e0029;color:#9a6b00}.overview-calendar-event-kind.btec_start,.overview-calendar-event-kind.btec_ongoing,.overview-calendar-event-kind.btec_due{background:var(--success-bg);color:var(--success)}.overview-calendar-event-main{display:grid;gap:1px;min-width:0}.overview-calendar-event-main strong{color:var(--ink);font-size:.84rem;overflow-wrap:anywhere}.overview-calendar-event-main small{color:var(--muted);font-size:.73rem}.messages-preview.clickable{cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.messages-preview.clickable:hover{border-color:var(--brand);box-shadow:0 8px 24px #05243414}.messages-preview.clickable:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.messages-preview-head{display:grid;gap:6px}.messages-preview-head .section-kicker{display:inline-flex;align-items:center;gap:7px;color:var(--brand);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.messages-preview-head h2{margin:2px 0 0;font-size:1.3rem}.messages-preview-head p{margin:0;color:var(--muted);font-size:.84rem}.messages-preview-badge{position:absolute;top:22px;right:clamp(24px,3vw,36px);padding:4px 12px;border-radius:999px;background:#005f861a;color:var(--brand-deep);font-size:.74rem;font-weight:700}.messages-preview-list{display:grid;gap:8px;margin:16px 0}.messages-preview-item{display:grid;gap:2px;padding:10px 13px;border:1px solid var(--line);border-radius:10px;background:var(--surface-soft);overflow-wrap:anywhere}.messages-preview-item.unread{border-color:#005f864d;background:#005f860a}.messages-preview-item strong{color:var(--ink);font-size:.85rem}.messages-preview-item span{color:var(--muted);font-size:.74rem}.messages-preview-link{padding:9px 16px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--brand-deep);font:inherit;font-size:.8rem;font-weight:700;cursor:pointer}.messages-preview-link:hover{background:var(--surface-soft)}.overview-notify-row{grid-template-columns:minmax(0,1.35fr) minmax(340px,.85fr);gap:20px}.overview-notify-row>*{box-shadow:0 5px #102e400d}.messages-preview{padding:18px 20px}.messages-preview-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:12px;border-bottom:1px solid var(--line)}.messages-preview-head h2{display:inline-flex;align-items:center;gap:8px;margin:0;font-size:1rem}.messages-preview-head h2 svg{color:var(--ink)}.messages-preview-all{display:inline-flex;align-items:center;gap:5px;padding:5px 0;border:0;background:transparent;color:var(--brand);font:inherit;font-size:.72rem;font-weight:700;cursor:pointer}.messages-preview-badge{position:static;align-self:flex-start;margin-top:12px}.messages-preview-list{gap:8px;margin:12px 0 0}.messages-preview-item{grid-template-columns:38px minmax(0,1fr) 18px;align-items:center;gap:11px;min-height:58px;padding:9px 12px;border-color:transparent;border-radius:10px;background:transparent}.messages-preview-item{width:100%;font:inherit;text-align:left;cursor:pointer}.messages-preview-item:hover{background:var(--surface-soft)}.messages-preview-item.unread{border-color:transparent;background:#005f860e}.messages-preview-avatar{grid-column:1;width:36px;height:36px;display:grid;place-items:center;border-radius:50%;color:var(--brand-deep);background:#dcecf3;font-size:.72rem;font-weight:800}.messages-preview-copy{grid-column:2;min-width:0;display:grid;gap:2px}.messages-preview-copy strong{overflow:hidden;color:var(--ink);font-size:.82rem;text-overflow:ellipsis;white-space:nowrap}.messages-preview-copy small{overflow:hidden;color:var(--muted);font-size:.69rem;text-overflow:ellipsis;white-space:nowrap}.messages-preview-chevron{grid-column:3;color:var(--muted)}.messages-preview-unread-dot{grid-column:3;justify-self:center;width:7px;height:7px;border-radius:50%;background:#2477ef}.messages-preview-detail{display:grid;align-content:start;gap:14px;padding:14px 2px 2px}.messages-preview-back{justify-self:start;display:inline-flex;align-items:center;gap:5px;padding:5px 0;border:0;background:transparent;color:var(--brand);font:inherit;font-size:.72rem;font-weight:700;cursor:pointer}.messages-preview-detail-head{display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:11px}.messages-preview-detail-head>span:last-child{min-width:0;display:grid;gap:2px}.messages-preview-detail-head strong{color:var(--ink);font-size:.9rem;overflow-wrap:anywhere}.messages-preview-detail-head small{color:var(--muted);font-size:.7rem}.messages-preview-detail>p{min-height:84px;margin:0;padding:13px 14px;border:1px solid var(--line);border-radius:10px;background:var(--surface-soft);color:var(--ink);font-size:.82rem;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}.overview-calendar{align-content:start;gap:13px;padding:18px 20px;box-shadow:0 5px #102e400d}.overview-calendar-head .section-kicker{color:var(--ink);font-size:.82rem;letter-spacing:0;text-transform:none}.overview-calendar-nav{gap:6px}.overview-calendar-nav strong{min-width:112px;font-size:.78rem}.overview-calendar-nav button{width:28px;height:28px;border-color:transparent;border-radius:50%;background:var(--surface-soft)}.overview-calendar-grid{gap:3px 5px}.overview-calendar-weekday{font-size:.6rem}.overview-calendar-cell{position:relative;aspect-ratio:auto;min-width:0;min-height:43px;padding:0;border-color:transparent;border-radius:0;background:transparent;box-shadow:none;font-size:.72rem}.overview-calendar-day{position:absolute;top:1px;left:50%;width:30px;height:30px;display:grid;place-items:center;transform:translate(-50%);border-radius:50%;line-height:1}.overview-calendar-cell.weekend{border-color:transparent;background:transparent;color:color-mix(in srgb,var(--muted) 65%,transparent)}.overview-calendar-cell:not(.empty):hover{border-color:transparent;background:var(--surface-soft);box-shadow:none}.overview-calendar-cell.has-events{background:transparent}.overview-calendar-cell.today{border-color:transparent;box-shadow:none}.overview-calendar-cell.today .overview-calendar-day{box-shadow:inset 0 0 0 1px #005f8652}.overview-calendar-cell.selected{background:transparent;border-color:transparent;color:var(--ink);box-shadow:none}.overview-calendar-cell.selected .overview-calendar-day{color:#fff;background:#102e45;box-shadow:none}.overview-calendar-dot{position:absolute;bottom:2px;left:50%;min-width:16px;height:13px;padding:0 4px;transform:translate(-50%);border-radius:999px;background:var(--brand);color:#fff;font-size:.52rem;line-height:1}.overview-calendar-dot.single{width:6px;min-width:6px;height:6px;padding:0}.overview-calendar-cell.selected .overview-calendar-dot{background:var(--brand);color:#fff}.overview-calendar-events{max-height:170px}.overview-calendar-event{padding:7px 0;border:0;border-radius:0}.overview-calendar-event:hover{border-color:transparent;background:transparent}.overview-calendar-selected-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:3px}.overview-calendar-selected-head>div{min-width:0;display:grid;gap:2px}.overview-calendar-selected-head strong{color:var(--ink);font-size:.8rem}.overview-calendar-selected-head small{color:var(--muted);font-size:.67rem}.overview-reminder-add{flex:0 0 auto;display:inline-flex;align-items:center;gap:5px;padding:7px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--brand-deep);font:inherit;font-size:.7rem;font-weight:700;cursor:pointer}.overview-reminder-add:hover{border-color:var(--brand);background:var(--surface-soft)}.overview-reminder-item{display:flex;align-items:center;gap:10px;padding:8px 0}.overview-reminder-icon{width:27px;height:27px;flex:0 0 auto;display:grid;place-items:center;border-radius:8px;color:var(--brand-deep);background:#005f8617}.overview-reminder-modal{width:min(500px,calc(100vw - 28px));display:grid;gap:16px;padding:22px;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:0 24px 64px #0524344d}.overview-reminder-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.overview-reminder-field{display:grid;gap:6px}.overview-reminder-field>span:first-child{color:var(--muted);font-size:.72rem;font-weight:700}.overview-reminder-field input,.overview-reminder-field textarea{width:100%;min-width:0;padding:9px 11px;border:1px solid var(--input-border);border-radius:9px;outline:0;background:var(--input-bg);color:var(--ink);font:inherit;font-size:.82rem;resize:vertical}.overview-reminder-field input:focus,.overview-reminder-field textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px #005f861a}.overview-reminder-field input[readonly]{color:var(--muted);background:var(--surface-soft)}.overview-reminder-time{display:flex;align-items:center;gap:7px;padding-left:10px;border:1px solid var(--input-border);border-radius:9px;color:var(--muted);background:var(--input-bg)}.overview-reminder-time input{padding-left:0;border:0;box-shadow:none}.overview-reminder-time input:focus{box-shadow:none}.overview-reminder-modal .task-summary-open:disabled{opacity:.6;cursor:wait}[data-theme=dark] .overview-notify-row>*{box-shadow:0 5px #0000002e}[data-theme=dark] .messages-preview-avatar{color:#d8edf7;background:#54cef424}@media(max-width:900px){.overview-notify-row{grid-template-columns:1fr}}@media(max-width:640px){.messages-preview-head{align-items:flex-start}.messages-preview-all{white-space:nowrap}.overview-calendar{padding-inline:14px}.overview-calendar-cell{min-height:40px}.overview-calendar-day{width:28px;height:28px}.overview-calendar-selected-head{align-items:flex-start}.overview-reminder-fields{grid-template-columns:1fr}}.messages-page{display:grid;gap:18px;max-width:1100px;min-width:0;margin:6px auto 0}.messages-page-head{display:grid;gap:6px}.messages-page-head .section-kicker{display:inline-flex;align-items:center;gap:7px;color:var(--brand);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.messages-page-head h2{margin:2px 0 0;font-size:1.5rem}.messages-page-head p{margin:0;color:var(--muted);font-size:.86rem}.notif-page{display:flex;min-height:0;height:calc(100vh - 148px);min-height:520px;max-height:900px;border:1px solid var(--line);border-radius:16px;background:var(--surface);overflow:hidden;position:relative}.notif-list-pane{width:400px;flex-shrink:0;display:flex;flex-direction:column;min-height:0;border-right:1px solid var(--line);background:var(--surface)}.notif-list-head{padding:22px 22px 14px}.notif-list-head .section-kicker{display:inline-flex;align-items:center;gap:7px;color:var(--brand);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.notif-list-head h2{margin:6px 0 0;font-size:1.35rem;color:var(--ink)}.notif-list-head p{margin:6px 0 0;color:var(--muted);font-size:.8rem;line-height:1.4}.notif-tabs{display:flex;gap:4px;padding:0 22px;border-bottom:1px solid var(--line)}.notif-tabs button{display:inline-flex;align-items:center;gap:6px;padding:9px 4px 11px;margin-right:18px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);font:inherit;font-weight:700;font-size:.84rem;cursor:pointer}.notif-tabs button.active{color:var(--ink);border-bottom-color:var(--brand)}.notif-search-row{display:flex;flex-direction:column;gap:9px;padding:14px 22px 9px}.notif-search-box{display:flex;align-items:center;gap:7px;padding:0 11px;border:1px solid var(--line);border-radius:9px;background:var(--surface-soft);color:var(--muted)}.notif-search-box input{flex:1;min-width:0;border:none;outline:0;padding:9px 0;background:transparent;color:var(--ink);font:inherit;font-size:.82rem}.notif-filter-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.notif-filter-row select{border:1px solid var(--line);border-radius:8px;padding:5px 8px;font-size:.74rem;font-weight:600;color:var(--muted);background:var(--surface);outline:0}.notif-filter-row select:focus{border-color:var(--brand);box-shadow:0 0 0 2px var(--focus-ring)}.notif-result-count{flex-shrink:0;color:var(--muted);font-size:.72rem;font-weight:600}.notif-list-scroll{flex:1;min-height:0;overflow-y:auto;padding:4px 12px 20px}.notif-list-scroll::-webkit-scrollbar{width:8px}.notif-list-scroll::-webkit-scrollbar-thumb{border-radius:999px;background:#005f8638}.notif-list-scroll::-webkit-scrollbar-track{background:transparent}.notif-empty{padding:60px 20px;color:var(--muted);font-size:.84rem;text-align:center}.notif-day-label{padding:14px 8px 6px;color:var(--muted);font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.notif-item{display:flex;gap:10px;width:100%;padding:12px 10px;margin-bottom:3px;border:1px solid var(--line);border-radius:12px;background:var(--surface);text-align:left;cursor:pointer;transition:background .12s ease,border-color .12s ease}.notif-item:hover{background:var(--surface-soft)}.notif-item.unread{background:#237c490f;border-color:#237c4929}.notif-item.unread:hover{background:#237c491a}.notif-item.selected,.notif-item.unread.selected{background:#005f8614;border-color:#005f864d}.notif-item-avatar-wrap{position:relative;flex-shrink:0}.notif-item-avatar{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:9px;color:#fff;font-size:.78rem;font-weight:700}.notif-item-dot{position:absolute;top:-2px;right:-2px;width:9px;height:9px;border-radius:50%;background:var(--brand);border:2px solid var(--surface)}.notif-item-body{min-width:0;flex:1;display:flex;flex-direction:column}.notif-item-top{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.notif-item-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink);font-size:.8rem;font-weight:600}.notif-item-name.unread{font-weight:800}.notif-item-time{flex-shrink:0;color:var(--muted);font-size:.68rem}.notif-item-subject{margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--brand-deep);font-size:.78rem;font-weight:600}.notif-item-preview{margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:.74rem}.notif-item-attachment-chip{display:inline-flex;align-items:center;gap:4px;width:fit-content;margin-top:6px;padding:3px 8px;border-radius:6px;background:var(--surface-soft);color:var(--muted);font-size:.62rem;font-weight:700}.notif-detail-pane{flex:1;min-width:0;display:flex;flex-direction:column;background:var(--surface-soft)}.notif-detail-content{flex:1;min-height:0;overflow-y:auto;padding:clamp(20px,3vw,40px) clamp(20px,4vw,48px);animation:notif-slide-in .18s ease}@keyframes notif-slide-in{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}.notif-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:20px;border-bottom:1px solid var(--line)}.notif-detail-header-left{display:flex;gap:14px;min-width:0}.notif-detail-avatar{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:48px;height:48px;border-radius:13px;color:#fff;font-size:1.05rem;font-weight:700}.notif-detail-subject{color:var(--ink);font-size:1.25rem;font-weight:800;overflow-wrap:anywhere}.notif-detail-meta{margin-top:6px;color:var(--muted);font-size:.82rem}.notif-detail-chip{flex-shrink:0;padding:7px 13px;border-radius:8px;background:var(--surface);color:var(--muted);font-size:.72rem;font-weight:700;white-space:nowrap}.notif-detail-body{padding-top:24px;color:var(--ink);font-size:.95rem;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere}.notif-detail-sent-meta{margin-top:14px;color:var(--muted);font-size:.78rem;font-weight:600}.notif-detail-attachment{margin-top:22px;max-width:380px}.notif-detail-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--muted);opacity:.7}.notif-detail-empty span{font-size:.84rem;font-weight:600}@media(max-width:900px){.notif-page{height:auto;max-height:none;flex-direction:column}.notif-list-pane{width:auto;border-right:0;border-bottom:1px solid var(--line)}.notif-detail-pane{min-height:360px}}.messages-tabs{display:flex;gap:4px;border-bottom:1px solid var(--line)}.messages-tabs button{display:inline-flex;align-items:center;gap:7px;padding:10px 14px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);font:inherit;font-weight:600;font-size:.82rem;cursor:pointer}.messages-tabs button.active{color:var(--brand-deep);border-bottom-color:var(--brand)}.messages-tab-badge{padding:1px 7px;border-radius:999px;background:var(--brand);color:#fff;font-size:.68rem;font-weight:700}.messages-filter-bar{display:grid;grid-template-columns:minmax(0,1fr) 170px;gap:10px;align-items:center}.messages-filter-bar .messages-search-box{min-width:0}.messages-filter-bar .messages-search-box button{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:0;border-radius:7px;background:transparent;color:var(--muted);cursor:pointer}.messages-filter-bar .messages-search-box button:hover{background:var(--surface-soft);color:var(--brand-deep)}.messages-filter-bar select{width:100%;border:1px solid var(--line);border-radius:9px;padding:9px 10px;outline:0;background:var(--surface);color:var(--ink);font:inherit;font-size:.84rem;font-weight:600}.messages-filter-bar select:focus{border-color:var(--brand);box-shadow:0 0 0 2px var(--focus-ring)}.messages-filter-summary{margin-top:-10px;color:var(--muted);font-size:.74rem;font-weight:700}.messages-feed{display:grid;gap:4px;max-height:min(62vh,620px);border:1px solid var(--line);border-radius:12px;background:var(--surface);overflow-x:hidden;overflow-y:auto}.messages-feed::-webkit-scrollbar{width:8px}.messages-feed::-webkit-scrollbar-thumb{border-radius:999px;background:#005f8642}.messages-feed::-webkit-scrollbar-track{background:transparent}.messages-day-group{border-bottom:1px solid var(--line)}.messages-day-group:last-child{border-bottom:none}.messages-day-heading{padding:12px 16px 8px;color:var(--muted);font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.messages-feed-row{border-top:1px solid var(--line)}.messages-day-group>.messages-feed-row:first-of-type{border-top:none}.messages-feed-row.unread{background:#005f860b}.messages-feed-row-head{width:100%;display:flex;align-items:flex-start;gap:12px;padding:12px 16px;border:none;background:transparent;text-align:left;cursor:pointer}.messages-feed-time{flex:0 0 auto;width:62px;padding-top:2px;color:var(--muted);font-size:.74rem}.messages-feed-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:30px;height:30px;border-radius:50%;background:var(--surface-soft);color:var(--muted)}.messages-feed-row.unread .messages-feed-icon{background:#005f861f;color:var(--brand-deep)}.messages-feed-text{min-width:0;flex:1 1 auto;display:grid;gap:3px;color:var(--ink);font-size:.85rem;line-height:1.4}.messages-feed-sender{color:var(--ink);font-size:.84rem;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.messages-feed-title{display:block;color:var(--brand-deep);font-size:.8rem;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.messages-feed-snippet{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--ink);overflow-wrap:anywhere}.messages-feed-row.open .messages-feed-snippet{-webkit-line-clamp:unset;overflow:visible}.messages-feed-open-hint{display:inline-flex;align-items:center;gap:5px;width:fit-content;margin-top:3px;padding:3px 8px;border:1px solid rgba(0,95,134,.18);border-radius:999px;background:#005f860f;color:var(--brand-deep);font-size:.7rem;font-weight:700}.messages-feed-open-hint svg{flex:0 0 auto}.messages-fab{position:fixed;z-index:90;right:32px;bottom:32px;display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border:none;border-radius:50%;background:var(--brand-deep);color:#fff;box-shadow:0 12px 28px #05243447;cursor:pointer}.messages-fab:hover{background:var(--brand)}.messages-compose-overlay{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:20px;background:#05243466}.messages-compose-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:2px}.messages-compose-head h3{margin:0;font-size:1.05rem;color:var(--ink)}.messages-compose-head button{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--muted);cursor:pointer}.messages-compose{width:min(760px,100%);max-height:90vh;overflow-y:auto;display:grid;gap:14px;padding:24px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:0 24px 60px #0524344d}.messages-compose label{display:grid;gap:6px;font-size:.76rem;font-weight:600;color:var(--muted)}.messages-compose input,.messages-compose textarea,.messages-compose select{width:100%;border:1px solid var(--line);border-radius:9px;padding:9px 11px;outline:0;color:var(--ink);background:var(--surface);font:inherit;font-size:.85rem;font-weight:400;resize:vertical}.messages-compose input:focus,.messages-compose textarea:focus,.messages-compose select:focus{border-color:var(--brand);box-shadow:0 0 0 2px var(--focus-ring)}.messages-back-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--muted);cursor:pointer}.messages-back-btn:hover{color:var(--brand-deep);border-color:#005f864d}.messages-choose-recipients-btn{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);font:inherit;cursor:pointer;text-align:left}.messages-choose-recipients-btn:hover{border-color:var(--brand)}.messages-choose-recipients-btn>span:first-child{display:grid;gap:2px;min-width:0}.messages-choose-recipients-btn svg:last-child{flex-shrink:0;color:var(--muted)}.messages-choose-recipients-label{font-size:.76rem;font-weight:600;color:var(--muted)}.messages-choose-recipients-value{font-size:.88rem;font-weight:600;color:var(--brand-deep);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.messages-category-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.messages-category-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:22px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--muted);cursor:pointer;text-align:center}.messages-category-card svg{color:var(--brand)}.messages-category-card span{font-size:.85rem;font-weight:600;color:var(--ink)}.messages-category-card:hover{border-color:var(--brand);background:#005f860a}.messages-category-card.active{border-color:var(--brand);background:#005f8614}.messages-category-card.active span{color:var(--brand-deep)}.messages-class-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(76px,1fr));gap:8px}.messages-class-chip{display:flex;align-items:center;justify-content:center;gap:5px;padding:9px 0;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--ink);font:inherit;font-size:.82rem;font-weight:600;cursor:pointer}.messages-class-chip:hover{border-color:var(--brand)}.messages-class-chip.active{background:var(--brand);border-color:var(--brand);color:#fff}.messages-field-group{display:grid;gap:10px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface-soft)}.messages-field-group-label{font-size:.78rem;font-weight:700;color:var(--brand-deep)}.messages-step-footer{position:sticky;bottom:-24px;z-index:1;margin:4px -24px -24px;padding:14px 24px 24px;background:var(--surface);border-top:1px solid var(--line)}.messages-step-footer .messages-send-btn{width:100%;justify-content:center}.messages-recipient-search-label{font-size:.76rem;font-weight:600;color:var(--muted)}.messages-guardian-hint{margin:0;color:var(--brand-deep);font-size:.74rem}.messages-compose-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.messages-audience-chips{display:flex;gap:8px;flex-wrap:wrap}.messages-audience-chips button{display:inline-flex;align-items:center;gap:6px;padding:8px 13px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--muted);font:inherit;font-size:.78rem;font-weight:600;cursor:pointer}.messages-audience-chips button.active{background:var(--brand);border-color:var(--brand);color:#fff}.messages-recipient-search{display:grid;gap:10px;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--surface-soft)}.messages-roster-list{display:flex;flex-direction:column;gap:2px;max-height:220px;overflow-y:auto;border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:4px}.messages-roster-item{display:flex;align-items:center;gap:9px;padding:7px 9px;border-radius:7px;cursor:pointer}.messages-roster-item:hover{background:var(--surface-soft)}.messages-roster-item input[type=checkbox]{flex:0 0 auto;width:16px;height:16px;margin:0;accent-color:var(--brand);cursor:pointer}.messages-roster-item span{color:var(--ink);font-size:.82rem;font-weight:600}.messages-roster-item small{color:var(--muted);font-size:.72rem;margin-left:auto}.messages-recipient-chips-wrap{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.messages-recipient-chips{display:flex;flex-wrap:wrap;gap:8px}.messages-clear-all{padding:5px 11px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font:inherit;font-size:.74rem;font-weight:600;cursor:pointer}.messages-clear-all:hover{color:var(--brand-deep);border-color:#005f864d}.messages-recipient-chip{display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border-radius:999px;background:#005f861a;color:var(--brand-deep);font-size:.8rem;font-weight:600}.messages-recipient-chip button{display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--brand-deep);cursor:pointer}.messages-search-box{display:flex;align-items:center;gap:8px;padding:0 11px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--muted)}.messages-search-box input{flex:1;border:none;outline:0;padding:9px 0;background:transparent;color:var(--ink);font:inherit;font-size:.85rem}.messages-candidate-list{display:flex;flex-direction:column;gap:4px;max-height:96px;overflow-y:auto}.messages-candidate{display:flex;flex-direction:column;gap:1px;padding:8px 11px;border:1px solid var(--line);border-radius:8px;background:var(--surface);text-align:left;cursor:pointer;flex-shrink:0}.messages-candidate:hover{border-color:var(--brand);background:#005f860d}.messages-candidate strong{color:var(--ink);font-size:.82rem}.messages-candidate span{color:var(--muted);font-size:.72rem}.messages-error{margin:0;color:var(--brand-deep);font-weight:600;font-size:.8rem}.messages-notice{margin:0;color:var(--brand-deep);font-size:.8rem}.messages-send-btn{justify-self:start;display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border:1px solid var(--brand-deep);border-radius:10px;background:var(--brand-deep);color:#fff;font:inherit;font-size:.85rem;font-weight:700;cursor:pointer}.messages-send-btn:disabled{opacity:.5;cursor:default}.messages-attach-btn{justify-self:start;display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--muted);font:inherit;font-size:.8rem;font-weight:600;cursor:pointer}.messages-attach-btn:hover{color:var(--brand-deep);border-color:#005f864d}.messages-feed-attachment{padding:0 16px 12px 44px}.messages-sent-attachment{min-width:0}.messages-sent-list{display:grid;gap:10px;max-height:min(62vh,620px);overflow-x:hidden;overflow-y:auto;padding-right:3px}.messages-sent-list::-webkit-scrollbar{width:8px}.messages-sent-list::-webkit-scrollbar-thumb{border-radius:999px;background:#005f8642}.messages-sent-list::-webkit-scrollbar-track{background:transparent}.messages-sent-list h3{margin:0;font-size:.88rem;color:var(--ink)}.messages-sent-item{display:grid;gap:5px;min-width:0;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--surface-soft)}.messages-sent-item header{display:flex;align-items:center;gap:10px;min-width:0}.messages-sent-item header strong{min-width:0;overflow-wrap:anywhere}.messages-sent-item header small{margin-left:auto;flex-shrink:0;color:var(--muted);font-size:.7rem}.messages-sent-item p{margin:0;color:var(--ink);font-size:.8rem;line-height:1.4;white-space:pre-wrap;overflow-wrap:anywhere}.messages-sent-meta{display:flex;gap:14px;color:var(--muted);font-size:.72rem}.test-users-settings{display:grid;gap:16px}.test-users-settings .settings-panel-head{display:grid;gap:4px}.test-users-settings .settings-panel-head h3{margin:0;color:var(--ink)}.test-users-settings .settings-panel-head p{margin:0;color:var(--muted);font-size:.82rem;max-width:60ch}.test-users-seed{align-self:start;display:inline-flex;align-items:center;gap:8px;margin-top:4px;padding:9px 15px;border:1px solid var(--brand);border-radius:10px;background:#005f860f;color:var(--brand-deep);font:inherit;font-size:.8rem;font-weight:700;cursor:pointer}.test-users-seed:hover{background:#005f861f}.test-users-seed:disabled{opacity:.5;cursor:default}.test-users-form{display:flex;flex-wrap:wrap;align-items:end;gap:12px;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--surface-soft)}.test-users-form label{display:grid;gap:5px;font-size:.74rem;font-weight:600;color:var(--muted);min-width:150px}.test-users-form input,.test-users-form select{border:1px solid var(--line);border-radius:9px;padding:9px 11px;outline:0;color:var(--ink);background:var(--surface);font:inherit;font-size:.85rem}.test-users-form input:focus,.test-users-form select:focus{border-color:var(--brand);box-shadow:0 0 0 2px var(--focus-ring)}.test-users-add{display:inline-flex;align-items:center;gap:7px;padding:10px 16px;border:1px solid var(--brand-deep);border-radius:10px;background:var(--brand-deep);color:#fff;font:inherit;font-size:.82rem;font-weight:700;cursor:pointer}.test-users-add:disabled{opacity:.5;cursor:default}.test-users-hint{margin:0;color:var(--muted);font-size:.78rem}.test-users-list{display:grid;gap:14px}.test-users-group{display:grid;gap:6px}.test-users-group-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.test-users-item{display:flex;align-items:center;gap:12px;padding:10px 14px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.test-users-item>div{display:grid;gap:2px;min-width:0;flex:1}.test-users-item strong{color:var(--ink);font-size:.86rem;overflow-wrap:anywhere}.test-users-item small{color:var(--muted);font-size:.74rem}.test-users-item button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--muted);cursor:pointer}.test-users-item button:hover{color:#b42318;border-color:#b423184d}@media(max-width:640px){.messages-compose-row,.messages-filter-bar{grid-template-columns:1fr}.messages-feed,.messages-sent-list{max-height:58vh}.messages-feed-row-head{gap:9px;padding:11px 12px}.messages-feed-time{width:54px;font-size:.7rem}.messages-fab{right:24px;bottom:24px}.chat-launcher.chat-launcher-next-to-messages{right:92px;bottom:24px}}.student-meet .section-heading-row{align-items:center}.student-meet-badge{padding:5px 12px;border-radius:999px;background:#005f861a;color:var(--brand-deep);font-size:.76rem;font-weight:700}.student-meet-list{display:grid;gap:12px;margin-top:14px}.student-meet-card{display:grid;gap:9px;padding:15px 16px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.student-meet-card.urgent{border-color:#b03a3a66;box-shadow:inset 3px 0 #b03a3a}.student-meet-card header{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.student-meet-who{display:grid;gap:2px;margin-right:auto}.student-meet-who strong{font-size:.9rem;color:var(--ink)}.student-meet-who small{color:var(--muted);font-size:.74rem}.student-meet-status{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:999px;font-size:.72rem;font-weight:700}.student-meet-status.pending{background:#005f861a;color:var(--brand-deep)}.student-meet-status.ok{background:#1f8a5f1f;color:#1f8a5f}.student-meet-status.no{background:#b03a3a1a;color:#b03a3a}.student-meet-status.muted{background:var(--surface-soft);color:var(--muted)}.student-meet-tag.urgent{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:999px;background:#b03a3a1a;color:#b03a3a;font-size:.68rem;font-weight:700}.student-meet-reason{margin:0;color:var(--ink);font-size:.85rem;line-height:1.45;white-space:pre-wrap}.student-meet-meta{display:flex;flex-wrap:wrap;gap:4px 14px;color:var(--muted);font-size:.74rem}.student-meet-note{margin:0;padding:8px 10px;border-radius:8px;background:var(--surface-soft);color:var(--ink);font-size:.8rem}.student-meet-actions{display:flex;gap:8px}.student-meet-actions button,.student-meet-form-actions button{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:9px;border:1px solid var(--line);background:var(--surface);font:inherit;font-size:.8rem;font-weight:600;cursor:pointer}.student-meet-actions .accept,.student-meet-form-actions .accept{background:var(--brand-deep);border-color:var(--brand-deep);color:#fff}.student-meet-actions .decline:hover,.student-meet-form-actions .decline{color:#b03a3a}.student-meet-form-actions .decline{background:#b03a3a;border-color:#b03a3a;color:#fff}.student-meet-actions button:disabled,.student-meet-form-actions button:disabled{opacity:.5;cursor:default}.student-meet-form{display:grid;gap:10px;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--surface-soft)}.student-meet-form label{display:grid;gap:5px;font-size:.74rem;font-weight:600;color:var(--muted)}.student-meet-form input,.student-meet-form textarea{width:100%;border:1px solid var(--line);border-radius:8px;padding:8px 10px;outline:0;color:var(--ink);background:var(--surface);font:inherit;font-size:.84rem;resize:vertical}.student-meet-form input:focus,.student-meet-form textarea:focus{border-color:var(--brand);box-shadow:0 0 0 2px var(--focus-ring)}.student-meet-form-actions{display:flex;gap:8px}.student-meet-form-actions .ghost{color:var(--muted)}.student-meet-error{margin:0;color:#b03a3a;font-size:.78rem}@media(max-width:1480px){.student-care-layout,.student-care-form-block-bottom{grid-template-columns:1fr}.student-care-top-actions{justify-content:stretch}.student-care-top-actions-inner{width:100%;justify-items:stretch}.student-care-tab-group{grid-auto-columns:1fr}.student-care-tab{padding:0 12px}.student-care-access-panel{width:100%}.counselor-referral-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:900px){.student-care-counselor-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.counselor-referral-summary{grid-template-columns:minmax(160px,1fr) .4fr .8fr auto 28px}.counselor-referral-summary>span:nth-child(4){display:none}.counselor-referral-expanded{grid-template-columns:1fr}.counselor-action-panel{border-top:1px solid var(--line);border-left:0}.counselor-action-panel .close-action{margin-top:0}.counselor-inbox-card .student-care-card-header{grid-template-columns:44px minmax(0,1fr)}.counselor-archive-toggle{grid-column:1 / -1;width:100%}.student-care-locked-gate-body{align-items:stretch;flex-direction:column}.student-care-locked-gate .student-care-microsoft-link{width:100%}.counselor-direct-meeting{grid-template-columns:repeat(2,minmax(0,1fr))}.counselor-direct-meeting>div{grid-column:1 / -1}.counselor-operations-grid{grid-template-columns:1fr}.counselor-monthly-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.counselor-monthly-stats>div:nth-child(2){border-right:0}.counselor-monthly-stats>div:nth-child(-n+2){border-bottom:1px solid var(--line)}}@media(max-width:600px){.counselor-page-header,.counselor-header-actions{align-items:stretch;flex-direction:column}.counselor-header-actions>button{width:100%}.counselor-new-referral{width:100%}.student-care-counselor-stats{grid-template-columns:1fr}.counselor-referral-head{flex-direction:column}.counselor-referral-grid{grid-template-columns:1fr}.counselor-referral-summary{grid-template-columns:minmax(0,1fr) auto 30px}.counselor-referral-summary>span:nth-child(2),.counselor-referral-summary>span:nth-child(3),.counselor-referral-summary>span:nth-child(4){display:none}.counselor-direct-meeting{grid-template-columns:1fr}.counselor-direct-meeting>div{grid-column:auto}.referral-case-operations,.counselor-monthly-stats{grid-template-columns:1fr}.counselor-monthly-stats>div{border-right:0;border-bottom:1px solid var(--line)}.counselor-calendar-list>article{grid-template-columns:1fr}.counselor-calendar-actions{flex-wrap:wrap}.student-care-locked-gate-body{padding:16px}}.drawer-backdrop{position:fixed;inset:0;z-index:50;display:flex;justify-content:flex-end;background:#031b287a;animation:fade-in .2s ease both}.drawer-backdrop.centered{align-items:center;justify-content:center;padding:20px}.user-drawer{position:relative;width:min(100%,470px);height:100%;overflow-y:auto;padding:44px 38px;background:var(--surface);box-shadow:-18px 0 50px #001e2d2e;animation:drawer-in .32s cubic-bezier(.2,.75,.25,1) both}.drawer-close{position:absolute;top:24px;right:24px;width:38px;height:38px;display:grid;place-items:center;border:0;border-radius:50%;color:var(--muted);background:var(--soft)}.user-drawer h2{margin:8px 0 9px;color:var(--ink);font-size:2rem;letter-spacing:-.04em}.user-drawer>p{margin:0 0 30px;color:var(--muted);line-height:1.55}.user-drawer form{display:grid;gap:18px}.user-drawer label{display:grid;gap:8px;color:var(--ink);font-size:.82rem;font-weight:600}.user-drawer input,.user-drawer select{width:100%;height:48px;border:1px solid var(--input-border);border-radius:8px;padding:0 12px;outline:0;color:var(--ink);background:var(--input-bg)}.user-drawer input:focus,.user-drawer select:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--focus-ring)}.user-drawer label small{color:var(--muted);font-weight:400}.auth-method-preview{display:flex;align-items:flex-start;gap:10px;padding:13px;color:var(--muted);background:var(--soft);border-radius:8px;font-size:.8rem;line-height:1.45}.auth-method-preview svg{flex:0 0 auto;color:var(--brand)}.auth-method-preview span{display:grid;gap:3px}.auth-method-preview strong{color:var(--brand-dark);font-size:.82rem}.drawer-actions{display:grid;grid-template-columns:.7fr 1.3fr;gap:10px;margin-top:10px}.user-drawer.delete-users-drawer{width:min(760px,calc(100vw - 32px));height:auto;max-height:calc(100svh - 36px);overflow-x:hidden;overflow-y:auto;border-radius:22px;padding:38px;box-shadow:0 24px 70px #001e2d38;animation:modal-pop .24s cubic-bezier(.2,.75,.25,1) both}.user-drawer.delete-users-drawer h2{max-width:620px;font-size:clamp(2rem,4vw,2.65rem);line-height:1.03}.user-drawer.delete-users-drawer>p{max-width:660px;margin-bottom:22px}.delete-users-drawer .delete-users-confirm{grid-template-columns:minmax(220px,1fr) minmax(170px,210px) minmax(150px,190px)}@media(max-width:700px){.user-drawer.delete-users-drawer{width:calc(100vw - 20px);max-height:calc(100svh - 20px);padding:36px 22px 24px;border-radius:18px}.user-drawer.delete-users-drawer h2{font-size:clamp(1.85rem,8vw,2.35rem)}.delete-users-drawer .delete-users-confirm{grid-template-columns:1fr;padding:14px}.delete-users-drawer .drawer-close{top:14px;right:14px}}.reset-dialog{position:relative;width:min(100%,430px);max-height:calc(100svh - 40px);overflow-y:auto;padding:38px;border-radius:16px;background:var(--surface);box-shadow:0 24px 80px #001e2d3d;animation:method-reveal .24s ease both}.reset-dialog h2{margin:8px 0;color:var(--ink);font-size:1.8rem;letter-spacing:-.035em}.reset-dialog p{margin:0 0 22px;color:var(--muted);line-height:1.55}.reset-dialog form{display:grid;gap:16px}.reset-dialog label{display:grid;gap:8px;color:var(--ink);font-size:.82rem;font-weight:600}.reset-dialog input{width:100%;height:48px;border:1px solid var(--input-border);border-radius:8px;padding:0 12px;outline:0;color:var(--ink);background:var(--input-bg)}.reset-dialog.link-dialog{width:min(1280px,calc(100vw - 32px));max-width:none;max-height:min(92vh,920px);overflow:auto;resize:both;padding:clamp(24px,3vw,38px)}.reset-dialog.link-dialog h2{font-size:clamp(1.65rem,2.1vw,2.35rem)}.reset-dialog.link-dialog>p{max-width:780px}@keyframes image-arrival{0%{opacity:.65;transform:scale(1.045)}to{opacity:1;transform:scale(1)}}@keyframes copy-arrival{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@keyframes form-arrival{0%{opacity:0;transform:translate(18px)}to{opacity:1;transform:translate(0)}}@keyframes method-reveal{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@keyframes workspace-arrival{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes drawer-in{0%{transform:translate(35px)}to{transform:translate(0)}}@keyframes modal-pop{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes loading-line{0%{transform:translate(-100%)}to{transform:translate(200%)}}@media(max-width:1080px){.login-shell{grid-template-columns:minmax(0,.9fr) minmax(480px,1.1fr)}.overview-timetable-body{grid-template-columns:1fr;gap:12px}.overview-period-now{padding:0}.metrics-row{grid-template-columns:repeat(2,1fr)}.metric:nth-child(2){border-right:0}.metric:nth-child(-n+2){border-bottom:1px solid var(--line)}.access-overview{grid-template-columns:1fr;gap:28px}.student-care-toolbar{align-items:stretch;flex-direction:column}.student-care-filter,.student-care-filter-button{width:100%}}@media(min-width:1500px)and (min-height:850px){.login-shell{grid-template-columns:minmax(0,1.08fr) minmax(520px,.92fr)}.form-panel{padding:clamp(28px,3vh,42px) clamp(56px,4.6vw,92px) clamp(22px,3vh,40px)}.form-wrap{width:min(100%,540px)}.form-heading h1{font-size:clamp(1.9rem,1.9vw,2.25rem)}.visual-module-pills{left:56px;right:56px}.visual-module-pills span{font-size:.74rem}}@media(min-width:1800px){.app-shell{grid-template-columns:280px minmax(0,1fr)}.dashboard-main{width:100%;max-width:1680px;margin:0 auto}}@media(max-height:780px)and (min-width:821px){.visual-site-link{top:18px;left:26px}.visual-module-pills{left:24px;right:24px;bottom:22px}.visual-module-pills span{font-size:clamp(.54rem,.68vw,.68rem)}.form-panel{padding-top:16px;padding-bottom:14px}.compact-brand img{width:34px;height:34px}.form-wrap{padding:24px 0 18px}.login-slogan{margin-bottom:24px;font-size:clamp(2.25rem,3vw,2.65rem);letter-spacing:.2em}.form-heading{margin-bottom:16px}.form-heading h1{margin:6px 0 7px;font-size:clamp(1.6rem,1.85vw,1.9rem)}.form-heading p{font-size:.88rem;line-height:1.42}.login-form{gap:7px}.input-shell{min-height:46px}.input-shell input{height:44px}.login-method{padding:9px 12px}.login-method span{line-height:1.35}.login-submit{min-height:46px;margin-top:4px}.forgot-row{font-size:.8rem}.access-note{margin-top:10px;font-size:.76rem;line-height:1.34}.login-footer{font-size:.68rem}.btec-project-workspace,.btec-project-section-stack{gap:10px}}@media(max-height:660px)and (min-width:821px){.form-heading p,.access-note,.login-footer{display:none}.form-panel{padding-top:12px;padding-bottom:12px}.form-wrap{padding:14px 0 10px}.login-slogan{margin-bottom:16px;font-size:1.72rem;letter-spacing:.16em}.form-heading{margin-bottom:12px}.theme-switcher button,.language-switcher button{height:27px}}@media(max-width:820px){.login-shell{display:grid;grid-template-columns:1fr;grid-template-rows:minmax(210px,34svh) auto;min-height:100svh}.visual-panel{min-height:clamp(210px,34svh,330px)}.visual-site-link{top:16px;left:18px;min-height:34px;font-size:.76rem}.visual-module-pills{left:18px;right:18px;bottom:18px;gap:5px}.visual-module-pills span{font-size:clamp(.48rem,1.6vw,.66rem)}.visual-module-pills span+span:before{margin-right:5px}.form-panel{min-height:auto;padding:20px 26px 24px}.form-wrap{padding:34px 0 28px}.login-slogan{justify-content:flex-start;margin-bottom:30px;font-size:clamp(1.75rem,6vw,2.1rem);letter-spacing:.16em}.form-heading{margin-bottom:24px}.form-heading h1{font-size:clamp(1.55rem,5.2vw,1.85rem)}.app-shell,.app-shell.sidebar-collapsed{display:block}.sidebar,.sidebar.collapsed{position:static;height:auto;padding:15px;display:grid;grid-template-columns:1fr auto;align-items:center}.sidebar-toggle{display:none}.sidebar.collapsed .sidebar-brand{justify-content:flex-start}.sidebar.collapsed .sidebar-brand span,.sidebar.collapsed .sidebar-nav span,.sidebar.collapsed .logout-button{font-size:inherit}.sidebar-brand{padding:0}.sidebar-nav{grid-column:1 / -1;grid-row:2;display:flex;overflow-x:auto;margin-top:14px}.sidebar-nav button{width:auto;flex:0 0 auto}.sidebar-profile{display:none}.logout-button,.sidebar.collapsed .logout-button{grid-column:2;grid-row:1;justify-content:center;padding-inline:12px}.dashboard-main{padding:25px 20px 45px}.dashboard-header{align-items:flex-start;flex-direction:column}.access-policy-strip,.invite-policy-strip{grid-template-columns:1fr;gap:14px}.appearance-layout{grid-template-columns:1fr}.image-preview-frame,.image-preview-frame img{min-height:340px}.image-controls{padding:28px}.student-care-confirm-card{grid-template-columns:1fr}.student-care-confirm-actions{justify-content:flex-end}.student-care-card-header,.student-care-form,.student-care-toolbar,.student-care-pagination{padding-left:20px;padding-right:20px}.student-care-grid,.student-care-reasons,.student-care-urgency-options{grid-template-columns:1fr}.student-care-actions{flex-direction:column-reverse}.student-care-actions .primary-action,.student-care-actions .secondary-action,.student-care-search,.student-care-filter-button{width:100%}.link-modal-backdrop{align-items:stretch;justify-content:stretch;padding:10px}.reset-dialog.link-dialog{width:calc(100vw - 20px);max-height:calc(100svh - 20px);resize:none;border-radius:14px;overflow-x:hidden}.link-dialog .drawer-close{top:12px;right:12px}.link-workspace-grid,.link-save-row,.subject-settings-grid,.subject-settings-grid.two,.cleanup-grid,.cleanup-confirm{grid-template-columns:1fr}.link-selection-panel{min-height:360px}.link-table-wrap{max-height:310px}.btec-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.btec-header{align-items:stretch;flex-direction:column}.btec-header .secondary-action{width:100%}.school-context-bar{align-items:stretch;flex-direction:column}.header-controls{justify-content:flex-start;flex-wrap:wrap}.school-context-bar select{flex:1 1 220px;min-width:220px}.section-action-group{justify-content:stretch;width:100%}.section-action-group .primary-action,.section-action-group .secondary-action{flex:1 1 180px}.global-ai-form-grid,.global-ai-school-access,.global-ai-summary-card{grid-template-columns:1fr}.settings-header{align-items:stretch;flex-direction:column}.btec-header-actions{justify-content:flex-start}.btec-header-actions .primary-action,.btec-header-actions .secondary-action{width:auto;flex:1 1 180px}.btec-status-grid,.btec-action-grid,.btec-recent-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.btec-tabs,.btec-tabs-scroll{gap:18px}.btec-more-menu{right:0}}@media(max-width:560px){.login-shell{grid-template-rows:minmax(176px,27svh) auto}.visual-panel{min-height:clamp(176px,27svh,240px)}.visual-site-link{top:12px;left:12px;min-height:31px;padding:0 9px}.visual-module-pills{left:10px;right:10px;bottom:12px;gap:2px}.visual-module-pills span{font-size:clamp(.44rem,1.88vw,.58rem)}.visual-module-pills span+span:before{margin-right:3px}.form-panel{padding:16px 18px 20px}.login-topbar{align-items:flex-start;gap:12px}.topbar-controls{gap:6px}.compact-brand span{display:none}.compact-brand img{width:34px;height:34px}.theme-switcher button{min-width:42px;height:29px;font-size:.66rem}.language-switcher button{min-width:34px;height:29px}.form-wrap{padding:32px 0 22px}.login-slogan{gap:8px;margin-bottom:26px;font-size:clamp(1.55rem,7vw,1.9rem);letter-spacing:.14em}.form-heading{margin-bottom:21px}.form-heading h1{font-size:clamp(1.45rem,6.4vw,1.7rem)}.form-heading p{font-size:.86rem;line-height:1.4}.login-form{gap:7px}.input-shell,.login-submit{min-height:50px}.input-shell input{height:48px}.login-method{padding:10px 12px}.access-note{margin-top:12px;font-size:.76rem}.login-footer{margin-top:12px;font-size:.68rem}.dashboard-main{padding-inline:16px}.dashboard-header h1{font-size:1.75rem}.metrics-row{grid-template-columns:1fr}.metric{border-right:0;border-bottom:1px solid var(--line)}.metric:last-child{border-bottom:0}.access-overview{padding:26px 20px}.role-distribution{grid-template-columns:1fr}.role-distribution div{border-right:0;border-bottom:1px solid var(--line)}.module-section{padding:24px 18px}.module-row{grid-template-columns:46px minmax(0,1fr);align-items:start}.module-row small{grid-column:2}.section-heading-row{align-items:flex-start;flex-direction:column}.primary-action{width:100%}.access-policy-strip,.invite-policy-strip{padding:15px}.appearance-layout{border:0}.student-care-page-heading h2{font-size:1.45rem}.student-care-card{border-radius:16px}.student-care-card-header{grid-template-columns:1fr}.student-care-card-icon{width:46px;height:46px}.student-care-table th,.student-care-table td{padding-left:12px;padding-right:12px}.student-care-pagination{align-items:flex-start;flex-direction:column}.user-drawer{padding:42px 22px}.drawer-actions{grid-template-columns:1fr}.callback-brand{top:20px;left:20px}.callback-screen{padding:25px}.link-mode-switch{grid-template-columns:1fr}.link-selection-header{flex-direction:column}.link-selection-table strong,.link-selection-table small{max-width:190px}.login-evidence-summary,.btec-dashboard-grid{grid-template-columns:1fr}.btec-panel{padding:15px}.btec-table th,.btec-table td{padding-left:10px;padding-right:10px}.global-ai-actions{align-items:flex-start;flex-direction:column}.global-ai-summary-grid{grid-template-columns:1fr}.global-ai-toast{right:16px;bottom:16px}.settings-placeholder-panel,.drawer-two-columns{grid-template-columns:1fr}.btec-header h2{font-size:2rem}.btec-header-actions .primary-action,.btec-header-actions .secondary-action{width:100%;flex-basis:100%}.btec-status-grid,.btec-action-grid,.btec-recent-grid{grid-template-columns:1fr}.btec-status-card,.btec-action-card,.btec-dashboard-empty{grid-template-columns:42px minmax(0,1fr)}.btec-dashboard-empty{padding:16px}.btec-tabs,.btec-tabs-scroll{gap:14px}.btec-tabs-scroll>button,.btec-more-trigger,.btec-more-menu button{font-size:.82rem}}@media(max-width:900px){.app-shell,.app-shell.sidebar-collapsed{display:grid;grid-template-columns:1fr;grid-template-rows:auto auto minmax(0,1fr)}.platform-topbar{grid-column:1;grid-row:1;position:sticky;top:0;align-items:stretch;flex-direction:column;gap:10px;min-height:0;padding:12px 14px}.platform-topbar-context{width:100%}.platform-topbar-actions{width:100%;justify-content:flex-start;flex-wrap:wrap}.platform-topbar-actions select{flex:1 1 190px;min-width:180px}.sidebar,.sidebar.collapsed{grid-column:1;grid-row:2;position:relative;height:auto;display:grid;grid-template-columns:1fr auto;gap:0 12px;align-items:center;padding:13px 14px}.sidebar-brand-wrap{padding-bottom:0}.sidebar-brand{padding:0}.sidebar-overview-floating,.sidebar.collapsed .sidebar-overview-floating{top:calc(100% + 8px);left:14px;right:14px;width:auto;max-height:min(70vh,520px);overflow-y:auto}.sidebar-section-label,.sidebar-module-title{grid-column:1 / -1;grid-row:2;margin:12px 0 8px;padding:10px 0 0}.sidebar.collapsed .sidebar-section-label{font-size:.68rem}.sidebar.collapsed .sidebar-module-title{justify-content:flex-start}.sidebar.collapsed .sidebar-module-title span{display:inline}.sidebar-project-label span,.sidebar.collapsed .sidebar-project-label span{min-width:0;overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere}.sidebar-nav{grid-column:1 / -1;grid-row:3;display:flex;flex-wrap:wrap;gap:7px;margin-top:0;padding-bottom:2px}.sidebar-nav button,.sidebar.collapsed .sidebar-nav button{width:auto;min-height:38px;flex:0 0 auto;gap:8px;border-radius:8px;padding:0 11px;font-size:.8rem}.sidebar.collapsed .sidebar-nav button span{display:inline}.user-menu{flex:1 1 200px}.user-menu-trigger{width:100%;max-width:none}.user-menu-dropdown{left:0;right:0;min-width:0}.dashboard-main{grid-column:1;grid-row:3;padding:24px 20px 45px}}@media(max-width:380px){.form-panel{padding-inline:14px}.topbar-controls{flex-wrap:wrap;justify-content:flex-end}.login-slogan{font-size:1.45rem;letter-spacing:.12em}.form-heading h1{font-size:1.35rem}.form-heading p{font-size:.82rem}}@media(max-height:560px)and (max-width:920px){.login-shell{grid-template-columns:minmax(0,.9fr) minmax(360px,1.1fr);grid-template-rows:1fr}.visual-panel{min-height:100svh}.form-panel{min-height:100svh;padding:12px 18px}.visual-module-pills{left:12px;right:12px;bottom:12px}.visual-module-pills span{font-size:clamp(.45rem,.9vw,.6rem)}.compact-brand span,.login-slogan,.form-heading p,.access-note,.login-footer{display:none}.form-wrap{padding:10px 0}.form-heading{margin-bottom:12px}.form-heading h1{font-size:1.3rem}.form-eyebrow{font-size:.66rem}.input-shell,.login-submit{min-height:44px}.input-shell input{height:42px}.login-method{padding:8px 10px}.btec-project-workspace,.btec-project-section-stack{gap:8px}.btec-project-context{gap:2px}}@media(pointer:coarse){.btec-project-workspace .primary-action,.btec-project-workspace .secondary-action,.btec-project-workspace .inline-action{min-height:42px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.timetable-workspace .timetable-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.timetable-clear-btn{color:#b42318;border-color:#b423184d}.timetable-clear-btn:hover:not(:disabled){background:#fff1f0;border-color:#b42318}.timetable-workspace .spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.timetable-controls{display:flex;gap:14px;align-items:flex-end;flex-wrap:wrap;margin:14px 0 18px}.timetable-segment{display:inline-flex;gap:4px;background:var(--surface-muted);border:1px solid var(--line);border-radius:12px;padding:4px}.timetable-segment button{border:none;background:transparent;color:var(--muted);padding:7px 14px;border-radius:9px;font-weight:600;font-size:.9rem;cursor:pointer}.timetable-segment button.active{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-soft)}.timetable-class-select{display:flex;flex-direction:column;gap:4px;font-size:.8rem;color:var(--muted)}.timetable-class-select select{height:40px;min-width:160px;border:1px solid var(--input-border);border-radius:10px;padding:0 10px;background:var(--input-bg);color:var(--ink)}.timetable-grid-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:16px}.timetable-grid{border-collapse:collapse;width:100%;min-width:760px}.timetable-grid th,.timetable-grid td{border:1px solid var(--line);vertical-align:top;padding:8px}.timetable-grid thead th{background:var(--table-head);color:var(--ink);font-size:.85rem;position:sticky;top:0}.timetable-slot-head{width:90px}.timetable-slot-cell{background:var(--surface-muted);width:90px;text-align:left}.timetable-slot-cell strong{display:block;font-size:.9rem}.timetable-slot-cell span{display:block;font-size:.72rem;color:var(--muted)}.timetable-cell{border-radius:8px;background:var(--surface-soft);padding:6px 8px;margin-bottom:6px}.timetable-cell:last-child{margin-bottom:0}.timetable-cell strong{display:block;font-size:.85rem;color:var(--ink)}.timetable-cell span{display:block;font-size:.76rem;color:var(--muted)}.timetable-cell em{display:block;font-size:.72rem;color:var(--brand);font-style:normal}.timetable-empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:48px 20px;color:var(--muted);text-align:center}.timetable-import-result{flex-direction:column;align-items:flex-start}.timetable-unmatched{margin:6px 0 0;padding-left:18px;font-size:.8rem}.subject-btec-panel .settings-school-select{display:flex;flex-direction:column;gap:4px;font-size:.8rem;color:var(--muted)}.subject-btec-panel .settings-school-select select{height:40px;min-width:180px;border:1px solid var(--input-border);border-radius:10px;padding:0 10px;background:var(--input-bg);color:var(--ink)}.subject-btec-panel .settings-empty{color:var(--muted);padding:18px 0}.subject-btec-form{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap;margin:16px 0 20px;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--surface-muted)}.subject-btec-form label{display:flex;flex-direction:column;gap:4px;font-size:.8rem;color:var(--muted);flex:1 1 200px}.subject-btec-form select{height:40px;border:1px solid var(--input-border);border-radius:10px;padding:0 10px;background:var(--input-bg);color:var(--ink)}.subject-btec-list{display:flex;flex-direction:column;gap:8px}.subject-btec-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:12px}.subject-btec-row>strong{min-width:200px;font-size:.9rem}.subject-btec-chips{display:flex;flex-wrap:wrap;gap:6px}.subject-btec-chip{display:inline-flex;align-items:center;gap:6px;background:var(--surface-soft);border:1px solid var(--line);border-radius:999px;padding:4px 6px 4px 12px;font-size:.8rem}.subject-btec-chip button{display:inline-flex;border:none;background:transparent;color:var(--muted);cursor:pointer;padding:2px;border-radius:50%}.subject-btec-chip button:hover{color:var(--danger);background:var(--danger-bg)}.subject-btec-empty{font-size:.8rem;color:var(--muted)}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--muted);cursor:pointer}.icon-button:hover{background:var(--surface-muted)}.icon-button.danger:hover{color:var(--danger);border-color:var(--danger);background:var(--danger-bg)}.row-actions-icons{flex-direction:row;flex-wrap:wrap;align-items:center}.assessment-layout{display:grid;grid-template-columns:300px 1fr;gap:18px;align-items:start}.assessment-list{border:1px solid var(--line);border-radius:16px;padding:14px}.assessment-list-scroll{max-height:min(74vh,720px);overflow-y:auto;scrollbar-gutter:stable}.assessment-create{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.assessment-create input,.assessment-create select{height:38px;border:1px solid var(--input-border);border-radius:10px;padding:0 10px;background:var(--input-bg);color:var(--ink)}.assessment-create-row{display:flex;gap:8px}.assessment-create-row select{flex:1;min-width:0}.assessment-list ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.assessment-list li button{width:100%;text-align:left;border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:var(--surface);cursor:pointer;display:flex;flex-direction:column;gap:2px}.assessment-list li button.active{border-color:var(--brand);background:var(--surface-soft)}.assessment-list li strong{font-size:.9rem}.assessment-list li span{font-size:.78rem;color:var(--muted)}.assessment-list li small{font-size:.72rem;color:var(--muted)}.assessment-empty{color:var(--muted);font-size:.85rem;padding:10px 0}.assessment-detail{border:1px solid var(--line);border-radius:16px;padding:16px;min-height:240px}.assessment-detail-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:14px}.assessment-detail-head h3{margin:0}.assessment-detail-head span{font-size:.82rem;color:var(--muted)}.assessment-detail-actions{display:flex;gap:8px;align-items:center}.assessment-detail-actions select{height:36px;border:1px solid var(--input-border);border-radius:9px;padding:0 8px;background:var(--input-bg);color:var(--ink)}.assessment-questions{display:flex;flex-direction:column;gap:12px}.assessment-question{border:1px solid var(--line);border-radius:14px;padding:12px;background:var(--surface-muted)}.assessment-question-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:8px}.assessment-question-head select{height:34px;border:1px solid var(--input-border);border-radius:8px;padding:0 8px;background:var(--input-bg);color:var(--ink)}.assessment-points{display:inline-flex;align-items:center;gap:6px;font-size:.78rem;color:var(--muted);margin-left:auto}.assessment-points input{width:64px;height:32px;border:1px solid var(--input-border);border-radius:8px;padding:0 8px;background:var(--input-bg);color:var(--ink)}.assessment-prompt{width:100%;min-height:56px;border:1px solid var(--input-border);border-radius:10px;padding:8px 10px;background:var(--input-bg);color:var(--ink);resize:vertical}.assessment-options{display:flex;flex-direction:column;gap:6px;margin-top:8px}.assessment-option{display:flex;align-items:center;gap:8px}.assessment-option input[type=text]{flex:1;height:34px;border:1px solid var(--input-border);border-radius:8px;padding:0 8px;background:var(--input-bg);color:var(--ink)}.assessment-expected{width:100%;height:36px;margin-top:8px;border:1px solid var(--input-border);border-radius:9px;padding:0 10px;background:var(--input-bg);color:var(--ink)}.text-button{display:inline-flex;align-items:center;gap:6px;background:transparent;border:none;color:var(--brand);font-weight:600;font-size:.82rem;cursor:pointer;padding:4px;align-self:flex-start}@media(max-width:900px){.assessment-layout{grid-template-columns:1fr}}.timetable-settings-panel .settings-school-select{display:flex;flex-direction:column;gap:4px;font-size:.8rem;color:var(--muted);margin-bottom:14px}.timetable-settings-panel .settings-school-select select{height:40px;min-width:200px;max-width:320px;border:1px solid var(--input-border);border-radius:10px;padding:0 10px;background:var(--input-bg);color:var(--ink)}.timetable-import-options{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin:0 0 16px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface-muted)}.timetable-import-title{flex:1 0 100%;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:var(--brand)}.timetable-import-hint{font-size:.78rem;color:var(--muted);flex:1 1 240px}.timetable-import-progress{flex:1 0 100%;display:grid;gap:7px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--brand) 22%,var(--line));border-radius:10px;background:var(--surface)}.timetable-import-progress div{display:flex;justify-content:space-between;gap:12px;color:var(--brand);font-size:.84rem}.timetable-import-progress progress{width:100%;height:9px;accent-color:var(--brand)}.timetable-import-progress small{color:var(--muted);font-size:.78rem;overflow-wrap:anywhere}.timetable-reconciliation-card{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;margin:0 0 18px;padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:0 8px 24px #0f232d0f}.timetable-reconciliation-card.has-pending{border-color:color-mix(in srgb,var(--brand) 42%,var(--line));background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 8%,var(--surface)) 0%,var(--surface) 74%)}.timetable-reconciliation-main{display:flex;align-items:flex-start;gap:12px;min-width:260px;flex:1 1 440px}.timetable-reconciliation-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:14px;color:var(--brand);background:color-mix(in srgb,var(--brand) 12%,var(--surface));border:1px solid color-mix(in srgb,var(--brand) 24%,var(--line));flex:0 0 auto}.timetable-reconciliation-main strong{display:block;color:var(--ink);font-size:1rem;margin-bottom:3px}.timetable-reconciliation-main p{margin:0;color:var(--muted);font-size:.86rem;line-height:1.45}.timetable-reconciliation-side{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.timetable-reconciliation-status{display:inline-flex;align-items:center;border-radius:999px;padding:7px 10px;color:var(--muted);background:var(--surface-muted);font-weight:700;font-size:.78rem}.timetable-reconciliation-status.pending{color:var(--brand);background:color-mix(in srgb,var(--brand) 12%,var(--surface))}.timetable-reconciliation-summary{flex:1 0 100%;display:flex;flex-wrap:wrap;gap:8px;padding-top:2px}.timetable-reconciliation-summary span{border:1px solid var(--line);border-radius:999px;padding:6px 9px;color:var(--muted);background:var(--surface);font-size:.78rem}.timetable-reconciliation-summary strong{color:var(--ink)}.timetable-reconciliation-agenda{flex:1 0 100%;display:flex;flex-wrap:wrap;gap:8px;padding-top:4px}.timetable-reconciliation-agenda span{display:inline-flex;align-items:center;border-radius:999px;padding:7px 10px;color:var(--brand);background:color-mix(in srgb,var(--brand) 10%,var(--surface));border:1px solid color-mix(in srgb,var(--brand) 20%,var(--line));font-size:.78rem;font-weight:800}.timetable-settings-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:14px}.timetable-cell.inactive{opacity:.48;border-style:dashed}.timetable-cell-edit{position:absolute;top:6px;right:25px;width:20px;height:20px;border:0;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#005f861f;color:var(--brand);cursor:pointer}.timetable-cell-edit:hover{background:var(--brand);color:#fff}.timetable-room-button{width:100%;border:0;padding:0;margin-top:4px;background:transparent;color:var(--muted);font:inherit;font-style:italic;text-align:left;cursor:pointer}.timetable-room-button:hover{color:var(--brand);text-decoration:underline}.timetable-room-button.muted{opacity:.72}.timetable-room-edit{display:flex;gap:6px;margin-top:6px}.timetable-room-edit input{min-width:0;flex:1;height:28px;border:1px solid var(--input-border);border-radius:8px;padding:0 8px;background:var(--input-bg);color:var(--ink)}.timetable-room-edit button{border:1px solid var(--line);border-radius:8px;padding:0 8px;background:var(--surface);color:var(--brand);font-weight:700}.timetable-edit-dialog{width:min(760px,calc(100vw - 28px));max-height:calc(100vh - 40px);overflow:auto}.timetable-edit-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}.timetable-edit-form label{display:flex;flex-direction:column;gap:6px;color:var(--muted);font-size:.82rem;font-weight:700}.timetable-edit-form input,.timetable-edit-form select{height:42px;border:1px solid var(--input-border);border-radius:10px;padding:0 10px;background:var(--input-bg);color:var(--ink);font:inherit}.timetable-edit-form .drawer-actions,.timetable-active-toggle{grid-column:1 / -1}.timetable-edit-teachers{grid-column:1 / -1;display:flex;flex-direction:column;gap:6px;color:var(--muted);font-size:.82rem;font-weight:700}.timetable-edit-teacher-row{display:flex;align-items:center;gap:8px;font-weight:400}.timetable-edit-teacher-row em{flex:0 0 18px;font-style:normal;color:var(--muted);font-size:.78rem}.timetable-edit-teacher-row input{flex:1;height:42px;border:1px solid var(--input-border);border-radius:10px;padding:0 10px;background:var(--input-bg);color:var(--ink);font:inherit}.academic-slot-number{width:72px}.academic-slot-label{min-width:150px}.academic-duration{color:var(--muted);font-size:.82rem;min-width:64px}@media(max-width:720px){.timetable-edit-form{grid-template-columns:1fr}.timetable-reconciliation-card{align-items:stretch}.timetable-reconciliation-side,.timetable-reconciliation-side .secondary-action{width:100%;justify-content:center}}.elearning-placeholder{align-items:center;text-align:center}.timetable-manual-form{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;margin:0 0 16px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-muted)}.timetable-manual-form label{display:flex;flex-direction:column;gap:4px;font-size:.76rem;color:var(--muted)}.timetable-manual-form input,.timetable-manual-form select{height:38px;border:1px solid var(--input-border);border-radius:9px;padding:0 9px;background:var(--input-bg);color:var(--ink);min-width:120px}.settings-inner-tabs{display:inline-flex;gap:4px;margin:14px 0 18px;padding:4px;border:1px solid var(--line);border-radius:11px;background:var(--surface-muted)}.settings-inner-tabs button{min-height:40px;padding:8px 16px;border:0;border-radius:8px;background:transparent;color:var(--muted);display:inline-flex;align-items:center;gap:8px;font:inherit;font-weight:700;cursor:pointer}.settings-inner-tabs button:hover{color:var(--brand);background:var(--surface)}.settings-inner-tabs button.active{color:#fff;background:var(--brand)}.timetable-manual-seed{display:flex;flex-direction:column;gap:10px;align-items:flex-start;margin:0 0 16px;padding:16px;border:1px dashed var(--line);border-radius:14px}.timetable-manual-seed p{margin:0;color:var(--muted);font-size:.85rem}.timetable-cell{position:relative}.timetable-cell-del{position:absolute;top:2px;right:2px;display:none;width:18px;height:18px;align-items:center;justify-content:center;border:none;border-radius:50%;background:var(--danger-bg);color:var(--danger);cursor:pointer;padding:0}.timetable-cell:hover .timetable-cell-del{display:inline-flex}.timetable-teachers-panel{margin:0 0 16px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-muted)}.timetable-teachers-hint{margin:0 0 10px;font-size:.82rem;color:var(--muted)}.timetable-autosave-hint{padding:8px 10px;border-radius:8px;background:var(--surface-muted);border:1px solid var(--line);color:var(--ink)}.classes-settings-panel .settings-section-head{margin:8px 0 14px}.classes-settings-panel .settings-section-head h3{margin:0 0 4px;font-size:1rem}.classes-settings-panel .settings-section-head p{margin:0;font-size:.84rem;color:var(--muted);max-width:640px}.roster-import-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-bottom:8px}.roster-import-card{border:1px solid var(--line);border-radius:12px;background:var(--surface);padding:14px;display:flex;flex-direction:column;gap:6px}.roster-import-card strong{color:var(--ink);font-size:.9rem}.roster-import-card p{margin:0;font-size:.74rem;color:var(--muted);line-height:1.4}.roster-import-file{margin-top:auto;display:inline-flex;align-items:center;gap:8px;justify-content:center;height:36px;border:1px dashed var(--input-border);border-radius:8px;cursor:pointer;color:var(--brand);font-size:.82rem;position:relative}.roster-import-file input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%}.classes-list{display:grid;gap:10px}.class-card{border:1px solid var(--line);border-radius:12px;background:var(--surface);overflow:hidden}.class-card-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px}.class-card-title{display:flex;align-items:center;gap:10px;background:transparent;border:0;cursor:pointer;color:var(--ink);font:inherit;padding:0;min-width:0}.class-card-title svg{transition:transform .15s ease;color:var(--muted)}.class-card-title .rotated{transform:rotate(180deg)}.class-card-count{font-size:.78rem;color:var(--muted)}.class-homeroom{display:flex;align-items:center;gap:8px;font-size:.8rem;color:var(--muted)}.class-homeroom select{height:36px;min-width:0;border:1px solid var(--input-border);border-radius:8px;padding:0 10px;background:var(--input-bg);color:var(--ink);font:inherit}.class-students{border-top:1px solid var(--line);padding:8px 14px 12px;display:grid;gap:6px}.class-student-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:7px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface-muted)}.class-student-name{display:flex;flex-direction:column;min-width:0}.class-student-name strong{font-size:.85rem}.class-student-name span{font-size:.74rem;color:var(--muted)}.class-student-transfer select{height:34px;min-width:0;border:1px solid var(--input-border);border-radius:8px;padding:0 10px;background:var(--input-bg);color:var(--ink);font:inherit}.timetable-teachers-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:6px}.timetable-teacher-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:7px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.timetable-teacher-row.inactive{opacity:.55}.timetable-teacher-name{font-size:.86rem;font-weight:600}.timetable-teacher-meta{font-size:.72rem;color:var(--muted);margin-left:auto}.timetable-roster-dates{display:flex;gap:8px;flex-wrap:wrap}.roster-date{display:flex;flex-direction:column;gap:2px;font-size:.62rem;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}.roster-date input{height:30px;min-width:128px;border:1px solid var(--input-border);border-radius:6px;padding:0 6px;background:var(--input-bg);color:var(--ink);font:inherit;font-size:.76rem}.notif-bell{position:relative}.notif-bell-button{position:relative;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);cursor:pointer}.notif-badge{position:absolute;top:-4px;right:-4px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:var(--danger);color:#fff;font-size:.62rem;font-weight:700;display:flex;align-items:center;justify-content:center}.notif-dropdown{position:absolute;right:0;top:46px;width:min(420px,calc(100vw - 24px));max-height:430px;overflow-y:auto;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-soft);z-index:50}.notif-dropdown-head{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--line)}.notif-dropdown-head button{border:none;background:transparent;color:var(--brand);font-size:.76rem;cursor:pointer}.notif-dropdown ul{list-style:none;margin:0;padding:6px;display:flex;flex-direction:column;gap:4px}.notif-dropdown li button{width:100%;min-width:0;text-align:left;border:none;background:transparent;padding:9px 10px;border-radius:9px;cursor:pointer;display:flex;flex-direction:column;gap:4px}.notif-dropdown li.unread button{background:var(--surface-soft)}.notif-dropdown li strong{min-width:0;font-size:.82rem;line-height:1.25;overflow-wrap:anywhere}.notif-dropdown li strong svg{vertical-align:-2px;margin-right:5px;color:var(--brand)}.notif-dropdown li span{font-size:.74rem;line-height:1.35;color:var(--muted);overflow-wrap:anywhere}.notif-dropdown li.notif-message-item button{border:1px solid rgba(0,95,134,.12);background:#005f860f}.notif-empty{padding:18px 14px;color:var(--muted);font-size:.82rem;text-align:center}.assessment-take,.assessment-results{margin-bottom:16px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-muted)}.assessment-take-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.assessment-take-q{padding:10px;border-radius:10px;background:var(--surface);margin-bottom:8px}.assessment-take-q.correct{box-shadow:inset 3px 0 0 var(--success)}.assessment-take-q.wrong{box-shadow:inset 3px 0 0 var(--danger)}.assessment-take-q p{margin:0 0 8px}.assessment-take-opt{display:flex;align-items:center;gap:8px;padding:3px 0;font-size:.86rem}.assessment-take-q input[type=text]{width:100%;height:36px;border:1px solid var(--input-border);border-radius:8px;padding:0 10px;background:var(--input-bg);color:var(--ink)}.assessment-take-result{margin-top:8px;font-size:1rem}.academic-panel .settings-school-select{display:flex;flex-direction:column;gap:4px;font-size:.8rem;color:var(--muted)}.academic-panel .settings-school-select select{height:40px;min-width:200px;border:1px solid var(--input-border);border-radius:10px;padding:0 10px;background:var(--input-bg);color:var(--ink)}.academic-section{margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}.academic-section h4{margin:0 0 10px;font-size:.95rem;display:flex;gap:8px;align-items:baseline}.academic-section h4 small{color:var(--muted);font-weight:400;font-size:.75rem}.academic-rows{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}.academic-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:8px 12px;border:1px solid var(--line);border-radius:10px}.academic-row.selected{border-color:var(--brand);background:var(--surface-soft)}.academic-row>strong,.academic-pick{min-width:120px;font-size:.88rem}.academic-pick{text-align:left;border:none;background:transparent;color:var(--ink);font-weight:700;cursor:pointer}.academic-dates{font-size:.78rem;color:var(--muted)}.academic-badge{font-size:.7rem;font-weight:700;color:var(--success);background:var(--success-bg);border-radius:999px;padding:2px 8px}.academic-row input{height:34px;border:1px solid var(--input-border);border-radius:8px;padding:0 8px;background:var(--input-bg);color:var(--ink)}.academic-add{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.academic-add input{height:36px;border:1px solid var(--input-border);border-radius:8px;padding:0 8px;background:var(--input-bg);color:var(--ink)}.academic-special-day{margin-top:16px;padding:16px;scroll-margin-top:148px;border:1px solid color-mix(in srgb,var(--brand) 24%,var(--line));border-radius:8px;background:color-mix(in srgb,var(--brand) 5%,var(--surface))}.academic-special-day-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:18px;margin-bottom:14px}.academic-special-day-head h5{margin:0 0 5px;font-size:.98rem;color:var(--ink);letter-spacing:0}.academic-special-day-head p{margin:0;color:var(--text);font-size:.82rem;max-width:720px;line-height:1.45}.academic-special-day-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.academic-special-day-meta span{min-height:26px;display:inline-flex;align-items:center;padding:0 9px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font-size:.72rem;font-weight:700}.academic-special-day-meta span.is-active{color:var(--brand);border-color:color-mix(in srgb,var(--brand) 34%,var(--line));background:color-mix(in srgb,var(--brand) 8%,var(--surface))}.academic-special-day-actions{display:flex;align-items:flex-end;justify-content:flex-end;gap:8px;flex-wrap:wrap}.academic-special-day-actions label{display:grid;gap:4px;color:var(--muted);font-size:.72rem;font-weight:700}.academic-special-day-actions input{height:40px;border:1px solid var(--input-border);border-radius:8px;padding:0 10px;background:var(--input-bg);color:var(--ink);font:inherit}.academic-special-slot-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(295px,1fr));gap:12px}.academic-special-slot-card{min-height:126px;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--surface);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;box-shadow:0 1px #00000008}.academic-special-slot-card.changed{border-color:color-mix(in srgb,var(--brand) 36%,var(--line));box-shadow:inset 3px 0 0 var(--brand)}.academic-special-slot-title{grid-column:1 / -1;min-height:36px;display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding-bottom:8px;border-bottom:1px solid var(--line)}.academic-special-slot-title div{min-width:0;display:grid;gap:2px}.academic-special-slot-title strong{font-size:.9rem;line-height:1.2;color:var(--ink)}.academic-special-slot-title small{color:var(--muted);font-size:.72rem;white-space:nowrap}.academic-special-slot-title span{color:var(--brand);font-size:.76rem;font-weight:700;white-space:nowrap}.academic-special-slot-card label{display:grid;gap:5px;min-width:0}.academic-special-slot-card label span{font-size:.76rem;font-weight:700;color:var(--ink)}.academic-special-slot-card input{min-width:0;width:100%;height:39px;border:1px solid var(--input-border);border-radius:8px;padding:0 10px;background:var(--input-bg);color:var(--ink);font:inherit;font-size:.86rem}.academic-special-slot-card input:focus{outline:2px solid color-mix(in srgb,var(--brand) 22%,transparent);border-color:var(--brand)}@media(max-width:420px){.academic-special-slot-grid,.academic-special-slot-card{grid-template-columns:1fr}}@media(max-width:760px){.academic-special-day-head{grid-template-columns:1fr}.academic-special-day-actions{justify-content:stretch}.academic-special-day-actions label{flex:1 1 150px}.academic-special-day-actions button{flex:1 1 auto}}.academic-transition-hint{font-size:.82rem;color:var(--muted);margin:0 0 10px}.academic-preview{margin-top:10px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-muted)}.academic-preview-stats{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:6px}.academic-preview-stats strong{font-size:1.05rem}.academic-preview-sample{font-size:.76rem;color:var(--muted);margin:0 0 10px}.roster-pending-panel{margin:14px 0;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--surface-muted);max-width:100%;box-sizing:border-box;min-width:0}.roster-pending-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:10px}.roster-pending-head strong{font-size:.95rem}.roster-pending-head p{margin:4px 0 0;font-size:.8rem;color:var(--muted);max-width:560px}.roster-pending-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.roster-pending-toolbar{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.roster-pending-toolbar>label{flex:1 1 220px}.roster-pending-toolbar>select{flex:0 1 180px}.roster-pending-toolbar label{display:flex;align-items:center;gap:8px;height:40px;padding:0 10px;border:1px solid var(--input-border);border-radius:10px;background:var(--input-bg);color:var(--muted);min-width:0}.roster-pending-toolbar input,.roster-pending-toolbar select{min-width:0;height:40px;border:1px solid var(--input-border);border-radius:10px;padding:0 10px;background:var(--input-bg);color:var(--ink);font:inherit}.roster-pending-toolbar label input{flex:1;height:auto;border:0;padding:0;background:transparent}.roster-pending-bulkbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:10px}.roster-pending-list{display:grid;gap:6px;max-height:520px;overflow:auto;padding-right:2px}.roster-pending-panel h5{margin:14px 0 6px;font-size:.82rem;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}.roster-pending-row{display:grid;grid-template-columns:auto minmax(0,1.35fr) minmax(0,1.5fr) 130px auto;align-items:center;gap:10px;padding:7px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface);margin-bottom:0}.roster-gender-select{height:36px;min-width:0;border:1px solid var(--input-border);border-radius:8px;padding:0 8px;background:var(--input-bg);color:var(--ink);font:inherit}.roster-pending-check{display:flex;align-items:center;justify-content:center}.roster-pending-check input{width:18px;height:18px}.roster-pending-name{min-width:0;display:flex;flex-direction:column}.roster-pending-name strong{font-size:.86rem;overflow-wrap:anywhere}.roster-pending-name span{font-size:.74rem;color:var(--muted)}.roster-pending-email-cell{display:flex;flex-direction:column;gap:3px}.roster-pending-email-cell{min-width:0}.roster-pending-email-cell input{width:100%;min-width:0;height:36px;border:1px solid var(--input-border);border-radius:8px;padding:0 10px;background:var(--input-bg);color:var(--ink);box-sizing:border-box}.roster-pending-email-cell small{color:var(--danger);font-size:.72rem;font-weight:700}@media(max-width:900px){.roster-pending-toolbar>label,.roster-pending-toolbar>select{flex:1 1 100%}.roster-pending-row{grid-template-columns:auto 1fr}.roster-pending-email-cell,.roster-gender-select,.roster-pending-row .secondary-action{grid-column:2}}.timetable-view-mini{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px}.timetable-view-day h6{margin:0 0 6px;font-size:.78rem;display:flex;align-items:center;gap:5px;color:var(--brand)}.timetable-view-day ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.timetable-view-day li{display:flex;flex-direction:column;padding:6px 8px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.timetable-view-day .tv-slot{font-size:.68rem;color:var(--muted)}.timetable-view-day .tv-subject{font-size:.82rem;font-weight:600}.timetable-view-day .tv-teacher{font-size:.72rem;color:var(--muted)}.timetable-view-empty{color:var(--muted);font-size:.82rem}.timetable-view-day.is-today h6{color:var(--brand-dark, var(--brand))}.timetable-view-day.is-today li{border-color:var(--brand);background:var(--soft)}.my-schedule-switcher{display:flex;align-items:center;gap:8px}.my-schedule-switcher select{height:38px;border:1px solid var(--input-border);border-radius:8px;padding:0 10px;color:var(--ink);background:var(--input-bg)}.my-schedule-today-strip{display:flex;align-items:center;gap:8px;margin:4px 0 16px;padding:10px 14px;border:1px solid var(--line);border-radius:8px;background:var(--surface-soft);font-size:.86rem;color:var(--text)}.my-schedule-vacation{color:var(--brand);font-weight:600}.attendance-date-field,.attendance-lesson-field{display:flex;flex-direction:column;gap:4px;font-size:.8rem;color:var(--muted)}.attendance-date-field input,.attendance-lesson-field select{height:40px;border:1px solid var(--input-border);border-radius:8px;padding:0 10px;color:var(--ink);background:var(--input-bg);min-width:220px}.attendance-roster{margin-top:16px;display:grid;gap:8px}.attendance-roster-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.attendance-roster-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface);flex-wrap:wrap}.attendance-roster-name{font-weight:600;color:var(--ink)}.attendance-status-options{display:flex;gap:6px;flex-wrap:wrap}.attendance-status-pill{border:1px solid var(--line);background:var(--surface);color:var(--muted);padding:5px 11px;border-radius:999px;font-size:.76rem;font-weight:600;cursor:pointer}.attendance-status-pill.status-present.active{border-color:var(--success);color:var(--success);background:var(--success-bg)}.attendance-status-pill.status-absent.active{border-color:var(--danger);color:var(--danger);background:var(--danger-bg)}.attendance-status-pill.status-late.active{border-color:var(--brand);color:var(--brand);background:var(--soft)}.attendance-status-pill.status-excused.active{border-color:var(--muted);color:var(--ink);background:var(--surface-soft)}.attendance-history-list{display:grid;gap:6px}.attendance-history-row{display:flex;align-items:center;gap:14px;padding:9px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface);font-size:.84rem}.attendance-history-date{color:var(--muted);min-width:96px}.attendance-history-subject{flex:1;font-weight:600;color:var(--ink)}.materials-compose-form{display:grid;gap:12px;margin:16px 0 24px;padding:14px 16px;border:1px solid var(--line);background:var(--surface-soft)}.materials-compose-form label{display:grid;gap:5px;font-size:.82rem;color:var(--text);font-weight:600}.materials-compose-form input[type=text],.materials-compose-form select,.materials-compose-form textarea{border:1px solid var(--input-border);border-radius:8px;padding:8px 10px;color:var(--ink);background:var(--input-bg);font:inherit}.materials-compose-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.materials-file-field input{padding:6px 0}.materials-file-field em{color:var(--muted);font-style:normal;font-size:.76rem}.materials-list{display:grid;gap:12px}.materials-list-item{padding:12px 14px;border:1px solid var(--line);background:var(--surface);display:grid;gap:6px}.materials-list-item strong{font-size:.95rem;color:var(--ink)}.materials-list-item p{margin:0;color:var(--text);font-size:.86rem}.materials-list-head{display:flex;align-items:center;gap:10px}.materials-list-scope{color:var(--muted);font-size:.78rem;flex:1}.materials-list-date{color:var(--muted);font-size:.74rem}.materials-type-pill{border-radius:999px;padding:3px 10px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.materials-type-pill.type-lecture{color:var(--brand);background:var(--soft)}.materials-type-pill.type-exercise{color:var(--success);background:var(--success-bg)}.materials-type-pill.type-material{color:var(--ink);background:var(--surface-soft);border:1px solid var(--line)}.materials-type-pill.type-announcement{color:var(--danger);background:var(--danger-bg)}.materials-attachments{display:flex;flex-wrap:wrap;gap:8px}.materials-attachment-link{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:999px;padding:4px 11px;background:var(--surface-soft);color:var(--brand);font-size:.78rem;cursor:pointer}.materials-attachment-link:hover{border-color:var(--brand)}.admin-courses-create-form{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:14px 0;padding:12px 14px;border:1px solid var(--line);background:var(--surface-soft)}.admin-courses-create-form input{flex:1;min-width:160px;border:1px solid var(--input-border);border-radius:8px;padding:8px 10px;color:var(--ink);background:var(--input-bg);font:inherit}.admin-courses-search{display:flex;align-items:center;gap:8px;margin:14px 0;padding:9px 12px;border:1px solid var(--input-border);border-radius:8px;background:var(--input-bg);color:var(--input-icon)}.admin-courses-search input{flex:1;border:none;background:transparent;font:inherit;color:var(--ink);outline:none}.admin-courses-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px}.admin-course-card{display:grid;gap:12px;padding:16px;border:1px solid var(--line);background:var(--surface)}.admin-course-card-head{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding-bottom:12px;border-bottom:1px solid var(--line)}.admin-course-badge{display:inline-flex;align-items:center;justify-content:center;min-width:46px;height:30px;padding:0 9px;border:1px solid var(--brand);background:var(--soft);color:var(--brand);font-size:.72rem;font-weight:700;letter-spacing:.03em}.admin-course-title{display:grid;gap:2px;min-width:0}.admin-course-count{font-size:.74rem;color:var(--muted);white-space:nowrap}.admin-course-unresolved{font-style:normal;color:var(--danger);font-weight:600}.admin-course-name{font-size:.98rem;color:var(--ink);line-height:1.25}.admin-course-edit-fields{display:grid;gap:6px}.admin-course-edit-fields input{border:1px solid var(--input-border);border-radius:8px;padding:7px 9px;color:var(--ink);background:var(--input-bg);font:inherit}.admin-course-classlist{display:grid;gap:4px}.admin-course-class{font-size:.84rem;font-weight:700;color:var(--ink);white-space:nowrap}.admin-course-teacher-field{display:grid;gap:3px}.admin-course-teacher-select{border:1px solid var(--input-border);border-radius:8px;padding:6px 8px;color:var(--ink);background:var(--input-bg);font:inherit;font-size:.82rem}.admin-course-teacher-select.unassigned{border-color:var(--danger)}.admin-course-hint{font-size:.72rem;color:var(--muted)}.admin-course-no-teacher{font-style:normal;font-size:.78rem;color:var(--muted)}.admin-course-actions{display:flex;gap:6px}.admin-course-group{border-bottom:1px solid var(--line)}.admin-course-group:last-child{border-bottom:none}.admin-course-group-head{display:grid;grid-template-columns:54px 1fr auto;gap:10px;align-items:center;width:100%;padding:8px 0;border:none;background:transparent;cursor:pointer;text-align:left;font:inherit;color:var(--muted)}.admin-course-group-chips{display:flex;flex-wrap:wrap;gap:5px}.admin-course-chip{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;padding:2px 10px;font-size:.76rem;color:var(--ink);background:var(--surface-soft)}.admin-course-chip.unassigned{color:var(--danger);border-color:var(--danger)}.admin-course-group-body{display:grid;gap:8px;padding:0 0 10px 64px}.admin-course-group-hint{padding-bottom:8px}.admin-course-add-row{display:flex;gap:8px;align-items:center;padding-top:4px;border-top:1px dashed var(--line);margin-top:2px}.admin-course-add-row select{flex:1;border:1px solid var(--input-border);border-radius:8px;padding:6px 8px;color:var(--ink);background:var(--input-bg);font:inherit;font-size:.82rem}.plan-course-row{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:16px}.plan-course-row label{display:grid;gap:5px;font-size:.82rem;color:var(--text);font-weight:600;min-width:240px}.plan-course-row select{border:1px solid var(--input-border);border-radius:8px;padding:8px 10px;color:var(--ink);background:var(--input-bg);font:inherit}.plan-progress{display:grid;gap:4px;min-width:220px}.plan-progress-bar{width:100%;height:6px;border-radius:999px;background:var(--soft);overflow:hidden}.plan-progress-bar span{display:block;height:100%;background:var(--success);border-radius:999px;transition:width .2s ease}.plan-progress em{font-style:normal;font-size:.76rem;color:var(--muted)}.plan-weekly-hours{display:flex;align-items:baseline;gap:6px;padding:6px 12px;border:1px solid var(--line);border-radius:999px;background:var(--surface-soft)}.plan-weekly-hours strong{font-size:1.05rem;color:var(--brand-deep)}.plan-weekly-hours span{font-size:.76rem;color:var(--muted)}.plan-add-form{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;margin-bottom:18px}.plan-add-form input[type=text]{border:1px solid var(--input-border);border-radius:8px;padding:8px 10px;color:var(--ink);background:var(--input-bg);font:inherit}.plan-topic-list{display:grid;gap:8px}.plan-topic-row{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:flex-start;padding:11px 14px;border:1px solid var(--line);background:var(--surface);border-radius:8px}.plan-topic-row.taught{border-color:var(--success);background:var(--success-bg)}.plan-topic-number{color:var(--muted);font-size:.82rem;font-weight:600;padding-top:1px}.plan-topic-body{display:grid;gap:3px}.plan-topic-body strong{font-size:.92rem;color:var(--ink)}.plan-topic-body p{margin:0;color:var(--text);font-size:.82rem}.plan-topic-taught{display:inline-flex;align-items:center;gap:5px;font-style:normal;font-size:.76rem;color:var(--success)}.plan-topic-pending{font-style:normal;font-size:.76rem;color:var(--muted)}.plan-topic-actions{display:flex;gap:6px}.plan-topic-edit{display:grid;gap:8px}.plan-topic-edit input[type=text]{border:1px solid var(--input-border);border-radius:8px;padding:7px 9px;color:var(--ink);background:var(--input-bg);font:inherit}.plan-topic-edit-actions{display:flex;gap:8px}.plan-subject-groups{display:grid;gap:22px}.plan-subject-group-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:10px}.plan-subject-group-head strong{font-size:1rem;color:var(--ink)}.register-day-list{display:grid;gap:10px;margin-top:14px}.register-day-row{display:grid;grid-template-columns:64px 1fr auto;gap:14px;align-items:center;padding:12px 14px;border:1px solid var(--line);background:var(--surface);text-align:left;transition:border-color .15s ease,box-shadow .15s ease}.register-day-row:hover{border-color:var(--brand);box-shadow:0 4px 14px #005f861f}.register-slot{display:grid;gap:2px;text-align:center}.register-slot strong{font-size:1.05rem;color:var(--brand)}.register-slot em{font-style:normal;font-size:.68rem;color:var(--muted);line-height:1.3}.register-lesson{display:grid;gap:2px}.register-lesson strong{font-size:.98rem;color:var(--ink)}.register-lesson em{font-style:normal;font-size:.78rem;color:var(--muted)}.register-open{display:inline-flex;align-items:center;gap:7px;color:var(--brand);font-size:.82rem;font-weight:600;white-space:nowrap;border:1px solid var(--line);background:var(--surface-soft);padding:8px 13px;cursor:pointer;font-family:inherit}.register-open:hover{border-color:var(--brand)}.register-topic-line{display:flex;align-items:center;gap:8px;margin-top:6px}.register-topic-input{flex:1;border:none;border-bottom:1px solid var(--line);background:transparent;padding:4px 2px;font:inherit;font-size:.85rem;color:var(--ink)}.register-topic-input::placeholder{color:var(--muted);font-style:italic}.register-topic-input:focus{outline:none;border-bottom-color:var(--brand)}.register-topic-select{flex:1;border:none;border-bottom:1px solid var(--line);background:transparent;padding:4px 2px;font:inherit;font-size:.85rem;color:var(--ink)}.register-topic-select:focus{outline:none;border-bottom-color:var(--brand)}.register-topic-state{font-style:normal;font-size:.72rem;color:var(--muted);white-space:nowrap}.register-topic-state.saved{color:var(--success);display:inline-flex;align-items:center}.register-topic-state.muted{white-space:normal;font-size:.76rem}.attendance-history-topic{display:block;font-style:normal;font-size:.76rem;color:var(--muted)}.materials-read-pill{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:999px;padding:3px 10px;background:var(--surface-soft);color:var(--text);font-size:.72rem;font-weight:600;cursor:pointer;font-family:inherit}.materials-read-pill:hover{border-color:var(--brand);color:var(--brand)}.materials-read-pill.all-read{color:var(--success);border-color:var(--success)}.materials-readers{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:8px 10px;border:1px dashed var(--line);background:var(--surface-soft)}.materials-readers em{color:var(--muted);font-style:normal;font-size:.78rem}.materials-reader-chip{border:1px solid var(--line);border-radius:999px;padding:2px 9px;background:var(--surface);font-size:.74rem;color:var(--ink)}.register-roster-overlay{position:fixed;inset:0;z-index:90;display:flex;align-items:center;justify-content:center;padding:20px;background:#041f2c80}.register-roster-dialog{width:min(880px,100%);max-height:88vh;background:var(--surface);border:1px solid var(--line);display:flex;flex-direction:column;overflow:hidden}.register-roster-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 18px 12px;flex-shrink:0;border-bottom:1px solid var(--line)}.register-roster-head strong{display:block;font-size:1rem;color:var(--ink)}.register-roster-head span{font-size:.8rem;color:var(--muted)}.register-roster-body{overflow-y:auto;flex:1;padding:14px 18px;display:grid;gap:14px;align-content:start}.register-roster-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px}.register-student-card{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;gap:2px 10px;align-items:center;padding:9px 11px;border:1px solid var(--line);background:var(--surface);cursor:pointer;text-align:left;font:inherit}.register-student-card .register-student-avatar{grid-row:1 / -1;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;font-size:.78rem;font-weight:700;color:#fff;background:var(--brand)}.register-student-card .register-student-name{font-size:.84rem;font-weight:600;color:var(--ink)}.register-student-card .register-student-status{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.register-student-card.status-present{border-color:var(--success)}.register-student-card.status-present .register-student-status{color:var(--success)}.register-student-card.status-absent{border-color:var(--danger);background:var(--danger-bg)}.register-student-card.status-absent .register-student-status{color:var(--danger)}.register-student-card.status-late{border-color:#b7791f;background:#fdf6e3}.register-student-card.status-late .register-student-status{color:#b7791f}.register-student-card.status-excused{border-color:var(--brand);background:var(--soft)}.register-student-card.status-excused .register-student-status{color:var(--brand)}.register-roster-legend{display:flex;align-items:center;gap:8px 6px;flex-wrap:wrap;font-size:.76rem;color:var(--muted)}.register-roster-legend .legend-dot{width:11px;height:11px;border-radius:50%;display:inline-block;margin-left:10px}.register-roster-legend .legend-dot:first-child{margin-left:0}.register-roster-legend .legend-dot.status-present{background:var(--success)}.register-roster-legend .legend-dot.status-absent{background:var(--danger)}.register-roster-legend .legend-dot.status-late{background:#b7791f}.register-roster-legend .legend-dot.status-excused{background:var(--brand)}.register-roster-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;flex-shrink:0;padding:12px 18px 16px;border-top:1px solid var(--line)}.courses-today-strip{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:14px 0 22px;padding:12px 14px;border:1px solid var(--line);background:var(--surface-soft)}.courses-today-label{font-size:.8rem;font-weight:700;color:var(--text);white-space:nowrap}.courses-today-slots{display:flex;gap:6px;flex-wrap:wrap}.courses-today-slot{display:grid;gap:1px;min-width:86px;padding:6px 10px;border:1px solid var(--line);background:var(--surface);text-align:center}.courses-today-slot strong{font-size:.82rem;color:var(--ink)}.courses-today-slot span{font-size:.68rem;color:var(--muted)}.courses-today-slot em{font-size:.7rem;font-style:normal;color:var(--brand);font-weight:600}.courses-today-slot.current{border-color:var(--brand);background:var(--soft)}.courses-today-empty{color:var(--muted);font-size:.82rem}.home-feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;margin-bottom:24px}.home-feature-card{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center;padding:18px 16px;border:1px solid var(--line);background:var(--surface);cursor:pointer;text-align:left;font:inherit;transition:border-color .15s ease,box-shadow .15s ease}.home-feature-card:hover{border-color:var(--brand);box-shadow:0 4px 14px #005f861f}.home-feature-icon{display:grid;place-items:center;width:50px;height:50px;border:2px solid currentColor;border-radius:10px}.home-feature-card.feature-register .home-feature-icon{color:var(--brand)}.home-feature-card.feature-timetable .home-feature-icon{color:var(--danger)}.home-feature-card.feature-materials .home-feature-icon{color:var(--success)}.home-feature-card.feature-plan .home-feature-icon{color:var(--brand-deep)}.home-feature-body{display:grid;gap:2px}.home-feature-body strong{font-size:.98rem;color:var(--ink)}.home-feature-body em{font-style:normal;font-size:.78rem;color:var(--muted)}.home-courses-heading{margin:0 0 12px;font-size:.92rem;color:var(--text);text-transform:uppercase;letter-spacing:.04em}.courses-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}.course-card{display:grid;grid-template-columns:auto 1fr;gap:10px 12px;align-items:center;padding:14px;border:1px solid var(--line);background:var(--surface);transition:border-color .15s ease,box-shadow .15s ease}.course-card:hover{border-color:var(--brand);box-shadow:0 4px 14px #005f861f}.course-card-icon{display:grid;place-items:center;width:52px;height:52px;background:#2f3437;color:#fff}.course-card-body{display:grid;gap:2px}.course-card-body strong{font-size:.98rem;color:var(--ink)}.course-card-body span{font-size:.82rem;color:var(--muted)}.course-card-actions{grid-column:1 / -1;display:flex;gap:8px;flex-wrap:wrap}.assessment-schedule{margin-bottom:16px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-muted)}.assessment-schedule>strong{display:block;margin-bottom:8px;font-size:.85rem}.session-task{border:1px solid var(--line);border-radius:14px;padding:12px;margin-bottom:12px;background:var(--surface-muted)}.session-task-head{display:flex;align-items:center;justify-content:space-between}.session-task-head em{color:var(--muted);font-style:normal;font-size:.8rem}.session-task-instr{margin:4px 0 8px;font-size:.82rem;color:var(--muted)}.session-submit-row{display:flex;gap:8px;margin-bottom:8px;flex-wrap:wrap}.session-submit-row input{flex:1;min-width:120px;height:34px;border:1px solid var(--input-border);border-radius:8px;padding:0 8px;background:var(--input-bg);color:var(--ink)}.session-sub{display:flex;align-items:center;gap:8px;padding:7px 9px;border:1px solid var(--line);border-radius:9px;background:var(--surface);margin-bottom:5px}.session-sub.graded{box-shadow:inset 3px 0 0 var(--success)}.session-sub-body{flex:1;display:flex;flex-direction:column;min-width:0}.session-sub-body strong{font-size:.82rem}.session-sub-body span{font-size:.78rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-sub input{height:32px;border:1px solid var(--input-border);border-radius:7px;padding:0 8px;background:var(--input-bg);color:var(--ink)}.session-meeting{border:1px solid var(--line);border-radius:14px;overflow:hidden;margin-bottom:14px;background:#000}.session-meeting-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;background:var(--surface-muted)}.session-meeting-bar span{display:flex;align-items:center;gap:6px;font-size:.82rem;font-weight:600}.session-meeting-bar>div{display:flex;align-items:center;gap:8px}.session-meeting-frame{width:100%;height:460px;border:none;display:block}.student-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin-top:8px}.student-card{display:flex;flex-direction:column;gap:6px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.student-card strong{font-size:.95rem}.student-card span{font-size:.8rem;color:var(--muted)}.student-card button{margin-top:6px}.student-session{margin-top:16px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-muted)}.student-task{padding:10px 0;border-top:1px solid var(--line)}.student-task em{color:var(--muted);font-style:normal;font-size:.8rem}.student-task p{margin:4px 0;font-size:.82rem;color:var(--muted)}.student-task-submit{display:flex;gap:8px;margin-top:6px}.student-task-submit input{flex:1;height:36px;border:1px solid var(--input-border);border-radius:8px;padding:0 10px;background:var(--input-bg);color:var(--ink)}.student-file-btn{display:inline-flex;align-items:center;gap:5px;padding:0 10px;height:36px;border:1px solid var(--line);border-radius:8px;background:var(--surface);cursor:pointer;font-size:.8rem}.link-button{border:none;background:transparent;color:var(--brand);cursor:pointer;padding:0;font:inherit;text-align:left}.proctoring-note{font-size:.78rem;color:var(--muted);margin:0 0 10px;padding:6px 10px;border-left:3px solid var(--brand);background:var(--surface-muted);border-radius:0 8px 8px 0}.proctoring-note.alert{border-left-color:var(--danger);background:var(--danger-bg);color:var(--danger);font-weight:600}.proctoring-viewer{margin-top:12px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-muted)}.proctoring-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.proctoring-grid figure{margin:0;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--surface)}.proctoring-grid img{width:100%;height:110px;object-fit:cover;display:block}.proctoring-grid figcaption{font-size:.72rem;color:var(--danger);padding:4px 6px;text-align:center}.academic-calendar-config{border-left:4px solid #005f86}.academic-config-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.8rem;margin:.75rem 0 1rem}.academic-toggle,.academic-anchor-field{display:flex;align-items:center;gap:.65rem;border:1px solid rgba(0,95,134,.18);border-radius:14px;padding:.75rem .85rem;background:#ffffffb8}.academic-anchor-field{align-items:flex-start;flex-direction:column}.academic-anchor-field input{width:100%}.academic-resolved{display:flex;flex-wrap:wrap;align-items:center;gap:.7rem;margin:.8rem 0 1rem;padding:.85rem 1rem;border-radius:16px;background:#005f8614;color:#545964}.academic-resolved strong,.academic-resolved span{color:#005f86}.academic-resolved.vacation{background:#f59e0b24}.timetable-vacation-banner{display:flex;align-items:center;gap:.9rem;margin-top:1rem;padding:1.1rem 1.2rem;border:1px solid rgba(0,95,134,.18);border-left:4px solid #005f86;border-radius:18px;background:#005f8614;color:#545964}.timetable-vacation-banner strong{display:block;color:#005f86}[data-theme=dark] .academic-toggle,[data-theme=dark] .academic-anchor-field,[data-theme=dark] .timetable-vacation-banner{background:#ffffff0f;border-color:#ffffff24}[data-theme=dark] .academic-resolved{background:#ffffff0f}.export-menu{position:relative;display:inline-flex}.export-menu-list{position:absolute;right:0;top:calc(100% + .45rem);z-index:20;min-width:150px;padding:.35rem;border:1px solid rgba(0,95,134,.16);border-radius:14px;background:var(--surface, #ffffff);box-shadow:0 18px 40px #08233024}.export-menu-list button{width:100%;border:0;border-radius:10px;padding:.65rem .8rem;background:transparent;color:var(--text, #0f2f3f);font-weight:800;text-align:left;cursor:pointer}.export-menu-list button:hover{background:#005f8614;color:#005f86}.timetable-settings-help{max-width:420px;margin:0;color:var(--muted, #545964);font-size:.92rem;line-height:1.35}[data-theme=dark] .export-menu-list{background:#0d2634;border-color:#ffffff24}.user-profile-link{border:0;padding:0;color:inherit;background:transparent;font:inherit;cursor:pointer;text-align:left}.user-profile-link:hover{color:var(--brand, #005f86)}.user-view-switch{width:max-content;display:flex;gap:4px;margin:18px 0 12px;padding:4px;border-radius:12px;background:var(--surface-muted, #eaf1f4)}.user-view-switch button{min-width:104px;border:0;border-radius:9px;padding:9px 18px;color:var(--muted, #545964);background:transparent;font:inherit;font-weight:800;cursor:pointer}.user-view-switch button.active{color:#005f86;background:var(--surface, #fff);box-shadow:0 2px 8px #00293d14}.user-card-directory{display:grid;grid-template-columns:repeat(auto-fill,minmax(235px,1fr));gap:16px;margin-top:16px}.user-directory-card{min-width:0;display:flex;flex-direction:column;gap:10px;padding:18px;border:1px solid var(--line, #d9e3e8);border-radius:15px;background:var(--surface, #fff);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.user-directory-card:hover{transform:translateY(-2px);border-color:#87b7ca;box-shadow:0 12px 28px #0037521a}.user-directory-card>img{width:62px;height:62px;border-radius:16px;object-fit:cover}.user-card-heading{min-width:0;display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.user-card-heading strong{overflow-wrap:anywhere;font-size:1.05rem}.user-directory-card>p{margin:0;min-height:20px;overflow-wrap:anywhere;color:var(--muted, #545964);font-size:.86rem}.user-card-roles{min-height:27px;display:flex;flex-wrap:wrap;gap:6px}.user-card-roles span{padding:5px 8px;border-radius:999px;color:#005f86;background:#eaf3f7;font-size:.74rem;font-weight:800}.user-card-meta{margin:0;overflow-wrap:anywhere;color:var(--muted, #545964);font-size:.78rem;font-weight:600}.user-directory-card .primary-action{width:100%;margin-top:auto;justify-content:center}.status-dot{white-space:nowrap;color:#a15b00;font-size:.72rem;font-weight:800}.status-dot.active{color:#16825d}html[data-theme=dark] .user-card-roles span{color:#5bd4f5;background:#5bd4f51a}html[data-theme=dark] .user-view-switch button.active{color:#5bd4f5}@media(max-width:620px){.user-card-directory{grid-template-columns:1fr}.user-view-switch{width:100%}.user-view-switch button{flex:1}}.profile-overlay{position:fixed;inset:0;z-index:90;overflow:auto;padding:clamp(14px,3vh,30px);background:#041f2c94;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.profile-workspace{width:min(1180px,100%);min-height:0;max-height:calc(100svh - clamp(28px,6vh,60px));margin:0 auto;overflow:auto;border-radius:18px;color:var(--text, #0b2c3d);background:var(--page-bg, #f5f8fa);box-shadow:0 28px 80px #00182447}.profile-header{min-height:124px;padding:18px 28px;display:grid;grid-template-columns:1fr auto;align-items:end;gap:14px;background:var(--surface, #fff);border-bottom:1px solid var(--border, #dbe4e9)}.profile-back{align-self:start;justify-self:start;display:inline-flex;align-items:center;gap:8px;border:0;background:transparent;color:#005f86;font:inherit;font-weight:700;cursor:pointer}.profile-person{grid-column:1;display:flex;align-items:center;gap:16px}.profile-person h1{margin:3px 0 1px;font-size:clamp(24px,3vw,34px);color:var(--heading, #0b2c3d)}.profile-person p{margin:0;color:var(--muted, #545964)}.profile-photo{position:relative;width:72px;height:72px;border-radius:18px;overflow:hidden;display:grid;place-items:center;background:#eaf2f6;color:#005f86;cursor:pointer}.profile-photo img{width:100%;height:100%;object-fit:cover}.profile-photo>svg{width:52px;height:52px}.profile-photo span{position:absolute;inset:auto 0 0;padding:7px;display:flex;justify-content:center;align-items:center;gap:5px;color:#fff;background:#002f46d1;font-size:12px}.profile-photo input{position:absolute;width:1px;height:1px;opacity:0}.profile-navigation{grid-column:2;display:flex;gap:8px}.profile-navigation button{width:44px;height:44px;border:1px solid var(--border, #dbe4e9);border-radius:12px;display:grid;place-items:center;color:#005f86;background:var(--surface, #fff);cursor:pointer}.profile-navigation button:disabled{opacity:.35;cursor:default}.profile-navigation .profile-close:hover{color:var(--danger, #c0392b);border-color:var(--danger, #c0392b)}.profile-layout{display:grid;grid-template-columns:190px minmax(0,1fr);margin:0 auto}.profile-sections{padding:22px 12px;display:flex;flex-direction:column;gap:4px;border-right:1px solid var(--border, #dbe4e9)}.profile-sections button{border:0;border-radius:10px;padding:13px 16px;text-align:left;background:transparent;color:var(--muted, #545964);font:inherit;font-weight:700;cursor:pointer}.profile-sections button.active{color:#005f86;background:#eaf4f8}.profile-content{min-width:0;padding:26px 30px 68px}.profile-section h2{margin:0 0 20px;font-size:clamp(22px,2.5vw,28px)}.profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px}.profile-grid label{display:grid;gap:8px;color:var(--muted, #545964);font-weight:700}.profile-grid input,.profile-grid select,.profile-grid textarea{width:100%;border:1px solid var(--border, #cddbe2);border-radius:12px;padding:13px 14px;color:var(--heading, #0b2c3d);background:var(--surface, #fff);font:inherit}.profile-grid textarea{min-height:150px;resize:vertical}.profile-grid input:disabled{background:color-mix(in srgb,var(--surface, #fff) 75%,#dce6eb);color:var(--muted, #545964)}.profile-wide{grid-column:1 / -1}.profile-history,.profile-family{display:grid;gap:1px;border:1px solid var(--border, #dbe4e9);border-radius:14px;overflow:hidden}.profile-history article,.profile-family article{padding:16px 18px;display:grid;grid-template-columns:minmax(180px,1fr) auto auto;gap:16px;align-items:center;background:var(--surface, #fff)}.profile-history small,.profile-family span{color:var(--muted, #545964)}.profile-membership-editor{gap:10px;border:0;border-radius:0;overflow:visible}.profile-membership-editor article{grid-template-columns:minmax(170px,1fr) repeat(3,minmax(130px,.7fr)) auto;border:1px solid var(--border, #dbe4e9);border-radius:12px}.profile-membership-heading{display:grid;gap:4px}.profile-membership-editor label{display:grid;gap:5px}.profile-membership-editor label>span{font-size:.72rem;color:var(--muted, #545964)}.profile-membership-editor input,.profile-membership-editor select{min-width:0;width:100%;border:1px solid var(--border, #dbe4e9);border-radius:9px;padding:9px 10px;color:var(--text, #0d2c3b);background:var(--surface, #fff);font:inherit}.profile-membership-actions{display:flex;gap:6px;align-items:end}.profile-membership-actions button,.profile-membership-new button{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--border, #dbe4e9);border-radius:9px;padding:8px 12px;color:#01557e;background:var(--surface, #fff);font:inherit;cursor:pointer}.profile-membership-actions button.danger{color:#b42318}.profile-membership-new{display:grid;grid-template-columns:minmax(150px,1fr) repeat(3,minmax(130px,.7fr)) auto;gap:14px;align-items:end;padding:16px 18px;border:1px dashed #9bb6c3;border-radius:12px;background:color-mix(in srgb,var(--surface, #fff) 88%,#e7f2f7)}.profile-save{position:sticky;bottom:18px;margin-top:35px;display:flex;justify-content:flex-end}.profile-save .primary-button{display:inline-flex;align-items:center;gap:8px;border:0;border-radius:12px;padding:14px 22px;color:#fff;background:#01557e;font:inherit;font-weight:800;cursor:pointer;box-shadow:0 10px 26px #003d5b33}.success-note{margin-bottom:20px;padding:12px 14px;border-left:3px solid #198754;color:#146c43;background:#e9f7f0}html[data-theme=dark] .profile-sections button.active{color:#52cef4;background:#52cef41a}html[data-theme=dark] .profile-photo{background:#123d50;color:#52cef4}@media(max-width:760px){.profile-header{min-height:0;grid-template-columns:1fr auto;padding:18px;align-items:center}.profile-person{gap:14px}.profile-photo{width:76px;height:76px;border-radius:18px}.profile-person h1{font-size:26px}.profile-layout{display:block}.profile-sections{position:sticky;top:0;z-index:2;padding:10px 14px;flex-direction:row;overflow-x:auto;border-right:0;border-bottom:1px solid var(--border, #dbe4e9);background:var(--page-bg, #f5f8fa)}.profile-sections button{white-space:nowrap}.profile-content{padding:26px 18px 80px}.profile-grid{grid-template-columns:1fr}.profile-wide{grid-column:auto}.profile-history article,.profile-family article{grid-template-columns:1fr;gap:5px}.profile-membership-editor article,.profile-membership-new{grid-template-columns:1fr}}.workspace-section .user-identity strong{font-weight:400}.workspace-section .user-card-heading strong{font-weight:600}.reconciliation-workspace{margin-top:22px;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--surface)}.reconciliation-steps{display:flex;align-items:center;gap:10px;padding:13px 18px;border-bottom:1px solid var(--line);color:var(--muted);background:var(--soft)}.reconciliation-steps span{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:9px;font-size:.8rem}.reconciliation-steps .done{color:#26734d}.reconciliation-steps .active{color:#01557e;background:var(--surface);box-shadow:0 1px 4px #0c304114}.reconciliation-heading{display:flex;justify-content:space-between;align-items:start;gap:20px;padding:20px}.reconciliation-heading>div{display:grid;gap:4px}.reconciliation-heading strong{font-size:1.15rem}.reconciliation-heading p{margin:0;color:var(--muted)}.reconciliation-tabs{display:flex;overflow-x:auto;padding:0 20px;border-bottom:1px solid var(--line)}.reconciliation-tabs button{flex:0 0 auto;border:0;border-bottom:3px solid transparent;padding:12px 16px;color:var(--muted);background:transparent;font:inherit;cursor:pointer}.reconciliation-tabs button.active{color:#01557e;border-bottom-color:#01557e}.reconciliation-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:15px;padding:13px 20px;border-bottom:1px solid var(--line)}.reconciliation-toolbar label{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:.82rem}.reconciliation-search{margin-left:auto;min-width:220px;display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:9px;padding:8px 10px}.reconciliation-target-search{margin-left:0}.reconciliation-search input{min-width:0;flex:1;border:0;outline:0;color:var(--text);background:transparent;font:inherit}.reconciliation-bulkbar{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:10px 20px;color:#01557e;background:color-mix(in srgb,#dff2f8 72%,var(--surface))}.reconciliation-bulkbar strong{margin-right:auto}.reconciliation-bulkbar button,.reconciliation-row-actions button{display:inline-flex;align-items:center;gap:5px;border:1px solid #b8d1dc;border-radius:8px;padding:7px 9px;color:#01557e;background:var(--surface);font:inherit;cursor:pointer}.reconciliation-guidance{padding:9px 20px;border-bottom:1px solid var(--line);color:var(--muted);background:color-mix(in srgb,var(--surface) 86%,#e7f2f7);font-size:.82rem}.reconciliation-progress{display:grid;gap:7px;padding:10px 20px;border-bottom:1px solid var(--line);color:#01557e;background:color-mix(in srgb,#e8f5f9 76%,var(--surface))}.reconciliation-progress div{display:flex;justify-content:space-between;gap:12px;font-size:.84rem}.reconciliation-progress progress{width:100%;height:9px;accent-color:#01557e}.reconciliation-progress small{color:var(--muted);font-size:.76rem}.reconciliation-lesson-quickbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 20px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface) 90%,#e7f2f7)}.reconciliation-lesson-quickbar div{display:grid;gap:2px;min-width:0}.reconciliation-lesson-quickbar strong{color:var(--ink);font-size:.9rem}.reconciliation-lesson-quickbar span{color:var(--muted);font-size:.8rem;line-height:1.35}.reconciliation-lesson-quickbar button,.reconciliation-lesson-dialog-footer button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:38px;border:1px solid #b8d1dc;border-radius:8px;padding:8px 12px;color:#01557e;background:var(--surface);font:inherit;cursor:pointer;white-space:nowrap}.reconciliation-lesson-quickbar button:disabled,.reconciliation-lesson-dialog-footer button:disabled{opacity:.55;cursor:not-allowed}.reconciliation-lesson-dialog-backdrop{position:fixed;inset:0;z-index:80;display:flex;align-items:center;justify-content:center;padding:24px;background:#0a182361}.reconciliation-lesson-dialog{width:min(980px,calc(100vw - 32px));max-height:min(760px,calc(100svh - 32px));display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;border:1px solid #b8d1dc;border-radius:10px;background:var(--surface);box-shadow:0 18px 48px #00233738}.reconciliation-lesson-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:15px 18px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface) 92%,#e7f2f7)}.reconciliation-lesson-dialog-head div{display:grid;gap:3px}.reconciliation-lesson-dialog-head strong{color:var(--ink);font-size:1rem}.reconciliation-lesson-dialog-head span{color:var(--muted);font-size:.82rem;line-height:1.35}.reconciliation-lesson-dialog-close{width:34px;height:34px;flex:0 0 auto;display:inline-grid;place-items:center;border:1px solid var(--line);border-radius:8px;color:var(--muted);background:var(--surface);cursor:pointer}.reconciliation-lesson-dialog-body{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-content:start;overflow-y:auto;padding:16px 18px;scrollbar-gutter:stable}.reconciliation-lesson-dialog-body .reconciliation-chip-group,.reconciliation-lesson-dialog-body .reconciliation-room-picker{min-height:94px;align-content:start}.reconciliation-lesson-dialog-body .reconciliation-room-picker{grid-column:span 2}.reconciliation-lesson-dialog-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:12px 18px;border-top:1px solid var(--line);background:color-mix(in srgb,var(--surface) 90%,#e7f2f7)}.reconciliation-lesson-dialog-footer span{margin-right:auto;color:var(--muted);font-size:.8rem;line-height:1.35}.reconciliation-lesson-dialog-footer .secondary-action{color:var(--text);background:#fff;border-color:var(--line)}.reconciliation-manual-create{display:grid;grid-template-columns:auto minmax(220px,1fr) minmax(140px,.45fr) auto;align-items:center;gap:10px;padding:11px 20px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface) 82%,#e7f2f7)}.reconciliation-manual-create strong{color:var(--ink);font-size:.86rem;white-space:nowrap}.reconciliation-manual-create input,.reconciliation-manual-create select{min-width:0;width:100%;border:1px solid var(--line);border-radius:8px;padding:8px 10px;color:var(--text);background:var(--surface);font:inherit}.reconciliation-manual-create button{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid #b8d1dc;border-radius:8px;padding:8px 10px;color:#01557e;background:var(--surface);font:inherit;cursor:pointer;white-space:nowrap}.reconciliation-manual-create button:disabled{opacity:.55;cursor:not-allowed}.reconciliation-manual-create small{grid-column:2 / -1;color:var(--muted);font-size:.78rem;line-height:1.35}.reconciliation-lesson-create{grid-template-columns:repeat(4,minmax(150px,1fr));align-items:start}.reconciliation-lesson-create strong{grid-column:1 / -1}.reconciliation-lesson-create button{min-height:39px}.reconciliation-field{display:grid;gap:6px;color:var(--muted);font-size:.76rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.reconciliation-field input,.reconciliation-field select{text-transform:none;letter-spacing:0;font-size:.95rem;font-weight:600}.reconciliation-room-picker{align-content:start}.reconciliation-selected-rooms{display:flex;flex-wrap:wrap;gap:6px}.reconciliation-selected-rooms button{min-height:0;border-radius:999px;padding:4px 8px;color:var(--ink);background:color-mix(in srgb,var(--surface) 86%,#e7f2f7);font-size:.78rem;line-height:1.2;text-transform:none;letter-spacing:0;white-space:normal}.reconciliation-chip-group{display:flex;flex-wrap:wrap;gap:7px;align-items:center;padding:8px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.reconciliation-chip-group>span{width:100%;color:var(--muted);font-size:.76rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.reconciliation-chip-group label{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border:1px solid var(--line);border-radius:999px;color:var(--ink);background:color-mix(in srgb,var(--surface) 86%,#e7f2f7);font-size:.78rem}.reconciliation-chip-group small{color:var(--muted);font-size:.82rem;line-height:1.35}.reconciliation-table-wrap{position:relative;overflow-x:auto}.reconciliation-class-teachers-import{margin:14px 20px 18px}.reconciliation-table{width:100%;min-width:940px;border-collapse:collapse;table-layout:fixed}.reconciliation-table th,.reconciliation-table td{padding:12px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}.reconciliation-table th:first-child,.reconciliation-table td:first-child{width:44px;text-align:center}.reconciliation-table th:nth-child(2),.reconciliation-table th:nth-child(4){width:28%}.reconciliation-table th:nth-child(3){width:38%;text-align:center}.reconciliation-lessons-table{min-width:1320px;table-layout:fixed}.reconciliation-lessons-table th:nth-child(1),.reconciliation-lessons-table td:nth-child(1){width:42px;padding-left:10px;padding-right:8px}.reconciliation-lessons-table th:nth-child(2){width:15%}.reconciliation-lessons-table th:nth-child(3){width:13%;text-align:left}.reconciliation-lessons-table th:nth-child(4){width:8%}.reconciliation-lessons-table th:nth-child(5){width:64px;text-align:center}.reconciliation-lessons-table th:nth-child(6){width:110px}.reconciliation-lessons-table th:nth-child(7){width:110px}.reconciliation-lessons-table th:nth-child(8){width:16%}.reconciliation-lessons-table th:nth-child(9){width:360px;text-align:center}.reconciliation-lessons-table td{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reconciliation-lessons-table td:nth-child(5){text-align:center}.reconciliation-rooms-text{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}.reconciliation-lesson-action{grid-template-columns:auto minmax(150px,1fr) auto;gap:8px}.reconciliation-lesson-action select{min-width:0}.reconciliation-clickable-row{cursor:pointer}.reconciliation-clickable-row:hover td{background:#0e74900a}.reconciliation-lesson-editor{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#0e74900d}.reconciliation-lesson-editor .secondary-action{background:#fff;color:var(--text);border:1px solid var(--line)}.reconciliation-person{display:grid;gap:3px;min-width:0}.reconciliation-person strong{overflow-wrap:anywhere;font-weight:500}.reconciliation-person small{overflow-wrap:anywhere;color:var(--muted)}.reconciliation-action-cell{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:7px}.reconciliation-action-cell>small{grid-column:1 / -1;text-align:center;color:#a15c00}.reconciliation-action-cell select{min-width:0;width:100%;border:1px solid var(--line);border-radius:8px;padding:8px 30px 8px 10px;color:var(--text);background:var(--surface);font:inherit;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reconciliation-row-actions{display:inline-flex;gap:5px}.reconciliation-row-actions button{width:36px;height:36px;justify-content:center;padding:0;font-size:0;flex:0 0 auto}.reconciliation-row-actions button svg{width:15px;height:15px}.reconciliation-status{display:inline-flex;justify-content:center;border-radius:999px;padding:5px 8px;font-size:.72rem;white-space:nowrap}.reconciliation-status.linked{color:#146c43;background:#e7f6ee}.reconciliation-status.difference{color:#8a5200;background:#fff4d8}.reconciliation-status.suggested{color:#01557e;background:#e7f3f7}.reconciliation-status.unlinked{color:#b42318;background:#ffebe9}.reconciliation-status.ignored{color:var(--muted);background:var(--soft)}.reconciliation-platform-only{margin:14px 20px 20px;border:1px solid var(--line);border-radius:10px;padding:12px 14px}.reconciliation-platform-only summary{cursor:pointer;color:#01557e}.reconciliation-platform-only>div{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.reconciliation-platform-only span{border-radius:999px;padding:5px 9px;color:var(--muted);background:var(--soft);font-size:.78rem}.reconciliation-loading{display:flex;justify-content:center;align-items:center;gap:8px;padding:24px;color:var(--muted)}.reconciliation-load-more{display:flex;justify-content:center;padding:12px 20px 18px}.reconciliation-load-more button{border:1px solid #b8d1dc;border-radius:8px;padding:8px 12px;color:#01557e;background:var(--surface);font:inherit;cursor:pointer}@media(max-width:1040px){.reconciliation-lesson-dialog-body{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.reconciliation-heading{display:grid}.reconciliation-toolbar{align-items:stretch}.reconciliation-search{width:100%;margin-left:0}.reconciliation-lesson-quickbar{align-items:stretch;flex-direction:column}.reconciliation-lesson-quickbar button{width:100%}.reconciliation-lesson-dialog-backdrop{align-items:stretch;padding:10px}.reconciliation-lesson-dialog{width:100%;max-height:calc(100svh - 20px);border-radius:8px}.reconciliation-lesson-dialog-head,.reconciliation-lesson-dialog-footer{padding:12px 14px}.reconciliation-lesson-dialog-body{grid-template-columns:1fr;padding:14px}.reconciliation-lesson-dialog-body .reconciliation-room-picker{grid-column:auto}.reconciliation-lesson-dialog-footer{align-items:stretch;flex-direction:column}.reconciliation-lesson-dialog-footer span{margin-right:0}.reconciliation-lesson-dialog-footer button{width:100%}.reconciliation-manual-create{grid-template-columns:1fr}.reconciliation-manual-create strong{white-space:normal}.reconciliation-manual-create small{grid-column:auto}.reconciliation-steps{overflow-x:auto}.reconciliation-table{min-width:0}.reconciliation-table thead{display:none}.reconciliation-table,.reconciliation-table tbody,.reconciliation-table tr,.reconciliation-table td{display:block;width:100%}.reconciliation-table tr{padding:10px 14px;border-bottom:1px solid var(--line)}.reconciliation-table td{padding:8px 0;border:0}.reconciliation-table td:first-child{width:100%;text-align:left}.reconciliation-action-cell{grid-template-columns:1fr}.reconciliation-row-actions{justify-content:flex-start}}.workspace-section .user-view-switch button,.workspace-section .user-category-tabs button,.workspace-section .role-editor summary>span,.workspace-section .provider-tag,.workspace-section .reset-action,.workspace-section .user-card-roles span,.workspace-section .status-dot,.profile-sections button,.profile-grid label{font-weight:500}@media(max-width:900px){.user-table-wrap{border:0;background:transparent}.user-table,.user-table tbody,.user-table tr,.user-table td{display:block;width:100%}.user-table thead{display:none}.user-table tr{margin-bottom:10px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.user-table td{padding:7px 0;border:0}.user-table td.user-col-select{width:auto;text-align:left}.user-table td.user-col-email,.user-table td.user-col-role,.user-table td.user-col-method,.user-table td.user-col-status,.user-table td.user-col-actions{width:100%}.user-table td.user-col-actions .row-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}.school-profile-form,.rooms-settings-panel,.school-profile-panel{display:grid;gap:20px}.school-logo-card{display:flex;align-items:center;gap:20px;padding:16px 18px;border:1px solid var(--line);background:var(--surface-soft)}.school-logo-preview{flex:0 0 auto;width:76px;height:76px;display:grid;place-items:center;overflow:hidden;border:1px solid var(--line);border-radius:14px;color:var(--brand);background:var(--surface)}.school-logo-preview img{width:100%;height:100%;object-fit:contain;padding:8px}.school-logo-meta{flex:0 0 auto;min-width:190px}.school-logo-meta strong{display:block;color:var(--ink)}.school-logo-meta p{margin:3px 0 10px;color:var(--muted);font-size:.82rem}.school-logo-usage{list-style:none;margin:0;padding:0 0 0 20px;border-left:1px solid var(--line);display:grid;gap:7px;align-content:center;flex:1 1 auto;min-width:0}.school-logo-usage li{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:.78rem;line-height:1.3}.school-logo-usage svg{color:var(--brand);flex:0 0 auto}.school-profile-panel .settings-section-head{margin:2px 0}.school-profile-panel .settings-section-head h3{margin:0;font-size:.8rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.school-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.school-profile-grid label{min-width:0;display:grid;gap:7px;color:var(--text);font-weight:600}.school-profile-grid input,.room-create-row input,.room-list input,.subject-create-form input,.subject-edit-fields input{width:100%;min-width:0}.school-timezone-card{display:grid;gap:10px}.school-timezone-card label{display:grid;gap:7px;color:var(--text);font-weight:600}.school-timezone-card select{width:100%;min-height:48px;border:1px solid var(--input-border);border-radius:12px;padding:0 14px;color:var(--ink);background:var(--input-bg)}.school-timezone-now{display:flex;align-items:center;gap:9px;min-height:44px;padding:10px 14px;border:1px solid var(--line);border-radius:12px;color:var(--muted);background:var(--surface-soft)}.school-timezone-now svg{color:var(--brand)}.settings-form-actions{display:flex;justify-content:flex-end}.settings-ai-stack{display:grid;gap:18px}.room-create-row{min-width:0;display:grid;grid-template-columns:1.3fr .8fr .65fr 1fr auto;gap:10px;align-items:end}.room-list{display:grid;border-top:1px solid var(--line)}.room-list article{display:grid;grid-template-columns:1.3fr .75fr .65fr 1fr auto auto auto;gap:10px;align-items:center;padding-block:12px;border-bottom:1px solid var(--line)}.subject-create-form{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.8fr) auto;gap:8px;margin-bottom:12px}.subject-list article{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto}.subject-edit-fields{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.8fr);gap:8px;min-width:0}.subject-edit-fields input{height:36px;border:1px solid var(--input-border);border-radius:8px;padding:0 10px;color:var(--ink);background:var(--input-bg)}.secondary-action.compact,.primary-action.compact{min-height:38px;padding:8px 13px}.my-ai-inline .my-ai-dialog{width:100%;max-height:none;overflow:visible;margin:0;padding:0;border-radius:0;background:transparent;box-shadow:none;animation:none}.my-ai-inline .my-ai-dialog>p{max-width:720px}.my-ai-inline .my-ai-source-section{display:grid;gap:8px}.my-ai-inline .my-ai-sources{grid-template-columns:repeat(3,minmax(0,1fr))}.my-ai-inline .my-ai-own{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;padding:20px;background:var(--surface)}.my-ai-inline .my-ai-own>.secondary-action{align-self:end}.my-ai-inline .my-ai-actions{justify-content:flex-end;padding-top:8px;border-top:1px solid var(--line)}@media(max-width:980px){.room-create-row,.room-list article,.subject-list article,.subject-edit-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.room-list article .inline-checkbox,.room-list article button{justify-self:start}.my-ai-inline .my-ai-sources,.my-ai-inline .my-ai-own{grid-template-columns:1fr}}@media(max-width:640px){.school-profile-grid,.room-create-row,.room-list article,.subject-create-form,.subject-list article,.subject-edit-fields{grid-template-columns:1fr}.school-logo-card{flex-direction:column;align-items:flex-start}.school-logo-usage{padding-left:0;border-left:0;border-top:1px solid var(--line);padding-top:10px}}.chat-admin{display:flex;flex-direction:column;gap:16px}.chat-admin-topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;flex-wrap:wrap}.chat-admin-topbar h2{margin:0;color:var(--ink);font-size:1.4rem}.chat-admin-topbar p{margin:4px 0 0;color:var(--muted);font-size:.82rem}.chat-admin-topbar .primary-action{white-space:nowrap}.chat-admin-topbar-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.chat-admin-topbar-actions .secondary-action{white-space:nowrap}.chat-admin-generate{position:relative}.chat-admin-generate-confirm{position:absolute;z-index:30;top:calc(100% + 8px);left:0;width:min(320px,80vw);padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:0 20px 44px #05243438}.chat-admin-generate-confirm p{margin:0 0 12px;color:var(--ink);font-size:.82rem;line-height:1.5}.chat-admin-generate-confirm-actions{display:flex;gap:8px}.chat-admin-generate-confirm-actions button{flex:1;padding:8px 0;border-radius:8px;border:1px solid var(--line);background:var(--surface);font:inherit;font-size:.8rem;font-weight:700;cursor:pointer}.chat-admin-generate-confirm-actions .yes{background:var(--brand);border-color:var(--brand);color:#fff}.chat-admin-generate-confirm-actions .no:hover{background:var(--surface-soft)}.chat-admin-tabs{display:flex;gap:4px;border-bottom:1px solid var(--line)}.chat-admin-tabs button{display:inline-flex;align-items:center;gap:7px;padding:10px 14px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);font:inherit;font-weight:600;font-size:.82rem;cursor:pointer}.chat-admin-tabs button.active{color:var(--brand);border-bottom-color:var(--brand)}.chat-admin-card{border:1px solid var(--line);border-radius:14px;background:var(--surface);padding:16px}.chat-admin-toolbar{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}.chat-admin-search{display:flex;align-items:center;gap:8px;flex:1 1 240px;min-width:200px;padding:0 12px;min-height:40px;border:1px solid var(--line);border-radius:9px;color:var(--muted);background:var(--surface)}.chat-admin-search input{flex:1 1 auto;border:0;outline:0;background:transparent;color:var(--ink);font:inherit}.chat-admin-toolbar select{min-height:40px;border:1px solid var(--line);border-radius:9px;padding:0 12px;color:var(--ink);background:var(--surface);font:inherit}.chat-admin-table-wrap{overflow-x:auto}.chat-admin-table{width:100%;border-collapse:collapse}.chat-admin-table th{text-align:left;padding:10px 12px;color:var(--muted);font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;border-bottom:1px solid var(--line)}.chat-admin-table td{padding:12px;border-bottom:1px solid var(--line);font-size:.82rem;color:var(--ink);vertical-align:middle}.chat-admin-name{display:flex;align-items:center;gap:11px}.chat-admin-avatar{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:11px;color:#fff;background:var(--brand);flex:0 0 auto}.chat-admin-avatar.cat-class,.chat-admin-avatar.cat-subject,.chat-admin-avatar.cat-parent,.chat-admin-avatar.cat-announcement{background:var(--brand)}.chat-admin-name strong{display:block;color:var(--brand-deep);font-size:.85rem}.chat-admin-name small{color:var(--muted);font-size:.72rem}.chat-admin-chip{display:inline-block;padding:3px 10px;border-radius:999px;font-size:.7rem;font-weight:700;color:var(--brand-deep);background:#005f861a;border:1px solid rgba(0,95,134,.18)}.chat-admin-chip.cat-class,.chat-admin-chip.cat-subject,.chat-admin-chip.cat-parent,.chat-admin-chip.cat-announcement{color:var(--brand-deep);background:#005f861a}.chat-admin-members-cell{display:grid;gap:2px}.chat-admin-members-cell span{font-size:.78rem;color:var(--ink)}.chat-admin-members-cell span+span{color:var(--muted);font-size:.72rem}.chat-admin-date{color:var(--muted);font-size:.76rem;white-space:nowrap}.chat-admin-status{display:inline-block;padding:3px 11px;border-radius:999px;font-size:.7rem;font-weight:700}.chat-admin-status.active{color:var(--brand-deep);background:#005f861a;border:1px solid rgba(0,95,134,.18)}.chat-admin-status.inactive{color:var(--muted);background:var(--surface-soft);border:1px solid var(--line)}.chat-admin-actions-cell{position:relative;text-align:right}.chat-admin-menu-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid var(--line);border-radius:9px;color:var(--muted);background:var(--surface);cursor:pointer}.chat-admin-menu-btn:hover{color:var(--brand-deep);border-color:#005f864d}.chat-admin-menu{position:absolute;right:12px;top:calc(100% - 4px);z-index:30;min-width:200px;padding:6px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:0 18px 40px #001e2d29;display:grid;gap:2px}.chat-admin-menu button{display:flex;align-items:center;gap:9px;width:100%;padding:9px 10px;border:0;border-radius:8px;background:transparent;color:var(--ink);font:inherit;font-size:.8rem;cursor:pointer;text-align:left}.chat-admin-menu button:hover{background:var(--surface-soft)}.chat-admin-menu button.danger{color:var(--muted)}.chat-admin-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;color:var(--muted);font-size:.76rem}.chat-admin-pages{display:inline-flex;align-items:center;gap:6px}.chat-admin-pages button{width:32px;height:32px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);cursor:pointer}.chat-admin-pages button:disabled{opacity:.4;cursor:not-allowed}.chat-admin-page-num{min-width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--brand);border-radius:8px;color:var(--brand);font-weight:700}.chat-admin-note{display:flex;gap:10px;padding:14px 16px;border:1px solid rgba(0,95,134,.2);border-radius:12px;background:#005f860d;color:var(--brand-deep);font-size:.8rem;line-height:1.45}.chat-admin-info-card{display:grid;gap:10px}.chat-admin-category-row{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border:1px solid var(--line);border-radius:10px}.chat-admin-category-row strong{color:var(--brand-deep);font-size:.82rem}.chat-admin-rules{margin:0;padding-left:18px;display:grid;gap:8px;color:var(--ink);font-size:.82rem;line-height:1.5}.chat-admin-empty{margin:0;padding:22px 14px;color:var(--muted);font-size:.78rem;text-align:center}.chat-admin-modal{width:min(100%,460px);border-radius:16px;background:var(--surface);box-shadow:0 30px 70px #001e2d4d;overflow:hidden}.chat-admin-modal.lg{width:min(100%,640px)}.chat-admin-modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid var(--line)}.chat-admin-modal-head h3{margin:0;color:var(--brand-deep);font-size:.95rem}.chat-admin-modal-head button{display:inline-flex;border:0;background:transparent;color:var(--muted);cursor:pointer}.chat-admin-modal-body{padding:18px;display:grid;gap:14px}.chat-admin-modal-body>label{display:grid;gap:6px;color:var(--muted);font-size:.72rem;font-weight:600}.chat-admin-modal-body input,.chat-admin-modal-body select{min-height:40px;border:1px solid var(--line);border-radius:9px;padding:0 11px;outline:0;color:var(--ink);background:var(--surface);font:inherit}.chat-admin-modal-body input:focus,.chat-admin-modal-body select:focus{border-color:var(--brand);box-shadow:0 0 0 2px var(--focus-ring)}.chat-admin-modal-foot{display:flex;justify-content:flex-end;gap:10px;padding:14px 18px;border-top:1px solid var(--line)}.chat-admin-members-modal{grid-template-columns:1fr}.chat-admin-member-list{display:grid;gap:6px;max-height:230px;overflow-y:auto}.chat-admin-member,.chat-admin-candidate{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 11px;border:1px solid var(--line);border-radius:9px;background:var(--surface)}.chat-admin-member strong,.chat-admin-candidate strong{display:block;color:var(--brand-deep);font-size:.8rem}.chat-admin-member span,.chat-admin-candidate span{color:var(--muted);font-size:.7rem}.chat-admin-member button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--line);border-radius:8px;color:var(--brand);background:var(--surface);cursor:pointer}.chat-admin-add{border-top:1px solid var(--line);padding-top:12px;margin-top:4px}.chat-admin-add .chat-admin-search{margin-bottom:8px}.chat-admin-candidate-list{display:grid;gap:6px;max-height:220px;overflow-y:auto}.chat-admin-candidate{cursor:pointer}.chat-admin-candidate:hover{border-color:#005f864d;background:#005f860f}@media(max-width:760px){.chat-admin-table th:nth-child(3),.chat-admin-table td:nth-child(3),.chat-admin-table th:nth-child(5),.chat-admin-table td:nth-child(5){display:none}}.chat-page{display:grid;grid-template-columns:320px 1fr;gap:0;height:calc(100vh - 150px);min-height:480px;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--surface)}.chat-list{display:flex;flex-direction:column;border-right:1px solid var(--line);background:var(--surface-soft);min-width:0;min-height:0}.chat-list-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--line)}.chat-list-head h2{margin:0;font-size:1.05rem;color:var(--brand-deep)}.chat-new-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:0;border-radius:9px;background:var(--brand);color:#fff;cursor:pointer}.chat-new-btn:hover{background:var(--brand-deep)}.chat-list-search{display:flex;align-items:center;gap:8px;margin:12px 14px;padding:0 12px;min-height:38px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--muted)}.chat-list-search input{flex:1 1 auto;border:0;outline:0;background:transparent;color:var(--ink);font:inherit}.chat-list-items{flex:1 1 auto;overflow-y:auto;padding:0 8px 10px;display:flex;flex-direction:column;gap:2px}.chat-list-item{display:flex;align-items:center;gap:11px;width:100%;padding:10px;border:0;border-radius:11px;background:transparent;cursor:pointer;text-align:left}.chat-list-item:hover{background:#005f860f}.chat-list-item.active{background:#005f861a}.chat-avatar{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;flex:0 0 auto;border-radius:12px;background:var(--brand);color:#fff;font-size:.8rem;font-weight:700}.chat-avatar.group{background:#0e7c86}.chat-list-item-main{display:grid;gap:3px;min-width:0;flex:1 1 auto}.chat-list-item-top{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.chat-list-item-top strong{color:var(--ink);font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}[data-theme=dark] .chat-list-item-top strong{color:#fff}.chat-list-item-top small{color:var(--muted);font-size:.68rem;flex:0 0 auto}.chat-list-item-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px}.chat-list-preview{color:var(--muted);font-size:.76rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.chat-unread{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--brand);color:#fff;font-size:.68rem;font-weight:700;flex:0 0 auto}.chat-empty{padding:18px 14px;color:var(--muted);font-size:.8rem;text-align:center}.chat-window{display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--surface)}.chat-window-empty{flex:1 1 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--muted)}.chat-window-head{display:flex;align-items:center;gap:11px;padding:13px 18px;border-bottom:1px solid var(--line)}.chat-window-head strong{display:block;color:var(--brand-deep);font-size:.92rem}.chat-window-head small{color:var(--muted);font-size:.72rem}.chat-messages{flex:1 1 auto;min-height:0;overflow-y:auto;padding:18px;display:flex;flex-direction:column;gap:10px;background:var(--surface-soft)}.chat-msg{display:flex;flex-direction:column;align-items:flex-start;max-width:72%}.chat-msg.mine{align-self:flex-end;align-items:flex-end}.chat-msg.grouped{margin-top:-8px}.chat-msg-sender{font-size:.68rem;color:var(--brand);font-weight:700;margin:0 4px 2px}.chat-bubble{padding:9px 13px;border-radius:14px;background:var(--surface);border:1px solid var(--line);color:var(--ink);font-size:.85rem;line-height:1.4;white-space:pre-wrap;word-break:break-word}.chat-msg.mine .chat-bubble{background:var(--brand);border-color:var(--brand);color:#fff}.chat-bubble.emoji-only{padding:4px 6px;background:transparent;border:none;font-size:1.7rem;line-height:1.2}.chat-msg.mine .chat-bubble.emoji-only{background:transparent}.chat-msg-time{margin:3px 6px 0;font-size:.64rem;color:var(--muted)}.chat-msg-seen{display:flex;gap:2px;margin:3px 6px 0}.chat-msg.mine .chat-msg-seen{justify-content:flex-end}.chat-seen-dot{display:inline-flex;align-items:center;justify-content:center;width:15px;height:15px;border-radius:50%;background:var(--brand);color:#fff;font-size:.5rem;font-weight:700;line-height:1;border:1px solid var(--surface)}.chat-error{margin:0 18px;padding:8px 12px;border:1px solid rgba(0,95,134,.25);border-radius:9px;background:#005f860f;color:var(--brand-deep);font-size:.78rem}.chat-composer{display:flex;align-items:flex-end;gap:10px;padding:12px 16px;border-top:1px solid var(--line)}.chat-composer textarea{flex:1 1 auto;resize:none;max-height:120px;min-height:42px;padding:11px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font:inherit;font-size:.85rem;line-height:1.4}.chat-composer textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--focus-ring)}.chat-composer button{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex:0 0 auto;border:0;border-radius:12px;background:var(--brand);color:#fff;cursor:pointer}.chat-composer button:hover:not(:disabled){background:var(--brand-deep)}.chat-composer button:disabled{opacity:.45;cursor:not-allowed}.chat-modal-overlay{position:fixed;inset:0;z-index:80;display:flex;align-items:center;justify-content:center;padding:20px;background:#001e2d66}.chat-modal{width:min(100%,900px);max-height:84vh;display:flex;flex-direction:column;border-radius:16px;background:var(--surface);box-shadow:0 30px 70px #001e2d4d;overflow:hidden}.chat-modal-head{display:flex;align-items:center;justify-content:space-between;padding:15px 18px;border-bottom:1px solid var(--line)}.chat-modal-head h3{margin:0;color:var(--brand-deep);font-size:.95rem}.chat-modal-head button{border:0;background:transparent;color:var(--muted);cursor:pointer;display:inline-flex}.chat-modal-body{overflow-y:auto;padding:8px 12px 14px}.chat-modal-group{display:flex;flex-direction:column;gap:2px;margin-top:8px}.chat-modal-label{padding:6px 8px;color:var(--muted);font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.chat-contact-row{display:flex;align-items:center;gap:11px;width:100%;padding:9px 10px;border:0;border-radius:11px;background:transparent;cursor:pointer;text-align:left}.chat-contact-row:hover{background:#005f8612}.chat-contact-main{display:grid;gap:1px;min-width:0}.chat-contact-main strong{color:var(--brand-deep);font-size:.84rem}.chat-contact-main small{color:var(--muted);font-size:.72rem}@media(max-width:720px){.chat-page{grid-template-columns:1fr;height:calc(100vh - 130px)}}.chat-modal-filters{display:flex;flex-wrap:wrap;gap:6px;padding:0 16px 6px}.chat-filter-chip{padding:5px 11px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font:inherit;font-size:.74rem;font-weight:600;cursor:pointer}.chat-filter-chip:hover{border-color:#005f864d;color:var(--brand-deep)}.chat-filter-chip.active{background:var(--brand);border-color:var(--brand);color:#fff}.chat-modal-columns{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;align-items:start}.chat-modal-column{display:flex;flex-direction:column;min-width:0;border:1px solid var(--line);border-radius:12px;background:var(--surface-soft);overflow:hidden}.chat-modal-column>.chat-modal-label{padding:10px 12px;border-bottom:1px solid var(--line);background:var(--surface)}.chat-modal-column .chat-modal-label em{font-style:normal;color:var(--brand);font-weight:700}.chat-modal-column-list{display:flex;flex-direction:column;gap:1px;padding:6px;max-height:46vh;overflow-y:auto}.chat-launcher{position:fixed;right:24px;bottom:24px;z-index:70;display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border:0;border-radius:50%;background:var(--brand);color:#fff;cursor:pointer;box-shadow:0 12px 30px #005f8666;transition:transform .15s ease,background .15s ease}.chat-launcher.chat-launcher-next-to-messages{right:104px;bottom:32px}.chat-launcher:hover{background:#6b7785;transform:translateY(-2px)}.chat-launcher-badge{position:absolute;top:-4px;right:-4px;min-width:22px;height:22px;padding:0 6px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#fff;color:var(--brand-deep);border:2px solid var(--brand);font-size:.68rem;font-weight:800}.chat-widget{position:fixed;right:24px;bottom:24px;z-index:75;width:min(390px,calc(100vw - 32px));height:min(390px,calc(100vh - 130px));display:flex;flex-direction:column;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:0 24px 60px #001e2d47;overflow:hidden}.chat-widget-head{display:flex;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid var(--line);background:var(--brand);color:#fff}.chat-widget-head strong{flex:1 1 auto;font-size:.92rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-widget-head-actions{display:inline-flex;align-items:center;gap:2px}.chat-widget-head button{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:0;border-radius:8px;background:transparent;color:#fff;cursor:pointer}.chat-widget-head button:hover{background:#ffffff2e}.chat-widget-back{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:0;border-radius:8px;background:transparent;color:#fff;cursor:pointer}.chat-widget-back:hover{background:#ffffff2e}.chat-widget-list{flex:1 1 auto;overflow-y:auto;padding:8px;display:flex;flex-direction:column;gap:2px}.chat-widget-messages{flex:1 1 auto;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:9px;background:var(--surface-soft)}.chat-widget .chat-composer{padding:10px 12px}.chat-widget .chat-composer button{width:40px;height:40px}.chat-admin-candidate-tabs{display:flex;gap:6px;margin-bottom:10px}.chat-admin-candidate-tab{padding:6px 12px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font:inherit;font-size:.76rem;font-weight:600;cursor:pointer}.chat-admin-candidate-tab:hover{border-color:#005f864d;color:var(--brand-deep)}.chat-admin-candidate-tab.active{background:var(--brand);border-color:var(--brand);color:#fff}.chat-attach-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:42px;flex:0 0 auto;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--muted);cursor:pointer}.chat-attach-btn:hover{color:var(--brand-deep);border-color:#005f864d}.chat-emoji-anchor{position:relative;flex:0 0 auto}.chat-emoji-picker{position:absolute;z-index:30;bottom:calc(100% + 8px);left:0;width:216px;max-height:min(360px,calc(100vh - 190px));overflow-y:auto;overscroll-behavior:contain;display:grid;grid-template-columns:repeat(5,1fr);gap:2px;padding:8px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:0 16px 36px #05243433;scrollbar-gutter:stable}.chat-emoji-picker button{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;border-radius:8px;background:transparent;font-size:1.15rem;line-height:1;cursor:pointer}.chat-emoji-picker button:hover{background:var(--surface-soft)}.chat-pending-file{display:flex;align-items:center;gap:8px;margin:0 16px;padding:8px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface-soft);color:var(--ink);font-size:.78rem}.chat-pending-file span{flex:1 1 auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-pending-file button{display:inline-flex;border:0;background:transparent;color:var(--muted);cursor:pointer}.chat-attachment{display:inline-flex;align-items:center;gap:9px;max-width:100%;margin-top:2px;padding:9px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--brand-deep);cursor:pointer;text-align:left}.chat-attachment:hover{border-color:#005f8659;background:#005f860d}.chat-attachment.mine{background:var(--brand);border-color:var(--brand);color:#fff}.chat-attachment-info{display:grid;gap:1px;min-width:0}.chat-attachment-info strong{font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.chat-attachment-info small{font-size:.68rem;opacity:.8}.chat-image{max-width:min(260px,100%);max-height:280px;border-radius:12px;border:1px solid var(--line);object-fit:cover;cursor:pointer;margin-top:2px}.chat-image:hover{opacity:.92}.chat-image-loading{width:160px;height:110px;border-radius:12px;background:linear-gradient(90deg,var(--surface-soft),var(--surface),var(--surface-soft));border:1px solid var(--line);margin-top:2px}.chat-lightbox{position:fixed;inset:0;z-index:90;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:24px;background:#00141ed1}.chat-lightbox-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;width:min(900px,100%);color:#fff;font-size:.85rem}.chat-lightbox-bar span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-lightbox-bar div{display:inline-flex;gap:4px;flex:0 0 auto}.chat-lightbox-bar button{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border:0;border-radius:10px;background:#ffffff1f;color:#fff;cursor:pointer}.chat-lightbox-bar button:hover{background:#ffffff40}.chat-lightbox-img{max-width:min(900px,100%);max-height:80vh;border-radius:12px;object-fit:contain}.chat-window-head .chat-leave-btn{margin-left:auto;display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--muted);font:inherit;font-size:.76rem;font-weight:600;cursor:pointer}.chat-window-head .chat-leave-btn:hover{color:var(--brand-deep);border-color:#005f864d}.chat-window-head .chat-head-actions{margin-left:auto;position:relative;display:inline-flex;align-items:center}.chat-window-head .chat-head-actions .chat-leave-btn{margin-left:0}.chat-window-head .chat-leave-btn.active{background:var(--brand);border-color:var(--brand);color:#fff}.chat-blocked-note{display:flex;align-items:center;gap:8px;margin:0;padding:14px 18px;border-top:1px solid var(--line);color:var(--muted);font-size:.8rem;background:var(--surface-soft)}.chat-settings-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--muted);cursor:pointer}.chat-settings-btn:hover,.chat-settings-btn.active{color:var(--brand-deep);border-color:#005f864d;background:var(--surface-soft)}.chat-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:20;min-width:200px;padding:6px;border:1px solid var(--line);border-radius:11px;background:var(--surface);box-shadow:0 12px 30px #0000001f;display:flex;flex-direction:column;gap:2px}.chat-menu-item{display:flex;align-items:center;gap:9px;width:100%;padding:9px 11px;border:none;border-radius:8px;background:transparent;color:var(--ink);font:inherit;font-size:.82rem;font-weight:600;text-align:left;cursor:pointer}.chat-menu-item:hover{background:var(--surface-soft)}.chat-menu-item.danger{color:#b03a3a}.chat-menu-item.danger:hover{background:#b03a3a14}.chat-menu-confirm{padding:9px 11px}.chat-menu-confirm>span{display:block;font-size:.8rem;color:var(--ink);margin-bottom:8px}.chat-menu-confirm-actions{display:flex;gap:6px}.chat-menu-confirm-actions button{flex:1;padding:7px 0;border-radius:8px;border:1px solid var(--line);background:var(--surface);font:inherit;font-size:.78rem;font-weight:700;cursor:pointer}.chat-menu-confirm-actions .yes{background:var(--brand);border-color:var(--brand);color:#fff}.chat-menu-confirm-actions .no:hover{background:var(--surface-soft)}.substitute-workspace{--substitute-brand: #01557e;--substitute-brand-dark: #003b55;--substitute-brand-soft: rgba(1, 85, 126, .08);--substitute-border: rgba(1, 85, 126, .18);display:grid;gap:22px;color:var(--ink)}.substitute-hero,.substitute-panel,.substitute-metric-card,.substitute-session-card,.substitute-export-card,.substitute-absence-card,.substitute-monitor-card,.substitute-question-card{border:1px solid var(--line);background:var(--surface);box-shadow:0 16px 42px var(--shadow-soft)}.substitute-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px;border-radius:8px;background:linear-gradient(120deg,#01557e1a,#fff0 46%),var(--surface)}.substitute-eyebrow{display:inline-flex;align-items:center;gap:8px;margin-bottom:7px;color:var(--substitute-brand);font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.substitute-hero h1,.substitute-panel h2,.substitute-question-card h3,.substitute-session-card h3,.substitute-export-card h3,.substitute-absence-card h3,.substitute-monitor-card h3{margin:0;color:var(--ink);letter-spacing:0}.substitute-hero h1{font-size:clamp(1.65rem,2.5vw,2.4rem);line-height:1.08}.substitute-hero p,.substitute-panel p,.substitute-session-card p,.substitute-export-card p,.substitute-absence-card p,.substitute-monitor-card p,.substitute-question-card p{margin:6px 0 0;color:var(--muted)}.substitute-hero-actions,.substitute-actions-row,.substitute-options-row,.substitute-file-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.substitute-btn,.substitute-link-button,.substitute-icon-action{border:1px solid var(--substitute-border);border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:42px;padding:0 16px;font-weight:700}.substitute-btn.primary{border-color:var(--substitute-brand);background:var(--substitute-brand);color:#fff}.substitute-btn.secondary,.substitute-link-button,.substitute-icon-action{background:var(--surface);color:var(--substitute-brand)}.substitute-btn.small{min-height:38px;padding:0 13px}.substitute-link-button{border-color:transparent;padding:0 4px;background:transparent}.substitute-icon-action{width:42px;padding:0}.substitute-tabs{display:flex;flex-wrap:wrap;gap:8px;padding:6px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.substitute-tabs button{border:1px solid transparent;border-radius:7px;background:transparent;color:var(--muted);display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 13px;font-weight:700}.substitute-tabs button.active{border-color:var(--substitute-border);background:var(--substitute-brand-soft);color:var(--substitute-brand)}.substitute-stack{display:grid;gap:18px}.substitute-kpi-grid,.substitute-live-grid,.substitute-export-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.substitute-metric-card,.substitute-live-stat,.substitute-export-card{border-radius:8px;padding:18px}.substitute-metric-card span,.substitute-live-stat span,.substitute-export-card span{width:42px;height:42px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;color:var(--substitute-brand);background:var(--substitute-brand-soft)}.substitute-metric-card strong{display:block;margin-top:14px;color:var(--ink);font-size:2rem;line-height:1}.substitute-metric-card p,.substitute-live-stat p{margin:8px 0 0;color:var(--ink);font-weight:700}.substitute-metric-card small{display:block;margin-top:4px;color:var(--muted)}.substitute-layout{display:grid;gap:18px}.substitute-layout.two,.substitute-layout.live{grid-template-columns:minmax(0,1.45fr) minmax(300px,.8fr)}.substitute-layout.sessions{grid-template-columns:minmax(300px,.75fr) minmax(0,1.25fr)}.substitute-panel{border-radius:8px;padding:22px}.substitute-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.substitute-panel-head h2{font-size:1.18rem}.substitute-session-list,.substitute-submission-list,.substitute-event-list,.substitute-timeline,.substitute-report-bars{display:grid;gap:12px}.substitute-session-card{width:100%;border-radius:8px;padding:16px;text-align:left;display:flex;align-items:center;justify-content:space-between;gap:14px}.substitute-session-card.selected,.substitute-session-card:hover{border-color:var(--substitute-brand);background:var(--substitute-brand-soft)}.substitute-session-card strong{color:var(--substitute-brand);font-size:1.2rem}.substitute-status{display:inline-flex;align-items:center;min-height:24px;padding:0 9px;border-radius:999px;background:var(--surface-soft);color:var(--muted);font-size:.78rem;font-weight:800}.substitute-status.live{background:#01557e1f;color:var(--substitute-brand)}.substitute-status.scheduled{background:#01557e14;color:var(--substitute-brand-dark)}.substitute-status.ended{background:var(--surface-soft);color:var(--muted)}.substitute-timeline-item{display:grid;grid-template-columns:14px minmax(0,1fr);gap:12px;padding:12px 0}.substitute-timeline-item>span{width:10px;height:10px;margin-top:5px;border-radius:999px;background:var(--substitute-brand);box-shadow:0 0 0 5px var(--substitute-brand-soft)}.substitute-timeline-item strong{color:var(--ink)}.substitute-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.substitute-form-grid label{display:grid;gap:7px;color:var(--ink);font-weight:700}.substitute-form-grid input,.substitute-submission-row input,.substitute-question-card textarea{width:100%;border:1px solid var(--input-border);border-radius:8px;background:var(--input-bg);color:var(--ink)}.substitute-form-grid input{height:46px;padding:0 13px}.substitute-toggle-preview{border:1px solid var(--line);border-radius:999px;padding:8px 11px;color:var(--muted);background:var(--surface-soft);font-weight:700}.substitute-toggle-preview.active{border-color:var(--substitute-border);color:var(--substitute-brand);background:var(--substitute-brand-soft)}.substitute-absence-grid,.substitute-student-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.substitute-absence-card,.substitute-monitor-card{border-radius:8px;padding:15px;display:flex;align-items:center;gap:12px}.substitute-absence-card>span{margin-left:auto;color:var(--substitute-brand);font-weight:800}.substitute-avatar{width:42px;height:42px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;background:var(--substitute-brand-soft);color:var(--substitute-brand);font-weight:800}.substitute-live-stat{border:1px solid var(--line);background:var(--surface-soft)}.substitute-live-stat strong{display:block;margin-top:6px;font-size:1.25rem;color:var(--ink)}.substitute-monitor-card svg:last-child{margin-left:auto;color:var(--substitute-brand)}.substitute-submission-row{display:grid;grid-template-columns:auto minmax(0,1fr) 90px auto;gap:12px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--surface-soft)}.substitute-submission-row input{height:42px;padding:0 10px;text-align:center;font-weight:800}.substitute-file-row span{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:999px;padding:6px 9px;background:var(--surface);color:var(--muted);font-size:.88rem;font-weight:700}.substitute-report-line{display:grid;grid-template-columns:150px minmax(0,1fr) 46px;gap:14px;align-items:center}.substitute-report-line span{display:block;margin-top:2px;color:var(--muted);font-size:.9rem}.substitute-progress{height:10px;border-radius:999px;background:var(--surface-soft);overflow:hidden}.substitute-progress span{display:block;height:100%;border-radius:inherit;background:var(--substitute-brand)}.substitute-ai-card{display:flex;gap:14px;align-items:flex-start;padding:18px;border:1px solid var(--substitute-border);border-radius:8px;background:var(--substitute-brand-soft)}.substitute-ai-card svg{flex:0 0 auto;color:var(--substitute-brand)}.substitute-export-card{min-height:150px}.substitute-student-runtime{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:18px}.substitute-reader,.substitute-student-tasks{border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:0 16px 42px var(--shadow-soft);overflow:hidden}.substitute-reader-toolbar{min-height:54px;padding:0 16px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:10px;color:var(--substitute-brand)}.substitute-reader-toolbar span{margin-left:auto;color:var(--muted);font-weight:700}.substitute-pdf-preview{min-height:520px;padding:36px;background:linear-gradient(180deg,rgba(1,85,126,.06),transparent 32%),repeating-linear-gradient(0deg,transparent,transparent 33px,rgba(1,85,126,.08) 34px),var(--surface)}.substitute-pdf-preview h2{margin:0 0 12px;color:var(--substitute-brand)}.substitute-pdf-preview>div{margin-top:34px;height:220px;border:1px solid var(--line);border-radius:8px;background:var(--surface-soft)}.substitute-student-tasks{padding:18px}.substitute-question-card{border-radius:8px;padding:16px;margin-top:14px}.substitute-question-card>span{display:inline-flex;margin-bottom:10px;border:1px solid var(--substitute-border);border-radius:999px;padding:5px 10px;color:var(--substitute-brand);font-weight:800}.substitute-question-card textarea{min-height:120px;margin-top:12px;padding:12px;resize:vertical}.substitute-upload-box{margin-top:12px;border:1px dashed var(--substitute-brand);border-radius:8px;padding:20px;color:var(--substitute-brand);background:var(--substitute-brand-soft);display:flex;gap:12px;align-items:center}@media(max-width:1180px){.substitute-kpi-grid,.substitute-live-grid,.substitute-export-grid,.substitute-absence-grid,.substitute-student-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.substitute-layout.two,.substitute-layout.live,.substitute-layout.sessions,.substitute-student-runtime{grid-template-columns:1fr}}@media(max-width:760px){.substitute-hero,.substitute-panel-head,.substitute-submission-row{align-items:stretch;flex-direction:column}.substitute-hero{padding:20px}.substitute-hero-actions,.substitute-actions-row,.substitute-btn,.substitute-hero-actions .substitute-btn{width:100%}.substitute-kpi-grid,.substitute-live-grid,.substitute-export-grid,.substitute-absence-grid,.substitute-student-grid,.substitute-form-grid{grid-template-columns:1fr}.substitute-submission-row{display:flex}.substitute-report-line{grid-template-columns:1fr}.substitute-pdf-preview{min-height:360px;padding:24px}}.substitute-app{--sub-original-brand: var(--brand-deep);--sub-original-brand-strong: var(--brand);--sub-original-brand-soft: rgba(1, 85, 126, .075);--sub-original-text: var(--ink);--sub-original-muted: var(--muted);--sub-original-border: var(--line);--sub-original-page: var(--page-bg);display:block;min-height:0;overflow:visible;border:0;border-radius:0;background:transparent;color:var(--sub-original-text);box-shadow:none}.substitute-app *{letter-spacing:0}.substitute-app-embedded{width:100%}.substitute-app-content{width:100%;max-width:1600px;margin:0 auto;padding:0}.substitute-outline-button,.substitute-primary-button,.substitute-secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;border-radius:8px;padding:0 13px;font-size:.88rem;font-weight:800}.substitute-outline-button,.substitute-secondary-button{border:1px solid var(--sub-original-border);background:#fff;color:#334155}.substitute-outline-button:hover,.substitute-secondary-button:hover{border-color:#01557e47;background:#01557e0a;color:var(--sub-original-brand)}.substitute-primary-button{border:1px solid var(--sub-original-brand);background:var(--sub-original-brand);color:#fff}.substitute-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:24px}.substitute-page-header h1{margin:0;color:#020617;font-size:1.82rem;line-height:1.1}.substitute-page-header p{margin:7px 0 0;color:#64748b}.substitute-page-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.substitute-status-row{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:24px}.substitute-status-pill.original{display:inline-flex;align-items:center;gap:8px;min-height:45px;border:1px solid var(--sub-original-border);border-radius:8px;padding:0 15px;background:#fff;color:#334155;font-size:.9rem;font-weight:800;box-shadow:0 1px 2px #0f172a0a}.substitute-status-pill.original svg{color:var(--sub-original-brand)}.substitute-command-panel{display:grid;grid-template-columns:minmax(260px,.92fr) minmax(0,1.35fr);overflow:hidden;margin-bottom:28px;border:1px solid var(--sub-original-border);border-radius:8px;background:#fff;box-shadow:0 18px 45px #0f172a0e}.substitute-command-brand{padding:25px;background:var(--sub-original-brand);color:#fff}.substitute-command-brand p{margin:0;color:#ffffffa6;font-size:.76rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase}.substitute-command-brand h2{margin:12px 0 8px;font-size:1.5rem}.substitute-command-brand span{display:block;max-width:360px;color:#ffffffc2;font-size:.9rem;line-height:1.6}.substitute-command-body{display:grid;gap:16px;padding:25px}.substitute-command-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.substitute-action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.substitute-action-tile.original,.substitute-stat-card.original,.substitute-original-panel,.substitute-row-card,.substitute-live-metric.original,.substitute-monitor-card.original{border:1px solid var(--sub-original-border);border-radius:8px;background:#fff;box-shadow:0 1px 2px #0f172a0a}.substitute-action-tile.original{position:relative;overflow:hidden;min-height:138px;padding:15px;text-align:left;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.substitute-action-tile.original:hover{transform:translateY(-2px);border-color:#01557e59;box-shadow:0 14px 32px #0f172a13}.substitute-action-tile.original:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:var(--sub-original-brand);opacity:0}.substitute-action-tile.original:hover:before{opacity:1}.substitute-action-tile.original>div{display:flex;justify-content:space-between;margin-bottom:12px}.substitute-action-tile.original span,.substitute-stat-card.original span,.substitute-live-metric.original span{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--sub-original-border);border-radius:8px;background:#f8fafc;color:var(--sub-original-brand)}.substitute-action-tile.original strong,.substitute-stat-card.original strong{display:block;color:#020617;font-size:1.65rem;line-height:1}.substitute-action-tile.original p,.substitute-stat-card.original p,.substitute-live-metric.original p{margin:8px 0 0;color:#0f172a;font-weight:800}.substitute-action-tile.original small{color:#64748b}.substitute-live-alert{display:grid;gap:10px;margin-bottom:24px;border:1px solid rgba(1,85,126,.16);border-radius:12px;padding:15px;background:#01557e0e}.substitute-live-alert>div{display:flex;align-items:center;gap:8px;color:var(--sub-original-brand);font-size:.9rem;font-weight:800}.substitute-live-alert>div span{width:11px;height:11px;border-radius:999px;background:#01557e80}.substitute-live-alert button,.substitute-mini-list button{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;border:1px solid rgba(1,85,126,.18);border-radius:8px;padding:10px 14px;background:#fff;text-align:left}.substitute-live-alert strong,.substitute-mini-list strong,.substitute-mini-row strong{display:block;color:#0f172a;font-size:.9rem}.substitute-live-alert small,.substitute-mini-list span,.substitute-mini-row span{display:block;margin-top:4px;color:#64748b;font-size:.8rem}.substitute-kpi-strip.original{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:hidden;margin-bottom:28px;border:1px solid var(--sub-original-border);border-radius:8px;background:#fff;box-shadow:0 1px 2px #0f172a09}.substitute-kpi-item.original{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:100px;border:0;border-right:1px solid var(--sub-original-border);padding:20px;background:#fff;text-align:left}.substitute-kpi-item.original:last-child{border-right:0}.substitute-kpi-item.original>div{display:flex;align-items:center;gap:12px}.substitute-kpi-item.original span{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:8px;background:var(--sub-original-brand-soft);color:var(--sub-original-brand)}.substitute-kpi-item.original strong{display:block;color:#020617;font-size:1.65rem;line-height:1}.substitute-kpi-item.original p{margin:4px 0 0;color:#64748b;font-size:.83rem}.substitute-original-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:24px}.substitute-original-grid.live{grid-template-columns:repeat(3,minmax(0,1fr))}.substitute-original-panel{padding:18px}.substitute-panel-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}.substitute-panel-title h2,.substitute-original-panel h2{margin:0;color:#0f172a;font-size:.95rem}.substitute-panel-title button{border:0;background:transparent;color:var(--sub-original-brand);font-size:.78rem;font-weight:800}.substitute-quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.substitute-template-list,.substitute-mini-list{display:grid;gap:8px}.substitute-mini-row{display:flex;align-items:center;gap:12px;min-height:58px;padding:8px;border-radius:8px}.substitute-mini-row em{margin-left:auto;border:1px solid #fecaca;border-radius:999px;padding:5px 8px;background:#fef2f2;color:#b91c1c;font-size:.76rem;font-style:normal;font-weight:800}.substitute-original-counts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.substitute-stat-card.original{padding:20px}.substitute-stat-card.original strong{margin-top:20px}.substitute-filter-bar{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px}.substitute-filter-bar label{position:relative;flex:1 1 250px}.substitute-filter-bar label svg{position:absolute;top:50%;left:12px;transform:translateY(-50%);color:#94a3b8}.substitute-filter-bar input,.substitute-filter-bar select,.substitute-export-form select{min-height:40px;border:1px solid var(--sub-original-border);border-radius:8px;background:#fff;color:#0f172a}.substitute-filter-bar label input{width:100%;padding:0 12px 0 38px}.substitute-filter-bar>input,.substitute-filter-bar select,.substitute-filter-bar button{min-width:150px;padding:0 12px}.substitute-filter-bar button{border:1px solid var(--sub-original-border);border-radius:8px;background:#fff;color:#334155;font-weight:800}.substitute-filter-bar button.active{border-color:var(--sub-original-brand);background:var(--sub-original-brand);color:#fff}.substitute-session-list.original{display:grid;gap:8px}.substitute-row-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;transition:box-shadow .18s ease,border-color .18s ease}.substitute-row-card.selected,.substitute-row-card:hover{border-color:#01557e52;box-shadow:0 10px 24px #0f172a13}.substitute-row-card>button{border:0;background:transparent;text-align:left}.substitute-row-title{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.substitute-row-title strong{color:#0f172a;font-size:.9rem}.substitute-row-card span:not(.substitute-status-badge){display:block;margin-top:4px;color:#64748b;font-size:.8rem}.substitute-row-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.substitute-row-actions>button:not(.substitute-secondary-button){display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:0;border-radius:8px;background:transparent;color:#64748b}.substitute-row-actions>button:not(.substitute-secondary-button):hover{background:#f1f5f9;color:var(--sub-original-brand)}.substitute-status-badge{display:inline-flex;align-items:center;min-height:24px;border:1px solid var(--sub-original-border);border-radius:999px;padding:0 9px;background:#f8fafc;color:#475569;font-size:.72rem;font-weight:900}.substitute-status-badge.live{border-color:#bbf7d0;background:#f0fdf4;color:#15803d}.substitute-status-badge.scheduled{border-color:#01557e2e;background:#01557e13;color:var(--sub-original-brand)}.substitute-status-badge.ended,.substitute-status-badge.reported{border-color:#dbeafe;background:#eff6ff;color:#1d4ed8}.substitute-sessions-view{--substitute-session-control-height: 38px;font-size:.94rem}.substitute-sessions-view .substitute-page-header{align-items:center;margin-bottom:20px}.substitute-sessions-view .substitute-page-header h1{font-size:1.65rem;letter-spacing:0}.substitute-sessions-view .substitute-page-header p{margin-top:7px;font-size:.92rem}.substitute-sessions-view .substitute-page-actions{gap:10px}.substitute-sessions-view .substitute-primary-button,.substitute-sessions-view .substitute-secondary-button{min-height:38px;border-radius:7px;padding:0 13px;font-size:.84rem}.substitute-sessions-view .substitute-filter-bar{gap:10px;margin-bottom:18px}.substitute-sessions-view .substitute-filter-bar label{flex:1 1 300px}.substitute-sessions-view .substitute-filter-bar input,.substitute-sessions-view .substitute-filter-bar select,.substitute-sessions-view .substitute-filter-bar button{min-height:var(--substitute-session-control-height);border-radius:7px;font-size:.86rem}.substitute-sessions-view .substitute-filter-bar>input,.substitute-sessions-view .substitute-filter-bar select,.substitute-sessions-view .substitute-filter-bar button{min-width:136px;padding:0 11px}.substitute-sessions-view .substitute-session-list.original{gap:8px}.substitute-sessions-view .substitute-row-card{gap:10px;min-height:72px;padding:10px 12px;border-radius:8px}.substitute-sessions-view .substitute-row-title{gap:7px}.substitute-sessions-view .substitute-row-title strong{font-size:.86rem}.substitute-sessions-view .substitute-row-card span:not(.substitute-status-badge){margin-top:3px;font-size:.76rem}.substitute-sessions-view .substitute-status-badge{min-height:22px;padding:0 8px;font-size:.68rem}.substitute-sessions-view .substitute-row-actions{gap:5px}.substitute-sessions-view .substitute-row-actions .substitute-secondary-button{min-height:32px;padding:0 10px;font-size:.78rem}.substitute-sessions-view .substitute-row-actions>button:not(.substitute-secondary-button){width:32px;height:32px;border-radius:7px}.substitute-sessions-view .substitute-row-actions>button.danger{color:#ef4444}.substitute-action-soft{min-height:32px;border:1px solid #dbe7ef;border-radius:6px;padding:0 10px;display:inline-flex;align-items:center;gap:6px;background:#fff;color:#102033;font-size:.78rem;font-weight:700;white-space:nowrap}.substitute-action-soft.success{border-color:#bfe8d1;background:#f0fdf4;color:#047857}.substitute-action-soft.danger{border-color:#fecaca;background:#fff1f2;color:#dc2626}.substitute-empty-large{min-height:230px;border:1px dashed #cfdce8;border-radius:8px;display:grid;place-items:center;align-content:center;gap:8px;color:#5d708a;background:#ffffff8c}.substitute-empty-large svg{color:#8fa4b9}.substitute-empty-large strong{color:#111827;font-size:1rem}.substitute-confirm-overlay{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:24px;background:#0f172a6b}.substitute-confirm-card{width:min(460px,100%);border:1px solid #dbe5ef;border-radius:10px;padding:22px;background:#fff;box-shadow:0 24px 70px #0f172a3d}.substitute-confirm-card h3{margin:0 0 8px;font-size:1.2rem}.substitute-confirm-card p{margin:0 0 18px;color:#5d708a;line-height:1.5}.substitute-confirm-card>div{display:flex;justify-content:flex-end;gap:10px}.substitute-danger-primary{min-height:40px;border:0;border-radius:7px;padding:0 16px;display:inline-flex;align-items:center;gap:8px;background:#dc2626;color:#fff;font-weight:800;cursor:pointer}.substitute-reports-view{display:grid;gap:30px}.substitute-reports-view .substitute-page-header{align-items:center;min-height:116px;border:1px solid #dbe4eb;border-radius:8px;padding:24px 20px;background:#fff;box-shadow:0 22px 52px #102e4017}.substitute-reports-view .substitute-page-header h1{color:#070b1c;font-size:1.82rem;font-weight:800;line-height:1.08}.substitute-reports-view .substitute-page-header p{margin-top:12px;color:#65748b;font-size:.98rem}.substitute-reports-view .substitute-secondary-button{min-height:50px;border-radius:7px;padding:0 20px;font-size:.92rem}.substitute-reports-view .substitute-secondary-button:disabled{opacity:.62}.substitute-report-filter{display:flex}.substitute-report-filter select{width:260px;min-height:50px;border:1px solid #d8e3eb;border-radius:7px;padding:0 16px;background:#fff;color:#071123;font-size:.94rem}.substitute-report-list{display:grid;gap:10px}.substitute-report-row{display:grid;grid-template-columns:48px minmax(0,1fr) auto auto;align-items:center;gap:12px;min-height:78px;border:1px solid #dbe4eb;border-radius:8px;padding:14px 20px;background:#fff;box-shadow:0 13px 30px #102e4013}.substitute-report-icon{display:grid;width:44px;height:44px;place-items:center;border-radius:12px;background:#f1f5f9;color:#7c8ca4}.substitute-report-main{min-width:0;border:0;background:transparent;text-align:left}.substitute-report-main strong{display:block;overflow:hidden;color:#071123;font-size:.97rem;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.substitute-report-main span{display:block;margin-top:5px;color:#536a89;font-size:.83rem}.substitute-report-status{display:inline-flex;align-items:center;justify-content:center;min-height:28px;border:1px solid #d8e3eb;border-radius:999px;padding:0 12px;background:#f8fafc;color:#475569;font-size:.78rem;font-weight:800;white-space:nowrap}.substitute-report-status.uploaded{border-color:#22c55e3d;background:#f0fdf4;color:#15803d}.substitute-report-actions{display:flex;align-items:center;justify-content:flex-end;gap:14px}.substitute-report-actions>button:not(.substitute-report-warning){display:grid;width:34px;height:34px;place-items:center;border:0;border-radius:8px;background:transparent;color:#1f2b45}.substitute-report-actions>button:not(.substitute-report-warning):hover{background:#f1f5f9;color:var(--sub-original-brand)}.substitute-report-warning{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border:1px solid #facc15;border-radius:7px;padding:0 16px;background:#fffbeb;color:#a34300;font-weight:800;gap:8px}.substitute-report-warning:hover{background:#fef3c7}.substitute-report-detail-view{display:grid;gap:32px}.substitute-report-detail-view .substitute-page-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;min-height:116px;border:1px solid #dbe4eb;border-radius:8px;padding:20px 20px 20px 28px;background:#fff;box-shadow:0 22px 52px #102e4017}.substitute-back-button{display:grid;width:36px;height:36px;place-items:center;border:0;border-radius:8px;background:transparent;color:#536a89}.substitute-back-button:hover{background:#f1f5f9;color:var(--sub-original-brand)}.substitute-report-detail-view .substitute-page-header h1{color:#070b1c;font-size:1.82rem;font-weight:800;line-height:1.08}.substitute-report-detail-view .substitute-page-header p{margin-top:12px;color:#65748b;font-size:.98rem}.substitute-report-empty-state{display:grid;place-items:center;min-height:336px;border:1px dashed #cfdce7;border-radius:8px;padding:56px 20px;background:#fff;text-align:center;box-shadow:0 18px 48px #102e4012}.substitute-report-empty-state svg{color:#cbd5e1}.substitute-report-empty-state h2{margin:20px 0 0;color:#24324a;font-size:1.12rem;font-weight:800}.substitute-report-empty-state p{margin:12px 0 22px;color:#94a3b8}.substitute-report-generated-meta{display:flex;align-items:center;gap:16px}.substitute-report-generated-meta span{display:inline-flex;align-items:center;min-height:28px;border:1px solid rgba(1,85,126,.28);border-radius:999px;padding:0 14px;background:#01557e14;color:var(--sub-original-brand);font-weight:800}.substitute-report-generated-meta p{margin:0;color:#536a89;font-size:.9rem}.substitute-generated-report{border:1px solid #dbe4eb;border-radius:8px;padding:30px;background:#fff;box-shadow:0 22px 52px #102e4017}.substitute-generated-report-head{display:grid;justify-items:center;gap:8px;border-bottom:1px solid #cfdce7;padding:0 0 28px;text-align:center}.substitute-school-mark{display:grid;width:50px;height:50px;place-items:center;border-radius:50%;background:var(--sub-original-brand);color:#fff;font-weight:900}.substitute-generated-report-head h2,.substitute-generated-report-head h3,.substitute-generated-report-head p{margin:0}.substitute-generated-report-head h2{color:#071123;font-size:1.28rem}.substitute-generated-report-head h3{margin-top:16px;color:#071123;font-size:1.25rem;letter-spacing:.02em}.substitute-generated-report-head p{color:#536a89}.substitute-report-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 40px;margin-top:26px}.substitute-report-field{min-height:72px;border:1px solid #dbe4eb;border-radius:8px;padding:14px 16px;background:#fff}.substitute-report-field span{display:block;color:#65748b;font-size:.82rem}.substitute-report-field strong{display:block;margin-top:6px;color:#071123;font-size:.92rem}.substitute-report-note{margin-top:24px;border-radius:8px;padding:18px;background:#f8fafc;color:#334155}.substitute-report-section{margin-top:26px;border-top:1px solid #cfdce7;padding-top:26px}.substitute-report-section h3{display:flex;align-items:center;gap:10px;margin:0 0 16px;color:#071123;font-size:.98rem}.substitute-report-task-list{display:grid;gap:14px}.substitute-report-task-card{position:relative;border:1px solid #dbe4eb;border-radius:8px;padding:24px 20px 18px;background:#fff}.substitute-report-task-card>span{display:block;color:#536a89;font-size:.82rem;font-weight:800;text-transform:uppercase}.substitute-report-task-card>em{position:absolute;top:20px;right:20px;border-radius:999px;padding:7px 12px;background:#f1f5f9;color:#24324a;font-style:normal;font-weight:800}.substitute-report-task-card h4{margin:20px 0 14px;color:#071123;font-size:.98rem}.substitute-report-task-card p{margin:0;border-bottom:1px solid #edf2f7;padding-bottom:14px;color:#536a89;font-size:.84rem}.substitute-report-task-card dl{display:grid;grid-template-columns:2fr 1fr 1fr .7fr;gap:18px;margin:18px 0 0}.substitute-report-task-card dt{color:#94a3b8;font-size:.8rem}.substitute-report-task-card dd{margin:4px 0 0;color:#071123;font-size:.84rem;font-weight:700}.substitute-attendance-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.substitute-attendance-summary div{min-height:86px;border-radius:8px;padding:18px;background:#f1f5f9;text-align:center}.substitute-attendance-summary strong{display:block;color:#1f3a5f;font-size:1.4rem}.substitute-attendance-summary span{display:block;margin-top:8px;color:#334155;font-size:.82rem}.substitute-attendance-summary .ok{background:#ecfdf3}.substitute-attendance-summary .ok strong,.substitute-attendance-summary .ok span{color:#05813e}.substitute-attendance-summary .missing{background:#fef2f2}.substitute-attendance-summary .missing strong,.substitute-attendance-summary .missing span{color:#c01515}.substitute-presence-table{overflow:hidden;border:1px solid #dbe4eb;border-radius:8px}.substitute-presence-table>div{display:grid;grid-template-columns:1fr 1.3fr 1fr;min-height:46px;border-bottom:1px solid #edf2f7}.substitute-presence-table>div:last-child{border-bottom:0}.substitute-presence-table span,.substitute-presence-table strong,.substitute-presence-table em{display:flex;align-items:center;padding:0 16px;font-size:.86rem}.substitute-presence-table .head{background:#f8fafc;color:#536a89;font-weight:800}.substitute-presence-table em{color:#dc2626;font-style:normal}.substitute-generated-report-footer{display:flex;justify-content:space-between;gap:20px;margin-top:26px;border-top:1px solid #cfdce7;padding-top:20px;color:#8a98af;font-size:.82rem}.substitute-report-print-note{margin:-8px 0 0;text-align:center;color:#94a3b8;font-size:.82rem}.substitute-absences-view{display:grid;gap:28px}.substitute-absences-view .substitute-page-header{align-items:center;min-height:116px;margin-bottom:2px;border:1px solid #dbe4eb;border-radius:8px;padding:24px 20px;background:#fff;box-shadow:0 22px 52px #102e4017}.substitute-absences-view .substitute-page-header h1{color:#070b1c;font-size:1.82rem;font-weight:800;line-height:1.08}.substitute-absences-view .substitute-page-header p{margin-top:12px;color:#65748b;font-size:.98rem}.substitute-absences-view .substitute-page-actions{gap:10px}.substitute-absences-view .substitute-primary-button,.substitute-absences-view .substitute-secondary-button{min-height:50px;border-radius:7px;padding:0 20px;font-size:.92rem}.substitute-absences-view .substitute-secondary-button:disabled{opacity:.62}.substitute-absence-tabs{display:inline-flex;justify-self:start;gap:4px;border:1px solid #d8e3eb;border-radius:8px;padding:4px;background:#fff;box-shadow:0 8px 18px #102e4012}.substitute-absence-tabs button{min-height:40px;border:0;border-radius:6px;padding:0 16px;background:transparent;color:#475569;font-weight:800}.substitute-absence-tabs button.active{background:var(--sub-original-brand);color:#fff;box-shadow:0 6px 12px #01557e29}.substitute-absence-filters{display:flex;align-items:center;gap:28px;margin:8px 0 0}.substitute-absence-filters input{width:240px;min-height:50px;border:1px solid #d8e3eb;border-radius:7px;padding:0 16px;background:#fff;color:#071123;font-size:.95rem}.substitute-absence-filters button{border:0;background:transparent;color:#1f2b45;font-weight:800}.substitute-absence-empty{display:grid;place-items:center;min-height:318px;border:1px dashed #d8e3eb;border-radius:8px;padding:40px 20px;text-align:center}.substitute-absence-empty.compact{min-height:250px}.substitute-absence-empty>span{display:grid;width:70px;height:70px;place-items:center;border:1px solid rgba(1,85,126,.22);border-radius:9px;background:#01557e14;color:var(--sub-original-brand)}.substitute-absence-empty h2{margin:22px 0 0;color:#071123;font-size:1.1rem;font-weight:800}.substitute-absence-empty p{margin:12px 0 22px;color:#65748b}.substitute-absence-list,.substitute-stat-list{display:grid;gap:14px}.substitute-absence-card,.substitute-stat-row{display:flex;align-items:center;gap:18px;min-height:86px;border:1px solid #d8e3eb;border-radius:8px;padding:16px 20px;background:#fff;box-shadow:0 14px 34px #102e4014}.substitute-absence-icon{display:grid;width:42px;height:42px;flex:0 0 auto;place-items:center;border-radius:12px;background:#fef2f2;color:#e11d48}.substitute-absence-card>div:nth-child(2),.substitute-stat-row>div:nth-child(2){min-width:0;flex:1}.substitute-absence-card strong,.substitute-stat-row strong{display:block;color:#071123;font-size:.98rem}.substitute-absence-card span,.substitute-stat-row span,.substitute-absence-card small{display:block;margin-top:5px;color:#8a98af;font-size:.83rem}.substitute-absence-card em{margin-left:auto;border:1px solid #dbeafe;border-radius:999px;padding:7px 10px;background:#eff6ff;color:#1d4ed8;font-size:.76rem;font-style:normal;font-weight:800;white-space:nowrap}.substitute-stats-copy{margin:10px 0 -8px;color:#65748b;font-size:.94rem}.substitute-stat-values{display:flex;align-items:center;gap:18px;margin-left:auto}.substitute-stat-values>div{min-width:34px;text-align:center}.substitute-stat-values strong{color:#dc2626;font-size:1.35rem;line-height:1}.substitute-stat-values>div:nth-child(2) strong{color:#d97706}.substitute-stat-values span{margin-top:7px;color:#94a3b8;font-size:.78rem}.substitute-stat-values button{display:grid;width:34px;height:34px;place-items:center;border:0;border-radius:8px;background:transparent;color:#ef4444}.substitute-stat-values button:hover{background:#fef2f2}.substitute-live-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.substitute-live-metric.original{padding:16px}.substitute-live-metric.original strong{display:block;margin-top:8px;color:#020617;font-size:1.28rem}.substitute-monitor-card.original{display:flex;align-items:center;gap:12px;padding:14px}.substitute-monitor-card.original .substitute-avatar{width:42px;height:42px;border-radius:8px}.substitute-monitor-card.original strong{display:block;color:#0f172a}.substitute-monitor-card.original span{display:block;margin-top:4px;color:#64748b;font-size:.8rem}.substitute-monitor-card.original svg:last-child{margin-left:auto;color:var(--sub-original-brand)}.substitute-info-strip{display:flex;gap:13px;align-items:center;margin-bottom:18px;border:1px solid #fed7aa;border-radius:10px;padding:16px 18px;background:#fff7ed;color:#c2410c}.substitute-info-strip strong,.substitute-info-strip span{display:block}.substitute-info-strip span{margin-top:4px;font-size:.86rem}.substitute-grade-list{display:grid;gap:10px}.substitute-grade-row{display:grid;grid-template-columns:auto minmax(0,1fr) 78px auto minmax(150px,auto);align-items:center;gap:12px;border:1px solid var(--sub-original-border);border-radius:10px;padding:14px;background:#fff}.substitute-grade-row strong{display:block;color:#0f172a}.substitute-grade-row span{display:block;margin-top:3px;color:#64748b;font-size:.82rem}.substitute-grade-row input{width:100%;height:40px;border:1px solid var(--sub-original-border);border-radius:8px;text-align:center;font-weight:800}.substitute-grade-row textarea{width:100%;min-height:66px;margin-top:10px;resize:vertical;border:1px solid var(--sub-original-border);border-radius:8px;padding:9px 10px;background:#fff;color:#0f172a;font:inherit}.substitute-grade-max{margin:0!important;white-space:nowrap;font-weight:800}.substitute-grade-actions{display:grid;gap:6px}.substitute-file-download{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--sub-original-border);border-radius:999px;padding:5px 8px;background:#f8fafc;color:#01557e;font-size:.76rem;font-weight:800}.substitute-file-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.substitute-file-row em{border:1px solid var(--sub-original-border);border-radius:999px;padding:5px 8px;background:#f8fafc;color:#475569;font-size:.76rem;font-style:normal;font-weight:800}.substitute-export-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:16px 0}.substitute-export-form label{display:grid;gap:7px;color:#0f172a;font-weight:800}.substitute-export-form label:last-child{grid-column:1 / -1}.substitute-export-form input[type=date]{width:100%;padding:0 12px}.substitute-export-form input[type=date]{height:48px;border:1px solid var(--sub-original-border);border-radius:7px;background:#fff;color:#071123;font:inherit;font-weight:500;box-shadow:0 1px 2px #0f172a08}.substitute-export-form .date-input-wrap input[type=text]{width:100%;height:48px;padding:0 34px 0 12px;border:1px solid var(--sub-original-border);border-radius:7px;background:#fff;color:#071123;font:inherit;font-weight:500;box-shadow:0 1px 2px #0f172a08}.substitute-export-form .date-input-pick-btn{color:#64748b}.substitute-export-form .date-input-pick-btn:hover:not(:disabled){color:#071123;background:#0f172a0f}.substitute-export-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.substitute-export-layout{display:grid;grid-template-columns:minmax(0,2.05fr) minmax(320px,.98fr);gap:26px;align-items:start}.substitute-export-main-card,.substitute-export-side-card,.substitute-export-note{border:1px solid var(--sub-original-border);border-radius:8px;background:#fff;box-shadow:0 18px 42px #0f172a0f}.substitute-export-main-card{padding:24px 26px}.substitute-export-main-card h2,.substitute-export-side-card h2{margin:0;color:#071123;font-size:1.08rem;font-weight:800}.substitute-export-main-card .substitute-primary-button{width:100%;min-height:52px;justify-content:center;border-radius:7px;font-size:.98rem}.substitute-export-select{position:relative;min-width:0}.substitute-export-select-trigger{display:flex;width:100%;min-height:48px;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--sub-original-border);border-radius:7px;padding:0 13px;background:#fff;color:#071123;box-shadow:0 1px 2px #0f172a08;font:inherit;font-weight:500;text-align:left;cursor:pointer}.substitute-export-select-trigger span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.substitute-export-select-trigger svg{flex:0 0 auto;color:#7c899c}.substitute-export-select-trigger:focus-visible{border-color:#8fb7c9;outline:3px solid rgba(1,85,126,.18)}.substitute-export-select-menu{position:absolute;z-index:40;top:calc(100% + 6px);left:0;width:100%;max-height:18rem;overflow-y:auto;border:1px solid #d7e3ec;border-radius:7px;padding:5px;background:#fff;box-shadow:0 18px 34px #0f172a24}.substitute-export-select-menu button{display:grid;width:100%;min-height:38px;grid-template-columns:20px minmax(0,1fr);gap:8px;align-items:center;border:0;border-radius:5px;padding:8px 10px;background:transparent;color:#334155;font:inherit;font-weight:500;text-align:left;cursor:pointer}.substitute-export-select-menu button:hover,.substitute-export-select-menu button.active{background:#e8f4f8;color:var(--sub-original-brand)}.substitute-export-select-menu button svg{color:var(--sub-original-brand)}.substitute-export-search{display:flex;align-items:center;gap:9px;width:100%;min-height:48px;border:1px solid var(--sub-original-border);border-radius:7px;padding:0 14px;background:#fff;color:#9aa8bd;box-shadow:0 1px 2px #0f172a08}.substitute-export-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:#071123;font:inherit;font-weight:500}.substitute-export-search input::placeholder{color:#93a1b7}.substitute-export-form small{color:#61708a;font-size:.84rem;font-weight:500;line-height:1.35}.substitute-export-error{margin:-4px 0 12px;border:1px solid #fecaca;border-radius:7px;padding:10px 12px;background:#fff1f2;color:#b91c1c;font-size:.88rem;font-weight:700}.substitute-export-date-row{display:grid;grid-column:1 / -1;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.substitute-export-side{display:grid;gap:22px}.substitute-export-side-card{padding:24px 26px}.substitute-export-format-row{display:grid;grid-template-columns:44px minmax(0,1fr);gap:14px;align-items:start;margin-top:20px}.substitute-export-format-icon{display:inline-flex;width:42px;height:42px;align-items:center;justify-content:center;border-radius:10px}.substitute-export-format-icon.excel{background:#eaf9f1;color:#009b62}.substitute-export-format-icon.csv{background:#edf7fc;color:var(--sub-original-brand)}.substitute-export-format-row strong{display:block;color:#071123;font-size:.98rem;font-weight:800}.substitute-export-format-row p{margin:5px 0 0;color:#536781;font-size:.86rem;line-height:1.45}.substitute-export-note{display:flex;align-items:flex-start;gap:12px;border-color:#f7d58a;padding:17px 18px;background:#fffdf5;color:#b35b00}.substitute-export-note p{margin:0;font-size:.88rem;line-height:1.45}.substitute-student-next{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:20px;border:1px solid var(--sub-original-border);border-radius:16px;padding:18px;background:#fff;box-shadow:0 1px 2px #0f172a0a}.substitute-student-next p{margin:0 0 6px;color:#94a3b8;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.substitute-student-next h2{margin:0;color:#0f172a;font-size:1.12rem}.substitute-student-next span{display:block;margin-top:5px;color:#64748b;font-size:.88rem}.substitute-student-session{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.9fr);gap:18px}.substitute-material-pane,.substitute-task-pane{overflow:hidden;border:1px solid var(--sub-original-border);border-radius:10px;background:#fff;box-shadow:0 1px 2px #0f172a0a}.substitute-material-pane>div{display:flex;align-items:center;gap:9px;min-height:52px;padding:0 15px;border-bottom:1px solid var(--sub-original-border);color:var(--sub-original-brand)}.substitute-material-pane>div span{margin-left:auto;color:#64748b;font-weight:800}.substitute-material-pane article{min-height:520px;padding:35px;background:linear-gradient(180deg,rgba(1,85,126,.06),transparent 32%),repeating-linear-gradient(0deg,transparent,transparent 33px,rgba(1,85,126,.08) 34px),#fff}.substitute-material-pane h2{margin:0 0 12px;color:var(--sub-original-brand)}.substitute-material-pane p{max-width:520px;color:#475569}.substitute-task-pane{display:grid;align-content:start;gap:13px;padding:16px}.substitute-task-card.original{border:1px solid var(--sub-original-border);border-radius:10px;padding:16px;background:#fff}.substitute-task-card.original>span{display:inline-flex;margin-bottom:10px;border:1px solid rgba(1,85,126,.18);border-radius:999px;padding:5px 10px;color:var(--sub-original-brand);font-size:.82rem;font-weight:900}.substitute-task-card.original h3{margin:0;color:#0f172a;font-size:1rem}.substitute-task-card.original textarea{width:100%;min-height:120px;margin-top:12px;border:1px solid var(--sub-original-border);border-radius:8px;padding:12px;resize:vertical}.substitute-upload-preview{display:flex;align-items:center;gap:12px;margin-top:12px;border:1px dashed var(--sub-original-brand);border-radius:8px;padding:17px;background:var(--sub-original-brand-soft);color:var(--sub-original-brand)}.substitute-upload-preview p,.substitute-empty-text{margin:0;color:#64748b}@media(max-width:1240px){.substitute-action-grid,.substitute-kpi-strip.original,.substitute-original-counts,.substitute-live-board{grid-template-columns:repeat(2,minmax(0,1fr))}.substitute-command-panel,.substitute-student-session,.substitute-export-layout{grid-template-columns:1fr}}@media(max-width:900px){.substitute-original-grid,.substitute-original-grid.live,.substitute-row-card,.substitute-grade-row{grid-template-columns:1fr}.substitute-report-row{grid-template-columns:48px minmax(0,1fr)}.substitute-report-status,.substitute-report-actions{grid-column:2}.substitute-report-detail-view .substitute-page-header{grid-template-columns:auto minmax(0,1fr)}.substitute-report-detail-view .substitute-page-header .substitute-page-actions{grid-column:1 / -1;justify-content:flex-start;padding-left:44px}.substitute-report-field-grid,.substitute-attendance-summary,.substitute-export-form,.substitute-export-date-row{grid-template-columns:1fr}.substitute-report-task-card dl,.substitute-presence-table>div{grid-template-columns:1fr}.substitute-row-actions{justify-content:flex-start}.substitute-absence-card,.substitute-stat-row{align-items:flex-start;flex-wrap:wrap}.substitute-stat-values{width:100%;justify-content:flex-start;margin-left:60px}}@media(max-width:640px){.substitute-app-content{padding-left:14px;padding-right:14px}.substitute-page-header,.substitute-student-next{flex-direction:column;align-items:stretch}.substitute-status-row,.substitute-filter-bar,.substitute-absence-filters{display:grid;grid-template-columns:1fr}.substitute-absences-view .substitute-page-header,.substitute-reports-view .substitute-page-header{min-height:0;padding:18px}.substitute-absences-view .substitute-page-actions,.substitute-absences-view .substitute-primary-button,.substitute-absences-view .substitute-secondary-button,.substitute-absence-filters input,.substitute-reports-view .substitute-secondary-button,.substitute-report-filter select,.substitute-export-main-card .substitute-primary-button{width:100%}.substitute-export-main-card,.substitute-export-side-card{padding:18px}.substitute-report-row{padding:14px}.substitute-report-main strong{white-space:normal}.substitute-report-actions{width:100%;justify-content:flex-start;gap:8px}.substitute-report-warning{flex:1}.substitute-generated-report{padding:18px}.substitute-report-detail-view .substitute-page-header{min-height:0;padding:18px}.substitute-report-detail-view .substitute-page-header .substitute-page-actions{padding-left:0}.substitute-generated-report-footer{display:grid}.substitute-absence-tabs{width:100%}.substitute-absence-tabs button{flex:1}.substitute-stat-values{margin-left:0}.substitute-kpi-strip.original,.substitute-original-counts,.substitute-action-grid,.substitute-live-board,.substitute-quick-grid,.substitute-export-form,.substitute-export-actions{grid-template-columns:1fr}}.substitute-app-embedded .substitute-app-content{padding-left:0;padding-right:0}[data-theme=dark] .substitute-app{--sub-original-brand: var(--brand);--sub-original-brand-strong: #8fd3e6;--sub-original-brand-soft: rgba(74, 167, 199, .12);--sub-original-text: var(--ink);--sub-original-muted: var(--muted);--sub-original-border: var(--line);--sub-original-page: var(--page-bg)}[data-theme=dark] .substitute-outline-button,[data-theme=dark] .substitute-secondary-button,[data-theme=dark] .substitute-status-pill.original,[data-theme=dark] .substitute-command-panel,[data-theme=dark] .substitute-action-tile.original,[data-theme=dark] .substitute-stat-card.original,[data-theme=dark] .substitute-original-panel,[data-theme=dark] .substitute-row-card,[data-theme=dark] .substitute-live-metric.original,[data-theme=dark] .substitute-monitor-card.original,[data-theme=dark] .substitute-kpi-strip.original,[data-theme=dark] .substitute-kpi-item.original,[data-theme=dark] .substitute-live-alert button,[data-theme=dark] .substitute-mini-list button,[data-theme=dark] .substitute-filter-bar input,[data-theme=dark] .substitute-filter-bar select,[data-theme=dark] .substitute-filter-bar button,[data-theme=dark] .substitute-export-form select,[data-theme=dark] .substitute-grade-row,[data-theme=dark] .substitute-grade-row input,[data-theme=dark] .substitute-file-row em,[data-theme=dark] .substitute-student-next,[data-theme=dark] .substitute-material-pane,[data-theme=dark] .substitute-task-pane,[data-theme=dark] .substitute-task-card.original,[data-theme=dark] .substitute-task-card.original textarea,[data-theme=dark] .substitute-reports-view .substitute-page-header,[data-theme=dark] .substitute-report-filter select,[data-theme=dark] .substitute-report-row,[data-theme=dark] .substitute-report-detail-view .substitute-page-header,[data-theme=dark] .substitute-report-empty-state,[data-theme=dark] .substitute-generated-report,[data-theme=dark] .substitute-report-field,[data-theme=dark] .substitute-report-task-card,[data-theme=dark] .substitute-presence-table,[data-theme=dark] .substitute-absences-view .substitute-page-header,[data-theme=dark] .substitute-absence-tabs,[data-theme=dark] .substitute-absence-filters input,[data-theme=dark] .substitute-absence-empty,[data-theme=dark] .substitute-absence-card,[data-theme=dark] .substitute-stat-row{border-color:var(--line);background:var(--surface-muted);color:var(--ink);box-shadow:none}[data-theme=dark] .substitute-page-header h1,[data-theme=dark] .substitute-action-tile.original strong,[data-theme=dark] .substitute-stat-card.original strong,[data-theme=dark] .substitute-action-tile.original p,[data-theme=dark] .substitute-stat-card.original p,[data-theme=dark] .substitute-live-alert strong,[data-theme=dark] .substitute-mini-list strong,[data-theme=dark] .substitute-mini-row strong,[data-theme=dark] .substitute-kpi-item.original strong,[data-theme=dark] .substitute-panel-title h2,[data-theme=dark] .substitute-original-panel h2,[data-theme=dark] .substitute-row-title strong,[data-theme=dark] .substitute-live-metric.original strong,[data-theme=dark] .substitute-monitor-card.original strong,[data-theme=dark] .substitute-grade-row strong,[data-theme=dark] .substitute-export-form label,[data-theme=dark] .substitute-student-next h2,[data-theme=dark] .substitute-task-card.original h3,[data-theme=dark] .substitute-report-main strong,[data-theme=dark] .substitute-report-detail-view .substitute-page-header h1,[data-theme=dark] .substitute-report-empty-state h2,[data-theme=dark] .substitute-generated-report-head h2,[data-theme=dark] .substitute-generated-report-head h3,[data-theme=dark] .substitute-report-field strong,[data-theme=dark] .substitute-report-section h3,[data-theme=dark] .substitute-report-task-card h4,[data-theme=dark] .substitute-report-task-card dd,[data-theme=dark] .substitute-absence-empty h2,[data-theme=dark] .substitute-absence-card strong,[data-theme=dark] .substitute-stat-row strong{color:var(--ink)}[data-theme=dark] .substitute-page-header p,[data-theme=dark] .substitute-action-tile.original small,[data-theme=dark] .substitute-kpi-item.original p,[data-theme=dark] .substitute-row-card span:not(.substitute-status-badge),[data-theme=dark] .substitute-live-alert small,[data-theme=dark] .substitute-mini-list span,[data-theme=dark] .substitute-mini-row span,[data-theme=dark] .substitute-monitor-card.original span,[data-theme=dark] .substitute-grade-row span,[data-theme=dark] .substitute-student-next span,[data-theme=dark] .substitute-upload-preview p,[data-theme=dark] .substitute-empty-text,[data-theme=dark] .substitute-material-pane p,[data-theme=dark] .substitute-report-main span,[data-theme=dark] .substitute-report-detail-view .substitute-page-header p,[data-theme=dark] .substitute-report-empty-state p,[data-theme=dark] .substitute-report-generated-meta p,[data-theme=dark] .substitute-generated-report-head p,[data-theme=dark] .substitute-report-field span,[data-theme=dark] .substitute-report-task-card p,[data-theme=dark] .substitute-report-task-card dt,[data-theme=dark] .substitute-generated-report-footer,[data-theme=dark] .substitute-report-print-note,[data-theme=dark] .substitute-absence-empty p,[data-theme=dark] .substitute-absence-card span,[data-theme=dark] .substitute-absence-card small,[data-theme=dark] .substitute-stat-row span,[data-theme=dark] .substitute-stats-copy{color:var(--muted)}[data-theme=dark] .substitute-action-tile.original span,[data-theme=dark] .substitute-stat-card.original span,[data-theme=dark] .substitute-live-metric.original span,[data-theme=dark] .substitute-report-icon,[data-theme=dark] .substitute-absence-empty>span{border-color:var(--line);background:var(--surface-soft);color:var(--brand)}[data-theme=dark] .substitute-kpi-item.original{border-right-color:var(--line)}[data-theme=dark] .substitute-row-actions>button:not(.substitute-secondary-button){color:var(--muted)}[data-theme=dark] .substitute-row-actions>button:not(.substitute-secondary-button):hover,[data-theme=dark] .substitute-filter-bar button:hover,[data-theme=dark] .substitute-report-actions>button:not(.substitute-report-warning):hover,[data-theme=dark] .substitute-stat-values button:hover{background:var(--surface-soft);color:var(--brand)}[data-theme=dark] .substitute-report-status{border-color:var(--line);background:var(--surface-soft);color:var(--muted)}[data-theme=dark] .substitute-report-warning{border-color:#facc1561;background:#facc151a;color:#fbbf24}[data-theme=dark] .substitute-back-button:hover,[data-theme=dark] .substitute-report-note,[data-theme=dark] .substitute-presence-table .head,[data-theme=dark] .substitute-attendance-summary div,[data-theme=dark] .substitute-report-task-card>em{background:var(--surface-soft);color:var(--ink)}[data-theme=dark] .substitute-report-section,[data-theme=dark] .substitute-generated-report-head,[data-theme=dark] .substitute-generated-report-footer,[data-theme=dark] .substitute-report-task-card p,[data-theme=dark] .substitute-presence-table>div{border-color:var(--line)}[data-theme=dark] .substitute-attendance-summary .ok{background:#16a34a1f}[data-theme=dark] .substitute-attendance-summary .missing{background:#dc26261f}[data-theme=dark] .substitute-absence-filters button{color:var(--ink)}[data-theme=dark] .substitute-absence-icon{background:#f871711f}[data-theme=dark] .substitute-material-pane>div{border-bottom-color:var(--line)}[data-theme=dark] .substitute-material-pane article{background:linear-gradient(180deg,rgba(74,167,199,.08),transparent 32%),repeating-linear-gradient(0deg,transparent,transparent 33px,rgba(74,167,199,.08) 34px),var(--surface)}[data-theme=dark] .substitute-info-strip{border-color:#fb923c59;background:#7c2d1238;color:#fdba74}.substitute-dashboard-original{display:grid;gap:30px;color:#070b1c}.substitute-dashboard-header{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:116px;border:1px solid #dbe4eb;border-radius:8px;padding:24px 20px;background:#fff;box-shadow:0 22px 52px #102e4017}.substitute-dashboard-header h1{margin:0;color:#070b1c;font-size:1.82rem;font-weight:800;line-height:1.08}.substitute-dashboard-header p{margin:14px 0 0;color:#65748b;font-size:1rem}.substitute-dashboard-original .substitute-primary-button{min-height:52px;border-color:#005f86;border-radius:7px;padding:0 20px;background:#005f86;box-shadow:0 6px 14px #005f862e;font-size:.96rem}.substitute-dashboard-original .substitute-status-row{gap:16px;margin:0}.substitute-dashboard-original .substitute-status-pill.original{min-height:56px;border-color:#d8e3eb;border-radius:8px;padding:0 20px;background:#fff;color:#112033;box-shadow:0 10px 24px #102e4014}.substitute-dashboard-original .substitute-status-pill.original svg{color:#005f86}.substitute-dashboard-original .substitute-command-panel{grid-template-columns:minmax(340px,.685fr) minmax(0,1fr);min-height:308px;margin:0;border-color:#d8e3eb;border-radius:8px;background:#fff;box-shadow:0 18px 44px #102e4017}.substitute-dashboard-original .substitute-command-brand{display:flex;flex-direction:column;justify-content:center;padding:30px;background:#005f86}.substitute-dashboard-original .substitute-command-brand p{color:#ffffffad;letter-spacing:.28em}.substitute-dashboard-original .substitute-command-brand h2{margin:24px 0 14px;font-size:1.75rem;font-weight:800}.substitute-dashboard-original .substitute-command-brand span{max-width:500px;color:#fffffff0;font-size:1.02rem;line-height:1.65}.substitute-dashboard-original .substitute-command-body{align-content:center;gap:20px;padding:30px}.substitute-dashboard-original .substitute-command-actions{justify-content:flex-end;gap:10px}.substitute-dashboard-original .substitute-secondary-button{min-height:50px;border-color:#d8e3eb;border-radius:7px;background:#fff;color:#071123;box-shadow:0 2px 6px #102e400a}.substitute-dashboard-original .substitute-secondary-button svg{color:#005f86}.substitute-dashboard-original .substitute-danger-action svg{color:#e11d48}.substitute-dashboard-original .substitute-action-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.substitute-dashboard-original .substitute-action-tile.original{min-height:177px;border-color:#d8e3eb;border-radius:8px;padding:20px;background:#fff;box-shadow:0 2px 7px #102e400f}.substitute-dashboard-original .substitute-action-tile.original>div{margin-bottom:16px}.substitute-dashboard-original .substitute-action-tile.original span,.substitute-dashboard-original .substitute-kpi-item.original span{width:46px;height:46px;border-color:#d8e3eb;background:#f8fbfd;color:#005f86}.substitute-dashboard-original .substitute-action-tile.original strong{color:#070b1c;font-size:1.86rem}.substitute-dashboard-original .substitute-action-tile.original p{margin-top:6px;color:#111827;font-size:1rem}.substitute-dashboard-original .substitute-action-tile.original small{color:#65748b;font-size:.9rem}.substitute-dashboard-original .substitute-kpi-strip.original{min-height:112px;margin:8px 0 0;border-color:#d8e3eb;border-radius:8px;background:#fff;box-shadow:0 14px 34px #102e4014}.substitute-dashboard-original .substitute-kpi-item.original{min-height:110px;border-right-color:#d8e3eb;padding:24px 25px;background:#fff}.substitute-dashboard-original .substitute-kpi-item.original strong{color:#020617;font-size:1.85rem}.substitute-dashboard-original .substitute-kpi-item.original p{color:#65748b;font-size:.9rem}.substitute-dashboard-original .substitute-original-grid{gap:30px;margin:0}.substitute-dashboard-original .substitute-original-panel{min-height:132px;border-color:#d8e3eb;border-radius:8px;padding:24px 25px;background:#fff;box-shadow:0 16px 38px #102e4014}.substitute-dashboard-original .substitute-original-grid>.substitute-original-panel:nth-child(n+3){min-height:380px}.substitute-dashboard-original .substitute-panel-title{margin-bottom:18px}.substitute-dashboard-original .substitute-panel-title h2{color:#020617;font-size:1.08rem;font-weight:800}.substitute-dashboard-original .substitute-panel-title button{color:#005f86;font-size:.9rem}.substitute-dashboard-original .substitute-empty-text{display:grid;min-height:68px;place-items:center;color:#94a3b8;font-size:1rem}.substitute-dashboard-original .substitute-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.substitute-dashboard-original .substitute-quick-grid .substitute-secondary-button,.substitute-dashboard-original .substitute-template-list .substitute-secondary-button{justify-content:flex-start;padding:0 20px}.substitute-dashboard-original .substitute-template-list{gap:10px}.substitute-dashboard-original .substitute-panel-copy{margin:-4px 0 18px;color:#65748b;font-size:.94rem;line-height:1.5}.substitute-schedule-panel{width:calc(50% - 15px);min-height:255px}.substitute-schedule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.substitute-schedule-grid>div{min-height:70px;border-radius:8px;padding:15px 13px;background:#f8fafc}.substitute-schedule-grid span{display:block;color:#65748b;font-size:.88rem}.substitute-schedule-grid strong{display:block;margin-top:6px;color:#020617;font-size:1.02rem}[data-theme=dark] .substitute-dashboard-original{color:var(--ink)}[data-theme=dark] .substitute-dashboard-header,[data-theme=dark] .substitute-dashboard-original .substitute-status-pill.original,[data-theme=dark] .substitute-dashboard-original .substitute-command-panel,[data-theme=dark] .substitute-dashboard-original .substitute-secondary-button,[data-theme=dark] .substitute-dashboard-original .substitute-action-tile.original,[data-theme=dark] .substitute-dashboard-original .substitute-kpi-strip.original,[data-theme=dark] .substitute-dashboard-original .substitute-kpi-item.original,[data-theme=dark] .substitute-dashboard-original .substitute-original-panel{border-color:var(--line);background:var(--surface-muted);color:var(--ink);box-shadow:none}[data-theme=dark] .substitute-dashboard-header h1,[data-theme=dark] .substitute-dashboard-original .substitute-action-tile.original strong,[data-theme=dark] .substitute-dashboard-original .substitute-action-tile.original p,[data-theme=dark] .substitute-dashboard-original .substitute-kpi-item.original strong,[data-theme=dark] .substitute-dashboard-original .substitute-panel-title h2,[data-theme=dark] .substitute-schedule-grid strong{color:var(--ink)}[data-theme=dark] .substitute-dashboard-header p,[data-theme=dark] .substitute-dashboard-original .substitute-action-tile.original small,[data-theme=dark] .substitute-dashboard-original .substitute-kpi-item.original p,[data-theme=dark] .substitute-dashboard-original .substitute-panel-copy,[data-theme=dark] .substitute-schedule-grid span{color:var(--muted)}[data-theme=dark] .substitute-dashboard-original .substitute-action-tile.original span,[data-theme=dark] .substitute-dashboard-original .substitute-kpi-item.original span,[data-theme=dark] .substitute-schedule-grid>div{border-color:var(--line);background:var(--surface-soft);color:var(--brand)}@media(max-width:1180px){.substitute-dashboard-original .substitute-command-panel{grid-template-columns:1fr}.substitute-dashboard-original .substitute-action-grid,.substitute-dashboard-original .substitute-kpi-strip.original{grid-template-columns:repeat(2,minmax(0,1fr))}.substitute-schedule-panel{width:100%}}@media(max-width:720px){.substitute-dashboard-header,.substitute-dashboard-original .substitute-command-actions{align-items:stretch;flex-direction:column}.substitute-dashboard-original .substitute-status-row,.substitute-dashboard-original .substitute-action-grid,.substitute-dashboard-original .substitute-kpi-strip.original,.substitute-dashboard-original .substitute-original-grid,.substitute-dashboard-original .substitute-quick-grid,.substitute-schedule-grid{display:grid;grid-template-columns:1fr}}.assessment-app{--assessment-blue: #01557e;--assessment-blue-dark: #005f86;--assessment-ink: #071323;--assessment-muted: #607087;--assessment-border: #dce6ee;color:var(--assessment-ink)}.assessment-fullscreen-lock{--assessment-blue: #01557e;--assessment-blue-dark: #005f86;--assessment-ink: #071323;--assessment-muted: #607087;position:fixed;inset:0;z-index:3000;display:grid;place-items:center;padding:20px;background:#071323c7;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.assessment-fullscreen-lock-card{display:grid;justify-items:center;gap:12px;max-width:420px;padding:32px 28px;border-radius:16px;text-align:center;color:var(--assessment-ink, #071323);background:#fff;box-shadow:0 24px 60px #00000059}.assessment-fullscreen-lock-card>svg{color:#b5451f}.assessment-fullscreen-lock-card p{margin:0;color:var(--assessment-muted, #607087);font-size:.88rem;line-height:1.45}.assessment-fullscreen-lock-card .assessment-primary-button{width:100%}.assessment-fullscreen-lock-card .assessment-primary-button svg{color:#fff}.assessment-app-content,.assessment-dashboard-original,.assessment-page{display:grid;gap:28px;min-width:0}.assessment-app-embedded .assessment-app-content{padding:0}.assessment-dashboard-header,.assessment-page-header{min-height:116px;display:flex;align-items:center;justify-content:space-between;gap:24px;border:1px solid var(--assessment-border);border-radius:8px;padding:24px 20px;background:var(--surface);box-shadow:0 18px 42px #14334114}.assessment-dashboard-header h1,.assessment-page-header h1{margin:0 0 12px;color:var(--assessment-ink);font-size:clamp(1.65rem,2.1vw,2rem);line-height:1.05;letter-spacing:0}.assessment-dashboard-header p,.assessment-page-header p{margin:0;color:var(--assessment-muted);font-size:1rem}.assessment-header-actions,.assessment-command-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.assessment-primary-button,.assessment-secondary-button{min-height:50px;display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:8px;padding:0 18px;font-weight:800;transition:border-color .16s ease,background .16s ease,color .16s ease,transform .16s ease,box-shadow .16s ease}.assessment-primary-button{border:1px solid var(--assessment-blue);color:#fff;background:var(--assessment-blue);box-shadow:0 8px 18px #01557e2e}.assessment-primary-button:hover{background:var(--assessment-blue-dark);transform:translateY(-1px)}.assessment-primary-button:disabled,.assessment-secondary-button:disabled{opacity:.52;box-shadow:none;transform:none;cursor:not-allowed}.assessment-secondary-button{border:1px solid var(--assessment-border);color:#172033;background:var(--surface);box-shadow:0 6px 14px #1433410d}.assessment-secondary-button:hover,.assessment-action-tile:hover,.assessment-kpi-item:hover,.assessment-mini-tile:hover,.assessment-step-tile:hover,.assessment-row-card:hover{border-color:#01557e59;background:#f8fbfd;transform:translateY(-1px)}.assessment-status-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.assessment-status-pill{min-height:28px;display:inline-flex;align-items:center;gap:8px;border:1px solid var(--assessment-border);border-radius:999px;padding:0 14px;color:#071323;background:var(--surface);font-size:.86rem;font-weight:800;box-shadow:0 8px 18px #1433410f}.assessment-status-pill svg{color:var(--assessment-blue)}.assessment-command-panel{display:grid;grid-template-columns:minmax(320px,.68fr) minmax(0,1fr);overflow:hidden;border:1px solid var(--assessment-border);border-radius:8px;background:var(--surface);box-shadow:0 18px 42px #14334114}.assessment-command-brand{min-height:356px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;padding:32px;color:#fff;background:var(--assessment-blue)}.assessment-command-brand p{margin:0 0 24px;color:#ffffffb8;font-size:.88rem;font-weight:900;letter-spacing:.32em;text-transform:uppercase}.assessment-command-brand h2{margin:0 0 16px;color:#fff;font-size:clamp(1.75rem,2.4vw,2.05rem);line-height:1.1;letter-spacing:0}.assessment-command-brand span{max-width:48ch;color:#ffffffeb;font-size:1.02rem;line-height:1.65}.assessment-command-body{display:grid;align-content:center;gap:20px;padding:30px}.assessment-action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.assessment-action-tile{min-height:272px;display:grid;align-content:center;gap:14px;border:1px solid var(--assessment-border);border-radius:8px;padding:34px 20px;color:#172033;background:var(--surface);text-align:left;transition:border-color .16s ease,background .16s ease,transform .16s ease}.assessment-action-tile>div{display:flex;align-items:center;justify-content:space-between}.assessment-action-tile span,.assessment-kpi-item span,.assessment-metric span{width:54px;height:54px;display:grid;place-items:center;border:1px solid var(--assessment-border);border-radius:8px;color:var(--assessment-blue);background:#f7fbfd}.assessment-action-tile strong{color:var(--assessment-blue);font-size:2.35rem;line-height:1}.assessment-action-tile p{margin:0;color:#172033;font-size:1.06rem;font-weight:800;line-height:1.35}.assessment-action-tile small{color:var(--assessment-muted);font-size:.88rem;line-height:1.45}.assessment-kpi-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:hidden;border:1px solid var(--assessment-border);border-radius:8px;background:var(--surface)}.assessment-kpi-item{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:14px;border:0;border-right:1px solid var(--assessment-border);padding:18px 24px;color:#172033;background:var(--surface);text-align:left;transition:border-color .16s ease,background .16s ease,transform .16s ease}.assessment-kpi-item:last-child{border-right:0}.assessment-kpi-item>div{display:flex;align-items:center;gap:20px}.assessment-kpi-item span{width:54px;height:54px;flex:0 0 auto}.assessment-kpi-item strong{display:block;color:#000;font-size:2rem;line-height:1}.assessment-kpi-item p{margin:5px 0 0;color:var(--assessment-muted)}.assessment-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(300px,.9fr);gap:30px;align-items:start}.assessment-panel{border:1px solid var(--assessment-border);border-radius:8px;padding:28px 30px;background:var(--surface);box-shadow:0 18px 42px #14334114}.assessment-panel h2,.assessment-panel-title h2{margin:0;color:#071323;font-size:1.22rem;letter-spacing:0}.assessment-panel-title{display:flex;align-items:center;gap:12px;margin-bottom:16px;color:var(--assessment-blue)}.assessment-academic-panel{grid-column:1}.assessment-template-panel{grid-column:2;grid-row:span 2}.assessment-next-panel{grid-column:1}.assessment-academic-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:18px}.assessment-mini-tile,.assessment-step-tile{border:1px solid var(--assessment-border);border-radius:8px;color:#071323;background:var(--surface);text-align:left;transition:border-color .16s ease,background .16s ease,transform .16s ease}.assessment-mini-tile{min-height:72px;display:grid;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:14px;padding:12px 18px}.assessment-mini-tile svg,.assessment-template-list svg{color:var(--assessment-blue)}.assessment-mini-tile strong{display:block;font-size:.88rem}.assessment-mini-tile span{display:block;margin-top:4px;color:var(--assessment-muted);font-size:.84rem}.assessment-template-list{display:grid;gap:12px}.assessment-template-list .assessment-secondary-button{min-height:49px;justify-content:flex-start;padding-inline:22px}.assessment-step-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}.assessment-step-tile{min-height:176px;display:grid;align-content:center;gap:12px;padding:20px}.assessment-step-tile>span{width:50px;height:50px;display:grid;place-items:center;border-radius:8px;color:var(--assessment-blue);background:#f1f6f9}.assessment-step-tile strong{color:#071323;font-size:1rem}.assessment-step-tile p{margin:0;color:var(--assessment-muted);line-height:1.45}.assessment-list,.assessment-report-grid{display:grid;gap:12px}.assessment-row-card{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--assessment-border);border-radius:8px;padding:14px;background:var(--surface);transition:border-color .16s ease,background .16s ease,transform .16s ease}.assessment-row-card>button{min-width:0;flex:1 1 auto;border:0;padding:0;color:inherit;background:transparent;text-align:left}.assessment-row-title,.assessment-row-meta,.assessment-mini-list{display:flex;align-items:center;justify-content:space-between;gap:12px}.assessment-row-title strong{color:#071323}.assessment-row-card span:not(.assessment-status-badge),.assessment-mini-list span:last-child{color:var(--assessment-muted);font-size:.86rem}.assessment-row-meta{flex:0 0 auto;justify-content:flex-end}.assessment-row-meta>span{color:var(--assessment-muted);font-size:.82rem;font-weight:700}.assessment-status-badge{display:inline-flex;align-items:center;border:1px solid var(--assessment-border);border-radius:999px;padding:5px 10px;color:var(--assessment-blue);background:#f7fbfd;font-size:.74rem;font-weight:900}.assessment-status-badge.open{color:#0f6b4f;background:#eef9f3}.assessment-report-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.assessment-table-wrap{width:100%;overflow-x:auto}.assessment-report-table{width:100%;min-width:620px;border-collapse:collapse}.assessment-report-table th,.assessment-report-table td{border-bottom:1px solid var(--assessment-border);padding:11px 12px;text-align:left;vertical-align:middle}.assessment-report-table th{color:var(--assessment-muted);font-size:.76rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.assessment-report-table td:first-child{min-width:280px}.assessment-report-table td:first-child strong,.assessment-report-table td:first-child span{display:block}.assessment-report-table td:first-child strong{margin-bottom:3px;color:var(--assessment-blue)}.assessment-report-table td:first-child span{color:var(--assessment-text);line-height:1.35}.assessment-error-panel[role=alert]{display:flex;align-items:center;justify-content:space-between;gap:16px;border-color:#e4b6b6;background:#fff8f8}.assessment-error-panel p{margin:0;color:#8f2929}.assessment-metric{min-height:126px;display:grid;gap:10px;align-content:center;border:1px solid var(--assessment-border);border-radius:8px;padding:18px;background:var(--surface)}.assessment-metric strong{color:var(--assessment-blue);font-size:2rem;line-height:1}.assessment-metric p{margin:0;color:var(--assessment-muted)}.assessment-mini-list{min-height:52px;border-top:1px solid var(--assessment-border);padding:12px 0}.assessment-mini-list:first-of-type{margin-top:14px}.assessment-student-next{display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid var(--assessment-border);border-radius:8px;padding:26px;color:#fff;background:var(--assessment-blue);box-shadow:0 18px 42px #14334114}.assessment-student-next p{margin:0 0 10px;color:#ffffffbf;font-weight:900;letter-spacing:.18em;text-transform:uppercase}.assessment-student-next h2{margin:0 0 8px;color:#fff;font-size:1.7rem}.assessment-student-next span{color:#ffffffe0}[data-theme=dark] .assessment-app{--assessment-ink: var(--ink);--assessment-muted: var(--muted);--assessment-border: var(--line)}[data-theme=dark] .assessment-dashboard-header,[data-theme=dark] .assessment-page-header,[data-theme=dark] .assessment-command-panel,[data-theme=dark] .assessment-action-tile,[data-theme=dark] .assessment-kpi-strip,[data-theme=dark] .assessment-kpi-item,[data-theme=dark] .assessment-panel,[data-theme=dark] .assessment-mini-tile,[data-theme=dark] .assessment-step-tile,[data-theme=dark] .assessment-secondary-button,[data-theme=dark] .assessment-row-card,[data-theme=dark] .assessment-metric{background:var(--surface-muted)}[data-theme=dark] .assessment-secondary-button{color:var(--ink);border-color:var(--line)}[data-theme=dark] .assessment-secondary-button:hover{background:var(--surface-soft);border-color:#4aa7c773}[data-theme=dark] .assessment-secondary-button svg{color:var(--brand)}[data-theme=dark] .assessment-create-page{color:var(--ink)}[data-theme=dark] .assessment-create-header,[data-theme=dark] .assessment-autosave,[data-theme=dark] .assessment-create-form-card,[data-theme=dark] .assessment-create-summary,[data-theme=dark] .assessment-create-info-card,[data-theme=dark] .assessment-builder-steps button{background:var(--surface-muted);border-color:var(--line)}[data-theme=dark] .assessment-create-back{color:var(--muted)}[data-theme=dark] .assessment-create-header h1,[data-theme=dark] .assessment-create-section-title h2,[data-theme=dark] .assessment-create-label,[data-theme=dark] .assessment-create-field>span,[data-theme=dark] .assessment-create-field input,[data-theme=dark] .assessment-create-field select,[data-theme=dark] .assessment-create-field textarea,[data-theme=dark] .assessment-create-field em,[data-theme=dark] .assessment-create-kind-grid button,[data-theme=dark] .assessment-create-slot strong,[data-theme=dark] .assessment-create-inner-card h3,[data-theme=dark] .assessment-create-inner-title strong,[data-theme=dark] .assessment-create-inner-title>span,[data-theme=dark] .assessment-create-segment button,[data-theme=dark] .assessment-create-copy-actions button,[data-theme=dark] .assessment-create-copy-grid button,[data-theme=dark] .assessment-copy-selected-bar,[data-theme=dark] .assessment-create-summary h2,[data-theme=dark] .assessment-create-info-card h2,[data-theme=dark] .assessment-create-summary strong,[data-theme=dark] .assessment-student-picklist-row{color:var(--ink)}[data-theme=dark] .assessment-create-header p,[data-theme=dark] .assessment-autosave,[data-theme=dark] .assessment-create-field small,[data-theme=dark] .assessment-create-kind-grid span,[data-theme=dark] .assessment-create-inner-card p,[data-theme=dark] .assessment-create-inner-title svg,[data-theme=dark] .assessment-create-summary span{color:var(--muted)}[data-theme=dark] .assessment-create-field input,[data-theme=dark] .assessment-create-field select,[data-theme=dark] .assessment-create-field textarea{background:var(--input-bg);border-color:var(--input-border)}[data-theme=dark] .assessment-create-kind-grid button,[data-theme=dark] .assessment-create-inner-card,[data-theme=dark] .assessment-create-segment button,[data-theme=dark] .assessment-create-copy-actions button,[data-theme=dark] .assessment-create-copy-grid button,[data-theme=dark] .assessment-copy-selected-bar,[data-theme=dark] .assessment-student-picklist-row{background:var(--surface-soft);border-color:var(--line)}[data-theme=dark] .assessment-create-kind-grid button.active,[data-theme=dark] .assessment-create-copy-grid button.active,[data-theme=dark] .assessment-builder-steps button.active{border-color:var(--brand);background:#4aa7c729;color:var(--brand)}[data-theme=dark] .assessment-create-segment button.active{border-color:var(--brand);background:var(--brand);color:#071123}[data-theme=dark] .assessment-create-kind-grid svg,[data-theme=dark] .assessment-create-info-card h2 svg,[data-theme=dark] .assessment-builder-steps button span{color:var(--brand)}[data-theme=dark] .assessment-builder-steps button span{background:var(--surface)}[data-theme=dark] .assessment-create-slot{border-color:#4aa7c759;background:#4aa7c71a}[data-theme=dark] .assessment-create-slot span{color:var(--brand)}[data-theme=dark] .assessment-create-success{border-color:#4ade8059;background:#4ade801f;color:#86efac}[data-theme=dark] .assessment-class-workload{border-color:var(--line);background:var(--surface-soft);color:var(--ink)}[data-theme=dark] .assessment-class-workload.medium{border-color:#d9cfa673;background:#d9cfa61f}[data-theme=dark] .assessment-class-workload.high{border-color:#e2b8b873;background:#e2b8b81f}[data-theme=dark] .assessment-class-workload-head strong,[data-theme=dark] .assessment-class-workload-list strong{color:var(--ink)}[data-theme=dark] .assessment-class-workload p,[data-theme=dark] .assessment-class-workload-list span{color:var(--muted)}[data-theme=dark] .assessment-class-workload-counts span{border-color:var(--line);background:var(--surface);color:var(--muted)}[data-theme=dark] .assessment-create-summary p{border-bottom-color:var(--line)}[data-theme=dark] .assessment-command-brand,[data-theme=dark] .assessment-student-next{background:var(--workspace-panel)}[data-theme=dark] .assessment-action-tile:hover,[data-theme=dark] .assessment-kpi-item:hover,[data-theme=dark] .assessment-mini-tile:hover,[data-theme=dark] .assessment-step-tile:hover,[data-theme=dark] .assessment-row-card:hover{background:var(--surface-soft)}[data-theme=dark] .assessment-dashboard-header h1,[data-theme=dark] .assessment-page-header h1,[data-theme=dark] .assessment-action-tile p,[data-theme=dark] .assessment-kpi-item strong,[data-theme=dark] .assessment-panel h2,[data-theme=dark] .assessment-panel-title h2,[data-theme=dark] .assessment-mini-tile strong,[data-theme=dark] .assessment-step-tile strong,[data-theme=dark] .assessment-row-title strong{color:var(--ink)}[data-theme=dark] .assessment-action-tile span,[data-theme=dark] .assessment-kpi-item span,[data-theme=dark] .assessment-metric span,[data-theme=dark] .assessment-step-tile>span{background:#4aa7c71f}@media(max-width:1180px){.assessment-command-panel,.assessment-dashboard-grid{grid-template-columns:1fr}.assessment-template-panel,.assessment-next-panel,.assessment-academic-panel{grid-column:auto;grid-row:auto}.assessment-action-grid,.assessment-kpi-strip,.assessment-academic-grid,.assessment-report-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.assessment-dashboard-header,.assessment-page-header,.assessment-student-next{align-items:flex-start;flex-direction:column}.assessment-command-brand{min-height:260px}.assessment-command-body,.assessment-command-brand,.assessment-panel{padding:22px}.assessment-action-grid,.assessment-kpi-strip,.assessment-academic-grid,.assessment-step-grid,.assessment-report-grid{grid-template-columns:1fr}.assessment-kpi-item{border-right:0;border-bottom:1px solid var(--assessment-border)}.assessment-row-card,.assessment-row-meta{align-items:flex-start;flex-direction:column}}.assessment-dashboard-original{gap:30px;color:#070b1c}.assessment-dashboard-original .assessment-dashboard-header,.assessment-page .assessment-page-header{min-height:116px;border-color:#dbe4eb;padding:24px 20px;background:#fff;box-shadow:0 22px 52px #102e4017}.assessment-dashboard-original .assessment-dashboard-header h1,.assessment-page .assessment-page-header h1{margin:0;color:#070b1c;font-size:1.82rem;font-weight:800;line-height:1.08}.assessment-dashboard-original .assessment-dashboard-header p,.assessment-page .assessment-page-header p{margin:14px 0 0;color:#65748b;font-size:1rem}.assessment-dashboard-original .assessment-header-actions,.assessment-dashboard-original .assessment-command-actions,.assessment-page .assessment-header-actions{gap:10px}.assessment-dashboard-original .assessment-primary-button,.assessment-page .assessment-primary-button,.assessment-student-next .assessment-primary-button{min-height:52px;border-color:#01557e;border-radius:7px;padding:0 20px;background:#01557e;box-shadow:0 6px 14px #01557e2e;color:#fff;font-size:.96rem;font-weight:800}.assessment-dashboard-original .assessment-primary-button:hover,.assessment-page .assessment-primary-button:hover,.assessment-student-next .assessment-primary-button:hover{border-color:#005f86;background:#005f86;box-shadow:0 8px 18px #005f8633}.assessment-dashboard-original .assessment-secondary-button,.assessment-page .assessment-secondary-button{min-height:50px;border-color:#d8e3eb;border-radius:7px;background:#fff;box-shadow:0 2px 6px #102e400a;color:#071123;font-size:.95rem;font-weight:800}.assessment-dashboard-original .assessment-secondary-button svg,.assessment-page .assessment-secondary-button svg{color:#01557e}.assessment-dashboard-original .assessment-status-row{gap:16px;margin:0}.assessment-dashboard-original .assessment-status-pill{min-height:28px;border-color:#d8e3eb;border-radius:999px;padding:0 16px;background:#fff;box-shadow:0 8px 18px #102e4012;color:#071123;font-size:.86rem;font-weight:800}.assessment-dashboard-original .assessment-status-pill svg{color:#01557e}.assessment-dashboard-original .assessment-command-panel{grid-template-columns:minmax(340px,.685fr) minmax(0,1fr);min-height:402px;margin:0;border-color:#d8e3eb;border-radius:8px;background:#fff;box-shadow:0 18px 44px #102e4017}.assessment-dashboard-original .assessment-command-brand{min-height:400px;justify-content:flex-start;padding:32px 30px;background:#01557e}.assessment-dashboard-original .assessment-command-brand p{margin:0 0 24px;color:#ffffffad;font-size:.88rem;font-weight:900;letter-spacing:.28em}.assessment-dashboard-original .assessment-command-brand h2{margin:0 0 14px;color:#fff;font-size:1.75rem;font-weight:800;line-height:1.12}.assessment-dashboard-original .assessment-command-brand span{max-width:500px;color:#fffffff0;font-size:1.02rem;line-height:1.65}.assessment-dashboard-original .assessment-command-body{align-content:center;gap:20px;padding:30px}.assessment-dashboard-original .assessment-command-actions{justify-content:flex-end}.assessment-dashboard-original .assessment-action-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.assessment-dashboard-original .assessment-action-tile{min-height:272px;border-color:#d8e3eb;border-radius:8px;padding:34px 20px;background:#fff;box-shadow:0 2px 7px #102e400f}.assessment-dashboard-original .assessment-action-tile>div{margin-bottom:2px}.assessment-dashboard-original .assessment-action-tile span,.assessment-dashboard-original .assessment-kpi-item span,.assessment-page .assessment-metric span,.assessment-page .assessment-step-tile>span{width:46px;height:46px;border-color:#d8e3eb;border-radius:8px;background:#f8fbfd;color:#01557e}.assessment-dashboard-original .assessment-action-tile strong{color:#01557e;font-size:2.35rem;font-weight:800;line-height:1}.assessment-dashboard-original .assessment-action-tile p{margin:0;color:#111827;font-size:1.05rem;font-weight:800;line-height:1.35}.assessment-dashboard-original .assessment-action-tile small{color:#65748b;font-size:.9rem;line-height:1.5}.assessment-dashboard-original .assessment-kpi-strip{min-height:112px;margin:8px 0 0;border-color:#d8e3eb;border-radius:8px;background:#fff;box-shadow:0 14px 34px #102e4014}.assessment-dashboard-original .assessment-kpi-item{min-height:110px;border-right-color:#d8e3eb;padding:24px 25px;background:#fff}.assessment-dashboard-original .assessment-kpi-item strong{color:#020617;font-size:1.85rem;font-weight:800}.assessment-dashboard-original .assessment-kpi-item p{color:#65748b;font-size:.9rem}.assessment-dashboard-original .assessment-dashboard-grid{grid-template-columns:minmax(0,1.95fr) minmax(330px,.94fr);gap:30px;margin:0}.assessment-dashboard-original .assessment-panel,.assessment-page .assessment-panel,.assessment-page .assessment-row-card,.assessment-page .assessment-metric,.assessment-page .assessment-student-next{border-color:#d8e3eb;border-radius:8px;background:#fff;box-shadow:0 16px 38px #102e4014}.assessment-dashboard-original .assessment-panel{padding:24px 30px}.assessment-dashboard-original .assessment-panel h2,.assessment-dashboard-original .assessment-panel-title h2{color:#020617;font-size:1.08rem;font-weight:800}.assessment-dashboard-original .assessment-academic-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:18px}.assessment-dashboard-original .assessment-mini-tile,.assessment-dashboard-original .assessment-step-tile,.assessment-page .assessment-row-card,.assessment-page .assessment-metric{border-color:#d8e3eb;background:#fff;box-shadow:0 2px 7px #102e400d}.assessment-dashboard-original .assessment-mini-tile{min-height:72px;padding:12px 18px}.assessment-dashboard-original .assessment-mini-tile svg{color:#01557e}.assessment-dashboard-original .assessment-mini-tile strong{color:#071123;font-size:.88rem;font-weight:800}.assessment-dashboard-original .assessment-mini-tile span,.assessment-dashboard-original .assessment-step-tile p,.assessment-page .assessment-row-card span:not(.assessment-status-badge),.assessment-page .assessment-mini-list span:last-child{color:#65748b}.assessment-dashboard-original .assessment-template-panel{min-height:492px}.assessment-dashboard-original .assessment-template-list{gap:10px}.assessment-dashboard-original .assessment-template-list .assessment-secondary-button{justify-content:flex-start;min-height:49px;padding:0 20px}.assessment-dashboard-original .assessment-next-panel{min-height:282px}.assessment-dashboard-original .assessment-step-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}.assessment-dashboard-original .assessment-step-tile{min-height:176px;padding:20px}.assessment-dashboard-original .assessment-step-tile strong{color:#071123;font-size:1rem;font-weight:800}.assessment-dashboard-original .assessment-secondary-button:hover,.assessment-dashboard-original .assessment-action-tile:hover,.assessment-dashboard-original .assessment-kpi-item:hover,.assessment-dashboard-original .assessment-mini-tile:hover,.assessment-dashboard-original .assessment-step-tile:hover,.assessment-page .assessment-row-card:hover,.assessment-page .assessment-metric:hover{border-color:#01557e59;background:#f8fbfd;box-shadow:0 10px 22px #102e4014;transform:translateY(-1px)}.assessment-dashboard-original{width:100%;gap:26px}.assessment-dashboard-original .assessment-dashboard-header{align-items:center;padding:26px 28px}.assessment-dashboard-original .assessment-dashboard-header>div:first-child{min-width:260px}.assessment-dashboard-original .assessment-header-actions{display:grid;grid-template-columns:repeat(3,minmax(170px,1fr));width:min(760px,100%);justify-content:stretch}.assessment-dashboard-original .assessment-header-actions .assessment-primary-button,.assessment-dashboard-original .assessment-header-actions .assessment-secondary-button{width:100%;white-space:nowrap}.assessment-dashboard-original .assessment-status-row{display:grid;grid-template-columns:repeat(3,max-content);gap:12px}.assessment-dashboard-original .assessment-command-panel{grid-template-columns:minmax(360px,.43fr) minmax(640px,1fr);align-items:stretch;min-height:306px}.assessment-dashboard-original .assessment-command-brand{min-height:306px;padding:30px 34px}.assessment-dashboard-original .assessment-command-brand p{margin-bottom:20px}.assessment-dashboard-original .assessment-command-body{display:grid;align-content:stretch;padding:30px}.assessment-dashboard-original .assessment-action-grid{height:100%;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:14px}.assessment-dashboard-original .assessment-action-tile{min-height:0;height:100%;align-content:start;grid-template-rows:auto auto auto minmax(0,1fr);padding:28px 20px 22px}.assessment-dashboard-original .assessment-kpi-strip{grid-template-columns:repeat(4,minmax(0,1fr));min-height:104px;margin-top:0}.assessment-dashboard-original .assessment-kpi-item{min-height:104px;padding:22px 26px}.assessment-dashboard-original .assessment-dashboard-grid{grid-template-columns:minmax(0,2fr) minmax(340px,.82fr);align-items:stretch;gap:30px}.assessment-dashboard-original .assessment-academic-panel,.assessment-dashboard-original .assessment-next-panel{min-height:0}.assessment-dashboard-original .assessment-academic-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.assessment-dashboard-original .assessment-mini-tile{min-height:88px;grid-template-columns:38px minmax(0,1fr);padding:16px 18px}.assessment-dashboard-original .assessment-template-panel{min-height:100%}.assessment-dashboard-original .assessment-next-panel{align-self:stretch}.assessment-dashboard-original .assessment-step-tile{min-height:150px;align-content:start}.assessment-local-toast{position:fixed;right:24px;bottom:96px;z-index:80;max-width:360px;border:1px solid #b9d3e1;border-radius:8px;padding:14px 18px;background:#fff;box-shadow:0 18px 42px #102e4029;color:#071123;font-weight:800}.assessment-filter-bar,.assessment-info-strip,.assessment-status-actions,.assessment-inline-actions,.assessment-export-actions,.assessment-runtime-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.assessment-filter-bar{border:1px solid #d8e3eb;border-radius:8px;padding:14px;background:#fff;box-shadow:0 10px 24px #102e400f}.assessment-filter-bar input,.assessment-filter-bar select,.assessment-form-grid input,.assessment-form-grid select,.assessment-form-grid textarea,.assessment-question-editor input,.assessment-question-editor select,.assessment-question-editor textarea,.assessment-code-block input,.assessment-code-block textarea,.assessment-answer-box textarea,.assessment-export-form input,.assessment-export-form select,.assessment-grade-row input{width:100%;min-height:48px;border:1px solid #d8e3eb;border-radius:7px;padding:10px 13px;background:#fff;color:#071123;font:inherit;box-shadow:0 1px 4px #102e4009}.assessment-filter-bar input{flex:1 1 280px}.assessment-filter-bar select{flex:0 1 250px}.assessment-kind-badge{display:inline-flex;align-items:center;border:1px solid #d8e3eb;border-radius:999px;padding:5px 10px;background:#f8fbfd;color:#01557e;font-size:.74rem;font-weight:900}.assessment-status-badge.draft{color:#475569;background:#f8fafc}.assessment-status-badge.scheduled{color:#01557e;background:#f3f8fb}.assessment-status-badge.closed,.assessment-status-badge.published{color:#172033;background:#eef3f7}.assessment-builder-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);gap:18px;align-items:start}.assessment-form-grid,.assessment-export-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.assessment-form-grid.compact{margin-top:16px}.assessment-form-grid label,.assessment-export-form label,.assessment-code-block label,.assessment-question-editor>label{display:grid;gap:7px;color:#172033;font-size:.9rem;font-weight:800}.assessment-form-grid textarea,.assessment-question-editor textarea,.assessment-code-block textarea,.assessment-answer-box textarea{min-height:108px;resize:vertical}.assessment-info-strip{margin-top:16px;border:1px solid #b9d3e1;border-radius:8px;padding:14px 16px;background:#f8fbfd;color:#01557e}.assessment-info-strip>div{display:grid;gap:3px}.assessment-info-strip span,.assessment-field-hint{color:#65748b;font-size:.86rem;line-height:1.45}.assessment-group-list{display:grid;gap:10px;margin-top:14px}.assessment-group-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #d8e3eb;border-radius:7px;padding:12px 14px;background:#fff}.assessment-group-list span{color:#65748b;font-size:.9rem}.assessment-toggle-grid{display:grid;gap:10px}.assessment-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #d8e3eb;border-radius:7px;padding:12px 14px;background:#fff;color:#172033;font-weight:800}.assessment-toggle-row input{width:20px;height:20px;accent-color:#01557e}.assessment-panel-title.split{justify-content:space-between;gap:18px}.assessment-panel-title.split>div{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.assessment-inline-actions select{min-height:46px;border:1px solid #d8e3eb;border-radius:7px;padding:0 12px;background:#fff;color:#071123;font-weight:800}.assessment-question-editor-list,.assessment-grade-list{display:grid;gap:14px}.assessment-question-quickadd{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.assessment-question-quickadd button:not(.assessment-primary-button):not(.assessment-secondary-button){display:inline-flex;align-items:center;gap:6px;border:1px solid #d8e3eb;border-radius:8px;padding:8px 12px;background:#fff;color:#172033;font-size:.84rem;font-weight:700}.assessment-inline-link{border:none;background:none;color:#01557e;font-weight:800;text-decoration:underline;padding:0;font-size:inherit}.assessment-question-editor{display:grid;gap:14px;border:1px solid #d8e3eb;border-radius:8px;padding:18px;background:#fff;box-shadow:0 8px 20px #102e400d}.assessment-question-editor.incomplete{border-color:#c47a22;box-shadow:inset 3px 0 #c47a22,0 8px 20px #102e400d}.assessment-question-editor em,.assessment-question-required,.assessment-internship-review-error{color:#a22b2b;font-style:normal;font-weight:800}.assessment-question-editor-head{display:grid;grid-template-columns:auto minmax(220px,1fr) 120px 100px auto;align-items:end;gap:10px}.assessment-question-editor-head>span{align-self:center;border:1px solid #d8e3eb;border-radius:999px;padding:7px 12px;color:#01557e;background:#f8fbfd;font-size:.84rem;font-weight:900}.assessment-question-editor-head button{width:44px;height:44px;border:1px solid #d8e3eb;border-radius:7px;background:#fff;color:#c02626}.assessment-option-editor,.assessment-code-block{display:grid;gap:10px}.assessment-option-editor label{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:10px}.assessment-option-editor input[type=radio]{width:18px;height:18px;accent-color:#01557e}.assessment-option-editor-row{display:grid;grid-template-columns:34px minmax(0,1fr) 90px;align-items:center;gap:10px}.assessment-option-letter{display:grid;place-items:center;height:36px;border:1px solid #d8e3eb;border-radius:8px;background:#f8fbfd;color:#4f6178;font-weight:700;font-size:.86rem}.assessment-question-editor-head.assessment-grade-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;grid-template-columns:none}.assessment-grade-mark{display:flex;align-items:center;gap:8px}.assessment-mark-btn{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--muted);cursor:pointer}.assessment-mark-btn svg{flex:0 0 auto}.assessment-mark-btn.correct:hover{border-color:#16854a;color:#16854a}.assessment-mark-btn.wrong:hover{border-color:#b42318;color:#b42318}.assessment-mark-btn.correct.active{background:#16854a;border-color:#16854a;color:#fff}.assessment-mark-btn.wrong.active{background:#b42318;border-color:#b42318;color:#fff}.assessment-mark-points{margin-left:4px;color:var(--muted);font-size:.78rem;font-weight:700}.assessment-mark-points-input{width:52px;min-height:34px;border:1px solid var(--line);border-radius:7px;padding:0 8px;color:var(--ink);background:var(--input-bg);font:inherit;font-size:.8rem;font-weight:700;text-align:right}.assessment-mark-points-input:focus{outline:0;border-color:var(--brand);box-shadow:0 0 0 2px var(--focus-ring)}.assessment-mark-points-max{margin-left:2px;color:var(--muted);font-size:.78rem;font-weight:700}.assessment-grade-saveall{position:sticky;bottom:12px;display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:13px 18px;border:1px solid var(--brand-deep);border-radius:12px;background:var(--brand-deep);color:#fff;font:inherit;font-size:.9rem;font-weight:800;cursor:pointer;box-shadow:0 8px 24px #01557e40}.assessment-grade-saveall:disabled{opacity:.6;cursor:default}.assessment-grade-options{display:grid;gap:8px}.assessment-grade-option-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.assessment-grade-option-row .assessment-option-letter{width:34px;flex:0 0 auto}.assessment-grade-option-label{flex:1 1 160px;min-width:0;color:var(--ink);font-size:.9rem;overflow-wrap:anywhere}.assessment-grade-tag{flex:0 0 auto;padding:3px 9px;border-radius:999px;font-size:.72rem;font-weight:700;white-space:nowrap}.assessment-grade-tag.chosen{background:#005f861a;color:var(--brand-deep)}.assessment-grade-tag.correct{background:#16854a1f;color:#16854a}.assessment-option-editor-row button{height:36px;border:1px solid #d8e3eb;border-radius:8px;background:#fff;color:#4f6178;font-weight:700;font-size:.8rem}.assessment-option-editor-row button.active{border-color:#01557e;background:#01557e;color:#fff}.assessment-math-snippets{display:flex;flex-wrap:wrap;gap:8px;margin-top:-6px}.assessment-math-snippets button{border:1px solid #d8e3eb;border-radius:999px;padding:6px 12px;background:#fff;color:#4f6178;font-size:.8rem;font-weight:600}.assessment-code-block textarea,.assessment-starter-code{min-height:160px;font-family:Consolas,Courier New,monospace;line-height:1.5}.assessment-starter-code{overflow:auto;border:1px solid #d8e3eb;border-radius:8px;padding:14px;background:#f8fbfd;color:#071123}.assessment-security-checks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.assessment-security-card{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:12px;border:1px solid #d8e3eb;border-radius:8px;padding:16px;background:#fff;box-shadow:0 10px 24px #102e400f}.assessment-security-card svg{color:#01557e}.assessment-security-card div{display:grid;gap:4px}.assessment-security-card span,.assessment-security-card em{color:#65748b;font-size:.86rem;line-height:1.4}.assessment-security-card button{border:1px solid #01557e;border-radius:7px;padding:9px 12px;background:#01557e;color:#fff;font-weight:800}.assessment-security-card button.ready{border-color:#d8e3eb;background:#f8fbfd;color:#01557e}.assessment-runtime-layout{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(0,1.1fr);gap:18px;align-items:stretch}.assessment-material-pane,.assessment-question-pane,.assessment-answer-box{border:1px solid #d8e3eb;border-radius:8px;background:#fff;box-shadow:0 16px 38px #102e4014}.assessment-material-pane{min-height:520px;display:grid;grid-template-rows:auto 1fr;overflow:hidden}.assessment-material-pane>div{display:flex;align-items:center;gap:10px;border-bottom:1px solid #d8e3eb;padding:14px 16px;color:#01557e}.assessment-material-pane>div span{margin-left:auto;color:#65748b;font-size:.84rem}.assessment-material-pane article{display:grid;align-content:center;padding:28px;background:#f8fbfd}.assessment-material-pane h2,.assessment-answer-box h2{margin:0 0 10px;color:#071123;font-size:1.25rem}.assessment-material-pane p{margin:0;color:#65748b;line-height:1.55}.assessment-question-pane{display:grid;gap:14px;align-content:start;padding:18px}.assessment-question-progress{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #d8e3eb;border-radius:7px;padding:12px 14px;background:#f8fbfd}.assessment-question-progress span{color:#65748b;font-weight:800}.assessment-question-progress strong{color:#01557e}.assessment-answer-box{display:grid;gap:12px;padding:18px;box-shadow:none}.assessment-choice-row{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:10px;border:1px solid #d8e3eb;border-radius:7px;padding:12px;background:#fff;color:#071123;font-weight:800}.assessment-choice-row input{width:18px;height:18px;accent-color:#01557e}.assessment-upload-drop{display:grid;place-items:center;gap:10px;min-height:150px;border:1px dashed #9db8c8;border-radius:8px;padding:18px;background:#f8fbfd;color:#01557e;text-align:center;font-weight:800}.assessment-upload-drop input{max-width:260px}.assessment-upload-drop .assessment-upload-hint{margin-top:-4px;font-size:12px;font-weight:600;color:#5b7789}[data-theme=dark] .assessment-upload-drop .assessment-upload-hint{color:var(--muted)}.assessment-file-chips,.assessment-math-tools{display:flex;gap:8px;flex-wrap:wrap}.assessment-file-chips button,.assessment-math-tools button{display:inline-flex;align-items:center;gap:7px;border:1px solid #d8e3eb;border-radius:999px;padding:8px 11px;background:#fff;color:#01557e;font-weight:800}.assessment-grade-row{display:grid;grid-template-columns:46px minmax(0,1fr) 110px auto;align-items:center;gap:12px;border:1px solid #d8e3eb;border-radius:8px;padding:14px;background:#fff;box-shadow:0 8px 20px #102e400d;cursor:pointer}.assessment-grade-row.active{border-color:var(--brand, #01557e);box-shadow:0 0 0 2px #01577e2e}.assessment-avatar{width:44px;height:44px;display:grid;place-items:center;border-radius:999px;background:#eef6fa;color:#01557e;font-weight:900}.assessment-grade-row strong,.assessment-grade-row span{display:block}.assessment-grade-row span{margin-top:4px;color:#65748b;font-size:.88rem}.assessment-origin-kpi-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px;overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none}.assessment-origin-kpi-strip .assessment-metric{min-height:150px;align-content:start;gap:8px;border:1px solid #d8e3eb;border-radius:8px;padding:20px;background:#fff;box-shadow:0 14px 34px #102e4014}.assessment-origin-kpi-strip .assessment-metric span{width:50px;height:50px;margin-bottom:12px;order:1}.assessment-origin-kpi-strip .assessment-metric strong{order:2;color:#020617;font-size:1.9rem}.assessment-origin-kpi-strip .assessment-metric p{order:3;color:#65748b;font-size:.92rem}.assessment-origin-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:0;align-items:start}.assessment-origin-sidebar{display:grid;gap:18px}.assessment-origin-layout>.assessment-panel{min-width:0;padding:28px 30px 30px}.assessment-origin-layout .assessment-list{display:grid;gap:14px;border:0;border-radius:0;padding:0}.assessment-origin-card{display:grid;gap:14px;border:1px solid #d8e3eb;border-radius:8px;padding:16px;background:#fff;box-shadow:0 8px 20px #102e400d}.assessment-student-filters{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:-4px 0 4px}.assessment-student-filters select{border:1px solid var(--line);border-radius:9px;padding:8px 11px;outline:0;background:var(--surface);color:var(--ink);font:inherit;font-size:.82rem;font-weight:600}.assessment-student-filters select:focus{border-color:var(--brand);box-shadow:0 0 0 2px var(--focus-ring)}.assessment-student-tests{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}.assessment-test-card{display:grid;gap:7px;align-content:start;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface);text-align:left;cursor:pointer;box-shadow:0 4px 14px #102e400a;transition:border-color .15s ease,box-shadow .15s ease,transform .1s ease}.assessment-test-card:hover{border-color:var(--brand);box-shadow:0 8px 22px #01557e1a;transform:translateY(-1px)}.assessment-test-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.assessment-test-kind{font-size:.64rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--brand-deep);background:#005f8614;padding:3px 8px;border-radius:999px;white-space:nowrap}.assessment-test-card h3{margin:0;font-size:.95rem;color:var(--ink);line-height:1.3;overflow-wrap:anywhere}.assessment-test-subject{margin:0;color:var(--muted);font-size:.8rem;overflow-wrap:anywhere}.assessment-test-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px;margin-top:2px}.assessment-test-when{color:var(--muted);font-size:.73rem}.assessment-test-sub{font-size:.68rem;font-weight:700;padding:2px 8px;border-radius:999px;white-space:nowrap}.assessment-test-sub.submitted{background:#16854a1f;color:#16854a}.assessment-test-sub.progress{background:#d69e0029;color:#9a6b00}.assessment-origin-card.selected{border-color:#01557e5c;box-shadow:0 12px 28px #01557e1c}.assessment-origin-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.assessment-origin-card-head>button{min-width:0;flex:1 1 auto;border:0;padding:0;background:transparent;text-align:left}.assessment-origin-title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.assessment-origin-title-row h2{margin:0;color:#071123;font-size:1rem}.assessment-origin-card p,.assessment-origin-card small,.assessment-origin-card em,.assessment-origin-note{color:#65748b;font-size:.9rem;line-height:1.5}.assessment-origin-card p{margin:7px 0 0}.assessment-origin-card small,.assessment-origin-card em{display:block;margin-top:5px}.assessment-origin-card em{color:#01557e;font-style:normal;font-weight:800}.assessment-origin-time{flex:0 0 auto;border-radius:7px;padding:8px 12px;background:#f1f6f9;color:#172033;font-size:.84rem;font-weight:900}.assessment-origin-badges,.assessment-origin-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.assessment-origin-badges span{display:inline-flex;align-items:center;gap:5px;min-height:28px;border:1px solid #d8e3eb;border-radius:999px;padding:0 10px;background:#fff;color:#65748b;font-size:.78rem;font-weight:800}.assessment-origin-actions .assessment-primary-button,.assessment-origin-actions .assessment-secondary-button{min-height:38px;padding-inline:12px;font-size:.82rem}.assessment-origin-actions .assessment-secondary-button.danger{border-color:#fecaca;color:#dc2626;background:#fff}.assessment-origin-actions .assessment-secondary-button.danger svg{color:#dc2626}.assessment-origin-actions .assessment-secondary-button.danger:hover{border-color:#fca5a5;color:#b91c1c;background:#fff7f7}.assessment-origin-actions .assessment-secondary-button.info{border-color:#b9d3e1;color:#01557e;background:#f3f8fb}.assessment-origin-actions .assessment-secondary-button.info:hover{border-color:#7fb3cc;background:#eaf4f8}.assessment-filter-bar.compact{width:min(700px,100%);display:grid;grid-template-columns:minmax(280px,1fr) 220px;gap:10px;padding:0;border:0;box-shadow:none}.assessment-filter-bar.compact label{min-width:0}.assessment-subtabs{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:4px 0 6px}.assessment-subtabs button{min-height:44px;display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:12px;padding:0 18px;background:var(--surface);color:var(--muted);font-weight:800;cursor:pointer}.assessment-subtabs button.active{border-color:var(--brand);background:var(--soft);color:var(--brand)}.assessment-subtabs-hint{margin:0 0 16px}.assessment-empty-hint{display:grid;gap:10px;border:1px dashed var(--line);border-radius:12px;padding:18px 20px;background:var(--surface-soft);color:var(--ink)}.assessment-empty-hint em{color:var(--brand);font-style:normal;font-weight:700}.assessment-builder-steps{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.assessment-builder-steps button{min-height:48px;display:flex;align-items:center;gap:10px;border:1px solid #d8e3eb;border-radius:14px;padding:0 20px;background:#fff;color:#172033;font-weight:900;text-align:left;box-shadow:0 8px 20px #102e400d}.assessment-builder-steps button span{width:30px;height:30px;display:grid;place-items:center;border-radius:999px;background:#f1f6f9;color:#01557e;font-size:.82rem}.assessment-builder-steps button.active,.assessment-kind-grid button.active,.assessment-question-source-grid button.active,.assessment-room-grid button.active{border-color:#01557e5c;background:#f3f8fb;color:#01557e}.assessment-kind-grid,.assessment-question-source-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px}.assessment-question-source-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.assessment-kind-grid button,.assessment-question-source-grid button,.assessment-room-grid button,.assessment-assistant-grid button{display:grid;gap:8px;border:1px solid #d8e3eb;border-radius:8px;padding:15px;background:#fff;color:#172033;text-align:left;box-shadow:0 6px 16px #102e400b}.assessment-kind-grid button svg,.assessment-question-source-grid button svg{color:#01557e}.assessment-kind-grid button span,.assessment-assistant-grid button span,.assessment-room-grid button span,.assessment-question-source-grid button span{color:#65748b;font-size:.86rem;line-height:1.4}.assessment-inline-title-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:18px}.assessment-inline-title-row strong{font-size:.95rem;color:var(--ink, #071123)}.assessment-inline-title-row span{border:1px solid #d8e3eb;border-radius:999px;padding:4px 10px;font-size:.78rem;font-weight:700;color:#65748b}.assessment-room-grid,.assessment-assistant-grid,.assessment-review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}.assessment-group-editor{display:grid;gap:10px;margin-top:12px}.assessment-group-editor-row{display:grid;grid-template-columns:1.2fr 1.2fr 90px 90px 80px auto;gap:8px;align-items:center}.assessment-group-editor-row input{border:1px solid var(--input-border);border-radius:8px;padding:8px 10px;background:var(--input-bg);color:var(--ink);font:inherit}.assessment-group-editor-row button{border:1px solid var(--line);border-radius:8px;background:var(--surface-soft);color:var(--danger);padding:8px;display:grid;place-items:center}.assessment-room-chips{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.assessment-room-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--brand);background:var(--soft);color:var(--brand);border-radius:999px;padding:5px 8px 5px 12px;font-size:.84rem;font-weight:600}.assessment-room-chip button{border:none;background:transparent;color:var(--brand);display:grid;place-items:center;cursor:pointer}.assessment-project-documents-card{display:grid;gap:14px}.assessment-project-documents-head{margin-top:0;padding-bottom:12px;border-bottom:1px solid var(--line)}.assessment-project-documents-head p{margin:4px 0 0;color:var(--muted);font-size:.88rem;line-height:1.45}.assessment-project-documents-actions{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.assessment-project-documents-zip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--brand);border-radius:8px;padding:6px 10px;background:var(--brand);color:#fff;font-size:.8rem;font-weight:800;text-decoration:none;cursor:pointer}.assessment-project-documents-zip:hover{background:var(--brand-dark, #014d70);color:#fff}.assessment-project-documents-zip:disabled{opacity:.68;cursor:wait}.assessment-project-documents-list{display:grid;gap:10px}.assessment-project-documents-group{display:grid;grid-template-columns:150px minmax(0,1fr);gap:12px;align-items:start;border:1px solid var(--line);border-radius:8px;padding:10px;background:var(--surface-soft)}.assessment-project-documents-stage{display:grid;gap:3px;padding:3px 4px}.assessment-project-documents-stage strong{color:var(--ink);font-size:.9rem}.assessment-project-documents-stage span{color:var(--muted);font-size:.76rem;font-weight:700}.assessment-project-document-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.assessment-project-document-link{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;border:1px solid var(--line);border-radius:8px;padding:8px 10px;background:var(--surface);color:var(--ink);font-size:.84rem;font-weight:700;text-decoration:none}.assessment-project-document-link:hover{border-color:#01557e5c;color:var(--brand);background:var(--soft)}.assessment-project-document-link span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.assessment-project-document-link svg{color:var(--brand)}.assessment-room-add-row{display:flex;gap:8px;margin-bottom:16px}.assessment-room-add-row input{flex:1;border:1px solid var(--input-border);border-radius:8px;padding:8px 10px;background:var(--input-bg);color:var(--ink);font:inherit}.assessment-bank-search{width:100%;border:1px solid var(--input-border);border-radius:8px;padding:8px 10px;background:var(--input-bg);color:var(--ink);font:inherit;margin-bottom:10px}.assessment-points-over{color:var(--danger)}.assessment-security-notice-list{margin:10px 0;padding-left:20px;display:grid;gap:6px;color:var(--muted);font-size:.92rem}.assessment-camera-proctor{display:flex;align-items:center;gap:10px;margin-bottom:14px;padding:8px;border:1px solid var(--line);border-radius:10px;background:var(--surface-soft);width:fit-content}.assessment-camera-preview{position:relative;width:96px;height:72px;border-radius:8px;overflow:hidden;background:#0b1220;flex-shrink:0}.assessment-camera-preview video{width:100%;height:100%;object-fit:cover;transform:scaleX(-1)}.assessment-camera-overlay{position:absolute;inset:0;display:grid;place-items:center;background:#0b12208c;color:#fff}.assessment-camera-status{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:.82rem;font-weight:600}[data-theme=dark] .assessment-camera-proctor{background:var(--surface-muted);border-color:var(--line)}.assessment-material-upload-btn{display:inline-flex;align-items:center;gap:6px;border:1px solid #d8e3eb;border-radius:8px;padding:8px 14px;background:#fff;color:#172033;font-size:.84rem;font-weight:700;cursor:pointer}.assessment-material-upload-btn input[type=file]{display:none}[data-theme=dark] .assessment-material-upload-btn{border-color:var(--line);background:var(--surface-soft);color:var(--ink)}.assessment-material-scope-card{background:var(--surface-soft, #f8fbfd);margin-top:14px}.assessment-material-scope-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0}.assessment-material-scope-grid button{display:grid;gap:4px;text-align:left;border:1px solid #d8e3eb;border-radius:8px;padding:12px;background:#fff;color:#172033}.assessment-material-scope-grid button span{font-size:.78rem;color:#65748b}.assessment-material-scope-grid button.active{border-color:#01557e;background:#eef7fb}[data-theme=dark] .assessment-material-scope-grid button{border-color:var(--line);background:var(--surface-soft);color:var(--ink)}[data-theme=dark] .assessment-material-scope-grid button span{color:var(--muted)}[data-theme=dark] .assessment-material-scope-grid button.active{border-color:var(--brand);background:#4aa7c729}@media(max-width:720px){.assessment-material-scope-grid{grid-template-columns:1fr}}.assessment-supervisor-section{border-top:1px solid var(--line);padding-top:14px}.assessment-supervisor-section h3{margin:0 0 4px;font-size:.95rem;color:var(--ink)}.assessment-supervisor-section h3 em{font-style:normal;color:var(--muted);font-weight:400;font-size:.82rem}.assessment-supervisor-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;margin-top:10px;max-height:260px;overflow-y:auto}.assessment-supervisor-card{display:grid;gap:2px;text-align:left;border:1px solid var(--line);border-radius:8px;padding:8px 10px;background:var(--surface-soft);cursor:pointer}.assessment-supervisor-card strong{font-size:.86rem;color:var(--ink)}.assessment-supervisor-card span{font-size:.74rem;color:var(--muted)}.assessment-supervisor-card.active{border-color:var(--brand);background:var(--soft)}.assessment-supervisor-card.active span{color:var(--brand);font-weight:600}.assessment-supervisor-card.busy:not(.active) span{color:#b45309}.assessment-supervisor-card.busy:not(.active){border-style:dashed}.assessment-assistant-grid button.busy{border-color:#d6bf83;background:#fffaf0}.assessment-pdf-panel{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid #d8e3eb;border-radius:8px;padding:16px;background:#fff;margin-bottom:16px}.assessment-pdf-panel>div{display:grid;grid-template-columns:24px minmax(0,1fr);gap:4px 10px}.assessment-pdf-panel svg{grid-row:span 2;color:#01557e}.assessment-pdf-panel span{color:#65748b;font-size:.9rem}.assessment-summary-row{display:grid;gap:5px;border:1px solid #d8e3eb;border-radius:8px;padding:14px;background:#fff}.assessment-summary-row span{color:#65748b;font-size:.78rem;font-weight:900;text-transform:uppercase}.assessment-summary-row strong{color:#071123;font-size:.96rem}.assessment-create-page{display:grid;gap:30px;color:#071123}.assessment-create-header{min-height:116px;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:18px;border:1px solid #d8e3eb;border-radius:8px;padding:20px;background:#fff;box-shadow:0 22px 52px #102e4017}.assessment-create-back{width:42px;height:42px;display:grid;place-items:center;border:0;background:transparent;color:#5f6f86;transform:rotate(180deg)}.assessment-create-header h1{margin:0;color:#070b1c;font-size:1.82rem;font-weight:800;line-height:1.1}.assessment-create-header p{margin:12px 0 0;color:#65748b;font-size:1rem}.assessment-create-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.assessment-autosave{min-height:42px;display:inline-flex;align-items:center;gap:8px;border:1px solid #d8e3eb;border-radius:999px;padding:0 14px;background:#fff;box-shadow:0 8px 18px #102e400f;color:#4f6178;font-size:.9rem;font-weight:800}.assessment-create-layout{display:grid;grid-template-columns:minmax(0,1fr) 486px;gap:30px;align-items:start}.assessment-create-form-card,.assessment-create-summary,.assessment-create-info-card{border:1px solid #d8e3eb;border-radius:8px;background:#fff;box-shadow:0 18px 42px #102e4014}.assessment-create-form-card{padding:22px}.assessment-create-section-title{display:flex;align-items:center;gap:10px;margin:10px 0 34px;color:#01557e}.assessment-create-section-title h2{margin:0;color:#071123;font-size:1.15rem;font-weight:800}.assessment-create-label,.assessment-create-field>span{display:block;margin-bottom:10px;color:#071123;font-weight:800}.assessment-create-field{display:grid;gap:0;margin-bottom:24px}.assessment-create-field.full{grid-column:1 / -1}.assessment-feedback-needed>span{color:var(--danger, #c62828);font-weight:700}.assessment-feedback-needed textarea{border-color:var(--danger, #c62828)}.assessment-create-field input,.assessment-create-field select,.assessment-create-field textarea{width:100%;min-height:50px;border:1px solid #d8e3eb;border-radius:7px;padding:0 16px;background:#fff;color:#071123;font:inherit;box-shadow:0 2px 8px #102e4009}.assessment-create-field textarea{min-height:96px;padding:12px 16px;resize:vertical;line-height:1.45}.assessment-create-field input:focus-visible,.assessment-create-field select:focus-visible,.assessment-create-field textarea:focus-visible{border-color:var(--brand);outline:3px solid color-mix(in srgb,var(--brand) 18%,transparent);outline-offset:1px}.assessment-create-field small{margin-top:8px;color:#65748b;font-size:.86rem}.assessment-create-field em{float:right;border:1px solid #d8e3eb;border-radius:999px;padding:4px 12px;color:#071123;font-size:.82rem;font-style:normal}.assessment-create-two{display:grid;grid-template-columns:1fr 1fr;gap:18px}.assessment-create-three{display:grid;grid-template-columns:2fr 1fr 1fr;gap:18px}.assessment-create-four{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}@media(max-width:900px){.assessment-create-three,.assessment-create-four{grid-template-columns:1fr}}.assessment-create-field-switch{display:flex;flex-direction:column;gap:6px}.assessment-create-field-switch>span:first-child{font-weight:800;color:var(--ink)}.assessment-create-field-switch small{color:var(--muted);font-size:.82rem}.assessment-inline-input-row{display:flex;gap:8px;align-items:stretch}.assessment-inline-input-row input,.assessment-inline-input-row select{flex:1 1 auto;min-width:0}.assessment-inline-input-row button{flex:0 0 auto;white-space:nowrap}.assessment-archived-instances{gap:14px}.assessment-archive-list{display:flex;flex-direction:column;gap:8px}.assessment-archive-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface-soft)}.assessment-archive-row>div{display:flex;flex-direction:column;gap:3px;min-width:0}.assessment-archive-row strong{color:var(--ink);overflow-wrap:anywhere}.assessment-archive-row span{color:var(--muted);font-size:.82rem}.assessment-internship-classes-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:20px;margin:14px 0}.assessment-internship-grade-grid,.assessment-internship-class-list{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:8px;max-height:220px;overflow-y:auto}.assessment-internship-grade-card,.assessment-internship-class-card{display:flex;flex-direction:column;align-items:flex-start;gap:4px;text-align:left;border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:var(--surface-muted);cursor:pointer;font:inherit;color:var(--ink)}.assessment-internship-class-card.active{border-color:var(--brand);background:var(--soft)}.assessment-internship-grade-card span,.assessment-internship-class-card span{color:var(--muted);font-size:.82rem}.assessment-internship-roster-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:14px 0}.assessment-internship-roster-list{display:grid;gap:6px;margin-top:8px;max-height:260px;overflow-y:auto}.assessment-internship-roster-list-removed{background:#fdf6e3;border-radius:10px;padding:8px}[data-theme=dark] .assessment-internship-roster-list-removed{background:var(--surface-muted)}.assessment-internship-roster-row{display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid var(--line);border-radius:8px;padding:8px 12px;background:var(--surface)}.assessment-internship-roster-row em{color:var(--muted);font-style:normal;margin-left:6px;font-size:.82rem}.assessment-internship-roster-row button{display:inline-flex;align-items:center;gap:4px;border:none;background:transparent;color:var(--danger);font-weight:700;font-size:.82rem;cursor:pointer}@media(max-width:900px){.assessment-internship-classes-grid,.assessment-internship-roster-grid{grid-template-columns:1fr}}.assessment-student-week-cards{display:grid;gap:12px;margin-bottom:16px}.assessment-student-week-card{border-left:3px solid var(--brand)}.student-internship-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin-top:12px}.student-internship-panel{display:grid;gap:12px;border:1px solid var(--line);border-radius:8px;padding:14px;background:var(--surface)}.student-internship-panel.compact{align-content:start}.student-internship-panel-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.student-internship-panel-head span{display:inline-flex;align-items:center;gap:6px;color:var(--brand);font-size:.78rem;font-weight:800;text-transform:uppercase}.student-internship-panel-head h3{margin:4px 0 0;color:var(--ink);font-size:1rem}.student-internship-panel-head p{margin:4px 0 0;color:var(--muted);font-size:.84rem}.student-internship-panel-head>strong{border:1px solid var(--line);border-radius:8px;padding:6px 10px;color:var(--brand);background:var(--soft);white-space:nowrap}.student-internship-chip-row{display:flex;flex-wrap:wrap;gap:7px}.student-internship-room-list{max-height:none}.student-internship-workspace{container:student-internship / inline-size;display:grid;width:100%;max-width:1560px;margin-inline:auto;gap:14px}.student-internship-workspace-head,.student-internship-agenda,.student-internship-today-info,.student-internship-section,.student-internship-state,.student-internship-empty{border:1px solid var(--line);border-radius:9px;background:var(--surface)}.student-internship-workspace-head{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:4px solid var(--brand);padding:17px 18px}.student-internship-workspace-head>div{min-width:0}.student-internship-workspace-head h1,.student-internship-workspace-head h2{margin:4px 0 3px;color:var(--ink);font-size:clamp(1.35rem,2.6vw,1.75rem)}.student-internship-workspace-head p{margin:0;color:var(--muted);font-size:.82rem}.student-internship-phase{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;border:1px solid var(--line);border-radius:999px;padding:7px 9px;color:var(--muted);background:var(--surface-soft);font-size:.74rem;font-weight:800}.student-internship-phase.phase-session{border-color:#9bcdb2;color:#17613f;background:#f3fbf7}.student-internship-phase.phase-before_start{border-color:#9fc8d8;color:#075b78;background:#f0f8fb}.student-internship-today-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,270px);gap:12px;align-items:start}.student-internship-agenda{min-width:0;overflow:hidden}.student-internship-agenda>header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border-bottom:1px solid var(--line)}.student-internship-agenda>header>div{display:flex;align-items:center;gap:7px;color:var(--brand)}.student-internship-agenda>header strong{color:var(--ink)}.student-internship-agenda>header>span{color:var(--muted);font-size:.72rem;font-weight:800}.student-internship-agenda-list{display:grid}.student-internship-agenda-row{display:grid;grid-template-columns:62px 30px minmax(0,1fr) auto;gap:9px;align-items:center;min-width:0;padding:10px 13px;border-bottom:1px solid var(--line)}.student-internship-agenda-row:last-child{border-bottom:0}.student-internship-agenda-row>time,.student-internship-agenda-time{color:var(--ink);font-size:.75rem;font-weight:900}.student-internship-agenda-row>span:not(.student-internship-agenda-time){display:grid;place-items:center;width:28px;height:28px;border-radius:7px;color:var(--brand);background:var(--soft)}.student-internship-agenda-row>div{display:grid;min-width:0;gap:1px}.student-internship-agenda-row small{color:var(--muted);font-size:.67rem;text-transform:uppercase;letter-spacing:.04em}.student-internship-agenda-row strong{overflow:hidden;color:var(--ink);font-size:.8rem;text-overflow:ellipsis;white-space:nowrap}.student-internship-agenda-row em{color:var(--muted);font-size:.7rem;font-style:normal}.student-internship-agenda-row>a,.student-internship-agenda-row>button{display:inline-flex;align-items:center;gap:3px;min-height:34px;border:1px solid var(--line);border-radius:6px;padding:6px 8px;color:var(--brand);background:var(--surface);font:inherit;font-size:.72rem;font-weight:800;text-decoration:none;cursor:pointer}.student-internship-agenda-row>button:disabled{color:var(--muted);background:var(--surface-soft);opacity:.7;cursor:not-allowed}.student-internship-today-info{display:grid;overflow:hidden}.student-internship-today-info>div{display:grid;gap:2px;padding:12px 13px;border-bottom:1px solid var(--line)}.student-internship-today-info>div:last-child{border-bottom:0}.student-internship-today-info span{color:var(--muted);font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.student-internship-today-info strong{color:var(--ink);font-size:.86rem}.student-internship-today-info small{color:var(--muted);font-size:.7rem}.student-internship-slot.revealed{border-left:3px solid #18794e;background:#f3fbf7}.student-internship-section{overflow:hidden}.student-internship-section>header{padding:13px 15px;border-bottom:1px solid var(--line)}.student-internship-section h3{margin:3px 0;color:var(--ink);font-size:1rem}.student-internship-section header p{margin:0;color:var(--muted);font-size:.75rem}.student-internship-room-options{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,190px),1fr));gap:8px;padding:12px}.student-internship-room-options button{display:flex;align-items:center;justify-content:space-between;gap:9px;min-width:0;min-height:56px;border:1px solid var(--line);border-radius:7px;padding:9px 10px;color:var(--ink);background:var(--surface);font:inherit;text-align:left;cursor:pointer}.student-internship-room-options button:hover{border-color:var(--brand);background:var(--soft)}.student-internship-room-options button:disabled{opacity:.55;cursor:not-allowed}.student-internship-room-options button>span{display:grid;min-width:0;gap:2px}.student-internship-room-options strong{overflow:hidden;font-size:.8rem;text-overflow:ellipsis;white-space:nowrap}.student-internship-room-options small{color:var(--muted);font-size:.68rem}.student-internship-room-options em{flex:0 0 auto;border-radius:999px;padding:4px 6px;color:var(--brand);background:var(--soft);font-size:.7rem;font-style:normal;font-weight:900}.student-internship-week-table,.student-internship-results-list{display:grid}.student-internship-week-table>article{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(110px,.45fr) minmax(100px,.4fr) minmax(220px,1.3fr);gap:12px;align-items:center;min-width:0;padding:11px 14px;border-bottom:1px solid var(--line)}.student-internship-week-table>article:last-child,.student-internship-results-list>article:last-child{border-bottom:0}.student-internship-week-table article>div{display:grid;min-width:0;gap:1px}.student-internship-week-table article>div>span{color:var(--muted);font-size:.66rem;font-weight:800;text-transform:uppercase}.student-internship-week-table strong{overflow:hidden;color:var(--ink);font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.student-internship-week-table small{color:var(--muted);font-size:.68rem}.student-internship-mates{display:flex!important;flex-wrap:wrap;gap:5px}.student-internship-mates>span{display:grid;border:1px solid var(--line);border-radius:5px;padding:4px 6px;color:var(--ink);font-size:.68rem}.student-internship-results-list>article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-bottom:1px solid var(--line)}.student-internship-results-list article>div{display:grid;min-width:0;gap:2px}.student-internship-results-list strong{overflow:hidden;color:var(--ink);font-size:.8rem;text-overflow:ellipsis;white-space:nowrap}.student-internship-results-list small{color:var(--muted);font-size:.7rem}.student-internship-results-list article>span{flex:0 0 auto;border:1px solid var(--line);border-radius:999px;padding:5px 8px;font-size:.7rem;font-weight:900}.student-internship-results-list .status-passed{border-color:#9bcdb2;color:#17613f;background:#f3fbf7}.student-internship-results-list .status-failed{border-color:#e4aaaa;color:#8c2020;background:#fff8f8}.student-internship-results-list .status-pending{color:#75540a;background:#fff9e8}[data-theme=dark] .student-internship-results-list .status-passed,[data-theme=dark] .student-internship-results-list .status-failed,[data-theme=dark] .student-internship-results-list .status-pending{border-color:var(--line);color:var(--ink);background:var(--surface-soft)}.student-internship-inline-empty{margin:0;padding:24px;color:var(--muted);text-align:center;font-size:.78rem}.student-internship-state,.student-internship-empty{display:grid;justify-items:center;gap:7px;min-height:180px;padding:28px;color:var(--muted);text-align:center}.student-internship-empty>svg{color:var(--brand)}.student-internship-empty h2{margin:0;color:var(--ink);font-size:1.1rem}.student-internship-empty p,.student-internship-state p{max-width:520px;margin:0;font-size:.78rem;line-height:1.45}.parent-internship-workspace{container:parent-internship / inline-size;display:grid;gap:14px;width:100%}.parent-internship-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;border:1px solid var(--line);border-top:4px solid var(--brand);border-radius:9px;padding:17px;background:var(--surface)}.parent-internship-head h2{margin:4px 0;color:var(--ink);font-size:1.35rem}.parent-internship-head p{margin:0;color:var(--muted);font-size:.8rem}.parent-internship-head dl{display:grid;grid-template-columns:repeat(3,minmax(74px,1fr));margin:0;border:1px solid var(--line);border-radius:7px;overflow:hidden}.parent-internship-head dl>div{display:grid;gap:2px;padding:8px 11px;border-right:1px solid var(--line)}.parent-internship-head dl>div:last-child{border-right:0}.parent-internship-head dt{color:var(--muted);font-size:.65rem;font-weight:800;text-transform:uppercase}.parent-internship-head dd{margin:0;color:var(--ink);font-size:1rem;font-weight:900}.parent-internship-children{display:grid;gap:10px}.parent-internship-child{border:1px solid var(--line);border-radius:9px;overflow:hidden;background:var(--surface)}.parent-internship-child>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;border-bottom:1px solid var(--line);background:var(--surface-soft)}.parent-internship-child>header>div{display:flex;align-items:center;gap:9px;min-width:0}.parent-internship-child>header svg{flex:0 0 auto;color:var(--brand)}.parent-internship-child>header span{display:grid;min-width:0;gap:1px}.parent-internship-child>header small{color:var(--muted);font-size:.62rem;font-weight:900;letter-spacing:.04em}.parent-internship-child>header strong{overflow:hidden;color:var(--ink);font-size:.86rem;text-overflow:ellipsis;white-space:nowrap}.parent-internship-child>header>em{flex:0 0 auto;color:var(--muted);font-size:.7rem;font-style:normal;font-weight:800}.parent-internship-result-table{display:grid}.parent-internship-result-table>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:9px 13px;border-bottom:1px solid var(--line)}.parent-internship-result-table>div:last-child{border-bottom:0}.parent-internship-result-table>div>span{display:grid;min-width:0;gap:2px}.parent-internship-result-table strong{overflow:hidden;color:var(--ink);font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.parent-internship-result-table small{color:var(--muted);font-size:.69rem}.parent-internship-result-table em{border:1px solid var(--line);border-radius:999px;padding:4px 7px;color:var(--muted);background:var(--surface-soft);font-size:.68rem;font-style:normal;font-weight:900}.parent-internship-result-table em.status-passed{border-color:#9bcdb2;color:#17613f;background:#f3fbf7}.parent-internship-result-table em.status-failed{border-color:#e4aaaa;color:#8c2020;background:#fff8f8}.parent-internship-result-table em.status-pending{color:#75540a;background:#fff9e8}.parent-internship-result-table>p{margin:0;padding:18px;color:var(--muted);text-align:center;font-size:.78rem}.parent-internship-state{display:grid;justify-items:center;gap:7px;min-height:170px;border:1px solid var(--line);border-radius:9px;padding:28px;color:var(--muted);background:var(--surface);text-align:center}.parent-assessment-row{padding:9px 13px;border-bottom:1px solid var(--line)}.parent-internship-result-table>.parent-assessment-row:last-child{border-bottom:0}.parent-assessment-row-main{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center}.parent-assessment-row-main>span{display:grid;min-width:0;gap:2px}.parent-assessment-row-main strong{overflow:hidden;color:var(--ink);font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.parent-assessment-row-main small{color:var(--muted);font-size:.69rem}.parent-assessment-row-main em{border:1px solid var(--line);border-radius:999px;padding:4px 7px;color:var(--muted);background:var(--surface-soft);font-size:.68rem;font-style:normal;font-weight:900;white-space:nowrap}.parent-assessment-row-main em.status-published{border-color:#9bcdb2;color:#17613f;background:#f3fbf7}.parent-assessment-toggle{border:1px solid var(--brand);border-radius:999px;padding:5px 10px;color:var(--brand);background:var(--surface);font-size:.7rem;font-weight:700;white-space:nowrap;cursor:pointer}.parent-assessment-detail{display:grid;gap:8px;margin-top:10px}.parent-assessment-question{border:1px solid var(--line);border-radius:8px;padding:9px 11px;background:var(--surface-soft)}.parent-assessment-question-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px;font-size:.72rem;font-weight:800;color:var(--muted)}.parent-assessment-question>p{margin:0;color:var(--ink);font-size:.8rem}.parent-assessment-feedback{margin-top:6px!important;color:var(--muted);font-size:.78rem}.parent-internship-state>svg{color:var(--brand)}.parent-internship-state>strong{color:var(--ink)}.parent-internship-state>p{max-width:480px;margin:0;font-size:.78rem;line-height:1.45}@container parent-internship (max-width: 650px){.parent-internship-head{grid-template-columns:1fr}.parent-internship-head dl{width:100%}}@media(max-width:480px){.parent-internship-head dl{grid-template-columns:1fr}.parent-internship-head dl>div{grid-template-columns:minmax(0,1fr) auto;align-items:center;border-right:0;border-bottom:1px solid var(--line)}.parent-internship-head dl>div:last-child{border-bottom:0}}.substitute-content-editor{display:grid;gap:16px;color:#1d2939}.substitute-content-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;border:1px solid #d5dee6;background:#fff;border-radius:8px}.substitute-content-header>div{display:flex;align-items:center;gap:14px}.substitute-content-header button{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:#01557e;font:700 13px Ubuntu,sans-serif;cursor:pointer}.substitute-content-header small,.substitute-content-panel .panel-heading small{display:block;color:#687586;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.substitute-content-header h2,.substitute-content-panel h3{margin:2px 0 0;color:#172033}.substitute-content-header h2{font-size:21px}.substitute-content-header>div:last-child{gap:7px}.substitute-content-header>div:last-child span{padding:7px 10px;border:1px solid #dbe3ea;border-radius:5px;background:#f7f9fb;color:#475467;font-size:12px;font-weight:700}.substitute-content-lock{padding:11px 14px;border:1px solid #e6c76b;border-radius:6px;background:#fffae8;color:#745c12;font-size:13px;font-weight:600}.substitute-content-grid{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(440px,1.2fr);gap:16px;align-items:start}.substitute-content-panel{min-width:0;border:1px solid #d5dee6;border-radius:8px;background:#fff}.substitute-content-panel .panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid #e3e8ee}.substitute-content-panel .panel-heading h3{font-size:16px}.substitute-content-panel .panel-heading>button:not(.icon),.substitute-task-options>button,.substitute-material-viewer button,.substitute-viewer-state button{display:inline-flex;align-items:center;gap:6px;border:1px solid #bfd1dc;border-radius:5px;background:#fff;padding:8px 11px;color:#01557e;font:700 12px Ubuntu,sans-serif;cursor:pointer}.substitute-content-panel .panel-heading>button:not(.icon){border-color:#01557e;background:#01557e;color:#fff}.substitute-content-panel .panel-heading .icon{border:0;background:transparent;color:#667085;cursor:pointer}.substitute-editor-task-list{display:grid;padding:8px}.substitute-editor-task-list article{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;padding:11px 9px;border:1px solid transparent;border-bottom-color:#e7ebef;cursor:pointer}.substitute-editor-task-list article:hover,.substitute-editor-task-list article.active{border-color:#9ebdcd;background:#f1f7fa;border-radius:5px}.substitute-editor-task-list article>svg{color:#98a2b3}.substitute-editor-task-list article>div:nth-child(2){display:grid;gap:3px;min-width:0}.substitute-editor-task-list small{color:#697586;font-size:10px;text-transform:uppercase;font-weight:700}.substitute-editor-task-list strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.substitute-editor-task-list span{color:#667085;font-size:11px}.substitute-editor-task-list article>div:last-child{display:flex;gap:3px}.substitute-editor-task-list article button{display:grid;place-items:center;width:27px;height:27px;border:1px solid #d8e0e7;border-radius:4px;background:#fff;color:#536171;cursor:pointer}.substitute-editor-task-list article button.danger{color:#b42318}.substitute-editor-task-list article button:disabled{opacity:.35;cursor:not-allowed}.substitute-content-empty{display:flex;min-height:220px;flex-direction:column;align-items:center;justify-content:center;gap:7px;padding:28px;text-align:center;color:#667085}.substitute-content-empty svg{color:#8aa9b8}.substitute-content-empty strong{color:#344054}.substitute-content-empty span{max-width:350px;font-size:12px;line-height:1.5}.substitute-content-empty.form{min-height:550px}.substitute-content-empty.compact{min-height:130px}.substitute-task-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:16px}.substitute-task-form-grid label,.substitute-material-scope label{display:grid;gap:6px}.substitute-task-form-grid label.wide{grid-column:1/-1}.substitute-task-form-grid label>span,.substitute-task-options>span,.substitute-material-scope label>span{color:#344054;font-size:12px;font-weight:700}.substitute-task-form-grid label>span small{margin-left:5px;color:#7a8696;font-weight:400}.substitute-task-form-grid input,.substitute-task-form-grid textarea,.substitute-task-form-grid select,.substitute-material-scope select{width:100%;box-sizing:border-box;border:1px solid #cfd8e1;border-radius:5px;background:#fff;padding:9px 10px;color:#1d2939;font:13px Ubuntu,sans-serif}.substitute-task-form-grid textarea{min-height:76px;resize:vertical}.substitute-task-form-grid input:focus,.substitute-task-form-grid textarea:focus,.substitute-task-form-grid select:focus,.substitute-material-scope select:focus{outline:2px solid rgba(0,95,134,.17);border-color:#005f86}.substitute-task-options{display:grid;gap:7px}.substitute-task-options>div{display:grid;grid-template-columns:34px minmax(0,1fr) 34px;gap:6px}.substitute-task-options>div button{display:grid;place-items:center;border:1px solid #d2dae2;border-radius:4px;background:#fff;color:#667085;cursor:pointer}.substitute-task-options>div button.correct{border-color:#168153;background:#eaf8f0;color:#147247}.substitute-task-toggles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0 16px 16px}.substitute-task-toggles label{display:flex;align-items:flex-start;gap:8px;padding:9px;border:1px solid #dfe5eb;border-radius:5px;background:#fafbfc}.substitute-task-toggles label span{display:grid;gap:2px}.substitute-task-toggles strong{font-size:12px}.substitute-task-toggles small{color:#697586;font-size:10px}.substitute-content-panel.task-form footer{display:flex;justify-content:flex-end;padding:13px 16px;border-top:1px solid #e3e8ee}.substitute-content-panel.task-form footer .primary{display:inline-flex;align-items:center;gap:7px;border:1px solid #01557e;border-radius:5px;background:#01557e;padding:9px 14px;color:#fff;font:700 13px Ubuntu,sans-serif;cursor:pointer}.substitute-task-timeline{padding:14px 16px 11px;border:1px solid #d5dee6;border-radius:8px;background:#fff}.substitute-timeline-track{position:relative;height:38px;overflow:hidden;border:1px solid #d6dfe6;border-radius:5px;background:repeating-linear-gradient(90deg,#f5f7f9 0 calc(10% - 1px),#e8edf1 calc(10% - 1px) 10%)}.substitute-timeline-block{position:absolute;left:var(--timeline-left);width:var(--timeline-width);top:4px;bottom:4px;overflow:hidden;border:0;border-radius:4px;padding:0 6px;background:#536f87;color:#fff;text-align:left;font:700 10px Ubuntu,sans-serif;cursor:pointer}.substitute-timeline-block span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.substitute-timeline-block.type-mcq,.substitute-timeline-legend i.type-mcq{background:#286f9b}.substitute-timeline-block.type-short_answer,.substitute-timeline-legend i.type-short_answer{background:#536ba5}.substitute-timeline-block.type-long_answer,.substitute-timeline-legend i.type-long_answer{background:#6c6296}.substitute-timeline-block.type-true_false,.substitute-timeline-legend i.type-true_false{background:#317e75}.substitute-timeline-block.type-file_upload,.substitute-timeline-legend i.type-file_upload{background:#9a6733}.substitute-timeline-block.type-info_block,.substitute-timeline-legend i.type-info_block{background:#687586}.substitute-timeline-cursor{position:absolute;z-index:4;top:0;bottom:0;width:2px;background:#d92d20}.substitute-timeline-markers{position:relative;height:19px;margin-top:3px}.substitute-timeline-markers span{position:absolute;transform:translate(-50%);color:#7a8696;font-size:10px}.substitute-timeline-warnings{display:flex;flex-wrap:wrap;gap:10px;margin-top:5px;color:#b42318;font-size:11px;font-weight:700}.substitute-timeline-legend{display:flex;flex-wrap:wrap;gap:6px 12px;margin-top:3px}.substitute-timeline-legend button{display:flex;align-items:center;gap:5px;border:0;background:transparent;padding:2px 0;color:#475467;font:11px Ubuntu,sans-serif;cursor:pointer}.substitute-timeline-legend i{width:9px;height:9px;border-radius:2px;background:#536f87}.substitute-timeline-legend em{color:#84909f;font-style:normal}.substitute-content-panel.materials{padding-bottom:12px}.substitute-content-panel.materials>.panel-heading>span{color:#667085;font-size:12px;font-weight:700}.substitute-material-controls{display:grid;grid-template-columns:minmax(280px,.75fr) minmax(330px,1.25fr);gap:14px;padding:14px}.substitute-material-scope{display:grid;align-content:start;gap:10px}.substitute-material-task-picker{display:grid;max-height:140px;overflow:auto;gap:4px;padding:8px;border:1px solid #dbe2e8;border-radius:5px}.substitute-material-task-picker label{display:flex;align-items:center;gap:6px;color:#475467;font-size:11px}.substitute-material-drop{display:flex;min-height:145px;flex-direction:column;align-items:center;justify-content:center;gap:6px;border:1.5px dashed #9db5c3;border-radius:6px;background:#f7fafb;color:#617381;text-align:center;cursor:pointer}.substitute-material-drop:hover{border-color:#005f86;background:#f0f7fa}.substitute-material-drop strong{color:#344054;font-size:13px}.substitute-material-drop span{font-size:11px}.substitute-material-list{display:grid;gap:6px;padding:0 14px}.substitute-material-list article{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:10px 11px;border:1px solid #dce3e9;border-radius:5px}.substitute-material-list article>svg{color:#005f86}.substitute-material-list article>div{display:grid;gap:3px;min-width:0}.substitute-material-list strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.substitute-material-list span{color:#697586;font-size:10px}.substitute-material-list button{display:inline-flex;align-items:center;gap:5px;border:1px solid #d4dee5;border-radius:4px;background:#fff;padding:6px 8px;color:#01557e;font:700 11px Ubuntu,sans-serif;cursor:pointer}.substitute-material-list button.danger{color:#b42318}.substitute-material-viewer-overlay{position:fixed;z-index:1000;inset:0;display:grid;place-items:center;padding:24px;background:#10182894}.substitute-material-viewer{display:grid;grid-template-rows:auto minmax(0,1fr);width:min(1100px,96vw);height:min(820px,92vh);overflow:hidden;border-radius:8px;background:#fff;box-shadow:0 20px 60px #10182847}.substitute-material-viewer header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 13px;border-bottom:1px solid #dce3e9}.substitute-material-viewer header>div{display:flex;align-items:center;gap:9px}.substitute-material-viewer header span{display:grid}.substitute-material-viewer header strong{font-size:13px}.substitute-material-viewer header small{color:#697586;font-size:10px}.substitute-material-viewer main{min-height:0;background:#eef2f5}.substitute-material-viewer iframe{width:100%;height:100%;border:0;background:#fff}.substitute-viewer-state{display:flex;height:100%;flex-direction:column;align-items:center;justify-content:center;gap:9px;color:#667085;text-align:center}.substitute-viewer-state strong{color:#344054}.substitute-viewer-state.error{color:#b42318}.substitute-content-loading{display:flex;min-height:420px;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#667085}.substitute-content-loading button{border:1px solid #01557e;border-radius:5px;background:#01557e;padding:8px 12px;color:#fff}.spin{animation:substitute-spin .8s linear infinite}@keyframes substitute-spin{to{transform:rotate(360deg)}}.substitute-material-viewer main>img{display:block;width:100%;height:100%;object-fit:contain;background:#101820}@media(max-width:980px){.substitute-content-grid{grid-template-columns:1fr}.substitute-content-empty.form{min-height:260px}.substitute-material-controls{grid-template-columns:1fr}}@media(max-width:680px){.substitute-content-header{align-items:flex-start;flex-direction:column}.substitute-content-header>div:last-child{flex-wrap:wrap}.substitute-task-form-grid,.substitute-task-toggles{grid-template-columns:1fr}.substitute-task-form-grid label.wide{grid-column:auto}.substitute-material-list article{grid-template-columns:auto minmax(0,1fr) auto}.substitute-material-list button.danger{grid-column:3}.substitute-material-viewer-overlay{padding:0}.substitute-material-viewer{width:100vw;height:100dvh;border-radius:0}}[data-theme=dark] .parent-internship-result-table em.status-passed,[data-theme=dark] .parent-internship-result-table em.status-failed,[data-theme=dark] .parent-internship-result-table em.status-pending{border-color:var(--line);color:var(--ink);background:var(--surface-soft)}.assessment-internship-weeks{display:grid;gap:16px}.assessment-internship-workspace{container:internship / inline-size;display:grid;grid-template-columns:minmax(0,1fr);width:100%;max-width:1560px;margin-inline:auto;gap:16px}.assessment-internship-workspace-head{display:grid;min-width:0;grid-template-columns:minmax(0,1fr) auto;gap:16px 24px;border:1px solid var(--line);border-top:4px solid var(--brand);border-radius:10px;padding:20px;background:var(--surface)}.assessment-internship-workspace-identity{min-width:0}.assessment-internship-workspace-identity h1{margin:4px 0 5px;color:var(--ink);font-size:clamp(1.55rem,2.7vw,2rem);letter-spacing:-.02em}.assessment-internship-workspace-identity p{max-width:720px;margin:0;color:var(--muted);font-size:.9rem;line-height:1.5}.assessment-internship-workspace-head>.assessment-secondary-button{align-self:start;white-space:nowrap}.assessment-internship-workspace-controls{grid-column:1 / -1;display:grid;grid-template-columns:minmax(240px,1fr) minmax(135px,.34fr) minmax(150px,.38fr);gap:12px;align-items:end;border-top:1px solid var(--line);padding-top:16px}.assessment-internship-workspace-select{min-width:0;margin:0}.assessment-internship-workspace-select select{width:100%;min-width:0}.assessment-internship-workspace-week{display:grid;grid-template-columns:minmax(0,1fr) 40px;gap:7px;align-items:end;min-width:0}.assessment-internship-workspace-week>button{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--line);border-radius:7px;color:var(--brand);background:var(--surface);cursor:pointer}.assessment-internship-workspace-week>button:hover{border-color:var(--brand);background:var(--soft)}.assessment-internship-workspace-progress{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 10px;align-content:end;min-height:58px}.assessment-internship-workspace-progress>span{color:var(--muted);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.assessment-internship-workspace-progress>strong{grid-row:1 / 3;grid-column:2;align-self:center;color:var(--brand);font-size:1rem}.assessment-internship-workspace-progress>div{height:5px;overflow:hidden;border-radius:999px;background:var(--surface-muted)}.assessment-internship-workspace-progress i{display:block;height:100%;border-radius:inherit;background:var(--brand);transition:width .2s ease}.assessment-internship-flow-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.assessment-internship-flow-nav button{display:grid;grid-template-columns:36px minmax(0,1fr);gap:10px;align-items:start;min-width:0;border:1px solid var(--line);border-radius:9px;padding:12px;background:var(--surface);color:var(--muted);font:inherit;text-align:left;cursor:pointer}.assessment-internship-flow-nav button:hover{border-color:color-mix(in srgb,var(--brand) 55%,var(--line))}.assessment-internship-flow-nav button.active{border-color:var(--brand);box-shadow:inset 0 -3px 0 var(--brand);background:var(--soft)}.assessment-internship-flow-icon{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--line);border-radius:8px;color:var(--brand);background:var(--surface)}.assessment-internship-flow-copy{display:grid;min-width:0;gap:2px}.assessment-internship-flow-copy small{color:var(--muted);font-size:.67rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.assessment-internship-flow-copy strong{color:var(--ink);font-size:.92rem}.assessment-internship-flow-copy em{overflow:hidden;color:var(--muted);font-size:.75rem;font-style:normal;line-height:1.35}.assessment-internship-instance-manager{display:grid;gap:14px;border:1px solid var(--line);border-left:4px solid var(--brand);border-radius:9px;padding:16px;background:var(--surface)}.assessment-internship-setup-workspace{display:grid;gap:16px}.assessment-internship-setup-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,330px);gap:16px;align-items:start}.assessment-internship-setup-main,.assessment-internship-setup-summary,.assessment-internship-grouping-workspace,.assessment-internship-state-panel{border:1px solid var(--line);border-radius:9px;background:var(--surface)}.assessment-internship-setup-main,.assessment-internship-grouping-workspace{padding:18px}.assessment-internship-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:16px;border-bottom:1px solid var(--line)}.assessment-internship-section-heading>div{min-width:0}.assessment-internship-section-heading h2{margin:4px 0;color:var(--ink);font-size:clamp(1.15rem,2vw,1.4rem)}.assessment-internship-section-heading p{max-width:760px;margin:0;color:var(--muted);font-size:.84rem;line-height:1.5}.assessment-internship-section-heading.compact{margin-bottom:16px}.assessment-internship-access-badge,.assessment-internship-count-badge{flex:0 0 auto;border:1px solid var(--line);border-radius:999px;padding:6px 9px;color:var(--muted);background:var(--surface-soft);font-size:.72rem;font-weight:800;white-space:nowrap}.assessment-internship-access-badge.editable{border-color:#a8d6c0;color:#17613f;background:#f3fbf7}.assessment-internship-system-note,.assessment-internship-capacity-note{display:flex;gap:9px;border:1px solid var(--line);border-left:3px solid var(--brand);border-radius:7px;padding:10px 12px;background:var(--surface-soft)}.assessment-internship-system-note{margin-top:14px}.assessment-internship-system-note>svg,.assessment-internship-capacity-note>svg{flex:0 0 auto;color:var(--brand)}.assessment-internship-system-note>div,.assessment-internship-capacity-note>div{display:grid;gap:2px}.assessment-internship-system-note strong,.assessment-internship-capacity-note strong{color:var(--ink);font-size:.82rem}.assessment-internship-system-note span,.assessment-internship-capacity-note span{color:var(--muted);font-size:.76rem;line-height:1.4}.assessment-internship-config-section{padding:16px 0;border-bottom:1px solid var(--line)}.assessment-internship-config-section:last-child{padding-bottom:0;border-bottom:0}.assessment-internship-config-head{display:grid;grid-template-columns:34px minmax(0,1fr) auto auto;gap:10px;align-items:center;margin-bottom:12px}.assessment-internship-config-head>span{display:grid;place-items:center;width:32px;height:32px;border-radius:7px;background:var(--soft);color:var(--brand)}.assessment-internship-config-head>div{display:grid;gap:1px;min-width:0}.assessment-internship-config-head strong{color:var(--ink);font-size:.9rem}.assessment-internship-config-head small{color:var(--muted);font-size:.76rem}.assessment-internship-config-head>em{grid-column:4;grid-row:1;display:grid;place-items:center;width:24px;height:24px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.72rem;font-style:normal;font-weight:900}.assessment-internship-config-head>.assessment-inline-link{grid-column:3;grid-row:1}.assessment-internship-choice-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,175px),1fr));gap:8px}.assessment-internship-choice{position:relative;display:grid;grid-template-columns:20px minmax(0,1fr);gap:1px 8px;min-width:0;min-height:58px;border:1px solid var(--line);border-radius:7px;padding:9px;background:var(--surface);color:var(--ink);font:inherit;text-align:left;cursor:pointer}.assessment-internship-choice:hover{border-color:var(--brand)}.assessment-internship-choice.active{border-color:var(--brand);background:var(--soft)}.assessment-internship-choice:disabled{opacity:.66;cursor:default}.assessment-internship-choice-mark{grid-row:1 / 3;display:grid;place-items:center;width:18px;height:18px;margin-top:1px;border:1px solid var(--line);border-radius:5px;color:#fff;background:var(--surface)}.assessment-internship-choice.active .assessment-internship-choice-mark{border-color:var(--brand);background:var(--brand)}.assessment-internship-choice strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.82rem}.assessment-internship-choice small{grid-column:2;color:var(--muted);font-size:.72rem}.assessment-internship-setup-summary{position:sticky;top:16px;display:grid;gap:14px;padding:16px;border-top:4px solid var(--brand)}.assessment-internship-summary-title h3{margin:4px 0;color:var(--ink);font-size:1.2rem}.assessment-internship-summary-title p{margin:0;color:var(--muted);font-size:.78rem;line-height:1.45}.assessment-internship-summary-metrics{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:0;border:1px solid var(--line);border-radius:7px;overflow:hidden}.assessment-internship-summary-metrics>div{display:grid;gap:2px;padding:10px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.assessment-internship-summary-metrics>div:nth-child(2n){border-right:0}.assessment-internship-summary-metrics>div:nth-last-child(-n+2){border-bottom:0}.assessment-internship-summary-metrics dt{color:var(--muted);font-size:.7rem;font-weight:800;text-transform:uppercase}.assessment-internship-summary-metrics dd{margin:0;color:var(--ink);font-size:1.05rem;font-weight:900}.assessment-internship-summary-actions{display:grid;gap:8px}.assessment-internship-summary-actions .assessment-primary-button,.assessment-internship-summary-actions .assessment-secondary-button{width:100%;justify-content:center}.assessment-internship-summary-footnote{color:var(--muted);font-size:.72rem;line-height:1.45}.assessment-internship-state-panel{display:grid;place-items:center;gap:8px;min-height:140px;padding:18px;color:var(--muted)}.assessment-internship-grouping-controls{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(150px,.55fr) minmax(360px,1.5fr);gap:12px;align-items:start;margin-bottom:16px}.assessment-internship-grouping-rules{display:grid;grid-template-columns:1fr 1fr;gap:8px}.assessment-internship-group-board{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:10px}.assessment-internship-group-card{min-width:0;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--surface)}.assessment-internship-group-card>header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 12px;border-bottom:1px solid var(--line);background:var(--surface-soft)}.assessment-internship-group-card>header>div{display:grid;gap:1px;min-width:0}.assessment-internship-group-card>header strong{overflow:hidden;color:var(--ink);text-overflow:ellipsis;white-space:nowrap}.assessment-internship-group-card>header span{color:var(--muted);font-size:.72rem;font-weight:800}.assessment-internship-group-roster{display:grid;max-height:330px;overflow-y:auto}.assessment-internship-group-roster>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(100px,120px);gap:8px;align-items:center;min-width:0;padding:8px 10px;border-bottom:1px solid var(--line)}.assessment-internship-group-roster>div:last-child{border-bottom:0}.assessment-internship-group-roster>div>span{display:grid;min-width:0;gap:1px}.assessment-internship-group-roster strong{overflow:hidden;color:var(--ink);font-size:.77rem;text-overflow:ellipsis;white-space:nowrap}.assessment-internship-group-roster small{color:var(--muted);font-size:.68rem}.assessment-internship-group-roster select{width:100%;min-width:0;border:1px solid var(--input-border);border-radius:6px;padding:6px;color:var(--ink);background:var(--input-bg);font:inherit;font-size:.72rem}.assessment-internship-empty-state{display:grid;justify-items:center;gap:6px;min-height:180px;padding:28px;color:var(--muted);text-align:center}.assessment-internship-empty-state>svg{color:var(--brand)}.assessment-internship-empty-state strong{color:var(--ink)}.assessment-internship-empty-state p{margin:0;font-size:.8rem}.assessment-internship-plan-workspace{display:grid;gap:14px}.assessment-internship-plan-header,.assessment-internship-activity-toolbar,.assessment-internship-activity-editor,.assessment-internship-agenda,.assessment-internship-day-control{border:1px solid var(--line);border-radius:9px;background:var(--surface)}.assessment-internship-plan-header{display:grid;gap:14px;padding:16px}.assessment-internship-plan-title{display:flex;align-items:end;justify-content:space-between;gap:18px}.assessment-internship-plan-title>div{min-width:0}.assessment-internship-plan-title h2{margin:3px 0;color:var(--ink);font-size:clamp(1.25rem,2.3vw,1.55rem)}.assessment-internship-plan-title p{margin:0;color:var(--muted);font-size:.82rem;line-height:1.45}.assessment-internship-day-rail{display:flex;gap:7px;overflow-x:auto;padding:1px 1px 4px;scrollbar-width:thin}.assessment-internship-day-rail button{display:inline-flex;flex:0 0 auto;align-items:center;gap:9px;min-height:40px;border:1px solid var(--line);border-radius:7px;padding:7px 10px;background:var(--surface);color:var(--muted);font:inherit;font-size:.8rem;font-weight:800;cursor:pointer}.assessment-internship-day-rail button strong{display:grid;place-items:center;min-width:22px;min-height:22px;border-radius:999px;background:var(--surface-muted);color:var(--muted);font-size:.7rem}.assessment-internship-day-rail button.active{border-color:var(--brand);background:var(--soft);color:var(--brand)}.assessment-internship-day-rail button.active strong{background:var(--brand);color:#fff}.assessment-internship-inline-error{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:9px;align-items:center;border:1px solid #e4aaaa;border-radius:7px;padding:9px 11px;color:#8c2020;background:#fff8f8}.assessment-internship-inline-error span{font-size:.8rem}.assessment-internship-inline-error button{border:0;padding:4px;color:inherit;background:transparent;font:inherit;font-size:.78rem;font-weight:800;cursor:pointer}.assessment-internship-plan-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(245px,290px);gap:14px;align-items:start}.assessment-internship-plan-canvas{display:grid;min-width:0;gap:12px}.assessment-internship-activity-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px}.assessment-internship-activity-toolbar>div:first-child{display:grid;min-width:0;gap:2px}.assessment-internship-activity-toolbar strong{color:var(--ink);font-size:.9rem}.assessment-internship-activity-toolbar span{color:var(--muted);font-size:.75rem}.assessment-internship-activity-toolbar>div:last-child{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.assessment-internship-activity-toolbar button{display:inline-flex;align-items:center;gap:6px;min-height:36px;border:1px solid var(--line);border-radius:7px;padding:7px 9px;color:var(--ink);background:var(--surface);font:inherit;font-size:.78rem;font-weight:800;cursor:pointer}.assessment-internship-activity-toolbar button:hover,.assessment-internship-activity-toolbar button.active{border-color:var(--brand);color:var(--brand);background:var(--soft)}.assessment-internship-activity-toolbar button:disabled{opacity:.5;cursor:not-allowed}.assessment-internship-activity-editor{border-left:4px solid var(--brand);overflow:hidden;scroll-margin-top:14px}.assessment-internship-activity-editor>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:13px 15px;border-bottom:1px solid var(--line);background:var(--surface-soft)}.assessment-internship-activity-editor h3{margin:3px 0 0;color:var(--ink);font-size:1.05rem}.assessment-internship-activity-editor>header>button{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--line);border-radius:7px;color:var(--muted);background:var(--surface);cursor:pointer}.assessment-internship-editor-body{display:grid;gap:12px;padding:15px}.assessment-internship-editor-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid var(--line);padding-top:12px}.assessment-internship-editor-actions>span{max-width:620px;color:var(--muted);font-size:.76rem;line-height:1.45}.assessment-internship-agenda{min-width:0;overflow:hidden}.assessment-internship-agenda>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;border-bottom:1px solid var(--line)}.assessment-internship-agenda>header h3{margin:3px 0 0;color:var(--ink);font-size:1rem}.assessment-internship-agenda>header>span{color:var(--muted);font-size:.75rem;font-weight:800}.assessment-internship-agenda-table{min-width:0}.assessment-internship-agenda-head,.assessment-internship-agenda-row{display:grid;grid-template-columns:64px 90px minmax(180px,1fr) minmax(108px,.42fr) minmax(180px,auto);gap:10px;align-items:center;min-width:0}.assessment-internship-agenda-head{padding:8px 12px;border-bottom:1px solid var(--line);color:var(--muted);background:var(--surface-soft);font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.assessment-internship-agenda-row{padding:10px 12px;border-bottom:1px solid var(--line)}.assessment-internship-agenda-row:last-child{border-bottom:0}.assessment-internship-agenda-row>time{color:var(--ink);font-size:.8rem;font-weight:900}.assessment-internship-kind-label{justify-self:start;border:1px solid var(--line);border-left:3px solid var(--brand);border-radius:5px;padding:4px 6px;color:var(--ink);background:var(--surface-soft);font-size:.7rem;font-weight:800}.assessment-internship-agenda-row.exam .assessment-internship-kind-label{border-left-color:#313f52}.assessment-internship-agenda-copy{display:grid;min-width:0;gap:2px}.assessment-internship-agenda-copy strong{overflow:hidden;color:var(--ink);font-size:.82rem;text-overflow:ellipsis;white-space:nowrap}.assessment-internship-agenda-copy small{overflow:hidden;color:var(--muted);font-size:.7rem;text-overflow:ellipsis;white-space:nowrap}.assessment-internship-lifecycle-status{display:inline-flex;align-items:center;width:100%;min-width:0;border:1px solid var(--line);border-radius:6px;padding:6px 7px;color:var(--muted);background:var(--surface-soft);font:inherit;font-size:.72rem;font-weight:800}.assessment-internship-lifecycle-status.status-draft{color:#5f6670;background:#f3f4f5}.assessment-internship-lifecycle-status.status-scheduled{border-color:#9fc8d8;color:#075b78;background:#f0f8fb}.assessment-internship-lifecycle-status.status-open{border-color:#9bcdb2;color:#17613f;background:#f3fbf7}.assessment-internship-lifecycle-status.status-closed{border-color:#bbc2ca;color:#39434d;background:#f5f6f7}.assessment-internship-lifecycle-status.status-published{border-color:#9fb2d8;color:#284d83;background:#f3f6fb}.assessment-internship-agenda-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px}.assessment-internship-agenda-actions button{display:inline-flex;align-items:center;gap:4px;min-height:31px;border:1px solid var(--line);border-radius:6px;padding:5px 7px;color:var(--ink);background:var(--surface);font:inherit;font-size:.68rem;font-weight:800;cursor:pointer}.assessment-internship-agenda-actions button:hover{border-color:var(--brand);color:var(--brand)}.assessment-internship-agenda-actions button.danger{color:#9a2b2b}.assessment-internship-schedule-editor{display:grid;grid-template-columns:minmax(120px,160px) minmax(120px,160px) auto;grid-column:1 / -1;align-items:end;gap:10px;border-top:1px dashed var(--line);padding-top:10px}.assessment-internship-schedule-editor label{display:grid;gap:4px;color:var(--muted);font-size:.7rem;font-weight:800}.assessment-internship-schedule-editor input{min-height:34px;border:1px solid var(--line);border-radius:6px;padding:5px 8px;color:var(--ink);background:var(--surface);font:inherit}.assessment-internship-schedule-editor>div{display:flex;flex-wrap:wrap;gap:6px}.assessment-internship-schedule-editor button{min-height:34px;border:1px solid var(--line);border-radius:6px;padding:6px 10px;color:var(--ink);background:var(--surface);font:inherit;font-size:.72rem;font-weight:800;cursor:pointer}.assessment-internship-schedule-editor button.primary{border-color:var(--color-primary-button);color:var(--color-white);background:var(--color-primary-button)}.assessment-internship-schedule-editor small{grid-column:1 / -1;color:var(--muted);font-size:.68rem}.assessment-internship-slot-strip{display:grid;gap:7px;border-top:1px solid var(--line);padding:11px 13px}.assessment-internship-slot-strip>strong{color:var(--ink);font-size:.78rem}.assessment-internship-slot-strip>div{display:flex;flex-wrap:wrap;gap:6px}.assessment-internship-slot-strip span{border:1px solid var(--line);border-radius:5px;padding:5px 7px;color:var(--muted);background:var(--surface-soft);font-size:.7rem}.assessment-internship-day-control{position:sticky;top:16px;padding:14px}.assessment-internship-day-control>header{padding-bottom:11px;border-bottom:1px solid var(--line)}.assessment-internship-day-control h3{margin:3px 0 0;color:var(--ink);font-size:1.05rem}.assessment-internship-day-control ul{display:grid;margin:0;padding:0;list-style:none}.assessment-internship-day-control li{display:grid;grid-template-columns:20px minmax(0,1fr);gap:8px;padding:10px 0;border-bottom:1px solid var(--line);color:var(--muted)}.assessment-internship-day-control li.ready>svg{color:#18794e}.assessment-internship-day-control li>div{display:grid;gap:2px}.assessment-internship-day-control li strong{color:var(--ink);font-size:.78rem}.assessment-internship-day-control li span{color:var(--muted);font-size:.7rem}.assessment-internship-results-workspace{display:grid;min-width:0;gap:14px}.assessment-internship-results-overview,.assessment-internship-results-table-panel{min-width:0;border:1px solid var(--line);border-radius:9px;padding:16px;background:var(--surface)}.assessment-internship-export-controls{display:flex;flex-wrap:wrap;align-items:end;justify-content:flex-end;gap:8px}.assessment-internship-export-controls .assessment-create-field{min-width:190px;margin:0}.assessment-internship-export-controls .assessment-create-field>span{margin-bottom:5px;font-size:.68rem}.assessment-internship-export-controls select{min-height:40px;padding-block:0;font-size:.76rem}.assessment-internship-export-controls .assessment-secondary-button{min-height:40px}.assessment-internship-results-days{margin-top:14px}.assessment-internship-result-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px}.assessment-internship-result-metrics article{display:grid;gap:2px;min-width:0;border:1px solid var(--line);border-left:3px solid var(--muted);border-radius:7px;padding:10px 11px;background:var(--surface-soft)}.assessment-internship-result-metrics article.passed{border-left-color:#18794e}.assessment-internship-result-metrics article.failed{border-left-color:#a22b2b}.assessment-internship-result-metrics article.pending{border-left-color:#9a6a0a}.assessment-internship-result-metrics article.published{border-left-color:var(--brand)}.assessment-internship-result-metrics span{color:var(--muted);font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.assessment-internship-result-metrics strong{color:var(--ink);font-size:1.2rem}.assessment-internship-result-metrics small{overflow:hidden;color:var(--muted);font-size:.7rem;text-overflow:ellipsis;white-space:nowrap}.assessment-internship-evaluation-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;margin-top:12px;border-top:1px solid var(--line);padding-top:12px}.assessment-internship-external-ai-note{display:flex;gap:9px;min-width:0}.assessment-internship-external-ai-note>svg{flex:0 0 auto;color:var(--brand)}.assessment-internship-external-ai-note>div{display:grid;gap:2px}.assessment-internship-external-ai-note strong{color:var(--ink);font-size:.8rem}.assessment-internship-external-ai-note span{max-width:760px;color:var(--muted);font-size:.72rem;line-height:1.4}.assessment-internship-evaluation-actions>div:last-child{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.assessment-internship-ai-source-select{display:grid;gap:3px;min-width:210px}.assessment-internship-ai-source-select span,.assessment-grading-ai-actions label>span{color:var(--muted);font-size:.67rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.assessment-internship-ai-source-select select,.assessment-grading-ai-actions select{min-height:36px;border:1px solid var(--input-border);border-radius:7px;padding:0 9px;color:var(--ink);background:var(--input-bg);font:inherit;font-size:.75rem}.assessment-grading-ai-actions{display:flex;align-items:end;gap:8px}.assessment-grading-ai-actions label{display:grid;gap:4px;min-width:220px;text-align:left}.assessment-grading-ai-actions-wrap{display:grid;gap:8px;justify-items:end}.assessment-ai-missing-hint{display:flex;align-items:flex-start;gap:8px;max-width:420px;border:1px solid #e3c98d;border-radius:8px;padding:8px 12px;background:#fffaf0;color:#76520a;text-align:left}.assessment-ai-missing-hint svg{flex:0 0 auto;margin-top:1px;color:#9a6a0a}.assessment-ai-missing-hint span{font-size:.78rem;line-height:1.4}[data-theme=dark] .assessment-ai-missing-hint{border-color:#6b5220;background:#2c2410;color:#e8c97a}[data-theme=dark] .assessment-ai-missing-hint svg{color:#e8c97a}.assessment-internship-results-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) minmax(170px,220px) auto;gap:10px;align-items:end;margin-bottom:12px}.assessment-internship-results-toolbar>label:first-child{display:grid;grid-template-columns:18px minmax(0,1fr);gap:8px;align-items:center;min-height:42px;border:1px solid var(--input-border);border-radius:7px;padding:0 10px;color:var(--muted);background:var(--input-bg)}.assessment-internship-results-toolbar>label:first-child input{min-width:0;border:0;outline:0;color:var(--ink);background:transparent;font:inherit;font-size:.8rem}.assessment-internship-results-toolbar>span{align-self:center;color:var(--muted);font-size:.76rem;font-weight:800;white-space:nowrap}.assessment-internship-results-table-wrap{max-height:min(65vh,720px);border:1px solid var(--line);border-radius:7px}.assessment-internship-results-table thead{position:sticky;top:0;z-index:2;background:var(--surface-soft)}.assessment-internship-results-table th:first-child,.assessment-internship-results-table td:first-child{position:sticky;left:0;z-index:1;background:var(--surface)}.assessment-internship-results-table th:first-child{z-index:3;background:var(--surface-soft)}.assessment-internship-retest-label{display:block;margin-top:4px;color:var(--muted);font-size:.68rem}.assessment-internship-publication-label{display:inline-flex;border:1px solid var(--line);border-radius:999px;padding:4px 7px;color:var(--muted);background:var(--surface-soft);font-size:.68rem;font-weight:800}.assessment-internship-publication-label.published{border-color:#9bcdb2;color:#17613f;background:#f3fbf7}.assessment-internship-empty-table{padding:24px;color:var(--muted);text-align:center}.assessment-internship-results-empty{border:1px solid var(--line);border-radius:9px;background:var(--surface)}.assessment-internship-phase-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0 0 6px;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--surface)}.assessment-internship-phase-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;border:0;border-right:1px solid var(--line);background:transparent;color:var(--muted);font:inherit;font-size:.9rem;font-weight:800;cursor:pointer}.assessment-internship-phase-tabs button:last-child{border-right:0}.assessment-internship-phase-tabs button.active{background:var(--brand);color:#fff}.assessment-internship-phase-tabs+.assessment-subtabs-hint{margin:0 0 14px;padding:0 2px}.assessment-internship-context-bar{display:grid;grid-template-columns:minmax(240px,1fr) minmax(100px,.35fr) auto;gap:14px;align-items:end}.assessment-internship-module-selector{min-width:0;margin:0}.assessment-internship-module-selector select{width:100%;min-width:0}.assessment-inline-input-action{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.assessment-inline-input-action .assessment-primary-button{height:40px;white-space:nowrap}.assessment-internship-step-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.assessment-internship-step-head:first-of-type{border-top:0;padding-top:0}.assessment-internship-step-head strong{color:var(--ink);font-size:.94rem}.assessment-internship-step-head span{color:var(--muted);font-size:.82rem;font-weight:800}.assessment-internship-days-field{max-width:320px;margin-top:10px}.assessment-internship-week-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}.assessment-internship-week-room .assessment-internship-roster-list{max-height:320px}.assessment-internship-week-room .assessment-internship-roster-row select{border:1px solid var(--input-border);border-radius:8px;padding:4px 8px;background:var(--input-bg);color:var(--ink);font:inherit;font-size:.8rem}.assessment-internship-action-footer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center}.assessment-internship-action-footer .assessment-question-quickadd{justify-content:flex-end;margin:0}.assessment-internship-context-bar{border:1px solid var(--line);border-radius:10px;padding:12px;background:var(--surface)}.assessment-internship-context-picker,.assessment-internship-context-meta{display:flex;align-items:center;gap:9px;min-width:0}.assessment-internship-context-picker>svg{flex:0 0 auto;box-sizing:content-box;margin-bottom:4px;padding:8px;border-radius:8px;background:var(--soft);color:var(--brand)}.assessment-internship-context-picker .assessment-internship-module-selector{flex:1 1 auto}.assessment-internship-context-meta{flex-direction:column;align-items:flex-start;gap:2px;padding-bottom:6px}.assessment-internship-context-picker span,.assessment-internship-context-meta span{color:var(--muted);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.assessment-internship-context-meta strong{display:block;width:100%;max-width:100%;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.assessment-internship-context-bar>.assessment-secondary-button{min-width:0;max-width:100%;justify-self:end;white-space:nowrap}.assessment-internship-instance-manager{border-left:3px solid var(--brand)}.assessment-internship-day-flow{display:grid;gap:16px}.assessment-internship-day-header,.assessment-internship-timeline-panel,.assessment-internship-day-summary,.assessment-internship-composer{border:1px solid var(--line);border-radius:10px;background:var(--surface)}.assessment-internship-day-header{padding:16px}.assessment-internship-day-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.assessment-internship-day-heading h2{margin:3px 0 4px;color:var(--ink);font-size:clamp(1.15rem,2vw,1.45rem)}.assessment-internship-day-heading p{margin:0;color:var(--muted);font-size:.86rem}.assessment-eyebrow{color:var(--brand);font-size:.7rem;font-weight:900;letter-spacing:.06em}.assessment-internship-date-field{width:min(220px,100%)}.assessment-internship-week-switcher{display:flex;gap:6px;margin-top:14px;padding-top:12px;border-top:1px solid var(--line);overflow-x:auto}.assessment-internship-week-switcher button{flex:0 0 auto;border:1px solid var(--line);border-radius:7px;padding:7px 11px;background:var(--surface);color:var(--muted);font:inherit;font-size:.8rem;font-weight:800;cursor:pointer}.assessment-internship-week-switcher button.active{border-color:var(--brand);background:var(--soft);color:var(--brand)}.assessment-internship-plan-warning{display:flex;align-items:flex-start;gap:10px;margin-top:12px;border:1px solid #e3c98d;border-radius:8px;padding:10px 12px;background:#fffaf0;color:#76520a}.assessment-internship-plan-warning svg{flex:0 0 auto;margin-top:1px}.assessment-internship-plan-warning div{display:grid;gap:2px}.assessment-internship-plan-warning span{font-size:.82rem;line-height:1.4}.assessment-internship-planner-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,300px);gap:16px;align-items:start}.assessment-internship-timeline-panel,.assessment-internship-day-summary{padding:16px}.assessment-internship-panel-headline{display:flex;align-items:center;justify-content:space-between;gap:12px}.assessment-internship-panel-headline>div{display:flex;align-items:baseline;gap:9px;min-width:0}.assessment-internship-panel-headline strong{color:var(--ink)}.assessment-internship-panel-headline span{color:var(--muted);font-size:.78rem;font-weight:700}.assessment-internship-timeline{position:relative;display:grid;gap:0;margin-top:14px}.assessment-internship-timeline:before{content:"";position:absolute;top:18px;bottom:18px;left:75px;width:1px;background:var(--line)}.assessment-internship-timeline-row{position:relative;display:grid;grid-template-columns:54px 28px minmax(0,1fr);gap:8px;align-items:start;padding:7px 0}.assessment-internship-timeline-row>time{padding-top:12px;color:var(--ink);font-size:.82rem;font-weight:900;text-align:right}.assessment-internship-timeline-marker{z-index:1;display:grid;place-items:center;width:28px;height:28px;margin-top:7px;border:1px solid var(--brand);border-radius:50%;background:var(--surface);color:var(--brand)}.assessment-internship-timeline-row.exam .assessment-internship-timeline-marker{background:var(--brand);color:#fff}.assessment-internship-timeline-content{min-width:0;border:1px solid var(--line);border-radius:8px;padding:11px 12px;background:var(--surface)}.assessment-internship-timeline-title{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.assessment-internship-timeline-title>div{min-width:0}.assessment-internship-timeline-title span{display:block;color:var(--brand);font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.assessment-internship-timeline-title strong{display:block;margin-top:2px;color:var(--ink);overflow-wrap:anywhere}.assessment-internship-timeline-content>p{margin:6px 0 0;color:var(--muted);font-size:.8rem;line-height:1.45}.assessment-internship-row-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.assessment-internship-row-actions .assessment-primary-button,.assessment-internship-row-actions .assessment-secondary-button{min-height:32px;padding:6px 9px;font-size:.76rem;text-decoration:none}.assessment-internship-danger-action{display:inline-flex;align-items:center;gap:5px;border:0;padding:6px 8px;background:transparent;color:var(--danger);font:inherit;font-size:.76rem;font-weight:800;cursor:pointer}.assessment-internship-empty-day{display:grid;justify-items:center;gap:7px;padding:42px 18px;text-align:center;color:var(--muted)}.assessment-internship-empty-day>svg{color:var(--brand)}.assessment-internship-empty-day strong{color:var(--ink)}.assessment-internship-empty-day p{max-width:520px;margin:0;font-size:.84rem;line-height:1.5}.assessment-internship-empty-day>div{display:flex;flex-wrap:wrap;justify-content:center;gap:7px;margin-top:6px}.assessment-internship-empty-day button{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:8px;padding:8px 11px;background:var(--surface);color:var(--ink);font:inherit;font-size:.8rem;font-weight:800;cursor:pointer}.assessment-internship-empty-day button:hover{border-color:var(--brand);color:var(--brand)}.assessment-internship-empty-day button:disabled{opacity:.5;cursor:not-allowed}.assessment-internship-slot-summary{margin-top:12px;border:1px solid var(--line);border-radius:8px;padding:10px 12px}.assessment-internship-slot-summary>strong{color:var(--ink);font-size:.82rem}.assessment-internship-slot-summary>div{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}.assessment-internship-slot-summary span{border:1px solid var(--line);border-radius:6px;padding:5px 7px;color:var(--muted);font-size:.74rem}.assessment-internship-day-summary ul{display:grid;gap:0;margin:13px 0 0;padding:0;list-style:none}.assessment-internship-day-summary li{display:grid;grid-template-columns:20px minmax(0,1fr);gap:8px;padding:10px 0;border-bottom:1px solid var(--line);color:var(--muted)}.assessment-internship-day-summary li.ready>svg{color:#18794e}.assessment-internship-day-summary li>div{display:grid;gap:2px}.assessment-internship-day-summary li strong{color:var(--ink);font-size:.82rem}.assessment-internship-day-summary li span{color:var(--muted);font-size:.76rem}.assessment-internship-group-source{display:flex;gap:8px;margin-top:12px;border-left:3px solid var(--brand);padding:8px 10px;background:var(--surface-soft);color:var(--muted)}.assessment-internship-group-source svg{flex:0 0 auto;color:var(--brand)}.assessment-internship-group-source p{margin:0;font-size:.78rem;line-height:1.45}.assessment-internship-group-source strong{color:var(--ink)}.assessment-internship-composer{padding:16px;scroll-margin-top:16px}.assessment-internship-composer-head{display:flex;justify-content:space-between;gap:12px}.assessment-internship-composer-head h3{margin:3px 0 0;color:var(--ink);font-size:1.05rem}.assessment-internship-composer-head>button{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--muted);cursor:pointer}.assessment-internship-type-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:14px}.assessment-internship-type-picker button{display:grid;grid-template-columns:24px minmax(0,1fr);gap:2px 8px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:10px;background:var(--surface);color:var(--ink);text-align:left;font:inherit;cursor:pointer}.assessment-internship-type-picker button>svg{grid-row:1 / 3;color:var(--brand)}.assessment-internship-type-picker button span{color:var(--muted);font-size:.74rem}.assessment-internship-type-picker button.active{border-color:var(--brand);background:var(--soft)}.assessment-internship-type-picker button:disabled{opacity:.5;cursor:not-allowed}.assessment-internship-composer-body{display:grid;gap:12px;margin-top:14px;border-top:1px solid var(--line);padding-top:14px}.assessment-internship-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.assessment-internship-form-grid.wide-first{grid-template-columns:minmax(220px,1.6fr) minmax(110px,.7fr) minmax(110px,.7fr)}.assessment-internship-file-drop{display:grid;justify-items:center;gap:4px;border:1px dashed var(--brand);border-radius:8px;padding:24px;background:var(--surface-soft);color:var(--brand);text-align:center;cursor:pointer}.assessment-internship-file-drop span{color:var(--muted);font-size:.78rem}.assessment-internship-file-drop input{position:absolute;width:1px;height:1px;opacity:0}.assessment-internship-advanced{border:1px solid var(--line);border-radius:8px;background:var(--surface-soft)}.assessment-internship-advanced summary{display:flex;align-items:center;gap:7px;padding:10px 12px;color:var(--ink);font-size:.82rem;font-weight:800;cursor:pointer;list-style:none}.assessment-internship-advanced summary::-webkit-details-marker{display:none}.assessment-internship-advanced summary span{margin-left:auto;color:var(--muted);font-size:.72rem;font-weight:700}.assessment-internship-advanced[open]{padding-bottom:12px}.assessment-internship-advanced[open] summary{border-bottom:1px solid var(--line);margin-bottom:12px}.assessment-internship-advanced>.assessment-create-field,.assessment-internship-advanced>.assessment-internship-toggle-grid{margin-inline:12px}.assessment-internship-auto-group-note{display:flex;gap:9px;border:1px solid #a8d6c0;border-radius:8px;padding:10px 12px;background:#f3fbf7;color:#17613f}.assessment-internship-auto-group-note svg{flex:0 0 auto}.assessment-internship-auto-group-note>div{display:grid;gap:2px}.assessment-internship-auto-group-note span{font-size:.8rem}.assessment-internship-composer-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid var(--line);padding-top:12px}.assessment-internship-composer-actions>span{max-width:600px;color:var(--muted);font-size:.78rem;line-height:1.45}.assessment-internship-question-workspace{container:internship-question / inline-size;display:grid;width:100%;max-width:1560px;margin-inline:auto;gap:14px}.assessment-internship-question-workspace .assessment-create-field{margin-bottom:0}.assessment-internship-question-workspace .assessment-create-field>span{margin-bottom:7px}.assessment-internship-question-workspace .assessment-question-editor{gap:12px;border-color:var(--line);border-left:3px solid var(--brand);border-radius:7px;padding:14px;background:var(--surface);box-shadow:none}.assessment-internship-question-workspace .assessment-question-editor>label,.assessment-internship-question-workspace .assessment-question-editor-head label,.assessment-internship-question-workspace .assessment-form-grid label,.assessment-internship-question-workspace .assessment-code-block label{color:var(--ink)}.assessment-internship-question-workspace .assessment-question-editor-head>span{border-color:var(--line);color:var(--brand);background:var(--soft)}.assessment-internship-question-workspace .assessment-question-editor-head button,.assessment-internship-question-workspace .assessment-question-editor input,.assessment-internship-question-workspace .assessment-question-editor select,.assessment-internship-question-workspace .assessment-question-editor textarea{border-color:var(--input-border);color:var(--ink);background:var(--input-bg);box-shadow:none}.assessment-file-input-visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.assessment-internship-source-actions>label:focus-within{outline:3px solid color-mix(in srgb,var(--brand) 28%,transparent);outline-offset:2px}.assessment-internship-source-actions>label:has(input:disabled){opacity:.52;cursor:not-allowed}.assessment-internship-question-head{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:14px;align-items:center;border:1px solid var(--line);border-top:4px solid var(--brand);border-radius:9px;padding:16px;background:var(--surface)}.assessment-internship-question-head>button:first-child{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--line);border-radius:7px;color:var(--brand);background:var(--surface);cursor:pointer}.assessment-internship-question-head>div:nth-child(2){min-width:0}.assessment-internship-question-head h1{overflow:hidden;margin:3px 0;color:var(--ink);font-size:clamp(1.25rem,2.4vw,1.65rem);letter-spacing:-.015em;text-overflow:ellipsis;white-space:nowrap}.assessment-internship-question-head p{margin:0;color:var(--muted);font-size:.78rem}.assessment-internship-question-head>div:last-child{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.assessment-internship-question-head .assessment-autosave{min-height:36px;padding-inline:10px}.assessment-internship-question-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line);border-radius:9px;overflow:hidden;background:var(--surface)}.assessment-internship-question-tabs button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;border:0;border-right:1px solid var(--line);padding:8px 12px;color:var(--muted);background:transparent;font:inherit;cursor:pointer}.assessment-internship-question-tabs button:last-child{border-right:0}.assessment-internship-question-tabs button>span{display:grid;place-items:center;width:23px;height:23px;border:1px solid var(--line);border-radius:50%;color:var(--muted);background:var(--surface);font-size:.7rem;font-weight:900}.assessment-internship-question-tabs button strong{font-size:.82rem}.assessment-internship-question-tabs button:hover{color:var(--brand);background:var(--surface-soft)}.assessment-internship-question-tabs button.active{box-shadow:inset 0 -3px 0 var(--brand);color:var(--brand);background:var(--soft)}.assessment-internship-question-tabs button.active>span{border-color:var(--brand);color:#fff;background:var(--brand)}.assessment-internship-question-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(245px,285px);gap:14px;align-items:start;min-width:0}.assessment-internship-question-main{min-width:0}.assessment-internship-question-section,.assessment-internship-question-summary{border:1px solid var(--line);border-radius:9px;background:var(--surface)}.assessment-internship-question-section{display:grid;gap:16px;padding:18px}.assessment-internship-question-section>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding-bottom:14px}.assessment-internship-question-section>header>div{min-width:0}.assessment-internship-question-section>header h2{margin:4px 0;color:var(--ink);font-size:1.22rem}.assessment-internship-question-section>header p{max-width:720px;margin:0;color:var(--muted);font-size:.8rem;line-height:1.45}.assessment-internship-question-section>header>span{flex:0 0 auto;border:1px solid var(--line);border-radius:999px;padding:5px 8px;color:var(--muted);background:var(--surface-soft);font-size:.7rem;font-weight:800}.assessment-internship-source-tabs{display:flex;flex-wrap:wrap;gap:6px;border-bottom:1px solid var(--line);padding-bottom:12px}.assessment-internship-source-tabs button{display:inline-flex;align-items:center;gap:6px;min-height:36px;border:1px solid var(--line);border-radius:7px;padding:7px 10px;color:var(--muted);background:var(--surface);font:inherit;font-size:.78rem;font-weight:800;cursor:pointer}.assessment-internship-source-tabs button:hover,.assessment-internship-source-tabs button.active{border-color:var(--brand);color:var(--brand);background:var(--soft)}.assessment-internship-source-panel{display:grid;gap:13px;border:1px solid var(--line);border-left:4px solid var(--brand);border-radius:8px;padding:14px;background:var(--surface-soft)}.assessment-internship-source-panel>div:first-child{display:grid;gap:2px}.assessment-internship-source-panel>div:first-child>strong{color:var(--ink);font-size:.9rem}.assessment-internship-source-panel>div:first-child>span{color:var(--muted);font-size:.76rem;line-height:1.4}.assessment-internship-source-actions{display:flex;flex-wrap:wrap;align-items:center;gap:7px}.assessment-internship-source-actions.end{justify-content:flex-end}.assessment-internship-source-actions>label{cursor:pointer}.assessment-internship-ai-counts{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px}.assessment-internship-ai-counts label{display:grid;gap:5px;color:var(--muted);font-size:.7rem;font-weight:800}.assessment-internship-ai-counts input,.assessment-internship-bank-toolbar>input,.assessment-internship-question-addbar>select{width:100%;min-width:0;border:1px solid var(--input-border);border-radius:7px;padding:9px 10px;color:var(--ink);background:var(--input-bg);font:inherit;font-size:.78rem}.assessment-internship-question-addbar>select{min-height:50px}.assessment-internship-bank-toolbar,.assessment-internship-question-addbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.assessment-internship-bank-list{display:grid;max-height:360px;overflow-y:auto;border:1px solid var(--line);border-radius:7px;background:var(--surface)}.assessment-internship-bank-list>label{display:grid;grid-template-columns:18px minmax(0,1fr);gap:9px;align-items:start;padding:10px 11px;border-bottom:1px solid var(--line);cursor:pointer}.assessment-internship-bank-list>label:last-of-type{border-bottom:0}.assessment-internship-bank-list>label>span{display:grid;min-width:0;gap:2px}.assessment-internship-bank-list strong{overflow:hidden;color:var(--ink);font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.assessment-internship-bank-list small{color:var(--muted);font-size:.68rem}.assessment-internship-bank-list>p{margin:0;padding:24px;color:var(--muted);text-align:center;font-size:.78rem}.assessment-internship-question-summary{position:sticky;top:14px;display:grid;gap:12px;border-top:4px solid var(--brand);padding:16px}.assessment-internship-question-summary h3{margin:-5px 0 0;color:var(--ink);font-size:1.08rem}.assessment-internship-question-summary>p{margin:0;border-top:1px solid var(--line);padding-top:11px;color:var(--muted);font-size:.75rem;line-height:1.45}.assessment-internship-question-summary dl{display:grid;margin:0;border:1px solid var(--line);border-radius:7px;overflow:hidden}.assessment-internship-question-summary dl>div{display:flex;justify-content:space-between;gap:12px;padding:8px 10px;border-bottom:1px solid var(--line)}.assessment-internship-question-summary dl>div:last-child{border-bottom:0}.assessment-internship-question-summary dt{color:var(--muted);font-size:.72rem;font-weight:700}.assessment-internship-question-summary dd{margin:0;color:var(--ink);font-size:.76rem;font-weight:900}.assessment-internship-rules-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.assessment-internship-retest-class-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:7px}.assessment-internship-retest-class-grid button{display:grid;gap:2px;border:1px solid var(--line);border-radius:7px;padding:9px 10px;color:var(--ink);background:var(--surface);font:inherit;text-align:left;cursor:pointer}.assessment-internship-retest-class-grid button.active{border-color:var(--brand);color:var(--brand);background:var(--soft)}.assessment-internship-retest-class-grid strong{font-size:.78rem}.assessment-internship-retest-class-grid span{color:var(--muted);font-size:.68rem}.assessment-internship-retest-roster{display:grid;max-height:320px;overflow-y:auto;border:1px solid var(--line);border-radius:7px;background:var(--surface)}.assessment-internship-retest-roster>label{display:grid;grid-template-columns:18px minmax(0,1fr);gap:9px;align-items:center;padding:8px 10px;border-bottom:1px solid var(--line);cursor:pointer}.assessment-internship-retest-roster>label:last-child{border-bottom:0}.assessment-internship-retest-roster>label>span{display:grid;gap:1px}.assessment-internship-retest-roster strong{color:var(--ink);font-size:.76rem}.assessment-internship-retest-roster small{color:var(--muted);font-size:.67rem}.assessment-internship-settings-group{display:grid;gap:12px;border-top:1px solid var(--line);padding-top:15px}.assessment-internship-settings-group>div:first-child{display:grid;gap:2px}.assessment-internship-settings-group>div:first-child strong{color:var(--ink);font-size:.9rem}.assessment-internship-settings-group>div:first-child span{color:var(--muted);font-size:.76rem}.assessment-internship-review-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--line);border-radius:8px;overflow:hidden}.assessment-internship-review-list>div{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.assessment-internship-review-list>div:nth-child(2n){border-right:0}.assessment-internship-review-list>div:nth-last-child(-n+2){border-bottom:0}.assessment-internship-review-notice{display:flex;gap:10px;border:1px solid #a8d6c0;border-radius:8px;padding:11px 12px;color:#17613f;background:#f3fbf7}.assessment-internship-review-notice>svg{flex:0 0 auto}.assessment-internship-review-notice>div{display:grid;gap:2px}.assessment-internship-review-notice strong{font-size:.83rem}.assessment-internship-review-notice span{font-size:.76rem;line-height:1.4}.assessment-internship-review-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px;border-top:1px solid var(--line);padding-top:14px}.assessment-internship-question-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--line);border-radius:9px;padding:10px 12px;background:var(--surface)}.assessment-internship-question-footer>button:first-child{border:0;padding:8px;color:var(--muted);background:transparent;font:inherit;font-size:.8rem;font-weight:800;cursor:pointer}.assessment-internship-question-footer>button:first-child:disabled{opacity:.45;cursor:default}.assessment-internship-question-head button:focus-visible,.assessment-internship-question-tabs button:focus-visible,.assessment-internship-source-tabs button:focus-visible,.assessment-internship-question-footer button:focus-visible,.assessment-internship-question-workspace input:focus-visible,.assessment-internship-question-workspace select:focus-visible,.assessment-internship-question-workspace textarea:focus-visible{outline:3px solid color-mix(in srgb,var(--brand) 28%,transparent);outline-offset:2px}@container internship-question (max-width: 900px){.assessment-internship-question-head{grid-template-columns:42px minmax(0,1fr)}.assessment-internship-question-head>div:last-child{grid-column:1 / -1;justify-content:flex-end;border-top:1px solid var(--line);padding-top:12px}.assessment-internship-question-layout{grid-template-columns:1fr}.assessment-internship-question-summary{position:static;order:-1;grid-template-columns:minmax(0,1fr) minmax(240px,.65fr);align-items:start}.assessment-internship-question-summary>.assessment-eyebrow,.assessment-internship-question-summary>h3{grid-column:1}.assessment-internship-question-summary dl{grid-column:2;grid-row:1 / 4}.assessment-internship-question-summary>p{grid-column:1}.assessment-internship-question-workspace .assessment-internship-toggle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.assessment-internship-question-workspace .assessment-question-editor-head{grid-template-columns:minmax(0,1fr) minmax(90px,.45fr)}.assessment-internship-question-workspace .assessment-question-editor-head>span,.assessment-internship-question-workspace .assessment-question-editor-head>select{grid-column:1 / -1;justify-self:stretch}.assessment-internship-question-workspace .assessment-question-editor-head>span{justify-self:start}.assessment-internship-question-workspace .assessment-question-editor-head>button{grid-column:2;justify-self:end}}@container internship-question (max-width: 600px){.assessment-internship-question-head{padding:13px}.assessment-internship-question-head h1{white-space:normal}.assessment-internship-question-head>div:last-child,.assessment-internship-source-actions,.assessment-internship-review-actions{display:grid;grid-template-columns:1fr}.assessment-internship-question-head>div:last-child>*,.assessment-internship-source-actions>*,.assessment-internship-review-actions>*{width:100%;justify-content:center}.assessment-internship-question-tabs button{gap:5px;padding-inline:6px}.assessment-internship-question-tabs button strong{font-size:.72rem}.assessment-internship-question-tabs button>span{width:20px;height:20px}.assessment-internship-question-section{padding:14px}.assessment-internship-question-section>header{flex-direction:column}.assessment-internship-question-summary{display:grid;grid-template-columns:1fr}.assessment-internship-question-summary dl,.assessment-internship-question-summary>.assessment-eyebrow,.assessment-internship-question-summary>h3,.assessment-internship-question-summary>p{grid-column:1;grid-row:auto}.assessment-internship-rules-grid,.assessment-internship-review-list,.assessment-internship-bank-toolbar,.assessment-internship-question-addbar{grid-template-columns:1fr}.assessment-internship-review-list>div{border-right:0}.assessment-internship-review-list>div:nth-last-child(-n+2){border-bottom:1px solid var(--line)}.assessment-internship-review-list>div:last-child{border-bottom:0}.assessment-internship-question-workspace .assessment-internship-toggle-grid{grid-template-columns:1fr}.assessment-internship-question-workspace .assessment-option-editor-row{grid-template-columns:30px minmax(0,1fr)}.assessment-internship-question-workspace .assessment-option-editor-row>button{grid-column:2;justify-self:start;padding-inline:12px}}@container internship-question (max-width: 420px){.assessment-internship-question-tabs button>span{display:none}.assessment-internship-question-tabs button strong{min-width:0;overflow:hidden;font-size:.67rem;text-overflow:ellipsis;white-space:nowrap}}[data-theme=dark] .assessment-internship-plan-warning,[data-theme=dark] .assessment-internship-auto-group-note,[data-theme=dark] .assessment-internship-review-notice{background:var(--surface-soft);color:var(--ink);border-color:var(--line)}@media(max-width:1000px){.assessment-internship-planner-grid{grid-template-columns:1fr}.assessment-internship-day-summary{order:-1}.assessment-internship-day-summary ul{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px}}@media(max-width:760px){.assessment-internship-day-heading,.assessment-internship-panel-headline,.assessment-internship-composer-actions{align-items:stretch;flex-direction:column}.assessment-internship-date-field{width:100%}.assessment-internship-type-picker,.assessment-internship-form-grid,.assessment-internship-form-grid.wide-first,.assessment-internship-day-summary ul{grid-template-columns:1fr}.assessment-internship-timeline:before{left:27px}.assessment-internship-timeline-row{grid-template-columns:28px minmax(0,1fr)}.assessment-internship-timeline-row>time{grid-column:2;grid-row:1;padding:0 0 2px;text-align:left}.assessment-internship-timeline-marker{grid-column:1;grid-row:1 / 3}.assessment-internship-timeline-content{grid-column:2;grid-row:2}.assessment-internship-timeline-title{flex-direction:column}}@media(max-height:620px)and (orientation:landscape){.assessment-internship-day-header,.assessment-internship-timeline-panel,.assessment-internship-day-summary,.assessment-internship-composer{padding:12px}.assessment-internship-empty-day{padding-block:22px}}.assessment-internship-day-create{display:grid;gap:14px;background:#fbfdff}.assessment-internship-create-step{display:grid;grid-template-columns:30px minmax(0,1fr);gap:10px;align-items:start;padding-top:4px}.assessment-internship-create-step>span{display:grid;place-items:center;width:26px;height:26px;border-radius:999px;background:#01557e;color:#fff;font-size:.78rem;font-weight:900}.assessment-internship-create-step strong{display:block;color:var(--ink);font-size:.94rem}.assessment-internship-create-step p{margin:2px 0 0;color:var(--muted);font-size:.84rem}.assessment-internship-toggle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.assessment-internship-toggle-row{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:10px;background:var(--surface)}.assessment-internship-toggle-row .assessment-switch{border:0;background:transparent;padding:0;cursor:pointer}.assessment-internship-toggle-row .assessment-switch span{margin-right:0}.assessment-internship-toggle-row strong{display:block;color:var(--ink);font-size:.86rem}.assessment-internship-toggle-row p{margin:2px 0 0;color:var(--muted);font-size:.78rem;line-height:1.35}.assessment-internship-toolbar{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:12px;align-items:end;margin-top:14px}.assessment-internship-day-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:8px;margin:14px 0}.assessment-internship-day-tabs button,.assessment-internship-presets button{border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);padding:10px 12px;text-align:left;font:inherit;cursor:pointer}.assessment-internship-day-tabs button{display:flex;justify-content:space-between;align-items:center;font-weight:800}.assessment-internship-day-tabs button span{display:inline-flex;min-width:24px;justify-content:center;border-radius:999px;padding:2px 6px;background:var(--surface-muted);color:var(--muted);font-size:.78rem}.assessment-internship-day-tabs button.active,.assessment-internship-presets button:hover{border-color:var(--brand);background:var(--soft);color:var(--brand)}.assessment-internship-presets{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin:12px 0}.assessment-internship-presets button{display:grid;grid-template-columns:18px minmax(0,1fr);gap:2px 8px;align-items:center}.assessment-internship-presets button span{grid-column:2;color:var(--muted);font-size:.82rem}.assessment-internship-day-list{display:grid;gap:10px}.assessment-internship-day-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:12px;background:var(--surface)}.assessment-internship-day-card.selected{border-color:var(--brand);background:var(--soft)}.assessment-internship-day-card strong{display:block;color:var(--ink)}.assessment-internship-day-card span{display:block;color:var(--muted);font-size:.86rem;margin-top:3px}.assessment-origin-actions.compact{grid-column:1 / -1;justify-content:flex-start}.assessment-assignments-workspace{gap:18px}.assessment-assignments-workspace .assessment-page-header{min-height:auto;padding:22px 24px;border-radius:10px;box-shadow:none}.assessment-assignments-workspace .assessment-page-header h1{font-size:clamp(1.45rem,2vw,1.85rem)}.assessment-assignments-workspace .assessment-origin-kpi-strip{display:flex;gap:0;overflow-x:auto;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.assessment-assignments-workspace .assessment-origin-kpi-strip .assessment-metric{min-width:150px;min-height:74px;flex:1 0 150px;display:grid;grid-template-columns:34px auto;grid-template-rows:auto auto;align-items:center;column-gap:10px;border:0;border-right:1px solid var(--line);border-radius:0;padding:12px 16px;box-shadow:none}.assessment-assignments-workspace .assessment-origin-kpi-strip .assessment-metric:last-child{border-right:0}.assessment-assignments-workspace .assessment-origin-kpi-strip .assessment-metric span{width:34px;height:34px;grid-row:1 / 3;margin:0}.assessment-assignments-workspace .assessment-origin-kpi-strip .assessment-metric strong{font-size:1.15rem;line-height:1}.assessment-assignments-workspace .assessment-origin-kpi-strip .assessment-metric p{font-size:.76rem}.assessment-assignments-workspace .assessment-origin-layout>.assessment-panel{padding:0;overflow:hidden;border-radius:10px;box-shadow:none}.assessment-assignments-workspace .assessment-panel-title.split{margin:0;padding:18px 20px;border-bottom:1px solid var(--line);background:var(--surface)}.assessment-assignments-workspace .assessment-panel-title h2{font-size:1rem}.assessment-assignments-workspace .assessment-panel-title p{margin:4px 0 0;color:var(--muted);font-size:.78rem}.assessment-assignments-workspace .assessment-origin-layout .assessment-list{gap:0;background:var(--surface)}.assessment-assignments-workspace .assessment-origin-card{gap:12px;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:16px 20px;box-shadow:none;transition:background-color .15s ease}.assessment-assignments-workspace .assessment-origin-card:last-child{border-bottom:0}.assessment-assignments-workspace .assessment-origin-card:hover,.assessment-assignments-workspace .assessment-origin-card.selected{background:#f7fafc;box-shadow:inset 3px 0 0 var(--brand)}.assessment-assignments-workspace .assessment-origin-title-row h2{font-size:.96rem}.assessment-assignments-workspace .assessment-origin-card p,.assessment-assignments-workspace .assessment-origin-card small,.assessment-assignments-workspace .assessment-origin-card em{font-size:.8rem;line-height:1.4}.assessment-assignments-workspace .assessment-origin-time{min-width:155px;border:1px solid var(--line);background:var(--surface-soft);text-align:center;white-space:nowrap}.assessment-assignments-workspace .assessment-origin-badges span{min-height:25px;border-radius:6px;padding-inline:8px;background:var(--surface-soft);font-size:.72rem}.assessment-assignments-workspace .assessment-origin-actions{padding-top:11px;border-top:1px solid #edf2f6}.assessment-assignment-builder{gap:18px}.assessment-assignment-builder .assessment-create-header{min-height:auto;padding:18px 20px;border-radius:10px;box-shadow:none}.assessment-assignment-builder .assessment-create-header h1{font-size:1.45rem}.assessment-assignment-builder .assessment-create-header p{margin-top:6px;font-size:.88rem}.assessment-assignment-builder .assessment-autosave{min-height:36px;border:0;padding-inline:8px;box-shadow:none;font-size:.78rem}.assessment-assignment-builder .assessment-builder-steps{gap:0;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--surface)}.assessment-assignment-builder .assessment-builder-steps button{min-height:46px;flex:1 1 170px;justify-content:center;border:0;border-right:1px solid var(--line);border-radius:0;padding:0 14px;background:transparent;box-shadow:none;font-size:.82rem}.assessment-assignment-builder .assessment-builder-steps button:last-child{border-right:0}.assessment-assignment-builder .assessment-builder-steps button.active{background:var(--soft);box-shadow:inset 0 -3px 0 var(--brand)}.assessment-assignment-builder .assessment-create-layout{grid-template-columns:minmax(0,1fr) 320px;gap:18px}.assessment-assignment-builder .assessment-create-form-card,.assessment-assignment-builder .assessment-create-summary,.assessment-assignment-builder .assessment-create-info-card{border-radius:10px;box-shadow:none}.assessment-assignment-builder .assessment-create-form-card{padding:22px}.assessment-assignment-builder .assessment-create-inner-card{border-radius:8px;background:#fbfcfd;box-shadow:none}.assessment-assignment-builder .assessment-create-kind-grid button,.assessment-assignment-builder .assessment-question-source-grid button,.assessment-assignment-builder .assessment-room-grid button,.assessment-assignment-builder .assessment-assistant-grid button{border-radius:8px;box-shadow:none}.assessment-assignment-builder .assessment-create-side{position:sticky;top:16px;gap:12px}[data-theme=dark] .assessment-assignments-workspace .assessment-origin-card:hover,[data-theme=dark] .assessment-assignments-workspace .assessment-origin-card.selected,[data-theme=dark] .assessment-assignment-builder .assessment-create-inner-card{background:var(--surface-muted)}@media(max-width:1180px){.assessment-assignment-builder .assessment-create-layout{grid-template-columns:minmax(0,1fr) 270px}}@media(max-width:720px){.assessment-assignments-workspace .assessment-page-header,.assessment-assignment-builder .assessment-create-header{padding:16px}.assessment-assignments-workspace .assessment-origin-card-head{gap:10px}.assessment-assignments-workspace .assessment-origin-time{min-width:0;white-space:normal}.assessment-assignments-workspace .assessment-origin-actions>button{flex:1 1 calc(50% - 8px)}.assessment-assignment-builder .assessment-builder-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.assessment-assignment-builder .assessment-builder-steps button{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}}@media(max-width:760px){.assessment-internship-phase-tabs{grid-template-columns:1fr}.assessment-internship-phase-tabs button{justify-content:flex-start;border-right:0;border-bottom:1px solid var(--line);padding:0 14px}.assessment-internship-phase-tabs button:last-child{border-bottom:0}.assessment-internship-context-bar,.assessment-internship-toolbar,.assessment-internship-day-card,.assessment-internship-action-footer{grid-template-columns:1fr}.assessment-internship-context-bar>.assessment-secondary-button{width:100%;justify-self:stretch}.assessment-inline-input-action,.assessment-internship-toggle-grid{grid-template-columns:1fr}.assessment-internship-material-item{grid-template-columns:auto minmax(0,1fr) auto}.assessment-internship-material-item .assessment-primary-button{grid-column:2}.assessment-internship-action-footer .assessment-question-quickadd{justify-content:stretch}}.assessment-results-table-wrap{overflow-x:auto}.assessment-results-day-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.assessment-results-day-toolbar .assessment-subtabs{margin:0}.assessment-results-day-toolbar .assessment-question-quickadd{margin:0;justify-content:flex-end}.assessment-results-table{width:100%;border-collapse:collapse;font-size:.88rem}.assessment-results-table th,.assessment-results-table td{padding:8px 10px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}.assessment-results-table th{color:var(--muted);font-weight:700}.assessment-results-table th button{margin-left:8px}.assessment-result-status{border:1px solid var(--input-border);border-radius:8px;padding:4px 8px;font:inherit;font-weight:700}.assessment-result-status-passed{background:#d1f5df;color:#0a6a35;border-color:#7fd9a3}.assessment-result-status-failed{background:#fbd6d6;color:#9a1c1c;border-color:#ec9a9a}.assessment-result-status-pending{background:var(--surface-muted);color:var(--muted)}.assessment-result-points{display:block;margin-top:5px;color:var(--muted);font-size:.76rem;font-weight:700}[data-theme=dark] .assessment-result-status-passed{background:#113a24;color:#4ade80;border-color:#1e5c37}[data-theme=dark] .assessment-result-status-failed{background:#3a1414;color:#f87171;border-color:#5c1e1e}.assessment-rubric-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:6px;margin:10px 0}.assessment-rubric-item{display:flex;align-items:center;gap:8px;font-size:.86rem;color:var(--ink)}.assessment-result-chip-passed{background:#d1f5df;color:#0a6a35;border-color:#7fd9a3}.assessment-result-chip-failed{background:#fbd6d6;color:#9a1c1c;border-color:#ec9a9a}[data-theme=dark] .assessment-result-chip-passed{background:#113a24;color:#4ade80;border-color:#1e5c37}[data-theme=dark] .assessment-result-chip-failed{background:#3a1414;color:#f87171;border-color:#5c1e1e}.assessment-create-kind-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:28px}.assessment-create-kind-grid.single{grid-template-columns:minmax(0,1fr)}.assessment-create-kind-grid button{min-height:132px;display:grid;align-content:center;grid-template-columns:22px minmax(0,1fr);gap:8px 10px;border:1px solid #d8e3eb;border-radius:12px;padding:22px;background:#fff;color:#071123;text-align:left}.assessment-create-kind-grid button:nth-child(3){grid-column:span 1}.assessment-create-kind-grid button.active{border-color:#a9cbd9;background:#eef7fb}.assessment-create-kind-grid svg{color:#01557e;margin-top:2px}.assessment-create-kind-grid strong{font-size:1.02rem}.assessment-create-kind-grid span{grid-column:1 / -1;color:#65748b;font-size:.96rem;line-height:1.45}.assessment-create-slot{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;border:1px solid #a9cbd9;border-radius:14px;padding:22px;background:#eef7fb;margin-bottom:20px}.assessment-create-slot span{display:block;color:#01557e;font-size:.78rem;font-weight:900}.assessment-create-slot strong{display:block;margin-top:10px;color:#071123}.assessment-create-inner-card{border:1px solid #d8e3eb;border-radius:14px;padding:20px;background:#fff;margin-top:20px}.assessment-create-inner-card h3{margin:0 0 8px;color:#071123;font-size:1.05rem}.assessment-create-inner-card p{margin:0;color:#65748b;font-size:.9rem}.assessment-segment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.assessment-segment-grid button{border:1px solid #d7e2ec;background:#fff;color:#071123;border-radius:8px;padding:12px 14px;text-align:left;font-weight:800;box-shadow:0 8px 18px #0f23340a}.assessment-segment-grid button span{display:block;margin-top:4px;color:#65748b;font-size:13px;font-weight:500;line-height:1.35}.assessment-segment-grid button.active{border-color:#87bad0;background:#eaf4f8;color:#01557e}.assessment-create-inner-title{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:start;gap:12px;margin-bottom:18px}.assessment-create-inner-title svg{color:#6b7890}.assessment-create-inner-title strong{display:block;color:#071123;font-size:1rem}.assessment-create-inner-title>span{border:1px solid #d8e3eb;border-radius:999px;padding:5px 12px;color:#071123;font-size:.82rem;font-weight:900}.assessment-create-segment{display:grid;grid-template-columns:1fr 1fr;gap:10px}.assessment-create-segment button,.assessment-create-copy-actions button,.assessment-create-copy-grid button{min-height:50px;border:1px solid #d8e3eb;border-radius:7px;background:#fff;color:#071123;font-weight:800}.assessment-create-segment button{display:inline-flex;align-items:center;justify-content:center;gap:10px}.assessment-create-segment button.active{border-color:#01557e;background:#01557e;color:#fff}.assessment-create-success{border:1px solid #8ee5b4;border-radius:10px;padding:12px 16px;margin-top:20px;background:#eefff5;color:#007a4c}.assessment-class-workload{border:1px solid #d8e3eb;border-radius:12px;padding:14px 16px;margin-top:18px;background:#f8fbfd;color:#071123}.assessment-class-workload.medium{border-color:#d9cfa6;background:#fffaf0}.assessment-class-workload.high{border-color:#e2b8b8;background:#fff6f6}.assessment-class-workload-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.assessment-class-workload-head span{display:block;color:#01557e;font-size:.76rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.assessment-class-workload-head strong{display:block;margin-top:4px;color:#071123;font-size:.98rem}.assessment-class-workload-head svg{color:#01557e}.assessment-class-workload.medium .assessment-class-workload-head svg{color:#9a6a00}.assessment-class-workload.high .assessment-class-workload-head svg{color:#b42318}.assessment-class-workload p{margin:10px 0 0;color:#65748b;font-size:.88rem}.assessment-class-workload-counts{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.assessment-class-workload-counts span{border:1px solid #d8e3eb;border-radius:999px;padding:5px 10px;background:#fff;color:#545964;font-size:.78rem;font-weight:800}.assessment-class-workload-counts strong{color:#01557e}.assessment-class-workload-list{display:grid;gap:8px;margin-top:12px}.assessment-class-workload-list div{border-top:1px solid #d8e3eb;padding-top:8px}.assessment-class-workload-list strong,.assessment-class-workload-list span{display:block}.assessment-class-workload-list strong{color:#071123;font-size:.86rem}.assessment-class-workload-list span{margin-top:2px;color:#65748b;font-size:.78rem}.assessment-student-picklist{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:6px;margin-top:14px;max-height:260px;overflow-y:auto}.assessment-student-picklist-row{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid #d8e3eb;border-radius:8px;font-size:.84rem;color:#1c2733}.assessment-create-copy-actions{display:flex;gap:10px;margin:18px 0;flex-wrap:wrap}.assessment-create-copy-actions button{padding:0 18px}.assessment-switch{display:inline-flex;align-items:center;width:max-content;border:0;padding:0;color:inherit;background:transparent;font:inherit;line-height:1;cursor:pointer}.assessment-internship-toggle-row.disabled{opacity:.64}.assessment-internship-toggle-row.disabled .assessment-switch{cursor:not-allowed}.assessment-switch:focus-visible{outline:3px solid color-mix(in srgb,var(--brand) 22%,transparent);outline-offset:3px}.assessment-switch span{width:52px;height:30px;display:inline-block;position:relative;border-radius:999px;background:#cad6e1;margin-right:10px;vertical-align:middle;transition:background .15s ease}.assessment-switch span:after{content:"";position:absolute;top:4px;left:4px;width:22px;height:22px;border-radius:999px;background:#fff;box-shadow:0 2px 5px #102e402e;transition:transform .15s ease}.assessment-switch.active span{background:#01557e}.assessment-switch.active span:after{transform:translate(22px)}.assessment-create-copy-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.assessment-create-copy-grid button{min-height:68px;display:grid;align-content:center;justify-items:start;padding:12px 16px;position:relative;border:2px solid #d8e3eb;transition:border-color .15s ease,background .15s ease}.assessment-create-copy-grid button.active{border-color:#01557e;background:#eaf4fa}.assessment-create-copy-grid span{color:#65748b;font-size:.86rem}.assessment-copy-check{position:absolute;top:10px;right:10px;color:#01557e}.assessment-copy-selected-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:14px;padding:12px 16px;border:1px solid #d8e3eb;border-radius:10px;background:#f8fbfd;font-size:.84rem;color:#1c2733}.assessment-create-side{display:grid;gap:22px}.assessment-create-summary{padding:34px 30px}.assessment-create-summary h2,.assessment-create-info-card h2{margin:0 0 18px;color:#071123;font-size:1.15rem;font-weight:800}.assessment-create-summary p{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #e8eef3;margin:0;padding:13px 0}.assessment-create-summary span{color:#65748b}.assessment-create-summary strong{color:#071123;text-align:right}.assessment-create-info-card{padding:30px}.assessment-create-info-card h2{display:flex;align-items:center;gap:10px}.assessment-create-info-card h2 svg{color:#01557e}.assessment-create-info-card p{margin:0 0 10px;color:#42536a;line-height:1.45}.assessment-create-bottom{position:sticky;bottom:0;z-index:6;display:flex;justify-content:space-between;gap:14px;padding:26px 0 0;background:linear-gradient(to top,#eef4f8 68%,#eef4f800)}.assessment-create-bottom>button{min-width:74px;min-height:50px;border:1px solid #d8e3eb;border-radius:7px;padding:0 20px;background:#fff;color:#65748b;font-weight:800}.assessment-create-bottom>button:disabled{opacity:.75}.assessment-student-view .assessment-page{max-width:1490px}.assessment-student-view .assessment-page-header{min-height:116px;border:1px solid #dbe4eb;border-radius:8px;padding:26px 28px;background:#fff;box-shadow:0 22px 52px #102e4017}.assessment-student-view .assessment-page-header h1{color:#070b1c;font-size:clamp(1.8rem,2.2vw,2.35rem);letter-spacing:0}.assessment-student-view .assessment-page-header p{color:#61728c;font-size:1rem}.assessment-student-view .assessment-create-inner-card{max-width:980px;margin:0 auto;border:1px solid #dbe4eb;border-radius:8px;padding:32px;background:#fff;box-shadow:0 18px 42px #102e4014}.assessment-student-view .assessment-create-inner-card .assessment-inline-title-row{align-items:flex-start;border-bottom:1px solid #edf2f6;padding-bottom:18px;margin-bottom:18px}.assessment-student-view .assessment-create-inner-card .assessment-inline-title-row strong{color:#070b1c;font-size:1.25rem}.assessment-student-view .assessment-security-notice-list{margin:0;border:1px solid #ffe0a8;border-radius:8px;padding:16px 18px 16px 36px;background:#fff8ec;color:#6a3f05;line-height:1.65}.assessment-student-view .assessment-question-quickadd{justify-content:flex-end;margin-top:20px}.assessment-student-view .assessment-origin-card{width:100%;min-height:96px;border:1px solid #dbe4eb;border-radius:8px;padding:20px 22px;background:#fff;text-align:left;box-shadow:0 14px 34px #102e400f;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.assessment-student-view .assessment-origin-card:hover{border-color:#01557e73;box-shadow:0 18px 42px #102e401c;transform:translateY(-1px)}.assessment-student-view .assessment-origin-card-head{align-items:flex-start}.assessment-student-view .assessment-origin-title-row{align-items:center;gap:10px}.assessment-student-view .assessment-origin-title-row h2{margin:0;color:#070b1c;font-size:1.08rem;line-height:1.25}.assessment-student-view .assessment-origin-card p{margin:6px 0 0;color:#51647f;font-size:.94rem}.assessment-student-view .assessment-origin-card small{display:inline-flex;margin-top:10px;color:#01557e;font-weight:800}.assessment-student-view .assessment-question-editor-list{display:grid;gap:16px}.assessment-student-view .assessment-page:has(.btec-student-stage-overview)>.assessment-page-header h1,.assessment-student-view .assessment-page:has(.btec-student-stage-workspace)>.assessment-page-header h1{font-size:clamp(1.7rem,2.4vw,2.3rem)}.btec-student-stage-overview,.btec-student-stage-workspace{display:grid;gap:22px}.btec-student-stage-overview-head,.btec-student-stage-workspace-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.btec-student-stage-overview-head h2,.btec-student-stage-workspace-head h2{margin:4px 0 0;color:var(--ink);font-size:1.35rem;line-height:1.25}.btec-student-stage-overview-head p,.btec-student-stage-workspace-head p{margin:5px 0 0;color:var(--muted);font-size:.9rem}.btec-student-stage-overview-head>span{align-self:center;padding:6px 10px;color:var(--brand-deep);font-size:.8rem;font-weight:800;white-space:nowrap}.btec-stage-list{border-top:1px solid #d9e4ea}.btec-stage-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto auto;align-items:center;column-gap:16px;min-height:104px;padding:16px 0;border-bottom:1px solid #d9e4ea;transition:background .16s ease,padding-left .16s ease}.btec-stage-row:hover:not(.is-locked){padding-left:8px;background:#005f8606}.btec-stage-number{display:grid;place-items:center;width:36px;height:36px;border:1px solid #cddde6;border-radius:50%;color:var(--brand-deep);font-size:.78rem;font-weight:900}.btec-stage-row-main{min-width:0;display:grid;gap:7px}.btec-stage-row-title{min-width:0;display:grid;gap:2px}.btec-stage-row-title strong{color:var(--ink);font-size:.92rem}.btec-stage-row-title span{overflow:hidden;color:var(--muted);font-size:.86rem;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.btec-stage-row-dates{display:flex;flex-wrap:wrap;gap:4px 14px;color:#687b8a;font-size:.76rem}.btec-stage-status{display:inline-flex;align-items:center;justify-content:center;min-width:92px;color:var(--brand-deep);font-size:.78rem;font-weight:800;white-space:nowrap}.btec-stage-row.is-locked .btec-stage-number{color:#748493;border-color:#dbe4ea}.btec-stage-row.is-locked .btec-stage-status,.btec-stage-locked-date{color:#748493}.btec-stage-locked-date{font-size:.76rem;font-weight:700;white-space:nowrap}.btec-stage-row.is-closed .btec-stage-status{color:#9c4b4b}.btec-stage-row .assessment-primary-button,.btec-stage-row .assessment-secondary-button{min-height:38px;padding:0 13px;font-size:.82rem;white-space:nowrap}.btec-stage-workspace-meta{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:10px;color:var(--muted);font-size:.78rem}.btec-stage-workspace-meta span:first-child{color:var(--brand-deep);font-weight:800}.btec-stage-final-note{margin:-8px 0 0;padding-left:12px;border-left:3px solid var(--brand);color:var(--muted);font-size:.86rem;line-height:1.45}.btec-student-stage-documents,.btec-student-stage-submission{display:grid;gap:14px;padding:18px 0 0;border-top:1px solid #d9e4ea;background:transparent}.btec-stage-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.btec-stage-section-heading strong{display:block;color:var(--ink);font-size:1rem}.btec-stage-section-heading p{margin:4px 0 0;color:var(--muted);font-size:.84rem}.btec-student-stage-workspace .assessment-project-document-links{grid-template-columns:repeat(2,minmax(0,1fr))}.btec-student-stage-workspace .assessment-project-document-link{min-height:40px;box-shadow:none}.btec-student-stage-submission{padding-bottom:8px}.btec-student-stage-submission .assessment-answer-box{padding:12px}.btec-student-stage-submission .assessment-upload-drop{position:relative;min-height:116px;cursor:pointer}.btec-student-stage-submission .assessment-upload-drop input[type=file]{position:absolute;inset:0;width:100%;max-width:none;opacity:0;cursor:pointer}.btec-stage-submission-actions{display:flex;justify-content:flex-end}.btec-stage-submission-actions .assessment-primary-button{min-height:42px;padding:0 16px}@media(max-width:640px){.btec-student-stage-overview-head,.btec-student-stage-workspace-head{align-items:stretch;flex-direction:column}.btec-student-stage-workspace-head .secondary-action{width:100%;justify-content:center}.btec-stage-row{grid-template-columns:36px minmax(0,1fr);gap:10px;min-height:0;padding:14px 0}.btec-stage-row .btec-stage-status{grid-column:2;justify-content:flex-start;min-width:0}.btec-stage-row .assessment-primary-button,.btec-stage-row .assessment-secondary-button,.btec-stage-locked-date{grid-column:2;width:max-content}.btec-student-stage-workspace .assessment-project-document-links{grid-template-columns:1fr}.btec-stage-section-heading{align-items:stretch;flex-direction:column}.btec-stage-submission-actions .assessment-primary-button{width:100%}}.assessment-student-view .assessment-question-editor-list+.assessment-primary-button{width:max-content;min-width:180px;margin-left:auto}.assessment-student-view .assessment-question-editor{border:1px solid #dbe4eb;border-radius:8px;padding:24px 26px;background:#fff;box-shadow:0 14px 34px #102e400f}.assessment-student-view .assessment-question-editor-head{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid #edf2f6;margin-bottom:18px;padding-bottom:14px}.assessment-take-progress{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:14px 18px;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:0 6px 18px #102e400d;margin-bottom:16px}.assessment-take-progress-info{display:flex;align-items:center;gap:10px;color:var(--brand-deep)}.assessment-take-progress-info strong{display:block;color:var(--ink);font-size:.95rem}.assessment-take-progress-info span{color:var(--muted);font-size:.78rem}.assessment-take-progressbar{flex:1 1 160px;min-width:120px;height:8px;border-radius:999px;background:#005f861a;overflow:hidden}.assessment-take-progressbar>span{display:block;height:100%;border-radius:999px;background:var(--brand);transition:width .25s ease}.assessment-take-finish{flex:0 0 auto;padding:9px 16px;border:1px solid var(--brand);border-radius:10px;background:var(--surface);color:var(--brand-deep);font:inherit;font-size:.82rem;font-weight:700;cursor:pointer}.assessment-take-finish:hover{background:#005f860f}.assessment-take-split{display:grid;grid-template-columns:minmax(280px,38%) 1fr;gap:16px;align-items:start}.assessment-material-panel{display:flex;flex-direction:column;height:min(78vh,720px);border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:0 6px 18px #102e400a;overflow:hidden}.assessment-material-panel-tabs{display:flex;flex-wrap:wrap;gap:6px;padding:10px 12px;border-bottom:1px solid var(--line)}.assessment-material-panel-tabs button{display:inline-flex;align-items:center;gap:6px;max-width:220px;padding:7px 11px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font:inherit;font-size:.76rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.assessment-material-panel-tabs button.active{border-color:var(--brand);color:var(--brand-deep);background:#005f8612}.assessment-material-panel-title{display:flex;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid var(--line);color:var(--brand-deep);font-size:.82rem;font-weight:700;overflow-wrap:anywhere}.assessment-material-panel-body{flex:1;min-height:0;display:flex}.assessment-material-panel-body p{margin:auto}.assessment-material-panel-body iframe{flex:1;width:100%;height:100%;border:0;background:#525659}@media(max-width:900px){.assessment-take-split{grid-template-columns:1fr}.assessment-material-panel{height:min(60vh,520px)}}.assessment-take-question{border:1px solid var(--line);border-radius:14px;padding:20px;background:var(--surface);box-shadow:0 6px 18px #102e400a}.assessment-take-prompt{margin:14px 0 16px;color:var(--ink);font-size:1rem;line-height:1.5;overflow-wrap:anywhere}.assessment-take-options{display:grid;gap:10px}.assessment-take-option{display:flex;align-items:center;gap:12px;width:100%;padding:15px 18px;border:1px solid var(--line);border-radius:12px;background:var(--surface);text-align:left;cursor:pointer;transition:border-color .12s ease,background .12s ease}.assessment-take-option:hover:not(:disabled){border-color:var(--brand);background:#005f8608}.assessment-take-option:disabled{cursor:default}.assessment-take-radio{flex:0 0 auto;width:20px;height:20px;border-radius:999px;border:2px solid #c4d2dd;position:relative}.assessment-take-option.selected{border-color:var(--brand);background:#005f860f}.assessment-take-option.selected .assessment-take-radio{border-color:var(--brand)}.assessment-take-option.selected .assessment-take-radio:after{content:"";position:absolute;inset:3px;border-radius:999px;background:var(--brand)}.assessment-take-option-label{color:var(--ink);font-size:.92rem;font-weight:600;overflow-wrap:anywhere}.assessment-take-hint{display:flex;gap:10px;margin-top:16px;padding:12px 14px;border-radius:10px;background:#005f860f;color:var(--ink);font-size:.84rem;line-height:1.45}.assessment-take-hint svg{flex:0 0 auto;color:var(--brand-deep);margin-top:1px}.assessment-take-hint strong{color:var(--brand-deep)}.assessment-take-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;padding:14px 18px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.assessment-take-nav-btn{display:inline-flex;align-items:center;gap:8px;padding:11px 18px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);font:inherit;font-size:.85rem;font-weight:700;cursor:pointer}.assessment-take-nav-btn:hover:not(:disabled){border-color:var(--brand)}.assessment-take-nav-btn:disabled{opacity:.45;cursor:default}.assessment-take-nav-btn.primary{border-color:var(--brand-deep);background:var(--brand-deep);color:#fff}.assessment-take-nav-btn.primary:hover{background:var(--brand);border-color:var(--brand)}.assessment-question-points{flex:0 0 auto;padding:5px 11px;border-radius:999px;background:#005f8614;color:var(--brand-deep);font-size:.74rem;font-weight:800;white-space:nowrap}.assessment-student-view .assessment-question-editor-head>span{border:1px solid #dbe4eb;border-radius:999px;padding:6px 12px;background:#f6fafc;color:#01557e;font-size:.78rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.assessment-student-view .assessment-question-editor-head label{min-width:104px;display:grid;gap:6px;color:#8a9ab0;font-size:.75rem;font-weight:800;text-transform:uppercase}.assessment-student-view .assessment-question-editor-head input{height:36px;border-radius:8px;text-align:center;font-weight:900}.assessment-student-view .assessment-field-hint{margin:0 0 18px;color:#071123;font-size:1rem;line-height:1.6}.assessment-student-view .assessment-question-editor textarea{min-height:170px;border:1px solid #d8e3eb;border-radius:8px;padding:16px;background:#fff;color:#071123;font-size:1rem;line-height:1.6;resize:vertical}.assessment-student-view .assessment-choice-row{border:1px solid #dbe4eb;border-radius:8px;padding:14px 16px;background:#fff;color:#071123;font-weight:700}.assessment-student-view .assessment-choice-row:has(input:checked){border-color:#01557e;background:#eaf4fa}.assessment-student-view .assessment-answer-box{border:1px solid #dbe4eb;border-radius:8px;padding:18px;background:#f8fbfd}.assessment-student-view .assessment-upload-drop{min-height:132px;border:1px dashed #9fc5d8;border-radius:8px;background:#fff;color:#01557e}.assessment-student-view>.assessment-local-toast,.assessment-student-view .assessment-local-toast{border-radius:8px;background:#01557e}[data-theme=dark] .assessment-student-view .assessment-page-header,[data-theme=dark] .assessment-student-view .assessment-create-inner-card,[data-theme=dark] .assessment-student-view .assessment-origin-card,[data-theme=dark] .assessment-student-view .assessment-question-editor,[data-theme=dark] .assessment-student-view .assessment-answer-box,[data-theme=dark] .assessment-student-view .assessment-choice-row,[data-theme=dark] .assessment-student-view .assessment-upload-drop{border-color:var(--line);background:var(--surface-muted);color:var(--ink);box-shadow:none}[data-theme=dark] .assessment-student-view .assessment-page-header h1,[data-theme=dark] .assessment-student-view .assessment-create-inner-card .assessment-inline-title-row strong,[data-theme=dark] .assessment-student-view .assessment-origin-title-row h2,[data-theme=dark] .assessment-student-view .assessment-field-hint,[data-theme=dark] .assessment-student-view .assessment-choice-row,[data-theme=dark] .assessment-student-view .assessment-question-editor textarea{color:var(--ink)}[data-theme=dark] .assessment-student-view .assessment-page-header p,[data-theme=dark] .assessment-student-view .assessment-origin-card p,[data-theme=dark] .assessment-student-view .assessment-origin-card small{color:var(--muted)}[data-theme=dark] .assessment-student-view .assessment-question-editor textarea{border-color:var(--line);background:var(--surface)}[data-theme=dark] .assessment-dashboard-original .assessment-dashboard-header,[data-theme=dark] .assessment-page .assessment-page-header,[data-theme=dark] .assessment-dashboard-original .assessment-status-pill,[data-theme=dark] .assessment-dashboard-original .assessment-command-panel,[data-theme=dark] .assessment-dashboard-original .assessment-secondary-button,[data-theme=dark] .assessment-dashboard-original .assessment-action-tile,[data-theme=dark] .assessment-dashboard-original .assessment-kpi-strip,[data-theme=dark] .assessment-dashboard-original .assessment-kpi-item,[data-theme=dark] .assessment-dashboard-original .assessment-panel,[data-theme=dark] .assessment-dashboard-original .assessment-mini-tile,[data-theme=dark] .assessment-dashboard-original .assessment-step-tile,[data-theme=dark] .assessment-page .assessment-panel,[data-theme=dark] .assessment-page .assessment-row-card,[data-theme=dark] .assessment-page .assessment-metric,[data-theme=dark] .assessment-filter-bar,[data-theme=dark] .assessment-question-editor,[data-theme=dark] .assessment-material-pane,[data-theme=dark] .assessment-question-pane,[data-theme=dark] .assessment-answer-box,[data-theme=dark] .assessment-security-card,[data-theme=dark] .assessment-grade-row,[data-theme=dark] .assessment-origin-card,[data-theme=dark] .assessment-builder-steps button,[data-theme=dark] .assessment-kind-grid button,[data-theme=dark] .assessment-question-source-grid button,[data-theme=dark] .assessment-room-grid button,[data-theme=dark] .assessment-assistant-grid button,[data-theme=dark] .assessment-pdf-panel,[data-theme=dark] .assessment-summary-row{border-color:var(--line);background:var(--surface-muted);color:var(--ink);box-shadow:none}[data-theme=dark] .assessment-inline-title-row strong{color:var(--ink)}[data-theme=dark] .assessment-report-table th,[data-theme=dark] .assessment-report-table td{border-color:var(--line)}[data-theme=dark] .assessment-report-table td:first-child span{color:var(--ink)}[data-theme=dark] .assessment-error-panel[role=alert]{border-color:#f8717161;background:#7f1d1d2e}[data-theme=dark] .assessment-error-panel p{color:#fca5a5}[data-theme=dark] .assessment-inline-title-row span{border-color:var(--line);background:var(--surface-soft);color:var(--muted)}[data-theme=dark] .assessment-project-documents-group,[data-theme=dark] .assessment-project-document-link{border-color:var(--line);background:var(--surface-soft);color:var(--ink)}[data-theme=dark] .assessment-project-document-link:hover{border-color:var(--brand);background:#4aa7c71f;color:var(--brand)}[data-theme=dark] .assessment-project-documents-zip{border-color:var(--brand);background:var(--brand);color:#071123}[data-theme=dark] .assessment-project-documents-zip:hover{background:#66c4e3;color:#071123}[data-theme=dark] .assessment-option-letter,[data-theme=dark] .assessment-option-editor-row button,[data-theme=dark] .assessment-math-snippets button,[data-theme=dark] .assessment-question-quickadd button{border-color:var(--line);background:var(--surface-soft);color:var(--ink)}[data-theme=dark] .assessment-inline-link{color:var(--brand)}[data-theme=dark] .assessment-option-editor-row button.active{border-color:var(--brand);background:var(--brand);color:#071123}[data-theme=dark] .assessment-room-grid button span,[data-theme=dark] .assessment-kind-grid button span,[data-theme=dark] .assessment-question-source-grid button span{color:var(--muted)}[data-theme=dark] .assessment-room-grid button.active,[data-theme=dark] .assessment-kind-grid button.active{border-color:var(--brand);background:#4aa7c729}[data-theme=dark] .assessment-dashboard-original .assessment-action-tile span,[data-theme=dark] .assessment-dashboard-original .assessment-kpi-item span,[data-theme=dark] .assessment-dashboard-original .assessment-mini-tile>span,[data-theme=dark] .assessment-dashboard-original .assessment-step-tile>span{border-color:var(--line);background:#4aa7c71f;color:var(--brand)}[data-theme=dark] .assessment-kind-badge,[data-theme=dark] .assessment-origin-badges span{border-color:var(--line);background:var(--surface-soft);color:var(--muted)}[data-theme=dark] .assessment-status-badge{border-color:var(--line);background:var(--surface-soft);color:var(--brand)}[data-theme=dark] .assessment-status-badge.open{color:#4ade80;background:#4ade801f;border-color:#4ade804d}[data-theme=dark] .assessment-status-badge.draft{color:var(--muted);background:var(--surface-soft)}[data-theme=dark] .assessment-status-badge.scheduled{color:var(--brand);background:#4aa7c71f}[data-theme=dark] .assessment-status-badge.closed,[data-theme=dark] .assessment-status-badge.published{color:var(--ink);background:var(--surface-soft)}[data-theme=dark] .assessment-origin-title-row h2,[data-theme=dark] .assessment-origin-card p,[data-theme=dark] .assessment-origin-time{color:var(--ink)}[data-theme=dark] .assessment-origin-card small,[data-theme=dark] .assessment-origin-card em{color:var(--muted)}[data-theme=dark] .assessment-dashboard-original .assessment-command-brand,[data-theme=dark] .assessment-page .assessment-student-next{background:#01557e}[data-theme=dark] .assessment-dashboard-original .assessment-dashboard-header h1,[data-theme=dark] .assessment-page .assessment-page-header h1,[data-theme=dark] .assessment-dashboard-original .assessment-action-tile p,[data-theme=dark] .assessment-dashboard-original .assessment-kpi-item strong,[data-theme=dark] .assessment-dashboard-original .assessment-panel h2,[data-theme=dark] .assessment-dashboard-original .assessment-panel-title h2,[data-theme=dark] .assessment-dashboard-original .assessment-mini-tile strong,[data-theme=dark] .assessment-dashboard-original .assessment-step-tile strong{color:var(--ink)}[data-theme=dark] .assessment-dashboard-original .assessment-dashboard-header p,[data-theme=dark] .assessment-page .assessment-page-header p,[data-theme=dark] .assessment-dashboard-original .assessment-action-tile small,[data-theme=dark] .assessment-dashboard-original .assessment-kpi-item p,[data-theme=dark] .assessment-dashboard-original .assessment-mini-tile span,[data-theme=dark] .assessment-dashboard-original .assessment-step-tile p,[data-theme=dark] .assessment-info-strip span,[data-theme=dark] .assessment-field-hint,[data-theme=dark] .assessment-grade-row span{color:var(--muted)}[data-theme=dark] .assessment-filter-bar input,[data-theme=dark] .assessment-filter-bar select,[data-theme=dark] .assessment-form-grid input,[data-theme=dark] .assessment-form-grid select,[data-theme=dark] .assessment-form-grid textarea,[data-theme=dark] .assessment-question-editor input,[data-theme=dark] .assessment-question-editor select,[data-theme=dark] .assessment-question-editor textarea,[data-theme=dark] .assessment-code-block input,[data-theme=dark] .assessment-code-block textarea,[data-theme=dark] .assessment-answer-box textarea,[data-theme=dark] .assessment-export-form input,[data-theme=dark] .assessment-export-form select,[data-theme=dark] .assessment-grade-row input,[data-theme=dark] .assessment-inline-actions select,[data-theme=dark] .assessment-choice-row,[data-theme=dark] .assessment-toggle-row,[data-theme=dark] .assessment-group-list>div,[data-theme=dark] .assessment-starter-code{border-color:var(--line);background:var(--surface);color:var(--ink)}@media(max-width:1180px){.assessment-dashboard-original .assessment-command-panel,.assessment-dashboard-original .assessment-dashboard-grid,.assessment-builder-grid,.assessment-runtime-layout,.assessment-origin-layout{grid-template-columns:1fr}.assessment-dashboard-original .assessment-template-panel,.assessment-dashboard-original .assessment-next-panel,.assessment-dashboard-original .assessment-academic-panel{grid-column:auto;grid-row:auto;min-height:auto}.assessment-dashboard-original .assessment-command-brand{min-height:230px}.assessment-dashboard-original .assessment-action-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.assessment-dashboard-original .assessment-header-actions{width:100%}.assessment-origin-kpi-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.assessment-create-layout{grid-template-columns:minmax(0,1fr)}}@media(max-width:980px){.assessment-dashboard-original .assessment-dashboard-header{align-items:stretch;flex-direction:column}.assessment-dashboard-original .assessment-header-actions,.assessment-dashboard-original .assessment-action-grid,.assessment-dashboard-original .assessment-kpi-strip,.assessment-dashboard-original .assessment-academic-grid,.assessment-origin-kpi-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.assessment-panel-title.split{align-items:stretch;flex-direction:column}.assessment-filter-bar.compact{width:100%}}@media(max-width:720px){.assessment-dashboard-original .assessment-dashboard-header,.assessment-page .assessment-page-header,.assessment-dashboard-original .assessment-command-actions{align-items:stretch;flex-direction:column}.assessment-dashboard-original .assessment-command-brand{min-height:260px}.assessment-dashboard-original .assessment-header-actions,.assessment-dashboard-original .assessment-status-row,.assessment-dashboard-original .assessment-action-grid,.assessment-dashboard-original .assessment-kpi-strip,.assessment-dashboard-original .assessment-academic-grid,.assessment-dashboard-original .assessment-step-grid{grid-template-columns:1fr}.assessment-builder-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.assessment-form-grid,.assessment-export-form,.assessment-security-checks,.assessment-question-editor-head,.assessment-grade-row,.assessment-origin-kpi-strip,.assessment-kind-grid,.assessment-question-source-grid,.assessment-room-grid,.assessment-assistant-grid,.assessment-review-grid{grid-template-columns:1fr}.assessment-origin-card-head,.assessment-pdf-panel{align-items:flex-start;flex-direction:column}.assessment-filter-bar.compact{grid-template-columns:1fr}.assessment-page>*,.assessment-page .assessment-page-header>div,.assessment-header-actions,.assessment-grading-ai-actions-wrap,.assessment-grading-ai-actions,.assessment-grading-ai-actions label,.assessment-filter-bar,.assessment-grade-list,.assessment-grade-row,.assessment-grade-row>*{min-width:0;max-width:100%}.assessment-page .assessment-page-header>div,.assessment-header-actions,.assessment-grading-ai-actions-wrap,.assessment-grading-ai-actions,.assessment-grading-ai-actions label{width:100%}.assessment-grading-ai-actions{align-items:stretch;flex-direction:column}.assessment-grading-ai-actions-wrap{justify-items:stretch}.assessment-grading-ai-actions select,.assessment-grading-ai-actions .assessment-primary-button,.assessment-grading-ai-actions-wrap>.assessment-secondary-button,.assessment-filter-bar select,.assessment-grade-row input{width:100%;min-width:0}.assessment-grade-row strong,.assessment-grade-row span{overflow-wrap:anywhere}.assessment-project-documents-group,.assessment-project-document-links{grid-template-columns:1fr}.assessment-project-documents-head{align-items:flex-start;flex-direction:column}.assessment-project-documents-actions{width:100%;justify-content:space-between}.assessment-create-page{min-width:0;gap:18px}.assessment-create-header{min-height:0;grid-template-columns:32px minmax(0,1fr);align-items:start;gap:10px;padding:18px 16px}.assessment-create-back{width:32px;height:36px}.assessment-create-header h1{font-size:1.48rem;line-height:1.15}.assessment-create-header p{margin-top:8px;font-size:.9rem;line-height:1.45}.assessment-create-actions{grid-column:1 / -1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.assessment-create-actions .assessment-autosave{grid-column:1 / -1;justify-content:center}.assessment-create-actions .assessment-primary-button,.assessment-create-actions .assessment-secondary-button{width:100%;min-width:0;padding-inline:12px}.assessment-builder-steps button{width:100%;padding-inline:14px}.assessment-create-form-card,.assessment-create-summary,.assessment-create-info-card{min-width:0;padding:18px 16px}.assessment-create-section-title{margin:4px 0 24px}.assessment-create-kind-grid,.assessment-create-two,.assessment-create-segment,.assessment-create-copy-grid{grid-template-columns:minmax(0,1fr)}.assessment-create-kind-grid button{min-height:112px;padding:18px}.assessment-create-slot{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px;padding:18px}.assessment-create-inner-card{padding:16px}.assessment-create-inner-title{grid-template-columns:24px minmax(0,1fr)}.assessment-create-inner-title>span{grid-column:2;justify-self:start}.assessment-create-summary p{gap:12px}.assessment-create-bottom{padding-top:14px}}.assessment-dashboard-original .assessment-command-panel{grid-template-columns:minmax(280px,320px) minmax(0,1fr);min-height:218px;overflow:hidden;border:1px solid #d8e3eb;border-radius:8px;background:#fff;box-shadow:0 14px 34px #102e4012}.assessment-dashboard-original .assessment-command-brand{min-height:216px;justify-content:center;padding:28px 30px;border-right:1px solid #d8e3eb;background:#f2f7fa}.assessment-dashboard-original .assessment-command-brand p{margin:0 0 10px;color:#01557e;font-size:.73rem;font-weight:900;letter-spacing:.18em}.assessment-dashboard-original .assessment-command-brand h2{margin:0 0 10px;color:#071123;font-size:1.48rem;line-height:1.18}.assessment-dashboard-original .assessment-command-brand span{color:#65748b;font-size:.91rem;line-height:1.55}.assessment-dashboard-original .assessment-command-body{display:block;padding:0}.assessment-dashboard-original .assessment-action-grid{height:100%;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}.assessment-dashboard-original .assessment-action-tile{min-height:216px;height:100%;align-content:center;grid-template-rows:auto auto auto auto;gap:9px;border:0;border-right:1px solid #e3ebf0;border-radius:0;padding:24px 22px;background:#fff;box-shadow:none;transition:background-color .16s ease,box-shadow .16s ease}.assessment-dashboard-original .assessment-action-tile:last-child{border-right:0}.assessment-dashboard-original .assessment-action-tile>div{margin:0 0 4px}.assessment-dashboard-original .assessment-action-tile span{width:40px;height:40px;border-color:#d7e4eb;background:#f7fafc}.assessment-dashboard-original .assessment-action-tile strong{color:#01557e;font-size:1.8rem;line-height:1}.assessment-dashboard-original .assessment-action-tile p{min-height:0;color:#071123;font-size:.96rem;line-height:1.3}.assessment-dashboard-original .assessment-action-tile small{color:#6b7a90;font-size:.78rem;line-height:1.4}.assessment-dashboard-original .assessment-action-tile:hover,.assessment-dashboard-original .assessment-action-tile:focus-visible{border-color:#e3ebf0;background:#f7fbfd;box-shadow:inset 0 3px #01557e;transform:none}[data-theme=dark] .assessment-dashboard-original .assessment-command-brand{border-color:var(--line);background:#4aa7c714}[data-theme=dark] .assessment-dashboard-original .assessment-command-brand h2{color:var(--ink)}[data-theme=dark] .assessment-dashboard-original .assessment-command-brand p{color:var(--brand)}[data-theme=dark] .assessment-dashboard-original .assessment-command-brand span{color:var(--muted)}[data-theme=dark] .assessment-dashboard-original .assessment-action-tile{border-color:var(--line);background:var(--surface-muted)}[data-theme=dark] .assessment-dashboard-original .assessment-action-tile:hover,[data-theme=dark] .assessment-dashboard-original .assessment-action-tile:focus-visible{background:#4aa7c714;box-shadow:inset 0 3px 0 var(--brand)}@media(max-width:1180px){.assessment-dashboard-original .assessment-command-panel{grid-template-columns:1fr}.assessment-dashboard-original .assessment-command-brand{min-height:auto;padding-block:24px;border-right:0;border-bottom:1px solid #d8e3eb}.assessment-dashboard-original .assessment-command-brand span{max-width:70ch}}@media(max-width:980px){.assessment-dashboard-original .assessment-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.assessment-dashboard-original .assessment-action-tile{min-height:176px;border-bottom:1px solid #e3ebf0}.assessment-dashboard-original .assessment-action-tile:nth-child(2n){border-right:0}.assessment-dashboard-original .assessment-action-tile:nth-last-child(-n+2){border-bottom:0}}@media(max-width:720px){.assessment-dashboard-original .assessment-command-brand{min-height:auto;padding:22px}.assessment-dashboard-original .assessment-action-grid{grid-template-columns:1fr}.assessment-dashboard-original .assessment-action-tile{min-height:148px;border-right:0;border-bottom:1px solid #e3ebf0;padding:20px 22px}.assessment-dashboard-original .assessment-action-tile:nth-last-child(2){border-bottom:1px solid #e3ebf0}.assessment-dashboard-original .assessment-action-tile:last-child{border-bottom:0}}.substitute-absence-overlay{position:fixed;inset:0;z-index:90;display:flex;align-items:center;justify-content:center;padding:20px;background:#041f2c80}.substitute-absence-dialog{width:min(560px,100%);max-height:88vh;overflow:auto;background:var(--surface);border-radius:14px;padding:22px 24px;display:grid;gap:16px}.substitute-absence-head{display:flex;align-items:center;justify-content:space-between}.substitute-absence-head h2{margin:0;font-size:1.15rem;color:var(--ink)}.substitute-absence-body{display:grid;gap:16px}.substitute-absence-field{display:grid;gap:6px;font-size:.88rem;font-weight:700;color:var(--ink)}.substitute-absence-field select,.substitute-absence-field input,.substitute-absence-field textarea{border:1px solid var(--input-border);border-radius:10px;padding:10px 12px;background:var(--input-bg);color:var(--ink);font:inherit;font-weight:400}.substitute-absence-field textarea{resize:vertical}.substitute-absence-hint{font-weight:400;font-size:.78rem;color:var(--muted);margin:0}.substitute-hour-list{display:grid;gap:8px}.substitute-hour-option{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--surface-soft);cursor:pointer;font-weight:400}.substitute-hour-option input[type=radio]{margin-top:3px}.substitute-hour-option div{display:grid;gap:2px}.substitute-hour-option strong{font-size:.86rem;color:var(--ink)}.substitute-hour-option span{font-size:.78rem;color:var(--muted)}.substitute-hour-option.active{border-color:var(--brand);background:var(--soft)}.substitute-hour-option.disabled{cursor:default;opacity:.55}.substitute-absence-actions{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--line);padding-top:14px}.assessment-dashboard-original{gap:24px}.assessment-dashboard-original .assessment-dashboard-header{position:relative;min-height:122px;overflow:hidden;padding:28px 30px;background:linear-gradient(90deg,#01557e14,#01557e00 48%),var(--surface)}.assessment-dashboard-original .assessment-dashboard-header:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:#01557e}.assessment-dashboard-original .assessment-dashboard-header>div:first-child{position:relative;display:grid;gap:8px}.assessment-dashboard-original .assessment-dashboard-header h1{margin:0;font-size:clamp(2rem,2.8vw,2.45rem);line-height:1}.assessment-dashboard-original .assessment-dashboard-header p{font-size:1.02rem}.assessment-dashboard-original .assessment-header-actions{position:relative}.assessment-dashboard-original .assessment-status-row{gap:10px}.assessment-dashboard-original .assessment-status-pill{min-height:34px;padding:0 16px;background:#ffffffc7;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.assessment-dashboard-original .assessment-command-panel{grid-template-columns:minmax(330px,.44fr) minmax(0,1fr);border-color:#d5e2eb;background:#fff}.assessment-dashboard-original .assessment-command-brand{min-height:276px;justify-content:center;padding:34px 40px;color:#fff;background:linear-gradient(135deg,#ffffff1f,#fff0 46%),#01557e}.assessment-dashboard-original .assessment-command-brand p,.assessment-dashboard-original .assessment-command-brand h2,.assessment-dashboard-original .assessment-command-brand span{color:#fff}.assessment-dashboard-original .assessment-command-brand p{opacity:.76}.assessment-dashboard-original .assessment-command-brand span{opacity:.92}.assessment-dashboard-original .assessment-command-brand h2{font-size:clamp(2rem,3vw,2.65rem)}.assessment-dashboard-original .assessment-command-body{padding:30px}.assessment-dashboard-original .assessment-action-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.assessment-dashboard-original .assessment-action-tile{min-height:214px;align-content:start;padding:26px;background:linear-gradient(180deg,#fff,#f8fbfd)}.assessment-dashboard-original .assessment-action-tile span{width:48px;height:48px}.assessment-dashboard-original .assessment-action-tile strong{margin-top:8px;font-size:2.55rem}.assessment-dashboard-original .assessment-action-tile p{min-height:46px}.assessment-dashboard-original .assessment-action-tile:hover{box-shadow:0 18px 42px #01557e1f}.assessment-dashboard-original .assessment-kpi-strip{border-color:#d5e2eb;box-shadow:0 16px 36px #1433410f}.assessment-dashboard-original .assessment-kpi-item{min-height:92px;padding:20px 26px}.assessment-dashboard-original .assessment-kpi-item strong{font-size:2rem}.assessment-dashboard-original .assessment-dashboard-grid{grid-template-columns:minmax(0,1.35fr) minmax(310px,.65fr);gap:22px}.assessment-dashboard-original .assessment-academic-panel,.assessment-dashboard-original .assessment-template-panel,.assessment-dashboard-original .assessment-next-panel{min-height:250px}.assessment-dashboard-original .assessment-academic-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.assessment-dashboard-original .assessment-mini-tile,.assessment-dashboard-original .assessment-step-tile{min-height:86px;background:#fff}.assessment-dashboard-original .assessment-template-list .assessment-secondary-button{justify-content:flex-start}[data-theme=dark] .assessment-dashboard-original .assessment-dashboard-header{background:linear-gradient(90deg,#52cef41a,#52cef400 48%),var(--surface)}[data-theme=dark] .assessment-dashboard-original .assessment-status-pill,[data-theme=dark] .assessment-dashboard-original .assessment-command-panel,[data-theme=dark] .assessment-dashboard-original .assessment-action-tile,[data-theme=dark] .assessment-dashboard-original .assessment-kpi-strip,[data-theme=dark] .assessment-dashboard-original .assessment-mini-tile,[data-theme=dark] .assessment-dashboard-original .assessment-step-tile{background:var(--surface-muted)}@media(max-width:1180px){.assessment-dashboard-original .assessment-command-panel,.assessment-dashboard-original .assessment-dashboard-grid{grid-template-columns:1fr}.assessment-dashboard-original .assessment-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.assessment-dashboard-original .assessment-dashboard-header{padding:24px 22px}.assessment-dashboard-original .assessment-header-actions,.assessment-dashboard-original .assessment-action-grid,.assessment-dashboard-original .assessment-kpi-strip,.assessment-dashboard-original .assessment-academic-grid{grid-template-columns:1fr}.assessment-dashboard-original .assessment-command-body{padding:20px}}.btec-project-calendar-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.btec-project-calendar-title{display:flex;align-items:center;gap:8px;color:var(--brand)}.btec-project-calendar-nav{display:flex;align-items:center;gap:8px}.btec-project-calendar-nav span{min-width:130px;text-align:center;font-weight:600;text-transform:capitalize}.btec-project-calendar-nav button{border:1px solid var(--line);background:var(--surface);border-radius:6px;padding:3px 6px;cursor:pointer;color:var(--ink)}.btec-cal-today-btn{font-size:12px;font-weight:600}.btec-cal-today-btn:disabled{opacity:.5;cursor:default}.btec-project-calendar-active{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.btec-active-pill{display:inline-flex;align-items:center;gap:6px;background:var(--success-bg);color:var(--success);border:1px solid var(--success);border-radius:999px;padding:2px 10px;font-size:12.5px;font-weight:600}.btec-active-dot{width:8px;height:8px;border-radius:50%;background:var(--success);animation:btec-active-pulse 1.6s ease-in-out infinite}@keyframes btec-active-pulse{0%,to{opacity:1}50%{opacity:.35}}.btec-project-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.btec-cal-weekday{font-size:11.5px;font-weight:600;color:var(--muted);text-align:center;padding:2px 0}.btec-cal-day{min-height:58px;border:1px solid var(--line);border-radius:6px;padding:3px 4px;display:flex;flex-direction:column;gap:2px;background:var(--surface)}.btec-cal-day.empty{border:none;background:transparent}.btec-cal-day.today{border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand);background:var(--soft)}.btec-cal-day.today>small{color:var(--brand);font-weight:700}.btec-cal-day.running{background:var(--success-bg);border-color:var(--success)}.btec-cal-day small{font-size:11px;color:var(--muted)}.btec-cal-event{border:none;border-radius:5px;font-size:11px;font-weight:600;padding:2px 4px;cursor:pointer;text-align:left;color:var(--white)}.btec-cal-event.active{background:var(--success)}.btec-cal-event.scheduled{background:var(--brand)}.btec-cal-event.past,.btec-cal-event.undated{background:var(--muted)}.btec-cal-event.phase-coordinator{background:#b06a00}[data-theme=dark] .btec-cal-event.phase-coordinator{background:#d8892a;color:#241503}.btec-cal-event{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.btec-cal-event.cont-left{border-top-left-radius:0;border-bottom-left-radius:0;margin-left:-7px}.btec-cal-event.cont-right{border-top-right-radius:0;border-bottom-right-radius:0;margin-right:-7px}.btec-cal-event.spill{overflow:visible;text-overflow:clip;position:relative;z-index:1;pointer-events:auto}.btec-cal-day{position:relative}.btec-cal-day.due-coordinator{background:#b06a001f;border-color:#b06a00}.btec-cal-day.due-student{background:var(--danger-bg);border-color:var(--danger)}[data-theme=dark] .btec-cal-day.due-coordinator{background:#d8892a29;border-color:#d8892a}.btec-cal-flag{position:absolute;top:3px;right:4px;line-height:0}.btec-cal-flag.student{color:var(--danger)}.btec-cal-flag.coordinator{color:#b06a00}[data-theme=dark] .btec-cal-flag.coordinator{color:#d8892a}.btec-cal-detail{margin-top:10px;border:1px solid var(--line);border-radius:10px;padding:12px 14px;background:var(--surface-soft);display:flex;flex-direction:column;gap:8px}.btec-cal-detail-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.btec-cal-detail-head button{border:none;background:transparent;cursor:pointer;color:var(--muted);padding:2px}.btec-cal-detail-title{margin:0;font-size:13px;color:var(--ink)}.btec-cal-detail-dates{display:flex;flex-wrap:wrap;gap:18px;margin:0}.btec-cal-detail-dates dt{font-size:11px;color:var(--muted)}.btec-cal-detail-dates dd{margin:0;font-size:13px;font-weight:600}.btec-cal-detail-aims{margin:0;font-size:12px;color:var(--muted)}.btec-project-calendar-legend{display:flex;flex-wrap:wrap;gap:14px;margin-top:10px;font-size:12px;color:var(--muted);align-items:center}.btec-project-calendar-legend .legend-swatch{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:5px}.legend-swatch.active{background:var(--success)}.legend-swatch.scheduled{background:var(--brand)}.legend-swatch.past{background:var(--muted)}.legend-swatch.coordinator{background:#b06a00}[data-theme=dark] .legend-swatch.coordinator{background:#d8892a}.legend-hint{display:inline-flex;align-items:center;gap:5px}@media(max-width:640px){.btec-cal-day{min-height:44px}.btec-cal-event{font-size:10px;padding:1px 3px}}.btec-create-chooser{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;max-width:720px}.btec-create-option{display:flex;flex-direction:column;align-items:flex-start;gap:6px;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:16px;cursor:pointer;color:var(--ink)}.btec-create-option:hover{border-color:var(--brand)}.btec-create-option svg{color:var(--brand)}.btec-create-option strong{font-size:15px;color:var(--brand)}.btec-create-option span{font-size:13px;line-height:1.45}.btec-unit-docs{margin-top:10px;border-top:1px solid var(--line);padding-top:8px}.btec-unit-docs-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.btec-unit-docs-title{font-size:13px;color:var(--brand)}.btec-unit-docs-rows{display:flex;flex-direction:column;gap:4px;margin-top:6px}.btec-unit-docs-row{display:grid;grid-template-columns:140px 1fr auto;gap:10px;align-items:center;font-size:13px}.btec-unit-docs-label{font-weight:600}.btec-unit-docs-file{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btec-unit-docs-actions{display:inline-flex;gap:6px}@media(max-width:640px){.btec-unit-docs-heading{align-items:flex-start;flex-direction:column}.btec-unit-docs-row{grid-template-columns:1fr;gap:3px}}.btec-panel>.btec-unit-docs:first-child{margin-top:0;border-top:none;padding-top:0}.btec-unit-docs-multi-section{margin-top:16px;border-top:1px solid var(--line);padding-top:10px}.btec-unit-docs-hint{margin:3px 0 8px;font-size:12px;color:var(--muted)}.btec-unit-docs-collapse-toggle{display:flex;align-items:center;gap:6px;background:none;border:none;padding:0;cursor:pointer;color:inherit}.btec-unit-docs-collapse-toggle svg{color:var(--muted);flex-shrink:0}.btec-unit-multidoc-rows{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.btec-unit-multidoc-row{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13px;padding:4px 0}.btec-unit-multidoc-file{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btec-unit-multidoc-actions{display:inline-flex;gap:6px;flex-shrink:0}.btec-unit-multidoc-empty{display:block;margin-bottom:8px;font-size:12px;color:var(--muted)}.btec-unit-multidoc-upload{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.btec-unit-multidoc-scope-select{border:1px solid var(--input-border);border-radius:8px;padding:6px 10px;background:var(--input-bg);color:var(--ink);font:inherit;font-size:12.5px}.btec-unit-multidoc-gate{margin:0;font-size:12.5px;color:var(--muted)}.btec-unit-detail-data{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,max-content));gap:18px;align-items:end}.btec-unit-detail-data div{display:grid;gap:3px}.btec-unit-detail-data span{font-size:12px;color:var(--muted)}.btec-unit-detail-data strong{font-size:14px}.btec-unit-detail-edit{display:grid;grid-template-columns:140px minmax(180px,1fr) 105px 195px auto;gap:12px;align-items:end}.btec-unit-detail-edit label{display:grid;gap:4px;font-size:12px;color:var(--muted);min-width:0}.btec-unit-detail-edit input,.btec-unit-detail-edit select{width:100%;box-sizing:border-box;border:1px solid var(--input-border);border-radius:8px;padding:8px 10px;background:var(--input-bg);color:var(--ink);font:inherit}.btec-unit-detail-edit select{padding-right:28px;text-overflow:ellipsis}.btec-unit-detail-edit .btec-unit-inline-actions{white-space:nowrap}@media(max-width:720px){.btec-unit-detail-edit{grid-template-columns:1fr}}.unit-scenario-brief-panel{display:grid;gap:12px;border:1px solid var(--line);border-left:3px solid var(--brand);border-radius:8px;padding:14px 16px;background:var(--surface)}.unit-scenario-brief-info{display:grid;gap:4px}.unit-scenario-brief-info strong{color:var(--brand);font-size:14px}.unit-scenario-brief-info span{font-size:12px;color:var(--muted)}.unit-scenario-brief-info p{margin:0;font-size:13px;line-height:1.5;color:var(--ink);white-space:pre-line}.unit-scenario-brief-select{max-width:340px;border:1px solid var(--input-border);border-radius:8px;padding:6px 10px;background:var(--input-bg);color:var(--ink);font:inherit;font-size:12.5px}.unit-scenario-brief-actions{display:flex;flex-wrap:wrap;gap:10px}.btec-filters-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.btec-filters-row select,.btec-filters-row input{border:1px solid var(--line);border-radius:8px;padding:7px 10px;font:inherit;font-size:12.5px;background:var(--surface);color:inherit}.btec-criteria-detail{list-style:none;margin:0;padding:8px 0 0;display:grid;gap:6px;font-size:.78rem}.btec-criteria-detail li{padding:6px 10px;border-radius:6px;background:var(--surface-alt, rgba(0,0,0,.03))}.btec-criteria-detail li.met strong{color:var(--brand-dark)}.btec-criteria-detail li.not-met strong{color:#b3261e}.date-input-wrap{position:relative;display:inline-flex;align-items:center;width:100%}.date-input-wrap input[type=text]{width:100%;height:38px;border:1px solid var(--input-border);border-radius:8px;padding:0 34px 0 10px;background:var(--input-bg);color:var(--ink);font:inherit}.date-input-wrap input[type=text]:disabled{opacity:.6;cursor:not-allowed}.date-input-pick-btn{position:absolute;right:4px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer;padding:0}.date-input-pick-btn:hover:not(:disabled){color:var(--brand);background:var(--soft)}.date-input-pick-btn:disabled{cursor:not-allowed;opacity:.5}.date-input-wrap>input.date-input-native-picker{position:absolute;top:50%;right:4px;width:1px;min-width:0;max-width:1px;height:1px;min-height:0;max-height:1px;margin:0;padding:0;border:0;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);opacity:0;transform:translateY(-50%);pointer-events:none;box-shadow:none}.food-order-header,.food-company-header{display:grid;gap:4px;margin-bottom:16px}.food-order-kicker{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;font-weight:600;color:var(--brand);text-transform:uppercase;letter-spacing:.03em}.food-order-header h2,.food-company-header h2{margin:0;font-size:1.3rem;color:var(--ink)}.food-order-header p{margin:0;color:var(--muted);font-size:.9rem}.food-order-current{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px;margin-bottom:14px;border-radius:10px;background:var(--brand-soft, rgba(1,85,126,.08));border:1px solid var(--line)}.food-order-current span{display:inline-flex;align-items:center;gap:6px}.food-order-current .food-order-countdown{margin-left:auto;padding:5px 9px;border-radius:7px;background:var(--surface);color:var(--muted);font-size:.78rem}.food-order-current .food-order-countdown strong{color:var(--brand);font-variant-numeric:tabular-nums}.food-order-current button{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:6px 10px;cursor:pointer}.food-order-error{color:var(--danger, #c0392b);font-size:.85rem}.food-order-notice{color:var(--brand);font-size:.85rem}.food-order-closed{min-height:clamp(420px,calc(100vh - 210px),760px);display:grid;place-items:center;padding:32px;text-align:center}.food-order-closed h2{max-width:720px;margin:0;color:var(--ink);font-size:clamp(1.8rem,4vw,3.6rem);font-weight:700;line-height:1.12;letter-spacing:-.035em}.food-order-final{min-height:clamp(420px,calc(100vh - 210px),760px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:32px;text-align:center}.food-order-final-icon{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:#237c491a;color:#237c49}.food-order-final h2{max-width:760px;margin:0;color:var(--ink);font-size:clamp(1.7rem,3.6vw,3.25rem);line-height:1.12;letter-spacing:-.035em}.food-order-final p{margin:0;color:var(--brand);font-size:1rem;font-weight:700}.food-order-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.food-order-card{display:grid;gap:7px;align-content:start;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:0 4px 14px #102e400a}.food-order-card.active{border-color:var(--brand)}.food-order-card h3{margin:0;font-size:.95rem;color:var(--ink)}.food-order-desc{margin:0;font-size:.82rem;color:var(--muted)}.food-order-price{font-size:.82rem;font-weight:600;color:var(--brand)}.food-monthly-default-badge{grid-column:1;display:inline-flex;align-items:center;justify-content:center;align-self:start;justify-self:start;min-height:26px;padding:4px 10px;border-radius:999px;background:var(--soft);color:var(--muted);font-size:.66rem;font-weight:700;line-height:1;text-align:center}.food-order-btn{margin-top:4px;border:1px solid var(--brand);background:var(--brand);color:#fff;border-radius:8px;padding:7px 10px;cursor:pointer;font-size:.85rem}.food-order-btn:disabled{opacity:.55;cursor:not-allowed}.food-order-btn-danger{border-color:var(--danger, #c0392b);background:transparent;color:var(--danger, #c0392b);display:inline-flex;align-items:center;gap:4px;justify-content:center}.food-confirm-backdrop{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:20px;background:#0c1f2a7a}.food-confirm-dialog{width:min(100%,390px);display:grid;justify-items:center;gap:9px;padding:24px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:0 22px 60px #09223038;text-align:center}.food-confirm-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--soft);color:var(--brand)}.food-confirm-icon-danger{background:#b3261e17;color:var(--danger, #b3261e)}.food-confirm-dialog h3{margin:2px 0 0;color:var(--ink);font-size:1.05rem}.food-confirm-dialog p{margin:0;color:var(--ink);font-size:.9rem}.food-confirm-dialog small{color:var(--muted);font-size:.78rem}.food-order-note-field{width:100%;display:grid;gap:5px;text-align:left}.food-order-note-field>span{color:var(--ink);font-size:.78rem;font-weight:600}.food-order-note-options{display:flex;flex-wrap:wrap;gap:6px;margin:2px 0 3px}.food-order-note-options button{min-height:30px;border:1px solid var(--line);border-radius:999px;padding:5px 9px;background:var(--surface);color:var(--muted);font:inherit;font-size:.72rem;font-weight:600;cursor:pointer}.food-order-note-options button:hover{border-color:var(--brand);color:var(--brand)}.food-order-note-options button.active{border-color:var(--brand);background:var(--soft);color:var(--brand)}.food-catalog-options{display:grid;gap:6px;padding-top:8px;border-top:1px solid var(--line)}.food-catalog-options>span{color:var(--muted);font-size:.72rem;font-weight:700}.food-catalog-options>div{display:flex;flex-wrap:wrap;gap:5px}.food-catalog-options button{border:1px solid var(--line);border-radius:999px;padding:5px 8px;background:var(--surface);color:var(--muted);font:inherit;font-size:.69rem;font-weight:600;cursor:pointer}.food-catalog-options button.active{border-color:var(--brand);background:var(--soft);color:var(--brand)}.food-catalog-options button:disabled{opacity:.55;cursor:wait}.food-order-note-field textarea{width:100%;min-height:72px;resize:vertical;border:1px solid var(--line);border-radius:8px;padding:9px 10px;background:var(--surface);color:var(--ink);font:inherit;font-size:.84rem;line-height:1.35}.food-order-note-field textarea:focus{outline:2px solid color-mix(in srgb,var(--brand) 25%,transparent);border-color:var(--brand)}.food-order-note-field small{justify-self:end}.food-orderer-name{font-weight:600}.food-order-note{display:block;margin-top:5px;color:var(--ink);font-size:.79rem;line-height:1.35}.food-order-note strong{color:var(--brand)}.food-confirm-actions{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:8px}.food-confirm-actions button{min-height:38px;border-radius:8px;padding:8px 13px;font:inherit;font-size:.84rem;font-weight:600;cursor:pointer}.food-confirm-actions .secondary{border:1px solid var(--line);background:var(--surface);color:var(--ink)}.food-confirm-actions .primary{border:1px solid var(--brand);background:var(--brand);color:#fff}.food-confirm-actions .danger{border:1px solid var(--danger, #b3261e);background:var(--danger, #b3261e);color:#fff}.food-confirm-actions button:disabled{opacity:.55;cursor:not-allowed}.food-company-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;flex-wrap:wrap}.food-company-tabs{display:inline-flex;gap:6px}.food-company-tabs button{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:7px 12px;cursor:pointer;font-size:.85rem}.food-company-tabs button.active{background:var(--brand);border-color:var(--brand);color:#fff}.food-company-date{display:inline-flex;align-items:center;gap:6px;font-size:.85rem;color:var(--muted)}.food-company-form{display:grid;grid-template-columns:1.2fr 1.6fr 1fr auto;gap:8px;margin-bottom:16px}.food-company-form input{border:1px solid var(--line);border-radius:8px;padding:8px 10px;font-size:.85rem}.food-company-form button{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--brand);background:var(--brand);color:#fff;border-radius:8px;padding:8px 14px;cursor:pointer}.food-company-orders{display:grid;gap:10px}.food-company-order-group{border:1px solid var(--line);border-radius:10px;overflow:hidden}.food-company-order-head{width:100%;display:flex;align-items:center;justify-content:space-between;padding:12px 14px;background:var(--surface);border:none;cursor:pointer;font-size:.9rem}.food-company-order-list{margin:0;padding:10px 20px;list-style:disc;font-size:.85rem;color:var(--muted);background:var(--panel, #fafbfc)}.food-company-order-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:38px;padding:5px 0;border-bottom:1px solid var(--line)}.food-company-order-list li:last-child{border-bottom:0}.food-company-order-list li button{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:7px;padding:5px 8px;background:var(--surface);color:var(--danger, #b3261e);font:inherit;font-size:.75rem;cursor:pointer}@media(max-width:640px){.food-company-form{grid-template-columns:1fr}.food-order-current{align-items:stretch;flex-direction:column}.food-order-current .food-order-countdown{margin-left:0;justify-content:center}}.food-company-settings{display:flex;align-items:center;gap:8px;margin-bottom:14px;flex-wrap:wrap;font-size:.85rem;color:var(--muted)}.food-company-settings input[type=time]{border:1px solid var(--line);border-radius:8px;padding:6px 8px;font-size:.85rem}.food-company-settings button{border:1px solid var(--brand);background:var(--brand);color:#fff;border-radius:8px;padding:6px 12px;cursor:pointer;font-size:.85rem}.food-company-template-list{display:grid;gap:10px;margin-bottom:16px}.food-company-template-group{border:1px solid var(--line);border-radius:10px;padding:10px 14px;display:grid;gap:6px}.food-company-template-item{display:flex;align-items:center;justify-content:space-between;font-size:.85rem}.food-company-template-item button{border:none;background:transparent;color:var(--danger, #c0392b);cursor:pointer}.food-company-apply,.food-company-export-row{display:flex;align-items:center;gap:8px;margin-top:14px;flex-wrap:wrap;font-size:.85rem;color:var(--muted)}.food-company-apply input[type=date],.food-company-export-row input[type=date]{border:1px solid var(--line);border-radius:8px;padding:6px 8px;font-size:.85rem}.food-company-apply button,.food-company-export-row button{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--brand);background:var(--brand);color:#fff;border-radius:8px;padding:7px 12px;cursor:pointer;font-size:.85rem}.food-company-apply button:disabled,.food-company-export-row button:disabled{opacity:.55;cursor:not-allowed}.food-company-hint{font-size:.82rem;color:var(--muted);margin:0 0 12px}.food-company{display:grid;gap:14px;color:var(--ink)}.food-company-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:0;padding:4px 2px 2px}.food-company-header>div{display:grid;gap:5px}.food-company-header h2{font-size:clamp(1.35rem,2vw,1.75rem);letter-spacing:-.025em}.food-company-header p{margin:0;color:var(--muted);font-size:.86rem}.food-company-today{min-width:210px;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:2px 8px;padding:9px 12px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--brand)}.food-company-today span{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.food-company-today input{grid-column:2;border:0;padding:0;background:transparent;color:var(--ink);font:inherit;font-size:.85rem;font-weight:600}.food-company-commandbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:stretch}.food-company-nav{display:grid;grid-template-columns:repeat(4,minmax(110px,1fr));border:1px solid var(--line);border-radius:10px;background:var(--surface);overflow:hidden}.food-company-nav button{position:relative;display:flex;align-items:center;justify-content:center;gap:7px;min-height:48px;border:0;border-right:1px solid var(--line);background:transparent;color:var(--muted);font:inherit;font-size:.8rem;font-weight:600;cursor:pointer}.food-company-nav button:last-child{border-right:0}.food-company-nav button:hover{color:var(--brand);background:var(--soft)}.food-company-nav button.active{color:var(--brand);background:#005f8612}.food-company-nav button.active:after{content:"";position:absolute;inset:auto 12px 0;height:3px;border-radius:2px 2px 0 0;background:var(--brand)}.food-company-window{display:flex;align-items:center;gap:7px;padding:7px 9px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--muted);font-size:.75rem}.food-company-window svg{color:var(--brand)}.food-company-window input{width:82px;border:1px solid var(--line);border-radius:7px;padding:6px;background:var(--input-bg);color:var(--ink);font:inherit}.food-company-window button{border:1px solid var(--brand);border-radius:7px;padding:6px 10px;background:transparent;color:var(--brand);font:inherit;font-weight:600;cursor:pointer}.food-company-workspace{min-height:360px;padding:clamp(14px,2vw,22px);border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:0 8px 24px #152f3d0b}.food-company-section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:18px;padding-bottom:13px;border-bottom:1px solid var(--line)}.food-company-section-head>div{display:grid;gap:3px}.food-company-section-head span{color:var(--brand);font-size:.66rem;font-weight:700;letter-spacing:.08em}.food-company-section-head h3{margin:0;font-size:1.05rem}.food-company-section-head>strong{padding:5px 9px;border-radius:6px;background:var(--soft);color:var(--brand);font-size:.72rem}.food-company-form{padding:12px;border:1px solid var(--line);border-radius:9px;background:var(--panel, #fafbfc)}.food-company-form input,.food-company-form select{min-width:0;border:1px solid var(--line);border-radius:7px;padding:8px 10px;background:var(--surface);color:var(--ink);font:inherit;font-size:.82rem}.food-company-template-form{grid-template-columns:minmax(150px,.75fr) minmax(260px,1.35fr) auto;align-items:end;padding:10px}.food-company-template-form label{display:grid;gap:5px;min-width:0}.food-company-template-form label>span{color:var(--muted);font-size:.66rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.food-company-selected-day{min-height:38px;display:grid;align-content:center;gap:2px;padding:5px 10px;border:1px solid var(--line);border-radius:7px;background:var(--surface)}.food-company-selected-day>span{color:var(--muted);font-size:.6rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.food-company-selected-day>strong{color:var(--brand);font-size:.78rem}.food-company-template-form select{width:100%;min-height:38px}.food-company-template-form>button{min-height:38px;justify-content:center;font-weight:600}.food-company-week-board{display:grid;grid-template-columns:1fr;gap:8px;margin-bottom:14px}.food-company-week-board>.empty-state{grid-column:1 / -1}.food-company-template-group{min-width:0;gap:0;padding:0;border-radius:9px;overflow:hidden;background:var(--surface)}.food-company-template-group>header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 11px;border-bottom:1px solid var(--line);background:var(--panel, #fafbfc)}.food-company-template-group>header strong{color:var(--ink);font-size:.82rem}.food-company-template-group>header span{display:grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#005f8617;color:var(--brand);font-size:.68rem;font-weight:700}.food-company-template-day{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;min-height:46px;padding:9px 12px;border:0;background:var(--panel, #fafbfc);color:var(--ink);font:inherit;text-align:left;cursor:pointer}.food-company-template-day:hover{background:var(--soft)}.food-company-template-day>strong{font-size:.83rem}.food-company-template-day>span{display:grid;place-items:center;min-width:23px;height:23px;padding:0 7px;border-radius:999px;background:#005f8617;color:var(--brand);font-size:.68rem;font-weight:700}.food-company-template-day>svg{color:var(--muted);transition:transform .18s ease}.food-company-template-day[aria-expanded=true]>svg{transform:rotate(180deg);color:var(--brand)}.food-company-template-day[aria-expanded=true]{border-bottom:1px solid var(--line);color:var(--brand)}.food-company-template-empty{margin:0;padding:14px 12px;color:var(--muted);font-size:.76rem;text-align:center}.food-company-template-items{display:grid}.food-company-template-item{display:grid;grid-template-columns:minmax(0,1fr) auto auto 26px;gap:8px;min-height:38px;padding:7px 9px 7px 11px;border-bottom:1px solid var(--line)}.food-company-template-item:last-child{border-bottom:0}.food-company-template-name{min-width:0;overflow:hidden;color:var(--ink);font-size:.78rem;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.food-company-template-price{padding:3px 6px;border-radius:5px;background:var(--soft);color:var(--brand);font-size:.68rem;font-weight:700;white-space:nowrap}.food-company-template-item button{display:grid;place-items:center;width:26px;height:26px;padding:0;border-radius:6px}.food-company-template-item button:hover{background:#b3261e14}.food-company-template-item .food-monthly-choice{display:inline-flex;width:auto;gap:4px;padding:0 7px;border:1px solid var(--line);color:var(--muted);font-size:.64rem}.food-company-template-item .food-monthly-choice:hover{background:var(--soft);color:var(--brand)}.food-company-template-item .food-monthly-choice.active{border-color:#237c4940;background:#237c491a;color:#237c49}.food-company-publish-plan{display:grid;grid-template-columns:minmax(230px,1fr) auto auto auto;gap:10px;align-items:end;margin-top:4px;padding:11px}.food-company-publish-plan>div{display:flex;align-items:center;gap:9px;align-self:center;color:var(--brand)}.food-company-publish-plan>div>span{display:grid;gap:2px}.food-company-publish-plan strong{color:var(--ink);font-size:.78rem}.food-company-publish-plan small{color:var(--muted);font-size:.68rem}.food-company-publish-plan label{display:grid;gap:4px}.food-company-publish-plan label>span{font-size:.64rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.food-company-publish-plan input[type=date]{min-height:36px}.food-company-publish-plan>button{min-height:36px;justify-content:center;font-weight:600}.food-order-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:9px}.food-order-card{grid-template-columns:1fr auto;gap:5px 12px;padding:12px 14px;border-radius:8px;box-shadow:none}.food-order-card h3,.food-order-desc{grid-column:1}.food-order-price{grid-column:2;grid-row:1}.food-order-card .food-order-btn-danger{grid-column:2;grid-row:2 / span 2;align-self:end;width:32px;height:32px;padding:0;font-size:0;border-color:var(--line);color:var(--muted)}.food-company-orders{gap:7px}.food-company-order-group{border-radius:8px}.food-company-order-head{min-height:48px}.food-company-order-head span{padding:4px 8px;border-radius:999px;background:var(--soft);color:var(--brand);font-size:.75rem;font-weight:700}.food-company-apply{padding:11px 12px;border:1px solid var(--line);border-radius:8px;background:var(--panel, #fafbfc)}@media(max-width:980px){.food-company-commandbar{grid-template-columns:1fr}.food-company-window{justify-content:flex-end}.food-company-week-board{grid-template-columns:1fr}.food-company-publish-plan{grid-template-columns:1fr 1fr 1fr}.food-company-publish-plan>div{grid-column:1 / -1}}@media(max-width:680px){.food-company-header{align-items:stretch;flex-direction:column;gap:12px}.food-company-today{min-width:0}.food-company-nav{grid-template-columns:repeat(2,1fr)}.food-company-nav button:nth-child(2){border-right:0}.food-company-nav button:nth-child(-n+2){border-bottom:1px solid var(--line)}.food-company-window{justify-content:flex-start;flex-wrap:wrap}.food-company-window>span:first-of-type{display:none}.food-company-section-head{align-items:flex-start}.food-company-form,.food-company-week-board,.food-company-publish-plan{grid-template-columns:1fr}.food-company-publish-plan>div{grid-column:auto}}@media(max-height:720px)and (min-width:681px){.food-company{gap:10px}.food-company-header p{display:none}.food-company-workspace{padding-top:14px}}@media(min-width:1500px){.food-company{max-width:1420px;margin-inline:auto}.food-company-workspace{min-height:460px}}.food-students{display:grid;gap:14px;color:var(--ink)}.food-students-header{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding-bottom:14px;border-bottom:1px solid var(--line)}.food-students-header>div:first-child{display:grid;gap:4px}.food-students-header>div:first-child>span{display:inline-flex;align-items:center;gap:6px;color:var(--brand);font-size:.7rem;font-weight:700;letter-spacing:.06em}.food-students-header h2{margin:0;font-size:1.5rem}.food-students-header p{margin:0;color:var(--muted);font-size:.82rem}.food-students-summary{display:grid;grid-template-columns:auto auto auto auto;align-items:baseline;gap:4px 8px;padding:9px 12px;border:1px solid var(--line);border-radius:9px;background:var(--surface)}.food-students-summary strong{color:var(--brand);font-size:1.05rem}.food-students-summary span{color:var(--muted);font-size:.7rem}.food-students-search{width:min(100%,420px);display:flex;align-items:center;gap:8px;padding:0 11px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--muted)}.food-students-search input{width:100%;min-height:38px;border:0;outline:0;background:transparent;color:var(--ink);font:inherit;font-size:.8rem}.food-generation-group{overflow:hidden;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.food-generation-group>header{padding:10px 13px;border-bottom:1px solid var(--line);background:var(--panel, #fafbfc)}.food-generation-group>header>div{display:flex;align-items:center;gap:9px}.food-generation-group>header strong{font-size:.86rem}.food-generation-group>header span{padding:3px 7px;border-radius:999px;background:var(--soft);color:var(--brand);font-size:.66rem;font-weight:700}.food-students-table{display:grid}.food-students-table-head,.food-student-row{display:grid;grid-template-columns:minmax(220px,1.4fr) minmax(90px,.5fr) 190px;gap:14px;align-items:center;padding:8px 13px}.food-students-table-head{color:var(--muted);font-size:.64rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.food-student-row{min-height:46px;border-top:1px solid var(--line);font-size:.78rem}.food-student-row>strong{font-size:.8rem}.food-student-row>span{color:var(--muted)}.food-plan-toggle{display:grid;grid-template-columns:1fr 1fr 1fr;padding:2px;border:1px solid var(--line);border-radius:7px;background:var(--panel, #fafbfc)}.food-plan-toggle button{min-height:29px;border:0;border-radius:5px;background:transparent;color:var(--muted);font:inherit;font-size:.7rem;font-weight:600;cursor:pointer}.food-plan-toggle button.active{background:var(--brand);color:#fff}.food-plan-toggle button.active.none{background:var(--muted);color:#fff}.food-plan-toggle button:disabled{opacity:.55;cursor:wait}@media(max-width:680px){.food-students-header{align-items:stretch;flex-direction:column}.food-students-summary{align-self:flex-start}.food-students-table-head{display:none}.food-student-row{grid-template-columns:1fr auto;gap:6px 12px}.food-student-row>strong{grid-column:1}.food-student-row>span{grid-column:2;grid-row:1}.food-plan-toggle{grid-column:1 / -1}}@container internship (max-width: 960px){.assessment-internship-workspace-controls{grid-template-columns:minmax(0,1fr) minmax(135px,180px)}.assessment-internship-workspace-progress{grid-column:1 / -1;min-height:auto}.assessment-internship-setup-layout,.assessment-internship-plan-layout{grid-template-columns:1fr}.assessment-internship-setup-summary,.assessment-internship-day-control{position:static}.assessment-internship-grouping-controls{grid-template-columns:1fr 1fr}.assessment-internship-grouping-rules{grid-column:1 / -1}.assessment-internship-result-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@container internship (max-width: 680px){.assessment-internship-workspace-head{grid-template-columns:1fr;padding:15px}.assessment-internship-workspace-head>.assessment-secondary-button{justify-self:start}.assessment-internship-workspace-controls,.assessment-internship-grouping-controls,.assessment-internship-grouping-rules,.assessment-internship-results-toolbar{grid-template-columns:1fr}.assessment-internship-workspace-progress,.assessment-internship-grouping-rules{grid-column:auto}.assessment-internship-section-heading,.assessment-internship-plan-title,.assessment-internship-activity-toolbar,.assessment-internship-editor-actions,.assessment-internship-evaluation-actions{align-items:stretch;flex-direction:column}.assessment-internship-section-heading{display:flex}.assessment-internship-section-heading>.assessment-secondary-button,.assessment-internship-section-heading>.assessment-internship-access-badge,.assessment-internship-section-heading>.assessment-internship-count-badge{align-self:flex-start}.assessment-internship-export-controls{display:grid;grid-template-columns:1fr;width:100%;justify-content:stretch}.assessment-internship-export-controls .assessment-create-field{min-width:0}.assessment-internship-export-controls .assessment-secondary-button{width:100%}.assessment-internship-plan-title{display:flex}.assessment-internship-date-field{width:100%}.assessment-internship-activity-toolbar>div:last-child,.assessment-internship-evaluation-actions>div:last-child{justify-content:flex-start}.assessment-internship-form-grid,.assessment-internship-form-grid.wide-first{grid-template-columns:1fr}.assessment-internship-agenda-head{display:none}.assessment-internship-agenda-row{grid-template-columns:54px minmax(0,1fr) auto;gap:7px}.assessment-internship-agenda-row>time{grid-column:1;grid-row:1}.assessment-internship-kind-label{grid-column:2;grid-row:1}.assessment-internship-agenda-copy{grid-column:1 / -1;grid-row:2}.assessment-internship-lifecycle-status{grid-column:3;grid-row:1}.assessment-internship-agenda-actions{grid-column:1 / -1;grid-row:3;justify-content:flex-start}.assessment-internship-schedule-editor{grid-template-columns:1fr 1fr}.assessment-internship-schedule-editor>div{grid-column:1 / -1}.assessment-internship-results-toolbar>span{justify-self:start}.assessment-internship-evaluation-actions{display:grid;grid-template-columns:1fr}.assessment-internship-ai-source-select{width:100%}.assessment-grading-ai-actions{align-items:stretch;flex-direction:column;width:100%}.assessment-grading-ai-actions label{min-width:0}.assessment-grading-ai-actions-wrap{justify-items:stretch;width:100%}.assessment-ai-missing-hint{max-width:none}}@container internship (max-width: 460px){.assessment-internship-result-metrics,.assessment-internship-summary-metrics,.assessment-internship-choice-grid{grid-template-columns:1fr}.assessment-internship-summary-metrics>div{border-right:0}.assessment-internship-summary-metrics>div:nth-last-child(2){border-bottom:1px solid var(--line)}.assessment-internship-group-roster>div{grid-template-columns:1fr}.assessment-internship-inline-error{grid-template-columns:auto minmax(0,1fr)}.assessment-internship-inline-error button{grid-column:2;justify-self:start}}@container student-internship (max-width: 760px){.student-internship-workspace-head{align-items:flex-start;flex-direction:column}.student-internship-today-layout{grid-template-columns:1fr}.student-internship-week-table>article{grid-template-columns:1fr 1fr}.student-internship-mates{grid-column:1 / -1}}@container student-internship (max-width: 480px){.student-internship-workspace-head{padding:14px}.student-internship-agenda-row{grid-template-columns:48px 28px minmax(0,1fr)}.student-internship-agenda-row>a,.student-internship-agenda-row>button{grid-column:2 / -1;justify-self:start}.student-internship-week-table>article{grid-template-columns:1fr}.student-internship-mates{grid-column:auto}}@media(max-height:720px)and (min-width:761px){.assessment-internship-workspace-head{padding-block:14px}.assessment-internship-setup-summary,.assessment-internship-day-control{top:8px}.assessment-internship-config-section{padding-block:12px}}@media(pointer:coarse){.assessment-internship-day-rail button,.assessment-internship-activity-toolbar button,.assessment-internship-agenda-actions button,.student-internship-agenda-row>a,.student-internship-agenda-row>button{min-height:44px}}.assessment-assignments-workspace .assessment-page-header,.assessment-assignment-builder .assessment-create-header{border:0;padding:8px 2px 18px;background:transparent;box-shadow:none}.assessment-assignments-workspace .assessment-page-header h1{font-size:clamp(1.7rem,2.4vw,2.15rem);letter-spacing:-.035em}.assessment-assignments-workspace .assessment-origin-layout>.assessment-panel{border-color:#e5eaee;border-radius:14px}.assessment-assignments-workspace .assessment-panel-title.split{min-height:74px;padding:15px 18px}.assessment-assignments-workspace .assessment-origin-card{position:relative;grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:15px 18px}.assessment-assignments-workspace .assessment-origin-card-head,.assessment-assignments-workspace .assessment-origin-badges{grid-column:1}.assessment-assignments-workspace .assessment-origin-actions{grid-column:2;grid-row:1 / 3;align-self:center;justify-content:flex-end;border:0;padding:0}.assessment-assignments-workspace .assessment-origin-badges span:nth-child(2),.assessment-assignments-workspace .assessment-origin-badges span:nth-child(4){display:none}.assessment-more-button{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--muted);cursor:pointer}.assessment-more-button:hover,.assessment-more-button[aria-expanded=true]{border-color:#a9c4d2;background:var(--soft);color:var(--brand)}.assessment-row-menu{position:absolute;z-index:20;right:18px;top:calc(50% + 25px);width:220px;display:grid;gap:3px;border:1px solid var(--line);border-radius:11px;padding:6px;background:var(--surface);box-shadow:0 16px 36px #0f223029}.assessment-row-menu button{min-height:38px;display:flex;align-items:center;gap:9px;border:0;border-radius:7px;padding:0 10px;background:transparent;color:var(--ink);font:inherit;font-size:.82rem;font-weight:700;text-align:left;cursor:pointer}.assessment-row-menu button:hover{background:var(--surface-soft)}.assessment-row-menu button.danger{color:var(--danger)}.assessment-assignment-builder{max-width:1320px;margin:0 auto}.assessment-assignment-builder .assessment-create-header h1{font-size:clamp(1.45rem,2vw,1.85rem);letter-spacing:-.025em}.assessment-assignment-builder .assessment-builder-steps{border-radius:12px}.assessment-assignment-builder .assessment-builder-steps button{min-height:50px;font-size:.86rem}.assessment-assignment-builder .assessment-builder-steps.advanced-open{opacity:.58}.assessment-assignment-builder .assessment-create-layout{grid-template-columns:minmax(0,1fr) 280px}.assessment-assignment-builder .assessment-create-form-card{border-color:#e5eaee;padding:clamp(20px,3vw,34px)}.assessment-assignment-builder .assessment-create-side .assessment-create-summary{padding:18px}.assessment-assignment-advanced{margin:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.assessment-assignment-advanced>summary{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:0 4px;color:var(--ink);cursor:pointer;list-style:none}.assessment-assignment-advanced>summary::-webkit-details-marker{display:none}.assessment-assignment-advanced>summary span{display:inline-flex;align-items:center;gap:9px}.assessment-assignment-advanced>summary svg{color:var(--brand)}.assessment-assignment-advanced>summary small{color:var(--muted);font-size:.76rem}.assessment-assignment-advanced[open]>summary{border-bottom:1px solid var(--line)}.assessment-assignment-advanced .assessment-create-inner-card{margin:14px 0}.assessment-assignment-logistics-link{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:20px;border-top:1px solid var(--line);padding:16px 2px 0}.assessment-assignment-logistics-link>div{display:grid;gap:3px}.assessment-assignment-logistics-link strong{color:var(--ink);font-size:.88rem}.assessment-assignment-logistics-link span{color:var(--muted);font-size:.78rem}.assessment-assignment-builder .assessment-create-bottom{position:sticky;z-index:15;bottom:12px;margin-top:-4px;border:1px solid var(--line);border-radius:12px;padding:10px;background:color-mix(in srgb,var(--surface) 94%,transparent);box-shadow:0 10px 28px #0f22301a;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.assessment-assignment-builder .assessment-create-form-card :is(button,input,select,textarea){scroll-margin-block:88px}@media(max-width:1240px){.assessment-assignment-builder .assessment-create-layout{grid-template-columns:1fr}.assessment-assignment-builder .assessment-create-side{position:static}.assessment-assignment-builder .assessment-create-bottom{position:static;bottom:auto}}@media(max-width:980px){.assessment-assignment-builder .assessment-create-layout{grid-template-columns:1fr}.assessment-assignment-builder .assessment-create-side{position:static}}@media(max-width:720px){.assessment-assignments-workspace .assessment-origin-card{grid-template-columns:1fr}.assessment-assignments-workspace .assessment-origin-card-head,.assessment-assignments-workspace .assessment-origin-badges,.assessment-assignments-workspace .assessment-origin-actions{grid-column:1;grid-row:auto}.assessment-assignments-workspace .assessment-origin-actions{justify-content:flex-start}.assessment-row-menu{right:12px;top:auto;bottom:56px}.assessment-assignment-builder .assessment-create-header{grid-template-columns:36px minmax(0,1fr)}.assessment-assignment-builder .assessment-create-actions{grid-column:1 / -1}.assessment-assignment-builder .assessment-builder-steps{grid-template-columns:repeat(3,minmax(0,1fr))}.assessment-assignment-builder .assessment-builder-steps button{border-bottom:0;font-size:.75rem}.assessment-assignment-logistics-link{align-items:flex-start;flex-direction:column}}.food-order-source-tag{margin-left:6px;padding:2px 6px;border-radius:999px;background:#005f8617;color:var(--brand);font-size:.64rem;font-style:normal;font-weight:700}.food-order-source-tag.monthly{background:#237c491a;color:#237c49}.food-order-source-tag.role{background:#78787824;color:var(--muted)}.food-order-page{position:relative}.food-order-tomorrow-anchor{position:absolute;top:0;right:0;z-index:3}.food-order-tomorrow-toggle{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--brand);font-size:.82rem;font-weight:600;cursor:pointer}.food-order-tomorrow-toggle:hover{border-color:var(--brand)}.food-order-tomorrow-toggle svg{transition:transform .15s ease}.food-order-tomorrow-toggle svg.flipped{transform:rotate(180deg)}.food-order-tomorrow-backdrop{position:fixed;inset:0;z-index:2;background:transparent}.food-order-tomorrow-popover{position:absolute;top:calc(100% + 8px);right:0;z-index:4;width:min(520px,calc(100vw - 40px));max-height:min(70vh,640px);overflow-y:auto;padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:0 18px 40px #102e4029}@media(max-width:640px){.food-order-tomorrow-popover{position:fixed;inset:auto 0 0;width:auto;max-height:80vh;border-radius:16px 16px 0 0}}.substitute-session-wizard,.substitute-dashboard-live{color:var(--ink);container-type:inline-size}.substitute-session-wizard{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;min-height:calc(100vh - 116px);border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--surface)}.substitute-wizard-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;border-bottom:1px solid var(--line);padding:16px 18px;background:var(--surface)}.substitute-wizard-head>button,.substitute-wizard-footer button,.substitute-dashboard-live-head button,.substitute-dashboard-today header button,.substitute-dashboard-empty button{display:inline-flex;gap:7px;align-items:center;justify-content:center;min-height:38px;border:1px solid var(--line);border-radius:7px;padding:0 11px;color:var(--ink);background:var(--surface-soft);font:inherit;font-size:.78rem;font-weight:800;cursor:pointer}.substitute-wizard-head>div{display:grid;gap:2px}.substitute-wizard-head span,.substitute-dashboard-live-head span{color:var(--brand);font-size:.68rem;font-weight:900;letter-spacing:.08em}.substitute-wizard-head h1{margin:0;font-size:clamp(1.15rem,2vw,1.5rem)}.substitute-wizard-head p,.substitute-dashboard-live-head p{margin:0;color:var(--muted);font-size:.78rem}.substitute-wizard-steps{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line);background:var(--surface-soft)}.substitute-wizard-steps button{display:flex;gap:8px;align-items:center;min-height:52px;border:0;border-right:1px solid var(--line);padding:8px 14px;color:var(--muted);background:transparent;font:inherit}.substitute-wizard-steps button:last-child{border-right:0}.substitute-wizard-steps button>span{display:grid;place-items:center;width:24px;height:24px;border:1px solid var(--line-strong);border-radius:50%;font-size:.72rem}.substitute-wizard-steps button strong{font-size:.76rem}.substitute-wizard-steps button.active{color:var(--brand);box-shadow:inset 0 -3px 0 var(--brand);background:var(--surface)}.substitute-wizard-steps button.active>span{border-color:var(--brand);color:#fff;background:var(--brand)}.substitute-wizard-steps button.done{color:#18794e;cursor:pointer}.substitute-wizard-steps button.done>span{border-color:#18794e;color:#fff;background:#18794e}.substitute-wizard-body{overflow:auto;padding:18px;background:var(--page-bg)}.substitute-wizard-section{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:1040px;margin:0 auto;border:1px solid var(--line);border-radius:9px;padding:18px;background:var(--surface)}.substitute-wizard-section>header{display:flex;grid-column:1/-1;gap:10px;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:13px}.substitute-wizard-section>header>svg{color:var(--brand)}.substitute-wizard-section>header h2{margin:0 0 2px;font-size:1rem}.substitute-wizard-section>header p{margin:0;color:var(--muted);font-size:.76rem}.substitute-wizard-section label{display:grid;gap:6px;color:var(--muted);font-size:.74rem;font-weight:800}.substitute-wizard-section label.full,.substitute-wizard-choice-row,.substitute-wizard-students,.substitute-wizard-info,.substitute-wizard-settings{grid-column:1/-1}.substitute-wizard-section input,.substitute-wizard-section select,.substitute-wizard-section textarea{width:100%;min-height:40px;border:1px solid var(--input-border);border-radius:7px;padding:8px 10px;outline:0;color:var(--ink);background:var(--input-bg);font:inherit;font-size:.8rem}.substitute-wizard-section textarea{resize:vertical;line-height:1.45}.substitute-wizard-section input:focus,.substitute-wizard-section select:focus,.substitute-wizard-section textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 16%,transparent)}.substitute-wizard-grid{display:grid;grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.substitute-wizard-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.substitute-wizard-toggle{display:flex!important;grid-column:1/-1;gap:10px!important;align-items:center;border:1px solid var(--line);border-radius:7px;padding:10px;background:var(--surface-soft)}.substitute-wizard-toggle input,.substitute-wizard-settings input[type=checkbox],.substitute-wizard-students input{width:17px;min-height:17px;accent-color:var(--brand)}.substitute-wizard-toggle span{display:grid}.substitute-wizard-toggle small,.substitute-wizard-settings small{color:var(--muted);font-weight:500}.substitute-wizard-choice-row{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.substitute-wizard-choice-row button{display:grid;gap:4px;border:1px solid var(--line);border-radius:8px;padding:13px;text-align:left;color:var(--ink);background:var(--surface-soft);font:inherit}.substitute-wizard-choice-row button.active{border-color:var(--brand);box-shadow:inset 3px 0 0 var(--brand)}.substitute-wizard-choice-row span{color:var(--muted);font-size:.72rem}.substitute-wizard-students{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;max-height:300px;overflow:auto;border:1px solid var(--line);border-radius:8px;padding:10px}.substitute-wizard-students label{display:flex;gap:8px;align-items:center;border:1px solid var(--line);border-radius:6px;padding:9px;color:var(--ink);background:var(--surface-soft)}.substitute-wizard-info{display:flex;gap:9px;align-items:center;border-left:3px solid var(--brand);padding:11px 12px;color:var(--muted);background:var(--surface-soft);font-size:.78rem}.substitute-wizard-settings{display:grid;gap:8px}.substitute-wizard-settings>label{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:7px;padding:10px 12px;background:var(--surface-soft)}.substitute-wizard-settings>label>span{display:grid;gap:2px}.substitute-wizard-settings input[type=number]{width:76px}.substitute-wizard-inline-input{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center}.substitute-wizard-inline-input input{border-radius:7px 0 0 7px}.substitute-wizard-inline-input em{display:grid;place-items:center;height:40px;border:1px solid var(--input-border);border-left:0;border-radius:0 7px 7px 0;padding:0 9px;color:var(--muted);background:var(--surface-soft);font-style:normal}.substitute-wizard-footer{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center;border-top:1px solid var(--line);padding:12px 18px;background:var(--surface)}.substitute-wizard-footer>span{color:var(--muted);font-size:.72rem;font-weight:800}.substitute-wizard-footer button{justify-self:start;min-height:40px;padding:0 15px}.substitute-wizard-footer button:last-child{justify-self:end}.substitute-wizard-footer button.primary,.substitute-dashboard-live-head button.primary,.substitute-dashboard-empty button{border-color:var(--primary-button);color:#fff;background:var(--primary-button)}.substitute-wizard-loading{display:grid;place-items:center;min-height:420px;color:var(--muted)}.substitute-dashboard-live{display:grid;gap:13px}.substitute-dashboard-live-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;border:1px solid var(--line);border-radius:9px;padding:16px 18px;background:var(--surface)}.substitute-dashboard-live-head>div:first-child{display:grid;gap:2px}.substitute-dashboard-live-head h1{margin:0;font-size:1.35rem}.substitute-dashboard-live-head>div:last-child{display:flex;gap:7px}.substitute-dashboard-context{display:flex;gap:8px}.substitute-dashboard-context>div{display:flex;gap:7px;align-items:center;border:1px solid var(--line);border-radius:6px;padding:7px 10px;color:var(--muted);background:var(--surface);font-size:.72rem}.substitute-dashboard-context svg,.substitute-dashboard-school-metrics svg{color:var(--brand)}.substitute-dashboard-context strong{color:var(--ink)}.substitute-dashboard-action-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:9px;overflow:hidden;background:var(--surface)}.substitute-dashboard-action-grid button{display:grid;grid-template-columns:auto 1fr auto;gap:4px 8px;align-items:center;border:0;border-right:1px solid var(--line);padding:13px;text-align:left;color:var(--ink);background:transparent;font:inherit}.substitute-dashboard-action-grid button:last-child{border-right:0}.substitute-dashboard-action-grid button:hover{background:var(--surface-soft)}.substitute-dashboard-action-grid svg{grid-row:1/3;color:var(--brand)}.substitute-dashboard-action-grid span{color:var(--muted);font-size:.68rem;font-weight:900;text-transform:uppercase}.substitute-dashboard-action-grid strong{justify-self:end;font-size:1.15rem}.substitute-dashboard-action-grid small{grid-column:2/4;overflow:hidden;color:var(--muted);font-size:.68rem;text-overflow:ellipsis;white-space:nowrap}.substitute-dashboard-school-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.substitute-dashboard-school-metrics>div{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;border:1px solid var(--line);border-radius:7px;padding:10px 12px;background:var(--surface)}.substitute-dashboard-school-metrics span{color:var(--muted);font-size:.72rem}.substitute-dashboard-today{border:1px solid var(--line);border-radius:9px;overflow:hidden;background:var(--surface)}.substitute-dashboard-today>header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:12px 14px}.substitute-dashboard-today h2{margin:0;font-size:.92rem}.substitute-dashboard-today p{margin:2px 0 0;color:var(--muted);font-size:.72rem}.substitute-dashboard-session-list{display:grid}.substitute-dashboard-session-list>button{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:11px;align-items:center;border:0;border-bottom:1px solid var(--line);padding:11px 14px;text-align:left;color:var(--ink);background:transparent;font:inherit}.substitute-dashboard-session-list>button:hover{background:var(--surface-soft)}.substitute-dashboard-session-list .status{border-radius:999px;padding:4px 7px;color:var(--muted);background:var(--surface-soft);font-size:.64rem;font-weight:900;text-transform:uppercase}.substitute-dashboard-session-list .status.live{color:#146c43;background:#e8f5ee}.substitute-dashboard-session-list>button>div{display:grid;gap:2px;min-width:0}.substitute-dashboard-session-list small{overflow:hidden;color:var(--muted);font-size:.7rem;text-overflow:ellipsis;white-space:nowrap}.substitute-dashboard-session-list em{color:var(--muted);font-size:.7rem;font-style:normal}.substitute-dashboard-empty{display:grid;place-items:center;gap:5px;padding:32px 16px;color:var(--muted);text-align:center}.substitute-dashboard-empty strong{color:var(--ink)}.substitute-dashboard-empty span{font-size:.76rem}@container (max-width:760px){.substitute-wizard-head{grid-template-columns:auto minmax(0,1fr)}.substitute-wizard-close{display:none!important}.substitute-wizard-steps button{justify-content:center;padding:8px}.substitute-wizard-steps button strong{display:none}.substitute-wizard-section,.substitute-wizard-grid,.substitute-wizard-grid.three{grid-template-columns:1fr}.substitute-wizard-students{grid-template-columns:repeat(2,minmax(0,1fr))}.substitute-dashboard-live-head{grid-template-columns:1fr}.substitute-dashboard-action-grid{grid-template-columns:repeat(2,1fr)}.substitute-dashboard-action-grid button:nth-child(2){border-right:0}.substitute-dashboard-school-metrics{grid-template-columns:repeat(2,1fr)}}@container (max-width:480px){.substitute-session-wizard{min-height:calc(100vh - 88px);border-radius:0}.substitute-wizard-head{padding:12px}.substitute-wizard-head p{display:none}.substitute-wizard-body{padding:9px}.substitute-wizard-section{gap:11px;padding:12px}.substitute-wizard-choice-row,.substitute-wizard-students{grid-template-columns:1fr}.substitute-wizard-footer{grid-template-columns:1fr 1fr;padding:10px}.substitute-wizard-footer>span{display:none}.substitute-dashboard-live-head>div:last-child{display:grid;grid-template-columns:1fr 1fr}.substitute-dashboard-context{display:grid}.substitute-dashboard-action-grid,.substitute-dashboard-school-metrics{grid-template-columns:1fr}.substitute-dashboard-action-grid button{border-right:0;border-bottom:1px solid var(--line)}.substitute-dashboard-session-list>button{grid-template-columns:1fr auto}.substitute-dashboard-session-list .status{grid-column:1/-1;justify-self:start}}.substitute-student-dashboard-live,.substitute-student-runtime{display:grid;gap:14px;color:var(--ink)}.substitute-student-dashboard-live>header{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid var(--line);border-radius:9px;padding:16px 18px;background:var(--surface)}.substitute-student-dashboard-live>header small,.substitute-student-next-live>div>span,.substitute-student-waiting small,.substitute-student-finish small{color:var(--brand);font-size:.67rem;font-weight:900;letter-spacing:.08em}.substitute-student-dashboard-live>header h1{margin:2px 0;font-size:1.3rem}.substitute-student-dashboard-live>header p{margin:0;color:var(--muted);font-size:.76rem}.substitute-student-dashboard-live>header button{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:6px;padding:8px 10px;color:var(--ink);background:var(--surface-soft);font:inherit;font-size:.74rem;font-weight:800}.substitute-student-alert,.substitute-offline-banner{display:flex;align-items:center;gap:8px;border:1px solid #e6b8b4;border-radius:6px;padding:10px 12px;color:#9d271f;background:#fff5f4;font-size:.76rem;font-weight:700}.substitute-student-next-live{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;border:1px solid var(--line);border-left:4px solid var(--line-strong);border-radius:8px;padding:18px;background:var(--surface)}.substitute-student-next-live.active{border-left-color:#168153;background:var(--surface)}.substitute-student-next-live h2{margin:5px 0;font-size:1.2rem}.substitute-student-next-live p{margin:0;color:var(--muted);font-size:.78rem}.substitute-student-next-live small{display:block;margin-top:5px;color:var(--muted)}.substitute-student-next-live>button,.substitute-student-session-list article>button,.substitute-student-finish>button,.substitute-student-waiting>button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:39px;border:1px solid var(--primary-button);border-radius:6px;padding:0 13px;color:#fff;background:var(--primary-button);font:inherit;font-size:.75rem;font-weight:900}.substitute-student-next-live>button:disabled,.substitute-student-session-list article>button:disabled,.substitute-student-finish>button:disabled{border-color:var(--line);color:var(--muted);background:var(--surface-soft)}.substitute-student-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.substitute-student-kpis article{display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center;border:1px solid var(--line);border-radius:7px;padding:11px 13px;background:var(--surface)}.substitute-student-kpis svg{color:var(--brand)}.substitute-student-kpis span{color:var(--muted);font-size:.75rem}.substitute-student-kpis strong{font-size:1.1rem}.substitute-student-session-list,.substitute-student-materials{overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.substitute-student-session-list>header,.substitute-student-materials>header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:11px 14px}.substitute-student-session-list h2,.substitute-student-materials h2{margin:0;font-size:.9rem}.substitute-student-session-list>header span,.substitute-student-materials>header span{color:var(--muted);font-size:.7rem}.substitute-student-session-list article{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:11px;align-items:center;border-bottom:1px solid var(--line);padding:11px 14px}.substitute-student-session-list article:last-child{border-bottom:0}.substitute-student-session-list article>div:nth-child(2){display:grid;gap:2px}.substitute-student-session-list article>div:nth-child(2) span{color:var(--muted);font-size:.7rem}.substitute-student-session-list .status{border-radius:999px;padding:4px 7px;color:var(--muted);background:var(--surface-soft);font-size:.62rem;font-weight:900;text-transform:uppercase}.substitute-student-session-list .status.live{color:#137147;background:#e7f6ee}.substitute-student-session-list .status.paused{color:#765b0a;background:#fff5d7}.substitute-student-session-list .status.ended{color:#596170;background:#edf0f3}.substitute-student-empty{display:grid;place-items:center;gap:7px;padding:34px;color:var(--muted);text-align:center}.substitute-student-empty strong{color:var(--ink)}.substitute-student-empty span{font-size:.75rem}.substitute-student-empty.compact{padding:22px}.substitute-student-runtime-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:13px 15px;background:var(--surface)}.substitute-student-runtime-head>button{display:inline-flex;align-items:center;gap:6px;border:0;color:var(--brand);background:transparent;font:inherit;font-size:.74rem;font-weight:900}.substitute-student-runtime-head>div:nth-child(2){display:grid;gap:2px}.substitute-student-runtime-head h1{margin:0;font-size:1.12rem}.substitute-student-runtime-head small{color:var(--brand);font-size:.68rem;font-weight:800}.substitute-student-runtime-head span{color:var(--muted);font-size:.7rem}.substitute-student-runtime-head>div:last-child{display:grid;min-width:130px;gap:2px;border-left:1px solid var(--line);padding-left:14px;text-align:right}.substitute-student-runtime-head>div:last-child span{font-size:.58rem;font-weight:900;letter-spacing:.07em}.substitute-student-runtime-head>div:last-child strong{font-size:1rem}.substitute-student-runtime-head>div:last-child.active strong{color:#137147;font-variant-numeric:tabular-nums}.substitute-student-instructions{display:flex;gap:9px;align-items:flex-start;border:1px solid #b8d3e0;border-left:3px solid var(--brand);border-radius:6px;padding:10px 12px;color:var(--muted);background:#f4f9fb;font-size:.76rem;line-height:1.45}.substitute-student-instructions svg{flex:0 0 auto;color:var(--brand)}.substitute-student-materials>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:10px}.substitute-student-materials button{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center;border:1px solid var(--line);border-radius:6px;padding:9px;text-align:left;color:var(--ink);background:var(--surface-soft);font:inherit}.substitute-student-materials button>svg{color:var(--brand)}.substitute-student-materials button span{display:grid;gap:2px;min-width:0}.substitute-student-materials button strong{overflow:hidden;font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}.substitute-student-materials button small{color:var(--muted);font-size:.62rem}.substitute-student-task-runtime-list{display:grid;gap:10px}.substitute-student-task-runtime{overflow:hidden;border:1px solid var(--line);border-left:4px solid var(--line-strong);border-radius:8px;background:var(--surface)}.substitute-student-task-runtime.open{border-left-color:#168153}.substitute-student-task-runtime.upcoming{background:var(--surface-soft)}.substitute-student-task-runtime>header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;border-bottom:1px solid var(--line);padding:11px 14px}.substitute-student-task-runtime>header span{color:var(--muted);font-size:.62rem;font-weight:900;text-transform:uppercase}.substitute-student-task-runtime h2{margin:2px 0 0;font-size:.92rem}.substitute-student-task-runtime .status{border-radius:999px;padding:4px 7px;font-size:.61rem;font-weight:900}.substitute-student-task-runtime .status.open{color:#137147;background:#e7f6ee}.substitute-student-task-runtime .status.upcoming{color:#775d12;background:#fff3cf}.substitute-student-task-runtime .status.closed{color:#596170;background:#edf0f3}.substitute-task-locked{display:grid;place-items:center;gap:4px;padding:26px;color:var(--muted);text-align:center}.substitute-task-locked strong{color:var(--ink);font-size:.8rem}.substitute-task-locked span{font-size:.7rem}.substitute-task-runtime-body{display:grid;gap:12px;padding:14px}.substitute-task-runtime-body>p{margin:0;color:var(--muted);font-size:.77rem;line-height:1.5}.substitute-info-block{display:flex;gap:8px;align-items:center;border:1px solid var(--line);border-radius:6px;padding:12px;color:var(--muted);background:var(--surface-soft);font-size:.75rem}.substitute-student-options{display:grid;gap:7px}.substitute-student-options label{display:flex;gap:9px;align-items:center;border:1px solid var(--line);border-radius:6px;padding:10px 11px;background:var(--surface-soft);font-size:.76rem}.substitute-student-options label:has(input:checked){border-color:var(--brand);box-shadow:inset 3px 0 0 var(--brand);background:#f0f7fa}.substitute-student-options input{accent-color:var(--brand)}.substitute-student-answer{display:grid;gap:5px}.substitute-student-answer textarea{min-height:130px;border:1px solid var(--input-border);border-radius:6px;padding:10px;resize:vertical;color:var(--ink);background:var(--input-bg);font:inherit;font-size:.78rem;line-height:1.5}.substitute-student-answer textarea:focus{outline:2px solid color-mix(in srgb,var(--brand) 17%,transparent);border-color:var(--brand)}.substitute-student-answer>span{justify-self:end;color:var(--muted);font-size:.64rem}.substitute-task-runtime-body footer{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding-top:11px}.substitute-task-runtime-body footer>button{display:inline-flex;align-items:center;gap:6px;min-height:36px;border:1px solid var(--primary-button);border-radius:5px;padding:0 12px;color:#fff;background:var(--primary-button);font:inherit;font-size:.72rem;font-weight:900}.substitute-task-runtime-body footer>button:disabled{border-color:var(--line);color:var(--muted);background:var(--surface-soft)}.save-state{display:inline-flex;align-items:center;gap:5px;color:var(--muted);font-size:.68rem}.save-state svg{width:14px;height:14px}.save-state.saved,.save-state.submitted{color:#137147}.save-state.queued{color:#9b6911}.substitute-student-file-upload{display:grid;gap:7px}.substitute-student-file-upload>label{display:grid;place-items:center;gap:4px;border:1.5px dashed #a8bdc8;border-radius:7px;padding:18px;color:var(--muted);background:var(--surface-soft);text-align:center}.substitute-student-file-upload>label strong{color:var(--ink);font-size:.76rem}.substitute-student-file-upload>label span{font-size:.65rem}.substitute-student-file-upload>div{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center;border:1px solid var(--line);border-radius:5px;padding:8px}.substitute-student-file-upload>div span{display:grid}.substitute-student-file-upload>div strong{font-size:.7rem}.substitute-student-file-upload>div small{color:var(--muted);font-size:.61rem}.substitute-student-file-upload>div button{border:0;color:#b42318;background:transparent}.substitute-student-finish{display:flex;align-items:center;justify-content:space-between;gap:15px;border:1px solid var(--line);border-radius:8px;padding:14px 16px;background:var(--surface)}.substitute-student-finish>div{display:grid;gap:3px}.substitute-student-finish strong{font-size:.82rem}.substitute-student-finish span{color:var(--muted);font-size:.68rem}.substitute-student-waiting{display:grid;place-items:center;min-height:calc(100vh - 150px);gap:8px;border:1px solid var(--line);border-radius:9px;padding:30px;text-align:center;background:var(--surface)}.substitute-student-waiting>svg{width:42px;height:42px;color:var(--brand)}.substitute-student-waiting h1{margin:3px 0;font-size:1.45rem}.substitute-student-waiting p{max-width:520px;margin:0;color:var(--muted);font-size:.78rem;line-height:1.5}.substitute-student-waiting>strong{margin:8px 0;color:var(--brand);font-size:1.5rem;font-variant-numeric:tabular-nums}@media(max-width:820px){.substitute-student-materials>div{grid-template-columns:repeat(2,1fr)}.substitute-student-runtime-head{grid-template-columns:auto 1fr}.substitute-student-runtime-head>div:last-child{grid-column:1/-1;border-top:1px solid var(--line);border-left:0;padding:9px 0 0;text-align:left}}@media(max-width:560px){.substitute-student-dashboard-live>header,.substitute-student-next-live,.substitute-student-finish{align-items:stretch;grid-template-columns:1fr;flex-direction:column}.substitute-student-kpis{grid-template-columns:1fr}.substitute-student-session-list article{grid-template-columns:1fr auto}.substitute-student-session-list article>.status{grid-column:1/-1;justify-self:start}.substitute-student-materials>div{grid-template-columns:1fr}.substitute-task-runtime-body footer{align-items:stretch;flex-direction:column}.substitute-student-finish{display:grid}}.substitute-monitoring-banner{display:flex;align-items:center;gap:8px;border:1px solid #e4cf8a;border-radius:6px;padding:9px 11px;color:#665311;background:#fff9e7}.substitute-monitoring-banner>span{width:8px;height:8px;border-radius:50%;background:#c58a10;box-shadow:0 0 0 4px #f7eac0}.substitute-monitoring-banner strong{font-size:.73rem}.substitute-monitoring-banner small{color:#786a3b;font-size:.67rem}.substitute-security-page{display:grid;gap:13px;color:var(--ink)}.substitute-security-page>header{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--line);border-radius:8px;padding:14px 16px;background:var(--surface)}.substitute-security-page>header>div{display:flex;align-items:center;gap:12px}.substitute-security-page>header button{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:5px;padding:7px 9px;color:var(--ink);background:var(--surface-soft);font:inherit;font-size:.7rem;font-weight:800}.substitute-security-page>header>div:first-child>button{border:0;color:var(--brand);background:transparent}.substitute-security-page>header small{color:var(--brand);font-size:.63rem;font-weight:900;letter-spacing:.08em}.substitute-security-page>header h1{margin:2px 0;font-size:1.15rem}.substitute-security-page>header p{margin:0;color:var(--muted);font-size:.68rem}.substitute-security-page>header>div:last-child>strong{color:#b42318;font-size:1.25rem}.substitute-security-page>header>div:last-child>span{color:var(--muted);font-size:.66rem}.substitute-security-page>main{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.substitute-security-page>main>article{overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.substitute-security-page article>header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:9px;align-items:center;border-bottom:1px solid var(--line);padding:10px 12px}.substitute-security-page .avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;color:var(--brand);background:var(--surface-soft)}.substitute-security-page article>header>div:nth-child(2){display:grid;gap:2px}.substitute-security-page article>header>div:nth-child(2) strong{font-size:.76rem}.substitute-security-page article>header>div:nth-child(2) span{color:var(--muted);font-size:.65rem}.substitute-security-page article>header>div:last-child{display:grid;text-align:right}.substitute-security-page article>header>div:last-child strong{color:#b42318}.substitute-security-page article>header>div:last-child span{color:var(--muted);font-size:.6rem}.substitute-security-page .summary{display:flex;gap:7px;align-items:center;border-bottom:1px solid var(--line);padding:8px 12px;color:#8d2922;background:#fff7f6;font-size:.68rem;font-weight:700}.substitute-security-page .events{display:grid;max-height:260px;overflow:auto;padding:5px 12px}.substitute-security-page .events>div{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:start;border-bottom:1px solid var(--line);padding:8px 0}.substitute-security-page .events>div:last-child{border-bottom:0}.substitute-security-page .dot{width:7px;height:7px;margin-top:4px;border-radius:50%;background:#d92d20}.substitute-security-page .events>div>div{display:grid;gap:2px}.substitute-security-page .events strong{font-size:.68rem}.substitute-security-page .events span{color:var(--muted);font-size:.61rem}.substitute-security-page time{display:flex;align-items:center;gap:3px;color:var(--muted);font-size:.6rem}.substitute-security-empty{display:grid;place-items:center;gap:6px;min-height:330px;border:1px solid var(--line);border-radius:8px;padding:30px;color:var(--muted);text-align:center;background:var(--surface)}.substitute-security-empty svg{width:38px;height:38px;color:#168153}.substitute-security-empty strong{color:var(--ink)}.substitute-security-empty span{font-size:.72rem}@media(max-width:800px){.substitute-security-page>main{grid-template-columns:1fr}}@media(max-width:560px){.substitute-security-page>header{align-items:flex-start;flex-direction:column}.substitute-monitoring-banner{align-items:flex-start;flex-wrap:wrap}.substitute-monitoring-banner small{flex-basis:100%;padding-left:16px}}.substitute-dashboard-priority{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(340px,.88fr);overflow:hidden;border:1px solid var(--line);border-left:4px solid var(--brand);border-radius:9px;background:var(--surface)}.substitute-dashboard-priority.warning{border-left-color:#a7690d}.substitute-dashboard-priority.live,.substitute-dashboard-priority.clear{border-left-color:#168153}.substitute-dashboard-next-action{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:15px 16px}.substitute-dashboard-priority-icon{display:grid;place-items:center;width:39px;height:39px;border:1px solid var(--line);border-radius:7px;color:var(--brand);background:var(--surface-soft)}.substitute-dashboard-priority.warning .substitute-dashboard-priority-icon{color:#8a5a0a}.substitute-dashboard-priority.live .substitute-dashboard-priority-icon,.substitute-dashboard-priority.clear .substitute-dashboard-priority-icon{color:#168153}.substitute-dashboard-next-action>div{display:grid;min-width:0;gap:2px}.substitute-dashboard-next-action small,.substitute-dashboard-absence-board header small{color:var(--muted);font-size:.62rem;font-weight:900;letter-spacing:.07em}.substitute-dashboard-next-action h2{margin:0;color:var(--ink);font-size:1rem}.substitute-dashboard-next-action p{margin:0;color:var(--muted);font-size:.7rem;line-height:1.4}.substitute-dashboard-next-action>button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:37px;border:1px solid var(--primary-button);border-radius:6px;padding:0 11px;color:#fff;background:var(--primary-button);font:inherit;font-size:.72rem;font-weight:900;cursor:pointer}.substitute-dashboard-absence-board{min-width:0;border-left:1px solid var(--line);background:var(--surface-soft)}.substitute-dashboard-absence-board>header{display:flex;align-items:center;justify-content:space-between;gap:9px;border-bottom:1px solid var(--line);padding:9px 11px}.substitute-dashboard-absence-board header>div{display:grid;gap:1px}.substitute-dashboard-absence-board header strong{color:var(--ink);font-size:.78rem}.substitute-dashboard-absence-board header>span{color:var(--muted);font-size:.64rem;font-weight:800}.substitute-dashboard-absence-board>div{display:grid}.substitute-dashboard-absence-board article{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center;border-bottom:1px solid var(--line);padding:8px 11px}.substitute-dashboard-absence-board article:last-child{border-bottom:0}.substitute-dashboard-absence-board article>svg{color:#a44a3f}.substitute-dashboard-absence-board article>span{display:grid;min-width:0;gap:1px}.substitute-dashboard-absence-board article strong,.substitute-dashboard-absence-board article small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.substitute-dashboard-absence-board article strong{color:var(--ink);font-size:.7rem}.substitute-dashboard-absence-board article small{color:var(--muted);font-size:.61rem}.substitute-dashboard-absence-board article em{max-width:145px;overflow:hidden;border-radius:999px;padding:3px 6px;font-size:.58rem;font-style:normal;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.substitute-dashboard-absence-board article em.covered{color:#17613f;background:#e7f6ee}.substitute-dashboard-absence-board article em.uncovered{color:#8d2922;background:#fff0ee}.substitute-dashboard-absence-board>p{margin:0;padding:18px 12px;color:var(--muted);font-size:.7rem;text-align:center}.substitute-student-flow{display:grid;grid-template-columns:repeat(5,minmax(100px,1fr));min-width:0;margin:0;overflow-x:auto;border:1px solid var(--line);border-radius:8px;padding:0;background:var(--surface);list-style:none;scrollbar-width:thin}.substitute-student-flow li{display:flex;align-items:center;gap:7px;min-height:42px;border-right:1px solid var(--line);padding:8px 10px;color:var(--muted);white-space:nowrap}.substitute-student-flow li:last-child{border-right:0}.substitute-student-flow li>span{display:grid;place-items:center;width:22px;height:22px;border:1px solid var(--line-strong);border-radius:50%;font-size:.63rem;font-weight:900}.substitute-student-flow li strong{font-size:.7rem}.substitute-student-flow li.current{color:var(--brand);background:var(--surface-soft)}.substitute-student-flow li.current>span{border-color:var(--brand);color:#fff;background:var(--brand)}.substitute-student-flow li.done{color:#17613f}.substitute-student-flow li.done>span{border-color:#168153;color:#168153}.substitute-student-runtime{grid-template-columns:minmax(0,1fr)}.substitute-student-progress{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid var(--line);border-left:3px solid var(--brand);border-radius:7px;padding:10px 12px;background:var(--surface)}.substitute-student-progress>div{display:grid;gap:2px}.substitute-student-progress small{color:var(--brand);font-size:.59rem;font-weight:900;letter-spacing:.07em}.substitute-student-progress strong{font-size:.76rem}.substitute-student-progress ol{display:flex;align-items:center;gap:5px;margin:0;padding:0;list-style:none}.substitute-student-progress li{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:999px;padding:5px 8px;color:var(--muted);font-size:.63rem;font-weight:800}.substitute-student-progress li>span{display:grid;place-items:center;width:16px;height:16px;border-radius:50%;background:var(--surface-soft);font-size:.56rem}.substitute-student-progress li.current{border-color:var(--brand);color:var(--brand);background:var(--surface-soft)}.substitute-student-progress li.done{color:#17613f}.substitute-student-task-runtime.submitted{border-left-color:#168153}.substitute-student-task-runtime .status.submitted{color:#17613f;background:#e7f6ee}.substitute-parent-workspace{display:grid;gap:14px}.substitute-parent-head{border-top:4px solid var(--brand)}.substitute-parent-child{overflow:hidden}.parent-internship-result-table>.substitute-parent-session{display:block;padding:0;cursor:default}.substitute-parent-session-summary{grid-template-columns:minmax(0,1fr) auto auto;gap:12px;padding:9px 13px}.substitute-parent-session-summary>span{min-width:0}.substitute-parent-session-summary>span strong,.substitute-parent-session-summary>span small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.parent-substitute-attendance{justify-self:end;border-radius:999px;padding:4px 7px;font-size:.66rem}.parent-substitute-attendance.attended{color:#17613f;background:#e7f6ee}.parent-substitute-attendance.absent{color:#8d2922;background:#fff0ee}.parent-substitute-attendance.pending{color:var(--muted);background:var(--surface-soft)}.substitute-parent-session>.assessment-field-hint{margin:0;border-top:1px solid var(--line);padding:8px 13px;color:var(--muted);font-size:.7rem}.substitute-parent-results{border-top:1px solid var(--line);background:var(--surface-soft)}@container (max-width:900px){.substitute-dashboard-priority{grid-template-columns:1fr}.substitute-dashboard-absence-board{border-top:1px solid var(--line);border-left:0}}@container (max-width:560px){.substitute-dashboard-next-action{grid-template-columns:auto 1fr}.substitute-dashboard-next-action>button{grid-column:1/-1}.substitute-dashboard-absence-board article{grid-template-columns:auto minmax(0,1fr)}.substitute-dashboard-absence-board article em{grid-column:2;justify-self:start}.substitute-student-flow{grid-template-columns:repeat(5,112px)}}@media(min-width:1000px){.substitute-student-runtime:has(.substitute-camera-proctor){padding-right:228px}}@media(max-width:999px){.substitute-camera-proctor>div{display:none}.substitute-camera-proctor{width:auto;max-width:calc(100vw - 16px)}.substitute-camera-proctor footer{min-height:38px}}@media(max-width:680px){.substitute-student-progress{align-items:stretch;flex-direction:column}.substitute-student-progress ol{display:grid;grid-template-columns:repeat(3,1fr)}.substitute-student-progress li{justify-content:center}.substitute-parent-session{display:block}.substitute-parent-session-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 10px}.substitute-parent-session-summary>span{grid-column:1/-1}.substitute-parent-session-summary>span strong,.substitute-parent-session-summary>span small{overflow:visible;text-overflow:clip;white-space:normal}.parent-substitute-attendance{justify-self:start}.substitute-parent-session>.assessment-field-hint{width:100%;white-space:normal}}[data-theme=dark] .substitute-dashboard-absence-board article em.covered,[data-theme=dark] .substitute-student-flow li.done,[data-theme=dark] .substitute-student-progress li.done,[data-theme=dark] .substitute-student-task-runtime .status.submitted,[data-theme=dark] .parent-substitute-attendance.attended{color:#8dddb2;background:#15382a}[data-theme=dark] .substitute-dashboard-absence-board article em.uncovered,[data-theme=dark] .parent-substitute-attendance.absent{color:#f0aaa4;background:#3a1d1c}[data-theme=dark] .substitute-student-next-live.active{border-left-color:#4fb985;background:var(--surface)}[data-theme=dark] .substitute-student-alert,[data-theme=dark] .substitute-offline-banner{border-color:#6c3532;color:#f0aaa4;background:#321b1a}[data-theme=dark] .substitute-student-session-list .status.live,[data-theme=dark] .substitute-student-task-runtime .status.open{color:#8dddb2;background:#15382a}[data-theme=dark] .substitute-student-session-list .status.paused,[data-theme=dark] .substitute-student-task-runtime .status.upcoming{color:#e7cd82;background:#362e17}[data-theme=dark] .substitute-student-session-list .status.ended,[data-theme=dark] .substitute-student-task-runtime .status.closed{color:#b7c0cc;background:#26313e}.substitute-app{--sub-radius: 5px;--sub-shadow: 0 12px 28px rgba(16, 46, 64, .07);--sub-live: #16764b;--sub-warning: #94620f;color:var(--ink)}.substitute-app-content>*{animation:substitute-enter .24s cubic-bezier(.22,1,.36,1) both}.substitute-app :is(button,input,select,textarea,summary):focus-visible{outline:3px solid color-mix(in srgb,var(--brand) 24%,transparent);outline-offset:2px}.substitute-app button:disabled{cursor:not-allowed}@keyframes substitute-enter{0%{opacity:.35;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.substitute-dashboard-live{gap:12px}.substitute-dashboard-live-head,.substitute-student-dashboard-live>header{border:0;border-bottom:1px solid var(--line);border-radius:0;padding:2px 0 17px;background:transparent}.substitute-dashboard-live-head h1,.substitute-student-dashboard-live>header h1{font-size:clamp(1.45rem,2.1vw,1.8rem);letter-spacing:-.025em}.substitute-dashboard-live-head span,.substitute-student-dashboard-live>header small{display:inline-flex;align-items:center;gap:7px}.substitute-dashboard-live-head span:before,.substitute-student-dashboard-live>header small:before{content:"";width:18px;height:2px;background:var(--brand)}.substitute-dashboard-live-head button,.substitute-student-dashboard-live>header button{border-radius:var(--sub-radius);background:var(--surface)}.substitute-dashboard-live-head button.primary{box-shadow:0 5px 14px #01557e29}.substitute-dashboard-context{gap:0;border:1px solid var(--line);border-radius:var(--sub-radius);background:var(--surface)}.substitute-dashboard-context>div{flex:1;border:0;border-right:1px solid var(--line);border-radius:0;padding:8px 12px;background:transparent}.substitute-dashboard-context>div:last-child{border-right:0}.substitute-dashboard-priority{border-radius:var(--sub-radius);box-shadow:var(--sub-shadow)}.substitute-dashboard-next-action{min-height:102px;padding:17px 18px}.substitute-dashboard-priority-icon{border-radius:3px}.substitute-dashboard-next-action h2{font-size:1.08rem;letter-spacing:-.015em}.substitute-dashboard-next-action>button{border-radius:var(--sub-radius)}.substitute-dashboard-action-grid{border-radius:var(--sub-radius)}.substitute-dashboard-action-grid button{min-height:76px;padding:12px 14px;transition:background .16s ease,box-shadow .16s ease}.substitute-dashboard-action-grid button:hover{box-shadow:inset 0 -2px var(--brand)}.substitute-dashboard-action-grid strong{font-variant-numeric:tabular-nums}.substitute-dashboard-school-metrics{gap:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--sub-radius);background:var(--surface)}.substitute-dashboard-school-metrics>div{border:0;border-right:1px solid var(--line);border-radius:0;background:transparent}.substitute-dashboard-school-metrics>div:last-child{border-right:0}.substitute-dashboard-today{border-radius:var(--sub-radius);box-shadow:var(--sub-shadow)}.substitute-dashboard-session-list .status{display:inline-flex;align-items:center;gap:5px;border-radius:3px}.substitute-dashboard-session-list .status.live:before,.substitute-status-badge.live:before,.substitute-student-session-list .status.live:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;animation:substitute-live-pulse 1.8s ease-in-out infinite}@keyframes substitute-live-pulse{50%{opacity:.25}}.substitute-sessions-view .substitute-page-header,.substitute-absences-view .substitute-page-header,.substitute-reports-view .substitute-page-header,.substitute-report-detail-view .substitute-page-header{margin-bottom:14px;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:0 0 16px;background:transparent;box-shadow:none}.substitute-page-header h1,.substitute-sessions-view .substitute-page-header h1{color:var(--ink);font-size:clamp(1.4rem,2vw,1.72rem);letter-spacing:-.02em}.substitute-page-header p,.substitute-sessions-view .substitute-page-header p{color:var(--muted);font-size:.8rem}.substitute-outline-button,.substitute-secondary-button,.substitute-action-soft{border-color:var(--line);border-radius:var(--sub-radius);color:var(--ink);background:var(--surface)}.substitute-primary-button{border-radius:var(--sub-radius);background:var(--primary-button);box-shadow:0 5px 14px #01557e24}.substitute-filter-bar,.substitute-sessions-view .substitute-filter-bar{gap:7px;margin-bottom:10px;border:1px solid var(--line);border-radius:var(--sub-radius);padding:8px;background:var(--surface)}.substitute-filter-bar :is(input,select,button),.substitute-sessions-view .substitute-filter-bar :is(input,select,button){border-radius:4px;color:var(--ink);background:var(--input-bg)}.substitute-filter-bar button.active{background:var(--primary-button)}.substitute-session-list.original,.substitute-sessions-view .substitute-session-list.original{gap:0;overflow:visible;border:1px solid var(--line);border-radius:var(--sub-radius);background:var(--surface)}.substitute-row-card,.substitute-sessions-view .substitute-row-card{min-height:76px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none}.substitute-row-card:last-child{border-bottom:0}.substitute-row-card.selected{box-shadow:inset 3px 0 var(--brand);background:color-mix(in srgb,var(--brand) 5%,var(--surface))}.substitute-row-card:hover{border-color:var(--line);box-shadow:inset 3px 0 color-mix(in srgb,var(--brand) 55%,transparent);background:var(--surface-soft)}.substitute-row-title strong,.substitute-sessions-view .substitute-row-title strong{color:var(--ink);font-size:.88rem}.substitute-row-card span:not(.substitute-status-badge),.substitute-sessions-view .substitute-row-card span:not(.substitute-status-badge){color:var(--muted)}.substitute-status-badge{border-radius:3px;background:var(--surface-soft)}.substitute-row-actions{flex-wrap:nowrap;align-items:center}.substitute-row-more{position:relative}.substitute-row-more summary{width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--line);border-radius:4px;color:var(--muted);background:var(--surface);cursor:pointer;list-style:none}.substitute-row-more summary::-webkit-details-marker{display:none}.substitute-row-more[open] summary{border-color:var(--brand);color:var(--brand)}.substitute-row-more>div{position:absolute;z-index:50;top:calc(100% + 6px);right:0;width:206px;display:grid;gap:2px;border:1px solid var(--line);border-radius:6px;padding:5px;background:var(--surface);box-shadow:0 18px 38px #0524342e}.substitute-row-more>div button{min-height:34px;display:flex;align-items:center;gap:8px;border:0;border-radius:4px;padding:0 9px;color:var(--ink);background:transparent;font:inherit;font-size:.74rem;font-weight:700;text-align:left}.substitute-row-more>div button:hover{background:var(--surface-soft)}.substitute-row-more>div button.danger{color:var(--danger)}.substitute-sessions-view{container-type:inline-size}@container (max-width: 900px){.substitute-sessions-view .substitute-page-header{align-items:stretch;flex-direction:column}.substitute-sessions-view .substitute-page-actions{justify-content:flex-start}.substitute-sessions-view .substitute-filter-bar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.substitute-sessions-view .substitute-filter-bar>label{grid-column:1 / -1}.substitute-sessions-view .substitute-filter-bar>:is(select,button,input,.date-input-wrap){min-width:0;width:100%}}@container (max-width: 520px){.substitute-sessions-view .substitute-page-actions,.substitute-sessions-view .substitute-filter-bar{grid-template-columns:1fr}.substitute-sessions-view .substitute-page-actions{display:grid}.substitute-sessions-view .substitute-filter-bar>label{grid-column:auto}}.substitute-session-wizard{min-height:calc(100svh - 154px);border-radius:var(--sub-radius);box-shadow:var(--sub-shadow)}.substitute-wizard-head{border-top:3px solid var(--brand);padding:15px 17px}.substitute-wizard-head>button,.substitute-wizard-footer button{border-radius:4px}.substitute-wizard-steps{background:var(--surface)}.substitute-wizard-steps button{position:relative;min-height:50px}.substitute-wizard-steps button.active{box-shadow:inset 0 -2px var(--brand)}.substitute-wizard-body{padding:clamp(12px,2vw,22px)}.substitute-wizard-section{max-width:1100px;border-radius:var(--sub-radius);border-top:3px solid var(--brand);padding:clamp(15px,2vw,22px);box-shadow:0 8px 20px #102e400b}.substitute-wizard-section input,.substitute-wizard-section select,.substitute-wizard-section textarea,.substitute-wizard-choice-row button,.substitute-wizard-toggle,.substitute-wizard-settings label,.substitute-wizard-info{border-radius:4px}.substitute-wizard-footer{position:sticky;bottom:0;z-index:5}.substitute-content-editor{color:var(--ink)}.substitute-content-header,.substitute-content-panel,.substitute-task-timeline{border-color:var(--line);border-radius:var(--sub-radius);color:var(--ink);background:var(--surface);box-shadow:none}.substitute-content-header{border-top:3px solid var(--brand)}.substitute-content-header h2,.substitute-content-panel h3,.substitute-content-empty strong,.substitute-task-form-grid label>span,.substitute-task-options>span,.substitute-material-scope label>span{color:var(--ink)}.substitute-content-header small,.substitute-content-panel .panel-heading small,.substitute-editor-task-list span,.substitute-material-list span{color:var(--muted)}.substitute-content-header>div:last-child span,.substitute-task-toggles label,.substitute-material-drop{border-color:var(--line);border-radius:4px;color:var(--muted);background:var(--surface-soft)}.substitute-content-panel .panel-heading,.substitute-content-panel.task-form footer{border-color:var(--line)}.substitute-editor-task-list article:hover,.substitute-editor-task-list article.active{border-color:color-mix(in srgb,var(--brand) 35%,var(--line));border-radius:3px;background:color-mix(in srgb,var(--brand) 6%,var(--surface))}.substitute-editor-task-list article button,.substitute-task-options>div button,.substitute-material-list button,.substitute-task-form-grid input,.substitute-task-form-grid textarea,.substitute-task-form-grid select,.substitute-material-scope select{border-color:var(--input-border);border-radius:4px;color:var(--ink);background:var(--input-bg)}.substitute-material-drop:hover,.substitute-material-drop:focus-visible{border-color:var(--brand);background:color-mix(in srgb,var(--brand) 6%,var(--surface))}.substitute-material-drop strong{color:var(--ink)}.substitute-material-list article{border-color:var(--line);border-radius:4px}.substitute-preview-notice{display:flex;align-items:center;gap:9px;border:1px solid color-mix(in srgb,var(--brand) 28%,var(--line));border-left:3px solid var(--brand);border-radius:4px;padding:9px 11px;color:var(--muted);background:color-mix(in srgb,var(--brand) 6%,var(--surface));font-size:.74rem;line-height:1.4}.substitute-preview-notice svg{flex:0 0 auto;color:var(--brand)}.substitute-preview-notice span{min-width:0}.substitute-preview-notice strong{color:var(--ink)}.substitute-student-dashboard-live,.substitute-student-runtime{container-type:inline-size}.substitute-student-flow{border-radius:var(--sub-radius)}.substitute-student-flow li>span{border-radius:4px}.substitute-student-next-live{border-radius:var(--sub-radius);box-shadow:var(--sub-shadow)}.substitute-student-next-live.active{border-left-color:var(--sub-live)}.substitute-student-next-live>button,.substitute-student-session-list article>button,.substitute-student-finish>button,.substitute-student-waiting>button{border-radius:4px}.substitute-student-kpis{gap:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--sub-radius);background:var(--surface)}.substitute-student-kpis article{border:0;border-right:1px solid var(--line);border-radius:0;background:transparent}.substitute-student-kpis article:last-child{border-right:0}.substitute-student-session-list,.substitute-student-materials,.substitute-student-runtime-head,.substitute-student-task-runtime,.substitute-student-finish{border-radius:var(--sub-radius)}.substitute-student-task-runtime{border-left-width:3px}.substitute-student-options label,.substitute-student-answer textarea,.substitute-student-file-upload>label{border-radius:4px}.substitute-student-options label:has(input:checked){background:color-mix(in srgb,var(--brand) 6%,var(--surface))}.substitute-student-answer textarea:disabled,.substitute-student-file-upload>label[aria-disabled=true]{opacity:.72;cursor:not-allowed}.substitute-parent-workspace{gap:10px}.substitute-parent-head{border:0;border-top:3px solid var(--brand);border-radius:var(--sub-radius);background:var(--surface);box-shadow:var(--sub-shadow)}.substitute-parent-children{gap:10px}.substitute-parent-child{border-radius:var(--sub-radius);box-shadow:none}.substitute-parent-session-summary{min-height:58px;padding:10px 13px}.parent-substitute-attendance{border-radius:3px}@container parent-internship (max-width: 820px){.substitute-parent-head{grid-template-columns:1fr}.substitute-parent-head dl{width:100%}}@container parent-internship (max-width: 820px){.substitute-parent-session-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 10px}.substitute-parent-session-summary>span{grid-column:1 / -1}.substitute-parent-session-summary>span strong,.substitute-parent-session-summary>span small{overflow:visible;text-overflow:clip;white-space:normal}.parent-substitute-attendance{justify-self:start}}@container (max-width: 700px){.substitute-student-dashboard-live>header,.substitute-student-next-live{align-items:stretch;grid-template-columns:1fr;flex-direction:column}.substitute-student-progress{align-items:stretch;flex-direction:column}.substitute-student-progress ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.substitute-student-progress li{justify-content:center}.substitute-student-session-list article{grid-template-columns:1fr auto}.substitute-student-session-list article>.status{grid-column:1 / -1;justify-self:start}}[data-theme=dark] .substitute-app{--sub-shadow: none}[data-theme=dark] .substitute-row-more>div,[data-theme=dark] .substitute-content-header,[data-theme=dark] .substitute-content-panel,[data-theme=dark] .substitute-task-timeline,[data-theme=dark] .substitute-material-list article{border-color:var(--line);color:var(--ink);background:var(--surface)}[data-theme=dark] .substitute-content-header>div:last-child span,[data-theme=dark] .substitute-task-toggles label,[data-theme=dark] .substitute-material-drop{background:var(--surface-soft)}[data-theme=dark] .substitute-student-instructions,[data-theme=dark] .substitute-student-options label:has(input:checked){border-color:var(--line);color:var(--muted);background:color-mix(in srgb,var(--brand) 10%,var(--surface))}[data-theme=dark] .view-as-banner{border-color:#4aa7c76b;border-left-color:#4aa7c7;color:#9ed9ed;background:#4aa7c71a}[data-theme=dark] .view-as-banner strong{color:#e9f7fb}[data-theme=dark] .view-as-banner button{border-color:#4aa7c76b;color:#b9e6f3;background:var(--surface)}[data-theme=dark] .view-as-banner button:hover{background:var(--surface-soft)}@media(max-width:1120px){.substitute-row-card,.substitute-sessions-view .substitute-row-card{grid-template-columns:1fr}.substitute-row-actions{justify-content:flex-start}}@media(max-width:760px){.substitute-dashboard-live-head,.substitute-student-dashboard-live>header{align-items:flex-start;grid-template-columns:1fr;flex-direction:column}.substitute-dashboard-live-head>div:last-child{width:100%}.substitute-dashboard-live-head>div:last-child button{flex:1}.substitute-dashboard-context,.substitute-dashboard-action-grid,.substitute-dashboard-school-metrics,.substitute-student-kpis{display:grid;grid-template-columns:1fr 1fr}.substitute-dashboard-context>div:nth-child(2n),.substitute-dashboard-action-grid button:nth-child(2n),.substitute-dashboard-school-metrics>div:nth-child(2n),.substitute-student-kpis article:nth-child(2n){border-right:0}.substitute-dashboard-action-grid button,.substitute-dashboard-school-metrics>div,.substitute-student-kpis article{border-bottom:1px solid var(--line)}.substitute-wizard-head{grid-template-columns:auto 1fr}.substitute-wizard-close{display:none!important}.substitute-wizard-steps{grid-template-columns:repeat(4,minmax(95px,1fr));overflow-x:auto}.substitute-wizard-section,.substitute-wizard-grid,.substitute-wizard-grid.three,.substitute-content-grid,.substitute-material-controls{grid-template-columns:1fr}.substitute-row-actions{flex-wrap:wrap}.substitute-row-more>div{right:auto;left:0}}@media(max-width:480px){.substitute-dashboard-context,.substitute-dashboard-action-grid,.substitute-dashboard-school-metrics,.substitute-student-kpis{grid-template-columns:1fr}.substitute-dashboard-context>div,.substitute-dashboard-action-grid button,.substitute-dashboard-school-metrics>div,.substitute-student-kpis article{border-right:0}.view-as-banner{align-items:flex-start;flex-wrap:wrap}.view-as-banner small{margin-left:23px}.view-as-banner button{margin-left:auto}.substitute-wizard-footer{grid-template-columns:1fr auto}.substitute-wizard-footer>span{display:none}}@media(prefers-reduced-motion:reduce){.substitute-app-content>*,.substitute-dashboard-session-list .status.live:before,.substitute-status-badge.live:before,.substitute-student-session-list .status.live:before{animation:none}}.substitute-student-results-panel{overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.substitute-student-results-panel>header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;border-bottom:1px solid var(--line);padding:14px 16px}.substitute-student-results-panel>header small{color:var(--brand);font-size:.64rem;font-weight:900;letter-spacing:.08em}.substitute-student-results-panel>header h2{margin:3px 0;font-size:1rem}.substitute-student-results-panel>header p{margin:0;color:var(--muted);font-size:.7rem}.substitute-student-results-panel>header button{display:grid;place-items:center;border:1px solid var(--line);border-radius:5px;padding:6px;color:var(--muted);background:var(--surface-soft)}.substitute-student-result-summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;border-bottom:1px solid var(--line);padding:12px 16px;color:var(--brand);background:var(--surface-soft)}.substitute-student-result-summary>span{display:grid}.substitute-student-result-summary small{color:var(--muted);font-size:.63rem}.substitute-student-result-summary strong{color:var(--ink);font-size:1.05rem}.substitute-student-result-summary em{color:var(--muted);font-size:.68rem;font-style:normal}.substitute-student-result-list{display:grid}.substitute-student-result-list article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 12px;border-bottom:1px solid var(--line);padding:11px 16px}.substitute-student-result-list article:last-child{border-bottom:0}.substitute-student-result-list article>div{display:grid;gap:2px}.substitute-student-result-list article>div strong{font-size:.78rem}.substitute-student-result-list article>div span{color:var(--muted);font-size:.64rem}.substitute-student-result-list article>b{color:var(--brand);font-size:.78rem}.substitute-student-result-list article>p{grid-column:1/-1;margin:2px 0 0;color:var(--ink);font-size:.7rem;line-height:1.45}.substitute-student-result-list article>p.muted{color:var(--muted)}@media(max-width:560px){.substitute-student-result-summary{grid-template-columns:auto 1fr}.substitute-student-result-summary>em{grid-column:1/-1}.substitute-student-session-list article>div:nth-child(2) span{white-space:normal}.substitute-student-flow{grid-template-columns:repeat(5,minmax(0,1fr));overflow:visible}.substitute-student-flow li{flex-direction:column;gap:3px;justify-content:center;min-width:0;padding:6px 2px;text-align:center;white-space:normal}.substitute-student-flow li strong{font-size:.56rem;line-height:1.15}}.substitute-absence-card-actions{display:flex;align-items:center;gap:7px;margin-left:auto}.substitute-absence-card-actions em{margin-left:0}.substitute-absence-card-actions button{display:grid;place-items:center;width:34px;height:34px;border:1px solid #efc8c4;border-radius:6px;color:#b42318;background:#fff7f6}.substitute-absence-card-actions button:disabled{cursor:not-allowed;opacity:.42}.substitute-absence-card-actions button:not(:disabled):hover{background:#fde9e7}[data-theme=dark] .substitute-absence-card-actions button{border-color:#5d3434;color:#f3a29a;background:#2d1e20}@media(max-width:560px){.substitute-absence-card-actions{grid-column:1/-1;width:100%;justify-content:space-between;margin-left:0}}[data-theme=dark] .substitute-student-instructions{border-color:#315c70;color:var(--muted);background:#112936}[data-theme=dark] .substitute-student-options label:has(input:checked){border-color:var(--brand);background:#112b38}[data-theme=dark] .substitute-monitoring-banner{border-color:#6d5720;color:#e8ce84;background:#332b16}[data-theme=dark] .substitute-monitoring-banner small{color:#cfb96f}[data-theme=dark] .substitute-monitoring-banner>span{box-shadow:0 0 0 4px #54431c}[data-theme=dark] .substitute-security-page .summary{color:#f0aaa4;background:#321b1a}[data-theme=dark] .substitute-security-page .events button.evidence{border-color:#315c70;background:#112936}[data-theme=dark] .substitute-content-editor{color:var(--ink)}[data-theme=dark] .substitute-content-header,[data-theme=dark] .substitute-content-panel,[data-theme=dark] .substitute-task-timeline,[data-theme=dark] .substitute-task-form-grid input,[data-theme=dark] .substitute-task-form-grid textarea,[data-theme=dark] .substitute-task-form-grid select,[data-theme=dark] .substitute-material-scope select,[data-theme=dark] .substitute-editor-task-list article button,[data-theme=dark] .substitute-task-options>div button,[data-theme=dark] .substitute-material-list button,[data-theme=dark] .substitute-material-viewer{border-color:var(--line);color:var(--ink);background:var(--surface)}[data-theme=dark] .substitute-content-header h2,[data-theme=dark] .substitute-content-panel h3,[data-theme=dark] .substitute-task-form-grid label>span,[data-theme=dark] .substitute-task-options>span,[data-theme=dark] .substitute-material-scope label>span,[data-theme=dark] .substitute-content-empty strong,[data-theme=dark] .substitute-material-drop strong,[data-theme=dark] .substitute-viewer-state strong{color:var(--ink)}[data-theme=dark] .substitute-content-header small,[data-theme=dark] .substitute-content-panel .panel-heading small,[data-theme=dark] .substitute-editor-task-list small,[data-theme=dark] .substitute-editor-task-list span,[data-theme=dark] .substitute-content-empty,[data-theme=dark] .substitute-material-list span,[data-theme=dark] .substitute-material-viewer header small,[data-theme=dark] .substitute-viewer-state{color:var(--muted)}[data-theme=dark] .substitute-content-header>div:last-child span,[data-theme=dark] .substitute-task-toggles label,[data-theme=dark] .substitute-material-drop{border-color:var(--line);color:var(--muted);background:var(--surface-soft)}[data-theme=dark] .substitute-editor-task-list article:hover,[data-theme=dark] .substitute-editor-task-list article.active,[data-theme=dark] .substitute-material-drop:hover{border-color:var(--brand);background:var(--surface-soft)}[data-theme=dark] .substitute-content-lock{border-color:#705c26;color:#e7cf88;background:#342d19}[data-theme=dark] .substitute-task-options>div button.correct{border-color:#387b5a;color:#8dddb2;background:#15382a}[data-theme=dark] .substitute-timeline-track{border-color:var(--line);background:repeating-linear-gradient(90deg,var(--surface-soft) 0,var(--surface-soft) calc(10% - 1px),var(--line) calc(10% - 1px),var(--line) 10%)}[data-theme=dark] .substitute-timeline-legend button{color:var(--muted)}[data-theme=dark] .substitute-material-viewer main{background:var(--page-bg)}.substitute-camera-proctor{bottom:78px!important}.substitute-camera-consent{position:fixed;z-index:1200;inset:0;display:grid;place-items:center;padding:20px;background:#0f172a9e}.substitute-camera-consent>section{display:grid;place-items:center;gap:8px;width:min(440px,100%);border-radius:9px;padding:24px;text-align:center;background:var(--surface);box-shadow:0 24px 70px #00000040}.substitute-camera-consent svg{width:38px;height:38px;color:var(--brand)}.substitute-camera-consent small{color:var(--brand);font-size:.65rem;font-weight:900;letter-spacing:.08em}.substitute-camera-consent h2{margin:0;font-size:1.1rem}.substitute-camera-consent p{margin:0;color:var(--muted);font-size:.76rem}.substitute-camera-consent div{border:1px solid var(--line);border-radius:6px;padding:10px;color:var(--muted);background:var(--surface-soft);font-size:.7rem;line-height:1.45}.substitute-camera-consent button{min-height:39px;border:1px solid var(--primary-button);border-radius:6px;padding:0 15px;color:#fff;background:var(--primary-button);font:inherit;font-size:.74rem;font-weight:900}.substitute-camera-proctor{position:fixed;z-index:80;right:18px;bottom:18px;width:210px;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:0 10px 30px #1018282e}.substitute-camera-proctor>div{position:relative;aspect-ratio:4/3;background:#18212b}.substitute-camera-proctor video{width:100%;height:100%;object-fit:cover;transform:scaleX(-1)}.substitute-camera-proctor>div>span{position:absolute;inset:0;display:grid;place-items:center;color:#aeb8c3;background:#202b36}.substitute-camera-proctor footer{display:flex;align-items:center;gap:6px;padding:7px 8px;color:var(--muted);font-size:.61rem}.substitute-camera-proctor.active footer{color:#137147}.substitute-camera-proctor.denied footer,.substitute-camera-proctor.unavailable footer,.substitute-camera-proctor.stopped footer{color:#b42318}.substitute-camera-proctor footer span{flex:1}.substitute-camera-proctor footer button{display:inline-flex;align-items:center;gap:3px;border:0;color:var(--brand);background:transparent;font:inherit;font-size:.58rem;font-weight:800}.substitute-security-page .events button.evidence{display:inline-flex;align-items:center;gap:4px;width:max-content;margin-top:4px;border:1px solid #b7ccd7;border-radius:4px;padding:4px 6px;color:var(--brand);background:#f2f8fa;font:inherit;font-size:.59rem;font-weight:800}.substitute-evidence-viewer{position:fixed;z-index:1200;inset:0;display:grid;place-items:center;padding:20px;background:#0f172aad}.substitute-evidence-viewer>section{width:min(760px,96vw);overflow:hidden;border-radius:8px;background:var(--surface);box-shadow:0 24px 70px #0000004d}.substitute-evidence-viewer header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--line)}.substitute-evidence-viewer header strong{font-size:.78rem}.substitute-evidence-viewer header button{border:0;color:var(--muted);background:transparent}.substitute-evidence-viewer img{display:block;width:100%;max-height:78vh;object-fit:contain;background:#101820}@media(max-width:560px){.substitute-camera-proctor{right:8px;bottom:8px;width:150px}.substitute-camera-proctor footer{font-size:.55rem}.substitute-camera-proctor footer button{font-size:0}.substitute-camera-proctor footer button svg{display:block}}.btec-analytics-layout{display:grid;gap:16px}.btec-analytics-summary{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.btec-analytics-stat{display:grid;gap:3px;border:1px solid var(--line);border-radius:6px;padding:10px 12px;background:var(--surface-soft)}.btec-analytics-stat span{color:var(--muted);font-size:.68rem;font-weight:600;letter-spacing:.02em}.btec-analytics-stat strong{color:var(--brand-dark);font-size:1.15rem}.btec-analytics-stat.accent{border-color:var(--brand);background:var(--soft)}.btec-analytics-hint{margin:-6px 0 12px;color:var(--muted);font-size:.74rem}.btec-analytics-table td span{display:block;color:var(--muted);font-size:.72rem}.btec-analytics-table .bar-col{width:42%;min-width:160px}.btec-grade-bar{display:flex;height:14px;overflow:hidden;border-radius:4px;background:var(--soft)}.btec-grade-bar.empty{opacity:.4}.btec-grade-bar span{display:block;min-width:3px}.btec-grade-bar .grade-distinction,.btec-grade-legend .grade-distinction{background:#005f86}.btec-grade-bar .grade-merit,.btec-grade-legend .grade-merit{background:#4a8db0}.btec-grade-bar .grade-pass,.btec-grade-legend .grade-pass{background:#a5c6d6}.btec-grade-bar .grade-fail,.btec-grade-legend .grade-fail{background:#b42318}.btec-grade-bar .grade-missing,.btec-grade-legend .grade-missing{background:#d7dee2}.btec-grade-legend{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 12px;color:var(--muted);font-size:.7rem}.btec-grade-legend span{display:inline-flex;align-items:center;gap:5px}.btec-grade-legend i{display:inline-block;width:10px;height:10px;border-radius:2px}@media(max-width:900px){.btec-analytics-summary{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:560px){.btec-analytics-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.btec-analytics-table .bar-col{min-width:120px}}.btec-audit-timeline{display:grid;gap:0;margin:0;padding:0;list-style:none}.btec-audit-timeline li{position:relative;display:grid;grid-template-columns:18px minmax(0,1fr);gap:10px;padding:0 0 16px}.btec-audit-timeline li:not(:last-child):before{content:"";position:absolute;top:14px;bottom:0;left:8px;width:2px;background:var(--line)}.btec-audit-dot{width:10px;height:10px;margin-top:4px;margin-left:4px;border:2px solid var(--brand);border-radius:50%;background:var(--surface)}.btec-audit-body{display:grid;gap:2px}.btec-audit-body strong{color:var(--brand-dark);font-size:.84rem}.btec-audit-body span{color:var(--muted);font-size:.74rem}.btec-audit-body small{color:var(--muted);font-size:.66rem;opacity:.85}.btec-declaration-cell{display:grid;gap:6px;justify-items:start}.btec-declaration{display:inline-flex;align-items:center;gap:5px;border-radius:4px;padding:3px 8px;font-size:.68rem;font-weight:600}.btec-declaration.confirmed{color:var(--success);background:var(--success-bg)}.btec-declaration.pending{color:var(--muted);background:var(--soft)}.btec-status-declarations .btec-student-generation-head h3{font-size:.82rem;font-weight:500;color:var(--muted)}.btec-notifications-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,.8fr);align-items:start;gap:16px}.btec-notification-list{display:grid;gap:8px}.btec-notification-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;border:1px solid var(--line);border-radius:6px;padding:10px 12px;background:var(--surface)}.btec-notification-row.unread{border-left:3px solid var(--brand);background:var(--surface-soft)}.btec-notification-row strong{display:block;color:var(--brand-dark);font-size:.84rem}.btec-notification-row p{margin:2px 0;color:var(--ink);font-size:.76rem}.btec-notification-row>div>span{color:var(--muted);font-size:.68rem}.btec-notification-prefs{display:grid;gap:8px}.btec-notification-pref{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--line);border-radius:6px;padding:9px 12px;background:var(--surface-soft);font-size:.78rem;color:var(--ink)}.btec-notification-pref span{display:inline-flex;align-items:center;gap:7px}.btec-notification-pref svg{color:var(--brand)}@media(max-width:900px){.btec-notifications-layout{grid-template-columns:minmax(0,1fr)}}.btec-iv-layout{display:grid;gap:16px}.btec-iv-status{display:inline-flex;align-items:center;gap:6px;margin:0 0 12px;border-radius:4px;padding:6px 10px;font-size:.76rem;font-weight:600}.btec-iv-status.done{color:var(--success);background:var(--success-bg)}.btec-iv-status.gate{color:var(--brand-dark);background:var(--soft)}.btec-iv-require{max-width:560px}.btec-iv-reviews{display:grid;gap:10px}.btec-iv-review{border:1px solid var(--line);border-radius:6px;padding:12px;background:var(--surface)}.btec-iv-review.decision-actions_required{border-left:3px solid var(--danger)}.btec-iv-review.decision-agreed,.btec-iv-review.decision-signed_off{border-left:3px solid var(--success)}.btec-iv-review header{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.btec-iv-review header>div{flex:1;min-width:160px}.btec-iv-review header strong{display:block;color:var(--brand-dark);font-size:.86rem}.btec-iv-review header span{color:var(--muted);font-size:.72rem}.btec-iv-decision{border-radius:999px;padding:3px 10px;font-size:.68rem;font-weight:700;background:var(--soft);color:var(--brand-dark)}.btec-iv-decision.actions_required{color:var(--danger);background:var(--danger-bg)}.btec-iv-decision.agreed,.btec-iv-decision.signed_off{color:var(--success);background:var(--success-bg)}.btec-iv-editor{display:grid;gap:8px;margin-top:10px}.btec-iv-check{display:flex;align-items:center;gap:8px;color:var(--ink);font-size:.78rem}.btec-iv-actions-text{margin:0;color:var(--danger);font-size:.76rem}.btec-iv-decision-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.btec-iv-summary{display:grid;gap:4px;margin-top:8px;color:var(--muted);font-size:.76rem}.btec-iv-summary p{margin:0}.btec-iv-complete{display:grid;gap:8px;justify-items:start;margin-top:14px;border-top:1px solid var(--line);padding-top:12px}.btec-iv-checklist-panel{min-width:260px}.btec-iv-checklist-panel textarea{width:100%;margin-top:10px}.btec-iv-checklist-row{display:flex;align-items:center;gap:8px;padding:4px 0;color:var(--ink);font-size:.78rem}.btec-iv-checklist-row span{flex:1}.btec-iv-checklist-row button[aria-pressed=true]{background:var(--success-bg);color:var(--success);border-color:var(--success)}.btec-iv-checklist-row button.btec-iv-no[aria-pressed=true]{background:var(--danger-bg);color:var(--danger);border-color:var(--danger)}.btec-request-cards-panel>h3{margin-bottom:16px}.btec-request-cards,.btec-request-card{display:grid;gap:16px}.btec-request-card-head{display:grid;gap:6px;padding-bottom:14px;border-bottom:1px solid var(--line)}.btec-request-card-head strong{color:var(--brand-dark);font-size:1.05rem}.btec-request-card-meta{display:flex;flex-wrap:wrap;gap:6px 16px;margin:0;color:var(--muted);font-size:.8rem}.btec-request-card-scenario{max-width:72ch}.btec-scenario-preview{margin:0;color:var(--ink);font-size:.88rem;line-height:1.55;white-space:pre-wrap}.btec-scenario-toggle{display:inline-block;margin-top:6px;padding:0;border:none;background:none;color:var(--brand);font:inherit;font-weight:700;font-size:.78rem;cursor:pointer}.btec-scenario-toggle:hover{text-decoration:underline}.btec-iv-checklist-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 28px;margin-top:2px}.btec-request-card-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding-top:14px;border-top:1px solid var(--line)}@media(max-width:720px){.btec-iv-checklist-grid{grid-template-columns:1fr}.btec-request-card-footer{flex-direction:column;align-items:stretch}.btec-request-card-footer .btec-iv-decision-actions{justify-content:stretch}.btec-request-card-footer .btec-iv-decision-actions button{flex:1}}.btec-student-project-status.status-verifying{color:var(--brand-dark);background:var(--soft)}.btec-grade-reverifying{display:block;margin-top:2px;color:var(--brand-dark);background:var(--soft);border-radius:3px;padding:1px 6px;font-size:.62rem;font-style:normal;font-weight:700}.btec-my-tasks-table td span{display:block;color:var(--muted);font-size:.74rem}.btec-my-tasks-table td .btec-my-tasks-done{display:inline-flex;align-items:center;gap:3px;color:var(--success);font-weight:700;font-size:.8rem}.btec-my-tasks-table td .btec-my-tasks-open{display:inline;color:var(--muted);font-weight:700;font-size:.8rem}.btec-my-tasks-submission{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.btec-teacher-submission-status{display:inline-flex;border-radius:999px;padding:3px 10px;font-size:.72rem;font-weight:700;color:var(--muted);background:var(--soft)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.btec-teacher-submission-status.status-submitted{color:var(--brand-dark);background:var(--soft)}.btec-teacher-submission-status.status-accepted{color:var(--success);background:var(--success-bg)}.btec-teacher-submission-status.status-returned{color:var(--danger);background:var(--danger-bg)}.btec-my-tasks-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.btec-analytics-stat.danger{border-color:var(--danger)}.btec-analytics-stat.danger strong{color:var(--danger)}.btec-my-tasks-deadline{display:inline-flex;align-items:center;gap:5px}.btec-my-tasks-deadline.deadline-overdue{color:var(--danger);font-weight:700}.btec-my-tasks-deadline.deadline-soon{color:var(--brand-dark);font-weight:600}.btec-my-tasks-chips{display:flex;flex-wrap:wrap;gap:6px}.btec-my-tasks-chip{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--line);border-radius:999px;padding:3px 9px;font-size:.68rem;font-weight:600;color:var(--muted);background:var(--surface-soft)}button.btec-my-tasks-chip.action{cursor:pointer;color:var(--brand-dark);border-color:var(--brand);background:var(--soft)}button.btec-my-tasks-chip.action:hover{background:var(--brand);color:#fff}.btec-my-tasks-chip.danger{color:var(--danger);border-color:var(--danger);background:var(--danger-bg)}button.btec-my-tasks-chip.action.danger:hover{background:var(--danger);color:#fff}.btec-my-tasks-chip.warn{color:var(--brand-dark);background:var(--soft)}.btec-my-tasks-chip.clear{color:var(--success);border-color:transparent;background:transparent}@media(max-width:720px){.btec-my-tasks-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}.btec-iv-sample-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.btec-iv-sample-head h3{margin:0}.btec-my-tasks-expansion>td{background:var(--surface-soft)}.btec-decl-inline{display:grid;gap:8px;justify-items:start;padding:4px 0}.btec-decl-list{display:grid;gap:6px;margin:0;padding:0;list-style:none;width:100%}.btec-decl-list li{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--line);border-radius:6px;padding:7px 10px;background:var(--surface);font-size:.78rem}.btec-auth-pairs{display:grid;gap:10px;margin-top:12px}.btec-auth-pair{border:1px solid var(--line);border-left:3px solid var(--brand);border-radius:6px;padding:10px 12px;background:var(--surface)}.btec-auth-pair header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}.btec-auth-pair header strong{color:var(--brand-dark);font-size:.84rem}.btec-auth-score{border-radius:999px;padding:2px 9px;font-size:.7rem;font-weight:700;color:var(--brand-dark);background:var(--soft)}.btec-auth-pair blockquote{margin:4px 0 0;border-left:2px solid var(--line);padding:4px 10px;color:var(--muted);background:var(--surface-soft);font-size:.74rem;line-height:1.5}.btec-auth-prior{display:inline-block;margin-left:6px;border-radius:3px;padding:1px 6px;color:var(--danger);background:var(--danger-bg);font-size:.62rem;font-style:normal;font-weight:700}.btec-auth-pair.group{border-left-color:var(--muted)}.btec-auth-pair.group header strong{display:inline-flex;align-items:center;gap:6px;color:var(--ink)}.btec-auth-group-members{margin:2px 0 4px;color:var(--muted);font-size:.74rem}.btec-auth-template-only{display:grid;gap:4px;margin:10px 0;border:1px solid var(--line);border-left:3px solid var(--danger);border-radius:6px;padding:10px 12px;background:var(--surface-soft)}.btec-auth-template-only strong{color:var(--danger);font-size:.8rem}.btec-auth-template-only p{margin:0;color:var(--muted);font-size:.72rem}.btec-auth-template-only span{color:var(--ink);font-size:.78rem;font-weight:600}.btec-auth-groups{margin-top:14px;border-top:1px solid var(--line);padding-top:12px}.btec-auth-groups h3{margin:0;font-size:.9rem;color:var(--muted)}.btec-auth-band{margin-top:16px;border-top:1px solid var(--line);padding-top:12px}.btec-auth-band:first-of-type{border-top:0}.btec-auth-band h3{margin:0 0 2px;font-size:.88rem;color:var(--brand-dark)}.btec-auth-band.priority h3{color:var(--danger)}.btec-auth-band.muted h3{color:var(--muted)}.btec-auth-band .btec-analytics-hint{margin:0 0 10px}.btec-auth-band .btec-auth-pair{margin-bottom:8px}.btec-auth-band.priority .btec-auth-pair{border-left-color:var(--danger)}.assessment-app{--a-radius-lg: 16px;--a-radius-md: 11px;--a-pill: 999px;--a-ease: cubic-bezier(.2, .7, .3, 1);--a-dur: .18s;--a-shadow-1: 0 1px 2px rgba(16, 46, 64, .05), 0 2px 6px rgba(16, 46, 64, .05);--a-shadow-2: 0 2px 4px rgba(16, 46, 64, .06), 0 10px 24px rgba(16, 46, 64, .08);--a-shadow-3: 0 4px 10px rgba(16, 46, 64, .08), 0 18px 40px rgba(16, 46, 64, .11);--a-ring: 0 0 0 3px rgba(1, 85, 126, .16)}[data-theme=dark] .assessment-app{--a-shadow-1: 0 1px 2px rgba(0, 0, 0, .45), 0 2px 6px rgba(0, 0, 0, .35);--a-shadow-2: 0 2px 4px rgba(0, 0, 0, .5), 0 10px 24px rgba(0, 0, 0, .42);--a-shadow-3: 0 4px 10px rgba(0, 0, 0, .55), 0 18px 40px rgba(0, 0, 0, .5);--a-ring: 0 0 0 3px rgba(74, 167, 199, .26)}.assessment-app .assessment-kpi-strip,.assessment-app .assessment-create-inner-card{border-radius:var(--a-radius-lg);box-shadow:var(--a-shadow-1);transition:box-shadow var(--a-dur) var(--a-ease)}.assessment-app .assessment-create-inner-card:hover{box-shadow:var(--a-shadow-2)}.assessment-app .assessment-kpi-item{color:var(--assessment-ink);transition:background var(--a-dur) var(--a-ease),transform var(--a-dur) var(--a-ease)}.assessment-app .assessment-kpi-item strong{color:var(--assessment-ink);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.assessment-app .assessment-kpi-item:hover{background:var(--surface-soft);transform:translateY(-1px)}.assessment-app .assessment-grade-row{border-radius:var(--a-radius-md);transition:transform var(--a-dur) var(--a-ease),box-shadow var(--a-dur) var(--a-ease),background var(--a-dur) var(--a-ease)}.assessment-app .assessment-grade-row:hover{transform:translateY(-2px);box-shadow:var(--a-shadow-2)}.assessment-app .assessment-grade-row.active{box-shadow:var(--a-shadow-2),inset 3px 0 0 var(--brand)}.assessment-app .assessment-grade-row input{font-variant-numeric:tabular-nums}.assessment-app .assessment-room-chip,.assessment-app .assessment-result-status{border-radius:var(--a-pill);font-variant-numeric:tabular-nums;transition:border-color var(--a-dur) var(--a-ease),background var(--a-dur) var(--a-ease)}.assessment-app .assessment-test-card{border-radius:var(--a-radius-lg);box-shadow:var(--a-shadow-1);transition:transform var(--a-dur) var(--a-ease),box-shadow var(--a-dur) var(--a-ease)}.assessment-app .assessment-test-card:hover{transform:translateY(-3px);box-shadow:var(--a-shadow-3)}.assessment-app .assessment-primary-button,.assessment-app .assessment-secondary-button{border-radius:var(--a-radius-md);transition:transform var(--a-dur) var(--a-ease),box-shadow var(--a-dur) var(--a-ease),background var(--a-dur) var(--a-ease),border-color var(--a-dur) var(--a-ease)}.assessment-app .assessment-primary-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--a-shadow-2)}.assessment-app .assessment-primary-button:active:not(:disabled),.assessment-app .assessment-secondary-button:active:not(:disabled){transform:translateY(0)}.assessment-app .assessment-primary-button:focus-visible,.assessment-app .assessment-secondary-button:focus-visible,.assessment-app .assessment-grade-row:focus-visible,.assessment-app .assessment-subtabs button:focus-visible{outline:none;box-shadow:var(--a-ring)}.assessment-app .assessment-subtabs button{border-radius:var(--a-pill);transition:background var(--a-dur) var(--a-ease),color var(--a-dur) var(--a-ease)}.assessment-app .assessment-empty-hint{border-radius:var(--a-radius-lg);padding:34px 26px;text-align:center;color:var(--assessment-muted)}.assessment-app .assessment-skeleton{border-radius:var(--a-radius-md);background:linear-gradient(90deg,var(--surface-soft) 25%,var(--surface-muted) 37%,var(--surface-soft) 63%);background-size:400% 100%;animation:assessment-shimmer 1.4s ease infinite}@keyframes assessment-shimmer{0%{background-position:100% 50%}to{background-position:0 50%}}@media(prefers-reduced-motion:reduce){.assessment-app .assessment-kpi-item,.assessment-app .assessment-grade-row,.assessment-app .assessment-test-card,.assessment-app .assessment-primary-button,.assessment-app .assessment-secondary-button{transition:none}.assessment-app .assessment-kpi-item:hover,.assessment-app .assessment-grade-row:hover,.assessment-app .assessment-test-card:hover,.assessment-app .assessment-primary-button:hover:not(:disabled){transform:none}.assessment-app .assessment-skeleton{animation:none}}@media(max-width:720px){.assessment-app .assessment-kpi-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.assessment-app .assessment-kpi-item{border-right:0;border-bottom:1px solid var(--assessment-border);padding:15px 17px}.assessment-app .assessment-kpi-item strong{font-size:1.6rem}}.assessment-app .assessment-dashboard-original .assessment-kpi-strip,[data-theme=dark] .assessment-app .assessment-kpi-strip,[data-theme=dark] .assessment-app .assessment-dashboard-original .assessment-kpi-strip{box-shadow:var(--a-shadow-1)}[data-theme=dark] .assessment-app .assessment-dashboard-original .assessment-kpi-item,[data-theme=dark] .assessment-app .assessment-kpi-item{color:var(--assessment-ink)}[data-theme=dark] .assessment-app .assessment-grade-row:hover{box-shadow:var(--a-shadow-2)}.substitute-meeting-settings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;border:1px solid #b8d3e0;border-left:3px solid var(--brand);border-radius:7px;padding:12px;background:#f4f9fb}.substitute-meeting-settings .full{grid-column:1 / -1}.substitute-meeting-settings small{color:var(--muted);font-weight:500}.substitute-video-call{display:grid;overflow:hidden;border:1px solid #aac9d8;border-radius:8px;background:var(--surface);color:var(--ink)}.substitute-video-call>header{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding:10px 13px;background:#f1f7fa}.substitute-video-call>header>div{display:flex;align-items:center;gap:8px}.substitute-video-call>header svg{color:var(--brand)}.substitute-video-call>header span{display:flex;align-items:center;gap:8px}.substitute-video-call>header strong{font-size:.82rem}.substitute-video-call>header small{border:1px solid #b8d3e0;border-radius:999px;padding:2px 6px;color:var(--brand);font-size:.6rem;font-weight:900;text-transform:uppercase}.substitute-video-call button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;border:1px solid var(--primary-button);border-radius:5px;padding:0 10px;color:#fff;background:var(--primary-button);font:inherit;font-size:.7rem;font-weight:900}.substitute-video-call button.secondary,.substitute-video-call .collapse,.substitute-video-call>footer button{border-color:var(--line);color:var(--ink);background:var(--surface)}.substitute-video-call .collapse svg{transition:transform .18s ease}.substitute-video-call .collapse svg.collapsed{transform:rotate(-90deg)}.substitute-video-call.loading,.substitute-video-call.error{display:flex;align-items:center;gap:8px;padding:14px;color:var(--muted);font-size:.75rem}.substitute-video-call.error{border-color:#e6b8b4;color:#9d271f;background:#fff5f4}.substitute-video-call-gate,.substitute-video-call-external{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px}.substitute-video-call-gate>div:first-child{display:grid;gap:3px}.substitute-video-call-gate strong{font-size:.8rem}.substitute-video-call-gate span,.substitute-video-call-external p{margin:0;color:var(--muted);font-size:.7rem}.substitute-video-call-gate em{color:#9d271f;font-size:.68rem;font-style:normal}.substitute-video-call-gate>div:last-child{display:flex;gap:7px}.substitute-video-call-frame{padding:7px;background:#17212b}.substitute-video-call-frame.collapsed{display:none}.substitute-video-call-frame>div:last-child{overflow:hidden;border-radius:5px;background:#111827}.substitute-video-call-inline-error{display:flex;align-items:center;gap:8px;margin-bottom:7px;border:1px solid #e6b8b4;border-radius:5px;padding:8px;color:#9d271f;background:#fff5f4;font-size:.7rem}.substitute-video-call-inline-error button{margin-left:auto}.substitute-video-call>footer{display:flex;justify-content:flex-end;gap:7px;border-top:1px solid var(--line);padding:8px 11px}.substitute-video-call.compact .substitute-video-call-gate{align-items:flex-start}.substitute-video-call.compact>header{padding:8px 11px}[data-theme=dark] .substitute-meeting-settings,[data-theme=dark] .substitute-video-call>header{background:var(--surface-soft)}@media(max-width:700px){.substitute-meeting-settings{grid-template-columns:1fr}.substitute-meeting-settings .full{grid-column:auto}.substitute-video-call-gate,.substitute-video-call-external{align-items:stretch;flex-direction:column}.substitute-video-call-gate>div:last-child{display:grid;grid-template-columns:1fr}.substitute-video-call>footer{display:grid;grid-template-columns:1fr 1fr}.substitute-video-call>header span{align-items:flex-start;flex-direction:column;gap:3px}}
