:root{--brand-blue:#2768f4;--brand-violet:#7047f0;--bg:#f7f9ff;--panel:oklch(1 0 0);--panel-2:#f0f4ff;--line:#dfe6f5;--line-strong:#cad5eb;--ink:#172033;--ink-2:#4d5a70;--ink-3:#667389;--accent:var(--brand-blue);--accent-strong:#1d56d8;--accent-pressed:#1848b8;--accent-2:var(--brand-violet);--accent-soft:#eef4ff;--accent-soft-2:#f3f0ff;--accent-soft-line:#cdd9ff;--ring:rgb(39 104 244/0.22);--ok:oklch(0.44 0.09 160);--ok-soft:oklch(0.955 0.028 160);--ok-line:oklch(0.87 0.055 160);--warn:oklch(0.46 0.1 70);--warn-soft:oklch(0.96 0.035 85);--warn-line:oklch(0.87 0.07 85);--danger:oklch(0.46 0.14 25);--danger-soft:oklch(0.96 0.02 20);--danger-line:oklch(0.88 0.05 20);--shadow-sm:0 1px 2px rgb(23 32 51/0.05);--shadow-md:0 1px 2px rgb(23 32 51/0.05),0 12px 28px rgb(39 104 244/0.08);--shadow-lg:0 24px 56px rgb(39 104 244/0.16);--r-sm:6px;--r-md:8px;--r-lg:10px;--control-h:38px;--control-h-compact:30px;--control-px:14px;--control-px-compact:10px;--field-h:40px;--z-nav:40;--z-overlay:50;--z-drawer:60;--font:Inter,"SF Pro Text",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,ui-sans-serif,sans-serif;--font-mono:ui-monospace,"SF Mono",SFMono-Regular,Menlo,Consolas,monospace;--text-2xs:0.6875rem;--text-xs:0.75rem;--text-sm:0.8125rem;--text-base:0.875rem;--text-md:0.9375rem;--text-lg:1.0625rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--fw-regular:400;--fw-medium:500;--fw-semi:600;--fw-bold:650;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--sp-12:48px;--ease-out-quart:cubic-bezier(0.25,1,0.5,1);--ease-out-quint:cubic-bezier(0.22,1,0.36,1);--dur-fast:120ms;--dur:180ms;--dur-slow:260ms}*{box-sizing:border-box}html{color-scheme:light}[role=tab],a,button,label,summary{touch-action:manipulation;-webkit-tap-highlight-color:transparent}body{margin:0;background:linear-gradient(180deg,#fbfdff 0,var(--bg) 42%,#f8f5ff 100%);color:var(--ink);font-family:var(--font);font-size:var(--text-md);line-height:1.5;-webkit-font-smoothing:antialiased}body.mobile-menu-open{overflow:hidden;touch-action:none}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}h1,h2,h3,h4{text-wrap:balance}h1{font-size:var(--text-2xl);letter-spacing:-.015em;line-height:1.25}h1,h2{font-weight:var(--fw-bold)}h2{font-size:var(--text-lg);letter-spacing:-.01em;line-height:1.3}h3{font-size:var(--text-md);line-height:1.35}h3,h4{font-weight:var(--fw-semi)}h4{font-size:var(--text-base);line-height:1.4}p{margin:0 0 8px}p:last-child{margin-bottom:0}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::selection{background:var(--accent-soft-line)}.srOnly{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.brand{align-items:center;gap:9px;font-weight:650;letter-spacing:-.01em;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.brand,.mark{display:inline-flex}.mark{flex:none;width:30px;height:30px;color:var(--accent)}.mark svg{display:block;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.uiBtn{--uiBtn-spinner:var(--ink-2);display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);min-height:var(--control-h);padding:0 var(--control-px);border:1px solid transparent;border-radius:var(--r-md);font-size:var(--text-base);font-weight:var(--fw-semi);white-space:nowrap;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out-quart),border-color var(--dur-fast) var(--ease-out-quart),color var(--dur-fast) var(--ease-out-quart),box-shadow var(--dur-fast) var(--ease-out-quart),transform var(--dur-fast) var(--ease-out-quart)}.uiBtn--compact{min-height:var(--control-h-compact);padding:0 var(--control-px-compact);font-size:var(--text-sm)}.uiBtn:disabled,.uiBtn[aria-disabled=true]{cursor:not-allowed;opacity:.5;box-shadow:none;transform:none}.uiBtn--primary{--uiBtn-spinner:#fff;border-color:transparent;color:#fff;background:linear-gradient(135deg,var(--brand-blue),var(--brand-violet));box-shadow:0 1px 2px rgb(23 32 51/.12),0 6px 16px rgb(39 104 244/.16)}.uiBtn--primary:hover:not(:disabled){box-shadow:0 1px 2px rgb(23 32 51/.14),0 8px 20px rgb(112 71 240/.22)}.uiBtn--primary:active:not(:disabled){transform:translateY(1px);box-shadow:0 1px 2px rgb(23 32 51/.12)}.uiBtn--secondary{border-color:var(--line-strong);color:var(--ink-2);background:var(--panel);box-shadow:var(--shadow-sm)}.uiBtn--secondary:hover:not(:disabled){color:var(--accent-strong);border-color:var(--accent-soft-line);background:var(--accent-soft)}.uiBtn--secondary:active:not(:disabled){background:var(--accent-soft-2);transform:translateY(1px)}.uiBtn--ghost{border-color:transparent;color:var(--ink-2);background:transparent;font-weight:var(--fw-medium)}.uiBtn--ghost:hover:not(:disabled){color:var(--ink);background:var(--panel-2)}.uiBtn--ghost:active:not(:disabled){background:var(--line)}.uiBtn--danger{--uiBtn-spinner:var(--danger);border-color:var(--danger-line);color:var(--danger);background:var(--danger-soft)}.uiBtn--danger:hover:not(:disabled){border-color:var(--danger);background:oklch(.93 .04 20)}.uiBtn--danger:active:not(:disabled){transform:translateY(1px)}.uiBtn.isLoading{position:relative;cursor:progress;color:transparent}.uiBtn.isLoading:after{content:"";position:absolute;width:15px;height:15px;border:2px solid color-mix(in srgb,var(--uiBtn-spinner) 35%,transparent);border-top-color:var(--uiBtn-spinner);border-radius:999px;animation:spin .6s linear infinite}@media (prefers-reduced-motion:reduce){.uiBtn.isLoading:after{animation:none;border-top-color:var(--uiBtn-spinner);opacity:.7}}.uiIconBtn{width:var(--control-h);padding:0}.uiIconBtn.uiBtn--compact{width:var(--control-h-compact)}.uiIconBtn svg{display:block}@keyframes spin{to{transform:rotate(1turn)}}.uiAction{display:inline-flex;align-items:center;gap:var(--sp-1);min-height:var(--control-h-compact);padding:3px 9px;border:1px solid transparent;border-radius:var(--r-sm);background:transparent;color:var(--accent-strong);font:inherit;font-size:var(--text-sm);font-weight:var(--fw-semi);white-space:nowrap;text-decoration:none;cursor:pointer;transition:color var(--dur-fast) var(--ease-out-quart),border-color var(--dur-fast) var(--ease-out-quart),background-color var(--dur-fast) var(--ease-out-quart)}.uiAction:hover{color:var(--accent-pressed);background:var(--accent-soft)}.uiAction:active{background:var(--accent-soft-2)}.uiAction:disabled{opacity:.45;cursor:not-allowed;color:var(--ink-2);background:transparent}.uiAction--danger{color:var(--danger)}.uiAction--danger:hover{color:var(--danger);border-color:var(--danger-line);background:var(--danger-soft)}.uiAction--danger:active{background:oklch(.93 .04 20)}@media (pointer:coarse){.uiAction{min-height:36px;padding-block:7px}}.uiActions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2)}.uiActions:not(:first-child){margin-top:var(--sp-2)}.uiActions--dense{gap:2px}.uiActions--dense:not(:first-child){margin-top:0}.uiActions--end{justify-content:flex-end}.menuButton{display:none;position:relative;width:36px;height:36px;border:0;border-radius:var(--r-sm);background:transparent;color:var(--ink);cursor:pointer}.menuButton span{position:absolute;left:9px;right:9px;height:1.5px;border-radius:999px;background:currentColor;transition:transform .2s ease-out,top .2s ease-out}.menuButton span:first-child{top:14px}.menuButton span:last-child{top:21px}.menuButton:hover{background:var(--panel-2)}.pageHead{margin-bottom:28px}.pageContext{margin:0 0 4px;color:var(--ink-3);font-size:.8125rem;font-weight:500}.pageHead h1{margin:0;font-size:1.5rem;font-weight:650;letter-spacing:-.015em;line-height:1.25}.pageHead .lede{margin:6px 0 0;color:var(--ink-2);max-width:65ch}.grid{display:grid;grid-gap:var(--sp-4);gap:var(--sp-4);margin-bottom:var(--sp-4);align-items:start}.two{grid-template-columns:repeat(2,minmax(0,1fr))}.three{grid-template-columns:repeat(3,minmax(0,1fr))}.four{grid-template-columns:repeat(4,minmax(0,1fr))}.authCard,.card,.empty,.skeleton,.table{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.card{padding:20px}.soft{background:linear-gradient(135deg,var(--accent-soft),var(--accent-soft-2));border-color:var(--accent-soft-line)}.card h2{margin:0 0 12px;font-size:1rem;font-weight:600}.card h3{margin:12px 0 6px;font-size:.9375rem;font-weight:600}.card h3:first-child{margin-top:0}.cardTag{display:inline-flex;align-items:center;margin:0 0 10px;padding:2px 8px;border-radius:999px;background:var(--panel-2);border:1px solid var(--line);color:var(--ink-2);font-size:.75rem;font-weight:600;text-transform:capitalize}.soft .cardTag{background:var(--panel)}.meta{color:var(--ink-2);font-size:var(--text-sm)}.grid.stats{gap:0;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);overflow:hidden;margin-bottom:24px}.widget{padding:16px 20px;-webkit-border-start:1px solid var(--line);border-inline-start:1px solid var(--line)}.widget:first-child{-webkit-border-start:0;border-inline-start:0}.widget .widgetLabel{display:block;margin:0 0 2px;color:var(--ink-2);font-size:.8125rem;font-weight:500}.widget strong{display:block;font-size:1.625rem;font-weight:650;letter-spacing:-.01em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.widget.soft{background:linear-gradient(135deg,var(--accent-soft),var(--accent-soft-2))}.widget.soft strong{color:var(--accent-strong)}ul{display:block;margin:0;padding:0;list-style:none}li{padding:10px 0;border-bottom:1px solid var(--line)}li:first-child{padding-top:2px}li:last-child{padding-bottom:2px;border-bottom:0}li b{font-weight:600}li span:not([class]){display:block;margin-top:2px;color:var(--ink-2);font-size:.8125rem}li.row{display:flex;align-items:center;justify-content:space-between;gap:12px}li.row>div{min-width:0}.table{padding:0;overflow:auto}table{width:100%;min-width:720px;border-collapse:collapse}td,th{padding:12px 16px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{background:var(--panel-2);color:var(--ink-2);font-size:.8125rem;font-weight:600;white-space:nowrap}td{font-size:.875rem}td b{font-weight:600;font-size:.9375rem}tbody tr:last-child td{border-bottom:0}td input:not([type=checkbox]):not([type=radio]),td select{width:auto;max-width:100%;min-width:150px;min-height:34px;font-size:var(--text-base)}tbody tr{transition:background-color .15s ease-out}tbody tr:hover{background:rgb(39 104 244/.035)}.badge{display:inline-flex;align-items:center;margin:0;padding:2px 8px;border-radius:999px;background:var(--panel-2);border:1px solid var(--line);color:var(--ink-2);font-size:.75rem;font-weight:600;text-transform:capitalize;white-space:nowrap}.badge.cancelled,.badge.hidden,.badge.inactive,.badge.late,.badge.rejected,.badge.removed{background:var(--danger-soft);border-color:var(--danger-line);color:var(--danger)}.badge.changed,.badge.draft,.badge.open,.badge.pending,.badge.reserved,.badge.returned,.badge.unverified{background:var(--warn-soft);border-color:var(--warn-line);color:var(--warn)}.badge.active,.badge.available,.badge.enabled,.badge.graded,.badge.published,.badge.resolved,.badge.scheduled,.badge.submitted,.badge.verified{background:var(--ok-soft);border-color:var(--ok-line);color:var(--ok)}.badge.accent{background:var(--accent-soft);border-color:var(--accent-soft-line);color:var(--accent-strong)}.uiSegmented{display:inline-flex;gap:2px;margin-bottom:var(--sp-5);padding:3px;background:var(--panel-2);border:1px solid var(--line);border-radius:var(--r-md)}.uiSegmentedItem{display:inline-flex;align-items:center;justify-content:center;min-height:var(--control-h-compact);padding:4px 14px;border:0;border-radius:var(--r-sm);background:transparent;color:var(--ink-2);font:inherit;font-size:var(--text-base);font-weight:var(--fw-medium);white-space:nowrap;cursor:pointer;transition:color var(--dur-fast) var(--ease-out-quart),background-color var(--dur-fast) var(--ease-out-quart),box-shadow var(--dur-fast) var(--ease-out-quart)}.uiSegmentedItem:hover{color:var(--ink)}.uiSegmentedItem.isSelected{color:var(--ink);background:var(--panel);box-shadow:var(--shadow-sm);font-weight:var(--fw-semi)}.uiTabline{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);margin-bottom:var(--sp-5);border-bottom:1px solid var(--line)}.uiTablineList{display:flex;gap:var(--sp-6);min-width:0;-webkit-padding-end:var(--sp-2);padding-inline-end:var(--sp-2);overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.uiTablineList::-webkit-scrollbar{display:none}.uiTablineItem{position:relative;display:inline-flex;align-items:center;min-height:var(--control-h);padding:6px 1px 11px;border:0;border-radius:0;background:transparent;color:var(--ink-2);font:inherit;font-size:var(--text-base);font-weight:var(--fw-semi);white-space:nowrap;cursor:pointer;transition:color var(--dur-fast) var(--ease-out-quart)}.uiTablineItem:after{content:"";position:absolute;right:0;bottom:-1px;left:0;height:2px;background:var(--accent);transform:scaleX(0);transition:transform var(--dur-fast) var(--ease-out-quart)}.uiTablineItem:hover{color:var(--ink);background:transparent}.uiTablineItem.isSelected{color:var(--accent-strong);background:transparent}.uiTablineItem.isSelected:after{transform:scaleX(1)}[role=tabpanel]:focus{outline:none}[role=tabpanel]:focus-visible{outline:2px solid var(--accent);outline-offset:4px}label{display:grid;grid-gap:6px;gap:6px;color:var(--ink-2);font-size:.8125rem;font-weight:500}input,select,textarea{width:100%;min-height:var(--field-h);padding:9px 12px;border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--panel);color:var(--ink);font-size:.9375rem;transition:border-color .15s ease-out,box-shadow .15s ease-out}input::placeholder,textarea::placeholder{color:var(--ink-3)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--line-strong);box-shadow:none}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:34px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 4.5 6 8l3.5-3.5' fill='none' stroke='%234d5a70' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}textarea{min-height:92px;resize:vertical}.uiFieldHint{color:var(--ink-3);font-size:var(--text-xs);font-weight:var(--fw-regular)}.uiFieldError{color:var(--danger);font-size:var(--text-xs);font-weight:var(--fw-medium)}.uiField.isInvalid>input,.uiField.isInvalid>select,.uiField.isInvalid>textarea{border-color:var(--danger)}.uiField.isInvalid>input:focus,.uiField.isInvalid>select:focus,.uiField.isInvalid>textarea:focus{box-shadow:none}.alert{display:block;padding:10px 12px;border-radius:var(--r-md);border:1px solid var(--danger-line);font-size:.875rem;font-weight:500}.alert,.alert--danger{background:var(--danger-soft);color:var(--danger)}.alert--danger{border-color:var(--danger-line)}.alert--ok{background:var(--ok-soft);border-color:var(--ok-line);color:var(--ok)}.alert--warn{background:var(--warn-soft);border-color:var(--warn-line);color:var(--warn)}.alert--info{background:var(--accent-soft);border-color:var(--accent-soft-line);color:var(--accent-strong)}.alert a{color:inherit;font-weight:var(--fw-semi);text-decoration:underline;text-underline-offset:3px}.helper{margin:0;font-size:.875rem}.empty,.helper{color:var(--ink-2)}.empty{display:grid;justify-items:center;grid-gap:10px;gap:10px;padding:44px 24px;text-align:center}.empty svg{color:var(--ink-3)}.empty p{margin:0;max-width:44ch}.empty.isError svg{color:var(--danger)}.emptyTitle{color:var(--ink);font-size:var(--text-md);font-weight:var(--fw-semi)}.empty .emptyTitle+p{margin-top:-4px}.emptyAction{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--sp-2);margin-top:var(--sp-1)}.uploadStatus{display:grid;grid-gap:6px;gap:6px;min-height:1.2em;margin:var(--sp-1) 0 0;color:var(--ink-2);font-size:var(--text-sm)}.uploadStatusText{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.uploadStatus.isOk{color:var(--ok);font-weight:var(--fw-medium)}.uploadStatus.isError{color:var(--danger);font-weight:var(--fw-medium)}.uploadTrack{height:4px;max-width:320px;overflow:hidden;border-radius:999px;background:var(--panel-2);border:1px solid var(--line)}.uploadFill{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--brand-blue),var(--brand-violet));transform-origin:left;transition:transform var(--dur) var(--ease-out-quart)}@media (prefers-reduced-motion:reduce){.uploadFill{transition:none}}.skeleton{display:grid;grid-gap:12px;gap:12px;padding:20px}.skeletonBar{height:12px;border-radius:999px;background:var(--panel-2);position:relative;overflow:hidden}.skeletonBar:after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,oklch(1 0 0/.7),transparent);animation:shimmer 1.4s ease-out infinite}@keyframes shimmer{to{transform:translateX(100%)}}.auth{min-height:100dvh;width:auto;margin:0;display:grid;place-items:center;padding:24px;background:linear-gradient(180deg,#fbfdff 0,var(--bg) 52%,#f8f5ff 100%)}.authCard{width:min(400px,100%);display:grid;grid-gap:14px;gap:14px;padding:32px 28px;box-shadow:var(--shadow-md);border-radius:12px}.authBrand{display:flex;align-items:center;gap:10px;margin-bottom:6px;font-weight:650;letter-spacing:-.01em}.authBrand .mark{width:36px;height:36px}.authApp{margin-left:auto;padding:2px 8px;border-radius:999px;background:var(--panel-2);border:1px solid var(--line);color:var(--ink-2);font-size:.75rem;font-weight:600}.authCard h1{margin:0;font-size:1.375rem;font-weight:650;letter-spacing:-.01em}.authLink{color:var(--accent);font-weight:600;font-size:.875rem;text-align:center}.authLink:hover{text-decoration:underline;text-underline-offset:3px}.lessonArticle{max-width:68ch}.lessonArticle .lessonSection{padding:20px 0 4px}.lessonArticle .lessonSection+.lessonSection{border-top:1px solid var(--line);margin-top:16px}.lessonArticle .lessonSection h2{margin:0 0 10px;font-size:1.0625rem;font-weight:650;letter-spacing:-.01em}.lessonArticle p{margin:0 0 12px;color:var(--ink);line-height:1.65;text-wrap:pretty}.lessonArticle a{color:var(--accent-strong);text-decoration:underline;text-underline-offset:3px}.lessonArticle a:hover{color:var(--accent-pressed)}.lessonChecklist,.lessonPoints,.lessonSteps{display:grid;grid-gap:8px;gap:8px;margin:0 0 12px}.lessonChecklist li,.lessonPoints li,.lessonSteps li{padding:0;border:0;line-height:1.55}.lessonPoints{padding-left:22px;list-style:disc}.lessonPoints li{display:list-item}.lessonPoints li::marker{color:var(--accent)}.lessonSteps{padding-left:26px;list-style:decimal}.lessonSteps li{display:list-item;padding-left:4px}.lessonSteps li::marker{color:var(--accent-strong);font-weight:650;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.lessonChecklist{padding:0}.lessonChecklist li{position:relative;padding-left:26px}.lessonChecklist li:before{content:"";position:absolute;top:4px;left:2px;width:12px;height:12px;border:1.5px solid var(--line-strong);border-radius:4px}.lessonNote{margin:16px 0;padding:12px 14px;border:1px solid var(--accent-soft-line);border-radius:var(--r-md);background:var(--accent-soft)}.lessonNote strong{display:block;margin-bottom:2px;font-size:.875rem}.lessonNote p{margin:0;color:var(--ink-2);font-size:.9063rem}.lessonResourceList{display:grid;grid-gap:8px;gap:8px}.lessonResourceList li{padding:0;border:0}.lessonResourceRow{display:flex;gap:12px;align-items:flex-start;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--panel);text-decoration:none!important;transition:border-color .15s ease-out,background-color .15s ease-out}a.lessonResourceRow:hover{border-color:var(--accent-soft-line);background:var(--accent-soft)}a.lessonResourceRow:active{background:var(--accent-soft-2)}.lessonResourceIcon{display:grid;place-items:center;width:32px;height:32px;flex-shrink:0;border-radius:var(--r-sm);background:var(--panel-2);color:var(--ink-2)}a.lessonResourceRow:hover .lessonResourceIcon{background:#fff;color:var(--accent-strong)}.lessonResourceBody{display:grid;grid-gap:1px;gap:1px;min-width:0}.lessonResourceTitle{color:var(--ink);font-weight:600;font-size:.9063rem}.lessonResourceExternal{margin-left:5px;color:var(--ink-3);font-size:.75rem}.lessonResourceDesc{color:var(--ink-2);font-size:.8125rem}.lessonResourceMeta{color:var(--ink-3);font-size:.75rem}@media (max-width:920px){.grid.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stats .widget{-webkit-border-start:0;border-inline-start:0}.stats .widget:nth-child(2n){-webkit-border-start:1px solid var(--line);border-inline-start:1px solid var(--line)}.stats .widget:nth-child(n+3){border-top:1px solid var(--line)}}@media (max-width:560px){.card{padding:16px}.grid{gap:12px}.widget{padding:14px 16px}.widget strong{font-size:1.375rem}.uiSegmented{display:flex;overflow-x:auto}.uiSegmentedItem{white-space:nowrap;flex:1 1;justify-content:center}.auth{padding:16px;place-items:start center}.authCard{margin-top:24px;padding:24px 20px}td,th{padding:10px 12px}}@media (prefers-reduced-motion:reduce){*,:after,:before{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.skeletonBar:after{display:none}}.countBadge{min-width:18px;height:18px;padding:0 5px;background:var(--accent);color:#fff;font-size:11px;line-height:1}.avatar,.countBadge{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;font-weight:600}.avatar{background:var(--accent-soft-2);color:var(--accent-2);flex:none}.avatar-sm{width:28px;height:28px;font-size:11px}.avatar-md{width:36px;height:36px;font-size:13px}.avatar-lg{width:44px;height:44px;font-size:15px}.loadMore{display:flex;justify-content:center;padding:12px 0}.postMark{display:inline-flex;align-items:center;-webkit-margin-end:6px;margin-inline-end:6px;color:var(--ink-3);vertical-align:-2px}.postMark svg{display:block}.postMark-pinned{color:var(--accent-2)}.postMark-locked{color:var(--ink-3)}.postMark-important{color:var(--danger)}.meta .postMark{margin-inline:4px 0}.chatStatus{display:inline-flex;align-items:center;gap:6px;font-size:var(--text-base);font-weight:var(--fw-medium)}.chatStatus.isLive{color:var(--ok)}.chatStatus.isReconnecting{color:var(--warn)}.chatStatus.isLocked{color:var(--ink-2)}.chatStatusDot{width:7px;height:7px;border-radius:999px;background:currentColor}.chatStatus.isReconnecting .chatStatusDot{animation:statusPulse 1.4s var(--ease-out-quart) infinite}@keyframes statusPulse{0%,to{opacity:1}50%{opacity:.25}}@media (prefers-reduced-motion:reduce){.chatStatus.isReconnecting .chatStatusDot{animation:none}}.sectionHead{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);margin:0 0 var(--sp-3)}.sectionTitle{margin:0;font-size:var(--text-lg);font-weight:var(--fw-bold);letter-spacing:-.01em}.sectionActions{display:flex;flex-wrap:wrap;gap:var(--sp-2);flex:none}.prewrap{white-space:pre-wrap;overflow-wrap:anywhere}.stack{display:flex;flex-direction:column;gap:var(--sp-3)}.cardLink{display:inline-flex;align-items:center;gap:var(--sp-1);color:var(--accent-strong);font-size:var(--text-base);font-weight:var(--fw-semi);border-radius:var(--r-sm)}.cardLink:hover{text-decoration:underline;text-underline-offset:3px}.checkLabel{display:inline-flex;align-items:center;gap:var(--sp-2);min-height:36px;color:var(--ink-2);font-size:var(--text-base);font-weight:var(--fw-medium);white-space:nowrap;cursor:pointer}.checkLabel input[type=checkbox]{width:16px;height:16px;min-height:16px;flex:0 0 16px;margin:0;padding:0;border-radius:4px;accent-color:var(--accent);cursor:pointer}.formCard{display:grid;grid-gap:var(--sp-3);gap:var(--sp-3);max-width:640px}.formRow{display:flex;gap:var(--sp-3);flex-wrap:wrap;align-items:flex-end}.formRow>*{flex:1 1;min-width:160px}.filterBar{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-bottom:var(--sp-4);padding:var(--sp-2);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--panel);box-shadow:var(--shadow-sm)}.filterBar input,.filterBar select,.filterInput{min-height:var(--control-h);font-size:var(--text-base)}.filterBar input:focus,.filterBar select:focus,.filterInput:focus{box-shadow:none}.filterBar label{gap:var(--sp-1)}.topicList{list-style:none;margin:0;padding:0}.topicRow{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-1);border-bottom:1px solid var(--line)}.topicMain{display:flex;flex-direction:column;gap:2px;flex:1 1;min-width:0}.topicTitle{font-weight:var(--fw-semi)}.tombstone{color:var(--ink-2);font-style:italic}.reportDetail{padding:var(--sp-3);background:var(--panel-2);border-radius:var(--r-md)}.reportContext{margin-bottom:var(--sp-3)}.progressTrack{height:6px;overflow:hidden;border:1px solid var(--line);border-radius:999px;background:var(--panel-2)}.progressFill{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--brand-blue),var(--brand-violet));transform-origin:left}.fileList{display:grid;grid-gap:var(--sp-1);gap:var(--sp-1);margin:0;padding:0;list-style:none}.fileList li{display:flex;align-items:center;gap:var(--sp-2);padding:0;border:0}.fileUpload{display:grid;grid-gap:var(--sp-1);gap:var(--sp-1);color:var(--ink-2);font-size:var(--text-sm);font-weight:var(--fw-semi)}.chatContext .targetMsg{padding:var(--sp-2) var(--sp-3);border:1px solid var(--warn-line);border-radius:var(--r-md);background:var(--warn-soft)}.chatPanel{display:flex;flex-direction:column;height:min(70vh,640px);overflow:hidden;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--panel);box-shadow:var(--shadow-sm)}.chatHistory{display:flex;flex:1 1;flex-direction:column;gap:var(--sp-2);padding:var(--sp-4);overflow-y:auto;overscroll-behavior:contain}.loadOlder{align-self:center;margin-bottom:var(--sp-2)}.chatMsg{display:flex;gap:var(--sp-2);align-items:flex-end;max-width:min(76%,560px)}.chatMsg.own{align-self:flex-end;flex-direction:row-reverse}.chatMsgBody{min-width:0;padding:var(--sp-2) var(--sp-3);border:1px solid var(--line);border-radius:var(--r-lg) var(--r-lg) var(--r-lg) var(--r-sm);background:var(--panel-2);font-size:var(--text-base);line-height:1.45;animation:msgIn var(--dur-slow) var(--ease-out-quint) both}.chatMsg.own .chatMsgBody{border-color:var(--accent-soft-line);border-radius:var(--r-lg) var(--r-lg) var(--r-sm) var(--r-lg);background:var(--accent-soft)}.chatMsgBody .meta{display:block;margin-bottom:2px;color:var(--ink-2);font-size:var(--text-xs)}@keyframes msgIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.chatComposer{display:flex;gap:var(--sp-2);padding:var(--sp-3);border-top:1px solid var(--line);background:var(--panel)}.chatComposer input{flex:1 1;min-height:var(--control-h);padding:8px 12px;border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--panel);color:var(--ink);font:inherit;font-size:var(--text-base)}.chatLockedNote{padding:var(--sp-3);border-top:1px solid var(--line);background:var(--panel-2);color:var(--ink-2);font-size:var(--text-base);text-align:center}@media (prefers-reduced-motion:reduce){.chatMsgBody{animation:none}}.shell{min-height:100vh;display:grid;grid-template-columns:248px minmax(0,1fr)}aside{position:-webkit-sticky;position:sticky;top:0;height:100vh;padding:16px;background:linear-gradient(180deg,#fff,#fbfcff);border-right:1px solid var(--line);display:flex;flex-direction:column}aside .brand{display:flex;margin-bottom:var(--sp-5);padding:var(--sp-2)}nav{display:grid;grid-gap:var(--sp-5);gap:var(--sp-5);align-content:start}.navGroup{display:grid;grid-gap:1px;gap:1px}.navGroupLabel{margin:0 0 var(--sp-1);padding-inline:10px;color:var(--ink-3);font-size:var(--text-xs);font-weight:var(--fw-semi)}nav a{display:flex;align-items:center;gap:10px;min-height:34px;padding:6px 10px;border-radius:var(--r-sm);color:var(--ink-2);font-size:var(--text-base);font-weight:var(--fw-medium);-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none;transition:color var(--dur-fast) var(--ease-out-quart),background-color var(--dur-fast) var(--ease-out-quart)}.navIcon{flex:none;color:var(--ink-3);transition:color var(--dur-fast) var(--ease-out-quart)}nav a:hover{color:var(--ink);background:var(--panel-2)}nav a:hover .navIcon{color:var(--ink-2)}nav a:active{background:var(--line)}nav a.active{color:var(--accent-strong);background:linear-gradient(135deg,var(--accent-soft),var(--accent-soft-2));font-weight:var(--fw-semi)}nav a.active .navIcon{color:var(--accent)}.workspace{min-width:0}header{position:-webkit-sticky;position:sticky;top:0;z-index:var(--z-nav);min-height:56px;justify-content:space-between;gap:16px;padding:8px 28px;background:rgb(255 255 255/.86);border-bottom:1px solid var(--line);box-shadow:0 1px 0 rgb(255 255 255/.8);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.workspaceCrumb,header{display:flex;align-items:center}.workspaceCrumb{gap:6px;min-width:0;margin:0;color:var(--ink-2);font-size:var(--text-sm);font-weight:var(--fw-medium)}.workspaceCrumb span[aria-hidden]{color:var(--ink-3)}.workspaceCrumb>span:last-child{overflow:hidden;color:var(--ink);text-overflow:ellipsis;white-space:nowrap}.shell.menuOpen .menuButton span:first-child{top:17px;transform:rotate(45deg)}.shell.menuOpen .menuButton span:last-child{top:17px;transform:rotate(-45deg)}.workspace>main{padding:28px;max-width:1280px}@media (max-width:1120px){.shell{grid-template-columns:224px minmax(0,1fr)}}@media (max-width:980px){.shell{display:block}aside{position:fixed;inset:0 auto 0 0;z-index:var(--z-drawer);width:min(300px,calc(100vw - 46px));height:100dvh;overflow:auto;padding:16px;border-right:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow-lg);opacity:0;pointer-events:none;transform:translateX(-12px);visibility:hidden;transition:opacity .2s ease-out,transform .2s ease-out,visibility .2s ease-out}.shell.menuOpen aside{opacity:1;pointer-events:auto;transform:translateX(0);visibility:visible}.shell.menuOpen:after{content:"";position:fixed;inset:0;z-index:calc(var(--z-nav) - 1);background:oklch(.2 .01 180/.32)}aside nav{display:grid;grid-template-columns:1fr;grid-gap:2px;gap:2px;overflow:visible}aside nav a{min-height:46px;padding:12px 10px;font-size:.9375rem}header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-gap:12px;gap:12px;align-items:center;min-height:52px;padding:8px 12px}header strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menuButton{display:inline-flex}.workspace>main{padding:20px 16px 40px}.four,.three,.two{grid-template-columns:1fr}}@media (max-width:560px){header{min-height:48px;padding-inline:10px}.brand span:last-child{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}.courseContentLink{display:inline-flex;margin-top:10px;color:var(--accent-strong);font-weight:600;font-size:.875rem;border-radius:var(--r-sm)}.courseContentLink:hover{text-decoration:underline;text-underline-offset:3px}.contentBackLink{display:inline-flex;color:var(--ink-2);font-size:.8125rem;font-weight:600;border-radius:var(--r-sm)}.contentBackLink:hover{color:var(--accent-strong);text-decoration:underline;text-underline-offset:3px}.contentPageHead{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:18px}.contentPageTitle{margin:6px 0 2px;font-size:1.25rem;font-weight:650;letter-spacing:-.01em}.contentSearch{width:min(320px,100%)}.contentSearch input{min-height:38px}.contentSection{margin-bottom:16px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--panel);box-shadow:var(--shadow-sm);overflow:hidden}.contentSection.isHidden{background:#fbfcff}.contentSection.isHidden .contentSectionHead h3{color:var(--ink-2)}.contentSectionHead{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 16px;border-bottom:1px solid var(--line);background:#fbfcff}.contentSectionTitleWrap{display:inline-flex;align-items:center;gap:10px;min-width:0}.contentSectionHead h3{margin:0;font-size:.9375rem;font-weight:650}.contentSectionAvail{color:var(--warn);font-size:.75rem;font-weight:600}.contentSectionDesc{margin:0;padding:10px 16px 0;color:var(--ink-2);font-size:.8125rem}.sectionEditForm{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px;padding:14px 16px;border-bottom:1px solid var(--line);background:var(--accent-soft)}.sectionEditActions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:8px}.contentLessonList{display:block}.contentLessonList>li{padding:0}.contentLessonRow{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;border-bottom:1px solid var(--line)}.contentLessonList>li:last-child .contentLessonRow{border-bottom:0}.contentLessonRow:hover{background:var(--panel-2)}.contentLessonMain{display:flex;align-items:center;gap:12px;min-width:0}.contentLessonText{display:grid;grid-gap:1px;gap:1px;min-width:0}.contentLessonTitle{font-weight:600;font-size:.9063rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contentLessonTitle:hover{color:var(--accent-strong);text-decoration:underline;text-underline-offset:3px}.contentLessonMeta{color:var(--ink-3);font-size:.75rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contentSectionEmptyRow{margin:0;padding:14px 16px;color:var(--ink-3);font-size:.8125rem}.contentAddLessonButton{display:block;width:100%;padding:10px 16px;border:0;border-top:1px dashed var(--line);background:transparent;color:var(--accent-strong);font:inherit;font-size:var(--text-sm);font-weight:var(--fw-semi);text-align:left;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out-quart)}.contentAddLessonButton:hover{background:var(--accent-soft)}.contentAddLessonButton:active{background:var(--accent-soft-2)}.contentAddLessonButton:disabled{opacity:.5;cursor:not-allowed;background:transparent}.contentAddLesson{display:flex;gap:8px;padding:10px 16px;border-top:1px dashed var(--line);background:var(--accent-soft)}.contentAddLesson label{flex:1 1}.contentAddSection{display:flex;gap:8px;max-width:560px;margin-top:4px}.contentAddSection label{flex:1 1}.contentEmpty{display:grid;justify-items:center;grid-gap:6px;gap:6px;margin-bottom:16px;padding:44px 24px;border:1px dashed var(--line-strong);border-radius:var(--r-lg);background:var(--panel);text-align:center}.contentEmpty p{margin:0;color:var(--ink-2);max-width:52ch}.editorToolbar{position:-webkit-sticky;position:sticky;top:56px;z-index:calc(var(--z-nav) - 1);display:flex;align-items:center;gap:16px;margin:-8px -8px 14px;padding:10px 8px;background:rgb(255 255 255/.92);border-bottom:1px solid var(--line);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.editorToolbarActions{display:inline-flex;gap:8px;margin-left:auto}.editorSaveStatus{color:var(--ink-3);font-size:.8125rem;font-weight:500}.editorSaveStatus.saving{color:var(--ink-2)}.editorSaveStatus.dirty{color:var(--warn)}.editorSaveStatus.error{color:var(--danger);font-weight:600}.editorStatusLine{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:16px}.editorLayout{display:grid;grid-template-columns:minmax(0,1fr) 300px;grid-gap:20px;gap:20px;align-items:start}.editorMain{min-width:0;max-width:760px}.editorTitleField input{font-size:1.125rem;font-weight:650}.editorSummaryField{margin-top:12px}.editorHint{color:var(--ink-3);font-weight:400}.editorBlocksHeading{margin:24px 0 10px;font-size:.9375rem;font-weight:650}.editorBlockList{display:grid;grid-gap:10px;gap:10px;margin:0;padding:0;list-style:none}.editorBlock{padding:12px 14px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--panel)}.editorBlockHead{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.editorBlockType{color:var(--accent-strong);font-size:.75rem;font-weight:650}.editorBlockTitle{margin-bottom:8px}.editorBlock textarea{min-height:0}.editorEmptyHint{margin:0 0 10px;color:var(--ink-3);font-size:.8125rem}.editorAddBlock{margin-top:12px}.editorAddBlock>span{display:block;margin-bottom:6px;color:var(--ink-2);font-size:.8125rem;font-weight:500}.editorResourceList{display:grid;grid-gap:10px;gap:10px;margin-bottom:12px}.editorResourceList li{padding:0;border:0}.editorResource{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--panel)}.editorResourceFields{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1.6fr) 110px;grid-gap:8px 10px;gap:8px 10px;flex:1 1}.editorResourceFields .editorResourceDesc{grid-column:1/-1}.editorAddResource{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1.6fr) 110px auto;grid-gap:8px 10px;gap:8px 10px;align-items:flex-end;padding:12px 14px;border:1px dashed var(--line-strong);border-radius:var(--r-md)}.editorAddResource .editorResourceDesc{grid-column:1/3}.editorSettings{position:-webkit-sticky;position:sticky;top:118px;display:grid;grid-gap:12px;gap:12px;padding:16px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--panel);box-shadow:var(--shadow-sm)}.editorSettings h3{margin:6px 0 0;font-size:.8125rem;font-weight:650;color:var(--ink-3)}.editorSettings h3:first-child{margin-top:0}.editorCheckList{display:grid;grid-gap:2px;gap:2px;max-height:200px;overflow:auto}.editorCheckList li{padding:0;border:0}.editorCheck{display:flex;align-items:center;gap:8px;padding:5px 6px;margin-inline:-6px;border-radius:var(--r-sm);font-size:.8125rem;font-weight:400;color:var(--ink);cursor:pointer}.editorCheck:hover{background:var(--panel-2)}.editorCheck input{width:auto;min-height:0;accent-color:var(--accent)}.editorPreview{max-width:760px}.editorPreviewNote{margin:0 0 14px;padding:8px 12px;border:1px solid var(--accent-soft-line);border-radius:var(--r-md);background:var(--accent-soft);color:var(--accent-strong);font-size:.8125rem;font-weight:600}.editorPreviewArticle{padding:24px 28px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--panel);box-shadow:var(--shadow-sm)}.editorPreviewArticle .lessonHead{position:static;display:block;min-height:0;margin-bottom:8px;padding:0;border:0;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.editorPreviewArticle .lessonHeadSection{margin:0 0 4px;color:var(--accent-strong);font-size:.8125rem;font-weight:650}.editorPreviewArticle h1{margin:0;font-size:1.375rem;font-weight:650;letter-spacing:-.01em}.editorPreviewArticle .lessonSummary{margin:8px 0 0;padding-bottom:14px;border-bottom:1px solid var(--line);color:var(--ink-2)}.editorSkeleton{display:grid;grid-gap:12px;gap:12px;padding:20px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--panel)}.scheduleIntro{margin-bottom:14px}.scheduleIntro a{color:var(--accent-strong);font-weight:600}.scheduleContentCell{display:grid;grid-gap:4px;gap:4px;justify-items:start}.scheduleContentState.none{color:var(--ink-3);font-size:.8125rem}@media (max-width:1180px){.editorLayout{grid-template-columns:minmax(0,1fr)}.editorSettings{position:static}}@media (max-width:760px){.contentLessonRow,.contentPageHead{flex-direction:column;align-items:stretch}.contentLessonRow{gap:6px}.contentLessonActions{justify-content:flex-end}.editorToolbar{position:static;flex-wrap:wrap;margin-inline:0}.editorToolbarActions{width:100%;justify-content:flex-end;margin-left:0}.editorAddResource,.editorResourceFields{grid-template-columns:minmax(0,1fr)}.editorAddResource .editorResourceDesc,.editorResourceFields .editorResourceDesc{grid-column:auto}.sectionEditForm{grid-template-columns:minmax(0,1fr)}.contentAddLesson{flex-wrap:wrap}}.courseTabs{flex-wrap:wrap;gap:12px 18px;margin-bottom:18px}.courseTabs,.coursesHead{display:flex;align-items:center}.coursesHead{justify-content:space-between;gap:16px;margin-bottom:16px}.coursesHead .contentPageTitle{margin:0}.courseEnrollmentState{display:flex;align-items:center;gap:8px;margin-top:8px;font-size:.88rem;color:var(--ink-2)}.courseCardLinks{display:flex;flex-wrap:wrap;gap:14px;margin-top:10px}.createCourseForm{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);padding:18px;margin-bottom:20px;display:grid;grid-gap:12px;gap:12px;box-shadow:var(--shadow-sm)}.createCourseForm h2{margin:0;font-size:1.05rem}.createCourseForm label{display:grid;grid-gap:6px;gap:6px;font-size:.88rem;font-weight:600;color:var(--ink-2)}.createCourseSelects{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:12px;gap:12px}.settingsPageHead{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;grid-gap:28px;gap:28px;margin:4px 0 24px;padding-bottom:20px;border-bottom:1px solid var(--line)}.settingsPageHead h1{margin:2px 0 5px;font-size:var(--text-2xl);line-height:1.2;letter-spacing:-.02em}.settingsPageHead>div>p:last-child{max-width:62ch;margin:0;color:var(--ink-2);font-size:var(--text-base)}.settingsKicker{margin:0 0 2px;color:var(--ink-3);font-size:var(--text-sm);font-weight:var(--fw-medium)}.settingsSummary{display:flex;align-items:stretch;gap:0;margin:0;border:1px solid var(--line);border-radius:var(--r-md);background:var(--panel)}.settingsSummary>div{min-width:108px;padding:9px 14px}.settingsSummary>div+div{max-width:280px;border-left:1px solid var(--line)}.settingsSummary dt{color:var(--ink-2);font-size:var(--text-xs);font-weight:var(--fw-medium)}.settingsSummary dd{margin:1px 0 0;overflow:hidden;color:var(--ink);font-size:var(--text-base);font-weight:var(--fw-bold);text-overflow:ellipsis;white-space:nowrap}.settingsGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:20px;gap:20px;align-items:start}.settingsPanel{min-width:0;display:grid;align-content:start;grid-gap:18px;gap:18px;padding:24px;border:1px solid var(--line);border-radius:12px;background:var(--panel);box-shadow:0 1px 2px rgb(23 32 51/.04),0 12px 30px rgb(39 104 244/.045)}.settingsPanel h2{margin:1px 0 0;font-size:1.1rem;font-weight:680;letter-spacing:-.015em}.settingsPanel>label{display:grid;grid-gap:7px;gap:7px;color:var(--ink-2);font-size:.82rem;font-weight:650}.settingsPanelHead{display:grid;grid-gap:6px;gap:6px;padding-bottom:16px;border-bottom:1px solid var(--line)}.settingsPanelHead>p{max-width:62ch;margin:0;color:var(--ink-2);font-size:.84rem;line-height:1.5;text-wrap:pretty}.settingsActions{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin-top:auto;padding-top:16px;border-top:1px solid var(--line)}.settingsSaved{min-height:1.25em;color:var(--ok);font-size:.82rem}.settingsFacts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px;margin:0;padding:12px;border-radius:var(--r-md);background:var(--panel-2)}.settingsFacts>div:first-child{grid-column:1/-1}.settingsFacts dt{color:var(--ink-2);font-size:var(--text-xs);font-weight:var(--fw-medium)}.settingsFacts dd{margin:2px 0 0;overflow-wrap:anywhere;color:var(--ink);font-size:var(--text-sm);font-weight:var(--fw-medium)}.enrollmentModes{min-width:0;display:grid;grid-gap:8px;gap:8px;margin:0;padding:0;border:0}.enrollmentModes legend{width:100%;margin:0 0 9px;padding:0;color:var(--ink-2);font-size:.8rem;font-weight:650}.enrollmentMode{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:start;grid-gap:11px;gap:11px;padding:12px 13px;border:1px solid var(--line);border-radius:var(--r-md);background:#fcfdff;cursor:pointer;transition:border-color .15s ease-out,background-color .15s ease-out,box-shadow .15s ease-out}.enrollmentMode:hover{border-color:var(--line-strong);background:var(--panel-2)}.enrollmentMode:focus-within,.settingToggle:focus-within{outline:none}.enrollmentMode.isSelected{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 1px var(--accent)}.enrollmentMode input{width:18px;height:18px;min-height:18px;margin:2px 0 0;padding:0;accent-color:var(--accent);box-shadow:none}.enrollmentMode span{min-width:0;display:grid;grid-gap:2px;gap:2px}.enrollmentMode strong{color:var(--ink);font-size:.86rem;font-weight:650}.enrollmentMode small{color:var(--ink-3);font-size:.76rem;font-weight:450;line-height:1.4}.enrollmentPassword{display:grid;grid-gap:10px;gap:10px;padding:14px;border-radius:var(--r-md);background:var(--panel-2)}.enrollmentPassword label{display:grid;grid-gap:6px;gap:6px;color:var(--ink-2);font-size:.82rem;font-weight:650}.settingsPanelCompletion{grid-column:1/-1}.completionOptions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.settingToggle{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:start;grid-gap:11px;gap:11px;padding:14px;border:1px solid var(--line);border-radius:var(--r-md);background:#fcfdff;cursor:pointer;transition:border-color .15s ease-out,background-color .15s ease-out}.settingToggle:hover{border-color:var(--line-strong);background:var(--panel-2)}.settingToggle.isSelected{border-color:var(--accent-soft-line);background:var(--accent-soft)}.settingToggle input{width:18px;height:18px;min-height:18px;margin:2px 0 0;padding:0;accent-color:var(--accent);box-shadow:none}.settingToggle span{min-width:0;display:grid;grid-gap:3px;gap:3px}.settingToggle strong{color:var(--ink);font-size:.86rem;font-weight:650}.settingToggle small{color:var(--ink-3);font-size:.77rem;font-weight:450;line-height:1.45}.passingPercent{max-width:220px}.settingsNote{margin:0;padding:10px 12px;border:1px solid var(--accent-soft-line);border-radius:var(--r-md);background:var(--accent-soft);color:var(--ink-2);font-size:var(--text-sm)}.rosterAdd{display:flex;gap:10px;align-items:flex-end;margin:14px 0 18px;flex-wrap:wrap}.rosterAdd select{min-width:280px}.assignmentCard{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);padding:16px 18px;margin-bottom:14px;box-shadow:var(--shadow-sm)}.assignmentCardHead{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.assignmentCardHead h3{margin:0 0 4px;font-size:1rem}.assignmentCardActions{display:flex;gap:6px;align-items:flex-start;flex-wrap:wrap}.assignmentVisibility{display:flex;align-items:center;gap:8px;margin-top:6px;font-size:.88rem;color:var(--ink-2)}.assignmentForm{display:grid;grid-gap:12px;gap:12px;border-top:1px solid var(--line);margin-top:14px;padding-top:14px}.assignmentForm>label{display:grid;grid-gap:6px;gap:6px;font-size:.88rem;font-weight:600;color:var(--ink-2)}.assignmentFormRow{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:12px;gap:12px}.assignmentFormRow label{display:grid;grid-gap:6px;gap:6px;font-size:.88rem;font-weight:600;color:var(--ink-2)}.assignmentLessons{border:1px solid var(--line);border-radius:var(--r-md);padding:10px 12px;display:grid;grid-gap:6px;gap:6px}.assignmentLessons legend{font-size:.85rem;font-weight:600;color:var(--ink-2);padding:0 4px}.submissionsSection{border-top:1px solid var(--line);margin-top:14px;padding-top:14px;display:grid;grid-gap:14px;gap:14px}.reviewAssignmentHead{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}.reviewAssignmentHead h2{margin:2px 0 0}.reviewAssignmentHead p{margin:0}.submissionsTableWrap{overflow-x:auto}.submissionsTable{width:100%;border-collapse:collapse;font-size:.9rem}.submissionsTable th{text-align:left;font-size:var(--text-xs);font-weight:var(--fw-semi);color:var(--ink-2);background:var(--panel-2);white-space:nowrap}.submissionsTable td,.submissionsTable th{padding:8px 10px;border-bottom:1px solid var(--line)}.submissionPanel{background:var(--panel-2);border:1px solid var(--line);border-radius:var(--r-md);padding:14px 16px;display:grid;grid-gap:10px;gap:10px}.submissionPanel h4{margin:0}.submissionFilesTitle{margin:0 0 8px;font-size:.82rem;color:var(--ink-2)}.submissionPanel label{display:grid;grid-gap:6px;gap:6px;font-size:.88rem;font-weight:600;color:var(--ink-2)}.submissionText{margin:0;padding:10px 14px;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-md);white-space:pre-wrap}.submissionActions{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap}.gradeInput{max-width:160px}.currentGrade{margin:0}.lateFlag{color:var(--danger);font-size:.85rem;font-weight:600}.studentEmail{display:block;margin-top:2px;color:var(--ink-3);font-size:.78rem}.assignmentReviewLink{display:inline-flex;margin-top:14px;font-weight:650;color:var(--accent);text-decoration:none}.assignmentReviewLink:hover{text-decoration:underline}.attachmentManager{border-top:1px dashed var(--line);padding-top:12px;display:grid;grid-gap:8px;gap:8px}.attachmentManager h4{margin:0}.editorUploadResource{display:grid;grid-gap:6px;gap:6px;margin:10px 0}.editorResourceFile{margin:0;font-size:.88rem;color:var(--ink-2);align-self:center}.studentAccessChip{display:inline-block;margin-left:8px;padding:1px 8px;border-radius:999px;font-size:.75rem;font-weight:600;border:1px solid var(--line);color:var(--ink-2);background:var(--panel-2)}.studentAccessChip.ok{color:var(--ok);background:var(--ok-soft);border-color:var(--ok-line)}.studentAccessChip.wait{color:var(--warn);background:var(--warn-soft);border-color:var(--warn-line)}.studentAccessChip.off{color:var(--ink-3)}.progressCell{display:flex;align-items:center;gap:10px;min-width:140px}.skipLink{position:fixed;top:8px;left:8px;z-index:calc(var(--z-drawer) + 1);padding:8px 12px;border-radius:var(--r-md);background:var(--ink);color:#fff;transform:translateY(-160%)}.skipLink:focus{transform:translateY(0)}.signedInUser{display:grid;grid-gap:2px;gap:2px;margin-top:auto;padding:14px 10px 4px;border-top:1px solid var(--line)}.signedInUser b{overflow:hidden;text-overflow:ellipsis;font-size:.82rem;white-space:nowrap}.signedInUser span{color:var(--ink-3);font-size:.72rem;text-transform:capitalize}.pageToolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:20px}.pageToolbar h1{margin:0 0 4px;font-size:var(--text-2xl);line-height:1.2;letter-spacing:-.02em}.pageToolbar>div:first-child{max-width:70ch}.pageToolbar>div:first-child>.meta{font-size:var(--text-base)}.quickActions{flex:0 1 auto;justify-content:flex-end}.taskLinks li{padding-block:8px}.taskLinks a{color:var(--accent-strong);font-weight:600}.adminForm{display:grid;grid-gap:16px;gap:16px;margin:0 0 22px;padding:18px;border:1px solid var(--line-strong);border-radius:var(--r-lg);background:var(--panel);box-shadow:var(--shadow-sm)}.adminFormHead{display:flex;justify-content:space-between;gap:16px}.adminFormHead h2{margin:2px 0 0;font-size:1.05rem}.eyebrow{margin:0 0 2px;color:var(--ink-3);font-size:var(--text-sm);font-weight:var(--fw-medium)}.formGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px;align-items:flex-end}.formGrid .span2{grid-column:span 2}.checkField{display:flex;align-items:center;gap:8px;min-height:40px}.checkField input{width:auto;min-height:0}.listSearch{width:min(420px,100%);margin:0 0 14px}.filterBar>*{flex:0 1 auto}.filterBar input,.filterBar select{width:auto;min-width:160px}.filterBar label{flex-direction:column}.reportReason{font-weight:var(--fw-semi);text-transform:capitalize}.tableSubtext{display:block;margin-top:2px;color:var(--ink-2);font-size:var(--text-sm);font-weight:var(--fw-regular)}.inlineActionForm{display:grid;grid-gap:6px;gap:6px;min-width:240px}.inlineActionForm>div{display:flex;align-items:center;gap:4px}.inlineLink{color:var(--accent-strong);font-weight:600;text-decoration:underline;text-underline-offset:2px}.feedbackCell{max-width:34ch;white-space:normal}.managementSection{display:grid;grid-gap:10px;gap:10px;margin-top:24px}.sectionHeading{display:flex;align-items:center;justify-content:space-between;gap:12px}.sectionHeading h2{margin:0;font-size:1.05rem}.sectionHeading>span{color:var(--ink-3);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.academicPanel td:last-child{white-space:nowrap}.academicPanel td:last-child .uiActions{flex-wrap:nowrap}.academicPanel .formGrid{align-items:start}.settingsPanelWide{grid-column:1/-1}.teacherPicker{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:2px 12px;gap:2px 12px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r-md)}.teacherPicker legend{padding-inline:4px}.assignmentManageLink,.teacherPicker legend{color:var(--ink-2);font-size:.82rem;font-weight:600}.assignmentManageLink{display:inline-flex;margin:14px 0 0 14px}.assignmentManageLink:hover{color:var(--accent-strong);text-decoration:underline}@media (max-width:800px){.pageToolbar{flex-direction:column}.quickActions{justify-content:flex-start}.formGrid{grid-template-columns:minmax(0,1fr)}.formGrid .span2{grid-column:auto}.filterBar,.settingsPageHead{grid-template-columns:minmax(0,1fr)}.settingsPageHead{align-items:start;gap:14px}.settingsSummary{width:100%}.settingsSummary>div{min-width:0;flex:1 1}.settingsSummary>div+div{max-width:none}.settingsGrid{grid-template-columns:minmax(0,1fr)}.settingsPanelCompletion,.settingsPanelWide{grid-column:auto}.completionOptions{grid-template-columns:minmax(0,1fr)}}@media (max-width:520px){.settingsPanel{padding:18px}.settingsFacts{grid-template-columns:minmax(0,1fr)}.settingsFacts>div:first-child{grid-column:auto}.settingsSummary{display:grid;grid-template-columns:100px minmax(0,1fr)}.settingsSummary>div+div{border-top:0;border-left:1px solid var(--line)}}.fileFilterBar{grid-template-columns:minmax(220px,2fr) repeat(2,minmax(150px,1fr)) auto;align-items:center}.fileFilterBar input{min-height:36px;padding:6px 10px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--panel);color:inherit;font:inherit}.metaList{display:grid;grid-template-columns:minmax(90px,auto) minmax(0,1fr);grid-gap:4px 12px;gap:4px 12px;margin:10px 0;font-size:.84rem}.metaList dt{color:var(--ink-3)}.metaList dd{margin:0;min-width:0;overflow-wrap:anywhere}.filePreview{display:block;max-width:100%;max-height:240px;margin:10px 0;border:1px solid var(--line);border-radius:var(--r-md);object-fit:contain}@media (max-width:900px){.fileFilterBar{grid-template-columns:minmax(0,1fr)}}.mailStatusRow{display:flex;flex-wrap:wrap;gap:10px 24px}.mailStatusItem{display:grid;grid-gap:5px;gap:5px;justify-items:start}.mailStatusLabel{color:var(--ink-3);font-size:var(--text-xs);font-weight:var(--fw-medium)}.mailGuide{display:grid;grid-gap:8px;gap:8px;padding:14px 16px;border:1px solid var(--accent-soft-line);border-radius:var(--r-md);background:var(--accent-soft)}.mailGuide h3{margin:0;font-size:.86rem;font-weight:650}.mailGuide ol{margin:0;padding-left:18px;display:grid;grid-gap:6px;gap:6px;color:var(--ink-2);font-size:.82rem;line-height:1.5}.mailGuide p{margin:2px 0 0}.mailGuide code{padding:1px 5px;border-radius:4px;background:var(--panel);font-size:.95em}.mailFieldHint{color:var(--ink-3);font-size:.77rem;font-weight:450;line-height:1.45;text-wrap:pretty}