.permission-denied-page{width:100%;max-width:var(--homework-content-max);margin:0 auto}.permission-denied-panel{display:grid}.permission-gap-list{gap:var(--space-4);display:grid}.permission-gap-card{overflow:hidden}.permission-denied-target{grid-template-columns:var(--space-8) minmax(0, 1fr);align-items:center;gap:var(--space-4);padding:var(--space-6);border-bottom:var(--border-width) solid var(--color-neutral-200);display:grid}.permission-denied-target>svg{color:var(--color-warning)}.permission-denied-target>div{gap:var(--space-1);min-width:0;display:grid}.permission-denied-target span,.permission-denied-details dt{color:var(--color-neutral-500);font-size:var(--text-xs)}.permission-denied-target h2{color:var(--color-neutral-900);font-size:var(--text-lg);margin:0;font-weight:600;line-height:1.25}.permission-denied-target code,.permission-denied-details code{overflow-wrap:anywhere;color:var(--color-neutral-700);font-size:var(--text-sm)}.permission-denied-details{grid-template-columns:repeat(auto-fit, minmax(calc(var(--space-16) * 3), 1fr));margin:0;display:grid}.permission-denied-details>div{align-content:start;gap:var(--space-2);padding:var(--space-4) var(--space-6);border-bottom:var(--border-width) solid var(--color-neutral-200);display:grid}.permission-denied-details dd{color:var(--color-neutral-900);font-size:var(--text-sm);margin:0}.permission-denied-details ul{gap:var(--space-1);padding-left:var(--space-4);margin:0;display:grid}.permission-denied-actions{justify-content:flex-end;gap:var(--space-2);padding:var(--space-4) var(--space-6);background:var(--color-neutral-50);flex-wrap:wrap;display:flex}.permission-denied-primary-action,.permission-denied-secondary-action{min-height:calc(var(--space-8) + var(--space-2));justify-content:center;align-items:center;gap:var(--space-2);padding:0 var(--space-4);border:var(--border-width) solid transparent;border-radius:var(--radius-sm);font-family:inherit;font-size:var(--text-sm);font-weight:600;text-decoration:none;display:inline-flex}.permission-denied-primary-action{color:var(--color-on-primary);background:var(--color-primary);cursor:pointer}.permission-denied-primary-action:hover{background:var(--color-primary-hover)}.permission-denied-primary-action:disabled{color:var(--color-neutral-500);background:var(--color-neutral-200);cursor:not-allowed}.permission-denied-secondary-action{border-color:var(--color-neutral-300);color:var(--color-neutral-900);background:var(--color-neutral-0)}.permission-denied-secondary-action:hover{border-color:var(--color-neutral-400);background:var(--color-neutral-100)}.permission-denied-primary-action:focus-visible,.permission-denied-secondary-action:focus-visible{outline:var(--focus-ring-width) solid var(--color-secondary);outline-offset:var(--space-1)}.permission-denied-submission{padding:var(--space-3) var(--space-6);border-bottom:var(--border-width) solid var(--color-neutral-200);font-size:var(--text-sm);margin:0}.permission-denied-submission.is-success{color:var(--color-success);background:var(--color-success-soft)}.permission-denied-submission.is-error{color:var(--color-error);background:var(--color-error-soft)}.permission-denied-submission code{overflow-wrap:anywhere;color:inherit}.route-error-screen{min-height:100dvh;padding:var(--space-6);color:var(--color-neutral-900);background:var(--color-neutral-50);place-items:center;display:grid}.route-error-card{width:min(100%, calc(var(--space-16) * 6));padding:var(--space-8);text-align:center;background:var(--color-neutral-0);border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-md)}.route-error-title{font-size:var(--text-xl);margin:0;font-weight:600;line-height:1.25}.route-error-actions{justify-content:center;gap:var(--space-3);margin-top:var(--space-6);flex-wrap:wrap;display:flex}.route-error-button{min-height:var(--touch-target-min);padding:var(--space-2) var(--space-4);font:inherit;font-size:var(--text-sm);cursor:pointer;border:var(--border-width) solid transparent;border-radius:var(--radius-sm);font-weight:600;line-height:1.5}.route-error-button:focus-visible{outline:var(--focus-ring-width) solid var(--color-primary);outline-offset:var(--border-width)}.route-error-button-primary{color:var(--color-on-primary);background:var(--color-primary)}.route-error-button-primary:hover{background:var(--color-primary-hover)}.route-error-button-secondary{color:var(--color-primary);background:var(--color-neutral-0);border-color:var(--color-primary-border)}.route-error-button-secondary:hover{background:var(--color-primary-soft)}:root{--color-primary:#083049;--color-primary-hover:#062638;--color-primary-pressed:#041d2b;--color-primary-soft:#e9f0f4;--color-primary-border:#bfd0da;--color-secondary:#be4651;--color-secondary-hover:#aa3f49;--color-secondary-soft:#faeef0;--color-neutral-0:#fff;--color-neutral-25:#fbfcfd;--color-neutral-50:#f8f9fa;--color-neutral-100:#f3f4f6;--color-neutral-200:#e5e7eb;--color-neutral-300:#d1d5db;--color-neutral-400:#9ca3af;--color-neutral-500:#6b7280;--color-neutral-700:#374151;--color-neutral-900:#111827;--color-success:#287052;--color-success-soft:#edf7f2;--color-success-border:#b9ddcc;--color-warning:#9a6700;--color-warning-soft:#fff7e6;--color-warning-border:#ead39f;--color-error:#a23742;--color-error-soft:#faeef0;--color-error-border:#e4b7bc;--color-info:#2f6698;--color-info-soft:#edf3f8;--color-on-primary:#fff;--color-on-primary-muted:#ffffffb8;--color-on-primary-subtle:#ffffff7a;--color-on-primary-hover:#ffffff14;--color-smart-canvas:#f8f9faeb;--color-smart-brand-surface:#083049a3;--color-smart-action-surface:#f8f9fae0;--color-smart-line:#ffffff7a;--color-overlay:#11182752;--shadow-level-2:0 var(--space-1) var(--space-3) #0000001a;--text-xs:12px;--text-sm:14px;--text-base:16px;--text-lg:20px;--text-xl:24px;--text-2xl:32px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--space-16:64px;--touch-target-min:calc(var(--space-8) + var(--space-3));--radius-sm:6px;--radius-md:8px;--border-width:1px;--focus-ring-width:calc(var(--border-width) * 2);--summary-item-min-width:152px;--operation-actions-min-width:224px;--metric-min-height:calc(var(--space-16) + var(--space-4));--metric-item-min-width:calc(var(--space-16) * 2 + var(--space-8));--metric-compact-min-height:calc(var(--space-12) + var(--space-2));--compact-table-min-width:720px;--borderRadiusSmall:var(--radius-sm);--borderRadiusMedium:var(--radius-sm);--colorNeutralStroke1:var(--color-neutral-300);--colorNeutralStroke1Hover:var(--color-neutral-400);--colorNeutralStroke1Pressed:var(--color-neutral-400);--header-height:64px;--context-height:var(--touch-target-min);--sidebar-width:232px;--mobile-sidebar-width:288px;--content-max:1760px;--control-width:280px;--table-min-width:960px;--table-cell-max:264px;--schedule-min-width:1120px;--feedback-min-width:1120px;--dialog-wide:820px;--duty-batch-dialog-width:1120px;--homework-content-max:960px;--homework-row-actions-width:160px;--homework-progress-width:112px;--return-rate-width:112px;--return-rate-track-width:48px;--return-actions-width:152px;--chart-height:8px;--sparkline-width:calc(var(--space-16) + var(--space-8));--command-chart-height:calc(var(--space-16) * 3);--command-panel-height:calc(var(--space-16) * 4);--compact-chart-height:calc(var(--space-16) * 3);--avatar-size:32px;--brand-logo-size:32px;--login-logo-container-size:64px;--login-logo-size:48px;--login-panel-width:416px;--login-brand-min-width:320px;--login-brand-column-width:44vw;--mobile-width:768px;--audit-label-width:72px;--audit-log-max-height:320px;--adjust-weekday-width:var(--space-16);--adjust-period-width:calc(var(--space-16) + var(--space-2));--adjust-class-width:calc(var(--space-16) * 2);--adjust-result-width:calc(var(--space-16) * 5);--adjust-scroll-height:calc(100dvh - var(--header-height) - var(--context-height) - var(--space-16) - var(--space-12) - var(--space-8));--layer-sticky-row:2;--layer-sticky-column:3;--layer-sticky-corner:4;--layer-onboarding:100;--layer-assistant:120;--assistant-panel-width:calc(var(--space-16) * 7 + var(--space-8));--assistant-composer-min-height:var(--space-16);--motion-fast:.12s ease;--motion-standard:.16s ease-out;--motion-step:40ms}.assistant-panel-layer{z-index:var(--layer-assistant);justify-content:flex-end;display:flex;position:fixed;inset:0}.assistant-panel-scrim{background:var(--color-overlay);border:0;padding:0;position:absolute;inset:0}.assistant-panel{isolation:isolate;width:min(100vw, var(--assistant-panel-width));overscroll-behavior:none;height:100dvh;max-height:100dvh;color:var(--color-neutral-900);background:var(--color-neutral-0);box-shadow:var(--shadow-level-2);grid-template-rows:auto minmax(0,1fr) auto;display:grid;position:relative;overflow:hidden}.assistant-panel-header,.assistant-composer{padding:var(--space-3) var(--space-4)}.assistant-panel-header{min-height:var(--header-height);justify-content:space-between;align-items:center;gap:var(--space-3);border-bottom:var(--border-width) solid var(--color-neutral-200);display:flex}.assistant-panel-identity{align-items:center;gap:var(--space-3);min-width:0;display:flex}.assistant-panel-mark{color:var(--color-primary);flex:none;align-items:center;display:flex}.assistant-panel-title-copy{gap:var(--space-1);min-width:0;display:grid}.assistant-panel-title-line{align-items:center;gap:var(--space-2);min-width:0;display:flex}.assistant-ai-label{padding:0 var(--space-1);border:var(--border-width) solid var(--color-neutral-300);border-radius:var(--radius-sm);color:var(--color-neutral-500);background:var(--color-neutral-0);font-size:var(--text-xs);flex:none;font-weight:600;line-height:1.5}.assistant-ai-label:focus-visible{border-color:var(--color-secondary);outline:var(--focus-ring-width) solid var(--color-secondary);outline-offset:var(--space-1)}.assistant-panel-actions{align-items:center;gap:var(--space-1);flex:none;display:flex}.assistant-panel-header strong{font-size:var(--text-lg);font-weight:600;line-height:1.25}.assistant-panel-title-copy>span{min-width:0;color:var(--color-neutral-500);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.assistant-panel-content{gap:var(--space-3);min-height:0;padding:var(--space-4);overscroll-behavior-y:contain;scrollbar-gutter:stable;background:var(--color-neutral-0);flex-direction:column;display:flex;overflow:hidden auto}.assistant-message{gap:var(--space-1);max-width:calc(100% - var(--space-8));display:grid}.assistant-message-author{align-items:center;gap:var(--space-1);color:var(--color-neutral-500);font-size:var(--text-xs);display:flex}.assistant-message p,.assistant-tool p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.assistant-message p{line-height:1.5}.assistant-message-assistant{max-width:100%}.assistant-message-user{align-self:flex-end}.assistant-message-user .assistant-message-author{text-align:right;justify-content:flex-end}.assistant-message-user p{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--color-neutral-100)}.assistant-tool{gap:var(--space-2);min-width:0;max-width:100%;padding:var(--space-2) 0;border-top:var(--border-width) solid var(--color-neutral-200);background:var(--color-neutral-0);display:grid}.assistant-tool-disclosure{min-width:0;max-width:100%}.assistant-tool-running{color:var(--color-warning)}.assistant-tool-failed{color:var(--color-error)}.assistant-run-summary{gap:var(--space-2);padding:var(--space-2) 0 var(--space-2) var(--space-3);border-left:var(--space-1) solid var(--color-neutral-300);display:grid}.assistant-run-summary-success{border-left-color:var(--color-success)}.assistant-run-summary-warning{border-left-color:var(--color-warning)}.assistant-run-summary-error{border-left-color:var(--color-error)}.assistant-run-summary-heading,.assistant-run-summary-group>div{align-items:center;gap:var(--space-2);min-width:0;display:flex}.assistant-run-summary-heading{color:var(--color-neutral-700)}.assistant-run-summary-heading strong,.assistant-run-summary-group strong{color:var(--color-neutral-900);font-size:var(--text-sm);font-weight:600}.assistant-run-summary-heading>span,.assistant-run-summary-group>div>span{color:var(--color-neutral-500);font-size:var(--text-xs);font-variant-numeric:tabular-nums;margin-left:auto}.assistant-run-summary-counts{gap:var(--space-3);flex-wrap:wrap;margin:0;display:flex}.assistant-run-summary-counts>div{align-items:baseline;gap:var(--space-1);min-width:0;display:flex}.assistant-run-summary-counts dt,.assistant-run-summary-meta dt{color:var(--color-neutral-500);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.assistant-run-summary-counts dd{color:var(--color-neutral-900);font-size:var(--text-sm);font-variant-numeric:tabular-nums;margin:0;font-weight:600}.assistant-run-summary-disclosure>summary,.assistant-tool-title{cursor:pointer;list-style:none}.assistant-run-summary-disclosure>summary::-webkit-details-marker{display:none}.assistant-tool-title::-webkit-details-marker{display:none}.assistant-run-summary-disclosure>summary{width:fit-content;color:var(--color-primary);font-size:var(--text-xs)}.assistant-run-summary-disclosure[open]>summary{margin-bottom:var(--space-2)}.assistant-run-summary-details{max-height:calc(var(--space-16) * 3);border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm);scrollbar-gutter:stable;display:grid;overflow-y:auto}.assistant-run-summary-details:focus-visible{border-color:var(--color-secondary);outline:var(--focus-ring-width) solid var(--color-secondary);outline-offset:var(--space-1)}.assistant-run-summary-group{gap:var(--space-1);padding:var(--space-2);border-bottom:var(--border-width) solid var(--color-neutral-200);display:grid}.assistant-run-summary-group:last-child{border-bottom:0}.assistant-run-summary-group ul{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.assistant-run-summary-group li{justify-content:space-between;align-items:flex-start;gap:var(--space-2);min-width:0;color:var(--color-neutral-700);font-size:var(--text-xs);display:flex}.assistant-run-summary-group li>span{overflow-wrap:anywhere;min-width:0}.assistant-run-summary-group li>em{padding:0 var(--space-1);border-radius:var(--radius-sm);color:var(--color-success);background:var(--color-success-soft);font-size:var(--text-xs);white-space:nowrap;flex:none;font-style:normal}.assistant-run-summary-meta{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.assistant-run-summary-meta>div{min-width:0;padding-top:var(--space-2);border-top:var(--border-width) solid var(--color-neutral-200)}.assistant-run-summary-meta dd{margin:var(--space-1) 0 0;overflow-wrap:anywhere;color:var(--color-neutral-900);font-size:var(--text-xs);white-space:pre-wrap}.assistant-tool-title{gap:var(--space-2);width:100%;min-width:0;max-width:100%;color:var(--color-neutral-700);align-items:center;display:flex}.assistant-tool-title strong{min-width:0;font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;flex:auto;font-weight:600;overflow:hidden}.assistant-tool-title span{color:var(--color-neutral-500);font-size:var(--text-xs);flex:none;margin-left:auto}.assistant-tool-meta{padding-left:var(--space-6);color:var(--color-neutral-500);font-size:var(--text-xs)}.assistant-pending-action{gap:var(--space-2);padding-top:var(--space-2);border-top:var(--border-width) solid var(--color-neutral-200);display:grid}.assistant-action-heading{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.assistant-action-heading span,.assistant-action-summary dt,.assistant-action-summary dd,.assistant-action-changes-heading,.assistant-action-change-name,.assistant-action-change-values,.assistant-action-effects,.assistant-pending-action>strong,.assistant-tool-error{font-size:var(--text-xs)}.assistant-action-heading span{color:var(--color-neutral-500)}.assistant-action-summary{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.assistant-action-summary>div{min-width:0;padding:var(--space-2);border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm);background:var(--color-neutral-50)}.assistant-action-summary dt{color:var(--color-neutral-500)}.assistant-action-summary dd{margin:var(--space-1) 0 0;overflow-wrap:anywhere;color:var(--color-neutral-900)}.assistant-action-changes-heading,.assistant-action-change-name{justify-content:space-between;align-items:flex-start;gap:var(--space-2);display:flex}.assistant-action-changes-heading strong,.assistant-action-change-name strong{overflow-wrap:anywhere;color:var(--color-neutral-900);font-weight:600}.assistant-action-changes-heading span{color:var(--color-neutral-500);font-variant-numeric:tabular-nums;flex:none}.assistant-action-changes{max-height:calc(var(--space-16) * 3);border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm);scrollbar-gutter:stable;display:grid;overflow:auto}.assistant-action-changes:focus-visible{border-color:var(--color-secondary);outline:var(--focus-ring-width) solid var(--color-secondary);outline-offset:var(--space-1)}.assistant-action-change{gap:var(--space-2);padding:var(--space-2);border-bottom:var(--border-width) solid var(--color-neutral-200);display:grid}.assistant-action-change:last-child{border-bottom:0}.assistant-action-change-name span{color:var(--color-warning);text-align:right}.assistant-action-change-values{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.assistant-action-change-values>div{min-width:0;padding:var(--space-2);border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm);background:var(--color-neutral-50)}.assistant-action-change-values dt{color:var(--color-neutral-500)}.assistant-action-change-values dd{margin:var(--space-1) 0 0;overflow-wrap:anywhere;color:var(--color-neutral-900);white-space:pre-wrap}.assistant-action-effects{padding-left:var(--space-4);color:var(--color-warning);margin:0}.assistant-action-controls{justify-content:flex-end;gap:var(--space-2);display:flex}.assistant-action-review{padding-top:var(--space-2);border-top:var(--border-width) solid var(--color-neutral-200)}.assistant-tool-error{color:var(--color-error)}.assistant-state,.assistant-running{gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);align-items:center;display:flex}.assistant-state-warning{color:var(--color-warning);background:var(--color-warning-soft)}.assistant-state-error{color:var(--color-error);background:var(--color-error-soft)}.assistant-state-error>span{flex:1;min-width:0}.assistant-state-error>.fui-Button{flex:none}.assistant-running{color:var(--color-neutral-500)}.assistant-composer{gap:var(--space-2);padding-bottom:max(var(--space-3), env(safe-area-inset-bottom));border-top:var(--border-width) solid var(--color-neutral-200);background:var(--color-neutral-0);grid-template-columns:minmax(0,1fr) auto;align-items:end;display:grid}.assistant-composer textarea{min-height:var(--assistant-composer-min-height);max-height:calc(var(--space-16) * 3);padding:var(--space-2) var(--space-3);resize:vertical;border:var(--border-width) solid var(--color-neutral-300);border-radius:var(--radius-sm);color:var(--color-neutral-900);background:var(--color-neutral-0);font-size:var(--text-sm);line-height:1.5}.assistant-composer textarea:focus{border-color:var(--color-primary);outline:var(--focus-ring-width) solid var(--color-primary-soft)}@media (width<=768px){.assistant-panel-layer{align-items:stretch}.assistant-panel{width:100vw;height:100dvh;max-height:100dvh;box-shadow:none}.assistant-panel-scrim{display:none}.assistant-composer{padding-right:max(var(--space-3), env(safe-area-inset-right));padding-bottom:max(var(--space-2), env(safe-area-inset-bottom));padding-left:max(var(--space-3), env(safe-area-inset-left))}.assistant-panel-header{min-height:0;padding-top:max(var(--space-2), env(safe-area-inset-top));padding-right:max(var(--space-3), env(safe-area-inset-right));padding-bottom:var(--space-2);padding-left:max(var(--space-3), env(safe-area-inset-left))}.assistant-panel-identity{flex:auto}.assistant-panel-title-copy>span{max-width:calc(var(--space-16) * 2)}.assistant-new-conversation-label{display:none}.assistant-panel-header .fui-Button,.assistant-composer .fui-Button,.assistant-action-controls .fui-Button{min-width:var(--context-height);min-height:var(--context-height)}.assistant-action-summary,.assistant-action-change-values{grid-template-columns:1fr}.assistant-panel-content{gap:var(--space-2);padding:var(--space-3) max(var(--space-3), env(safe-area-inset-right)) var(--space-3) max(var(--space-3), env(safe-area-inset-left));scrollbar-gutter:auto}.assistant-message{max-width:100%}.assistant-run-summary-meta{grid-template-columns:1fr}.assistant-composer textarea{min-height:var(--space-12);max-height:calc(var(--space-16) * 2);resize:none;font-size:var(--text-base)}.assistant-action-controls{align-items:stretch}.assistant-action-controls .fui-Button{width:100%}}@media (prefers-reduced-motion:reduce){.assistant-panel-content{scroll-behavior:auto}}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}html.assistant-dialog-open,html.assistant-dialog-open body{overscroll-behavior:none;overflow:hidden}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{color:var(--color-neutral-900);background:var(--color-neutral-50);font-family:Microsoft YaHei UI,PingFang SC,Noto Sans CJK SC,Arial,sans-serif;font-size:var(--text-sm);font-weight:400;line-height:1.5}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:var(--focus-ring-width) solid var(--color-secondary);outline-offset:var(--focus-ring-width)}.fui-Button:active{transform:translateY(1px)}.fui-Button{transition:color var(--motion-fast), background-color var(--motion-fast), border-color var(--motion-fast), transform var(--motion-fast)}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:600;line-height:1.25}.app-shell{--shell-line:#0830491a;--shell-hover:#0830490d;--shell-pressed:#08304917;--shell-indicator:2px;--shell-nav-item:40px;--shell-nav-icon:18px;--shell-motion:.14s ease;--shell-elevation-header:0 1px 0 #0830491a, 0 2px 10px #0830490f;--shell-elevation-rail:1px 0 0 #0830491a;--shell-elevation-drawer:0 16px 44px #041d2b47;background:var(--color-neutral-50);min-height:100dvh}.global-header{--colorStrokeFocus2:var(--color-secondary);z-index:30;grid-template-columns:minmax(var(--sidebar-width), auto) minmax(0, 1fr) auto;align-items:center;gap:var(--space-4);height:var(--header-height);padding:0 var(--space-4);background:var(--color-neutral-0);box-shadow:var(--shell-elevation-header);display:grid;position:fixed;inset:0 0 auto}.global-brand,.global-actions,.page-actions,.filter-bar,.table-toolbar{align-items:center;display:flex}.global-brand{gap:var(--space-2);white-space:nowrap;min-width:0}.global-brand strong{color:var(--color-primary);font-size:var(--text-base);font-weight:600}.global-brand>span:last-child{color:var(--color-neutral-500);font-size:var(--text-sm)}.brand-logo{width:var(--brand-logo-size);height:var(--brand-logo-size);object-fit:contain}.login-mark{width:var(--login-logo-container-size);height:var(--login-logo-container-size);border-radius:var(--radius-md);background:var(--color-neutral-0);flex:none;place-items:center;display:inline-grid}.login-mark img{width:var(--login-logo-size);height:var(--login-logo-size);object-fit:contain}.brand-divider{width:var(--border-width);height:var(--space-4);margin:0 var(--space-1);background:var(--color-neutral-300);flex:none}.top-navigation{scrollbar-width:none;min-width:0;-webkit-mask-image:linear-gradient(to right, transparent 0, #000 var(--space-3), #000 calc(100% - var(--space-3)), transparent 100%);mask-image:linear-gradient(to right, transparent 0, #000 var(--space-3), #000 calc(100% - var(--space-3)), transparent 100%);justify-content:safe center;align-self:stretch;display:flex;overflow:auto hidden}.top-navigation::-webkit-scrollbar{display:none}.top-navigation-link{justify-content:center;align-items:center;gap:var(--space-1);min-width:0;height:100%;padding:0 var(--space-3);border:0;border-bottom:var(--shell-indicator) solid transparent;color:var(--color-neutral-700);font-size:var(--text-sm);white-space:nowrap;cursor:pointer;transition:color var(--shell-motion), border-color var(--shell-motion), background-color var(--shell-motion);background:0 0;flex:none;text-decoration:none;display:inline-flex}.top-navigation-link:hover{color:var(--color-primary);background:var(--shell-hover)}.top-navigation-link:active{background:var(--shell-pressed);transform:none}.top-navigation-link.active{border-bottom-color:var(--color-secondary);color:var(--color-primary);font-weight:600}.top-navigation-link:focus-visible{outline:calc(2 * var(--border-width)) solid var(--color-secondary);outline-offset:calc(-2 * var(--border-width))}.top-navigation-icon{display:none}.fui-PopoverSurface.nav-search-surface{width:var(--control-width);padding:var(--space-3)}.nav-search-surface .fui-Input{width:100%}.global-actions{justify-self:end;gap:var(--space-1)}.notification-icon-wrap{display:inline-flex;position:relative}.notification-count{top:calc(-1 * var(--space-1));right:calc(-1 * var(--space-2));min-width:var(--space-4);height:var(--space-4);padding:0 var(--space-1);border:calc(2 * var(--border-width)) solid var(--color-neutral-0);border-radius:var(--space-4);color:var(--color-neutral-0);background:var(--color-error);font-size:var(--text-xs);font-variant-numeric:tabular-nums;place-items:center;font-weight:600;line-height:1;display:inline-grid;position:absolute}.account-trigger{min-height:var(--header-height);margin-left:var(--space-2);padding-left:var(--space-3);column-gap:var(--space-2);position:relative}.account-trigger:before{content:"";width:var(--border-width);height:var(--space-6);background:var(--color-neutral-200);position:absolute;top:50%;left:0;transform:translateY(-50%)}.account-avatar{width:var(--avatar-size);height:var(--avatar-size);color:var(--color-neutral-0);background:var(--color-primary);font-size:var(--text-sm);border-radius:50%;place-items:center;font-weight:600;display:inline-grid}.account-text{text-align:left;min-width:72px;display:grid}.account-text strong,.account-text small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.account-text strong{font-size:var(--text-sm);font-weight:600}.account-text small{color:var(--color-neutral-500);font-size:var(--text-xs)}.sidebar{z-index:20;top:var(--header-height);width:var(--sidebar-width);color:var(--color-neutral-900);background:var(--color-neutral-0);box-shadow:var(--shell-elevation-rail);flex-direction:column;transition:transform .16s,visibility .16s;display:flex;position:fixed;bottom:0;left:0}.sidebar-collapsed .sidebar{visibility:hidden;pointer-events:none;transform:translate(-100%)}.sidebar-module-title{min-height:var(--space-12);align-items:center;gap:var(--space-3);padding:0 var(--space-4) 0 calc(var(--space-4) + var(--shell-indicator));border-bottom:var(--border-width) solid var(--shell-line);color:var(--color-primary);flex:none;display:flex}.sidebar-module-title svg{flex:none}.sidebar-module-title:not(:has(svg)){padding-left:calc(var(--space-4) + var(--shell-indicator) + var(--shell-nav-icon) + var(--space-3))}.sidebar-module-title strong{min-width:0;font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.sidebar-nav{min-height:0;padding:var(--space-2) 0 var(--space-8);scrollbar-width:none;flex:auto;overflow-y:auto}.sidebar-nav::-webkit-scrollbar{display:none}.nav-link-external-cue{flex:none;margin-left:auto}.nav-link{align-items:center;gap:var(--space-3);min-height:var(--shell-nav-item);padding:var(--space-2) var(--space-4);border-left:var(--shell-indicator) solid transparent;color:var(--color-neutral-700);transition:color var(--shell-motion), background-color var(--shell-motion), border-color var(--shell-motion);text-decoration:none;display:flex}.nav-link svg{transition:color var(--motion-fast), transform var(--motion-fast);flex:none}.nav-link:hover,.nav-link:focus-visible{color:var(--color-primary);background:var(--shell-hover)}.nav-link:hover>svg:first-child,.nav-link:focus-visible>svg:first-child{transform:translateX(calc(var(--space-1) / 2))}.nav-link:active{background:var(--shell-pressed)}.nav-link.active{border-left-color:var(--color-secondary);color:var(--color-primary);background:var(--color-primary-soft);font-weight:600}.nav-link.active svg{color:var(--color-secondary)}.nav-link:focus-visible{outline:calc(2 * var(--border-width)) solid var(--color-secondary);outline-offset:calc(-2 * var(--border-width))}.mobile-primary-nav,.mobile-drawer-header,.fui-Button.mobile-drawer-close{display:none}.main-frame{min-width:0;min-height:100dvh;margin-left:var(--sidebar-width);padding-top:var(--header-height);background:var(--color-neutral-50);transition:margin-left .16s}.sidebar-collapsed .main-frame{margin-left:0}.context-bar{z-index:10;top:var(--header-height);height:var(--context-height);padding:0 var(--space-6);border-bottom:var(--border-width) solid var(--shell-line);background:var(--color-neutral-0);color:var(--color-neutral-700);font-size:var(--text-sm);align-items:center;display:flex;position:sticky}.context-trail{align-items:center;gap:var(--space-2);min-width:0;display:flex}.context-trail:before{content:"";width:var(--shell-indicator);height:var(--space-4);border-radius:var(--shell-indicator);background:var(--color-secondary);flex:none}.context-trail-module{flex:none}.context-trail-link{color:inherit;text-decoration:none}.context-trail-link:hover{color:var(--color-primary);text-decoration:underline}.context-trail-link:focus-visible{border-radius:var(--radius-sm);outline:var(--focus-ring-width) solid var(--color-secondary);outline-offset:var(--space-1)}.context-trail-separator{color:var(--color-neutral-300);flex:none}.context-trail strong{min-width:0;color:var(--color-primary);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.app-content{width:100%;min-width:0;max-width:var(--content-max);padding:var(--space-4);margin:0 auto}.route-transition{min-width:0;animation:route-enter var(--motion-standard) both}.teacher-onboarding{z-index:var(--layer-onboarding);position:fixed;inset:0}.teacher-onboarding-scrim{background:#11182794;position:fixed;inset:0}.teacher-onboarding-focus{z-index:var(--layer-onboarding);left:var(--onboarding-focus-left);top:var(--onboarding-focus-top);width:var(--onboarding-focus-width);height:var(--onboarding-focus-height);border:var(--focus-ring-width) solid var(--color-secondary);border-radius:var(--radius-md);pointer-events:none;transition:left var(--motion-standard), top var(--motion-standard), width var(--motion-standard), height var(--motion-standard);position:fixed;box-shadow:0 0 0 100vmax #11182794}.teacher-onboarding-panel{z-index:calc(var(--layer-onboarding) + 1);right:var(--space-6);bottom:var(--space-6);width:min(calc(var(--space-16) * 5), calc(100vw - var(--space-8)));max-height:calc(100dvh - var(--space-8));gap:var(--space-4);padding:var(--space-4);border-radius:var(--radius-md);color:var(--color-neutral-900);background:var(--color-neutral-0);display:grid;position:fixed;overflow:auto;box-shadow:0 4px 12px #0000001a}.teacher-onboarding-panel.is-centered{inset:50% auto auto 50%;transform:translate(-50%,-50%)}.teacher-onboarding-panel>header,.teacher-onboarding-panel>footer{align-items:center;gap:var(--space-2);display:flex}.teacher-onboarding-panel>header{justify-content:space-between}.teacher-onboarding-panel>header>span{color:var(--color-neutral-500);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.teacher-onboarding-copy{gap:var(--space-2);animation:content-settle var(--motion-standard) both;display:grid}.teacher-onboarding-copy h2,.teacher-onboarding-copy p{margin:0}.teacher-onboarding-copy h2{color:var(--color-primary);font-size:var(--text-lg)}.teacher-onboarding-copy p{color:var(--color-neutral-700);font-size:var(--text-sm);line-height:1.5}.teacher-onboarding-error{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.teacher-onboarding-error>span{min-width:0}.teacher-onboarding-error-actions{align-items:center;gap:var(--space-2);flex:none;display:flex}.teacher-onboarding-panel>footer>span{flex:auto}.page-stack{gap:var(--space-3);min-width:0;display:grid}.homework-page{align-content:start}.homework-section-title{min-height:var(--space-12);justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);border-bottom:var(--border-width) solid var(--color-neutral-200);display:flex}.homework-section-title strong{font-size:var(--text-base);font-weight:600}.homework-section-title span,.homework-meta-row,.homework-attempt,.homework-upload-row>span{color:var(--color-neutral-500);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.homework-card-list{display:grid}.homework-assignment-card,.wrong-book-card{align-items:center;gap:var(--space-6);padding:var(--space-4);border-bottom:var(--border-width) solid var(--color-neutral-200);grid-template-columns:minmax(0,1fr) auto;display:grid}.homework-assignment-card:last-child,.wrong-book-card:last-child{border-bottom:0}.homework-assignment-card:hover,.wrong-book-card:hover{background:var(--color-neutral-50)}.homework-assignment-main,.homework-dialog-content,.wrong-book-content{gap:var(--space-3);min-width:0;display:grid}.homework-title-row,.homework-meta-row,.homework-result-line,.homework-return-line,.homework-upload-row,.homework-object-actions{align-items:center;display:flex}.homework-title-row,.homework-upload-row{justify-content:space-between;gap:var(--space-3)}.homework-title-row strong{text-overflow:ellipsis;min-width:0;font-size:var(--text-base);white-space:nowrap;overflow:hidden}.homework-meta-row{gap:var(--space-2) var(--space-4);flex-wrap:wrap}.homework-content{max-width:var(--homework-content-max);color:var(--color-neutral-700);white-space:pre-wrap}.homework-object-actions{justify-content:flex-end;gap:var(--space-2)}.homework-row-actions{min-width:var(--homework-row-actions-width)}.homework-row-actions>*{vertical-align:middle}.homework-row-actions .fui-Button+.fui-Button{margin-left:var(--space-2)}.homework-result-line,.homework-return-line{gap:var(--space-2);padding:var(--space-2) var(--space-3);border:var(--border-width) solid var(--color-success-border);border-radius:var(--radius-sm);color:var(--color-success);background:var(--color-success-soft)}.homework-return-line{border-color:var(--color-warning-border);color:var(--color-warning);background:var(--color-warning-soft)}.homework-result-line svg,.homework-return-line svg{flex:none}.homework-result-line strong{font-variant-numeric:tabular-nums}.homework-result-line span,.homework-return-line span{min-width:0}.table-subline{margin-top:var(--space-1);color:var(--color-neutral-500);font-size:var(--text-xs);font-variant-numeric:tabular-nums;font-weight:400;line-height:1.4;display:block}.homework-question-block,.homework-answer-block{padding:var(--space-4);border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm);color:var(--color-neutral-700);background:var(--color-neutral-50);white-space:pre-wrap}.homework-answer-block{gap:var(--space-2);display:grid}.homework-answer-block span,.wrong-book-content span{color:var(--color-neutral-500);font-size:var(--text-xs)}.homework-structured-question-list,.homework-structured-answer-list{gap:var(--space-4);display:grid}.homework-structured-answer{gap:var(--space-2);padding:var(--space-4);border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm);background:var(--color-neutral-50);display:grid}.homework-structured-answer>div{justify-content:space-between;align-items:center;gap:var(--space-4);display:flex}.homework-structured-answer p{color:var(--color-neutral-700);white-space:pre-wrap}.homework-file-list{gap:var(--space-2);flex-wrap:wrap;display:flex}.homework-file-list span{padding:var(--space-1) var(--space-2);border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm);color:var(--color-neutral-700);background:var(--color-neutral-50);font-size:var(--text-xs)}.wrong-book-list{gap:var(--space-4);padding:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr))}.wrong-book-card{align-items:start;gap:var(--space-3);border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm);grid-template-columns:minmax(0,1fr)}.wrong-book-content{gap:var(--space-1)}.wrong-book-content strong{color:var(--color-neutral-700);white-space:pre-wrap;font-weight:400}.homework-progress{min-width:var(--homework-progress-width);gap:var(--space-1);display:grid}.homework-progress>span{color:var(--color-neutral-500);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.homework-progress progress{width:100%;height:var(--chart-height);border-radius:var(--chart-height);background:var(--color-neutral-200);border:0;overflow:hidden}.homework-progress progress::-webkit-progress-bar{border-radius:var(--chart-height);background:var(--color-neutral-200)}.homework-progress progress::-webkit-progress-value{border-radius:var(--chart-height);background:var(--color-primary)}.homework-progress progress::-moz-progress-bar{border-radius:var(--chart-height);background:var(--color-primary)}.visually-hidden{width:var(--space-1);height:var(--space-1);clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;padding:0;position:absolute;overflow:hidden}.featured-app-grid{gap:var(--space-2);background:0 0;border:0;border-radius:0;grid-template-columns:repeat(4,minmax(0,1fr));display:grid;overflow:visible}.featured-app-section{gap:var(--space-3);display:grid}.featured-app-pinned-section{padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-neutral-50)}.featured-apps-toolbar{align-items:center;gap:var(--space-3);grid-template-columns:minmax(0,1fr) auto;display:grid}.featured-app-search{width:min(100%, var(--control-width))}.featured-app-category-nav{align-items:center;gap:var(--space-1);scrollbar-width:thin;display:flex;overflow-x:auto}.featured-app-category-nav .fui-Button{flex:none}.featured-app-section h2:focus-visible{outline:var(--focus-ring-width) solid var(--color-secondary);outline-offset:var(--space-1)}.featured-app-section h2{color:var(--color-neutral-900);font-size:var(--text-base);margin:0;font-weight:600;line-height:1.25}.featured-app-card{min-width:0;min-height:calc(var(--space-16) + var(--space-4));border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-md);color:var(--color-neutral-900);background:var(--color-neutral-0);grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr);transition:background-color .16s,transform .12s;display:grid;position:relative;overflow:hidden}.featured-apps-page.is-compact .featured-app-card,.featured-apps-page.is-compact .featured-app-target{min-height:calc(var(--space-8) + var(--space-4))}.featured-apps-page.is-compact .featured-app-target{gap:var(--space-2);padding:var(--space-2) var(--space-3)}.featured-apps-page.is-compact .featured-app-description,.featured-apps-page.is-compact .featured-app-ranking-reason{display:none}.featured-apps-page.is-compact .featured-app-preference-actions{padding:var(--space-1) var(--space-3)}.featured-app-card:hover,.featured-app-card:focus-within{background:var(--color-primary-soft)}.featured-app-target{grid-template-columns:var(--space-8) minmax(0, 1fr) var(--space-4);min-width:0;min-height:calc(var(--space-16) + var(--space-4));align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);color:inherit;text-decoration:none;display:grid}.featured-app-target:focus-visible{outline:var(--focus-ring-width) solid var(--color-secondary);outline-offset:calc(-1 * var(--focus-ring-width))}.featured-app-target:active{transform:translateY(1px)}.featured-app-preference-actions{justify-content:flex-end;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-top:var(--border-width) solid var(--color-neutral-200);background:var(--color-neutral-0);opacity:0;pointer-events:none;transition:opacity var(--motion-fast), transform var(--motion-fast), visibility var(--motion-fast);visibility:hidden;display:flex;position:absolute;bottom:0;left:0;right:0;transform:translateY(100%)}.featured-app-card:hover .featured-app-preference-actions,.featured-app-card:focus-within .featured-app-preference-actions{opacity:1;pointer-events:auto;visibility:visible;transform:translateY(0)}.featured-app-preference-action{min-height:var(--space-8);align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);color:var(--color-neutral-700);font:inherit;font-size:var(--text-xs);cursor:pointer;background:0 0;border:0;display:inline-flex}.featured-app-preference-action:hover:not(:disabled){color:var(--color-primary-hover);background:var(--color-neutral-100)}.featured-app-preference-action:focus-visible{outline:var(--focus-ring-width) solid var(--color-secondary);outline-offset:var(--border-width)}.featured-app-preference-action:disabled{color:var(--color-neutral-400);cursor:wait}.featured-app-icon{width:var(--space-8);height:var(--space-8);border-radius:var(--radius-sm);color:var(--color-primary);background:var(--color-primary-soft);transition:color var(--motion-fast), background-color var(--motion-fast), transform var(--motion-fast);border:0;place-items:center;display:grid;overflow:hidden}.featured-app-icon img{width:var(--space-6);height:var(--space-6);object-fit:contain}.featured-app-icon-reading{color:var(--color-on-primary);background:var(--color-primary);font-size:var(--text-xl);border-color:#0000;font-weight:600}.featured-app-copy,.featured-app-copy strong,.featured-app-copy>span{min-width:0;display:block}.featured-app-copy>.featured-app-heading{justify-content:flex-start;align-items:flex-start;gap:var(--space-2);flex-wrap:wrap;display:flex}.featured-app-copy strong{flex:1 1 calc(var(--space-16) + var(--space-8));font-size:var(--text-base);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.featured-app-heading small{color:var(--color-neutral-500);font-size:var(--text-xs);white-space:nowrap;flex:none;font-weight:400;line-height:1.5}.featured-app-heading .featured-app-heat{justify-content:flex-end;align-items:center;gap:var(--space-1);max-width:100%;color:var(--color-neutral-500);font-variant-numeric:tabular-nums;white-space:normal;flex-wrap:wrap;flex:0 auto;margin-left:auto;font-weight:400;display:inline-flex}.featured-app-heat svg{color:var(--color-secondary);flex:none}.featured-app-heat-value{white-space:nowrap;color:var(--color-secondary);font-weight:600}.featured-app-description{margin-top:var(--space-1);color:var(--color-neutral-500);font-size:var(--text-sm);-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.5;display:-webkit-box;overflow:hidden}.featured-app-ranking-reason{margin-top:var(--space-1);color:var(--color-neutral-700);font-size:var(--text-xs);line-height:1.5;display:block}.featured-app-arrow{color:var(--color-neutral-400);transition:transform .16s}.featured-app-card:hover .featured-app-arrow,.featured-app-target:focus-visible .featured-app-arrow{color:var(--color-primary);transform:translateX(calc(var(--space-1) / 2))}.featured-app-card:hover .featured-app-icon,.featured-app-target:focus-visible .featured-app-icon{transform:translateY(calc(-1 * var(--border-width)))}.page-header{min-height:var(--space-8);justify-content:space-between;align-items:center;gap:var(--space-4);display:flex}.page-header h1{font-size:var(--text-xl)}.page-header time{margin-top:var(--space-1);color:var(--color-neutral-700);font-size:var(--text-xs);display:block}.page-actions{gap:var(--space-2);flex-shrink:0}.analytics-refresh-controls{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.analytics-refresh-controls time{color:var(--color-neutral-600);font-size:var(--text-xs);white-space:nowrap;margin:0}.analytics-refresh-error{grid-template-columns:var(--space-4) minmax(0, 1fr) auto;align-items:center}.analytics-refresh-error .fui-Button{justify-self:end}.application-usage-status{color:var(--color-neutral-500);font-size:var(--text-xs);white-space:nowrap;line-height:1.5}.application-usage-record-error{margin-bottom:var(--space-3);grid-template-columns:minmax(0,1fr) auto;align-items:center}.application-usage-record-actions{align-items:center;gap:var(--space-2);display:flex}.fui-Button{white-space:nowrap}.page-stack,.fui-DialogSurface{--borderRadiusSmall:var(--radius-sm);--borderRadiusMedium:var(--radius-sm);--colorNeutralStroke1:var(--color-neutral-300);--colorNeutralStroke1Hover:var(--color-neutral-400);--colorNeutralStroke1Pressed:var(--color-neutral-400);--colorBrandBackgroundHover:var(--color-primary-hover);--colorBrandBackgroundPressed:var(--color-primary-pressed);--colorStrokeFocus2:var(--color-secondary);--colorCompoundBrandStroke:var(--color-secondary);--colorCompoundBrandStrokeHover:var(--color-secondary-hover);--colorCompoundBrandStrokePressed:var(--color-secondary-hover)}.fui-Field{--colorPaletteRedForeground3:var(--color-secondary)}.fui-DialogContent{align-content:start;gap:var(--space-4);display:grid}.fui-DialogSurface .fui-DialogBody{row-gap:var(--space-4)}.fui-DialogSurface .fui-DialogContent{padding-top:var(--space-4);padding-bottom:var(--space-4);border-top:var(--border-width) solid var(--color-neutral-200);border-bottom:var(--border-width) solid var(--color-neutral-200)}.summary-strip{border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm);background:var(--color-neutral-0);display:flex;overflow:hidden}.summary-strip>div{align-items:baseline;gap:var(--space-3);min-width:var(--summary-item-min-width);padding:var(--space-2) var(--space-3);border-right:var(--border-width) solid var(--color-neutral-200);display:flex}.summary-strip>div:last-child{border-right:0}.summary-strip span{color:var(--color-neutral-500)}.summary-strip strong{font-size:var(--text-lg);font-variant-numeric:tabular-nums;line-height:1.25}.data-panel,.dashboard-panel,.panel{border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-md);background:var(--color-neutral-0);min-width:0;overflow:hidden}.table-toolbar,.filter-bar{min-height:var(--space-12);gap:var(--space-2) var(--space-3);padding:var(--space-2) var(--space-4);border-bottom:var(--border-width) solid var(--color-neutral-200);background:var(--color-neutral-0);flex-wrap:wrap}.filter-bar{border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm)}.table-toolbar .fui-Input,.filter-bar .fui-Dropdown,.release-project-select{width:var(--control-width)}.release-version-id{margin-top:var(--space-1);color:var(--color-neutral-500);font-family:Consolas,Courier New,monospace;font-size:var(--text-xs);display:block}.toolbar-feedback{color:var(--color-neutral-600);font-size:var(--text-sm)}.toolbar-search{display:flex}.toolbar-search .fui-Input{width:var(--control-width)}.result-count{color:var(--color-neutral-500);font-size:var(--text-xs);font-variant-numeric:tabular-nums;white-space:nowrap;margin-left:auto}.table-pagination{justify-content:flex-end;align-items:center;gap:var(--space-2) var(--space-3);padding:var(--space-2) var(--space-4);border-top:var(--border-width) solid var(--color-neutral-200);background:var(--color-neutral-0);flex-wrap:wrap;display:flex}.table-pagination .fui-Dropdown{width:auto;min-width:128px}.table-pagination .page-indicator{color:var(--color-neutral-500);font-size:var(--text-xs);font-variant-numeric:tabular-nums;white-space:nowrap}.feedback-banner{align-items:baseline;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-bottom:var(--border-width) solid var(--color-success-border);color:var(--color-success);background:var(--color-success-soft);display:flex}.feedback-banner-error{border-bottom-color:var(--color-error-border);color:var(--color-error);background:var(--color-error-soft)}.feedback-banner:before{content:"✓";font-weight:600}.feedback-banner-error:before{content:"✕"}.feedback-banner-actions{gap:var(--space-3);flex-wrap:wrap;margin-left:auto;display:inline-flex}.feedback-banner-actions a{color:inherit;white-space:nowrap;font-weight:600}.inline-error,.arrange-notice,.arrange-hint{grid-template-columns:var(--space-4) minmax(0, 1fr);align-items:start;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:var(--border-width) solid;border-radius:var(--radius-sm);font-size:var(--text-sm);border-left-width:3px;line-height:1.6;display:grid}.inline-error:before,.arrange-notice:before,.arrange-hint:before{text-align:center;font-weight:700}.inline-error{border-color:var(--color-error-border);border-left-color:var(--color-error);color:var(--color-error);background:var(--color-error-soft)}.arrange-notice:before{content:"✓"}.inline-error:before{content:"✕"}.arrange-hint:before{content:"!"}.arrange-toolbar{align-items:center;gap:var(--space-3);color:var(--color-neutral-500);font-size:var(--text-xs);flex-wrap:wrap;display:flex}.arrange-notice{border-color:var(--color-success-border);border-left-color:var(--color-success);background:var(--color-success-soft);color:var(--color-success)}.arrange-hint{border-color:var(--color-warning-border);border-left-color:var(--color-warning);background:var(--color-warning-soft);color:var(--color-warning)}.schedule-preview{gap:var(--space-2);display:grid}.schedule-preview-title{color:var(--color-neutral-500);font-size:var(--text-xs);font-weight:600}.schedule-preview-scroll{border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm);max-height:264px;overflow:auto}.schedule-preview-table td{white-space:normal;max-width:none;font-size:var(--text-xs);vertical-align:top;overflow:visible}.schedule-preview-table td:first-child{color:var(--color-neutral-500);white-space:nowrap;font-weight:600}.schedule-preview-table thead th{z-index:1;box-shadow:inset 0 -1px 0 var(--color-neutral-300);position:sticky;top:0}.panel-error{margin:var(--space-4)}.table-scroll{overscroll-behavior-x:contain;width:100%;min-width:0;overflow-x:auto}.data-table,.schedule-table{width:100%;min-width:var(--table-min-width);border-collapse:collapse;table-layout:auto;font-variant-numeric:tabular-nums}.data-table.compact-board-table{min-width:var(--compact-table-min-width)}.data-table th,.data-table td,.schedule-table th,.schedule-table td{padding:var(--space-2) var(--space-3);border-bottom:var(--border-width) solid var(--color-neutral-100);text-align:left;vertical-align:middle}.data-table thead th,.schedule-table thead th{border-bottom-color:var(--color-neutral-300);color:var(--color-neutral-700);background:var(--color-neutral-50);font-size:var(--text-xs);white-space:nowrap;font-weight:600}.data-table tbody tr,.schedule-table tbody tr{transition:background-color .12s}.data-table tbody tr:hover,.schedule-table tbody tr:hover{background:var(--color-neutral-50)}.schedule-table th.is-today{background:var(--color-primary-soft);color:var(--color-primary)}.schedule-table th.is-today em{margin-left:var(--space-1);padding:0 var(--space-1);border-radius:var(--radius-sm);background:var(--color-secondary);color:var(--color-neutral-0);font-size:var(--text-xs);font-style:normal;font-weight:600}.schedule-table td.is-today{background:var(--color-primary-soft)}.data-table tbody tr:last-child td,.schedule-table tbody tr:last-child td,.schedule-table tbody tr:last-child th{border-bottom:0}.data-table td{max-width:var(--table-cell-max);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.data-table td.wrap-cell{overflow-wrap:anywhere;text-overflow:clip;white-space:normal;overflow:visible}.attachment-link{min-width:0;max-width:100%;overflow:hidden}.attachment-link .fui-Button__content{text-overflow:ellipsis;min-width:0;overflow:hidden}.numeric-table th:not(:first-child):not(:nth-child(2)),.numeric-table td:not(:first-child):not(:nth-child(2)){text-align:right;font-variant-numeric:tabular-nums}th.operation-column,td.operation-cell{text-align:right;width:88px}td.operation-cell{white-space:nowrap;overflow:visible}td.operation-cell .fui-Button+.fui-Button{margin-left:var(--space-1)}.data-table tbody tr.risk-row-warning td{background:var(--color-warning-soft)}.data-table tbody tr.risk-row-error td{background:var(--color-error-soft)}.risk-label{padding:var(--space-1) var(--space-2);border:var(--border-width) solid var(--color-neutral-300);border-radius:var(--radius-sm);font-size:var(--text-xs);white-space:nowrap;font-weight:600;line-height:1.25;display:inline-block}.risk-label+.risk-label{margin-left:var(--space-1)}.risk-warning{border-color:var(--color-warning-border);color:var(--color-warning);background:var(--color-warning-soft)}.risk-error{border-color:var(--color-error-border);color:var(--color-error);background:var(--color-error-soft)}.risk-normal{border-color:var(--color-success-border);color:var(--color-success);background:var(--color-success-soft)}th.evaluation-operation-column{min-width:var(--operation-actions-min-width);text-align:right}td.evaluation-operation-cell{text-align:right;white-space:nowrap;max-width:none;overflow:visible}.evaluation-operation-cell>*{vertical-align:middle}.evaluation-operation-cell .fui-Button+.fui-Button{margin-left:var(--space-1)}.evaluation-breakdown{border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm)}.table-state{min-height:var(--space-16);padding:var(--space-4);color:var(--color-neutral-500);text-align:center}.page-loading{min-height:calc(var(--space-16) * 2);padding:var(--space-6);color:var(--color-neutral-500);text-align:center}.not-found-page{min-height:calc(var(--space-16) * 5);padding-top:var(--space-8);align-content:start;justify-items:center;display:grid}.not-found-panel{width:100%;max-width:calc(var(--space-16) * 10);gap:var(--space-4);padding:var(--space-6);border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-md);background:var(--color-neutral-0);display:grid}.not-found-heading,.not-found-actions{align-items:center;gap:var(--space-2);display:flex}.not-found-heading{color:var(--color-error)}.not-found-code{font-size:var(--text-2xl);font-weight:600;line-height:1.25}.not-found-panel h1{font-size:var(--text-xl)}.not-found-panel p{margin:var(--space-1) 0 0;color:var(--color-neutral-600)}.not-found-request{gap:var(--space-1);font-size:var(--text-sm);display:grid}.not-found-request code{overflow-wrap:anywhere;color:var(--color-neutral-900);font-size:var(--text-sm)}.not-found-actions{flex-wrap:wrap}div.table-state{place-items:center;gap:var(--space-2);display:grid}table td.table-state{padding:var(--space-4);font-size:var(--text-sm);text-align:center;line-height:1.6;overflow:visible}.table-state .empty-state{justify-items:center;gap:var(--space-2);display:grid}.table-state .empty-state-hint{font-size:var(--text-sm);color:var(--color-neutral-500);margin:0}@media (width<=768px){table td.table-state{width:100vw;max-width:100vw;padding:var(--space-4);text-align:left;position:sticky;left:0}td.table-state .empty-state{left:var(--space-4);width:fit-content;max-width:calc(100vw - var(--space-8));justify-items:start;position:sticky}}.resource-form,.operation-form-grid,.feedback-form,.notification-form{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}:is(.resource-form .fui-Field:has(textarea),.operation-form-grid .fui-Field:has(textarea),.resource-form .inline-error){grid-column:1/-1}.resource-form .fui-Field:has(.routine-schedule-editor){grid-column:1/-1}.resource-form .fui-Field:has(.duty-batch-rows-editor){grid-column:1/-1}.fui-DialogSurface.duty-batch-dialog{width:min(var(--duty-batch-dialog-width), calc(100vw - var(--space-8)));max-width:var(--duty-batch-dialog-width)}.duty-batch-rows-editor,.duty-batch-rows{gap:var(--space-3);min-width:0;display:grid}.duty-batch-rows-editor>.fui-Button{justify-self:start}.duty-batch-row{grid-template-columns:var(--space-8) repeat(4, minmax(0, 1fr)) minmax(calc(var(--space-16) * 2), 2fr) var(--space-8);align-items:start;gap:var(--space-3);padding:var(--space-3);border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm);background:var(--color-neutral-0);display:grid}.duty-batch-row-order{padding-top:var(--space-6);color:var(--color-neutral-500);font-size:var(--text-sm);text-align:center}.duty-batch-row .fui-Field,.duty-batch-row .fui-Input,.duty-batch-row .fui-Dropdown,.duty-batch-row .fui-Combobox{width:100%;min-width:0}.duty-batch-row-remove{margin-top:var(--space-6);align-self:start}.duty-batch-row-error{grid-column:2/-2}@media (width<=768px){.fui-DialogSurface.duty-batch-dialog{width:calc(100vw - var(--space-4))}.duty-batch-row{grid-template-columns:minmax(0,1fr)}.duty-batch-row-order{text-align:left;padding-top:0}.duty-batch-row-remove{justify-self:end;margin-top:0}.duty-batch-row-error{grid-column:auto}}.routine-schedule-editor,.routine-schedule-rows,.duty-slot-select{gap:var(--space-2);display:grid}.routine-schedule-row{grid-template-columns:var(--space-8) minmax(calc(var(--space-16) * 2), 1fr) repeat(2, minmax(calc(var(--space-16) + var(--space-8)), auto)) minmax(calc(var(--space-16) * 2), 1fr) var(--space-8);align-items:center;gap:var(--space-2);padding:var(--space-2);border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm);background:var(--color-neutral-0);display:grid}.routine-schedule-order{color:var(--color-neutral-500);font-size:var(--text-sm);text-align:center}.duty-slot-select .fui-Dropdown{width:100%}.resource-form-section{gap:var(--space-3);min-width:0;padding-top:var(--space-2);border-top:var(--border-width) solid var(--color-neutral-200);display:grid}.resource-form-section h3{color:var(--color-neutral-900);font-size:var(--text-base);margin:0;font-weight:600;line-height:1.25}.resource-form-section-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));min-width:0;display:grid}.resource-form-section-grid .fui-Field:has(textarea){grid-column:1/-1}.resource-form-presets{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.resource-form-status{padding:var(--space-2) var(--space-3);border:var(--border-width) solid var(--color-success-border);border-radius:var(--radius-sm);color:var(--color-success);background:var(--color-success-soft);font-size:var(--text-sm)}.resource-form-summary{justify-content:space-between;align-items:baseline;gap:var(--space-3);padding-top:var(--space-3);border-top:var(--border-width) solid var(--color-neutral-200);color:var(--color-neutral-900);display:flex}.resource-form-summary span{color:var(--color-neutral-500);font-size:var(--text-sm)}.resource-form-summary strong{font-size:var(--text-lg);font-variant-numeric:tabular-nums;font-weight:600;line-height:1.25}.bulk-form{padding:var(--space-4)}.bulk-form-fields{gap:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.bulk-form-fields .fui-Field:first-child,.bulk-form-fields .fui-Field:last-child{grid-column:span 2}.bulk-form-actions{justify-content:flex-end;align-items:center;gap:var(--space-4);padding-top:var(--space-4);display:flex}.bulk-form-actions span{color:var(--color-neutral-500)}.metric-grid{grid-template-columns:repeat(auto-fit, minmax(var(--metric-item-min-width), 1fr));gap:var(--border-width);border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm);background:var(--color-neutral-200);display:grid;overflow:hidden}.metric-item{grid-template-columns:var(--space-8) minmax(0, 1fr) var(--sparkline-width);align-items:center;column-gap:var(--space-3);row-gap:var(--space-1);min-height:var(--metric-min-height);max-height:calc(var(--space-16) * 2);padding:var(--space-2) var(--space-3);background:var(--color-neutral-0);grid-template-rows:auto auto auto;display:grid;position:relative}button.metric-item.dashboard-object-link,button.schedule-item.dashboard-object-link,button.notice-item.dashboard-object-link{width:100%;color:inherit;background:var(--color-neutral-0);font:inherit;text-align:left;cursor:pointer}.schedule-item.dashboard-object-static{background:var(--color-neutral-0)}button.metric-item.dashboard-object-link{border:0}button.schedule-item.dashboard-object-link,button.notice-item.dashboard-object-link{border-top:0;border-left:0;border-right:0}button.dashboard-object-link:hover{background:var(--color-neutral-50)}button.dashboard-object-link:focus-visible{z-index:1;outline:var(--focus-ring-width) solid var(--color-secondary);outline-offset:calc(-1 * var(--focus-ring-width))}.metric-item:not(:has(.metric-meta,.metric-sparkline,.metric-sparkline-empty)){min-height:var(--metric-compact-min-height);align-items:center;gap:var(--space-3);max-height:none;display:flex}.metric-item:not(:has(.metric-meta,.metric-sparkline,.metric-sparkline-empty))>div{align-items:baseline;gap:var(--space-1) var(--space-2);grid-template-columns:auto auto;min-width:0;display:grid}.metric-item:not(:has(.metric-meta,.metric-sparkline,.metric-sparkline-empty))>.metric-copy{align-items:baseline;gap:var(--space-1) var(--space-2);grid-template-columns:auto auto;min-width:0;display:grid}.metric-item:not(:has(.metric-meta,.metric-sparkline,.metric-sparkline-empty))>div>span{color:var(--color-neutral-500);font-size:var(--text-xs)}.metric-item:not(:has(.metric-meta,.metric-sparkline,.metric-sparkline-empty)) .metric-copy>span{color:var(--color-neutral-500);font-size:var(--text-xs)}.metric-item:not(:has(.metric-meta,.metric-sparkline,.metric-sparkline-empty))>div>small{color:var(--color-neutral-500);font-size:var(--text-xs)}.metric-item:not(:has(.metric-meta,.metric-sparkline,.metric-sparkline-empty))>div>strong{color:var(--color-neutral-900);font-size:var(--text-lg);font-variant-numeric:tabular-nums;white-space:nowrap;margin:0;line-height:1.25}.metric-item:not(:has(.metric-meta,.metric-sparkline,.metric-sparkline-empty)) .metric-copy>strong{color:var(--color-neutral-900);font-size:var(--text-lg);font-variant-numeric:tabular-nums;white-space:nowrap;margin:0;line-height:1.25}.metric-item:not(:has(.metric-meta,.metric-sparkline,.metric-sparkline-empty))>div>small{grid-column:1/-1}.metric-item:not(:has(.metric-meta,.metric-sparkline,.metric-sparkline-empty))>.metric-icon{width:var(--space-6);height:var(--space-6);grid-area:auto;position:static}.metric-copy{grid-area:1/2;display:grid}.metric-copy>span,.metric-detail,.metric-meta small{color:var(--color-neutral-500)}.metric-copy strong{margin-top:var(--space-1);font-size:var(--text-xl);font-variant-numeric:tabular-nums;line-height:1.25}.metric-detail{font-size:var(--text-xs);grid-area:2/2;line-height:1.5}.metric-item .metric-icon{width:var(--space-8);height:var(--space-8);border-radius:var(--radius-sm);color:var(--color-primary);background:var(--color-primary-soft);flex:none;grid-area:1/1/span 2;place-items:center;display:grid}.dashboard-page .metric-item,.dashboard-page .dashboard-panel,.command-center-summary>*,.command-center-panel{animation:content-settle var(--motion-standard) both}.dashboard-page .metric-item:nth-child(2),.dashboard-page .dashboard-panel:nth-child(2),.command-center-summary>:nth-child(2),.command-center-panel:nth-child(2){animation-delay:var(--motion-step)}.dashboard-page .metric-item:nth-child(3),.dashboard-page .dashboard-panel:nth-child(3),.command-center-summary>:nth-child(3),.command-center-panel:nth-child(3){animation-delay:calc(var(--motion-step) * 2)}.dashboard-page .metric-item:nth-child(4),.dashboard-page .dashboard-panel:nth-child(4),.command-center-summary>:nth-child(4),.command-center-panel:nth-child(4){animation-delay:calc(var(--motion-step) * 3)}.command-center-panel:nth-child(5){animation-delay:calc(var(--motion-step) * 4)}.metric-sparkline{width:100%;height:var(--space-8);transform-origin:0;animation:sparkline-reveal var(--motion-standard) both;grid-area:1/3/span 2}.metric-sparkline line{stroke:var(--color-neutral-200);stroke-width:var(--border-width)}.metric-sparkline polyline{fill:none;stroke:var(--color-primary);stroke-width:calc(var(--border-width) * 2);vector-effect:non-scaling-stroke}.metric-sparkline-empty{color:var(--color-neutral-400);text-align:center;grid-area:1/3/span 2}.metric-meta{justify-content:space-between;align-items:center;gap:var(--space-2);min-width:0;padding-top:var(--space-1);border-top:var(--border-width) solid var(--color-neutral-100);grid-area:3/1/auto/-1;display:flex}.metric-meta small,.metric-comparison{font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.metric-comparison{align-items:center;gap:var(--space-1);min-width:0;color:var(--color-neutral-500);display:inline-flex}.metric-comparison-positive{color:var(--color-success)}.metric-comparison-negative{color:var(--color-error)}.dashboard-data-skeleton{gap:var(--space-4);display:grid}.dashboard-skeleton-panels{gap:var(--space-4);grid-template-columns:minmax(0,2fr) minmax(320px,1fr);display:grid}.dashboard-skeleton-panels .loading-block{height:calc(var(--space-16) * 2)}.dashboard-data-error{justify-content:space-between;align-items:center;gap:var(--space-4);display:flex}.dashboard-empty-state{min-height:calc(var(--space-16) + var(--space-4));justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-4);color:var(--color-neutral-500);display:flex}.dashboard-empty-state svg{color:var(--color-neutral-400)}.dashboard-grid,.analytics-grid{align-items:start;gap:var(--space-4);grid-template-columns:minmax(0,2fr) minmax(320px,1fr);display:grid}.dashboard-grid>.dashboard-panel{max-height:calc(var(--space-16) * 5)}.dashboard-grid>.dashboard-panel .compact-list,.dashboard-grid>.dashboard-panel .table-scroll{max-height:calc(var(--space-16) * 4);overflow:auto}.dashboard-panel-wide{min-width:0}.dashboard-panel-span{grid-column:1/-1}.dashboard-insight-grid{align-items:start;gap:var(--space-4);grid-template-columns:minmax(0,5fr) minmax(0,7fr);display:grid}.dashboard-insight-grid .dashboard-panel{max-height:var(--command-panel-height)}.panel-header>div{min-width:0}.panel-inline-metric{margin-top:var(--space-1);color:var(--color-neutral-500);font-size:var(--text-xs);font-variant-numeric:tabular-nums;display:block}.dashboard-radar-layout{grid-template-columns:calc(var(--space-16) * 2) minmax(0, 1fr);align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);display:grid}button.dashboard-radar-layout{width:100%;color:inherit;font:inherit;text-align:left;background:0 0;border:0}.dashboard-insight-link{cursor:pointer}.dashboard-insight-link:hover{background:var(--color-neutral-50)}.dashboard-insight-link:focus-visible{outline:calc(var(--border-width) * 2) solid var(--color-primary);outline-offset:calc(var(--border-width) * -2)}.dashboard-radar-layout>svg{width:calc(var(--space-16) * 2);height:calc(var(--space-16) * 2)}.dashboard-radar-layout.is-list-only>.chart-state{min-height:calc(var(--space-16) * 2);padding:var(--space-3);text-align:center}.dashboard-radar-grid,.dashboard-radar-axis{fill:none;stroke:var(--color-neutral-200);stroke-width:var(--border-width);vector-effect:non-scaling-stroke}.dashboard-radar-value{fill:var(--color-primary-soft);fill-opacity:.8;stroke:var(--color-primary);stroke-width:calc(var(--border-width) * 2);vector-effect:non-scaling-stroke}.dashboard-radar-values{gap:var(--space-2) var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.dashboard-radar-values span{justify-content:space-between;align-items:baseline;gap:var(--space-2);min-width:0;padding-bottom:var(--space-1);border-bottom:var(--border-width) solid var(--color-neutral-100);display:flex}.dashboard-radar-values small{color:var(--color-neutral-500);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dashboard-radar-values strong{font-size:var(--text-sm);font-variant-numeric:tabular-nums;flex:none}.dashboard-insight-heatmap .panel-header .metric-sparkline{width:var(--sparkline-width);height:var(--space-6)}.dashboard-heatmap{gap:var(--space-2);padding:var(--space-3) var(--space-4);display:grid}.dashboard-heatmap-head,.dashboard-heatmap-row{grid-template-columns:calc(var(--space-16) + var(--space-4)) repeat(7, minmax(0, 1fr));align-items:center;gap:var(--space-1);display:grid}.dashboard-heatmap-head small{color:var(--color-neutral-500);font-size:var(--text-xs);text-align:center}.dashboard-heatmap-row strong{font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.heat-cell{min-width:0;height:var(--space-6);border-radius:var(--radius-sm);background:var(--color-neutral-100)}button.heat-cell{cursor:pointer;border:0;width:100%;padding:0}button.heat-cell:hover{outline:var(--border-width) solid var(--color-secondary)}button.heat-cell:focus-visible{outline:calc(var(--border-width) * 2) solid var(--color-secondary);outline-offset:var(--border-width)}.heat-level-1{background:var(--color-primary-soft)}.heat-level-2{background:#08304959}.heat-level-3{background:#083049a6}.heat-level-4{background:var(--color-primary)}.heatmap-legend{justify-content:flex-end;align-items:center;gap:var(--space-1);display:flex}.heatmap-legend .heat-cell{width:var(--space-4);height:var(--space-4)}.heatmap-legend small{color:var(--color-neutral-500);font-size:var(--text-xs)}.chart-state,.command-center-chart-state{min-height:var(--space-16);color:var(--color-neutral-500);place-items:center;display:grid}.compact-chart{width:100%;height:var(--compact-chart-height);min-width:0}.compact-chart-state{min-height:calc(var(--space-16) * 2);color:var(--color-neutral-500);font-size:var(--text-sm);place-items:center;display:grid}.analytics-overview-grid{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.analytics-chart-panel{min-width:0}.quality-overview-grid{gap:var(--space-2);grid-template-columns:minmax(0,3fr) minmax(0,2fr);display:grid}.quality-overview-grid>.dashboard-panel,.student-focus-panel{min-width:0}.student-focus-panel{grid-column:1/-1}.subject-quality-bars{gap:var(--space-1);padding:var(--space-2) var(--space-3) var(--space-3);display:grid}.subject-quality-row{grid-template-columns:calc(var(--space-16) + var(--space-2)) minmax(var(--space-16), 1fr) var(--space-12) calc(var(--space-16) + var(--space-8)) calc(var(--space-16) + var(--space-8));min-height:var(--space-8);align-items:center;gap:var(--space-2);border-bottom:var(--border-width) solid var(--color-neutral-100);font-size:var(--text-xs);display:grid}.subject-quality-row:last-child{border-bottom:0}.subject-quality-subject,.subject-quality-rate,.subject-quality-delta{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.subject-quality-subject,.subject-quality-rate{color:var(--color-neutral-900);font-size:var(--text-xs);font-weight:600}.subject-quality-rate,.subject-quality-delta{font-variant-numeric:tabular-nums;text-align:right}.subject-quality-counts{justify-content:flex-end;gap:var(--space-2);color:var(--color-neutral-500);white-space:nowrap;display:flex}.subject-quality-counts b{color:var(--color-neutral-900);font-variant-numeric:tabular-nums;font-weight:600}.subject-quality-row.is-success .subject-quality-delta{color:var(--color-success)}.subject-quality-row.is-danger .subject-quality-delta{color:var(--color-error)}.quality-meter{width:100%;height:var(--space-2);border-radius:var(--radius-sm);background:var(--color-neutral-100);appearance:none;border:0}.quality-meter::-webkit-meter-bar{border-radius:var(--radius-sm);background:var(--color-neutral-100);box-shadow:none;border:0}.quality-meter::-webkit-meter-optimum-value{border-radius:var(--radius-sm);background:var(--color-primary)}.quality-meter::-moz-meter-bar{border-radius:var(--radius-sm);background:var(--color-primary)}.quality-meter.is-success::-webkit-meter-optimum-value{background:var(--color-success)}.quality-meter.is-success::-moz-meter-bar{background:var(--color-success)}.quality-meter.is-warning::-webkit-meter-optimum-value{background:var(--color-warning)}.quality-meter.is-warning::-moz-meter-bar{background:var(--color-warning)}.quality-meter.is-danger::-webkit-meter-optimum-value{background:var(--color-error)}.quality-meter.is-danger::-moz-meter-bar{background:var(--color-error)}.student-focus-overview{gap:var(--space-4);padding:var(--space-2) var(--space-3) var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.student-focus-layers,.top-weak-subjects{align-content:start;gap:var(--space-2);min-width:0;display:grid}.top-weak-subjects{padding-left:var(--space-4);border-left:var(--border-width) solid var(--color-neutral-200)}.quality-overview-label{color:var(--color-neutral-700);font-size:var(--text-xs);font-weight:600}.student-focus-row{grid-template-columns:var(--space-16) minmax(var(--space-16), 1fr) var(--space-8);min-height:var(--space-6);align-items:center;gap:var(--space-2);color:var(--color-neutral-500);font-size:var(--text-xs);display:grid}.student-focus-row strong{color:var(--color-neutral-900);font-variant-numeric:tabular-nums;text-align:right}.student-focus-row.is-success>strong{color:var(--color-success)}.student-focus-row.is-warning>strong{color:var(--color-warning)}.student-focus-row.is-danger>strong{color:var(--color-error)}.top-weak-subjects .compact-chart-state{min-height:var(--space-12);justify-items:start}.table-class-actions{justify-content:flex-end;gap:var(--space-1) var(--space-2);flex-wrap:wrap;display:flex}.performance-summary-strip{grid-template-columns:repeat(7, minmax(var(--summary-item-min-width), 1fr));scrollbar-width:thin;display:grid;overflow-x:auto}.performance-summary-strip>div{align-content:center;align-items:baseline;gap:var(--space-1) var(--space-2);min-width:0;padding:var(--space-2) var(--space-3);grid-template-columns:minmax(0,1fr) auto;display:grid}.performance-summary-strip span,.performance-summary-strip small{color:var(--color-neutral-500);font-size:var(--text-xs);white-space:nowrap}.performance-summary-strip span b{margin-left:var(--space-1);color:var(--color-primary);font-size:var(--text-xs);font-weight:600}.performance-summary-strip strong{color:var(--color-neutral-900);font-size:var(--text-lg);font-variant-numeric:tabular-nums;white-space:nowrap;line-height:1.25}.performance-summary-strip strong small{margin-left:var(--space-1);color:var(--color-neutral-500);font-weight:400}.performance-summary-strip>div>small{grid-column:1/-1}.performance-review-summary strong{color:var(--color-primary)}.performance-score-cell>strong{color:var(--color-neutral-900);font-size:var(--text-base);font-variant-numeric:tabular-nums;font-weight:600}.performance-score-cell .table-subline{gap:var(--space-1) var(--space-2);flex-wrap:wrap;display:flex}.performance-score-cell .score-positive{color:var(--color-success)}.performance-score-cell .score-negative{color:var(--color-error)}.performance-grade-assessment-cell{min-width:calc(var(--space-16) * 2);font-variant-numeric:tabular-nums;white-space:nowrap}.performance-grade-assessment-cell>strong{color:var(--color-neutral-900);font-size:var(--text-sm);font-weight:600}.performance-grade-assessment-cell>strong+strong{margin-left:var(--space-2)}.performance-lock-state{min-height:var(--space-6);padding:0 var(--space-2);border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm);color:var(--color-neutral-500);background:var(--color-neutral-50);font-size:var(--text-xs);align-items:center;line-height:1.25;display:inline-flex}.performance-score-form{gap:var(--space-3);display:grid}:is(.performance-score-form>.fui-Field:has(textarea),.performance-score-form>.inline-error){grid-column:1/-1}.performance-score-metrics,.performance-score-compare{grid-template-columns:repeat(auto-fit, minmax(calc(var(--space-16) * 2), 1fr));border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm);background:var(--color-neutral-25);display:grid;overflow:hidden}.performance-score-metrics>span,.performance-score-compare>span{align-items:baseline;gap:var(--space-1) var(--space-2);min-width:0;padding:var(--space-2) var(--space-3);box-shadow:var(--border-width) 0 0 var(--color-neutral-200);color:var(--color-neutral-500);font-size:var(--text-xs);grid-template-columns:minmax(0,1fr) auto;display:grid}.performance-score-metrics strong,.performance-score-compare strong{color:var(--color-neutral-900);font-size:var(--text-base);font-variant-numeric:tabular-nums;font-weight:600}.performance-score-metrics small,.performance-score-compare small{color:var(--color-neutral-500);font-size:var(--text-xs);white-space:nowrap;grid-column:1/-1}.performance-score-compare>span.is-adjusted strong{color:var(--color-warning)}.performance-score-section{gap:var(--space-2);padding-top:var(--space-2);border-top:var(--border-width) solid var(--color-neutral-200);display:grid}.performance-score-section>header{justify-content:space-between;align-items:baseline;gap:var(--space-3);display:flex}.performance-score-section>header strong{color:var(--color-neutral-900);font-size:var(--text-sm);font-weight:600}.performance-score-section>header span{color:var(--color-primary);font-size:var(--text-sm);font-variant-numeric:tabular-nums;font-weight:600}.performance-dimension-grid{grid-template-columns:repeat(5, minmax(calc(var(--space-16) + var(--space-8)), 1fr));gap:var(--space-2);padding-bottom:var(--space-1);display:grid;overflow-x:auto}.performance-ratio-total{justify-content:space-between;align-items:baseline;gap:var(--space-3);padding:var(--space-2) var(--space-3);border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm);color:var(--color-neutral-700);background:var(--color-neutral-50);grid-column:1/-1;display:flex}.performance-ratio-total strong{font-size:var(--text-base);font-variant-numeric:tabular-nums}.performance-ratio-total.is-valid strong{color:var(--color-success)}.performance-ratio-total.is-invalid{border-color:var(--color-error-border);color:var(--color-error);background:var(--color-error-soft)}.analysis-source-panel>.panel-header{background:var(--color-neutral-25)}.panel-inline-metrics{align-items:center;gap:var(--space-3);color:var(--color-neutral-500);font-size:var(--text-xs);flex-wrap:wrap;display:flex}.panel-inline-metrics strong{color:var(--color-neutral-900);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.data-table tbody tr.data-row-danger>td{background:var(--color-error-soft)}.data-table tbody tr.data-row-danger>td:first-child{box-shadow:inset var(--space-1) 0 0 var(--color-error)}.resource-analysis-filter .fui-Dropdown,.performance-analysis-filter .fui-Dropdown,.evaluation-analysis-filter .fui-Dropdown,.moral-evaluation-filter .fui-Dropdown,.workload-filter-bar .fui-Dropdown,.resource-analysis-filter .fui-Input,.performance-analysis-filter .fui-Input,.evaluation-analysis-filter .fui-Input,.moral-evaluation-filter .fui-Input,.workload-filter-bar .fui-Input{width:var(--control-width)}.workload-summary-strip{margin:0;overflow-x:auto}.workload-summary-strip dt{color:var(--color-neutral-500);font-size:var(--text-xs)}.workload-summary-strip dd{color:var(--color-neutral-900);font-size:var(--text-sm);font-variant-numeric:tabular-nums;margin:0;font-weight:600}th.sortable-header-cell{color:var(--color-neutral-700)}th.sortable-header-cell[aria-sort=ascending],th.sortable-header-cell[aria-sort=descending]{color:var(--color-primary);background:var(--color-primary-soft)}.sortable-header-button.fui-Button{width:100%;min-width:0;min-height:var(--space-6);color:inherit;font-size:inherit;justify-content:flex-start;padding:0;font-weight:600}.sortable-header-cell.is-numeric .sortable-header-button.fui-Button{justify-content:flex-end}.command-center-page{gap:var(--space-4);background:var(--color-neutral-50);min-width:0;display:grid}.command-center-page:fullscreen{width:100%;min-height:100dvh;padding:var(--space-6);overflow:auto}.command-center-filters{gap:var(--space-3);padding:var(--space-3);border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-md);background:var(--color-neutral-0);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.command-center-filters .fui-Field,.command-center-filters .fui-Dropdown{width:100%;min-width:0}.command-center-summary{border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-md);background:var(--color-neutral-200);gap:var(--border-width);grid-template-columns:repeat(4,minmax(0,1fr));display:grid;overflow:hidden}.command-center-summary>*{grid-template-columns:var(--space-6) minmax(0, 1fr) auto;align-items:center;gap:var(--space-2);min-width:0;min-height:var(--space-16);padding:var(--space-2) var(--space-3);background:var(--color-neutral-0);display:grid}.command-center-summary button{width:100%;color:inherit;font:inherit;text-align:left;border:0}.command-center-summary-link{cursor:pointer}.command-center-summary-link:hover{background:var(--color-neutral-50)}.command-center-summary-link:focus-visible{outline:calc(var(--border-width) * 2) solid var(--color-primary);outline-offset:calc(var(--border-width) * -2)}.command-center-summary>*>svg{color:var(--color-primary);grid-row:1/span 2}.command-center-summary>*>span,.command-center-summary>*>small{color:var(--color-neutral-500);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.command-center-summary>*>strong{color:var(--color-primary);font-size:var(--text-lg);font-variant-numeric:tabular-nums;grid-area:1/3/span 2}.command-center-summary>*>small{grid-column:2}.command-center-operational-grid{gap:var(--space-3);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.command-center-operational-panel{border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-md);background:var(--color-neutral-0);min-width:0;overflow:hidden}.command-center-operational-panel>header{min-height:var(--space-8);padding:var(--space-1) var(--space-3);border-bottom:var(--border-width) solid var(--color-neutral-200);justify-content:space-between;align-items:center;display:flex}.command-center-operational-panel>header span{align-items:center;gap:var(--space-2);color:var(--color-neutral-700);font-size:var(--text-sm);font-weight:600;display:inline-flex}.command-center-operational-panel>header svg,.command-center-operational-panel>header strong{color:var(--color-primary)}.command-center-operational-panel>div{display:grid}.command-center-operational-panel button{align-items:center;gap:var(--space-2);min-width:0;min-height:var(--space-8);padding:var(--space-1) var(--space-3);border:0;border-top:var(--border-width) solid var(--color-neutral-100);color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;grid-template-columns:auto minmax(0,1fr) auto;display:grid}.command-center-operational-panel button:first-child{border-top:0}.command-center-operational-panel button:hover{background:var(--color-neutral-50)}.command-center-operational-panel button:disabled{cursor:default}.command-center-operational-panel button>span{min-width:0;display:grid}.command-center-operational-panel button strong,.command-center-operational-panel button small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.command-center-operational-panel button strong{font-size:var(--text-xs)}.command-center-operational-panel button small,.command-center-operational-panel button time{color:var(--color-neutral-500);font-size:var(--text-xs)}.command-center-object-action{color:var(--color-primary);font-size:var(--text-xs);font-weight:600}.command-center-operational-empty,.command-center-visual-empty{min-height:var(--space-16);color:var(--color-neutral-500);font-size:var(--text-xs);place-items:center;display:grid}.command-center-visual-empty{border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-md);background:var(--color-neutral-0)}.fullscreen-control{justify-items:end;gap:var(--space-1);display:grid}.fullscreen-error{align-items:center;gap:var(--space-2);color:var(--color-error);font-size:var(--text-xs);display:flex}.command-center-mobile-pager{display:none}.command-center-grid{grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:repeat(2, minmax(var(--command-chart-height), 1fr));gap:var(--space-3);height:calc(100dvh - var(--header-height) - var(--context-height) - (var(--space-16) * 3));min-height:calc(var(--space-16) * 7);max-height:calc(var(--space-16) * 10);display:grid}.command-center-panel{border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-md);background:var(--color-neutral-0);grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:0;display:grid;overflow:hidden}.command-center-header .fui-Button:disabled svg{animation:refresh-once var(--motion-standard) both}.command-center-panel-radar{grid-column:1/span 4}.command-center-panel-activity{grid-column:5/span 4}.command-center-panel-heatmap{grid-column:9/span 4}.command-center-panel-gantt{grid-column:1/span 7}.command-center-panel-relations{grid-column:8/span 5}.command-center-chart{width:100%;min-width:0;height:100%;min-height:0}.command-center-loading{min-height:calc(var(--space-16) * 7);place-items:center;gap:var(--space-4);display:grid}.command-center-loading-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.command-center-loading-grid span{height:var(--command-chart-height);border-radius:var(--radius-md);background:var(--color-neutral-100);animation:1.2s ease-in-out infinite alternate loading-pulse}.command-center-empty{min-height:calc(var(--space-16) * 2);border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-md);background:var(--color-neutral-0)}.student-overview-page{max-width:var(--content-max);margin-inline:auto}.student-overview-search{grid-template-columns:minmax(var(--control-width), calc(var(--control-width) * 2)) auto auto;align-items:center;gap:var(--space-2);display:grid}.student-overview-search .fui-Combobox{width:100%}.student-overview-unselected,.student-overview-loading{min-height:calc(var(--space-16) * 5);place-content:center;justify-items:center;gap:var(--space-3);border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-md);color:var(--color-neutral-500);background:var(--color-neutral-0);display:grid}.student-overview-unselected strong{color:var(--color-neutral-700);font-size:var(--text-base)}.student-overview-identity{grid-template-columns:var(--space-16) minmax(calc(var(--space-16) * 2), auto) minmax(0, 1fr);align-items:center;gap:var(--space-4);padding:var(--space-4);border:var(--border-width) solid var(--color-primary-border);border-radius:var(--radius-md);background:var(--color-primary-soft);display:grid}.student-overview-avatar{width:var(--space-16);height:var(--space-16);border-radius:var(--radius-md);color:var(--color-on-primary);background:var(--color-primary);font-size:var(--text-xl);place-items:center;font-weight:600;display:grid}.student-overview-name{min-width:0}.student-overview-name h2{margin:0 0 var(--space-1);font-size:var(--text-xl)}.student-overview-name span{color:var(--color-neutral-500);font-size:var(--text-sm)}.student-overview-identity dl{gap:var(--space-3);grid-template-columns:repeat(4,minmax(0,1fr));margin:0;display:grid}.student-overview-identity dl>div,.student-overview-facts>div{min-width:0}.student-overview-identity dt,.student-overview-facts dt{margin-bottom:var(--space-1);color:var(--color-neutral-500);font-size:var(--text-xs)}.student-overview-identity dd,.student-overview-facts dd{color:var(--color-neutral-900);font-size:var(--text-sm);margin:0;font-weight:600}.student-overview-metrics{border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-md);background:var(--color-neutral-0);grid-template-columns:repeat(6,minmax(0,1fr));display:grid;overflow:hidden}.student-overview-metrics article{grid-template-columns:var(--space-6) minmax(0, 1fr) auto;align-items:center;gap:var(--space-1) var(--space-2);min-width:0;min-height:var(--space-16);padding:var(--space-2) var(--space-3);border-inline-end:var(--border-width) solid var(--color-neutral-200);display:grid}.student-overview-metrics article:last-child{border-inline-end:0}.student-overview-metrics svg{color:var(--color-primary);grid-row:1/span 2}.student-overview-metrics span,.student-overview-metrics small{color:var(--color-neutral-500);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.student-overview-metrics strong{color:var(--color-primary);font-size:var(--text-lg);font-variant-numeric:tabular-nums;grid-area:1/3/span 2}.student-overview-grid{gap:var(--space-3);grid-template-columns:repeat(12,minmax(0,1fr));display:grid}.student-overview-panel{border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-md);background:var(--color-neutral-0);min-width:0;overflow:hidden}.student-overview-panel-score,.student-overview-panel-timeline{grid-column:span 8}.student-overview-panel-focus,.student-overview-panel-alerts{grid-column:span 4}.student-overview-panel-moral,.student-overview-panel-dorm{grid-column:span 6}.student-overview-facts{gap:var(--space-4);padding:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.student-overview-subjects{max-width:calc(var(--space-16) * 5);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.student-overview-record-list{display:grid}.student-overview-record-list>article{grid-template-columns:calc(var(--space-16) + var(--space-3)) minmax(0, 1fr) auto;align-items:center;gap:var(--space-3);min-height:var(--space-12);padding:var(--space-2) var(--space-3);border-top:var(--border-width) solid var(--color-neutral-100);display:grid}.student-overview-record-list>article:first-child{border-top:0}.student-overview-record-list time,.student-overview-record-list span,.student-overview-dual-list time{color:var(--color-neutral-500);font-size:var(--text-xs)}.student-overview-record-list article>div{min-width:0;display:grid}.student-overview-record-list article>div>strong,.student-overview-record-list article>div>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.student-overview-record-list article>b{color:var(--color-secondary);font-size:var(--text-sm)}.student-overview-dual-list{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.student-overview-dual-list>section{min-width:0;padding:var(--space-3)}.student-overview-dual-list>section+section{border-inline-start:var(--border-width) solid var(--color-neutral-200)}.student-overview-dual-list h3{align-items:center;gap:var(--space-2);margin:0 0 var(--space-2);font-size:var(--text-sm);display:flex}.student-overview-dual-list article{grid-template-columns:calc(var(--space-16) + var(--space-3)) minmax(0, 1fr) auto;align-items:center;gap:var(--space-2);min-height:var(--space-8);border-top:var(--border-width) solid var(--color-neutral-100);font-size:var(--text-xs);display:grid}.student-overview-timeline{max-height:calc(var(--space-16) * 5);padding:var(--space-3) var(--space-4);gap:0;margin:0;list-style:none;display:grid;overflow-y:auto}.student-overview-timeline li{grid-template-columns:calc(var(--space-16) + var(--space-3)) var(--space-3) minmax(0, 1fr);gap:var(--space-2);min-height:var(--space-12);display:grid}.student-overview-timeline time{color:var(--color-neutral-500);font-size:var(--text-xs)}.student-overview-timeline li>span{width:var(--space-2);height:var(--space-2);margin-top:var(--space-1);border-radius:var(--radius-sm);background:var(--color-primary);position:relative}.student-overview-timeline li>span:after{top:var(--space-2);bottom:calc(var(--space-2) * -5);left:calc(var(--space-1) - var(--border-width));width:var(--border-width);content:"";background:var(--color-neutral-200);position:absolute}.student-overview-timeline li:last-child>span:after{display:none}.student-overview-timeline strong,.student-overview-timeline p{font-size:var(--text-sm);margin:0;display:block}.student-overview-timeline p{margin-top:var(--space-1);color:var(--color-neutral-500);font-size:var(--text-xs)}.student-overview-timeline .student-overview-timeline-empty{justify-content:center;align-items:center;gap:var(--space-2);color:var(--color-neutral-500);display:flex}@media (width<=1100px){.command-center-operational-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.student-overview-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.student-overview-metrics article:nth-child(3){border-inline-end:0}.student-overview-metrics article:nth-child(-n+3){border-bottom:var(--border-width) solid var(--color-neutral-200)}.student-overview-panel-score,.student-overview-panel-focus,.student-overview-panel-moral,.student-overview-panel-dorm,.student-overview-panel-alerts,.student-overview-panel-timeline{grid-column:span 12}}@media (width<=768px){.command-center-operational-grid,.student-overview-search,.student-overview-identity,.student-overview-identity dl,.student-overview-metrics,.student-overview-dual-list{grid-template-columns:minmax(0,1fr)}.student-overview-search{width:100%}.student-overview-identity{justify-items:start}.student-overview-identity dl{width:100%}.student-overview-metrics article,.student-overview-metrics article:nth-child(3),.student-overview-metrics article:nth-child(-n+3){border-inline-end:0;border-bottom:var(--border-width) solid var(--color-neutral-200)}.student-overview-metrics article:last-child{border-bottom:0}.student-overview-dual-list>section+section{border-block-start:var(--border-width) solid var(--color-neutral-200);border-inline-start:0}}.return-filter-bar{grid-template-columns:repeat(auto-fit, minmax(min(100%, var(--control-width)), var(--control-width)));justify-content:start;align-items:end;gap:var(--space-4);display:grid}.return-count-input{width:calc(var(--space-16) + var(--space-4))}.return-entry-table th,.return-entry-table td{padding-block:var(--space-1)}.return-entry-table td:first-child>strong{line-height:1.25;display:block}.return-entry-table th.operation-column,.return-entry-table td.operation-cell{width:auto;min-width:var(--return-actions-width)}.return-row-actions{justify-content:flex-end;align-items:center;gap:var(--space-1);display:inline-flex}.return-detail-preview{color:var(--color-neutral-500);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.return-entry-table td.return-detail-cell{white-space:normal;overflow:visible}.return-draft-rate{gap:var(--space-1);color:var(--color-warning);white-space:nowrap;display:grid}.return-draft-rate>small{font-size:var(--text-xs)}.return-draft-rate.is-balanced>small{color:var(--color-success)}.return-rate-meter{width:var(--return-rate-width);align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);border:var(--border-width) solid var(--color-success-border);border-radius:var(--radius-sm);color:var(--color-success);background:var(--color-success-soft);white-space:nowrap;display:inline-flex}.return-rate-meter progress{width:var(--return-rate-track-width);height:var(--space-1);border-radius:var(--radius-sm);appearance:none;accent-color:var(--color-success);background:var(--color-neutral-200);border:0;overflow:hidden}.return-rate-meter progress::-webkit-progress-bar{border-radius:var(--radius-sm);background:var(--color-neutral-200)}.return-rate-meter progress::-webkit-progress-value{border-radius:var(--radius-sm);background:var(--color-success)}.return-rate-meter progress::-moz-progress-bar{border-radius:var(--radius-sm);background:var(--color-success)}.return-rate-meter strong{color:var(--color-success);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.return-rate-meter.is-neutral{border-color:var(--color-neutral-300);color:var(--color-neutral-500);background:var(--color-neutral-100)}.return-rate-meter.is-neutral progress{accent-color:var(--color-neutral-400)}.return-rate-meter.is-neutral progress::-webkit-progress-value{background:var(--color-neutral-400)}.return-rate-meter.is-neutral progress::-moz-progress-bar{background:var(--color-neutral-400)}.return-rate-meter.is-neutral strong{color:var(--color-neutral-500)}.return-report-detail-content,.return-change-content{gap:var(--space-4);display:grid}.return-change-count-grid{gap:var(--space-3);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.return-change-balance{justify-content:space-between;align-items:center;gap:var(--space-4);color:var(--color-warning);font-size:var(--text-sm);display:flex}.return-change-balance.is-balanced{color:var(--color-success)}.return-report-detail-content .return-report-summary-grid>div{min-height:var(--space-12)}.return-report-detail-form{grid-template-columns:minmax(0,1fr)}.return-detail-loading{min-height:calc(var(--space-16) * 2);place-items:center;display:grid}.table-secondary{margin-top:var(--space-1);color:var(--color-neutral-500);font-size:var(--text-xs);font-weight:400;display:block}.field-error{margin-top:var(--space-2);color:var(--color-error);font-size:var(--text-xs);display:block}.warning-row>td{background:var(--color-warning-soft)}.return-dashboard-results,.return-analytics-results{gap:var(--space-4);display:grid}.return-reason-cloud{min-height:calc(var(--space-16) * 2);place-content:center;align-items:baseline;gap:var(--space-3) var(--space-4);padding:var(--space-6);flex-wrap:wrap;display:flex}.return-reason-legend{justify-content:flex-end;gap:var(--space-4);padding:var(--space-2) var(--space-4) 0;color:var(--color-neutral-500);font-size:var(--text-xs);display:flex}.return-reason-legend>span{align-items:center;gap:var(--space-1);display:inline-flex}.return-reason-legend>span:before{width:var(--space-2);height:var(--space-2);border-radius:var(--radius-sm);content:"";background:currentColor}.return-reason-legend .is-sick{color:var(--color-success)}.return-reason-legend .is-personal{color:var(--color-primary)}.return-reason-legend .is-mixed{color:var(--color-secondary)}.return-reason-keyword{align-items:baseline;gap:var(--space-1);font-weight:600;line-height:1.25;display:inline-flex}.return-reason-keyword small{color:inherit;font-size:var(--text-xs);font-weight:400}.return-reason-keyword.level-1{font-size:var(--text-xs)}.return-reason-keyword.level-2{font-size:var(--text-sm)}.return-reason-keyword.level-3{font-size:var(--text-base)}.return-reason-keyword.level-4{font-size:var(--text-lg)}.return-reason-keyword.level-5{font-size:var(--text-xl)}.return-reason-keyword.is-sick{color:var(--color-success)}.return-reason-keyword.is-personal{color:var(--color-primary)}.return-reason-keyword.is-mixed{color:var(--color-secondary)}.return-dashboard-page .metric-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.return-dashboard-page .metric-item{grid-template-columns:var(--space-8) minmax(0, 1fr)}.return-data-loading{min-height:calc(var(--space-16) * 3);place-items:center;display:grid}.return-trend-chart{padding:var(--space-4);overflow-x:auto}.return-trend-track{width:max-content;min-width:max(100%, calc(var(--space-16) * 6))}.return-trend-chart svg{width:100%;min-width:0;height:calc(var(--space-16) * 4);display:block}.return-chart-grid{stroke:var(--color-neutral-200);stroke-width:var(--border-width);vector-effect:non-scaling-stroke}.return-chart-line{stroke:var(--color-primary);stroke-width:calc(var(--border-width) * 2);stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.return-chart-point{fill:var(--color-neutral-0);stroke:var(--color-secondary);stroke-width:calc(var(--border-width) * 2);vector-effect:non-scaling-stroke}.return-chart-labels{text-align:center;width:max-content;min-width:100%;display:flex}.return-chart-labels span{flex:1 0 var(--space-12);min-width:0;display:grid}.study-trend-chart .return-chart-labels{justify-content:space-between;align-items:center;width:100%}.study-trend-plot{grid-template-columns:var(--space-8) minmax(0, 1fr);gap:var(--space-2);width:100%;min-width:0;display:grid}.study-chart-y-axis{height:calc(var(--space-16) * 4);color:var(--color-neutral-600);font-size:var(--text-xs);font-variant-numeric:tabular-nums;flex-direction:column;justify-content:space-between;align-items:flex-end;display:flex}.study-trend-plot svg{min-width:0}.study-trend-chart .return-chart-labels strong{color:var(--color-neutral-700);font-size:var(--text-xs);font-variant-numeric:tabular-nums;font-weight:600}.return-chart-labels strong{color:var(--color-neutral-900);font-size:var(--text-sm)}.return-chart-labels small{color:var(--color-neutral-500);font-size:var(--text-xs)}.chart-empty{min-height:var(--space-16);color:var(--color-neutral-500);place-items:center;display:grid}.panel-header{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:calc(var(--space-8) + var(--space-2));padding:0 var(--space-3);border-bottom:var(--border-width) solid var(--color-neutral-200);display:flex}.panel-header h2{min-width:0;font-size:var(--text-base)}.panel-header-actions{justify-content:flex-end;align-items:center;gap:var(--space-2);flex:none;display:flex}.panel-count{min-width:var(--space-6);height:var(--space-6);padding:0 var(--space-2);border-radius:var(--space-6);color:var(--color-neutral-0);background:var(--color-secondary);font-size:var(--text-xs);font-variant-numeric:tabular-nums;white-space:nowrap;flex:none;place-items:center;font-weight:600;display:inline-grid}.panel-meta{color:var(--color-neutral-500);font-size:var(--text-sm)}.compact-list{display:grid}.compact-list:empty{min-height:calc(var(--space-16) + var(--space-4));padding:var(--space-4);align-content:center;place-items:center}.compact-list:empty:after{color:var(--color-neutral-500);content:"暂无记录"}.schedule-item,.task-item,.notice-item{align-items:center;gap:var(--space-3);min-height:var(--space-16);padding:var(--space-3) var(--space-4);border-bottom:var(--border-width) solid var(--color-neutral-200);display:flex}.schedule-item:last-child,.task-item:last-child,.notice-item:last-child{border-bottom:0}.schedule-item time{width:var(--space-12);color:var(--color-neutral-700);font-variant-numeric:tabular-nums;flex:none;font-weight:600}.schedule-type{width:var(--space-16);color:var(--color-primary);font-size:var(--text-xs);flex:none;font-weight:600}.schedule-item>div,.task-item>div,.notice-item>div{align-content:center;gap:var(--space-1);flex:1;min-width:0;display:grid}.schedule-item>.fui-Badge,.notice-item>.fui-Badge{flex:none;width:auto;display:inline-flex}.schedule-item strong,.task-item strong,.notice-item strong{color:var(--color-neutral-900);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.schedule-item div span,.task-item div span,.notice-item div span{color:var(--color-neutral-500);font-size:var(--text-xs)}.compact-table{min-width:var(--compact-table-min-width)}.schedule-panel{overflow:hidden}.schedule-table{min-width:var(--schedule-min-width);table-layout:fixed}.schedule-table th:first-child{width:104px}.schedule-table th,.schedule-table td{border-right:var(--border-width) solid var(--color-neutral-100)}.schedule-table th:last-child,.schedule-table td:last-child{border-right:0}.schedule-table tbody th{border-right-color:var(--color-neutral-200);color:var(--color-neutral-700);background:var(--color-neutral-50)}.schedule-table tbody th strong,.schedule-table tbody th span{display:block}.schedule-table tbody th span{color:var(--color-neutral-500);font-size:var(--text-xs);font-weight:400}.schedule-table tbody th .schedule-time-drift{color:var(--color-warning);font-size:var(--text-xs);font-weight:400;display:block}.schedule-table td{height:104px;padding:var(--space-2);vertical-align:top}.lesson-cell{justify-content:space-between;align-items:flex-start;gap:var(--space-1);min-height:88px;padding:var(--space-2);border:var(--border-width) solid var(--color-neutral-200);border-left:3px solid var(--color-primary);border-radius:var(--radius-sm);background:var(--color-neutral-0);display:flex}.lesson-cell.is-targeted{outline:var(--focus-ring-width) solid var(--color-secondary);outline-offset:calc(-1 * var(--focus-ring-width));background:var(--color-secondary-soft)}.lesson-cell-list{gap:var(--space-2);display:grid}.lesson-cell>div{min-width:0;display:grid}.lesson-cell strong,.lesson-cell span,.lesson-cell small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.lesson-cell strong{color:var(--color-neutral-900);font-weight:600;line-height:1.25}.lesson-cell span,.lesson-cell small{color:var(--color-neutral-500);font-size:var(--text-xs)}.lesson-cell .lesson-change-mark{width:fit-content;margin-top:var(--space-1);padding:0 var(--space-1);border-radius:var(--radius-sm);color:var(--color-primary-hover);background:var(--color-primary-soft)}.lesson-cell .lesson-absence-mark{width:fit-content;margin-top:var(--space-1);padding:0 var(--space-1);border-radius:var(--radius-sm);color:var(--color-error);background:var(--color-error-soft)}.lesson-早读,.lesson-晚自习,.lesson-自习{border-left-color:var(--color-neutral-400);background:var(--color-neutral-50)}.lesson-辅导{border-left-color:var(--color-secondary)}.empty-cell{min-height:88px;color:var(--color-neutral-400);place-items:center;display:grid}.observation-form>.observation-grade-field,.observation-form>.observation-schedule-picker{grid-column:1/-1}.observation-grade-field .fui-Dropdown{width:var(--control-width);max-width:100%}.observation-schedule-picker{gap:var(--space-2);min-width:0;display:grid}.observation-schedule-picker h3{color:var(--color-neutral-900);font-size:var(--text-base)}.observation-schedule-state{min-height:calc(var(--space-16) * 2);padding:var(--space-4);border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm);color:var(--color-neutral-500);background:var(--color-neutral-50);justify-content:center;align-items:center;display:flex}.observation-schedule-state:has(.fui-Button){gap:var(--space-2);flex-wrap:wrap}.observation-schedule-scroll{max-height:calc(var(--space-16) * 6);border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm);overscroll-behavior:contain;overflow:auto}.observation-schedule-table{width:100%;min-width:var(--dialog-wide);border-collapse:separate;border-spacing:0;table-layout:fixed;font-variant-numeric:tabular-nums}.observation-schedule-table th,.observation-schedule-table td{padding:var(--space-1);border-right:var(--border-width) solid var(--color-neutral-100);border-bottom:var(--border-width) solid var(--color-neutral-100);text-align:left;vertical-align:top}.observation-schedule-table tr>:last-child{border-right:0}.observation-schedule-table tbody tr:last-child>*{border-bottom:0}.observation-schedule-table thead th{z-index:var(--layer-sticky-row);color:var(--color-neutral-700);background:var(--color-neutral-100);font-size:var(--text-xs);font-weight:600;position:sticky;top:0}.observation-schedule-table thead th:first-child{z-index:var(--layer-sticky-corner);width:calc(var(--space-16) + var(--space-4));left:0}.observation-schedule-table tbody th{z-index:var(--layer-sticky-column);color:var(--color-neutral-700);background:var(--color-neutral-50);position:sticky;left:0}.observation-schedule-table tbody th strong,.observation-schedule-table tbody th small{display:block}.observation-schedule-table tbody th strong{font-size:var(--text-sm)}.observation-schedule-table tbody th small{color:var(--color-neutral-500);font-size:var(--text-xs);font-weight:400}.observation-lesson-list{gap:var(--space-1);display:grid}.observation-lesson-option{width:100%;min-width:0;min-height:calc(var(--space-16) + var(--space-2));gap:var(--space-1);padding:var(--space-2);border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm);color:var(--color-neutral-900);background:var(--color-neutral-0);cursor:pointer;text-align:left;transition:border-color var(--motion-fast), background-color var(--motion-fast), transform var(--motion-fast);display:grid}.observation-lesson-option:hover{border-color:var(--color-neutral-300);background:var(--color-neutral-50)}.observation-lesson-option:active{transform:translateY(var(--border-width))}.observation-lesson-option.is-selected{border-color:var(--color-primary);background:var(--color-primary-soft)}.observation-lesson-option:disabled{border-color:var(--color-neutral-200);color:var(--color-neutral-500);background:var(--color-neutral-50);cursor:not-allowed}.observation-lesson-option strong,.observation-lesson-option span,.observation-lesson-option small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.observation-lesson-option strong{font-size:var(--text-sm);line-height:1.25}.observation-lesson-option span,.observation-lesson-option small{color:var(--color-neutral-500);font-size:var(--text-xs)}.schedule-change-table{min-width:var(--schedule-min-width)}.schedule-plan-actions{align-items:center;gap:var(--space-1);white-space:nowrap;display:flex}.schedule-plan-dialog .table-scroll{border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm)}.compact-data-table{min-width:var(--compact-table-min-width)}.compact-data-table th,.compact-data-table td{padding:var(--space-2) var(--space-3)}.schedule-change-table .truncate-cell{white-space:normal;overflow-wrap:anywhere;max-width:240px;line-height:1.5;overflow:visible}.fui-DialogSurface.operation-dialog,.fui-DialogSurface.schedule-plan-dialog,.fui-DialogSurface.feedback-dialog,.fui-DialogSurface.feedback-detail-dialog,.fui-DialogSurface.notification-dialog{width:min(var(--dialog-wide), calc(100vw - var(--space-8)));max-width:var(--dialog-wide)}.fui-DialogSurface.operation-dialog.observation-dialog{width:min(var(--schedule-min-width), calc(100vw - var(--space-8)));max-width:var(--schedule-min-width)}.resource-detail-grid{border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm);grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow:hidden}.resource-detail-grid>div{align-content:start;gap:var(--space-1);min-height:var(--space-16);padding:var(--space-3);box-shadow:var(--border-width) 0 0 var(--color-neutral-200), 0 var(--border-width) 0 var(--color-neutral-200);display:grid}.resource-detail-grid span{color:var(--color-neutral-500);font-size:var(--text-xs)}.resource-detail-grid strong{overflow-wrap:anywhere;min-width:0;color:var(--color-neutral-900);font-variant-numeric:tabular-nums;white-space:pre-wrap;font-weight:600}.resource-detail-grid .resource-detail-wide{box-shadow:var(--border-width) 0 0 var(--color-neutral-200), 0 var(--border-width) 0 var(--color-neutral-200), 0 calc(-1 * var(--border-width)) 0 var(--color-neutral-200);grid-column:1/-1}.submission-list{border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm);display:grid;overflow:hidden}.submission-list article{gap:var(--space-3);padding:var(--space-3);border-bottom:var(--border-width) solid var(--color-neutral-200);grid-template-columns:128px minmax(0,1fr);display:grid}.submission-list article:last-child{border-bottom:0}.submission-list dl,.submission-list dl>div{margin:0;display:grid}.submission-list dl{gap:var(--space-2) var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr))}.submission-list dl>div{grid-template-columns:88px minmax(0,1fr)}.submission-list dt{color:var(--color-neutral-500)}.submission-list dd{color:var(--color-neutral-700);margin:0}.score-overview{border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm);background:var(--color-neutral-0);grid-template-columns:repeat(4,minmax(0,1fr));display:grid;overflow:hidden}.score-overview>div{align-content:center;gap:var(--space-1);min-height:var(--metric-min-height);padding:var(--space-3);border-right:var(--border-width) solid var(--color-neutral-200);display:grid}.score-overview>div:last-child{border-right:0}.score-overview span,.score-overview small{color:var(--color-neutral-500)}.score-overview small{font-size:var(--text-xs)}.score-overview strong{align-items:center;gap:var(--space-2);color:var(--color-neutral-900);font-size:var(--text-xl);font-variant-numeric:tabular-nums;font-weight:600;display:flex}.score-overview strong svg{flex:none}.score-overview .score-primary{border-top:2px solid var(--color-primary)}.score-overview .score-primary strong{color:var(--color-primary-hover);font-size:var(--text-2xl)}.score-progress-up,.score-overview .score-progress-up{color:var(--color-success)}.score-progress-down,.score-overview .score-progress-down{color:var(--color-error)}.subject-score-list{gap:var(--space-4) var(--space-8);padding:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.subject-score-list>div{align-items:center;gap:var(--space-3);grid-template-columns:64px minmax(0,1fr) 40px;display:grid}.subject-score-list>div>span{color:var(--color-neutral-700)}.subject-score-list strong{color:var(--color-neutral-900);font-variant-numeric:tabular-nums;text-align:right;font-weight:600}.analytics-metrics .metric-item{min-height:88px}.analytics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.analysis-view-tabs{min-height:calc(var(--space-8) + var(--space-2));border-bottom:var(--border-width) solid var(--color-neutral-200);align-items:center;display:flex}.bar-chart,.rank-list{gap:var(--space-4);padding:var(--space-4);display:grid}.bar-row{grid-template-columns:104px minmax(0, 1fr) var(--space-12);align-items:center;gap:var(--space-3);display:grid}.bar-row>span{min-width:0;color:var(--color-neutral-700);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.bar-row strong{color:var(--color-neutral-900);font-variant-numeric:tabular-nums;text-align:right;font-weight:600}.bar-track{height:var(--chart-height);border-radius:var(--chart-height);background:var(--color-neutral-100);box-shadow:inset 0 0 0 var(--border-width) var(--color-neutral-200);overflow:hidden}.bar-fill{border-radius:inherit;background:var(--color-primary);height:100%;display:block}.bar-fill:not(.bar-0){min-width:var(--chart-height)}.bar-0{width:0}.bar-5{width:5%}.bar-10{width:10%}.bar-15{width:15%}.bar-20{width:20%}.bar-25{width:25%}.bar-30{width:30%}.bar-35{width:35%}.bar-40{width:40%}.bar-45{width:45%}.bar-50{width:50%}.bar-55{width:55%}.bar-60{width:60%}.bar-65{width:65%}.bar-70{width:70%}.bar-75{width:75%}.bar-80{width:80%}.bar-85{width:85%}.bar-90{width:90%}.bar-95{width:95%}.bar-100{width:100%}.page-stack.workload-page{gap:var(--space-2)}.workload-toolbar{min-width:0;min-height:var(--space-12);align-items:center;gap:var(--space-4);padding:var(--space-2) var(--space-3);border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm);background:var(--color-neutral-0);display:flex}.workload-filter{align-items:center;gap:var(--space-2);padding-right:var(--space-4);border-right:var(--border-width) solid var(--color-neutral-200);flex:none;display:flex}.workload-filter .fui-Dropdown{width:var(--control-width)}.workload-filter .result-count{margin-left:0}.workload-summary{scrollbar-width:thin;min-width:0;margin:0 0 0 auto;display:flex;overflow-x:auto}.workload-summary>div{align-items:baseline;gap:var(--space-2);padding:0 var(--space-3);border-right:var(--border-width) solid var(--color-neutral-200);white-space:nowrap;flex:none;margin:0;display:flex}.workload-summary>div:first-child{padding-left:0}.workload-summary>div:last-child{border-right:0;padding-right:0}.workload-summary dt{color:var(--color-neutral-500);font-size:var(--text-xs)}.workload-summary dd{color:var(--color-neutral-700);font-size:var(--text-sm);font-variant-numeric:tabular-nums;margin:0;font-weight:600}.workload-summary .workload-summary-metric dd{color:var(--color-primary);font-size:var(--text-base)}.workload-page .workload-data-panel>.table-state{min-height:var(--space-16);padding:var(--space-4)}.workload-page .workload-table{min-width:var(--compact-table-min-width)}.workload-page .workload-table th,.workload-page .workload-table td{padding:var(--space-2) var(--space-3)}.workload-page .workload-table th:first-child,.workload-page .workload-table td:first-child{width:var(--space-12);color:var(--color-neutral-500);text-align:center}.workload-page .workload-table th:nth-child(n+4),.workload-page .workload-table td:nth-child(n+4){text-align:right}.workload-total{grid-template-columns:minmax(var(--space-16), 1fr) var(--space-8);align-items:center;gap:var(--space-2);min-width:calc(var(--space-16) * 2);display:grid}.workload-total-track{height:var(--chart-height);border-radius:var(--chart-height);background:var(--color-neutral-100);overflow:hidden}.workload-total strong{color:var(--color-neutral-900);font-variant-numeric:tabular-nums;text-align:right;font-weight:600}.workload-teacher-cell{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.workload-teacher-cards{display:none}.workload-teacher-card{min-width:0;padding:var(--space-3);border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm);background:var(--color-neutral-0)}.workload-teacher-card>header{justify-content:space-between;align-items:center;gap:var(--space-3);padding-bottom:var(--space-3);border-bottom:var(--border-width) solid var(--color-neutral-200);display:flex}.workload-teacher-card-heading{gap:var(--space-1);min-width:0;display:grid}.workload-teacher-card-heading strong{color:var(--color-neutral-900);font-size:var(--text-base);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.workload-teacher-card-heading span{color:var(--color-neutral-500);font-size:var(--text-xs)}.workload-teacher-card dl{gap:var(--space-3);margin:var(--space-3) 0 0;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.workload-teacher-card dt{color:var(--color-neutral-500);font-size:var(--text-xs)}.workload-teacher-card dd{margin:var(--space-1) 0 0;color:var(--color-neutral-900);font-size:var(--text-sm);font-variant-numeric:tabular-nums;font-weight:600}.workload-teacher-card-total{grid-column:span 2}.workload-teacher-card-total dd{color:var(--color-primary);font-size:var(--text-base)}.workload-detail-dialog{width:min(calc(var(--space-16) * 10), calc(100vw - var(--space-8)))}.workload-detail-summary{gap:var(--space-2);margin:0 0 var(--space-4);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.workload-detail-summary>div{padding:var(--space-3);border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm);background:var(--color-neutral-50)}.workload-detail-summary dt,.workload-detail-card dt{color:var(--color-neutral-500);font-size:var(--text-xs)}.workload-detail-summary dd,.workload-detail-card dd{margin:var(--space-1) 0 0;color:var(--color-neutral-900);font-size:var(--text-sm);font-weight:600}.workload-detail-list{gap:var(--space-3);max-height:calc(var(--space-16) * 6);grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow-y:auto}.workload-detail-card{padding:var(--space-3);border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm);background:var(--color-neutral-0)}.workload-detail-card dl{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.workload-detail-source{grid-column:1/-1}.workload-detail-source dd{overflow-wrap:anywhere;font-variant-numeric:tabular-nums}@media (width<=900px){.page-stack.workload-page{min-width:0;overflow-x:hidden}.workload-page .workload-data-panel{min-width:0}.workload-desktop-table{display:none}.workload-teacher-cards{gap:var(--space-3);padding:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.workload-toolbar{align-items:stretch;gap:var(--space-2);flex-direction:column}.workload-filter{padding-right:0;padding-bottom:var(--space-2);border-right:0;border-bottom:var(--border-width) solid var(--color-neutral-200)}.workload-summary{width:100%;margin-left:0}}@media (width<=768px){.workload-filter{flex-direction:column;align-items:stretch}.workload-filter .fui-Dropdown{width:100%}.workload-summary>div{padding-right:var(--space-2);padding-left:var(--space-2)}.workload-total{grid-template-columns:var(--space-16) var(--space-8);min-width:calc(var(--space-16) + var(--space-12))}.workload-detail-summary,.workload-detail-list,.workload-teacher-cards{grid-template-columns:minmax(0,1fr)}.workload-teacher-card dl,.workload-detail-card dl{grid-template-columns:repeat(2,minmax(0,1fr))}}.rank-list article{grid-template-columns:minmax(56px, auto) minmax(0, 1fr) var(--space-12);align-items:center;gap:var(--space-3);display:grid}.rank-list article:has(>span:first-child){grid-template-columns:var(--space-6) minmax(56px, auto) minmax(0, 1fr) var(--space-12)}.rank-list article>strong{min-width:0;color:var(--color-neutral-900);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.rank-list article>span{width:var(--space-6);height:var(--space-6);color:var(--color-neutral-700);background:var(--color-neutral-100);font-size:var(--text-xs);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;font-weight:600;display:grid}.rank-list article:first-child>span{color:var(--color-on-primary);background:var(--color-primary)}.rank-list b{color:var(--color-neutral-900);font-variant-numeric:tabular-nums;text-align:right;font-weight:600}.compact-rank-list{gap:var(--space-2);padding:var(--space-3)}.issue-matrix{min-height:176px;padding:var(--space-4);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.issue-matrix article{align-content:center;justify-items:center;gap:var(--space-1);padding:var(--space-3) var(--space-2);border-right:var(--border-width) solid var(--color-neutral-200);display:grid}.issue-matrix article:last-child{border-right:0}.issue-matrix time,.issue-matrix span,.issue-matrix small{color:var(--color-neutral-500);font-size:var(--text-xs)}.issue-matrix time{font-variant-numeric:tabular-nums}.issue-matrix strong{color:var(--color-primary-hover);font-size:var(--text-xl);font-variant-numeric:tabular-nums;font-weight:600}.issue-matrix b{color:var(--color-neutral-900);font-variant-numeric:tabular-nums;font-weight:600}.boarding-stats{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.boarding-stats article{align-content:space-between;gap:var(--space-2);min-height:var(--metric-min-height);padding:var(--space-3);border-right:var(--border-width) solid var(--color-neutral-200);border-bottom:var(--border-width) solid var(--color-neutral-200);display:grid}.boarding-stats article:nth-child(2n){border-right:0}.boarding-stats article:nth-last-child(-n+2){border-bottom:0}.boarding-stats strong{color:var(--color-neutral-900);font-size:var(--text-xl);font-variant-numeric:tabular-nums;font-weight:600}.boarding-stats span{color:var(--color-neutral-500);font-size:var(--text-xs);align-self:end}.feedback-summary>div{flex:1;min-width:128px}.feedback-center-shell{background:var(--color-neutral-50);min-height:100dvh}.feedback-center-header{z-index:20;justify-content:space-between;align-items:center;gap:var(--space-4);min-height:var(--header-height);padding:0 var(--space-6);border-bottom:var(--border-width) solid var(--color-neutral-200);background:var(--color-neutral-0);display:flex;position:sticky;top:0;box-shadow:0 1px 2px #0830490d}.feedback-center-brand{align-items:center;gap:var(--space-3);display:flex}.feedback-center-brand img{width:var(--brand-logo-size);height:var(--brand-logo-size);object-fit:contain}.feedback-center-brand div{display:grid}.feedback-center-brand strong{color:var(--color-primary);font-size:var(--text-base)}.feedback-center-brand span{color:var(--color-neutral-500);font-size:var(--text-xs)}.feedback-center-main{width:min(100%, var(--content-max));padding:var(--space-6);margin:0 auto}.feedback-filters{flex-wrap:wrap}.feedback-filters .fui-Input{width:280px}.feedback-filters .fui-Dropdown{width:168px}.feedback-table{min-width:var(--feedback-min-width)}.feedback-table td:nth-child(2){max-width:320px}.table-link{border-radius:var(--radius-sm);max-width:100%;color:var(--color-info);text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;background:0 0;border:0;padding:0;transition:color .12s;overflow:hidden}.table-link:hover{color:var(--color-primary);text-decoration:underline}.table-link:focus-visible{outline:var(--focus-ring-width) solid var(--color-secondary);outline-offset:var(--focus-ring-width);text-decoration:underline}.priority{align-items:center;gap:var(--space-2);min-height:var(--space-6);padding:0 var(--space-2);border:var(--border-width) solid transparent;border-radius:var(--radius-sm);font-size:var(--text-xs);white-space:nowrap;font-weight:600;display:inline-flex}.priority:before{width:var(--space-2);height:var(--space-2);content:"";background:currentColor;border-radius:50%;flex:none}.priority-一般,.priority-普通{border-color:var(--color-neutral-200);color:var(--color-neutral-700);background:var(--color-neutral-100)}.priority-一般:before,.priority-普通:before{background:var(--color-neutral-400)}.priority-较急,.priority-影响使用{border-color:var(--color-warning-border);color:var(--color-warning);background:var(--color-warning-soft)}.priority-紧急,.priority-阻断操作{border-color:var(--color-error-border);color:var(--color-error);background:var(--color-error-soft)}.feedback-target{gap:var(--space-1);min-width:160px;display:grid}.feedback-target strong{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.feedback-target small{color:var(--color-neutral-500);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overdue-row,.feedback-table tbody .overdue-row,.feedback-table tbody .overdue-row:hover{background:var(--color-error-soft)}.feedback-table tbody .overdue-row>td:first-child{box-shadow:inset var(--focus-ring-width) 0 0 var(--color-error)}.overdue-text{color:var(--color-error);font-variant-numeric:tabular-nums;font-weight:600}.form-wide{grid-column:1/-1}.file-input{width:100%;min-height:var(--space-8);padding:var(--space-1);border:var(--border-width) solid var(--color-neutral-300);border-radius:var(--radius-sm);color:var(--color-neutral-700);background:var(--color-neutral-0)}.file-input:focus-visible{border-color:var(--color-secondary);outline:var(--focus-ring-width) solid var(--color-secondary);outline-offset:var(--border-width)}.file-input:disabled{color:var(--color-neutral-400);background:var(--color-neutral-100);cursor:not-allowed}.file-input::file-selector-button{height:var(--space-6);margin-right:var(--space-3);padding:0 var(--space-3);border:var(--border-width) solid var(--color-neutral-300);border-radius:var(--radius-sm);color:var(--color-neutral-700);background:var(--color-neutral-50);cursor:pointer;transition:background-color .14s,border-color .14s}.file-input:enabled:hover::file-selector-button{border-color:var(--color-neutral-400);background:var(--color-neutral-100)}.file-input:disabled::file-selector-button{color:var(--color-neutral-400);cursor:not-allowed}.selected-files{gap:var(--space-2);flex-wrap:wrap;display:flex}.selected-files span{padding:var(--space-1) var(--space-2);border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm);color:var(--color-neutral-700);background:var(--color-neutral-50);font-size:var(--text-xs)}.feedback-detail-meta{border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm);grid-template-columns:repeat(3,minmax(0,1fr));display:grid;overflow:hidden}.feedback-detail-meta>div{align-content:start;gap:var(--space-1);min-height:var(--space-16);padding:var(--space-3);border-right:var(--border-width) solid var(--color-neutral-200);border-bottom:var(--border-width) solid var(--color-neutral-200);display:grid}.feedback-detail-meta>div:nth-child(3n){border-right:0}.feedback-detail-meta>div:nth-last-child(-n+3){border-bottom:0}.feedback-detail-meta span{color:var(--color-neutral-500);font-size:var(--text-xs)}.feedback-detail-meta strong{overflow-wrap:anywhere;min-width:0;color:var(--color-neutral-900);font-weight:600}.feedback-detail-section{gap:var(--space-2);padding:var(--space-4) 0;border-bottom:var(--border-width) solid var(--color-neutral-200);display:grid}.feedback-detail-section:last-child{border-bottom:0}.feedback-detail-section h3{font-size:var(--text-sm)}.feedback-detail-section p{color:var(--color-neutral-700);white-space:pre-wrap}.feedback-description-list{margin:0;display:grid}.feedback-description-list>div{gap:var(--space-3);padding:var(--space-2) 0;grid-template-columns:96px minmax(0,1fr);display:grid}.feedback-description-list dt{color:var(--color-neutral-500)}.feedback-description-list dd{color:var(--color-neutral-700);white-space:pre-wrap;margin:0}.diagnostic-grid{border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm);grid-template-columns:repeat(4,minmax(0,1fr));display:grid;overflow:hidden}.diagnostic-grid span{align-content:start;gap:var(--space-1);min-width:0;min-height:var(--space-16);padding:var(--space-3);color:var(--color-neutral-500);font-size:var(--text-xs);box-shadow:var(--border-width) 0 0 var(--color-neutral-200), 0 var(--border-width) 0 var(--color-neutral-200);display:grid}.diagnostic-grid strong{color:var(--color-neutral-900);font-weight:600;font-size:var(--text-xs);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.diagnostic-grid .diagnostic-wide{box-shadow:var(--border-width) 0 0 var(--color-neutral-200), 0 var(--border-width) 0 var(--color-neutral-200), 0 calc(-1 * var(--border-width)) 0 var(--color-neutral-200);grid-column:1/-1}.diagnostic-grid .diagnostic-wide strong{overflow-wrap:anywhere;white-space:normal;overflow:visible}.diagnostic-event-list,.audit-entry-list{border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm);display:grid;overflow:hidden}.diagnostic-event-list article,.audit-entry-list article{gap:var(--space-1);padding:var(--space-3);border-bottom:var(--border-width) solid var(--color-neutral-200);background:var(--color-neutral-0);display:grid}.diagnostic-event-list article:last-child,.audit-entry-list article:last-child{border-bottom:0}.diagnostic-event-list article>div,.audit-entry-list article>div{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.diagnostic-event-list article>div strong,.audit-entry-heading strong{overflow-wrap:anywhere;min-width:0;font-weight:600}.diagnostic-event-list time,.audit-entry-heading time{font-variant-numeric:tabular-nums;flex:none}.audit-entry-detail{gap:var(--space-2) var(--space-4);margin:var(--space-3) 0 0;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.audit-entry-detail>div{grid-template-columns:var(--audit-label-width) minmax(0, 1fr);gap:var(--space-2);display:grid}.audit-entry-detail dt{color:var(--color-neutral-500)}.audit-entry-detail dd{overflow-wrap:anywhere;margin:0}.audit-entry-detail .audit-entry-wide{grid-column:1/-1}.audit-entry-raw{margin-top:var(--space-3)}.audit-entry-raw summary{border-radius:var(--radius-sm);width:fit-content;color:var(--color-primary);cursor:pointer;transition:color .12s}.audit-entry-raw summary:hover{color:var(--color-primary-hover);text-decoration:underline}.audit-entry-raw summary:focus-visible{outline:var(--focus-ring-width) solid var(--color-secondary);outline-offset:var(--space-1)}.audit-entry-raw pre{max-height:var(--audit-log-max-height);margin:var(--space-2) 0 0;padding:var(--space-3);border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm);background:var(--color-neutral-50);white-space:pre-wrap;overflow-wrap:anywhere;overflow:auto}.diagnostic-event-list time,.audit-entry-list time,.audit-entry-list span{color:var(--color-neutral-500);font-size:var(--text-xs)}.diagnostic-event-list p{margin:0}.diagnostic-event-list code,.audit-entry-list code{overflow-wrap:anywhere;color:var(--color-neutral-700);font-size:var(--text-xs);white-space:pre-wrap}.attachment-list{gap:var(--space-2);flex-wrap:wrap;display:flex}.attachment-list a{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm);color:var(--color-info);text-decoration:none;display:inline-flex}.attachment-list a:hover{border-color:var(--color-info)}.resource-detail-relations{gap:var(--space-2);padding:var(--space-4) 0;border-bottom:var(--border-width) solid var(--color-neutral-200);display:grid}.resource-detail-relations h3{font-size:var(--text-sm)}.resource-relation-list{gap:var(--space-2);flex-wrap:wrap;display:flex}.resource-relation-list a{padding:var(--space-2) var(--space-3);border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm);color:var(--color-info);align-items:center;font-weight:600;text-decoration:none;display:inline-flex}.resource-relation-list a:hover{border-color:var(--color-info)}.resource-relation-list.is-compact{display:inline-flex}.resource-relation-list.is-compact a{padding:var(--space-1) var(--space-2)}.notice-table,.member-table{min-width:var(--feedback-min-width)}.notice-actions{gap:var(--space-1);flex-wrap:wrap;display:flex}.notice-detail-list{border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid;overflow:hidden}.notice-detail-list>div{align-content:start;gap:var(--space-1);min-height:var(--space-16);padding:var(--space-3);box-shadow:var(--border-width) 0 0 var(--color-neutral-200), 0 var(--border-width) 0 var(--color-neutral-200);display:grid}.notice-detail-list dt{color:var(--color-neutral-500);font-size:var(--text-xs)}.notice-detail-list dd{overflow-wrap:anywhere;min-width:0;color:var(--color-neutral-900);font-variant-numeric:tabular-nums;margin:0;font-weight:600}.notice-detail-list .notice-detail-content{box-shadow:var(--border-width) 0 0 var(--color-neutral-200), 0 var(--border-width) 0 var(--color-neutral-200), 0 calc(-1 * var(--border-width)) 0 var(--color-neutral-200);grid-column:1/-1}.notice-detail-content dd{white-space:pre-wrap;font-weight:400}.settings-panel{gap:var(--space-4);border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-md);background:var(--color-neutral-0);display:grid}.settings-panel-header{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-4) 0;display:flex}.settings-panel-header h2{font-size:var(--text-base)}.settings-panel-header .fui-Field{min-width:var(--control-width)}.pairing-code-row{align-items:center;gap:var(--space-4);margin:0 var(--space-4);padding:var(--space-4);border:var(--border-width) solid var(--color-primary);border-radius:var(--radius-sm);background:var(--color-primary-soft);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.pairing-code-row span,.pairing-code-row time{color:var(--color-neutral-500);font-size:var(--text-xs)}.pairing-code-row strong{color:var(--color-primary);font-size:var(--text-2xl);font-variant-numeric:tabular-nums;letter-spacing:.08em}.device-name{align-items:center;gap:var(--space-2);display:inline-flex}.settings-form{gap:var(--space-4);display:grid}.weekday-grid{gap:var(--space-2);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.time-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.feedback-timeline{display:grid}.feedback-timeline article{grid-template-columns:var(--space-6) minmax(0, 1fr);min-height:var(--space-16);display:grid;position:relative}.feedback-timeline article:before{top:var(--space-4);bottom:calc(-1 * var(--space-1));left:calc(var(--space-3) - var(--border-width) / 2);width:var(--border-width);background:var(--color-neutral-300);content:"";position:absolute}.feedback-timeline article:last-child:before{display:none}.timeline-node{z-index:1;width:var(--space-3);height:var(--space-3);margin:var(--space-1) auto 0;border:2px solid var(--color-primary);background:var(--color-neutral-0);box-shadow:0 0 0 2px var(--color-neutral-0);border-radius:50%;align-self:start}.feedback-timeline article:last-child .timeline-node{border-color:var(--color-secondary);background:var(--color-secondary)}.feedback-timeline article>div{gap:var(--space-1);padding:0 0 var(--space-4) var(--space-3);display:grid}.feedback-timeline strong{color:var(--color-neutral-900);font-weight:600}.feedback-timeline small{color:var(--color-neutral-500);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.feedback-timeline code{width:fit-content;padding:0 var(--space-1);color:var(--color-neutral-700);background:var(--color-neutral-100);font-size:var(--text-xs)}.duty-followup-week{color:var(--color-neutral-500);font-size:var(--text-xs);font-variant-numeric:tabular-nums;white-space:nowrap;margin-left:auto}.duty-followup-table{min-width:var(--compact-table-min-width)}.duty-source-title{font-size:var(--text-base);white-space:nowrap;margin:0;font-weight:600;line-height:1.25}.duty-source-panel .table-toolbar .fui-Dropdown{width:var(--control-width)}.duty-report-attachments{padding:var(--space-2) var(--space-3);border-bottom:var(--border-width) solid var(--color-neutral-200);background:var(--color-neutral-25)}.duty-attachment-grid{align-items:center;gap:var(--space-2);flex-wrap:wrap;min-width:0;display:flex}.duty-attachment-item{align-items:center;gap:var(--space-2);border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm);min-width:0;color:var(--color-info);background:var(--color-neutral-0);transition:border-color var(--motion-fast), color var(--motion-fast);text-decoration:none;display:inline-flex;overflow:hidden}.duty-attachment-item:not(.is-image){padding:var(--space-2) var(--space-3)}.duty-attachment-item span{max-width:calc(var(--space-16) * 3);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.duty-attachment-item img{width:var(--space-16);height:var(--space-16);object-fit:cover;display:block}.duty-attachment-grid.is-compact .duty-attachment-item:not(.is-image){padding:var(--space-1) var(--space-2);font-size:var(--text-xs)}.duty-attachment-grid.is-compact .duty-attachment-item img{width:var(--space-8);height:var(--space-8)}.duty-attachment-item:hover{border-color:var(--color-info);color:var(--color-primary)}.duty-attachment-item:focus-visible{outline:var(--focus-ring-width) solid var(--color-secondary);outline-offset:var(--space-1)}.duty-timeline-panel{border-top:var(--border-width) solid var(--color-neutral-200);background:var(--color-neutral-25)}.duty-timeline-header{min-height:calc(var(--space-8) + var(--space-2));justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-bottom:var(--border-width) solid var(--color-neutral-200);display:flex}.duty-timeline-header>div{min-width:0}.duty-timeline-header h3{text-overflow:ellipsis;font-size:var(--text-base);white-space:nowrap;margin:0;font-weight:600;line-height:1.25;overflow:hidden}.duty-timeline-header span{color:var(--color-neutral-500);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.duty-process-timeline{min-width:0;padding:var(--space-3);background:var(--color-neutral-0);display:flex;overflow-x:auto}.duty-process-timeline article{flex:1 0 calc(var(--space-16) * 3);min-width:0;padding:0 var(--space-2);position:relative}.duty-process-timeline article:before{top:calc(var(--space-3) / 2);height:var(--border-width);background:var(--color-neutral-300);content:"";position:absolute;left:0;right:0}.duty-process-timeline article:first-child:before{left:50%}.duty-process-timeline article:last-child:before{right:50%}.duty-process-node{z-index:1;width:var(--space-3);height:var(--space-3);margin:0 auto var(--space-2);border:calc(var(--border-width) * 2) solid var(--color-primary);background:var(--color-neutral-0);border-radius:50%;display:block;position:relative}.duty-process-timeline article:last-child .duty-process-node{border-color:var(--color-secondary);background:var(--color-secondary)}.duty-process-timeline article>div{justify-items:center;gap:var(--space-1);text-align:center;min-width:0;display:grid}.duty-process-timeline strong{color:var(--color-neutral-900);font-weight:600}.duty-process-timeline small{justify-content:center;gap:var(--space-1) var(--space-2);color:var(--color-neutral-500);font-size:var(--text-xs);font-variant-numeric:tabular-nums;flex-wrap:wrap;display:flex}.duty-process-timeline p{overflow-wrap:anywhere;width:100%;color:var(--color-neutral-700);font-size:var(--text-sm);text-align:left;white-space:pre-wrap;margin:0;line-height:1.5}.duty-process-timeline .duty-attachment-grid{margin-top:var(--space-1);justify-content:center}.feedback-action-form{gap:var(--space-4);padding-top:var(--space-2);display:grid}.floating-feedback{z-index:25;right:var(--space-3);bottom:var(--space-4);width:var(--space-12);height:var(--touch-target-min);justify-content:center;align-items:center;gap:var(--space-1);border:var(--border-width) solid var(--color-primary);border-radius:var(--radius-sm);color:var(--color-primary-hover);background:var(--color-neutral-0);font-size:var(--text-xs);padding:0;font-weight:600;transition:color .12s,background-color .12s,box-shadow .12s;display:inline-flex;position:fixed;box-shadow:0 2px 8px #08304929}.floating-feedback svg{flex:none}.floating-feedback:hover{color:var(--color-neutral-0);background:var(--color-primary-hover);box-shadow:0 4px 12px #08304938}.floating-feedback:active{background:var(--color-primary-pressed)}.floating-feedback:focus-visible{outline:var(--focus-ring-width) solid var(--color-secondary);outline-offset:var(--space-1)}.login-page{grid-template-columns:minmax(var(--login-brand-min-width), var(--login-brand-column-width)) minmax(0, 1fr);background-color:var(--color-neutral-100);background-image:url(/smart-campus-background.webp);background-position:50%;background-size:cover;min-height:100dvh;display:grid}.login-brand-panel{justify-content:space-between;gap:var(--space-8);min-width:0;padding:var(--space-12);color:var(--color-neutral-0);background:var(--color-smart-brand-surface);flex-direction:column;display:flex}.login-brand-title{gap:var(--space-3);display:grid}.login-brand-title>span{color:var(--color-on-primary-muted);font-size:var(--text-sm);letter-spacing:.16em;font-weight:600}.login-brand-heading{max-width:12em;font-size:var(--text-2xl);font-weight:600;line-height:1.25}.login-brand-motif{grid-template-columns:repeat(3, var(--space-12));gap:var(--space-3);align-self:flex-end;display:grid}.login-brand-motif span{height:var(--space-1);background:var(--color-smart-line)}.login-brand-motif span:first-child{background:var(--color-secondary)}.login-action-panel{min-width:0;padding:var(--space-8);background:var(--color-smart-action-surface);place-items:center;display:grid}.login-panel{align-content:start;gap:var(--space-4);width:100%;max-width:var(--login-panel-width);padding:var(--space-8);border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-md);background:var(--color-neutral-0);display:grid}.login-brand{align-items:center;gap:var(--space-3);display:flex}.login-brand>div{gap:var(--space-1);display:grid}.login-brand strong{font-size:var(--text-lg)}.login-brand>div span{color:var(--color-on-primary-muted);font-size:var(--text-sm)}.login-panel h1{font-size:var(--text-xl)}.sso-login-button{width:100%;min-height:calc(var(--space-8) + var(--space-2));justify-content:center;align-items:center;gap:var(--space-2);padding:0 var(--space-4);border-radius:var(--radius-sm);appearance:none;color:var(--color-neutral-0);background:var(--color-primary);cursor:pointer;font:inherit;border:0;font-weight:600;text-decoration:none;transition:background-color .16s;display:inline-flex}.sso-logout-form{margin:0;display:grid}.denied-account{gap:var(--space-3);display:grid}.denied-account-identity,.denied-account-reference{align-items:baseline;gap:var(--space-3);padding-bottom:var(--space-3);border-bottom:var(--border-width) solid var(--color-neutral-200);grid-template-columns:minmax(0,1fr) auto;display:grid}.denied-account-identity span,.denied-account-reference span{color:var(--color-neutral-500);font-size:var(--text-sm)}.denied-account-identity strong,.denied-account-reference strong{overflow-wrap:anywhere;min-width:0;color:var(--color-neutral-900);font-size:var(--text-sm);font-weight:600}.denied-access-request-button{width:100%;min-height:var(--touch-target-min);justify-content:center;align-items:center;gap:var(--space-2);padding:0 var(--space-4);border:var(--border-width) solid var(--color-primary);border-radius:var(--radius-sm);color:var(--color-primary);background:var(--color-neutral-0);cursor:pointer;font:inherit;font-weight:600;display:inline-flex}.denied-access-request-button:hover{color:var(--color-primary-hover);background:var(--color-primary-soft)}.denied-access-request-button:focus-visible{outline:var(--focus-ring-width) solid var(--color-secondary);outline-offset:var(--space-1)}.denied-access-request-button:disabled{color:var(--color-neutral-500);border-color:var(--color-neutral-300);background:var(--color-neutral-100);cursor:default}.sso-retry-button{justify-self:start}.sso-login-button:hover{background:var(--color-primary-hover)}.sso-login-button:active{background:var(--color-primary-pressed)}.sso-login-button:focus-visible{outline:var(--focus-ring-width) solid var(--color-secondary);outline-offset:var(--space-1)}.sso-login-button[aria-disabled=true],.sso-login-button:disabled{opacity:.85;cursor:progress;pointer-events:none}.loading-page{align-content:start;gap:var(--space-4);width:100%;max-width:var(--content-max);min-height:100dvh;padding:var(--space-6);background:var(--color-neutral-50);margin:0 auto;display:grid}.loading-line,.loading-grid>div,.loading-block{border-radius:var(--radius-sm);background:var(--color-neutral-200);animation:1.6s ease-in-out infinite alternate loading-pulse}.loading-line{height:var(--space-4)}.loading-line-title{width:240px;height:var(--space-8)}.loading-grid{gap:var(--space-4);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.loading-grid>div{height:var(--metric-min-height)}.loading-block{height:328px}.sidebar-scrim{display:none}.mobile-trigger{display:inline-flex}@keyframes shell-scrim-in{0%{opacity:0}to{opacity:1}}@keyframes route-enter{0%{opacity:0;transform:translateY(var(--space-1))}to{opacity:1;transform:translateY(0)}}@keyframes content-settle{0%{opacity:0;transform:translateY(var(--space-1))}to{opacity:1;transform:translateY(0)}}@keyframes sparkline-reveal{0%{opacity:0;transform:scaleX(0)}to{opacity:1;transform:scaleX(1)}}@keyframes refresh-once{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes loading-pulse{0%{opacity:.6}to{opacity:.95}}@media (width<=1366px){:root{--sidebar-width:208px;--content-max:100%;--control-width:220px;--table-min-width:880px;--schedule-min-width:1040px;--feedback-min-width:1040px}.global-header{gap:var(--space-3);padding:0 var(--space-3)}.top-navigation-link{padding:0 var(--space-2)}.context-bar{padding:0 var(--space-4)}.app-content,.loading-page{padding:var(--space-4)}.summary-strip>div{min-width:136px;padding:var(--space-3)}.data-table th,.data-table td{padding-right:var(--space-3);padding-left:var(--space-3)}}@media (width<=1100px){:root{--sidebar-width:184px;--control-width:200px;--table-min-width:840px}.global-header{grid-template-columns:minmax(0,1fr) auto}.global-brand>span:last-child,.brand-divider,.account-text,.top-navigation{display:none}.sidebar{z-index:50;width:min(var(--mobile-sidebar-width), 84vw);padding-top:env(safe-area-inset-top,0px);box-shadow:var(--shell-elevation-drawer);visibility:hidden;pointer-events:none;top:0;transform:translate(-100%)}.sidebar-open{visibility:visible;pointer-events:auto;transform:translate(0)}.mobile-drawer-header{min-height:var(--touch-target-min);padding:0 var(--space-2);border-bottom:var(--border-width) solid var(--shell-line);flex:none;justify-content:flex-end;align-items:center;display:flex}.fui-Button.mobile-drawer-close,.fui-Button.mobile-trigger{min-width:var(--touch-target-min);min-height:var(--touch-target-min);display:inline-flex}.sidebar-collapsed .sidebar.sidebar-open{visibility:visible;pointer-events:auto;transform:translate(0)}.mobile-primary-nav{gap:var(--space-1);padding:var(--space-3);border-bottom:var(--border-width) solid var(--shell-line);flex:none;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.mobile-primary-link{min-width:0;min-height:var(--touch-target-min);align-items:center;gap:var(--space-2);padding:var(--space-2);border-radius:var(--radius-sm);color:var(--color-neutral-700);font-size:var(--text-xs);text-align:left;cursor:pointer;transition:color var(--shell-motion), background-color var(--shell-motion), box-shadow var(--shell-motion);background:0 0;border:0;text-decoration:none;display:flex}.mobile-primary-link span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.mobile-primary-link>svg:last-child{flex:none;margin-left:auto}.mobile-primary-link:hover{color:var(--color-primary);background:var(--shell-hover)}.mobile-primary-link:active{background:var(--shell-pressed);transform:none}.mobile-primary-link.active{color:var(--color-primary);background:var(--color-primary-soft);box-shadow:inset var(--shell-indicator) 0 0 var(--color-secondary);font-weight:600}.mobile-primary-link:focus-visible{outline:calc(2 * var(--border-width)) solid var(--color-secondary);outline-offset:calc(-1 * var(--border-width))}.sidebar-scrim{z-index:40;background:#041d2b75;border:0;width:100%;height:100%;animation:.14s shell-scrim-in;display:block;position:fixed;inset:0}.sidebar-scrim:active{transform:none}.main-frame{margin-left:0}.context-bar{display:none}.sidebar .nav-link{min-height:var(--touch-target-min)}.metric-grid{grid-template-columns:repeat(auto-fit, minmax(var(--metric-item-min-width), 1fr))}.return-dashboard-page .metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-grid,.dashboard-skeleton-panels,.analytics-grid,.dashboard-insight-grid{grid-template-columns:minmax(0,1fr)}.command-center-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(3, var(--command-panel-height));height:auto;max-height:none}.command-center-panel-radar,.command-center-panel-activity,.command-center-panel-heatmap,.command-center-panel-gantt,.command-center-panel-relations{grid-column:auto}.command-center-panel-gantt{grid-column:1/-1}.loading-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wrong-book-list{grid-template-columns:minmax(0,1fr)}}@media (width>=1600px){.dashboard-app-grid,.featured-app-grid-school{grid-template-columns:repeat(5,minmax(0,1fr))}}@media (width>=1920px){:root{--sidebar-width:248px;--content-max:2160px;--control-width:360px;--table-min-width:1040px;--schedule-min-width:1280px;--feedback-min-width:1280px}.global-header{grid-template-columns:minmax(var(--sidebar-width), auto) minmax(0, 1fr) auto;gap:var(--space-6);padding:0 var(--space-8)}.context-bar{padding:0 var(--space-8)}.app-content{padding:var(--space-4)}.page-stack{gap:var(--space-3)}.dashboard-grid,.analytics-grid{gap:var(--space-6)}.loading-page{gap:var(--space-6);padding:var(--space-8)}.summary-strip>div{min-width:176px}}@media (width>=2400px){:root{--content-max:2304px;--control-width:420px}.global-header{grid-template-columns:minmax(var(--sidebar-width), auto) minmax(0, 1fr) auto}}@media (width<=900px){.analytics-overview-grid,.quality-overview-grid{grid-template-columns:minmax(0,1fr)}.featured-app-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-app-grid{scroll-snap-type:x proximity;scrollbar-width:thin;display:flex;overflow-x:auto}.dashboard-app-grid .featured-app-card{flex:0 0 calc(var(--space-16) * 5);scroll-snap-align:start}.return-dashboard-page .metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=768px){.featured-app-card{min-height:0;padding:0}.featured-app-target{min-height:var(--space-16);gap:var(--space-2);padding:var(--space-2) var(--space-3)}.featured-apps-toolbar{grid-template-columns:minmax(0,1fr)}.featured-app-search{width:100%}.login-page{background-position:0;grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.login-brand-panel{gap:var(--space-6);padding:var(--space-6)}.login-brand-title,.login-brand-motif{display:none}.login-action-panel{padding:var(--space-4)}.login-panel{padding:var(--space-6)}.global-header{padding:0 var(--space-3);grid-template-columns:minmax(0,1fr) auto}.global-actions>.fui-Button:not(.account-trigger):not(.assistant-launcher):not(.search-action):not(.notification-action){display:none}.fui-Button.search-action,.fui-Button.notification-action{min-width:var(--touch-target-min);min-height:var(--touch-target-min)}.global-actions>.fui-Button.assistant-launcher{min-width:var(--context-height);min-height:var(--context-height)}.account-trigger{padding-left:var(--space-2);margin-left:0}.account-trigger:before{display:none}.app-content{padding:var(--space-4)}.page-header{flex-direction:column;align-items:flex-start}.page-header h1{font-size:var(--text-lg)}.page-actions{flex-wrap:wrap;justify-content:flex-start;width:100%}.dashboard-page .metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-page .metric-item{grid-template-columns:var(--space-6) minmax(0, 1fr);max-height:none;padding:var(--space-3)}.dashboard-page .metric-icon{width:var(--space-6);height:var(--space-6)}.dashboard-page .metric-copy{grid-column:2}.dashboard-page .metric-copy strong{font-size:var(--text-lg)}.dashboard-page .metric-detail{grid-column:2}.dashboard-page .metric-sparkline,.dashboard-page .metric-sparkline-empty{height:var(--space-6);grid-area:3/1/auto/-1}.dashboard-page .metric-meta{grid-row:4}.dashboard-page .metric-meta>small{display:none}.dashboard-radar-layout{grid-template-columns:calc(var(--space-16) * 2) minmax(0, 1fr)}.command-center-summary,.command-center-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.command-center-mobile-pager{justify-content:space-between;align-items:center;gap:var(--space-2);min-height:var(--touch-target-min);border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm);background:var(--color-neutral-0);display:flex}.command-center-mobile-pager .fui-Button{min-width:var(--touch-target-min);min-height:var(--touch-target-min)}.command-center-mobile-pager>span{text-align:center;min-width:0;display:grid}.command-center-mobile-pager strong,.command-center-mobile-pager small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.command-center-grid{height:var(--command-panel-height);min-height:var(--command-panel-height);scroll-snap-type:x mandatory;display:flex;overflow-x:auto}.command-center-panel{flex:0 0 calc(100vw - var(--space-8));scroll-snap-align:start}.command-center-page:fullscreen{padding:var(--space-4)}.homework-assignment-card{gap:var(--space-4);grid-template-columns:minmax(0,1fr)}.homework-object-actions,.homework-object-actions .fui-Button{width:100%}.homework-row-actions{min-width:calc(var(--homework-row-actions-width) - var(--space-6))}.summary-strip{overflow-x:auto}.summary-strip>div{min-width:120px}.filter-bar,.table-toolbar{flex-direction:column;align-items:stretch}.filter-bar .fui-Dropdown,.filter-bar .fui-Input,.table-toolbar .fui-Input,.table-toolbar .fui-Dropdown{width:100%}.result-count{margin-left:0}.resource-form,.operation-form-grid{grid-template-columns:minmax(0,1fr)}.routine-schedule-row{grid-template-columns:var(--space-8) minmax(0, 1fr)}.routine-schedule-row>:not(.routine-schedule-order){grid-column:2;width:100%}.bulk-form-fields{grid-template-columns:minmax(0,1fr)}.bulk-form-fields .fui-Field:first-child,.bulk-form-fields .fui-Field:last-child{grid-column:auto}.feedback-form,.notification-form,.notice-detail-list,.feedback-detail-meta,.diagnostic-grid,.resource-detail-grid{grid-template-columns:minmax(0,1fr)}.feedback-center-header{padding:0 var(--space-4)}.feedback-center-brand span{display:none}.audit-entry-detail{grid-template-columns:minmax(0,1fr)}.audit-entry-detail .audit-entry-wide{grid-column:auto}.feedback-center-main{padding:var(--space-4)}.settings-panel-header,.pairing-code-row{flex-direction:column;grid-template-columns:minmax(0,1fr);align-items:stretch}.settings-panel-header .page-actions,.settings-panel-header .fui-Field{width:100%}.weekday-grid,.time-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-wide{grid-column:auto}.resource-form-section{grid-column:1/-1}.resource-form-section-grid{grid-template-columns:minmax(0,1fr)}.resource-form-section-grid .fui-Field:has(textarea){grid-column:auto}.feedback-detail-meta>div,.feedback-detail-meta>div:nth-child(3n),.feedback-detail-meta>div:nth-last-child(-n+3){border-right:0;border-bottom:var(--border-width) solid var(--color-neutral-200)}.feedback-detail-meta>div:last-child{border-bottom:0}.feedback-description-list>div{gap:var(--space-1);grid-template-columns:minmax(0,1fr)}.score-overview,.subject-score-list{grid-template-columns:minmax(0,1fr)}.score-overview>div{min-height:var(--metric-min-height);border-right:0;border-bottom:var(--border-width) solid var(--color-neutral-200)}.score-overview>div:last-child{border-bottom:0}.submission-list article,.submission-list dl{grid-template-columns:minmax(0,1fr)}:is(.resource-form .fui-Field:has(textarea),.operation-form-grid .fui-Field:has(textarea),.resource-form .inline-error){grid-column:auto}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.student-focus-overview{grid-template-columns:minmax(0,1fr)}.top-weak-subjects{padding-top:var(--space-3);border-top:var(--border-width) solid var(--color-neutral-200);border-left:0;padding-left:0}.subject-quality-row{grid-template-columns:var(--space-12) minmax(var(--space-12), 1fr) calc(var(--space-16) + var(--space-8));padding:var(--space-1) 0;grid-template-rows:repeat(2,auto)}.subject-quality-subject{grid-area:1/1/span 2}.subject-quality-row>.quality-meter{grid-area:1/2}.subject-quality-rate{grid-area:1/3}.subject-quality-counts{grid-area:2/2;justify-content:flex-start}.subject-quality-delta{grid-area:2/3}.issue-matrix{grid-template-columns:repeat(5,128px);overflow-x:auto}:is(.rank-list article,.rank-list article:has(>span:first-child)){grid-template-columns:minmax(48px, auto) minmax(0, 1fr) var(--space-8)}.rank-list article:has(>span:first-child){grid-template-columns:var(--space-6) minmax(48px, auto) minmax(0, 1fr) var(--space-8)}}@media (width<=640px){.teacher-onboarding-panel,.teacher-onboarding-panel.is-centered{right:var(--space-4);bottom:var(--space-4);left:var(--space-4);width:auto;top:auto;transform:none}.teacher-onboarding-error{flex-direction:column;align-items:stretch}.teacher-onboarding-error-actions{justify-content:flex-end}.featured-app-grid{grid-template-columns:minmax(0,1fr)}.dashboard-app-grid{display:flex}.dashboard-app-grid .featured-app-card{flex-basis:calc(var(--space-16) * 4)}.return-dashboard-page .metric-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=768px){.fui-Input input,.fui-Select select,.fui-Textarea textarea,.fui-Combobox input{font-size:16px!important}}@media (pointer:coarse){.fui-Input input,.fui-Select select,.fui-Textarea textarea,.fui-Combobox input,input,select,textarea{font-size:16px!important}}@media (hover:none){.featured-app-card.has-preference-actions .featured-app-target{padding-bottom:calc(var(--space-8) + var(--space-3))}.featured-app-card .featured-app-preference-actions{opacity:1;pointer-events:auto;visibility:visible;transform:translateY(0)}.top-navigation-link:hover{color:var(--color-neutral-700);background:0 0}.top-navigation-link.active:hover{color:var(--color-primary)}.mobile-primary-link:hover{color:var(--color-neutral-700);background:0 0}.mobile-primary-link.active:hover{color:var(--color-primary);background:var(--color-primary-soft)}.nav-link:hover{color:var(--color-neutral-700);background:0 0}.nav-link:hover>svg:first-child{transform:none}.nav-link.active:hover{color:var(--color-primary);background:var(--color-primary-soft)}.data-table tbody tr:hover,.schedule-table tbody tr:hover,.homework-assignment-card:hover,.wrong-book-card:hover{background:0 0}.featured-app-card:hover{border-color:var(--color-neutral-200);background:var(--color-neutral-0);box-shadow:none}.featured-app-card:hover .featured-app-arrow,.featured-app-card:hover .featured-app-icon{transform:none}.floating-feedback:hover{color:var(--color-primary-hover);background:var(--color-neutral-0);box-shadow:0 2px 8px #08304929}.file-input:enabled:hover::file-selector-button{border-color:var(--color-neutral-300);background:var(--color-neutral-50)}.audit-entry-raw summary:hover{color:var(--color-primary);text-decoration:none}}.page-subtitle{margin-top:var(--space-1);max-width:68ch;color:var(--color-neutral-700);font-size:var(--text-sm)}.adjust-steps{gap:var(--space-4);flex-wrap:wrap;display:flex}.adjust-workspace{gap:var(--space-4);min-width:0;display:grid}.adjust-workspace.has-result{grid-template-columns:minmax(0, 1fr) var(--adjust-result-width);align-items:start}.adjust-schedule-panel{min-width:0}.adjust-schedule-filters{gap:var(--space-2);margin-bottom:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.adjust-schedule-filters .fui-Input{min-width:0}.adjust-table-scroll{max-height:var(--adjust-scroll-height);overflow:auto}.adjust-master-table{table-layout:fixed;width:max-content;min-width:100%}.adjust-master-table .adjust-class-heading,.adjust-master-table td{width:var(--adjust-class-width);min-width:var(--adjust-class-width);text-align:center}.adjust-master-table thead th{z-index:var(--layer-sticky-row);position:sticky;top:0}.adjust-master-table .adjust-weekday-heading,.adjust-master-table .adjust-weekday{z-index:var(--layer-sticky-column);width:var(--adjust-weekday-width);min-width:var(--adjust-weekday-width);color:var(--color-neutral-0);background:var(--color-primary);text-align:center;vertical-align:middle;position:sticky;left:0}.adjust-master-table .adjust-period-heading,.adjust-master-table .adjust-period{left:var(--adjust-weekday-width);z-index:var(--layer-sticky-column);width:var(--adjust-period-width);min-width:var(--adjust-period-width);color:var(--color-primary);background:var(--color-neutral-100);box-shadow:var(--border-width) 0 0 var(--color-neutral-300);text-align:center;vertical-align:middle;position:sticky}.adjust-master-table .adjust-weekday-heading,.adjust-master-table .adjust-period-heading{z-index:var(--layer-sticky-corner)}.adjust-master-table td{height:auto;padding:var(--space-1);vertical-align:middle}.adjust-master-table .empty-cell{min-height:var(--space-16)}.adjust-master-lesson{gap:var(--space-1);width:100%;padding:var(--space-1) var(--space-2);border:0;border-left:calc(var(--border-width) * 3) solid var(--color-primary);border-radius:var(--radius-sm);color:var(--color-neutral-700);font:inherit;text-align:center;background:0 0;line-height:1.25;display:grid}button.adjust-master-lesson{min-height:var(--touch-target-min);cursor:pointer}button.adjust-master-lesson:hover{background:var(--color-primary-soft)}.adjust-master-lesson[aria-pressed=true]{background:var(--color-primary-soft);box-shadow:inset 0 0 0 var(--border-width) var(--color-primary)}.adjust-master-lesson strong,.adjust-master-lesson span,.adjust-master-lesson small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.adjust-master-lesson strong{color:var(--color-primary);font-size:var(--text-sm);font-weight:600}.adjust-master-lesson span,.adjust-master-lesson small{color:var(--color-neutral-500);font-size:var(--text-xs)}.adjust-result-pane{top:calc(var(--header-height) + var(--context-height) + var(--space-4));max-height:var(--adjust-scroll-height);padding:var(--space-4);position:sticky;overflow:auto}.adjust-step{align-items:baseline;gap:var(--space-2);color:var(--color-neutral-500);font-size:var(--text-sm);display:flex}.adjust-step strong{width:var(--space-6);height:var(--space-6);background:var(--color-neutral-200);color:var(--color-neutral-700);font-size:var(--text-xs);border-radius:50%;place-items:center;display:grid}.adjust-step.is-active{color:var(--color-neutral-900);font-weight:600}.adjust-step.is-active strong{background:var(--color-primary);color:var(--color-neutral-0)}.adjust-step.is-done strong{background:var(--color-success);color:var(--color-neutral-0)}.adjust-step em{color:var(--color-neutral-700);font-style:normal}.adjust-grid td.is-selectable{background:var(--color-primary-soft)}.adjust-grid td.is-source{outline:var(--focus-ring-width) solid var(--color-primary);outline-offset:-2px}.adjust-grid td.is-target{outline:var(--focus-ring-width) solid var(--color-secondary);outline-offset:-2px}.adjust-target-button{min-width:var(--touch-target-min);min-height:var(--touch-target-min);margin-top:var(--space-2)}.lesson-move-mark{margin-top:var(--space-1);color:var(--color-secondary);font-weight:600;display:block}.lesson-cell.is-moved-from{opacity:.72}.lesson-cell.is-moved-to,.adjust-master-lesson.is-moved-to{box-shadow:inset 0 0 0 1px var(--color-secondary)}.adjust-master-lesson.is-moved-from{opacity:.72}.adjust-plans h2{font-size:var(--text-base)}.adjust-plan{padding:var(--space-3);border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-md);margin-top:var(--space-3)}.adjust-plan.is-active{border-color:var(--color-primary);background:var(--color-primary-soft)}.adjust-move-list{gap:var(--space-2);margin:var(--space-2) 0 0;padding-left:var(--space-6);display:grid}.adjust-move-list li{align-items:baseline;gap:var(--space-2);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.adjust-move-list span{color:var(--color-neutral-700)}.adjust-move-list em{color:var(--color-primary);font-style:normal;font-weight:600}.adjust-warnings{margin:var(--space-2) 0 0;padding-left:var(--space-6);color:var(--color-warning);font-size:var(--text-xs)}.adjust-actions{gap:var(--space-2);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.adjust-actions .fui-Button,.adjust-result-pane>.empty-state>.fui-Button,.operation-dialog .fui-DialogActions .fui-Button{min-width:var(--touch-target-min);min-height:var(--touch-target-min)}.adjust-review-fields{gap:var(--space-3);margin-top:var(--space-4);display:grid}.adjust-review-fields .fui-Input{width:100%}.adjust-submit-summary{gap:var(--space-3);margin:0 0 var(--space-3);padding:var(--space-3);border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-md);background:var(--color-neutral-50);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.adjust-submit-summary>div{gap:var(--space-1);min-width:0;display:grid}.adjust-submit-summary dt{color:var(--color-neutral-500);font-size:var(--text-xs)}.adjust-submit-summary dd{color:var(--color-neutral-900);font-size:var(--text-sm);overflow-wrap:anywhere;margin:0;font-weight:600}.schedule-adjust-submit-dialog .fui-DialogActions{z-index:var(--layer-sticky-row);padding-top:var(--space-2);background:var(--color-neutral-0);position:sticky;bottom:0}.adjust-conflict-list{gap:var(--space-2);margin:var(--space-3) 0;padding-left:var(--space-6);color:var(--color-neutral-700);font-size:var(--text-sm);display:grid}.adjust-conflict-list li{gap:var(--space-1);display:grid}.adjust-conflict-list strong{color:var(--color-error)}.adjust-permanent-hint{padding:var(--space-3);border-radius:var(--radius-sm);background:var(--color-warning-soft);color:var(--color-warning);font-size:var(--text-sm)}.boarding-source-tools,.boarding-source-controls{align-items:center;gap:var(--space-2);min-width:0;display:flex}.boarding-mobile-sort,.boarding-mobile-list{display:none}.resource-refresh-state{padding:0 var(--space-3) var(--space-2);color:var(--color-neutral-500);font-size:var(--text-xs);text-align:right}.boarding-record-card{border:var(--border-width) solid var(--color-neutral-200);border-radius:var(--radius-sm);background:var(--color-neutral-0);min-width:0;overflow:hidden}.boarding-record-card.is-critical{border-left-width:var(--space-1);border-left-color:var(--color-error)}.boarding-record-card.is-warning{border-left-width:var(--space-1);border-left-color:var(--color-warning)}.boarding-record-header{justify-content:space-between;align-items:center;gap:var(--space-3);min-width:0;padding:var(--space-3);border-bottom:var(--border-width) solid var(--color-neutral-200);background:var(--color-neutral-25);display:flex}.boarding-record-heading{gap:var(--space-1);min-width:0;display:grid}button.boarding-record-heading{color:inherit;cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;padding:0}.boarding-record-heading small{color:var(--color-neutral-500);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.boarding-record-heading strong{color:var(--color-neutral-900);font-size:var(--text-base);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.boarding-record-count{color:var(--color-primary);font-size:var(--text-sm);font-variant-numeric:tabular-nums;flex:none;font-weight:600}.boarding-record-details{grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.boarding-record-details>div{min-width:0;padding:var(--space-2) var(--space-3);border-right:var(--border-width) solid var(--color-neutral-100);border-bottom:var(--border-width) solid var(--color-neutral-100)}.boarding-record-details>div:nth-child(2n){border-right:0}.boarding-record-details>div:nth-last-child(-n+2){border-bottom:0}.boarding-record-details>.boarding-record-wide{border-right:0;grid-column:1/-1}.boarding-record-details dt{color:var(--color-neutral-500);font-size:var(--text-xs)}.boarding-record-details dd{margin:var(--space-1) 0 0;overflow-wrap:anywhere;color:var(--color-neutral-900);font-size:var(--text-sm);line-height:1.5}.boarding-score-details dd{font-variant-numeric:tabular-nums}.boarding-record-actions{justify-content:flex-end;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-top:var(--border-width) solid var(--color-neutral-200);background:var(--color-neutral-25);display:flex}@media (width<=900px){.boarding-resource-page .resource-analysis-filter,.boarding-daily-page .boarding-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;display:grid}.boarding-resource-page .resource-analysis-filter>.fui-Input:first-child,.boarding-daily-page .boarding-filter-search,.boarding-resource-page .resource-analysis-filter>.result-count,.boarding-daily-page .boarding-filter-count{grid-column:1/-1}.boarding-resource-page .resource-analysis-filter .fui-Input,.boarding-resource-page .resource-analysis-filter .fui-Dropdown,.boarding-daily-page .boarding-filter-grid .fui-Input,.boarding-daily-page .boarding-filter-grid .fui-Dropdown{width:100%;min-width:0;min-height:calc(var(--space-8) + var(--space-3))}.boarding-resource-page .summary-strip,.boarding-daily-page .summary-strip{grid-template-columns:repeat(4,minmax(0,1fr));display:grid;overflow:hidden}.boarding-resource-page .summary-strip>div,.boarding-daily-page .summary-strip>div{gap:var(--space-1);min-width:0;padding:var(--space-2);display:grid}.boarding-resource-page .summary-strip span,.boarding-daily-page .summary-strip span{font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.boarding-resource-page .summary-strip strong,.boarding-daily-page .summary-strip strong{font-size:var(--text-base)}.boarding-resource-page .analytics-overview-grid,.boarding-daily-page .analytics-overview-grid,.dorm-analytics-page .analytics-grid{gap:var(--space-2);overscroll-behavior-x:contain;scroll-snap-type:x proximity;display:flex;overflow-x:auto}.boarding-resource-page .analytics-overview-grid>.dashboard-panel,.boarding-daily-page .analytics-overview-grid>.dashboard-panel,.dorm-analytics-page .analytics-grid>.dashboard-panel{flex:0 0 calc(100% - var(--space-8));scroll-snap-align:start}.dorm-analytics-page .metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dorm-analytics-page .metric-item:not(:has(.metric-meta,.metric-sparkline,.metric-sparkline-empty)){min-height:var(--space-16);padding:var(--space-2)}.dorm-analytics-page .metric-item:not(:has(.metric-meta,.metric-sparkline,.metric-sparkline-empty))>div{gap:var(--space-1);grid-template-columns:minmax(0,1fr)}.dorm-analytics-page .metric-item:not(:has(.metric-meta,.metric-sparkline,.metric-sparkline-empty))>div>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.boarding-source-header{padding:var(--space-2) var(--space-3);flex-direction:column;align-items:stretch}.boarding-source-controls{flex-direction:column;align-items:stretch;width:100%}.boarding-source-controls .fui-TabList{width:100%;overflow-x:auto}.boarding-source-controls .fui-Tab,.boarding-record-actions .fui-Button,button.boarding-record-heading{min-height:calc(var(--space-8) + var(--space-3))}.boarding-resource-page .boarding-mobile-sort{width:calc(var(--space-16) * 2 + var(--space-8));min-width:0;max-width:calc(var(--space-16) * 2 + var(--space-8));flex:0 1 calc(var(--space-16) * 2 + var(--space-8));min-height:calc(var(--space-8) + var(--space-3));display:inline-flex}.boarding-daily-page .boarding-mobile-sort,.dorm-analytics-page .boarding-mobile-sort{min-width:0;min-height:calc(var(--space-8) + var(--space-3));display:inline-flex}.boarding-source-controls .boarding-mobile-sort{width:100%}.boarding-desktop-table{display:none}.boarding-mobile-list{gap:var(--space-3);padding:var(--space-3);background:var(--color-neutral-25);display:grid}.boarding-mobile-state{min-height:var(--space-16);color:var(--color-neutral-500);font-size:var(--text-sm);place-items:center;display:grid}.fui-DialogSurface.boarding-dialog-surface{border-radius:0;width:100dvw;max-width:none;height:100dvh;max-height:100dvh}.boarding-dialog-surface .fui-DialogBody{min-height:0}.boarding-dialog-surface .fui-DialogContent{overscroll-behavior-y:contain;min-height:0;overflow-y:auto}.boarding-dialog-surface .fui-DialogActions{padding-bottom:max(var(--space-4), env(safe-area-inset-bottom));background:var(--color-neutral-0)}.boarding-dialog-surface .fui-DialogActions .fui-Button{min-height:calc(var(--space-8) + var(--space-3))}}@media (width<=768px){.return-filter-bar{grid-template-columns:minmax(0,1fr)}.return-change-count-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.return-change-balance{flex-direction:column;align-items:flex-start}.adjust-workspace.has-result{grid-template-columns:minmax(0,1fr)}.adjust-result-pane{order:-1;max-height:none;position:static}.adjust-schedule-filters{grid-template-columns:minmax(0,1fr)}.adjust-steps{gap:var(--space-2);flex-direction:column}.adjust-move-list li{gap:var(--space-1)}.adjust-submit-summary{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
