/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){:root,:host{--shimmer-angle:20deg}*,:before,:after,::backdrop{--tw-border-style:solid;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0;--scroll-fade-t:0px;--scroll-fade-b:0px;--scroll-fade-s:0px;--scroll-fade-e:0px;--scroll-fade-mask:initial;--shimmer-image:initial;--shimmer-text-fill:initial}}}@layer theme{:root,:host{--spacing:.25rem;--radius-lg:var(--radius);--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:Arial, Helvetica, sans-serif;--default-mono-font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.fixed{position:fixed}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.block{display:block}.hidden{display:none}.table{display:table}.h-64{height:calc(var(--spacing) * 64)}.border{border-style:var(--tw-border-style);border-width:1px}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.running{animation-play-state:running}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}@property --scroll-fade-t{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-b{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-s{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-e{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-mask{syntax:"*";inherits:false}@property --shimmer-angle{syntax:"<angle>";inherits:true;initial-value:20deg}@property --shimmer-image{syntax:"*";inherits:false}@property --shimmer-text-fill{syntax:"*";inherits:false}@media (prefers-reduced-motion:reduce){.shimmer{-webkit-text-fill-color:currentColor;background-image:none;animation:none}}:root{--background:#fff;--foreground:#171717;--card:#fff;--card-foreground:#171717;--popover:#fff;--popover-foreground:#171717;--primary:#171717;--primary-foreground:#fafafa;--secondary:#f5f5f5;--secondary-foreground:#171717;--muted:#f5f5f5;--muted-foreground:#737373;--accent:#f5f5f5;--accent-foreground:#171717;--destructive:#e7000b;--border:#e5e5e5;--input:#e5e5e5;--ring:#a1a1a1;--chart-1:#f54900;--chart-2:#009689;--chart-3:#104e64;--chart-4:#ffb900;--chart-5:#fe9a00;--radius:.625rem;--sidebar:#fafafa;--sidebar-foreground:#171717;--sidebar-primary:#171717;--sidebar-primary-foreground:#fafafa;--sidebar-accent:#f5f5f5;--sidebar-accent-foreground:#171717;--sidebar-border:#e5e5e5;--sidebar-ring:#a1a1a1}@media (prefers-color-scheme:dark){:root{--background:#0a0a0a;--foreground:#ededed;--card:#171717;--card-foreground:#ededed;--popover:#171717;--popover-foreground:#ededed;--primary:#ededed;--primary-foreground:#171717;--secondary:#262626;--secondary-foreground:#ededed;--muted:#262626;--muted-foreground:#a1a1a1;--accent:#262626;--accent-foreground:#ededed;--destructive:#ff6467;--border:#ffffff1a;--input:#ffffff26;--ring:#737373;--chart-1:#8e51ff;--chart-2:#00bc7d;--chart-3:#fe9a00;--chart-4:#ad46ff;--chart-5:#ff2056;--sidebar:#171717;--sidebar-foreground:#ededed;--sidebar-primary:#8e51ff;--sidebar-primary-foreground:#ededed;--sidebar-accent:#262626;--sidebar-accent-foreground:#ededed;--sidebar-border:#ffffff1a;--sidebar-ring:#737373}}body{background:var(--background);color:var(--foreground);font-family:Arial,Helvetica,sans-serif}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--blue:#51b8cb;--blue-strong:#2e8da0;--blue-soft:#eaf7f9;--orange:#e45321;--orange-strong:#c94318;--orange-soft:#fff0e9;--accent:var(--orange);--accent-dark:var(--orange-strong);--ink:#173039;--muted:#6f8187;--line:#dfe9eb;--line-strong:#cadcdf;--paper:#fff;--canvas:#f5f9fa;--sidebar:#17343c;--success:#23815d;--success-soft:#e8f7f0;--warning:#b76c18;--warning-soft:#fff4df;--danger:#c43b3f;--danger-soft:#fff0f0;--violet:#7158a5;--shadow-sm:0 1px 2px #1730390a, 0 6px 18px #1730390a;--shadow-lg:0 22px 70px #17303933;--radius-sm:10px;--radius:16px;--radius-lg:22px;--sidebar-width:272px;font-synthesis:none;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:clamp(16px,.72vw,18px)}*{box-sizing:border-box}html{background:var(--canvas);min-width:320px;min-height:100%}body{min-width:320px;min-height:100%;color:var(--ink);background:var(--canvas);margin:0}body,button,input,select,textarea{font:inherit}button,input,select,textarea{color:inherit}button{border:0}button,a,select,input[type=checkbox],input[type=radio]{-webkit-tap-highlight-color:transparent}button:not(:disabled),select:not(:disabled),input[type=checkbox]:not(:disabled){cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58}a{color:inherit}svg{flex:none}::selection{color:var(--ink);background:#cdeef3}:focus-visible{outline-offset:2px;outline:3px solid #51b8cb6b}.sr-only{clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.eyebrow{color:var(--blue-strong);letter-spacing:.1em;text-transform:uppercase;margin:0 0 .5rem;font-size:.72rem;font-weight:800}.button{border:1px solid var(--line-strong);background:var(--paper);border-radius:11px;justify-content:center;align-items:center;gap:.55rem;min-height:2.65rem;padding:.65rem 1rem;font-size:.86rem;font-weight:750;line-height:1;transition:transform .15s,border-color .15s,background .15s;display:inline-flex}.button:not(:disabled):active{transform:translateY(1px)}.button--primary{color:#fff;border-color:var(--orange);background:var(--orange);box-shadow:0 7px 18px #e4532129}.button--primary:hover:not(:disabled){border-color:var(--orange-strong);background:var(--orange-strong)}.button--secondary:hover:not(:disabled){border-color:var(--blue);background:var(--blue-soft)}.button--ghost{min-height:2.25rem;color:var(--blue-strong);background:0 0;border-color:#0000;padding-inline:.55rem}.button--ghost:hover:not(:disabled){background:var(--blue-soft)}.button--danger{color:var(--danger);background:var(--danger-soft);border-color:#efc5c7}.button--danger:hover:not(:disabled){color:#fff;border-color:var(--danger);background:var(--danger)}.wide-button{width:100%;margin-top:1rem}.icon-button{width:2.65rem;height:2.65rem;color:var(--muted);border:1px solid var(--line);background:var(--paper);border-radius:12px;flex:none;place-items:center;padding:0;display:inline-grid;position:relative}.icon-button:hover{color:var(--blue-strong);background:var(--blue-soft);border-color:#b9dce2}.icon-button__badge{color:#fff;background:var(--orange);border:2px solid #fff;border-radius:999px;place-items:center;min-width:1.15rem;height:1.15rem;padding:0 .25rem;font-size:.58rem;font-weight:900;line-height:1;display:grid;position:absolute;top:-.35rem;right:-.35rem}.status-badge{width:fit-content;color:var(--muted);background:var(--surface-subtle);white-space:nowrap;border-radius:999px;align-items:center;gap:.3rem;padding:.32rem .55rem;font-size:.7rem;font-weight:760;line-height:1.1;display:inline-flex}.status-badge--success{color:var(--success);background:var(--success-soft)}.status-badge--warning{color:var(--warning);background:var(--warning-soft)}.status-badge--danger{color:var(--danger);background:var(--danger-soft)}.status-badge--info{color:#21768a;background:var(--blue-soft)}.field{gap:.45rem;min-width:0;display:grid}.field__label,.accounts-toolbar label>span{color:var(--muted);font-size:.72rem;font-weight:760}.field small{color:var(--muted);font-size:.7rem;line-height:1.45}.field input,.field select,.field textarea,.accounts-toolbar select,.announcement-form input,.announcement-form select,.announcement-form textarea{border:1px solid var(--line-strong);background:var(--paper);border-radius:10px;outline:0;width:100%;min-height:2.7rem;padding:.68rem .8rem}.field textarea,.announcement-form textarea{resize:vertical;line-height:1.55}.field input:focus,.field select:focus,.field textarea:focus,.accounts-toolbar select:focus,.announcement-form input:focus,.announcement-form select:focus,.announcement-form textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #51b8cb26}.field input:disabled,.field select:disabled{color:var(--muted);background:var(--surface-subtle)}.form-alert,.success-alert{color:#9d2e33;background:var(--danger-soft);border:1px solid #f1c9ca;border-radius:11px;align-items:flex-start;gap:.65rem;padding:.78rem .9rem;font-size:.82rem;line-height:1.45;display:flex}.success-alert{color:var(--success);background:var(--success-soft);border-color:#c6ead9}.global-alert{z-index:15;color:#9d2e33;box-shadow:var(--shadow-sm);background:#fff6f6;border:1px solid #f0c8ca;border-radius:12px;align-items:center;gap:.75rem;margin:0 0 1rem;padding:.72rem .9rem;display:flex;position:sticky;top:5.15rem}.global-alert>span{background:var(--danger-soft);border-radius:9px;place-items:center;width:2rem;height:2rem;display:grid}.global-alert p{flex:1;margin:0;font-size:.82rem}.global-alert button{width:2rem;height:2rem;color:var(--danger);background:0 0;border-radius:8px;place-items:center;display:grid}.boot-screen{min-height:100vh;color:var(--muted);background:var(--paper);align-content:center;place-items:center;gap:1rem;display:grid}.boot-screen .brand__mark{width:3.7rem;height:3.7rem}.boot-screen p{margin:0;font-size:.83rem}.journal-error-screen{text-align:center;min-height:100vh;color:var(--ink);background:#f7f8fb;align-content:center;place-items:center;gap:1rem;padding:2rem;display:grid}.journal-error-screen h1{margin:.35rem 0 0;font-size:clamp(1.5rem,3vw,2.1rem)}.journal-error-screen p{color:var(--muted);margin:0}.journal-error-screen>div{flex-wrap:wrap;justify-content:center;gap:.65rem;display:flex}.spinner{border:2px solid #cfe5e9;border-top-color:var(--blue-strong);border-radius:50%;width:1.2rem;height:1.2rem;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.state{min-height:14rem;color:var(--muted);border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);text-align:center;justify-content:center;align-items:center;gap:.8rem;padding:2rem;display:flex}.state h3{color:var(--ink);margin:0;font-size:1rem}.state p{max-width:28rem;margin:.4rem 0 .9rem;font-size:.82rem;line-height:1.55}.state--loading{flex-direction:column}.state--loading p{margin:0}.state--empty{background:0 0;border:0;flex-direction:column;min-height:12rem}.state--error{text-align:left;justify-content:flex-start;align-items:flex-start;min-height:auto}.state__icon{width:2.8rem;height:2.8rem;color:var(--blue-strong);background:var(--blue-soft);border-radius:12px;flex:none;place-items:center;display:grid}.state--error .state__icon{color:var(--danger);background:var(--danger-soft)}.not-found-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper)}.login-screen{background:var(--paper);grid-template-columns:minmax(30rem,1.05fr) minmax(28rem,.95fr);min-height:100vh;display:grid}.login-visual{color:#fff;background:linear-gradient(145deg,#15353e 0%,#1f6574 68%,#2c8899 100%);flex-direction:column;justify-content:space-between;min-height:100vh;padding:clamp(2rem,4vw,5rem);display:flex;position:relative;overflow:hidden}.login-visual:before,.login-visual:after{content:"";border:1px solid #ffffff1f;border-radius:50%;position:absolute}.login-visual:before{width:30rem;height:30rem;top:-8rem;right:-10rem}.login-visual:after{background:#51b8cb1f;width:44rem;height:44rem;bottom:-26rem;right:-18rem}.login-brand,.login-brand>span:last-child{z-index:1;align-items:center;gap:.8rem;display:flex;position:relative}.login-brand>span:last-child,.login-brand strong,.login-brand small{display:block}.login-brand strong{letter-spacing:.02em;font-size:.94rem}.login-brand small{color:#b9d9df;margin-top:.18rem;font-size:.69rem}.brand__mark{color:#fff;background:var(--orange);border-radius:13px 13px 13px 4px;flex:none;place-items:center;width:2.65rem;height:2.65rem;font-size:1.15rem;font-weight:900;display:grid;box-shadow:0 8px 24px #00000021}.login-visual__content{z-index:1;width:min(46rem,90%);position:relative}.login-kicker{color:#d9f4f8;letter-spacing:.06em;text-transform:uppercase;background:#ffffff14;border:1px solid #ffffff2e;border-radius:999px;margin-bottom:1.1rem;padding:.48rem .75rem;font-size:.7rem;font-weight:760;display:inline-block}.login-visual h1{letter-spacing:-.055em;margin:0;font-size:clamp(2.5rem,4.3vw,5rem);line-height:1.02}.login-visual__content p{color:#c9e0e5;max-width:35rem;margin:1.4rem 0 0;font-size:1rem;line-height:1.65}.login-visual__features{z-index:1;color:#bcd5db;justify-content:space-between;align-items:center;gap:1rem;font-size:.72rem;display:flex;position:relative}.login-visual__features span{align-items:center;gap:.55rem;display:flex}.login-form-wrap{place-items:center;padding:clamp(2rem,5vw,6rem);display:grid}.login-form{width:min(26rem,100%)}.login-form__heading{margin-bottom:1.8rem}.login-form__heading h2{letter-spacing:-.04em;margin:0;font-size:2rem}.login-form__heading>p:last-child{color:var(--muted);margin:.65rem 0 0;font-size:.87rem;line-height:1.55}.login-form .field{margin-top:1rem}.login-submit{width:100%;min-height:3rem;margin-top:1.25rem}.login-help{color:var(--muted);text-align:center;margin:1.25rem 0 0;font-size:.72rem;line-height:1.5}.demo-hint{color:#356570;background:var(--blue-soft);border-radius:12px;gap:.25rem;margin-top:1.4rem;padding:.85rem 1rem;font-size:.73rem;display:grid}.demo-hint strong{color:var(--blue-strong)}.demo-accounts{grid-template-columns:repeat(3,minmax(0,1fr));gap:.38rem;margin-top:.55rem;display:grid}.demo-accounts button{color:#315d67;background:#ffffffb8;border:1px solid #c7e5eb;border-radius:8px;min-height:2rem;padding:.35rem .4rem;font-size:.65rem;font-weight:750}.demo-accounts button:hover,.demo-accounts button.active{color:#fff;border-color:var(--blue-strong);background:var(--blue-strong)}.app-shell{min-height:100vh}.sidebar{z-index:40;width:var(--sidebar-width);color:#fff;background:linear-gradient(#17343c 0%,#112a31 100%);flex-direction:column;padding:1.5rem 1rem 1rem;display:flex;position:fixed;inset:0 auto 0 0}.brand{align-items:center;gap:.8rem;min-height:3rem;padding:0 .4rem;display:flex}.brand__copy strong,.brand__copy small{display:block}.brand__copy strong{color:#fff;font-size:.92rem}.brand__copy small{color:#8db0b8;margin-top:.2rem;font-size:.65rem}.context-label{color:#b8d2d7;background:#ffffff0a;border:1px solid #ffffff14;border-radius:10px;margin:1.35rem .35rem .6rem;padding:.65rem .75rem;font-size:.72rem;font-weight:700;display:block}.context-switcher{margin:1.35rem .25rem .55rem;position:relative}.context-switcher>button{color:#fff;text-align:left;background:#ffffff0e;border:1px solid #ffffff1a;border-radius:11px;justify-content:space-between;align-items:center;gap:.5rem;width:100%;padding:.68rem .75rem;display:flex}.context-switcher>button span{gap:.15rem;display:grid}.context-switcher small{color:#90b0b8;font-size:.59rem}.context-switcher strong{font-size:.75rem}.context-menu{z-index:80;color:var(--ink);border:1px solid var(--line);background:var(--paper);box-shadow:var(--shadow-lg);border-radius:12px;padding:.35rem;position:absolute;top:calc(100% + .45rem);left:0;right:0;overflow:hidden}.context-menu button{text-align:left;background:0 0;border-radius:9px;align-items:center;gap:.6rem;width:100%;padding:.65rem;display:flex}.context-menu button:hover,.context-menu button.active{background:var(--blue-soft)}.context-menu button>span:last-child{gap:.15rem;display:grid}.context-menu strong{color:var(--ink);font-size:.74rem}.context-menu small{color:var(--muted);font-size:.61rem}.context-menu__radio{border:2px solid #b9cacc;border-radius:50%;width:.7rem;height:.7rem}.context-menu button.active .context-menu__radio{border:3px solid var(--blue-strong)}.side-nav{scrollbar-width:thin;flex:1;align-content:start;gap:.28rem;margin-top:.8rem;display:grid;overflow-y:auto}.side-nav button{color:#9fbcc3;text-align:left;background:0 0;border-radius:11px;align-items:center;gap:.8rem;width:100%;min-height:2.85rem;padding:.7rem .8rem;transition:color .15s,background .15s;display:flex;position:relative}.side-nav button:hover{color:#fff;background:#ffffff0f}.side-nav button.active{color:#fff;background:#51b8cb2b;font-weight:750}.side-nav button.active:before{content:"";background:var(--orange);border-radius:0 5px 5px 0;width:4px;height:1.55rem;position:absolute;left:-.98rem}.side-nav button span{font-size:.83rem}.sidebar__footer{border-top:1px solid #ffffff14;align-items:center;gap:.65rem;min-width:0;padding:.95rem .3rem .15rem;display:flex}.avatar{color:#fff;background:linear-gradient(145deg, var(--blue), var(--blue-strong));border-radius:11px;flex:none;place-items:center;width:2.45rem;height:2.45rem;font-size:.72rem;font-weight:850;display:grid}.avatar--small{border-radius:9px;width:2.15rem;height:2.15rem;font-size:.65rem}.avatar--table{border-radius:10px;width:2.2rem;height:2.2rem;font-size:.62rem}.sidebar__identity{flex:1;gap:.15rem;min-width:0;display:grid}.sidebar__identity strong{text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;overflow:hidden}.sidebar__identity small{color:#84a5ad;font-size:.61rem}.sidebar__footer .icon-button{color:#96b1b8;background:0 0;border-color:#0000}.workspace{min-height:100vh;margin-left:var(--sidebar-width)}.hosted-demo-banner{color:#6d3b04;text-align:center;background:#fff3d6;border-bottom:1px solid #f2d39a;justify-content:center;align-items:center;gap:8px;min-height:34px;padding:7px 18px;font-size:12px;line-height:1.35;display:flex}.hosted-demo-banner strong{color:#a84b12}.topbar{z-index:30;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f5f9faed;border-bottom:1px solid #cddee1cc;justify-content:space-between;align-items:center;gap:1rem;min-height:4.9rem;padding:.8rem clamp(1.6rem,3vw,3.4rem);display:flex;position:sticky;top:0}.mobile-brand{display:none}.topbar__term{align-items:center;gap:.65rem;display:flex}.term-dot{background:var(--success);width:.55rem;height:.55rem;box-shadow:0 0 0 3px var(--success-soft);border:2px solid #fff;border-radius:50%}.topbar__term>span:last-child{gap:.13rem;display:grid}.topbar__term small{color:var(--muted);font-size:.64rem}.topbar__term strong{font-size:.78rem}.topbar__actions{align-items:center;gap:.6rem;display:flex}.profile-menu{position:relative}.profile-trigger{border:1px solid var(--line);background:var(--paper);border-radius:12px;align-items:center;gap:.6rem;min-height:2.7rem;padding:.25rem .55rem .25rem .25rem;display:flex}.profile-trigger__copy{text-align:left;gap:.12rem;max-width:10rem;display:grid}.profile-trigger__copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;overflow:hidden}.profile-trigger__copy small{color:var(--muted);font-size:.6rem}.profile-popover{z-index:70;border:1px solid var(--line);background:var(--paper);width:15rem;box-shadow:var(--shadow-lg);border-radius:12px;padding:.45rem;position:absolute;top:calc(100% + .5rem);right:0;overflow:hidden}.profile-popover>div{gap:.18rem;padding:.65rem;display:grid}.profile-popover strong{font-size:.75rem}.profile-popover small{color:var(--muted);font-size:.65rem}.profile-popover button{width:100%;color:var(--danger);background:0 0;border-radius:9px;align-items:center;gap:.55rem;padding:.7rem;font-size:.73rem;display:flex}.profile-popover button:hover{background:var(--danger-soft)}.profile-popover button.profile-action{color:var(--muted)}.profile-popover button.profile-action:hover{color:var(--blue-strong);background:var(--blue-soft)}.profile-popover .profile-contexts{border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:.25rem}.profile-contexts>small{color:var(--muted);text-transform:uppercase;margin-bottom:.2rem;font-size:.59rem;font-weight:760}.profile-popover .profile-contexts button{color:var(--muted);padding:.5rem;display:flex}.profile-popover .profile-contexts button:hover,.profile-popover .profile-contexts button.active{color:var(--blue-strong);background:var(--blue-soft)}.profile-popover .profile-contexts button.active .context-menu__radio{border:3px solid var(--blue-strong)}.profile-form{gap:1rem;display:grid}.profile-form__two{grid-template-columns:1fr 1fr;gap:.8rem;display:grid}.main-content{width:min(100%,1780px);margin:0 auto;padding:clamp(1.5rem,2.8vw,3.4rem)}.mobile-nav{display:none}.page{width:100%}.page-header{justify-content:space-between;align-items:flex-end;gap:2rem;margin-bottom:1.65rem;display:flex}.page-header h1{letter-spacing:-.045em;margin:0;font-size:clamp(1.75rem,2.1vw,2.45rem);line-height:1.1}.page-header__description{max-width:49rem;color:var(--muted);margin:.65rem 0 0;font-size:.86rem;line-height:1.55}.page-header__actions{align-items:center;gap:.6rem;display:flex}.card{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);box-shadow:var(--shadow-sm)}.section-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.15rem 1.25rem;display:flex}.section-header h2{letter-spacing:-.02em;margin:0;font-size:1rem}.section-header p{color:var(--muted);margin:.35rem 0 0;font-size:.73rem;line-height:1.5}.metrics-grid{gap:1rem;margin-bottom:1rem;display:grid}.metrics-grid--four{grid-template-columns:repeat(4,minmax(0,1fr))}.metrics-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}.metric-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);min-width:0;min-height:7.8rem;box-shadow:var(--shadow-sm);text-align:left;align-items:center;gap:1rem;padding:1.15rem;display:flex;position:relative}button.metric-card:hover{border-color:#b8dce2;transform:translateY(-1px)}.metric-card__icon{width:2.75rem;height:2.75rem;color:var(--blue-strong);background:var(--blue-soft);border-radius:12px;flex:none;place-items:center;display:grid}.metric-card__icon--orange{color:var(--orange);background:var(--orange-soft)}.metric-card__icon--green{color:var(--success);background:var(--success-soft)}.metric-card__icon--violet{color:var(--violet);background:#f0ebfa}.metric-card__copy{gap:.18rem;min-width:0;display:grid}.metric-card__copy small{color:var(--muted);font-size:.67rem;font-weight:700}.metric-card__copy strong{letter-spacing:-.04em;margin-top:.1rem;font-size:1.55rem}.metric-card__copy>span{color:#6d7d82;text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}.metric-card__arrow{color:#aababc;position:absolute;top:.8rem;right:.8rem}.dashboard-grid{gap:1rem;display:grid}.dashboard-grid--main{grid-template-columns:minmax(0,1.65fr) minmax(18rem,.85fr)}.dashboard-card{min-width:0;overflow:hidden}.today-lessons{display:grid}.today-lesson{border-bottom:1px solid var(--surface-subtle);background:var(--paper);text-align:left;grid-template-columns:4rem .3rem minmax(10rem,1fr) minmax(7rem,auto) 1.2rem;align-items:center;gap:.8rem;min-height:4.6rem;padding:.72rem 1.25rem;display:grid}.today-lesson:last-child{border-bottom:0}.today-lesson:hover{background:var(--surface-subtle)}.today-lesson__time{color:var(--ink);font-size:.78rem;font-weight:800;display:grid}.today-lesson__time small{color:var(--muted);margin-top:.15rem;font-size:.62rem;font-weight:600}.today-lesson__line{background:var(--blue);border-radius:3px;width:3px;height:2.25rem}.today-lesson__subject{gap:.2rem;min-width:0;display:grid}.today-lesson__subject strong{text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.today-lesson__subject small,.today-lesson__room{color:var(--muted);font-size:.68rem}.today-lesson>svg{color:#a2b3b7}.attention-list,.quick-actions,.event-feed{padding:.55rem;display:grid}.attention-list button{text-align:left;background:0 0;border-radius:11px;align-items:center;gap:.75rem;min-height:4.25rem;padding:.65rem;display:flex}.attention-list button:hover{background:var(--surface-subtle)}.attention-list button>span:nth-child(2){flex:1;gap:.2rem;min-width:0;display:grid}.attention-list strong{font-size:.75rem}.attention-list small{color:var(--muted);font-size:.65rem;line-height:1.35}.attention-list button>svg{color:#a8b6b9}.attention-icon{width:2.35rem;height:2.35rem;color:var(--blue-strong);background:var(--blue-soft);border-radius:10px;flex:none;place-items:center;display:grid}.attention-icon--orange{color:var(--orange);background:var(--orange-soft)}.attention-icon--green{color:var(--success);background:var(--success-soft)}.family-hero{color:#fff;border-radius:var(--radius-lg);background:linear-gradient(120deg,#1a5967,#318a9c);justify-content:space-between;align-items:center;gap:2rem;min-height:11rem;margin-bottom:1rem;padding:1.8rem 2rem;display:flex;position:relative;overflow:hidden}.family-hero:after{content:"";border:1px solid #ffffff2b;border-radius:50%;width:17rem;height:17rem;position:absolute;bottom:-10rem;right:-4rem}.family-hero>div{z-index:1;max-width:46rem;position:relative}.family-hero .eyebrow{color:#fff;background:var(--orange);letter-spacing:.07em;border:1px solid #ffffff40;border-radius:999px;align-items:center;width:fit-content;margin-bottom:.7rem;padding:.38rem .62rem;display:inline-flex;box-shadow:0 7px 18px #792a0f33}.family-hero h2{letter-spacing:-.035em;margin:0;font-size:1.55rem}.family-hero p:last-child{color:#d0e7eb;margin:.65rem 0 0;font-size:.8rem;line-height:1.55}.family-hero__shield{z-index:1;background:#ffffff14;border:1px solid #ffffff29;border-radius:14px;align-items:center;gap:.7rem;min-width:9rem;padding:.8rem 1rem;display:flex;position:relative}.family-hero__shield small{color:#d4e9ed;font-size:.65rem;line-height:1.4}.family-dashboard-child{margin:-.25rem 0 1rem}.family-child-switcher{border-radius:var(--radius);background:var(--paper);box-shadow:var(--shadow-sm);border:1px solid #efc9b7;overflow:hidden}.family-child-switcher>header{background:linear-gradient(105deg, var(--orange-soft), #fff9f6);border-bottom:1px solid #f2d4c5;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1.1rem;display:flex}.family-child-switcher>header>div{gap:.18rem;display:grid}.family-child-switcher>header span{color:var(--orange-strong);text-transform:uppercase;letter-spacing:.06em;font-size:.64rem;font-weight:850}.family-child-switcher>header strong{font-size:.84rem}.family-child-switcher>header small{max-width:22rem;color:var(--muted);text-align:right;font-size:.65rem;line-height:1.4}.family-child-switcher__options{grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:.65rem;padding:.8rem;display:grid}.family-child-switcher__options button{min-width:0;color:inherit;border:1px solid var(--line);background:var(--paper);cursor:pointer;text-align:left;border-radius:11px;grid-template-columns:2.35rem minmax(0,1fr) auto;align-items:center;gap:.65rem;padding:.7rem;display:grid}.family-child-switcher__options button:hover{background:#fffaf7;border-color:#e9a688}.family-child-switcher__options button.is-selected{border-color:var(--orange);background:var(--orange-soft);box-shadow:0 0 0 1px var(--orange) inset}.family-child-switcher__options button>span:first-child{color:#fff;background:#547983;border-radius:10px;place-items:center;width:2.35rem;height:2.35rem;font-size:.67rem;font-weight:850;display:grid}.family-child-switcher__options button>span:nth-child(2){gap:.2rem;min-width:0;display:grid}.family-child-switcher__options b{text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.family-child-switcher__options small{color:var(--muted);font-size:.64rem}.family-child-switcher__options i{color:var(--orange);font-size:.9rem;font-style:normal;font-weight:850}.event-feed{padding:.75rem 1.15rem}.event-feed>button{width:100%;color:inherit;border:0;border-bottom:1px solid var(--surface-subtle);cursor:pointer;text-align:left;background:0 0;align-items:flex-start;gap:.75rem;padding:.7rem 0;display:flex}.event-feed>button:hover{background:var(--surface-subtle)}.event-feed>button:last-child{border:0}.event-feed>button>span:nth-child(2){flex:1;gap:.22rem;min-width:0;display:grid}.event-feed>button>svg{color:#9cacb0;flex:none;margin-top:.15rem}.event-feed strong{font-size:.75rem}.event-feed small{color:var(--muted);font-size:.7rem;line-height:1.4}.event-dot{background:#a8b9bc;border-radius:50%;width:.62rem;height:.62rem;margin-top:.15rem;box-shadow:0 0 0 4px #f1f4f5}.event-dot--blue{background:var(--blue-strong);box-shadow:0 0 0 4px var(--blue-soft)}.event-dot--green{background:var(--success);box-shadow:0 0 0 4px var(--success-soft)}.event-dot--orange{background:var(--orange);box-shadow:0 0 0 4px var(--orange-soft)}.dashboard-card>.wide-button{width:calc(100% - 2.3rem);margin:0 1.15rem 1.15rem}.health-list{padding:.5rem 1.1rem;display:grid}.health-list>div{border-bottom:1px solid var(--surface-subtle);align-items:center;gap:.8rem;min-height:4.45rem;padding:.7rem 0;display:flex}.health-list>div:last-child{border:0}.health-list>div>span:nth-child(2){flex:1;gap:.2rem;min-width:0;display:grid}.health-list strong{font-size:.76rem}.health-list small{color:var(--muted);font-size:.65rem}.health-icon{width:2.35rem;height:2.35rem;color:var(--success);background:var(--success-soft);border-radius:10px;place-items:center;display:grid}.quick-actions button{min-height:4.15rem;color:var(--blue-strong);text-align:left;background:0 0;border-radius:10px;align-items:center;gap:.75rem;padding:.65rem;display:flex}.quick-actions button:hover{background:var(--blue-soft)}.quick-actions button>span{gap:.2rem;display:grid}.quick-actions strong{color:var(--ink);font-size:.74rem}.quick-actions small{color:var(--muted);font-size:.64rem}.control-list{display:grid}.control-list button{border-bottom:1px solid var(--surface-subtle);background:var(--paper);text-align:left;grid-template-columns:3rem minmax(10rem,1fr) auto;align-items:center;gap:.8rem;min-height:4.7rem;padding:.8rem 1.25rem;display:grid}.control-list button:hover{background:var(--surface-subtle)}.control-list__value{letter-spacing:-.04em;font-size:1.25rem;font-weight:850}.control-list button>span:nth-child(2){gap:.2rem;display:grid}.control-list strong{font-size:.76rem}.control-list small{color:var(--muted);font-size:.65rem}.progress-block{padding:1.2rem}.progress-block>div{justify-content:space-between;align-items:flex-end;gap:1rem;display:flex}.progress-block>div>span{gap:.25rem;display:grid}.progress-block strong{font-size:.76rem}.progress-block small{color:var(--muted);font-size:.65rem}.progress-block b{font-size:1.25rem}.progress{background:var(--surface-subtle);border-radius:999px;height:.55rem;margin-top:.8rem;display:block;overflow:hidden}.progress i{border-radius:inherit;background:var(--blue);height:100%;display:block}.management-notes{gap:.55rem;padding:0 1.2rem 1rem;display:grid}.management-notes p{color:var(--muted);align-items:flex-start;gap:.55rem;margin:0;font-size:.68rem;line-height:1.45;display:flex}.notification-root{position:relative}.notification-scrim{display:none}.notification-panel{z-index:100;border:1px solid var(--line);background:var(--paper);width:min(28rem,100vw - 2rem);max-height:min(42rem,100vh - 6.5rem);box-shadow:var(--shadow-lg);border-radius:18px;flex-direction:column;display:flex;position:absolute;top:calc(100% + .65rem);right:0;overflow:hidden}.notification-panel__header{justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem 1.15rem .8rem;display:flex}.notification-panel__header h2{letter-spacing:-.03em;margin:0;font-size:1.2rem}.notification-panel__header .eyebrow{margin-bottom:.2rem;font-size:.62rem}.notification-panel__header .icon-button{width:2.25rem;height:2.25rem}.notification-tabs{border-bottom:1px solid var(--line);gap:.25rem;padding:0 1.05rem .7rem;display:flex}.notification-tabs button{min-height:2.15rem;color:var(--muted);background:0 0;border-radius:8px;align-items:center;gap:.4rem;padding:.45rem .65rem;font-size:.68rem;font-weight:720;display:flex}.notification-tabs button.active{color:var(--blue-strong);background:var(--blue-soft)}.notification-tabs button span{color:#fff;background:var(--blue-strong);border-radius:999px;place-items:center;min-width:1.1rem;height:1.1rem;padding:0 .25rem;font-size:.56rem;display:grid}.notification-list{overscroll-behavior:contain;min-height:13rem;overflow-y:auto}.notification-loading{min-height:12rem;color:var(--muted);justify-content:center;align-items:center;gap:.65rem;font-size:.72rem;display:flex}.notification-error{min-height:13rem;color:var(--danger);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.45rem;padding:1.5rem;display:flex}.notification-error strong{color:var(--ink);font-size:.78rem}.notification-error small{max-width:20rem;color:var(--muted);margin-bottom:.35rem;font-size:.65rem;line-height:1.4}.notification-item{border-bottom:1px solid var(--surface-subtle);background:var(--paper);text-align:left;grid-template-columns:2.3rem minmax(0,1fr) .6rem;gap:.7rem;width:100%;padding:.9rem 1.05rem;display:grid;position:relative}.notification-item:hover{background:var(--surface-subtle)}.notification-item.is-unread{background:#f4fbfc}.notification-item.is-important{border-left:4px solid var(--danger);padding-left:calc(1.05rem - 4px)}.notification-item__icon{width:2.2rem;height:2.2rem;color:var(--blue-strong);background:var(--blue-soft);border-radius:10px;place-items:center;display:grid}.notification-item.is-important .notification-item__icon{color:var(--danger);background:var(--danger-soft)}.notification-item__copy{gap:.28rem;min-width:0;display:grid}.notification-item__title{color:var(--ink);align-items:center;gap:.45rem;font-size:.75rem;font-weight:760;display:flex}.notification-item__body{color:var(--muted);font-size:.68rem;line-height:1.45}.notification-item__meta{color:#93a1a5;font-size:.6rem}.important-label{color:var(--danger);background:var(--danger-soft);text-transform:uppercase;border-radius:999px;padding:.2rem .38rem;font-size:.55rem;font-weight:800}.unread-dot{background:var(--blue-strong);border-radius:50%;align-self:center;width:.5rem;height:.5rem}.notification-item.is-important .unread-dot{background:var(--danger)}.notification-panel__footer{border-top:1px solid var(--line);background:var(--paper);justify-content:space-between;align-items:center;gap:.5rem;padding:.75rem 1rem;display:flex}.dialog-backdrop{z-index:150;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f272e87;place-items:center;padding:1.25rem;display:grid;position:fixed;inset:0}.dialog{background:var(--paper);width:min(37rem,100%);max-height:min(50rem,100vh - 2.5rem);box-shadow:var(--shadow-lg);border-radius:20px;flex-direction:column;display:flex;overflow:hidden}.dialog__header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.2rem 1.25rem 1rem;display:flex}.dialog__header h2{letter-spacing:-.025em;margin:0;font-size:1.2rem}.dialog__header p{color:var(--muted);margin:.4rem 0 0;font-size:.72rem;line-height:1.45}.dialog__header .icon-button{width:2.2rem;height:2.2rem}.dialog__body{min-height:0;padding:1.25rem;overflow-y:auto}.dialog__footer{border-top:1px solid var(--line);background:var(--paper);justify-content:flex-end;align-items:center;gap:.55rem;padding:.85rem 1.25rem;display:flex}.account-dialog{width:min(48rem,100%)}.account-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-bottom:1rem;display:grid}.account-summary .card{align-items:center;gap:.9rem;min-height:5.5rem;padding:1rem 1.15rem;display:flex}.account-summary__icon{width:2.6rem;height:2.6rem;color:var(--blue-strong);background:var(--blue-soft);border-radius:11px;place-items:center;display:grid}.account-summary__icon--green{color:var(--success);background:var(--success-soft)}.account-summary__icon--orange{color:var(--orange);background:var(--orange-soft)}.account-summary .card>span:last-child{gap:.15rem;display:grid}.account-summary small{color:var(--muted);font-size:.68rem}.account-summary strong{font-size:1.35rem}.accounts-card{overflow:hidden}.accounts-toolbar{border-bottom:1px solid var(--line);align-items:flex-end;gap:.75rem;padding:1rem;display:flex}.accounts-toolbar>label:not(.search-field){gap:.35rem;display:grid}.accounts-toolbar select{width:9.5rem;min-height:2.45rem;padding:.5rem .65rem;font-size:.75rem}.search-field{border:1px solid var(--line-strong);background:var(--paper);border-radius:10px;flex:1;align-items:center;gap:.55rem;min-width:12rem;height:2.45rem;padding:0 .75rem;display:flex}.search-field:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px #51b8cb26}.search-field svg{color:#899b9f}.search-field input{background:0 0;border:0;outline:0;width:100%;min-width:0;font-size:.76rem}.accounts-count{color:var(--muted);white-space:nowrap;margin-left:auto;padding-bottom:.65rem;font-size:.68rem}.accounts-table-wrap{overflow-x:auto}.accounts-table{border-collapse:collapse;width:100%;min-width:58rem}.accounts-table th{height:2.7rem;color:var(--muted);background:var(--surface-subtle);text-align:left;padding:.6rem 1rem;font-size:.65rem;font-weight:760}.accounts-table td{border-top:1px solid var(--surface-subtle);min-height:4rem;color:var(--muted);padding:.72rem 1rem;font-size:.72rem;line-height:1.4}.accounts-table td:first-child{align-items:center;gap:.7rem;display:flex}.accounts-table td:first-child>span:last-child{gap:.15rem;display:grid}.accounts-table td:first-child strong{color:var(--ink);font-size:.75rem}.accounts-table td:first-child small{color:var(--muted);font-size:.63rem}.role-list{flex-wrap:wrap;align-items:center;gap:.3rem;display:flex}.account-form{gap:1rem;display:grid}.role-picker,.association-picker{border:0;margin:0;padding:0}.role-picker legend,.association-picker legend{color:var(--muted);margin-bottom:.55rem;font-size:.72rem;font-weight:760}.role-picker>div,.association-picker>div{flex-wrap:wrap;gap:.5rem;display:flex}.role-picker label input,.association-picker label input{opacity:0;pointer-events:none;position:absolute}.role-picker label span,.association-picker label span{color:#53676d;border:1px solid var(--line-strong);background:var(--paper);border-radius:9px;align-items:center;gap:.45rem;min-height:2.3rem;padding:.5rem .7rem;font-size:.7rem;font-weight:700;display:flex}.role-picker label input:checked+span,.association-picker label input:checked+span{color:var(--blue-strong);border-color:var(--blue);background:var(--blue-soft)}.association-picker>small{color:var(--muted);margin-top:.55rem;font-size:.66rem;display:block}.association-picker__students{max-height:11rem;padding:.1rem;overflow-y:auto}.credential-mode{border:0;margin:0;padding:0}.credential-mode legend{color:var(--muted);margin-bottom:.55rem;font-size:.72rem;font-weight:760}.credential-mode>div{grid-template-columns:1fr 1fr;gap:.6rem;display:grid}.credential-mode label{position:relative}.credential-mode input{opacity:0;pointer-events:none;position:absolute}.credential-mode label>span{border:1px solid var(--line-strong);background:var(--paper);border-radius:10px;align-content:center;gap:.2rem;min-height:4rem;padding:.7rem .8rem;display:grid}.credential-mode strong{color:var(--ink);font-size:.71rem}.credential-mode small{color:var(--muted);font-size:.62rem;line-height:1.35}.credential-mode input:checked+span{border-color:var(--blue);background:var(--blue-soft);box-shadow:inset 0 0 0 1px var(--blue)}.generated-credentials-note{color:#3f6b74;background:var(--blue-soft);border-radius:9px;align-items:flex-start;gap:.55rem;margin:0;padding:.75rem .8rem;font-size:.68rem;line-height:1.45;display:flex}.generated-credentials-note svg{color:var(--blue-strong);flex:none}.account-form__two{grid-template-columns:1fr 1fr;gap:.8rem;display:grid}.individual-permissions{border:1px solid var(--line);border-radius:12px;margin:0;padding:1rem}.individual-permissions legend{color:var(--ink);padding:0 .35rem;font-size:.76rem;font-weight:800}.individual-permissions>p{color:var(--muted);margin:0 0 .7rem;font-size:.66rem;line-height:1.45}.individual-permissions>div{max-height:22rem;overflow-y:auto}.individual-permissions>div>label{border-bottom:1px solid var(--surface-subtle);grid-template-columns:minmax(0,1fr) 8.5rem;align-items:center;gap:.8rem;min-height:3.7rem;padding:.6rem .1rem;display:grid}.individual-permissions>div>label:last-child{border-bottom:0}.individual-permissions label>span{gap:.16rem;min-width:0;display:grid}.individual-permissions strong{font-size:.69rem}.individual-permissions small{color:var(--muted);font-size:.6rem;line-height:1.35}.individual-permissions select{border:1px solid var(--line-strong);background:var(--paper);border-radius:8px;width:100%;min-height:2.3rem;padding:.45rem .55rem;font-size:.65rem}.input-action{border:1px solid var(--line-strong);border-radius:10px;display:flex;overflow:hidden}.input-action:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px #51b8cb26}.input-action input{border:0;border-radius:0;min-width:0;box-shadow:none!important}.input-action button{color:var(--blue-strong);border-left:1px solid var(--line);background:var(--surface-subtle);padding:0 .7rem;font-size:.66rem;font-weight:750}.account-detail,.credentials-card{gap:.8rem;display:grid}.account-detail>div,.credentials-card>div{border-bottom:1px solid var(--line);grid-template-columns:9rem 1fr;gap:1rem;padding-bottom:.75rem;display:grid}.account-detail span,.credentials-card span{color:var(--muted);font-size:.7rem}.account-detail strong,.credentials-card strong{font-size:.76rem}.account-detail p{color:#5b7075;background:var(--blue-soft);border-radius:10px;align-items:flex-start;gap:.6rem;margin:.2rem 0 0;padding:.75rem;font-size:.7rem;line-height:1.45;display:flex}.credentials-card code{width:fit-content;color:var(--ink);background:#edf3f4;border-radius:7px;padding:.35rem .55rem;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.82rem;font-weight:750}.student-header-actions{align-items:center;gap:.55rem;display:flex}.student-notice{margin-bottom:1rem}.student-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-bottom:1rem;display:grid}.student-metrics>.card{align-items:center;gap:1rem;min-height:6.7rem;padding:1rem 1.15rem;display:flex}.student-metrics>.card>span:last-child{gap:.2rem;min-width:0;display:grid}.student-metrics small{color:var(--muted);font-size:.68rem;font-weight:700}.student-metrics strong{letter-spacing:-.04em;font-size:1.5rem}.student-class-overview{margin-bottom:1rem;overflow:hidden}.student-view-toggle{background:var(--surface-subtle);border-radius:10px;gap:.2rem;padding:.22rem;display:flex}.student-view-toggle button{min-height:2rem;color:var(--muted);background:0 0;border-radius:7px;padding:.38rem .65rem;font-size:.67rem;font-weight:740}.student-view-toggle button.active{color:var(--blue-strong);background:var(--paper);box-shadow:0 1px 4px #17303917}.student-class-strip{grid-template-columns:repeat(12,minmax(4.25rem,1fr));gap:.42rem;padding:.85rem 1rem 1rem;display:grid;overflow-x:auto}.student-class-strip button{min-height:3.45rem;color:var(--muted);border:1px solid var(--line);background:var(--paper);border-radius:10px;align-content:center;place-items:center;gap:.15rem;display:grid}.student-class-strip button:hover{background:var(--blue-soft);border-color:#b7dce2}.student-class-strip button.active{color:#fff;border-color:var(--blue-strong);background:var(--blue-strong)}.student-class-strip strong{font-size:.73rem}.student-class-strip small{color:inherit;opacity:.72;font-size:.6rem}.student-class-grid{background:var(--surface-subtle);grid-template-columns:repeat(4,minmax(12rem,1fr));gap:.65rem;padding:1rem;display:grid}.student-class-card{min-width:0;min-height:7.7rem;color:var(--muted);border:1px solid var(--line);background:var(--paper);text-align:left;border-radius:12px;grid-template-columns:2.8rem minmax(0,1fr);align-content:center;align-items:center;gap:.2rem .8rem;padding:.85rem;display:grid}.student-class-card:hover,.student-class-card.is-selected{border-color:#a8d5dd;box-shadow:0 5px 16px #2e8da014}.student-class-card.is-selected{background:var(--blue-soft)}.student-class-card__grade{width:2.75rem;height:2.75rem;color:var(--blue-strong);background:var(--blue-soft);border-radius:11px;grid-row:1/span 2;place-items:center;font-size:.95rem;font-weight:900;display:grid}.student-class-card.is-selected .student-class-card__grade{color:#fff;background:var(--blue-strong)}.student-class-card>span:nth-child(2){gap:.16rem;min-width:0;display:grid}.student-class-card strong{color:var(--ink);font-size:.77rem}.student-class-card small{color:var(--muted);font-size:.62rem}.student-class-card__teacher{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;grid-column:1/-1;align-items:center;gap:.4rem;margin-top:.45rem;font-size:.62rem;display:flex;overflow:hidden}.student-roster-card{min-width:0;overflow:hidden}.student-toolbar{border-bottom:1px solid var(--line);background:var(--paper);align-items:flex-end;gap:.65rem;padding:.9rem 1rem;display:flex}.student-toolbar .search-field{max-width:30rem;margin-bottom:0}.student-toolbar>.field{width:10rem}.student-toolbar>.field select{min-height:2.45rem;padding-block:.5rem;font-size:.73rem}.student-toolbar__count{color:var(--muted);white-space:nowrap;margin-left:auto;padding-bottom:.68rem;font-size:.67rem}.student-table-wrap{transition:opacity .15s;overflow-x:auto}.student-table-wrap.is-loading{opacity:.6}.student-table{border-collapse:collapse;width:100%;min-width:61rem}.student-table th{height:2.7rem;color:var(--muted);background:var(--surface-subtle);text-align:left;padding:.6rem 1rem;font-size:.64rem;font-weight:760}.student-table td{color:var(--muted);border-top:1px solid var(--surface-subtle);padding:.72rem 1rem;font-size:.71rem}.student-table tbody tr:hover{background:#fbfdfd}.student-table td:first-child{align-items:center;gap:.7rem;min-width:18rem;display:flex}.student-table td:first-child>span:last-child{gap:.15rem;min-width:0;display:grid}.student-table td:first-child strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.student-table td:first-child small{color:var(--muted);font-size:.59rem}.student-row-actions{justify-content:flex-end;gap:.24rem;display:flex}.student-row-actions button{width:2.1rem;height:2.1rem;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:8px;place-items:center;display:grid}.student-row-actions button:hover{color:var(--blue-strong);background:var(--blue-soft);border-color:#c3e1e6}.student-row-actions button.danger:hover{color:var(--danger);background:var(--danger-soft);border-color:#efc6c8}.student-dialog{width:min(43rem,100%)}.student-import-dialog{width:min(60rem,100%)}.student-form{gap:1rem;display:grid}.student-form .form-alert,form>.form-alert{margin-bottom:1rem}.student-form__row{grid-template-columns:1fr 1fr;gap:.8rem;display:grid}.student-transfer-person{background:var(--surface-subtle);border-radius:11px;align-items:center;gap:.75rem;padding:.75rem;display:flex}.student-transfer-person>span:last-child{gap:.18rem;min-width:0;display:grid}.student-transfer-person strong{text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.student-transfer-person small{color:var(--muted);font-size:.65rem}.student-history{display:grid}.student-history>div{grid-template-columns:1.3rem minmax(0,1fr);gap:.65rem;min-height:4.4rem;padding-bottom:1rem;display:grid;position:relative}.student-history__line{background:#d9e6e8;width:2px;position:absolute;top:.7rem;bottom:-.2rem;left:.32rem}.student-history>div:last-child .student-history__line{display:none}.student-history__dot{z-index:1;background:var(--blue-strong);border:2px solid #fff;border-radius:50%;width:.72rem;height:.72rem;margin-top:.15rem;position:relative;box-shadow:0 0 0 2px #bfe1e6}.student-history>div>span:last-child{gap:.2rem;display:grid}.student-history strong{font-size:.77rem}.student-history small{color:var(--muted);font-size:.66rem}.student-history p{color:var(--muted);margin:.15rem 0 0;font-size:.68rem;line-height:1.45}.student-import{gap:1rem;display:grid}.student-import-zone{min-height:9.5rem;color:var(--blue-strong);text-align:center;cursor:pointer;background:#f7fcfc;border:1.5px dashed #acd3da;border-radius:13px;align-content:center;place-items:center;gap:.35rem;padding:1rem;display:grid}.student-import-zone:hover{border-color:var(--blue-strong);background:var(--blue-soft)}.student-import-zone input{opacity:0;width:1px;height:1px;position:absolute}.student-import-zone strong{color:var(--ink);margin-top:.25rem;font-size:.8rem}.student-import-zone span{color:var(--muted);font-size:.68rem}.student-import-zone small{color:#94a4a8;font-size:.6rem}.student-import-summary{border:1px solid var(--line);border-radius:11px;grid-template-columns:auto 1fr;align-items:center;gap:.35rem .65rem;padding:.8rem;display:grid}.student-import-summary strong{font-size:.73rem}.student-import-summary small{color:var(--muted);grid-column:2;font-size:.63rem}.student-import-errors{max-height:8rem;color:var(--danger);background:var(--danger-soft);border-radius:10px;padding:.5rem .7rem;overflow-y:auto}.student-import-errors p{align-items:flex-start;gap:.4rem;margin:.35rem 0;font-size:.66rem;line-height:1.4;display:flex}.student-import-preview{border:1px solid var(--line);border-radius:11px;max-height:18rem;overflow:auto}.student-import-preview table{border-collapse:collapse;width:100%;min-width:38rem}.student-import-preview th,.student-import-preview td{border-bottom:1px solid var(--surface-subtle);text-align:left;padding:.58rem .7rem;font-size:.66rem}.student-import-preview th{color:var(--muted);background:var(--surface-subtle);font-weight:760;position:sticky;top:0}.school-import-wizard{width:min(74rem,100%)}.school-import-wizard .dialog__body{gap:1rem;display:grid}.school-import-steps{grid-template-columns:repeat(4,1fr);gap:.45rem;display:grid}.school-import-steps span{color:#87979b;background:#f2f5f5;border-radius:10px;align-items:center;gap:.45rem;min-width:0;padding:.55rem .65rem;font-size:.66rem;font-weight:700;display:flex}.school-import-steps span b{color:#71858a;background:var(--line);border-radius:50%;flex:0 0 1.35rem;place-items:center;height:1.35rem;font-size:.62rem;display:grid}.school-import-steps span.active{color:var(--blue-strong);background:var(--blue-soft)}.school-import-steps span.active b{color:#fff;background:var(--blue-strong)}.school-import-file{min-height:11rem}.school-import-transfer{border:1px solid var(--line);cursor:pointer;border-radius:11px;align-items:flex-start;gap:.7rem;padding:.75rem .85rem;display:flex}.school-import-transfer input{accent-color:var(--blue-strong);flex:none;margin-top:.18rem}.school-import-transfer span{gap:.25rem;display:grid}.school-import-transfer strong{font-size:.73rem}.school-import-transfer small{color:var(--muted);font-size:.64rem;line-height:1.45}.school-import-downloads{background:#f9fcfc;border:1px solid #dce9eb;border-radius:11px;align-items:center;gap:.5rem;padding:.8rem .9rem;display:flex}.school-import-downloads>span{flex:1;gap:.18rem;display:grid}.school-import-downloads strong{font-size:.72rem}.school-import-downloads small{color:var(--muted);font-size:.62rem}.school-import-preview-result,.school-import-complete{gap:.85rem;display:grid}.school-import-preview-heading{align-items:center;gap:.8rem;display:flex}.school-import-preview-heading>span{gap:.1rem;display:grid}.school-import-preview-heading strong{font-size:.8rem}.school-import-preview-heading small{color:var(--muted);font-size:.65rem}.school-import-table-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;display:grid}.school-import-table-summary>div{border:1px solid var(--line);border-radius:10px;grid-template-columns:1fr auto;gap:.15rem .5rem;padding:.65rem .75rem;display:grid}.school-import-table-summary span{color:var(--muted);font-size:.63rem}.school-import-table-summary strong{color:var(--ink);grid-area:1/2/3;align-self:center;font-size:1rem}.school-import-table-summary small{color:#809095;font-size:.58rem}.school-import-issues{background:#fff8f7;border:1px solid #f1c3bd;border-radius:11px;max-height:18rem;padding:.75rem .8rem;overflow:auto}.school-import-issues>strong{color:var(--danger);margin-bottom:.5rem;font-size:.72rem;display:block}.school-import-issues p{color:#7a3b34;align-items:flex-start;gap:.4rem;margin:.38rem 0;font-size:.64rem;line-height:1.45;display:flex}.school-import-issues p svg{flex:none}.school-import-credential-warning{color:#7b4b09;background:#fff9e9;border:1px solid #f0cc87;border-radius:11px;align-items:flex-start;gap:.65rem;padding:.78rem .85rem;display:flex}.school-import-credential-warning span{gap:.22rem;display:grid}.school-import-credential-warning strong{font-size:.75rem}.school-import-credential-warning small{font-size:.64rem;line-height:1.45}.school-import-credentials{border:1px solid var(--line);border-radius:11px;max-height:21rem;overflow:auto}.school-import-credentials table{border-collapse:collapse;width:100%;min-width:42rem}.school-import-credentials th,.school-import-credentials td{border-bottom:1px solid var(--surface-subtle);text-align:left;padding:.58rem .7rem;font-size:.65rem}.school-import-credentials th{color:#fff;background:var(--blue-strong);position:sticky;top:0}.school-import-credentials code{font-size:.66rem}.segmented{border:1px solid var(--line);background:var(--paper);border-radius:12px;gap:.25rem;width:fit-content;margin-bottom:1rem;padding:.28rem;display:flex}.segmented button{min-height:2.2rem;color:var(--muted);background:0 0;border-radius:8px;padding:.45rem .75rem;font-size:.72rem;font-weight:720}.segmented button.active{color:var(--blue-strong);background:var(--blue-soft)}.announcement-list{gap:.85rem;display:grid}.announcement{grid-template-columns:3rem minmax(0,1fr);gap:1rem;padding:1.2rem;display:grid;position:relative;overflow:hidden}.announcement--important{border-left:4px solid var(--danger)}.announcement--target{box-shadow:0 0 0 3px #51b8cb38, var(--shadow-sm)}.announcement__icon{width:2.8rem;height:2.8rem;color:var(--blue-strong);background:var(--blue-soft);border-radius:12px;place-items:center;display:grid}.announcement--important .announcement__icon{color:var(--danger);background:var(--danger-soft)}.announcement__copy{min-width:0}.announcement__meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.6rem;font-size:.64rem;display:flex}.announcement__meta span:first-child{color:var(--blue-strong);font-weight:760}.announcement h2{letter-spacing:-.02em;margin:.65rem 0 .45rem;font-size:1.05rem}.announcement p{color:var(--muted);white-space:pre-wrap;margin:0;font-size:.78rem;line-height:1.62}.announcement footer{border-top:1px solid var(--surface-subtle);justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;padding-top:.85rem;display:flex}.announcement footer>span:first-child{color:var(--muted);align-items:center;gap:.45rem;font-size:.66rem;display:flex}.announcement__actions{align-items:center;gap:.45rem;display:flex}.receipt-list{display:grid}.receipt-list>div{border-bottom:1px solid var(--surface-subtle);justify-content:space-between;align-items:center;gap:1rem;min-height:3.7rem;padding:.65rem .1rem;display:flex}.receipt-list>div:last-child{border-bottom:0}.receipt-list>div>span:first-child{gap:.15rem;min-width:0;display:grid}.receipt-list strong{text-overflow:ellipsis;white-space:nowrap;font-size:.73rem;overflow:hidden}.receipt-list small{color:var(--muted);font-size:.62rem}.announcement-form{gap:1rem;display:grid}.announcement-options{gap:.65rem;display:grid}.announcement-options label{border:1px solid var(--line);border-radius:11px;align-items:flex-start;gap:.65rem;padding:.75rem;display:flex}.announcement-options input{accent-color:var(--blue-strong);margin-top:.2rem}.announcement-options label>span{gap:.2rem;display:grid}.announcement-options strong{font-size:.74rem}.announcement-options small{color:var(--muted);font-size:.66rem;line-height:1.45}.settings-layout{grid-template-columns:14rem minmax(0,1fr);align-items:start;gap:1rem;display:grid}.settings-nav{border:1px solid var(--line);background:var(--paper);box-shadow:var(--shadow-sm);border-radius:14px;gap:.25rem;padding:.45rem;display:grid;position:sticky;top:6rem}.settings-nav button{min-height:2.75rem;color:var(--muted);text-align:left;background:0 0;border-radius:9px;grid-template-columns:1.25rem 1fr 1rem;align-items:center;gap:.65rem;padding:.6rem .7rem;display:grid}.settings-nav button:hover{background:var(--surface-subtle)}.settings-nav button.active{color:var(--blue-strong);background:var(--blue-soft);font-weight:750}.settings-nav span{font-size:.72rem}.settings-nav button>svg:last-child{color:#a1b0b3}.settings-content{min-width:0}.settings-panel{min-width:0;overflow:hidden}.settings-panel>.form-alert,.settings-panel>.success-alert{margin:1rem 1.2rem 0}.academic-rules-form{gap:1.1rem;padding:1.2rem;display:grid}.academic-rules-summary{grid-template-columns:repeat(auto-fit,minmax(17rem,1fr));align-items:stretch;gap:1rem;display:grid}.academic-rules-days{align-items:center;gap:.65rem;display:flex}.academic-rules-days input{border:1px solid var(--line-strong);width:7rem;min-height:2.55rem;font:inherit;border-radius:9px;padding:.55rem .7rem}.academic-rules-days span{color:var(--muted);font-size:.7rem;font-weight:750}.academic-rules-note{color:#4f6266;background:#f3f9f9;border:1px solid #d7e5e5;border-radius:11px;align-items:flex-start;gap:.7rem;padding:.9rem 1rem;display:flex}.academic-rules-note>svg{color:var(--blue-strong);flex:none}.academic-rules-note p{gap:.3rem;margin:0;display:grid}.academic-rules-note strong{color:#24464c;font-size:.73rem}.academic-rules-note span{font-size:.65rem;line-height:1.5}.academic-rules-heading{justify-content:space-between;align-items:flex-start;gap:1rem;padding:.25rem 0 .1rem;display:flex}.academic-rules-heading h3,.academic-rules-heading p{margin:0}.academic-rules-heading h3{font-size:.83rem}.academic-rules-heading p{max-width:44rem;color:var(--muted);margin-top:.3rem;font-size:.65rem;line-height:1.5}.academic-rules-grid{grid-template-columns:repeat(auto-fit,minmax(11.5rem,1fr));gap:.65rem;display:grid}.academic-rules-grid label{border:1px solid var(--line);background:var(--paper);border-radius:10px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.7rem;padding:.7rem .8rem;display:grid}.academic-rules-grid label>span{font-size:.72rem;font-weight:780}.academic-rules-grid label>div{align-items:center;gap:.4rem;display:flex}.academic-rules-grid label small{color:var(--muted);font-size:.6rem}.academic-rules-grid input{border:1px solid var(--line-strong);background:var(--paper);width:100%;min-height:2.25rem;font:inherit;border-radius:8px;padding:.4rem .55rem}.academic-rules-grid label>div input{width:6.2rem}.academic-rules-form>.form-actions{justify-content:flex-end;padding-top:.2rem;display:flex}.academic-year-field{align-items:flex-end;gap:1rem;padding:1.2rem;display:flex}.academic-year-field .field{width:12rem}.academic-year-field p{color:var(--muted);align-items:center;gap:.5rem;margin:0 0 .7rem;font-size:.68rem;display:flex}.term-list{border-top:1px solid var(--line);display:grid}.term-row{border-bottom:1px solid var(--surface-subtle);grid-template-columns:2.2rem minmax(10rem,1fr) minmax(9rem,.75fr) minmax(9rem,.75fr);align-items:end;gap:.8rem;padding:.9rem 1.2rem;display:grid}.term-row:last-child{border-bottom:0}.term-row__number{width:2.05rem;height:2.05rem;color:var(--blue-strong);background:var(--blue-soft);border-radius:9px;place-items:center;font-size:.76rem;font-weight:850;display:grid}.term-row__name{gap:.18rem;padding-bottom:.65rem;display:grid}.term-row__name strong{font-size:.75rem}.term-row__name small{color:var(--muted);font-size:.64rem}.academic-calendar-actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.academic-year-toolbar{grid-template-columns:repeat(3,minmax(9rem,1fr));gap:.8rem;padding:1.1rem 1.2rem 1.2rem;display:grid}.academic-history-lock{color:#6d5910;background:#fff9e7;border:1px solid #f0dda0;border-radius:10px;align-items:flex-start;gap:.7rem;margin:1rem 1.2rem 0;padding:.8rem .9rem;display:flex}.academic-history-lock>svg{flex:none;margin-top:.05rem}.academic-history-lock>span{gap:.2rem;display:grid}.academic-history-lock strong{font-size:.72rem}.academic-history-lock small{font-size:.64rem;line-height:1.45}.academic-calendar-editor>.settings-note{margin-top:1rem}.academic-term-list{overflow-x:auto}.academic-term-row{grid-template-columns:2.2rem minmax(10rem,1.2fr) minmax(8.6rem,.75fr) minmax(8.6rem,.75fr) minmax(8rem,.65fr) auto;min-width:58rem}.academic-term-row>.status-badge{white-space:nowrap;align-self:center;margin-bottom:.65rem}.role-tabs{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:.3rem;padding:1rem 1.2rem;display:flex}.role-tabs button{min-height:2.2rem;color:var(--muted);background:var(--surface-subtle);border-radius:8px;padding:.45rem .7rem;font-size:.69rem;font-weight:720}.role-tabs button.active{color:#fff;background:var(--blue-strong)}.permission-groups{background:var(--surface-subtle);gap:1rem;padding:1rem;display:grid}.permission-group{border:1px solid var(--line);background:var(--paper);border-radius:12px;overflow:hidden}.permission-group>header{background:var(--surface-subtle);justify-content:space-between;align-items:center;padding:.75rem .9rem;display:flex}.permission-group h3{margin:0;font-size:.78rem}.permission-group header small{color:var(--muted);font-size:.62rem}.permission-row{border-top:1px solid var(--surface-subtle);grid-template-columns:minmax(14rem,1fr) 6rem 9.5rem;align-items:center;gap:.8rem;min-height:4rem;padding:.65rem .9rem;display:grid}.permission-row>span:first-child{gap:.2rem;display:grid}.permission-row strong{font-size:.72rem}.permission-row small{color:var(--muted);font-size:.63rem;line-height:1.4}.permission-row select{border:1px solid var(--line-strong);background:var(--paper);border-radius:8px;min-height:2.3rem;padding:.45rem .6rem;font-size:.68rem}.role-action-settings .permission-row{grid-template-columns:minmax(0,1fr) minmax(150px,200px)}.role-action-settings>.form-hint,.role-action-settings>.form-alert{color:var(--muted);margin:16px 20px;font-size:13px;line-height:1.6}.role-action-settings legend{padding:4px 20px 12px;font-size:14px;font-weight:700}.role-action-settings .permission-row strong{font-size:13px}.role-action-settings .permission-row small{font-size:12px}.role-action-settings .permission-row select{font-size:13px}.role-action-settings .form-actions{padding:0 20px 20px}.role-action-settings .permission-group>.form-hint{padding:16px;line-height:1.6}@media (width<=600px){.role-action-settings .permission-row{grid-template-columns:minmax(0,1fr)}}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:1rem;display:grid}.chip-grid{flex-wrap:wrap;gap:.5rem;padding:1rem 1.2rem;display:flex}.chip-grid span{min-width:3.5rem;color:var(--blue-strong);background:var(--blue-soft);text-align:center;border-radius:9px;padding:.55rem .7rem;font-size:.72rem;font-weight:760}.settings-note{color:var(--muted);background:#f4f7f8;border-radius:9px;align-items:flex-start;gap:.5rem;margin:0 1.2rem 1.2rem;padding:.7rem;font-size:.68rem;line-height:1.45;display:flex}.catalog-list{max-height:30rem;overflow-y:auto}.catalog-list>div{border-bottom:1px solid var(--surface-subtle);grid-template-columns:2rem 1fr auto;align-items:center;gap:.65rem;min-height:3.5rem;padding:.65rem 1.1rem;display:grid}.catalog-list strong{font-size:.72rem}.catalog-icon{width:2rem;height:2rem;color:var(--blue-strong);background:var(--blue-soft);border-radius:8px;place-items:center;display:grid}.catalog-manager-toolbar{border-bottom:1px solid var(--line);background:var(--paper);justify-content:space-between;align-items:end;gap:1rem;padding:1rem 1.2rem;display:flex}.catalog-manager-toolbar .segmented{margin:0}.catalog-manager-toolbar .segmented button{align-items:center;gap:.45rem;display:inline-flex}.catalog-manager-toolbar .segmented button span{text-align:center;background:#e8eff0;border-radius:999px;min-width:1.25rem;padding:.16rem .32rem;font-size:.58rem}.catalog-manager-toolbar .segmented button.active span{color:#fff;background:var(--blue-strong)}.catalog-manager-toolbar>.field{flex:none;width:13rem}.catalog-section{min-height:20rem}.catalog-section-head{border-bottom:1px solid var(--surface-subtle);justify-content:space-between;align-items:center;gap:1rem;min-height:4.6rem;padding:.8rem 1.2rem;display:flex}.catalog-section-head>div{gap:.22rem;display:grid}.catalog-section-head strong{font-size:.78rem}.catalog-section-head small{color:var(--muted);font-size:.65rem;line-height:1.4}.catalog-entity-grid{background:var(--surface-subtle);grid-template-columns:repeat(2,minmax(18rem,1fr));gap:.75rem;padding:1rem;display:grid}.catalog-entity-grid--wide{grid-template-columns:1fr}.catalog-entity-card{border:1px solid var(--line);background:var(--paper);min-width:0;box-shadow:var(--shadow-sm);border-radius:12px;grid-template-columns:2.8rem minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.85rem;display:grid}.catalog-entity-symbol{width:2.7rem;height:2.7rem;color:var(--blue-strong);background:var(--blue-soft);border-radius:10px;place-items:center;font-size:1rem;font-weight:900;display:grid}.catalog-entity-card>div:nth-child(2){gap:.32rem;min-width:0;display:grid}.catalog-entity-title{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.catalog-entity-title strong{text-overflow:ellipsis;white-space:nowrap;font-size:.77rem;overflow:hidden}.catalog-entity-card small{color:var(--muted);align-items:center;gap:.35rem;font-size:.63rem;display:flex}.catalog-card-actions{align-items:center;gap:.2rem;display:flex}.catalog-table-wrap{width:100%;overflow-x:auto}.catalog-table{border-collapse:collapse;width:100%;min-width:54rem}.catalog-table th{color:var(--muted);border-bottom:1px solid var(--line);background:var(--surface-subtle);text-align:left;text-transform:uppercase;padding:.7rem .8rem;font-size:.62rem;font-weight:800}.catalog-table td{border-bottom:1px solid var(--surface-subtle);vertical-align:middle;padding:.75rem .8rem;font-size:.7rem}.catalog-table tbody tr:last-child td{border-bottom:0}.catalog-table td>strong,.catalog-table td>small{display:block}.catalog-table td>strong{font-size:.73rem}.catalog-table td>small{color:var(--muted);margin-top:.2rem;font-size:.61rem}.catalog-table td:last-child{text-align:right;width:1%}.catalog-table--offerings{min-width:66rem}.catalog-features{flex-wrap:wrap;gap:.3rem;display:flex}.catalog-feature{color:#91a0a3;background:#f0f3f4;border-radius:7px;align-items:center;gap:.22rem;padding:.25rem .4rem;font-size:.59rem;font-weight:720;display:inline-flex}.catalog-feature.is-on{color:var(--success);background:var(--success-soft)}.catalog-teacher-stack{gap:.22rem;min-width:10rem;display:grid}.catalog-teacher-stack>span{justify-content:space-between;align-items:center;gap:.5rem;font-size:.66rem;display:flex}.catalog-teacher-stack>span small{color:var(--muted);font-size:.57rem}.catalog-teacher-stack em{color:var(--muted);font-size:.63rem;font-style:normal}.catalog-teacher-stack .button{width:fit-content;margin-top:.2rem}.catalog-dialog{width:min(48rem,100%)}.catalog-dialog--wide{width:min(70rem,100%)}.catalog-dialog .form-alert{margin-bottom:1rem}.catalog-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.catalog-form-wide{grid-column:1/-1}.catalog-toggle{border:1px solid var(--line);border-radius:10px;align-items:flex-start;gap:.65rem;min-height:3.2rem;padding:.7rem;display:flex}.catalog-toggle input{accent-color:var(--blue-strong);margin-top:.15rem}.catalog-toggle span,.catalog-option-grid label>span{gap:.15rem;display:grid}.catalog-toggle strong,.catalog-option-grid strong{font-size:.7rem}.catalog-toggle small,.catalog-option-grid small{color:var(--muted);font-size:.61rem;line-height:1.35}.catalog-option-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;display:grid}.catalog-option-grid label{border:1px solid var(--line);border-radius:10px;align-items:flex-start;gap:.55rem;min-height:4rem;padding:.7rem;display:flex}.catalog-option-grid input,.catalog-assignment-rights input{accent-color:var(--blue-strong);margin-top:.15rem}.catalog-members-toolbar{grid-template-columns:minmax(12rem,1fr) 10rem 10rem;gap:.75rem;margin-bottom:1rem;display:grid}.catalog-member-list{border:1px solid var(--line);background:var(--surface-subtle);border-radius:12px;grid-template-columns:repeat(2,minmax(14rem,1fr));gap:.4rem;max-height:31rem;padding:.35rem;display:grid;overflow-y:auto}.catalog-member-list>label{background:var(--paper);border:1px solid #0000;border-radius:9px;align-items:center;gap:.6rem;min-height:3.4rem;padding:.55rem .65rem;display:flex}.catalog-member-list>label.is-selected{background:var(--blue-soft);border-color:#b9dfe5}.catalog-member-list input{accent-color:var(--blue-strong)}.catalog-member-list label>span{gap:.15rem;min-width:0;display:grid}.catalog-member-list strong{text-overflow:ellipsis;white-space:nowrap;font-size:.69rem;overflow:hidden}.catalog-member-list small{color:var(--muted);font-size:.6rem}.catalog-member-list>.state{grid-column:1/-1}.catalog-teacher-toolbar{justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1rem;display:flex}.catalog-teacher-toolbar .field{width:12rem}.catalog-assignment-list{gap:.65rem;display:grid}.catalog-assignment-list>div{border:1px solid var(--line);background:var(--paper);border-radius:12px;padding:.75rem}.catalog-assignment-main{grid-template-columns:minmax(12rem,1.4fr) minmax(8rem,.8fr) 9rem 9rem 2.4rem;align-items:end;gap:.55rem;display:grid}.catalog-remove{width:2.4rem;height:2.7rem;color:var(--danger);background:var(--danger-soft);border-radius:9px;place-items:center;display:grid}.catalog-assignment-rights{border-top:1px solid var(--line);flex-wrap:wrap;gap:1rem;margin-top:.65rem;padding-top:.65rem;display:flex}.catalog-assignment-rights label{color:var(--muted);align-items:center;gap:.4rem;font-size:.63rem;display:flex}.upload-zone{color:var(--blue-strong);text-align:center;background:#f8fcfc;border:1.5px dashed #b8d8de;border-radius:12px;justify-items:center;margin:1.1rem;padding:2rem 1rem;display:grid}.upload-zone strong{color:var(--ink);margin-top:.7rem;font-size:.8rem}.upload-zone p{color:var(--muted);margin:.35rem 0 .9rem;font-size:.68rem}.upload-zone small{color:#95a4a7;margin-top:.75rem;font-size:.6rem}.export-list{padding:.6rem;display:grid}.export-list button,.export-list a{color:var(--blue-strong);text-align:left;background:0 0;border-radius:9px;align-items:center;gap:.7rem;padding:.75rem;text-decoration:none;display:flex}.export-list button:hover,.export-list a:hover{background:var(--blue-soft)}.export-list button>span,.export-list a>span{gap:.2rem;display:grid}.export-list strong{color:var(--ink);font-size:.73rem}.export-list small{color:var(--muted);font-size:.63rem}.deployment-flow{grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:.5rem;padding:1.2rem;display:grid}.deployment-flow>div{border:1px solid var(--line);text-align:center;border-radius:11px;align-content:center;justify-items:center;gap:.3rem;min-height:7rem;padding:.7rem;display:grid}.deployment-flow>div>span{width:1.8rem;height:1.8rem;color:var(--blue-strong);background:var(--blue-soft);border-radius:50%;place-items:center;font-size:.68rem;font-weight:850;display:grid}.deployment-flow strong{font-size:.69rem}.deployment-flow small{color:var(--muted);font-size:.6rem}@media (width<=1180px){:root{--sidebar-width:238px}.metrics-grid--four{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-grid{grid-template-columns:1fr}.student-class-grid{grid-template-columns:repeat(3,minmax(12rem,1fr))}.profile-trigger__copy{display:none}}@media (width<=900px){:root{font-size:15px}.sidebar{display:none}.workspace{margin-left:0;padding-bottom:5.5rem}.topbar{min-height:4.4rem;padding:.65rem 1rem}.mobile-brand{align-items:center;gap:.55rem;display:flex}.mobile-brand .brand__mark{border-radius:10px 10px 10px 3px;width:2.25rem;height:2.25rem;font-size:.9rem}.mobile-brand>span:last-child{gap:.08rem;display:grid}.mobile-brand strong{font-size:.72rem}.mobile-brand small{color:var(--muted);font-size:.6rem}.topbar__term{display:none}.profile-trigger{width:2.65rem;padding:.24rem}.profile-trigger>svg{display:none}.profile-popover{right:0}.main-content{padding:1.25rem 1rem}.mobile-nav{z-index:60;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff7;border:1px solid #c9dbdef2;border-radius:18px;grid-auto-columns:1fr;grid-auto-flow:column;min-height:4.45rem;padding:.35rem;display:grid;position:fixed;bottom:.65rem;left:.7rem;right:.7rem;box-shadow:0 12px 40px #17303930}.mobile-nav button{color:var(--muted);background:0 0;border-radius:12px;align-content:center;place-items:center;gap:.25rem;padding:.35rem .2rem;display:grid;position:relative}.mobile-nav button.active{color:var(--blue-strong);background:var(--blue-soft)}.mobile-nav button.active:after{content:"";background:var(--orange);border-radius:3px;width:1rem;height:3px;position:absolute;top:.15rem}.mobile-nav span{text-overflow:ellipsis;white-space:nowrap;max-width:4.8rem;font-size:.58rem;font-weight:750;overflow:hidden}.mobile-more-dialog{border-radius:22px 22px 0 0;align-self:end;width:100%;max-height:75vh}.dialog-backdrop:has(.mobile-more-dialog){align-items:end;padding:0}.mobile-more-list{gap:.35rem;display:grid}.mobile-more-list button{text-align:left;background:0 0;border-radius:10px;grid-template-columns:2.25rem 1fr 1.2rem;align-items:center;gap:.7rem;min-height:3.5rem;padding:.55rem;display:grid}.mobile-more-list button>span{width:2.2rem;height:2.2rem;color:var(--blue-strong);background:var(--blue-soft);border-radius:9px;place-items:center;display:grid}.mobile-more-list strong{font-size:.76rem}.settings-layout{grid-template-columns:1fr}.settings-nav{grid-template-columns:repeat(3,minmax(0,1fr));position:static}.settings-nav button{grid-template-columns:1.2rem 1fr}.settings-nav button>svg:last-child{display:none}.catalog-manager-toolbar{flex-direction:column-reverse;align-items:stretch}.catalog-manager-toolbar>.field{width:100%}.catalog-manager-toolbar .segmented{width:100%;overflow-x:auto}.catalog-manager-toolbar .segmented button{flex:none}.catalog-entity-grid{grid-template-columns:1fr}.catalog-assignment-main{grid-template-columns:minmax(12rem,1fr) minmax(8rem,.75fr) 8rem}.catalog-assignment-main .field:nth-child(4){grid-column:1/2}.catalog-assignment-main .catalog-remove{grid-area:2/3}.dashboard-grid--main{grid-template-columns:1fr}.student-class-grid{grid-template-columns:repeat(2,minmax(12rem,1fr))}.login-screen{grid-template-columns:1fr}.login-visual{min-height:23rem;padding:2rem}.login-visual__content{margin:3.5rem 0}.login-visual h1{font-size:clamp(2.2rem,8vw,3.4rem)}.login-form-wrap{padding:3rem 1.5rem}}@media (width<=760px){.page-header{flex-direction:column;align-items:flex-start;gap:1rem;margin-bottom:1.2rem}.page-header__actions,.page-header__actions .button{width:100%}.page-header h1{font-size:1.7rem}.metrics-grid--four,.metrics-grid--three{grid-template-columns:1fr 1fr}.metric-card{min-height:7rem;padding:.9rem}.metric-card__icon{width:2.35rem;height:2.35rem}.metric-card__copy strong{font-size:1.3rem}.family-hero{min-height:auto;padding:1.35rem}.family-hero__shield{display:none}.today-lesson{grid-template-columns:3.4rem .25rem 1fr 1rem;padding-inline:.9rem}.today-lesson__room{display:none}.notification-scrim{z-index:95;background:#0c222870;display:block;position:fixed;inset:0}.notification-panel{z-index:100;border:0;border-radius:0;width:100%;max-height:100%;position:fixed;inset:0}.notification-panel__header{padding-top:max(1rem, env(safe-area-inset-top))}.notification-panel__footer{padding-bottom:max(.75rem, env(safe-area-inset-bottom))}.account-summary{grid-template-columns:1fr;gap:.6rem}.account-summary .card{min-height:4.6rem}.accounts-toolbar{flex-direction:column;align-items:stretch}.accounts-toolbar select{width:100%}.student-header-actions{grid-template-columns:1fr 1fr;width:100%;display:grid}.student-header-actions .button:last-child{grid-column:1/-1}.student-metrics{grid-template-columns:1fr 1fr}.student-metrics>.card:last-child{grid-column:1/-1}.student-toolbar{flex-direction:column;align-items:stretch}.student-toolbar .search-field,.student-toolbar>.field{width:100%;max-width:none}.student-toolbar__count{margin-left:0;padding-bottom:0}.student-class-grid{grid-template-columns:1fr 1fr}.student-form__row{grid-template-columns:1fr}.accounts-count{margin-left:0;padding-bottom:0}.credential-mode>div,.account-form__two,.profile-form__two{grid-template-columns:1fr}.individual-permissions>div>label{grid-template-columns:1fr;gap:.45rem}.announcement{grid-template-columns:2.4rem minmax(0,1fr);gap:.75rem;padding:.9rem}.announcement__icon{width:2.35rem;height:2.35rem}.announcement footer{flex-direction:column;align-items:flex-start}.announcement__actions{flex-wrap:wrap;width:100%}.announcement__actions .button{flex:1}.announcement footer .button{width:100%}.segmented{width:100%;overflow-x:auto}.segmented button{flex:none}.term-row{grid-template-columns:2.1rem 1fr}.term-row .field{grid-column:span 1}.term-row .field:first-of-type{grid-column:1/2}.term-row .field:nth-of-type(2){grid-column:2/3}.academic-year-toolbar{grid-template-columns:1fr 1fr}.academic-term-row{align-items:start;min-width:0;grid-template-columns:2.1rem minmax(0,1fr)!important}.academic-term-row .field{grid-column:2/-1!important}.academic-term-row>.status-badge{grid-column:2/-1;justify-self:start;margin-bottom:.25rem}.permission-row{grid-template-columns:1fr auto}.permission-row>select{grid-column:1/-1;width:100%}.catalog-section-head{flex-direction:column;align-items:flex-start}.catalog-section-head .button{width:100%}.catalog-entity-card{grid-template-columns:2.7rem minmax(0,1fr)}.catalog-entity-card>.button,.catalog-entity-card>.catalog-card-actions{grid-column:1/-1;width:100%}.catalog-card-actions .button{flex:1}.catalog-form-grid,.catalog-option-grid,.catalog-members-toolbar{grid-template-columns:1fr}.catalog-form-wide{grid-column:auto}.catalog-member-list{grid-template-columns:1fr}.catalog-member-list>.state{grid-column:auto}.catalog-teacher-toolbar{flex-direction:column;align-items:stretch}.catalog-teacher-toolbar .field,.catalog-teacher-toolbar .button{width:100%}.catalog-assignment-main{grid-template-columns:1fr 1fr}.catalog-assignment-main .field:first-child{grid-column:1/-1}.catalog-assignment-main .field:nth-child(4){grid-column:auto}.catalog-assignment-main .catalog-remove{grid-area:auto/1/auto/-1;width:100%}.deployment-flow{grid-template-columns:1fr}.deployment-flow>svg{justify-self:center;transform:rotate(90deg)}.dialog-backdrop{align-items:end;padding:0}.dialog:not(.mobile-more-dialog){border-radius:22px 22px 0 0;width:100%;max-height:92vh}.dialog__footer{padding-bottom:max(.85rem, env(safe-area-inset-bottom))}.school-import-steps,.school-import-table-summary{grid-template-columns:1fr 1fr}.school-import-downloads{flex-wrap:wrap;align-items:stretch}.school-import-downloads>span{flex-basis:100%}}@media (width<=480px){.topbar{padding-inline:.75rem}.main-content{padding:1rem .75rem}.topbar__actions{gap:.35rem}.metrics-grid--four,.metrics-grid--three{grid-template-columns:1fr}.metric-card{min-height:5.9rem}.section-header{flex-direction:column;align-items:flex-start}.section-header>.button{width:100%}.family-child-switcher>header{flex-direction:column;align-items:flex-start}.family-child-switcher>header small{text-align:left;max-width:none}.family-child-switcher__options{grid-template-columns:1fr}.today-lesson{grid-template-columns:3rem .2rem 1fr;gap:.55rem}.today-lesson>svg{display:none}.control-list button{grid-template-columns:2rem 1fr}.control-list .status-badge{grid-column:2}.login-visual{min-height:18rem;padding:1.4rem}.login-visual__content{margin:2.2rem 0}.login-visual__content p,.login-visual__features span:first-child{display:none}.login-visual h1{font-size:2rem}.login-form-wrap{padding:2.2rem 1rem}.mobile-nav{bottom:.4rem;left:.45rem;right:.45rem}.account-detail>div,.credentials-card>div{grid-template-columns:1fr;gap:.25rem}.student-header-actions,.catalog-assignment-main{grid-template-columns:1fr}.catalog-assignment-main .field:first-child,.catalog-assignment-main .catalog-remove,.student-header-actions .button:last-child{grid-column:auto}.student-metrics{grid-template-columns:1fr}.student-metrics>.card:last-child{grid-column:auto}.school-import-steps,.school-import-table-summary{grid-template-columns:1fr}.school-import-steps span{padding:.45rem .55rem}.student-metrics>.card{min-height:5.4rem}.student-class-grid{grid-template-columns:1fr}.student-class-card{min-height:6.8rem}.settings-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.student-view-toggle{width:100%}.student-view-toggle button{flex:1}.academic-year-field{flex-direction:column;align-items:stretch}.academic-year-field .field{width:100%}.academic-year-field p{margin:0}.academic-year-toolbar{grid-template-columns:1fr}.academic-calendar-actions{width:100%}.academic-calendar-actions .button{flex:1}.academic-history-lock{margin-inline:.8rem}.term-row{grid-template-columns:2rem 1fr}.term-row .field{grid-column:1/-1!important}.academic-term-row .field{grid-column:2/-1!important}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.academic-transition-wizard{margin-top:1rem}.academic-transition-body{gap:1rem;padding:1.15rem 1.25rem 1.3rem;display:grid}.academic-transition-body>.form-alert,.academic-transition-body>.success-alert{margin:0}.academic-transition-source,.academic-transition-calendar{flex-wrap:wrap;align-items:end;gap:1rem;display:flex}.academic-transition-source>.field{min-width:min(100%,18rem)}.academic-transition-metrics{flex-wrap:wrap;gap:.6rem;display:flex}.academic-transition-metrics span{border:1px solid var(--border,var(--line));background:var(--paper);border-radius:12px;min-width:7.5rem;padding:.7rem .85rem;display:grid}.academic-transition-metrics b{font-size:1.08rem}.academic-transition-metrics small{color:var(--muted,var(--muted))}.academic-transition-calendar{border-top:1px solid var(--border,var(--line));padding-top:1rem}.academic-transition-calendar>.field{flex:1;min-width:11rem}.academic-transition-periods{gap:.55rem;display:grid}.academic-transition-periods>div{background:var(--paper);border-radius:12px;grid-template-columns:minmax(8rem,1fr) repeat(2,minmax(10rem,.8fr));align-items:center;gap:.7rem;padding:.65rem .8rem;display:grid}.academic-transition-periods label{color:var(--muted,var(--muted));align-items:center;gap:.45rem;font-size:.8rem;display:flex}.academic-transition-periods input{width:100%}.academic-transition-classes{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:.5rem;display:grid}.academic-transition-classes>div{border:1px solid var(--border,var(--line));border-radius:10px;grid-template-columns:1fr auto auto 1fr;align-items:center;gap:.35rem;padding:.65rem;font-size:.8rem;display:grid}.academic-transition-classes>div span:last-child{text-align:right}.academic-transition-options{gap:.55rem;display:grid}.academic-transition-options label,.academic-transition-confirm{border:1px solid var(--border,var(--line));border-radius:12px;align-items:flex-start;gap:.7rem;padding:.75rem;display:flex}.academic-transition-options span,.academic-transition-confirm span{gap:.15rem;display:grid}.academic-transition-options small,.academic-transition-confirm small{color:var(--muted,var(--muted))}.academic-transition-confirm{background:#e453210d;border-color:#e4532159}.academic-transition-submit{justify-content:flex-end;display:flex}@media (width<=720px){.academic-transition-periods>div{grid-template-columns:1fr}.academic-transition-submit .button{width:100%}}@media print{.sidebar,.topbar,.mobile-nav,.global-alert{display:none!important}.workspace{margin-left:0!important;padding:0!important}.main-content{width:100%!important;max-width:none!important;padding:0!important}}:root{--dj-accent:var(--accent,#b52d35);--dj-accent-dark:var(--accent-dark,#872027);--dj-ink:var(--ink,#18181a);--dj-muted:var(--muted,#747078);--dj-line:var(--line,#e6e2df);--dj-paper:var(--paper,#fff);--dj-soft:#f7f5f2;--dj-canvas:var(--canvas,#f4f2ef);--dj-green:#227154;--dj-blue:#34697d;--dj-amber:#9a6518;--dj-red:#a52d36;--dj-day-border:#d6e5e8;--dj-day-header-border:#d6e5e8;--dj-day-header-start:#edf6f7;--dj-day-header-end:#f8fbfb;--dj-day-accent:#61aab7;--dj-day-title:#245f69;--dj-day-meta:#678087;--dj-today-border:#c48872;--dj-today-header-border:#ead2c9;--dj-today-header-start:#fbf2ee;--dj-today-header-end:#fdf9f7;--dj-today-accent:#cc846a;--dj-today-title:#825848;--dj-today-meta:#8e6f63;--dj-radius:16px;--dj-shadow:0 14px 34px #231d1b0f}.dj-page{width:min(100%,1540px);color:var(--dj-ink);margin:0 auto;font-size:clamp(15px,.78vw,17px)}.dj-page *,.dj-modal *{box-sizing:border-box}.dj-page button,.dj-page input,.dj-page select,.dj-page textarea,.dj-modal button,.dj-modal input,.dj-modal select,.dj-modal textarea{font:inherit}.dj-page button,.dj-modal button{color:inherit}.dj-page-head{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:22px;display:flex}.dj-page-head h2{letter-spacing:-.045em;margin:0;font-size:clamp(27px,2.1vw,38px);line-height:1.08}.dj-page-head p:not(.dj-kicker){max-width:760px;color:var(--dj-muted);margin:8px 0 0;line-height:1.55}.dj-kicker{color:var(--muted);letter-spacing:.13em;text-transform:uppercase;margin:0 0 8px;font-size:.72em;font-weight:900}.dj-sr-only{clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.dj-button{cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 16px;font-size:.82em;font-weight:850;text-decoration:none;display:inline-flex}.dj-button:disabled{opacity:.55;cursor:wait}.dj-button--primary{border:1px solid var(--dj-accent);background:var(--dj-accent);color:#fff!important}.dj-button--primary:hover:not(:disabled){background:var(--dj-accent-dark)}.dj-button--ghost{border:1px solid var(--line);background:var(--paper)}.dj-button--ghost:hover:not(:disabled){background:var(--paper);border-color:#bdb7b2}.dj-text-button{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:5px;font-size:.78em;font-weight:850}.dj-text-button.is-accent{color:var(--dj-accent)}.dj-back-link{color:var(--dj-muted);cursor:pointer;background:0 0;border:0;margin:0 0 16px;padding:6px 0;font-size:.82em;font-weight:800}.dj-back-link:hover{color:var(--dj-accent)}.dj-panel{border:1px solid var(--dj-line);border-radius:var(--dj-radius);background:var(--dj-paper);overflow:hidden;box-shadow:0 1px #14141403}.dj-panel-head{border-bottom:1px solid var(--dj-line);justify-content:space-between;align-items:center;gap:20px;min-width:0;min-height:76px;padding:16px 21px;display:flex}.dj-panel-head>*{min-width:0}.page-header__actions .button{white-space:nowrap}.dj-panel-head p{color:var(--dj-muted);letter-spacing:.07em;text-transform:uppercase;margin:0 0 5px;font-size:.72em;font-weight:800}.dj-panel-head h3{letter-spacing:-.025em;margin:0;font-size:1.22em}.dj-panel-body{padding:21px}.dj-panel-actions{border-top:1px solid var(--dj-line);background:var(--paper);justify-content:flex-end;gap:9px;padding:15px 21px;display:flex}.dj-panel-metrics{gap:8px;display:flex}.dj-panel-metrics span{border:1px solid var(--dj-line);text-align:right;border-radius:10px;min-width:74px;padding:9px 12px}.dj-panel-metrics b,.dj-panel-metrics small{display:block}.dj-panel-metrics b{font-size:1.2em}.dj-panel-metrics small{color:var(--dj-muted);margin-top:2px;font-size:.72em}.dj-journal-head-actions{align-items:center;gap:9px;display:flex}.dj-toolbar{border:1px solid var(--dj-line);background:var(--paper);border-radius:14px;flex-wrap:wrap;align-items:flex-end;gap:11px;min-width:0;min-height:72px;margin-bottom:16px;padding:14px;display:flex}.dj-field{gap:7px;min-width:0;display:grid}.dj-field>span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.72em;font-weight:900}.dj-field input,.dj-field select,.dj-field textarea{border:1px solid var(--line);width:100%;color:var(--dj-ink);background:var(--paper);border-radius:9px;outline:0}.dj-field input,.dj-field select{min-height:40px;padding:0 11px}.dj-field textarea{resize:vertical;padding:11px 12px;line-height:1.5}.dj-field input:focus,.dj-field select:focus,.dj-field textarea:focus{border-color:#b87e83;box-shadow:0 0 0 3px #f5e4e5}.dj-field input:disabled,.dj-field select:disabled,.dj-field textarea:disabled{color:var(--muted);background:var(--surface-subtle)}.dj-field--compact,.dj-field--compact select{min-width:150px}.dj-editor-row{grid-template-columns:minmax(180px,1.5fr) minmax(120px,1fr);gap:10px;display:grid}.dj-save-state,.dj-subtle-badge{color:#2f664f;overflow-wrap:anywhere;text-align:left;background:#edf5f1;border:1px solid #d6e4dd;border-radius:999px;align-self:center;align-items:center;max-width:100%;padding:8px 11px;font-size:.72em;font-weight:850;display:inline-flex}.dj-save-state{margin-left:auto}.dj-save-state.is-saving{color:#765b45;background:#f7eee4;border-color:#e5d8c9}.dj-subtle-badge{color:var(--muted);border-color:var(--dj-line);background:var(--surface-subtle)}.dj-info-line{color:#625d59;background:#faf5f3;border-left:3px solid #c98589;border-radius:4px 9px 9px 4px;margin:0 21px 16px;padding:11px 13px;font-size:.78em;line-height:1.5}.dj-segmented{border:1px solid var(--dj-line);background:var(--paper);border-radius:11px;padding:4px;display:inline-flex}.dj-segmented button{min-height:36px;color:var(--dj-muted);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:0 15px;font-size:.78em;font-weight:850}.dj-segmented button.is-active{color:#fff;background:var(--ink)}.dj-segmented button:disabled{opacity:.42;cursor:not-allowed}.dj-tabs{border-bottom:1px solid var(--dj-line);gap:3px;margin:0 0 18px;padding:4px;display:flex;overflow-x:auto}.dj-tabs button{min-height:40px;color:var(--dj-muted);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:8px;padding:0 15px;font-size:.8em;font-weight:850}.dj-tabs button.is-active{color:var(--dj-ink);background:var(--paper);box-shadow:0 1px 4px #231d1b17}.dj-tabs--compact{border:1px solid var(--dj-line);background:#eeeae6;border-radius:11px;width:fit-content;max-width:100%}.dj-date-nav{align-items:center;gap:5px;display:flex}.dj-icon-button{border:1px solid var(--line);background:var(--paper);cursor:pointer;border-radius:9px;place-items:center;width:40px;height:40px;display:grid}.dj-icon-button span{font-size:1.5em;line-height:1}.dj-date-nav__range{border:1px solid var(--line);background:var(--paper);cursor:pointer;border-radius:9px;min-width:190px;min-height:40px;padding:5px 12px}.dj-date-nav__range span,.dj-date-nav__range small{display:block}.dj-date-nav__range span{font-size:.76em;font-weight:900}.dj-date-nav__range small{color:var(--dj-muted);margin-top:2px;font-size:.72em}.dj-date-nav__picker{border:1px solid var(--line);background:var(--paper);border-radius:9px;width:40px;height:40px;position:relative;overflow:hidden}.dj-date-nav__picker:before{content:"▦";color:#6a6561;pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.dj-date-nav__picker input{opacity:0;cursor:pointer;width:100%;position:absolute;inset:0}.dj-loading{min-height:300px;color:var(--dj-muted);align-content:center;place-items:center;gap:12px;display:grid}.dj-loading span{border:3px solid #ded9d5;border-top-color:var(--dj-accent);border-radius:50%;width:28px;height:28px;animation:.7s linear infinite dj-spin}.dj-loading p{margin:0;font-size:.8em}.dj-loading--inside{min-height:190px}.dj-empty{text-align:center;align-content:center;place-items:center;min-height:300px;padding:32px;display:grid}.dj-empty>span{color:#89837e;background:var(--line);border-radius:13px;place-items:center;width:42px;height:42px;margin-bottom:12px;font-weight:900;display:grid}.dj-empty h3{margin:0;font-size:1em}.dj-empty p{max-width:450px;color:var(--dj-muted);margin:7px 0 0;font-size:.78em;line-height:1.5}.dj-empty--inside{min-height:210px}@keyframes dj-spin{to{transform:rotate(360deg)}}.dj-journal-panel{padding-top:0}.dj-table-wrap{border-top:1px solid var(--dj-line);overscroll-behavior-inline:contain;scrollbar-color:#c9c4c0 #f4f2ef;width:100%;min-width:0;max-width:100%;overflow:auto}.dj-journal-table,.dj-finals-table,.dj-report-table{border-spacing:0;border-collapse:separate;width:100%;min-width:900px}.dj-journal-table th,.dj-journal-table td,.dj-finals-table th,.dj-finals-table td,.dj-report-table th,.dj-report-table td{border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--paper);text-align:center;height:58px;padding:7px 9px}.dj-journal-table thead th,.dj-finals-table thead th,.dj-report-table thead th{z-index:5;height:58px;color:var(--muted);background:var(--paper);font-size:.72em;font-weight:900;position:sticky;top:0}.dj-sticky-name{z-index:4;width:235px;min-width:235px;max-width:235px;left:0;text-align:left!important;position:sticky!important}.dj-journal-table thead .dj-sticky-name,.dj-finals-table thead .dj-sticky-name{z-index:7}.dj-journal-table tbody .dj-sticky-name,.dj-finals-table tbody .dj-sticky-name{align-items:center;gap:10px;font-size:.76em;display:flex}.dj-student-avatar{color:#6a4e47;background:#efe4df;border-radius:9px;flex:0 0 30px;place-items:center;width:30px;height:30px;font-size:.72em;font-weight:900;display:grid}.dj-lesson-column{width:76px;min-width:76px;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}.dj-lesson-column b,.dj-lesson-column span{display:block}.dj-lesson-column b{font-size:1.08em}.dj-lesson-column span{color:#9a9591;text-overflow:ellipsis;white-space:nowrap;max-width:72px;margin-top:5px;font-size:.83em;font-weight:550;overflow:hidden}.dj-lesson-column:hover span{color:var(--dj-accent)}.dj-average-column{min-width:95px}.dj-average-cell b,.dj-average-cell small{display:block}.dj-average-cell b{font-size:.88em}.dj-average-cell small{color:var(--dj-muted);margin-top:3px;font-size:.72em}.dj-grade-cell{border:1px dashed var(--line);background:var(--paper);cursor:pointer;border-radius:9px;width:44px;height:40px;margin:auto;display:block;position:relative;overflow:hidden}.dj-grade-cell:disabled{cursor:default}.dj-grade-cell:not(:disabled):hover{border-color:#b98185;box-shadow:0 0 0 3px #f5e6e7}.dj-grade-cell__single,.dj-grade-cell__empty{place-items:center;font-size:.86em;font-weight:950;display:grid;position:absolute;inset:0}.dj-grade-cell__empty{color:var(--muted)}.dj-grade-cell__half{width:100%;height:100%;font-size:.76em;font-weight:950;display:flex;position:absolute}.dj-grade-cell__half.is-first{clip-path:polygon(0 0,100% 0,0 100%);justify-content:flex-start;align-items:flex-start;padding:7px 0 0 9px;inset:0}.dj-grade-cell__half.is-second{clip-path:polygon(100% 0,100% 100%,0 100%);justify-content:flex-end;align-items:flex-end;padding:0 8px 6px 0;inset:0}.dj-grade-cell.has-two:after{content:"";z-index:1;transform-origin:50%;pointer-events:none;border-top:1px solid #bcb6b2;position:absolute;inset:5px;transform:rotate(-42deg)}.dj-grade-cell .is-grade-5{color:var(--success);background:var(--success-soft)}.dj-grade-cell .is-grade-4{color:var(--blue-strong);background:var(--blue-soft)}.dj-grade-cell .is-grade-3{color:var(--warning);background:var(--warning-soft)}.dj-grade-cell .is-grade-2{color:var(--danger);background:var(--danger-soft)}.dj-grade-cell .is-grade-pass,.dj-grade-cell .is-grade-З{color:#23664e;background:#e0f0e9}.dj-grade-cell .is-grade-fail,.dj-grade-cell .is-grade-НЗ{color:#8e2a31;background:#f2dcde}.dj-grade-cell .is-grade-not_attested,.dj-grade-cell .is-grade-НА{color:var(--muted);background:#e8e5e2}.dj-grade-cell__absence{z-index:3;color:#7d5521;background:#f2dfbd;border-radius:0 6px 0 8px;min-width:16px;padding:2px 4px;font-size:.72em;font-weight:950;position:absolute;bottom:-1px;left:-1px}.dj-grade-cell__comment{z-index:4;color:#fff;background:var(--dj-accent);border-radius:0 8px 0 7px;place-items:center;width:15px;height:15px;font-size:.72em;font-weight:950;display:grid;position:absolute;top:-1px;right:-1px}.dj-grade-cell__draft{z-index:4;color:#75551d;background:#f2dfb8;border-radius:4px;place-items:center;width:14px;height:14px;font-size:.72em;font-weight:950;display:grid;position:absolute;bottom:1px;right:2px}.dj-grade-cell.has-draft{border-style:dashed;border-color:#c99e55}.dj-grade-cell.is-comment-only{background:#faf5ee;border-style:solid;border-color:#e1d6c8}.dj-finals-panel .dj-info-line{margin-top:16px}.dj-finals-table th:not(:first-child),.dj-finals-table td:not(:first-child){min-width:120px}.dj-final-select{background:var(--paper);text-align:center;border:1px solid #d8d4d0;border-radius:8px;width:58px;min-height:36px;padding:0 7px;font-weight:900}.dj-final-entry{justify-items:center;gap:4px;display:grid}.dj-final-entry small{color:#817a74;white-space:nowrap;font-size:.68em;font-weight:800}.dj-final-entry>b{color:#413a35;place-items:center;min-height:36px;display:inline-grid}.period-closure-toolbar{flex-wrap:wrap;align-items:end;gap:12px;padding:16px;display:flex}.period-closure-toolbar label{gap:5px;min-width:180px;display:grid}.period-closure-toolbar label span{color:var(--muted);font-size:.76rem;font-weight:800}.period-closure-toolbar select{background:var(--paper);border:1px solid #ddd7d2;border-radius:10px;min-height:42px;padding:0 34px 0 12px}.period-closure-summary{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:14px 0;display:grid}.period-closure-summary .card{align-content:center;min-height:82px;padding:14px;display:grid}.period-closure-summary small{color:var(--muted);font-weight:800}.period-closure-summary b{margin-top:3px;font-size:1.45rem}.period-closure-view-controls{justify-content:space-between;align-items:center;gap:12px;margin:0 0 10px;display:flex}.period-closure-view-controls>span{color:var(--muted);font-size:.7rem}.period-closure-view-controls>div{gap:7px;display:flex}.period-closure-groups{gap:14px;display:grid}.period-closure-group{padding:0;overflow:hidden}.period-closure-group>header{background:var(--paper);border-bottom:1px solid #eee9e5;justify-content:space-between;align-items:center;gap:16px;padding:16px 18px;display:flex}.period-closure-group:not(.is-open)>header{border-bottom:0}.period-closure-group__toggle{min-width:0;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:11px;padding:0;display:flex}.period-closure-group__toggle>svg{color:var(--muted);flex:none;transition:transform .16s;transform:rotate(-90deg)}.period-closure-group__toggle[aria-expanded=true]>svg{transform:rotate(0)}.period-closure-group__toggle>span{min-width:0}.period-closure-group h3{margin:2px 0 0}.period-closure-group header small{color:var(--muted)}.period-closure-list article{border-bottom:1px solid #f0ece9;grid-template-columns:minmax(180px,1.2fr) minmax(220px,2fr) minmax(135px,.7fr) auto;align-items:center;gap:14px;min-height:76px;padding:12px 18px;display:grid}.period-closure-list article:last-child{border-bottom:0}.period-closure-list article.has-issues{box-shadow:inset 3px 0 #e9a23b}.period-closure-list article.is-closed{background:#fafcfa;box-shadow:inset 3px 0 #4ea66a}.period-closure-subject{align-items:center;gap:10px;display:flex}.period-closure-subject .subject-dot{background:#51b8cb;border-radius:50%;flex:none;width:10px;height:10px}.period-closure-subject>span:last-child{gap:3px;display:grid}.period-closure-subject small,.period-closure-readiness small{color:var(--muted)}.period-closure-issues{flex-wrap:wrap;gap:6px;display:flex}.period-closure-issues>span{color:#86591c;background:#fff5e6;border-radius:999px;padding:5px 8px;font-size:.72rem}.period-closure-readiness{gap:3px;display:grid}.period-closure-actions{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.dj-ktp-transfer-confirm{align-items:flex-start;gap:14px;padding:4px 0;display:flex}.dj-ktp-transfer-confirm>div{gap:7px;display:grid}.dj-ktp-transfer-confirm p{margin:0;line-height:1.5}.dj-ktp-transfer-confirm small{color:var(--muted)}@media (width<=1000px){.period-closure-summary{grid-template-columns:repeat(3,1fr)}.period-closure-list article{grid-template-columns:1fr 1.4fr}.period-closure-readiness,.period-closure-actions{grid-column:auto}}@media (width<=680px){.period-closure-summary{grid-template-columns:repeat(2,1fr)}.period-closure-list article{grid-template-columns:1fr}.period-closure-toolbar>*{width:100%}.period-closure-actions{justify-content:stretch}.period-closure-actions .button{flex:1}.period-closure-view-controls{flex-direction:column;align-items:stretch}.period-closure-view-controls>div .button{flex:1}}.dj-modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#1414169e;place-items:center;padding:24px;display:grid;position:fixed;inset:0;overflow-y:auto}.dj-modal{border:1px solid var(--line);background:var(--paper);border-radius:18px;width:min(760px,100%);max-height:calc(100vh - 48px);overflow-y:auto;box-shadow:0 24px 80px #00000047}.dj-modal>header{z-index:3;border-bottom:1px solid var(--dj-line);background:var(--paper);justify-content:space-between;align-items:center;min-height:76px;padding:16px 20px;display:flex;position:sticky;top:0}.dj-modal>header p{color:var(--dj-muted);margin:0 0 4px;font-size:.72em}.dj-modal>header h3{margin:0;font-size:1.2em}.dj-modal-close{border:1px solid var(--dj-line);background:var(--paper);cursor:pointer;border-radius:9px;width:36px;height:36px;font-size:1.4em!important}.dj-modal-body{gap:17px;padding:20px;display:grid}.dj-modal>footer{border-top:1px solid var(--dj-line);background:var(--paper);justify-content:flex-end;gap:8px;padding:14px 20px;display:flex;position:sticky;bottom:0}.dj-grade-editor{width:min(980px,100%);overflow-x:hidden}.dj-grade-editor .dj-modal-body,.dj-grade-editor .dj-editor-grades,.dj-grade-editor .dj-editor-grades>fieldset{min-width:0}.dj-internal-notes{background:var(--surface-subtle);border:1px solid #d9e2e4;border-radius:10px;gap:8px;padding:12px;display:grid}.dj-internal-notes h4{margin:0 0 2px;font-size:.78em}.dj-internal-notes article{background:var(--paper);border-radius:8px;padding:9px 10px}.dj-internal-notes article strong{font-size:.72em}.dj-internal-notes article p{color:var(--dj-muted);white-space:pre-wrap;margin:4px 0 0;font-size:.75em;line-height:1.45}.dj-grade-editor fieldset,.dj-choice-box,.dj-variant-list fieldset{border:1px solid var(--dj-line);border-radius:12px;min-width:0;margin:0;padding:14px}.dj-grade-editor legend,.dj-choice-box legend,.dj-variant-list legend{color:var(--muted);padding:0 6px;font-size:.76em;font-weight:900}.dj-grade-editor legend small{color:var(--dj-muted);font-weight:500}.dj-editor-grades{grid-template-columns:1fr 1fr;gap:12px;display:grid}.dj-grade-editor .dj-editor-row{grid-template-columns:minmax(0,1.45fr) minmax(100px,1fr)}.dj-grade-options{grid-template-columns:repeat(auto-fit,minmax(42px,1fr));gap:7px;margin-bottom:12px;display:grid}.dj-grade-options button{border:1px solid var(--line);background:var(--paper);cursor:pointer;border-radius:9px;height:42px;font-weight:950}.dj-batch-launch{flex-wrap:wrap;align-items:center;gap:12px;margin:0 0 16px;display:flex}.dj-batch-launch>span{color:var(--muted);font-size:14px}.dj-modal.dj-grade-batch{width:min(920px,100%)}.dj-batch-hint{color:var(--muted);margin:0 0 16px;font-size:14px;line-height:1.5}.dj-batch-settings{border:1px solid var(--line);border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;min-width:0;margin:0;padding:16px;display:grid}.dj-batch-settings legend{color:var(--muted);padding-inline:6px;font-size:14px}.dj-batch-lesson{grid-column:1/-1}.dj-batch-search{margin-top:18px}.dj-batch-count{color:var(--muted);margin:12px 0;font-size:13px}.dj-batch-students{display:grid}.dj-batch-student{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(220px,280px);align-items:center;gap:16px;padding:14px 0;display:grid}.dj-batch-student>div{min-width:0}.dj-batch-student b{overflow-wrap:anywhere;font-size:15px;font-weight:650}.dj-batch-student small{color:var(--muted);margin-top:5px;font-size:12px;display:block}.dj-batch-student .dj-grade-options{margin:0}.dj-batch-total{color:var(--muted);margin-right:auto;font-size:14px}@media (width<=600px){.dj-batch-settings,.dj-batch-student{grid-template-columns:minmax(0,1fr)}.dj-batch-settings{padding:12px}.dj-batch-student{gap:10px}.dj-grade-batch .dj-batch-total{flex:1 0 100%}}.dj-attendance-options{grid-template-columns:repeat(4,1fr);gap:7px;display:grid}.dj-attendance-options button{border:1px solid var(--line);background:var(--paper);cursor:pointer;border-radius:9px;min-height:42px;padding:7px 8px;font-size:.72em}.dj-attendance-options button b{margin-right:5px}.dj-attendance-options button.is-selected{color:#fff;border-color:var(--muted);background:var(--muted)}.dj-dialog-copy{color:#5f5a56;margin:0;font-size:.78em;line-height:1.55}.dj-publish-lessons{border:1px solid var(--dj-line);border-radius:11px;max-height:330px;display:grid;overflow-y:auto}.dj-publish-lessons label{border-bottom:1px solid var(--dj-line);cursor:pointer;align-items:center;gap:11px;min-height:53px;padding:9px 12px;display:flex}.dj-publish-lessons label:last-child{border-bottom:0}.dj-publish-lessons input{width:17px;height:17px;accent-color:var(--dj-accent)}.dj-publish-lessons b,.dj-publish-lessons small{display:block}.dj-publish-lessons b{font-size:.74em}.dj-publish-lessons small{color:var(--dj-muted);margin-top:3px;font-size:.72em}.dj-week{grid-template-columns:1fr;align-items:start;gap:16px;display:grid}.dj-day{border:1px solid var(--dj-day-border);background:var(--paper);border-radius:16px;min-width:0;overflow:hidden;box-shadow:0 7px 22px #204b540e}.dj-day>header{border-bottom:1px solid var(--dj-day-header-border);background:linear-gradient(105deg, var(--dj-day-header-start), var(--dj-day-header-end));min-height:74px;box-shadow:5px 0 0 var(--dj-day-accent) inset;justify-content:space-between;align-items:center;gap:14px;padding:13px 17px;display:flex}.dj-day>header b,.dj-day>header span{text-transform:capitalize;display:block}.dj-day>header b{color:var(--dj-day-title);font-size:.94em;font-weight:900}.dj-day>header span{color:var(--dj-day-meta);margin-top:4px;font-size:.7em;font-weight:700}.dj-day__summary{align-items:center;gap:8px;display:flex}.dj-day__summary small{color:#476b73;white-space:nowrap;background:#ffffffe6;border:1px solid #cddfe2;border-radius:999px;padding:6px 9px;font-size:.66em;font-weight:850}.dj-day__summary button{width:28px;height:28px;color:var(--dj-accent);background:var(--paper);cursor:pointer;border:1px solid #d9d2ce;border-radius:8px;place-items:center;font-size:1.05em;font-weight:800;display:grid}.dj-day__summary button:hover{background:#fff8f8;border-color:#c58f94}.dj-day.is-today{border:2px solid var(--dj-today-border);box-shadow:0 0 0 1px #c488721c,0 8px 24px #58392d0e}.dj-day.is-today>header{border-color:var(--dj-today-header-border);background:linear-gradient(105deg, var(--dj-today-header-start), var(--dj-today-header-end));box-shadow:5px 0 0 var(--dj-today-accent) inset}.dj-day.is-today>header b{color:var(--dj-today-title)}.dj-day.is-today>header span{color:var(--dj-today-meta)}.dj-day.is-today .dj-day__summary small{color:var(--dj-today-title);border-color:var(--dj-today-header-border);background:var(--paper)}.dj-day.is-today .dj-day__summary button{border-color:var(--dj-today-header-border);color:var(--dj-today-title);background:var(--paper)}.dj-day__lessons{background:var(--paper);align-content:start;gap:8px;padding:11px;display:grid}.dj-schedule-card{border:1px solid var(--line);background:var(--paper);cursor:default;text-align:left;border-radius:11px;grid-template-columns:60px minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;min-height:72px;padding:10px 12px;display:grid;position:relative;overflow:hidden}.dj-schedule-card.is-interactive{cursor:pointer}.dj-schedule-card.is-interactive:hover{background:var(--paper);border-color:#c9b9b5;box-shadow:0 4px 12px #1e18160f}.dj-schedule-card__time b,.dj-schedule-card__time small{display:block}.dj-schedule-card__time{border-right:1px solid var(--line);align-content:center;align-self:stretch;padding-right:11px;display:grid}.dj-schedule-card__time b{color:var(--dj-accent);font-size:.78em}.dj-schedule-card__time small{color:var(--dj-muted);margin-top:4px;font-size:.66em}.dj-schedule-card__body b,.dj-schedule-card__body small,.dj-schedule-card__body span{display:block}.dj-schedule-card__body{min-width:0}.dj-schedule-card__body b{text-overflow:ellipsis;white-space:nowrap;font-size:.77em;overflow:hidden}.dj-schedule-card__body small{color:var(--dj-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:5px;font-size:.67em;line-height:1.4;display:-webkit-box;overflow:hidden}.dj-schedule-card__body>span{display:none}.dj-schedule-card__meta{min-width:90px;color:var(--muted);white-space:nowrap;justify-items:end;gap:4px;font-size:.64em;display:grid}.dj-schedule-card__meta small{color:var(--muted);font-size:1em}.dj-schedule-card--cancelled{opacity:.74;background:var(--surface-subtle);border-style:dashed}.dj-schedule-card--cancelled .dj-schedule-card__body b{text-decoration:line-through}.dj-schedule-card__badge{color:#8e2a31;text-transform:uppercase;background:#f3dfe1;border-radius:5px;padding:3px 6px;font-size:.88em;font-weight:900}.dj-head-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.dj-success-line{color:#236047;background:#edf7f2;border:1px solid #cfe3d9;border-radius:11px;align-items:center;gap:8px;margin:-7px 0 15px;padding:11px 14px;font-size:.76em;font-weight:750;display:flex}.dj-success-line button{color:inherit;cursor:pointer;background:0 0;border:0;margin-left:auto;font-size:1.2em}.dj-schedule-card-wrap{position:relative}.dj-lesson-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:8px 0 12px;display:flex}.dj-lesson-actions button{border:1px solid var(--line);background:var(--surface,transparent);color:inherit;cursor:pointer;font:inherit;border-radius:8px;padding:8px 12px;font-size:13px}.dj-lesson-actions button:hover{border-color:var(--dj-accent)}.dj-lesson-fields{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;min-width:0;margin:0;padding:0;display:grid}@media (width<=600px){.dj-lesson-fields{grid-template-columns:minmax(0,1fr)}.dj-lesson-actions{justify-content:flex-start}}@media print{.dj-lesson-actions{display:none!important}}.dj-schedule-card-wrap .dj-schedule-card{width:100%}.dj-schedule-card-wrap.is-manageable .dj-schedule-card{padding-right:42px}.dj-schedule-card__edit{z-index:2;border:1px solid var(--line);width:25px;height:25px;color:var(--muted);cursor:pointer;background:#fffffff0;border-radius:7px;place-items:center;display:grid;position:absolute;bottom:5px;right:5px;font-size:.75em!important}.dj-schedule-card__edit:hover{color:var(--dj-accent);border-color:#d5a9ad}.dj-modal.is-wide{width:min(920px,100%)}.dj-operation-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.dj-operation-form .dj-span-2,.dj-span-2{grid-column:1/-1}.dj-field--danger textarea{background:#fff8f8;border-color:#dca8ad}.dj-field--danger>span{color:#952c35}.dj-form-note{color:#625c58;background:#f6f3f0;border-radius:9px;margin:0;padding:10px 12px;font-size:.72em;line-height:1.5}.dj-bell-layout{grid-template-columns:210px minmax(0,1fr);gap:18px;display:grid}.dj-bell-list{align-content:start;gap:5px;display:grid}.dj-bell-list button{border:1px solid var(--dj-line);background:var(--paper);cursor:pointer;text-align:left;border-radius:9px;gap:3px;padding:10px 11px;display:grid}.dj-bell-list button.is-active{color:#fff;border-color:var(--ink);background:var(--ink)}.dj-bell-list b{font-size:.74em}.dj-bell-list small{color:var(--dj-muted);font-size:.68em}.dj-bell-list button.is-active small{color:#c9c6c4}.dj-bell-editor{gap:13px;display:grid}.dj-bell-flags{gap:18px;padding:10px 0;font-size:.74em;display:flex}.dj-bell-flags label{align-items:center;gap:7px;display:flex}.dj-bell-periods{border:1px solid var(--dj-line);border-radius:11px;overflow:hidden}.dj-bell-periods>header{background:var(--surface-subtle);justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.dj-bell-periods>header b{font-size:.75em}.dj-bell-periods>header button{color:var(--dj-accent);cursor:pointer;background:0 0;border:0;font-size:.72em;font-weight:850}.dj-bell-periods>div{border-top:1px solid var(--dj-line);grid-template-columns:28px 1fr 15px 1fr 28px;align-items:center;gap:7px;padding:7px 10px;display:grid}.dj-bell-periods>div>span{color:#fff;background:#476775;border-radius:7px;place-items:center;width:24px;height:24px;font-size:.68em;font-weight:850;display:grid}.dj-bell-periods input{border:1px solid var(--line);border-radius:8px;width:100%;min-height:34px;padding:0 8px}.dj-bell-periods>div>button{color:#982f38;cursor:pointer;background:#f5e4e5;border:0;border-radius:7px;width:26px;height:26px}.dj-day.is-empty{box-shadow:none}.dj-day-empty{color:#918a85;align-content:center;place-items:center;gap:4px;min-height:62px;font-size:.7em;display:grid}.dj-day-empty span{color:#aaa39e;font-size:.9em}.dj-print-note{border:1px dashed var(--line);color:var(--dj-muted);border-radius:10px;gap:12px;margin-top:18px;padding:13px 15px;font-size:.72em;line-height:1.45;display:flex}.dj-print-note b{color:var(--dj-ink);white-space:nowrap}.dj-lesson-hero{border:1px solid var(--dj-line);border-radius:var(--dj-radius);background:var(--ink);color:#fff;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;margin-bottom:18px;padding:20px 22px;display:grid}.dj-lesson-hero__date{background:#343539;border:1px solid #56575b;border-radius:18px;align-content:center;place-items:center;width:66px;height:66px;display:grid}.dj-lesson-hero__date b{font-size:1.55em;line-height:1}.dj-lesson-hero__date span{color:var(--muted);text-transform:uppercase;margin-top:4px;font-size:.72em}.dj-lesson-hero h2{letter-spacing:-.035em;margin:0;font-size:clamp(24px,2vw,34px)}.dj-lesson-hero p:not(.dj-kicker){color:var(--muted);margin:6px 0 0;font-size:.75em}.dj-lesson-hero .dj-kicker{color:var(--muted)}.dj-status{color:#5d5a57;background:var(--line);white-space:nowrap;border-radius:999px;align-items:center;width:fit-content;padding:6px 9px;font-size:.72em;font-weight:900;display:inline-flex}.dj-status--planned{color:#315f77;background:#dfeaf0}.dj-status--held,.dj-status--published{color:#23664e;background:#dfefe7}.dj-status--cancelled{color:#8e2a31;background:#f2dcde}.dj-status--draft{color:#795d2a;background:#f3e8cf}.dj-lesson-layout{grid-template-columns:minmax(0,1.5fr) minmax(280px,.6fr);align-items:start;gap:15px;display:grid}.dj-lesson-form .dj-panel-body{gap:15px;display:grid}.dj-lesson-side{gap:12px;display:grid}.dj-check-list{display:grid}.dj-check-list>div{border-bottom:1px solid var(--dj-line);align-items:center;gap:10px;padding:13px 17px;display:flex}.dj-check-list>div:last-child{border-bottom:0}.dj-check-list>div>span{color:#746d69;background:var(--line);border-radius:8px;flex:0 0 28px;place-items:center;width:28px;height:28px;font-size:.72em;font-weight:900;display:grid}.dj-check-list>div.is-done>span{color:#fff;background:var(--dj-green)}.dj-check-list p,.dj-check-list b,.dj-check-list small{margin:0;display:block}.dj-check-list b{font-size:.72em}.dj-check-list small{color:var(--dj-muted);margin-top:3px;font-size:.72em}.dj-action-card{background:var(--dj-accent);cursor:pointer;text-align:left;border:0;border-radius:14px;padding:18px;display:grid;color:#fff!important}.dj-action-card span{color:#f1cacc;text-transform:uppercase;font-size:.72em;font-weight:800}.dj-action-card b{margin-top:9px;font-size:1em}.dj-action-card small{color:#f1dfe0;margin-top:6px;font-size:.72em}.dj-lesson-roster{grid-template-columns:repeat(2,1fr);display:grid}.dj-lesson-roster>div{border-right:1px solid var(--dj-line);border-bottom:1px solid var(--dj-line);grid-template-columns:32px 1fr 52px;align-items:center;gap:9px;min-height:58px;padding:8px 16px;display:grid}.dj-lesson-roster>div b{font-size:.72em}.dj-homework-preview .dj-panel-body h4{margin:14px 0 8px}.dj-homework-preview .dj-panel-body p{color:var(--muted);line-height:1.6}.dj-classes-layout{grid-template-columns:245px minmax(0,1fr);align-items:start;gap:14px;display:grid}.dj-class-picker,.dj-class-subjects{border:1px solid var(--dj-line);border-radius:var(--dj-radius);background:var(--paper);overflow:hidden}.dj-class-picker>p{border-bottom:1px solid var(--dj-line);color:var(--dj-muted);letter-spacing:.09em;text-transform:uppercase;margin:0;padding:15px 16px;font-size:.72em;font-weight:900}.dj-class-picker button{background:var(--paper);cursor:pointer;text-align:left;border:0;border-bottom:1px solid #efedeb;grid-template-columns:1fr auto;width:100%;padding:13px 16px;display:grid;position:relative}.dj-class-picker button span,.dj-class-picker button small{display:block}.dj-class-picker button span{font-size:.84em;font-weight:900}.dj-class-picker button small{color:var(--dj-muted);margin-top:4px;font-size:.72em}.dj-class-picker button i{color:var(--muted);grid-area:1/2/span 2;align-self:center;font-size:1.3em;font-style:normal}.dj-class-picker button.is-active{color:#fff;background:var(--ink)}.dj-class-subjects>header,.dj-additional-block>header{border-bottom:1px solid var(--dj-line);justify-content:space-between;align-items:center;padding:20px 22px;display:flex}.dj-class-subjects>header .dj-subtle-badge{white-space:nowrap;flex:none}.dj-class-subjects>header p,.dj-additional-block>header p{color:var(--dj-muted);margin:0 0 5px;font-size:.72em}.dj-class-subjects>header h3,.dj-additional-block>header h4{margin:0;font-size:1.25em}.dj-subject-grid{grid-template-columns:repeat(3,minmax(190px,1fr));gap:10px;padding:15px;display:grid}.dj-subject-card{border:1px solid var(--dj-line);background:var(--paper);cursor:pointer;text-align:left;border-radius:12px;grid-template-columns:42px 1fr auto;align-items:center;gap:10px;min-height:86px;padding:12px;display:grid;position:relative}.dj-subject-card:hover{box-shadow:var(--dj-shadow);border-color:#c9a9aa;transform:translateY(-1px)}.dj-subject-mark{color:#fff;background:#3e6574;border-radius:11px;flex:0 0 40px;place-items:center;width:40px;height:40px;font-weight:900;display:grid}.dj-subject-card b,.dj-subject-card small{display:block}.dj-subject-card b{text-overflow:ellipsis;white-space:nowrap;font-size:.77em;overflow:hidden}.dj-subject-card small{color:var(--dj-muted);margin-top:5px;font-size:.72em}.dj-subject-card i{color:var(--muted);font-size:1.3em;font-style:normal}.dj-subject-card em{color:#8b5d1f;background:#f4e8d0;border-radius:5px;padding:3px 5px;font-size:.72em;font-style:normal;font-weight:900;position:absolute;top:6px;right:7px}.dj-additional-block{border-top:8px solid var(--dj-soft)}.dj-subject-card.is-additional .dj-subject-mark{background:#6f5a7c}.dj-homework-layout{grid-template-columns:minmax(390px,.85fr) minmax(420px,1.15fr);align-items:start;gap:15px;display:grid}.dj-homework-layout.is-readonly{grid-template-columns:1fr}.dj-homework-editor .dj-panel-body{gap:15px;display:grid}.dj-choice-box{padding-top:9px}.dj-inline-choice{flex-wrap:wrap;gap:16px;display:flex}.dj-inline-choice label,.dj-student-checks label{align-items:center;gap:6px;font-size:.72em;display:flex}.dj-student-checks{background:var(--surface-subtle);border-radius:9px;grid-template-columns:repeat(2,1fr);gap:8px;max-height:145px;margin-top:12px;padding:11px;display:grid;overflow-y:auto}.dj-switch{cursor:pointer;grid-template-columns:38px 1fr;align-items:center;gap:2px 10px;display:grid}.dj-switch input{opacity:0;position:absolute}.dj-switch>span{background:#ccc7c3;border-radius:999px;grid-row:1/span 2;width:38px;height:22px;transition:all .15s;position:relative}.dj-switch>span:after{content:"";background:var(--paper);border-radius:50%;width:16px;height:16px;transition:all .15s;position:absolute;top:3px;left:3px}.dj-switch input:checked+span{background:var(--dj-accent)}.dj-switch input:checked+span:after{transform:translate(16px)}.dj-switch b{font-size:.74em}.dj-switch small{color:var(--dj-muted);font-size:.72em}.dj-variant-list{gap:10px;display:grid}.dj-variant-list fieldset{background:#fbfaf8;gap:10px;display:grid}.dj-variant-list legend{width:calc(100% - 12px)}.dj-variant-list legend button{float:right;color:#8e2a31;cursor:pointer;background:#f1dcde;border:0;border-radius:6px;width:23px;height:23px}.dj-variant-list select[multiple]{min-height:78px;padding:6px}.dj-file-drop{background:var(--paper);cursor:pointer;text-align:center;border:1px dashed #cec8c4;border-radius:11px;place-items:center;min-height:72px;display:grid}.dj-file-drop input{opacity:0;width:1px;height:1px;position:absolute}.dj-file-drop b,.dj-file-drop small{display:block}.dj-file-drop b{font-size:.75em}.dj-file-drop small{color:var(--dj-muted);margin-top:5px;font-size:.72em}.dj-existing-files{flex-wrap:wrap;gap:7px;display:flex}.dj-existing-files span{border:1px solid var(--dj-line);background:var(--surface-subtle);border-radius:8px;align-items:center;gap:7px;max-width:100%;padding:6px 7px 6px 10px;font-size:.72em;display:inline-flex}.dj-existing-files b{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dj-existing-files button{color:#8e2a31;cursor:pointer;background:#f1dcde;border:0;border-radius:6px;flex:0 0 24px;place-items:center;width:24px;height:24px;display:grid}.dj-homework-cards{display:grid}.dj-homework-week-toolbar{margin-bottom:14px}.homework-days{border-bottom:1px solid var(--line);background:var(--surface-subtle);grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;padding:14px;display:grid}.homework-day{border:1px solid var(--dj-day-border);min-width:0;color:var(--dj-day-title);background:linear-gradient(110deg, var(--dj-day-header-start), var(--dj-day-header-end));cursor:pointer;text-align:left;overflow-wrap:anywhere;border-radius:12px;flex-direction:column;gap:5px;padding:12px;display:flex}.homework-day b{text-transform:capitalize;font-size:14px}.homework-day-short{display:none}.homework-day small,.homework-day>span{color:var(--dj-day-meta);font-size:12px}.homework-day em{margin-top:6px;font-size:12px;font-style:normal}.homework-day.is-today{border:2px solid var(--dj-today-border);color:var(--dj-today-title);background:linear-gradient(110deg, var(--dj-today-header-start), var(--dj-today-header-end))}.homework-day.is-today :is(small,span){color:var(--dj-today-meta)}.homework-day.is-selected{outline:2px solid var(--blue-strong);outline-offset:2px}.homework-day.is-today.is-selected{outline-color:var(--dj-today-border)}.homework-day:hover{box-shadow:var(--shadow-sm)}.homework-day-prompt{color:var(--muted);margin:0;padding:24px 16px;font-size:15px}.homework-selected-heading{color:var(--ink);margin:0;padding:18px 16px 8px;font-size:17px}.homework-selected-heading small{color:var(--muted);margin-top:6px;font-size:13px;font-weight:400;display:block}@media (width<=1150px){.homework-days{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}}@media (width<=600px){.homework-days{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:12px}.homework-day{text-align:center;align-items:center;gap:5px;padding:9px 6px}.homework-day-full{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.homework-day-short{display:inline}.homework-day em{display:none}.homework-day small{font-size:12px}}.dj-homework-day{border:1px solid var(--dj-day-border);background:var(--paper);border-radius:12px;min-width:0;overflow:hidden;box-shadow:0 5px 16px #204b540b}.dj-homework-day.is-today{border:2px solid var(--dj-today-border);box-shadow:0 0 0 1px #c488721c,0 7px 20px #58392d0e}.dj-homework-day>header{border-bottom:1px solid var(--dj-day-header-border);background:linear-gradient(110deg, var(--dj-day-header-start), var(--dj-day-header-end));min-height:54px;box-shadow:4px 0 0 var(--dj-day-accent) inset;justify-content:space-between;align-items:center;gap:8px;padding:9px 10px;display:flex}.dj-homework-day.is-today>header{border-color:var(--dj-today-header-border);background:linear-gradient(110deg, var(--dj-today-header-start), var(--dj-today-header-end));box-shadow:4px 0 0 var(--dj-today-accent) inset}.dj-homework-day>header span,.dj-homework-day>header b,.dj-homework-day>header small{display:block}.dj-homework-day>header b{color:var(--dj-day-title);text-transform:capitalize;font-size:.72em;font-weight:900}.dj-homework-day>header small{color:var(--dj-day-meta);margin-top:2px;font-size:.62em;font-weight:700}.dj-homework-day>header em{color:var(--dj-day-title);background:var(--paper);border:1px solid #cddfe2;border-radius:999px;padding:3px 6px;font-size:.61em;font-style:normal;font-weight:850}.dj-homework-day.is-today>header b{color:var(--dj-today-title)}.dj-homework-day.is-today>header small{color:var(--dj-today-meta)}.dj-homework-day.is-today>header em{color:var(--dj-today-title);border-color:var(--dj-today-header-border)}.dj-homework-day>div{gap:6px;padding:7px;display:grid}.dj-homework-day button{min-width:0;color:inherit;background:var(--paper);cursor:pointer;text-align:left;border:1px solid #e3e9e9;border-radius:9px;gap:3px;padding:8px;display:grid}.dj-homework-day button:hover,.dj-homework-day button.is-active{border-color:var(--dj-accent);background:#edf7f6}.dj-homework-day button b,.dj-homework-day button span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dj-homework-day button b{color:var(--dj-accent);font-size:.66em}.dj-homework-day button span{font-size:.65em}.dj-homework-day-empty{color:#98a3a3;text-align:center;padding:12px 3px;font-size:.64em}.dj-homework-card{border-bottom:1px solid var(--dj-line);padding:17px 19px}.dj-homework-card:last-child{border-bottom:0}.dj-homework-card>header{grid-template-columns:40px 1fr auto;align-items:center;gap:10px;display:grid}.dj-homework-card>header b,.dj-homework-card>header small{display:block}.dj-homework-card>header b{font-size:.78em}.dj-homework-card>header small{color:var(--dj-muted);margin-top:4px;font-size:.72em}.dj-homework-card>p{color:var(--muted);white-space:pre-wrap;margin:13px 0;font-size:.73em;line-height:1.55}.dj-card-line{color:#665a49;background:#f3ece1;border-radius:7px;width:fit-content;margin:8px 0;padding:6px 8px;font-size:.72em}.dj-attachment-row{flex-wrap:wrap;gap:6px;display:flex}.dj-attachment-row a{border:1px solid var(--dj-line);color:#3c6170;background:var(--surface-subtle);border-radius:7px;padding:6px 8px;font-size:.72em;text-decoration:none}.dj-homework-card>footer{align-items:flex-end;gap:18px;margin-top:14px;display:flex}.dj-homework-card>footer span small,.dj-homework-card>footer span b{display:block}.dj-homework-card>footer span small{color:var(--dj-muted);font-size:.72em}.dj-homework-card>footer span b{margin-top:3px;font-size:.72em}.dj-homework-card>footer>div{gap:5px;margin-left:auto;display:flex}.dj-homework-card.is-draft{background:#fdfbf7}.dj-assigned-variant{background:#f1f9fa;border:1px solid #cfe4e7;border-radius:11px;margin:12px 0;padding:12px 14px}.dj-assigned-variant small,.dj-assigned-variant b{display:block}.dj-assigned-variant small{color:#55757d;text-transform:uppercase;letter-spacing:.04em;font-size:.66em;font-weight:800}.dj-assigned-variant b{color:#214c57;margin-top:5px;font-size:.76em}.dj-assigned-variant p{color:#405d64;white-space:pre-wrap;margin:7px 0 0;font-size:.72em;line-height:1.55}.dj-submission-block{border:1px solid var(--line);background:var(--paper);border-radius:11px;margin-top:13px;overflow:hidden}.dj-submission-block>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:9px 11px;display:flex}.dj-submission-block>header b{font-size:.72em}.dj-submission-block>header span{color:#fff;background:#466b78;border-radius:999px;place-items:center;min-width:23px;height:23px;font-size:.65em;font-weight:850;display:grid}.dj-submission-block>p{color:var(--dj-muted);margin:0;padding:12px;font-size:.7em}.dj-submission-row{border-top:1px solid #edf0f0;grid-template-columns:32px minmax(120px,1fr) auto auto;align-items:center;gap:9px;padding:9px 11px;display:grid}.dj-submission-row:first-of-type{border-top:0}.dj-submission-avatar{color:#fff;background:#5b7781;border-radius:9px;place-items:center;width:30px;height:30px;font-size:.62em;font-weight:900;display:grid}.dj-submission-row>span:nth-child(2){gap:3px;min-width:0;display:grid}.dj-submission-row>span:nth-child(2) b{font-size:.7em}.dj-submission-row>span:nth-child(2) small{color:var(--dj-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.66em;overflow:hidden}.dj-submission-row>span:nth-child(2) em{color:#42606b;font-size:.64em;font-style:normal}.dj-submission-files{flex-wrap:wrap;gap:5px;margin-top:2px;display:flex}.dj-submission-files a{color:#176c7c;text-overflow:ellipsis;white-space:nowrap;max-width:240px;font-size:.66em;font-weight:750;text-decoration:underline;overflow:hidden}.dj-submission-status,.dj-grade-transferred{color:#7b5b25;white-space:nowrap;background:#f6eedc;border-radius:999px;padding:5px 7px;font-size:.62em;font-weight:850}.dj-submission-status.is-accepted,.dj-grade-transferred{color:#226149;background:#e8f4ee}.dj-submission-status.is-returned{color:#8e2d35;background:#f7e8e9}.dj-student-submit{border-top:1px solid var(--line);background:var(--paper);gap:10px;padding:12px;display:grid}.dj-student-submit .dj-file-drop{min-height:58px}.dj-student-submit .dj-button{justify-self:end}.dj-review-form{gap:15px;display:grid}.dj-review-source{background:#f5f7f7;border-radius:10px;padding:12px 14px}.dj-review-source small,.dj-review-source b{display:block}.dj-review-source small{color:var(--dj-muted);font-size:.67em}.dj-review-source b{margin-top:4px;font-size:.78em}.dj-review-source p{color:#52636a;margin:8px 0 0;font-size:.7em;line-height:1.5}.dj-attempt-history{border:1px solid #dce5e6;border-radius:11px;overflow:hidden}.dj-attempt-history>header{background:#f5f8f8;justify-content:space-between;align-items:center;padding:10px 13px;display:flex}.dj-attempt-history>header b{font-size:.74em}.dj-attempt-history>header span{color:#fff;background:#49717c;border-radius:999px;place-items:center;min-width:24px;height:24px;font-size:.64em;font-weight:850;display:grid}.dj-attempt-history article{border-top:1px solid #e6ecec;padding:11px 13px}.dj-attempt-history article>div:first-child{justify-content:space-between;gap:12px;display:flex}.dj-attempt-history article b{font-size:.7em}.dj-attempt-history article small{color:var(--dj-muted);font-size:.64em}.dj-attempt-history article p{color:#4f6166;white-space:pre-wrap;margin:7px 0;font-size:.69em;line-height:1.45}.dj-attempt-history article em{color:#315e55;margin-top:7px;font-size:.65em;font-style:normal;font-weight:750;display:block}.dj-transfer-box{background:#fdfafa;border-color:#d6c5c6;gap:14px;display:grid}.dj-confirm-transfer{background:var(--paper);border:1px solid #e3cacd;border-radius:9px;align-items:flex-start;gap:9px;padding:11px;display:flex}.dj-confirm-transfer input{margin-top:2px}.dj-confirm-transfer span{gap:3px;display:grid}.dj-confirm-transfer b{font-size:.72em}.dj-confirm-transfer small{color:var(--dj-muted);font-size:.66em;line-height:1.45}.dj-transfer-done{color:#236047;background:#e9f4ee;border-radius:9px;padding:12px;font-size:.72em;font-weight:800}.dj-print-toolbar{border:1px solid var(--dj-line);background:var(--paper);border-radius:11px;align-items:flex-end;gap:12px;margin-bottom:9px;padding:10px 13px;display:flex}.dj-print-toolbar small{color:var(--dj-muted);padding-bottom:8px;font-size:.68em}.dj-report-print-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:15px;display:grid}.dj-report-print-grid button{border:1px solid var(--dj-line);background:var(--paper);cursor:pointer;text-align:left;border-radius:13px;grid-template-columns:42px 1fr;align-content:center;gap:2px 11px;min-height:92px;padding:14px;display:grid}.dj-report-print-grid button:hover{box-shadow:var(--dj-shadow);border-color:#c8b0b0}.dj-report-print-grid span{color:#fff;background:#3f626f;border-radius:11px;grid-row:1/span 2;place-items:center;width:42px;height:42px;font-size:1.1em;display:grid}.dj-report-print-grid b{font-size:.76em}.dj-report-print-grid small{color:var(--dj-muted);font-size:.72em}.dj-reports-layout{grid-template-columns:245px minmax(0,1fr);align-items:start;gap:14px;display:grid}.dj-report-nav{border:1px solid var(--dj-line);background:var(--paper);border-radius:14px;overflow:hidden}.dj-report-nav button{border:0;border-bottom:1px solid var(--dj-line);background:var(--paper);cursor:pointer;text-align:left;grid-template-columns:1fr auto;width:100%;padding:13px 15px;display:grid}.dj-report-nav button b,.dj-report-nav button small{display:block}.dj-report-nav button b{font-size:.72em}.dj-report-nav button small{color:var(--dj-muted);margin-top:4px;font-size:.72em;line-height:1.35}.dj-report-nav button i{color:var(--muted);grid-area:1/2/span 2;align-self:center;font-style:normal}.dj-report-nav button.is-active{color:#fff;background:var(--ink)}.dj-report-nav button.is-active small{color:var(--muted)}.dj-report-filters{border-bottom:1px solid var(--dj-line);background:var(--paper);align-items:flex-end;gap:9px;padding:13px 18px;display:flex}.dj-report-summary{border-bottom:1px solid var(--dj-line);background:var(--dj-line);grid-template-columns:repeat(4,1fr);gap:1px;display:grid}.dj-report-summary div{background:var(--paper);padding:14px 17px}.dj-report-summary small,.dj-report-summary b{display:block}.dj-report-summary small{color:var(--dj-muted);font-size:.72em}.dj-report-summary b{margin-top:5px;font-size:1.05em}.dj-report-table{min-width:700px}.dj-report-table td{text-align:left;height:49px;font-size:.72em}.dj-report-table th{text-align:left;height:45px}.dj-family-report{justify-content:space-between;align-items:center;gap:20px;padding:24px;display:flex}.dj-family-report>div{grid-template-columns:44px 1fr;gap:2px 12px;display:grid}.dj-family-report .dj-subject-mark{grid-row:1/span 3}.dj-family-report h3,.dj-family-report p{margin:0}.dj-family-report p{color:var(--dj-muted);margin-top:6px;font-size:.72em}.dj-student-results{overflow:hidden}.dj-student-results__main{grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:14px;padding:22px;display:grid}.dj-student-results__main h3,.dj-student-results__main p,.dj-student-results aside p{margin:0}.dj-student-results__main h3{font-size:.9em}.dj-student-results__main p{color:var(--dj-muted);margin-top:6px;font-size:.72em;line-height:1.5}.dj-student-results aside{border-top:1px solid var(--dj-line);background:#f6f9f9;padding:14px 22px}.dj-student-results aside b{font-size:.72em}.dj-student-results aside p{color:var(--dj-muted);margin-top:4px;font-size:.68em;line-height:1.5}.family-diary-head{align-items:flex-end}.family-diary-toolbar{flex-wrap:wrap}.family-diary-main,.family-diary-additional{overflow:hidden}.family-diary-additional{border-top:7px solid var(--surface-subtle);margin-top:22px}.family-diary-table-wrap{max-height:min(68vh,760px)}.family-diary-table{table-layout:fixed;border-collapse:separate;border-spacing:0;width:100%;min-width:930px}.family-diary-table th,.family-diary-table td{border-right:1px solid var(--dj-line);border-bottom:1px solid var(--dj-line);text-align:center;vertical-align:middle;height:62px;padding:6px}.family-diary-table thead th{z-index:3;height:50px;color:var(--muted);background:var(--paper);font-size:.72rem;position:sticky;top:0}.family-diary-table thead th b,.family-diary-table thead th small{display:block}.family-diary-table thead th small{color:var(--muted);text-transform:capitalize;margin-top:3px;font-weight:600}.family-diary-table .family-diary-subject{z-index:2;background:var(--paper);text-align:left;width:220px;min-width:220px;padding:9px 12px;position:sticky;left:0}.family-diary-table thead .family-diary-subject{z-index:5;background:var(--paper)}.family-diary-table tbody tr:hover td,.family-diary-table tbody tr:hover .family-diary-subject{background:var(--paper)}.family-diary-subject>span{vertical-align:middle;display:inline-flex}.family-diary-subject>span:last-child{flex-direction:column;max-width:148px}.family-diary-subject b,.family-diary-subject small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.family-diary-subject b{color:var(--dj-ink);font-size:.8rem}.family-diary-subject small{color:var(--dj-muted);margin-top:4px;font-size:.7rem;font-weight:600}.family-diary-subject__mark{color:#fff;background:var(--dj-accent);border-radius:9px;justify-content:center;align-items:center;width:31px;height:31px;margin-right:9px;font-weight:900}.family-diary-day-cell{justify-content:center;align-items:center;gap:3px;min-height:42px;display:flex}.family-diary-mark{min-width:34px;min-height:38px;color:var(--dj-ink);background:var(--surface-subtle);cursor:pointer;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:2px;padding:3px;display:flex;position:relative}.family-diary-mark:disabled{cursor:default;opacity:.35}.family-diary-mark:not(:disabled):hover,.family-diary-mark:not(:disabled):focus-visible{background:var(--paper);border-color:#cfaaa5;outline:none;box-shadow:0 3px 10px #492a251a}.family-diary-mark__grade{color:#fff;background:#317f72;border-radius:7px;place-items:center;min-width:21px;height:25px;font-size:.76rem;font-weight:900;display:grid}.family-diary-mark__attendance{color:#a64b34;font-size:.78rem;font-weight:900}.family-diary-mark__lesson{color:var(--muted);font-size:1.1rem}.family-diary-mark__cancelled{color:#9a6058;text-transform:uppercase;font-size:.65rem;font-weight:850}.family-diary-mark.is-cancelled{background:#f2eeee;border-style:dashed}.family-diary-mark__comment{color:#fff;background:#d4552f;border:2px solid #fff;border-radius:50%;place-items:center;width:18px;height:18px;font-size:.65rem;font-weight:950;display:grid;position:absolute;top:-6px;right:-5px}.family-diary-average{background:#fcfaf8;width:78px;min-width:78px}.family-diary-average b,.family-diary-average small{display:block}.family-diary-average b{color:#2e6e65;font-size:.88rem}.family-diary-average small{color:var(--dj-muted);margin-top:4px;font-size:.66rem}.family-diary-legend{color:var(--dj-muted);border-top:1px solid var(--dj-line);flex-wrap:wrap;align-items:center;gap:14px;padding:11px 18px;font-size:.68rem;display:flex}.family-diary-legend span{align-items:center;gap:6px;display:inline-flex}.family-diary-legend i{border-radius:6px;place-items:center;width:22px;height:22px;font-style:normal;font-weight:900;display:grid}.legend-grade{color:#fff;background:#317f72}.legend-attendance{color:#a64b34;background:#f5e5de}.legend-comment{color:#fff;background:#d4552f}.family-activity-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:18px;display:grid}.family-activity-card{border:1px solid var(--dj-line);background:var(--paper);border-radius:13px;overflow:hidden}.family-activity-card>header{border-bottom:1px solid var(--dj-line);background:#faf8fc;align-items:center;gap:11px;min-height:64px;padding:12px 14px;display:flex}.family-activity-card>header>span:last-child{flex-direction:column;min-width:0;display:flex}.family-activity-card>header b{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.family-activity-card>header small{color:var(--dj-muted);margin-top:3px;font-size:.7rem}.family-activity-card__mark{color:#fff;background:#705b7f;border-radius:10px;flex:none;place-items:center;width:35px;height:35px;font-weight:900;display:grid}.family-activity-card__lessons>button{width:100%;min-height:58px;color:inherit;border:0;border-bottom:1px solid var(--dj-line);background:var(--paper);cursor:pointer;text-align:left;grid-template-columns:58px minmax(0,1fr) auto auto 18px;align-items:center;gap:9px;padding:9px 13px;display:grid}.family-activity-card__lessons>button:last-child{border-bottom:0}.family-activity-card__lessons>button:hover{background:#fcfaf9}.family-activity-card__date,.family-activity-card__topic{flex-direction:column;min-width:0;display:flex}.family-activity-card__date b,.family-activity-card__topic b{font-size:.73rem}.family-activity-card__date small,.family-activity-card__topic small{color:var(--dj-muted);margin-top:3px;font-size:.68rem}.family-activity-card__topic b,.family-activity-card__topic small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.family-activity-card__attendance{color:#a64b34;background:#f5e5de;border-radius:7px;place-items:center;width:25px;height:25px;font-size:.74rem;font-weight:900;display:grid}.family-activity-card__present{color:#8f8884;font-size:.66rem}.family-activity-card__comment{color:#fff;background:#d4552f;border-radius:50%;place-items:center;width:20px;height:20px;font-size:.68rem;font-weight:900;display:grid}.family-activity-card__empty{color:var(--dj-muted);margin:0;padding:18px;font-size:.7rem}.family-diary-details__topic,.family-diary-details__comment{background:var(--surface-subtle);border-radius:11px;padding:13px 14px}.family-diary-details__topic small,.family-diary-details__comment small{color:var(--dj-muted);margin-bottom:6px;font-size:.7rem;display:block}.family-diary-details__comment{background:#fff5ee;border-left:4px solid #d4552f;margin-top:12px}.family-diary-details__comment p{margin:0;line-height:1.55}.family-diary-details__grades{flex-wrap:wrap;gap:9px;margin-top:12px;display:flex}.family-diary-details__grades>span{border:1px solid var(--dj-line);border-radius:10px;grid-template-columns:34px 1fr;align-items:center;gap:7px;min-width:105px;padding:9px;display:grid}.family-diary-details__grades b{color:#fff;background:#317f72;border-radius:9px;grid-row:1/span 2;place-items:center;width:34px;height:34px;display:grid}.family-diary-details__grades small{color:var(--dj-muted);font-size:.62rem}.family-diary-details__line{margin:12px 0 0}.family-diary-details__alert{color:#8d3c2b;background:#f9e7e1;border-radius:9px;align-items:center;gap:8px;margin-top:12px;padding:10px;font-weight:750;display:flex}.family-diary-details__muted{color:var(--dj-muted)}@media (width>=1700px){.family-diary-table{min-width:100%}.family-diary-table .family-diary-subject{width:250px;min-width:250px}.family-diary-table th,.family-diary-table td{height:68px}}@media (width<=1050px){.family-diary-table{min-width:880px}.family-diary-table .family-diary-subject{width:185px;min-width:185px}.family-diary-subject>span:last-child{max-width:116px}.family-activity-grid{grid-template-columns:1fr}}@media (width<=680px){.family-diary-head{align-items:stretch}.family-diary-head .dj-head-actions{grid-template-columns:1fr 1fr;width:100%;display:grid}.family-diary-head .dj-head-actions .button,.family-diary-toolbar>.dj-field{width:100%}.family-diary-table-wrap{max-height:62vh}.family-diary-table{min-width:760px}.family-diary-table .family-diary-subject{width:156px;min-width:156px;padding:7px}.family-diary-subject__mark{display:none!important}.family-diary-subject>span:last-child{max-width:138px}.family-diary-table th,.family-diary-table td{height:56px;padding:4px}.family-diary-mark{min-width:30px;min-height:34px}.family-diary-average{width:64px;min-width:64px}.family-activity-grid{padding:10px}.family-activity-card__lessons>button{grid-template-columns:50px minmax(0,1fr) auto auto 16px;padding:9px}.family-activity-card__present{display:none}}.dj-period-control{background:var(--paper);border:1px solid #d9e1e2;border-radius:12px;margin:14px 17px;overflow:hidden}.dj-period-control>header{border-bottom:1px solid var(--line);background:#f4f8f8;justify-content:space-between;align-items:center;gap:14px;padding:13px 15px;display:flex}.dj-period-control>header div{gap:4px;display:grid}.dj-period-control>header small{color:var(--dj-muted);text-transform:uppercase;font-size:.66em}.dj-period-control>header b{font-size:.76em}.dj-period-control>p{color:var(--dj-muted);margin:0;padding:14px 15px;font-size:.72em}.dj-period-readiness{background:var(--line);grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.dj-period-readiness>span{background:var(--paper);gap:5px;padding:12px 15px;display:grid}.dj-period-readiness small{color:var(--dj-muted);font-size:.65em}.dj-period-readiness b{font-size:.72em}.dj-period-actions{align-items:flex-end;gap:12px;padding:13px 15px;display:flex}.dj-period-actions p{color:var(--dj-muted);flex:1;margin:0;font-size:.7em;line-height:1.45}.dj-period-actions .dj-field{flex:1}.dj-unlock-grants{border-top:1px solid var(--line);background:var(--paper)}.dj-unlock-grants>header{background:var(--surface-subtle);justify-content:space-between;align-items:center;gap:12px;padding:13px 15px;display:flex}.dj-unlock-grants>header div{gap:3px;display:grid}.dj-unlock-grants>header small{color:var(--dj-muted);text-transform:uppercase;font-size:.62em;font-weight:800}.dj-unlock-grants>header b{font-size:.74em}.dj-unlock-grants>header>span{color:#fff;background:#476a76;border-radius:999px;place-items:center;min-width:24px;height:24px;font-size:.65em;font-weight:850;display:grid}.dj-unlock-grants>p{color:var(--dj-muted);border-top:1px solid var(--surface-subtle);margin:0;padding:12px 15px;font-size:.69em}.dj-grant-list{display:grid}.dj-grant-list>div{border-top:1px solid var(--surface-subtle);align-items:center;gap:12px;padding:11px 15px;display:flex}.dj-grant-list>div>span{flex:1;gap:3px;min-width:0;display:grid}.dj-grant-list b{font-size:.72em}.dj-grant-list small{color:#52666d;font-size:.66em}.dj-grant-list em{color:#91a0a4;font-size:.61em;font-style:normal}.dj-grant-list button{color:#96323a}.dj-grant-form{border-top:1px solid var(--line);background:var(--paper);grid-template-columns:minmax(150px,1fr) minmax(170px,.8fr) minmax(190px,1.2fr) auto;align-items:end;gap:9px;padding:13px 15px;display:grid}.dj-grant-form .dj-button{white-space:nowrap}.dj-library-toolbar{grid-template-columns:minmax(220px,1.2fr) repeat(4,minmax(145px,.65fr)) auto;align-items:end;display:grid}.dj-search-input{background:var(--paper);border:1px solid #ccd9db;border-radius:10px;align-items:center;gap:8px;min-height:40px;padding:0 11px;display:flex}.dj-search-input:focus-within{border-color:var(--dj-accent);box-shadow:0 0 0 3px #1d7d821f}.dj-search-input input{width:100%;min-width:0;font:inherit;background:0 0;border:0;outline:0}.dj-library-form{margin-bottom:16px;padding:18px}.dj-library-form textarea{resize:vertical;min-height:86px}.dj-library-grid{gap:10px;display:grid}.dj-library-card{border:1px solid var(--dj-line);background:var(--paper);border-radius:15px;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:13px;padding:15px 17px;display:grid;box-shadow:0 6px 18px #1b3a3c0a}.dj-library-card.is-archived{opacity:.66;background:#f6f8f8}.dj-library-card__icon{width:42px;height:42px;color:var(--dj-accent);background:#e8f4f3;border-radius:12px;place-items:center;display:grid}.dj-library-card__body{min-width:0}.dj-library-card__title{align-items:center;gap:8px;display:flex}.dj-library-card h3{color:#173c40;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.91em;overflow:hidden}.dj-library-card p{color:#5f7276;text-overflow:ellipsis;white-space:nowrap;margin:4px 0 7px;font-size:.73em;overflow:hidden}.dj-library-card__meta{color:#7b8e92;flex-wrap:wrap;gap:5px 13px;font-size:.66em;display:flex}.dj-library-card__actions{align-items:center;gap:7px;display:flex}.dj-library-card__actions .button{min-height:36px;text-decoration:none}@media (width<=1180px){.dj-page-head{flex-direction:column;align-items:flex-start}.dj-toolbar{flex-direction:column;align-items:stretch}.dj-toolbar .dj-save-state,.dj-toolbar .dj-subtle-badge{align-self:flex-start;margin-left:0}.dj-field--compact,.dj-field--compact select{width:100%;min-width:0}.dj-date-nav{width:100%}.dj-date-nav__range{flex:1;min-width:0}.dj-head-actions{justify-content:flex-start;width:100%}.dj-subject-grid{grid-template-columns:repeat(2,minmax(180px,1fr))}.dj-homework-layout{grid-template-columns:1fr}.dj-homework-week{grid-template-columns:repeat(4,minmax(0,1fr))}.dj-library-toolbar{grid-template-columns:repeat(2,minmax(190px,1fr))}.dj-week{grid-template-columns:1fr}}@media (width<=860px){.dj-page{font-size:16px}.dj-week,.dj-editor-grades{grid-template-columns:1fr}.dj-journal-head-actions{flex-direction:column-reverse;align-items:flex-end}.dj-lesson-layout,.dj-classes-layout,.dj-reports-layout{grid-template-columns:1fr}.dj-class-picker{display:flex;overflow-x:auto}.dj-class-picker>p{display:none}.dj-class-picker button{border-right:1px solid var(--dj-line);border-bottom:0;min-width:135px}.dj-report-nav{display:flex;overflow-x:auto}.dj-report-nav button{min-width:190px}.dj-report-print-grid{grid-template-columns:1fr}.dj-report-summary{grid-template-columns:repeat(2,1fr)}.dj-lesson-roster{grid-template-columns:1fr}.dj-lesson-hero{grid-template-columns:auto 1fr}.dj-lesson-hero>.dj-status{grid-column:1/-1}.dj-bell-layout{grid-template-columns:1fr}.dj-bell-list{display:flex;overflow-x:auto}.dj-bell-list button{min-width:160px}.dj-period-readiness{grid-template-columns:1fr}.dj-grant-form{grid-template-columns:1fr 1fr}.dj-grant-reason{grid-column:1/-1}.dj-library-toolbar{grid-template-columns:1fr}.dj-homework-week{grid-template-columns:repeat(2,minmax(0,1fr))}.dj-library-card{grid-template-columns:42px 1fr}.dj-library-card__actions{grid-column:2;justify-content:flex-start}}@media (width<=560px){.dj-page-head h2{font-size:27px}.dj-segmented{width:100%}.dj-segmented button{flex:1}.dj-sticky-name{width:170px;min-width:170px;max-width:170px}.dj-panel-head{align-items:flex-start}.dj-journal-head-actions .dj-button{width:100%}.dj-journal-table tbody .dj-sticky-name span:last-child,.dj-finals-table tbody .dj-sticky-name span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dj-modal-backdrop{align-items:end;padding:0}.dj-modal{border-radius:18px 18px 0 0;max-height:94vh}.dj-editor-row,.dj-attendance-options,.dj-grade-editor .dj-editor-row{grid-template-columns:1fr 1fr}.dj-grade-editor .dj-editor-row .dj-field:first-child{grid-column:1/-1}.dj-grade-options{grid-template-columns:repeat(4,1fr)}.dj-tabs--compact{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid;overflow:visible}.dj-tabs--compact button{white-space:normal;min-width:0;padding-inline:8px}.dj-subject-grid,.dj-homework-editor .dj-editor-row,.dj-student-checks{grid-template-columns:1fr}.dj-homework-card>header{grid-template-columns:40px 1fr}.dj-schedule-card{grid-template-columns:52px minmax(0,1fr);gap:9px}.dj-schedule-card__meta{grid-column:2;grid-auto-flow:column;justify-content:start;justify-items:start}.dj-schedule-card-wrap.is-manageable .dj-schedule-card{padding-right:40px}.dj-homework-card>header .dj-status{grid-column:2}.dj-homework-card>footer{flex-wrap:wrap}.dj-homework-card>footer>div{width:100%;margin-left:0}.dj-report-filters{flex-direction:column;align-items:stretch}.dj-family-report{flex-direction:column;align-items:flex-start}.dj-student-results__main{grid-template-columns:44px minmax(0,1fr)}.dj-student-results__main .dj-button{grid-column:1/-1;width:100%}.dj-operation-form{grid-template-columns:1fr}.dj-operation-form .dj-span-2,.dj-span-2{grid-column:auto}.dj-head-actions .dj-button{flex:1}.dj-submission-row{grid-template-columns:32px 1fr}.dj-submission-row>:nth-child(n+3){grid-column:2;justify-self:start}.dj-period-actions{flex-direction:column;align-items:stretch}.dj-period-actions .dj-button{width:100%}.dj-print-toolbar{flex-direction:column;align-items:stretch}.dj-print-toolbar small{padding:0}.dj-grant-form{grid-template-columns:1fr}.dj-grant-reason{grid-column:auto}.dj-grant-form .dj-button{width:100%}.dj-library-card{padding:13px}.dj-library-card__actions{flex-wrap:wrap}}@media print{.sidebar,.topbar,.mobile-topbar,.mobile-nav,.dj-page-head .dj-button,.dj-toolbar,.dj-tabs,.dj-back-link,.dj-print-note,.dj-report-nav,.dj-report-filters,.dj-panel-actions,.dj-schedule-card__edit,.dj-success-line,.dj-print-toolbar,.dj-unlock-grants{display:none!important}.workspace{width:100%!important;margin:0!important}.content{width:100%!important;max-width:none!important;padding:0!important}.dj-page{color:#000;width:100%;max-width:none;font-size:10px}.dj-page-head{margin-bottom:10px}.dj-page-head h2{font-size:20px}.dj-week{grid-template-columns:repeat(2,1fr);gap:5px;display:grid;overflow:visible}.dj-day{break-inside:avoid;border-color:#aaa;min-width:0}.dj-day__lessons{min-height:0;padding:4px}.dj-schedule-card{border-color:#bbb;grid-template-columns:36px 1fr auto;min-height:54px;padding:5px 6px}.dj-schedule-card__body small{display:none}.dj-schedule-card__meta{min-width:55px}.dj-panel,.dj-report-print-grid button{box-shadow:none}.dj-reports-layout{display:block}.dj-table-wrap{overflow:visible}.dj-report-table,.dj-journal-table,.dj-finals-table{min-width:0}@page{size:landscape;margin:10mm}}@media (prefers-reduced-motion:reduce){.dj-loading span{animation-duration:1.4s}.dj-subject-card,.dj-switch>span,.dj-switch>span:after{transition:none}}.dj-class-picker.dj-class-picker--grouped{min-width:0;display:block}.dj-class-picker--grouped>input{width:100%;min-width:0;min-height:44px;color:var(--ink);background:var(--paper);border:1px solid var(--line-strong);border-radius:9px;margin:.5rem 0;padding:.7rem .65rem}.dj-class-picker--grouped summary{cursor:pointer;color:var(--dj-ink,var(--ink));padding:.7rem .4rem;font-size:.85rem}.dj-class-picker--grouped details>div{gap:.3rem;max-height:23rem;display:grid;overflow-y:auto}.dj-class-picker--grouped details button{white-space:normal;width:100%;min-width:0}.curriculum-page{--curriculum-teal:#277f8d;--curriculum-ink:#17343c;--curriculum-muted:#667b81}.curriculum-page .button{text-decoration:none}.curriculum-alert{justify-content:space-between;align-items:center;margin-bottom:1rem}.curriculum-alert button{background:0 0;border-radius:8px;flex:none;width:2rem;height:2rem;font-size:1.2rem}.curriculum-tabs{border:1px solid var(--line);background:var(--paper);border-radius:12px;padding:.25rem;display:inline-flex}.curriculum-tabs button{min-height:2.35rem;color:var(--muted);background:0 0;border-radius:9px;padding:.5rem .9rem;font-size:.75rem;font-weight:780}.curriculum-tabs button.is-active{color:#fff;background:var(--curriculum-ink);box-shadow:0 5px 13px #17343c26}.curriculum-course-card{margin-bottom:1rem}.curriculum-course-select{grid-template-columns:minmax(16rem,1fr) auto;align-items:end;gap:1rem;padding:1rem 1.15rem;display:grid}.curriculum-course-select .field select{min-width:18rem}.curriculum-course-meta{align-items:center;gap:.65rem;min-height:2.7rem;display:flex}.curriculum-course-meta span{color:#21768a;background:var(--blue-soft);border-radius:999px;padding:.36rem .58rem;font-size:.68rem;font-weight:770}.curriculum-course-meta small{color:var(--muted);font-size:.68rem}.curriculum-layout{grid-template-columns:minmax(15rem,19rem) minmax(0,1fr);align-items:start;gap:1rem;display:grid}.curriculum-plan-list{position:sticky;top:6rem;overflow:hidden}.curriculum-plan-list .section-header{align-items:center}.curriculum-plan-list .section-header .button{min-height:2.25rem;padding:.5rem .65rem}.curriculum-plan-list__items{padding:.42rem;display:grid}.curriculum-plan-list__items>button{text-align:left;background:0 0;border-left:3px solid #0000;border-radius:11px;justify-content:space-between;align-items:center;gap:.7rem;width:100%;min-height:4.2rem;padding:.72rem .78rem;display:flex}.curriculum-plan-list__items>button:hover{background:#f5f9fa}.curriculum-plan-list__items>button.is-active{border-left-color:var(--orange);background:var(--blue-soft)}.curriculum-plan-list__items>button>span:first-child{flex:1;gap:.3rem;min-width:0;display:grid}.curriculum-plan-list__items b{color:var(--curriculum-ink);text-overflow:ellipsis;white-space:nowrap;font-size:.77rem;overflow:hidden}.curriculum-plan-list__items small{color:var(--muted);font-size:.63rem}.curriculum-plan-list__items .state{min-height:12rem;padding:1rem}.curriculum-main{gap:1rem;min-width:0;display:grid}.curriculum-plan-head{grid-template-columns:minmax(0,1fr) auto;gap:1rem;padding:1.2rem 1.25rem;display:grid}.curriculum-plan-head .eyebrow{margin-bottom:.42rem}.curriculum-plan-head__title{flex-wrap:wrap;align-items:center;gap:.7rem;display:flex}.curriculum-plan-head h2{color:var(--curriculum-ink);letter-spacing:-.035em;margin:0;font-size:1.3rem}.curriculum-plan-head p{max-width:48rem;color:var(--curriculum-muted);margin:.55rem 0 0;font-size:.74rem;line-height:1.55}.curriculum-plan-actions{align-items:flex-start;gap:.45rem;display:flex}.curriculum-plan-actions .button{min-height:2.25rem}.curriculum-plan-metrics{border:1px solid var(--line);background:var(--surface-subtle);border-radius:12px;grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));display:grid;overflow:hidden}.curriculum-plan-metrics>span{border-right:1px solid var(--line);align-content:center;gap:.22rem;min-height:3.6rem;padding:.65rem .85rem;display:grid}.curriculum-plan-metrics>span:last-child{border-right:0}.curriculum-plan-metrics small{color:var(--muted);font-size:.61rem}.curriculum-plan-metrics b{color:var(--curriculum-ink);font-size:.87rem}.curriculum-suggestions{border-color:#efcfb9;overflow:hidden}.curriculum-suggestions .section-header{background:#fff8f1}.curriculum-suggestion-list{display:grid}.curriculum-suggestion-list article{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;min-height:4.5rem;padding:.8rem 1.15rem;display:flex}.curriculum-suggestion-list article:first-child{border-top:0}.curriculum-suggestion-list article>div:first-child{gap:.34rem;min-width:0;display:grid}.curriculum-suggestion-list article>div:last-child{gap:.45rem;display:flex}.curriculum-suggestion-list b{color:var(--curriculum-ink);font-size:.77rem}.curriculum-suggestion-list span{color:var(--curriculum-muted);font-size:.67rem}.curriculum-suggestion-list i{color:var(--orange);margin:0 .3rem;font-style:normal;font-weight:900}.curriculum-suggestion-list .button{min-height:2.2rem;padding:.5rem .7rem}.curriculum-topics-card{overflow:hidden}.curriculum-topic-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.45rem;display:flex}.curriculum-topic-actions .button{white-space:nowrap;min-height:2.3rem;padding:.5rem .7rem}.curriculum-topic-actions label.button{cursor:pointer;position:relative}.curriculum-topic-actions label.is-disabled{opacity:.55;pointer-events:none}.curriculum-topic-actions label input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.curriculum-table-wrap{width:100%;overflow:auto}.curriculum-topic-table,.curriculum-progress-table{border-collapse:collapse;width:100%;min-width:1020px}.curriculum-topic-table th,.curriculum-progress-table th{color:#6d7c80;border-bottom:1px solid var(--line);background:var(--surface-subtle);letter-spacing:.035em;text-align:left;text-transform:uppercase;padding:.68rem .7rem;font-size:.62rem;font-weight:800}.curriculum-topic-table td,.curriculum-progress-table td{border-bottom:1px solid var(--line);vertical-align:top;padding:.72rem .7rem;font-size:.72rem}.curriculum-topic-table tbody tr:last-child td,.curriculum-progress-table tbody tr:last-child td{border-bottom:0}.curriculum-topic-table tbody tr:hover{background:#fcfdfd}.curriculum-topic-order{width:5.7rem}.curriculum-topic-order>b{color:var(--curriculum-ink);font-size:.8rem;display:block}.curriculum-topic-order>span{gap:.15rem;margin-top:.42rem;display:flex}.curriculum-topic-order button{width:1.65rem;height:1.55rem;color:var(--curriculum-teal);background:var(--paper);border:1px solid #d5e4e6;border-radius:6px;place-items:center;display:grid}.curriculum-topic-order button:disabled{opacity:.3}.curriculum-topic-name{gap:.26rem;min-width:13rem;max-width:28rem;display:grid}.curriculum-topic-name>small{color:#596e74;background:var(--surface-subtle);border-radius:5px;width:fit-content;padding:.18rem .35rem;font-size:.57rem;font-weight:800}.curriculum-topic-name>b{color:var(--curriculum-ink);font-size:.77rem;line-height:1.4}.curriculum-topic-name>p{color:var(--curriculum-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.64rem;line-height:1.45;display:-webkit-box;overflow:hidden}.curriculum-topic-plan{gap:.25rem;min-width:7.5rem;display:grid}.curriculum-topic-plan>b{color:var(--curriculum-ink)}.curriculum-topic-plan>span,.curriculum-topic-plan>small{color:var(--curriculum-muted);font-size:.62rem}.curriculum-lesson-links{flex-wrap:wrap;gap:.4rem;min-width:13rem;display:flex}.curriculum-lesson-links>span{background:#f8fbfb;border:1px solid #cfdee0;border-radius:9px;gap:.22rem;min-width:7.4rem;padding:.48rem 1.7rem .48rem .55rem;display:grid;position:relative}.curriculum-lesson-links>span.is-cancelled{background:#fff6f4;border-color:#ecc7c2;padding-bottom:2.25rem}.curriculum-lesson-links>span>b{color:var(--curriculum-ink);font-size:.64rem}.curriculum-lesson-links>span>small{color:var(--curriculum-muted);font-size:.57rem}.curriculum-lesson-links>span>button:not(.curriculum-transfer-button){color:#96524b;background:0 0;border-radius:5px;width:1.25rem;height:1.25rem;font-size:.9rem;position:absolute;top:.24rem;right:.24rem}.curriculum-transfer-button{color:#9a4936;background:#f9dfd6;border-radius:6px;min-height:1.45rem;font-size:.55rem;font-weight:800;position:absolute;bottom:.35rem;left:.4rem;right:.4rem}.curriculum-add-link{min-height:2.55rem;color:var(--curriculum-teal);background:#f9fcfc;border:1px dashed #a9cdd2;border-radius:9px;padding:.4rem .58rem;font-size:.62rem;font-weight:770}.curriculum-add-link:hover{background:var(--blue-soft);border-style:solid}.curriculum-row-actions{justify-items:start;gap:.3rem;min-width:5.2rem;display:grid}.curriculum-row-actions button{color:var(--curriculum-teal);background:0 0;border-radius:5px;padding:.2rem .3rem;font-size:.62rem;font-weight:730}.curriculum-row-actions button:hover{background:var(--blue-soft)}.curriculum-row-actions button.is-danger{color:var(--danger)}.curriculum-form{gap:1rem;display:grid}.curriculum-form input,.curriculum-form select,.curriculum-form textarea,.curriculum-link-dialog input{border:1px solid var(--line-strong);background:var(--paper);border-radius:10px;outline:0;width:100%;min-height:2.7rem;padding:.68rem .8rem}.curriculum-form textarea{resize:vertical;line-height:1.5}.curriculum-form input:focus,.curriculum-form select:focus,.curriculum-form textarea:focus,.curriculum-link-dialog input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #51b8cb26}.curriculum-form__row{gap:.75rem;display:grid}.curriculum-form__row--three{grid-template-columns:.7fr 1fr .7fr}.curriculum-topic-dialog{width:min(56rem,94vw)}.curriculum-import-dialog{width:min(66rem,94vw)}.curriculum-link-dialog{gap:1rem;display:grid}.curriculum-link-dialog .state{min-height:9rem}.curriculum-lesson-picker{gap:.42rem;max-height:23rem;padding:.15rem;display:grid;overflow:auto}.curriculum-lesson-picker label{border:1px solid var(--line);background:var(--paper);cursor:pointer;border-radius:11px;align-items:center;gap:.75rem;min-height:3.8rem;padding:.65rem .75rem;display:flex}.curriculum-lesson-picker label:hover,.curriculum-lesson-picker label.is-selected{background:var(--blue-soft);border-color:#a8d3da}.curriculum-lesson-picker input{width:1rem;min-height:1rem;padding:0}.curriculum-lesson-picker span{gap:.3rem;min-width:0;display:grid}.curriculum-lesson-picker b{color:var(--curriculum-ink);font-size:.74rem}.curriculum-lesson-picker small{color:var(--curriculum-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.64rem;overflow:hidden}.curriculum-import-preview{gap:1rem;display:grid}.curriculum-import-mode{background:var(--surface-subtle);border-radius:11px;flex-wrap:wrap;align-items:center;gap:.65rem 1rem;padding:.8rem;display:flex}.curriculum-import-mode>span{color:var(--curriculum-ink);margin-right:auto;font-size:.72rem;font-weight:800}.curriculum-import-mode label{color:#52676d;cursor:pointer;align-items:center;gap:.4rem;font-size:.68rem;display:inline-flex}.curriculum-import-summary{border:1px solid var(--line);border-radius:11px;grid-template-columns:repeat(3,1fr);display:grid;overflow:hidden}.curriculum-import-summary>span{border-right:1px solid var(--line);gap:.25rem;padding:.75rem;display:grid}.curriculum-import-summary>span:last-child{border-right:0}.curriculum-import-summary small{color:var(--muted);font-size:.62rem}.curriculum-import-summary b{color:var(--curriculum-ink)}.curriculum-import-summary .has-errors b{color:var(--danger)}.curriculum-import-errors{color:#91353a;background:var(--danger-soft);border:1px solid #f0c5c6;border-radius:10px;max-height:9rem;padding:.65rem .8rem;overflow:auto}.curriculum-import-errors p{margin:.25rem 0;font-size:.66rem;line-height:1.45}.curriculum-import-table{border:1px solid var(--line);border-radius:11px;max-height:20rem;overflow:auto}.curriculum-import-table table{border-collapse:collapse;width:100%}.curriculum-import-table th,.curriculum-import-table td{border-bottom:1px solid var(--line);text-align:left;padding:.55rem .65rem;font-size:.65rem}.curriculum-import-table th{background:#f7f9fa;position:sticky;top:0}.curriculum-import-table>p{color:var(--muted);margin:0;padding:.7rem;font-size:.65rem}.curriculum-confirm-note{color:#76562a;background:#fff6df;border-radius:10px;margin:0;padding:.72rem .8rem;font-size:.68rem;line-height:1.5}.curriculum-statistics{gap:1rem;display:grid}.curriculum-statistics .metric-card{min-height:6.4rem}.curriculum-statistics .metric-card small,.curriculum-statistics .metric-card strong{display:block}.curriculum-statistics .metric-card small{color:var(--muted);font-size:.68rem}.curriculum-statistics .metric-card strong{color:var(--curriculum-ink);margin-top:.35rem;font-size:1.35rem}.curriculum-progress-card{overflow:hidden}.curriculum-progress-table{min-width:820px}.curriculum-progress-table td{vertical-align:middle}.curriculum-muted{color:var(--muted)}.curriculum-progress{background:var(--surface-subtle);border-radius:999px;min-width:9rem;height:1.65rem;position:relative;overflow:hidden}.curriculum-progress>span{border-radius:inherit;background:linear-gradient(90deg, var(--blue), var(--curriculum-teal));position:absolute;inset:0 auto 0 0}.curriculum-progress>b{z-index:1;height:100%;color:var(--curriculum-ink);place-items:center;font-size:.62rem;display:grid;position:relative}@media (width<=1180px){.curriculum-layout{grid-template-columns:15rem minmax(0,1fr)}.curriculum-plan-head{grid-template-columns:1fr}.curriculum-plan-actions{grid-row:2}}@media (width<=900px){.curriculum-page .page-header{flex-direction:column;align-items:flex-start}.curriculum-page .page-header__actions,.curriculum-tabs{width:100%}.curriculum-tabs button{flex:1}.curriculum-layout{grid-template-columns:1fr}.curriculum-plan-list{position:static}.curriculum-plan-list__items{display:flex;overflow-x:auto}.curriculum-plan-list__items>button{border-bottom:3px solid #0000;border-left:0;min-width:14rem}.curriculum-plan-list__items>button.is-active{border-bottom-color:var(--orange)}.curriculum-plan-list__items .state{min-width:100%}.curriculum-topic-actions{justify-content:flex-start}.curriculum-topics-card .section-header{flex-direction:column;align-items:stretch}.curriculum-form__row--three{grid-template-columns:1fr 1fr}.curriculum-form__row--three .field:last-child{grid-column:1/-1}}@media (width<=620px){.curriculum-course-select{grid-template-columns:1fr}.curriculum-course-select .field select{min-width:0}.curriculum-course-meta{flex-wrap:wrap;min-height:0}.curriculum-plan-head{padding:1rem}.curriculum-plan-actions{flex-wrap:wrap}.curriculum-plan-actions .button{flex:1}.curriculum-plan-metrics{grid-template-columns:repeat(2,1fr)}.curriculum-plan-metrics>span:nth-child(2){border-right:0}.curriculum-plan-metrics>span:nth-child(-n+2){border-bottom:1px solid var(--line)}.curriculum-suggestion-list article{flex-direction:column;align-items:stretch}.curriculum-suggestion-list article>div:last-child .button{flex:1}.curriculum-topic-actions{grid-template-columns:1fr;display:grid}.curriculum-topic-actions .button{width:100%}.curriculum-form__row--three{grid-template-columns:1fr}.curriculum-form__row--three .field:last-child{grid-column:auto}.curriculum-import-mode{flex-direction:column;align-items:flex-start}.curriculum-import-mode>span{margin:0}.curriculum-import-summary{grid-template-columns:1fr}.curriculum-import-summary>span{border-right:0;border-bottom:1px solid var(--line)}.curriculum-import-summary>span:last-child{border-bottom:0}.curriculum-statistics .metrics-grid{grid-template-columns:repeat(2,1fr)}}.notification-group{min-width:0}.notification-item__title{overflow-wrap:anywhere;flex-wrap:wrap}.notification-item__body{overflow-wrap:anywhere}.notification-group__details{border-bottom:1px solid var(--surface-subtle);background:var(--paper);padding:.5rem 1rem 1rem}.notification-group__details ul{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.notification-group__details li{min-width:0}.notification-group__details li button{text-align:left;border:1px solid var(--line);background:var(--surface-subtle);width:100%;color:var(--ink);overflow-wrap:anywhere;border-radius:10px;gap:.35rem;padding:.8rem;display:grid}.notification-group__details li strong{font-size:.8rem;line-height:1.4}.notification-group__details li span{font-size:.9rem;font-weight:650}.notification-group__details li small{color:var(--muted);font-size:.7rem}.notification-group__details>button{margin-top:.75rem}.notification-group__details button:focus-visible{outline:2px solid var(--blue-strong);outline-offset:2px}.first-password-page{background:var(--canvas);min-height:100dvh;color:var(--ink);place-items:center;padding:24px 16px;display:grid}.first-password-card{border:1px solid var(--line);background:var(--paper);width:min(100%,520px);min-width:0;box-shadow:var(--shadow-sm);border-radius:20px;padding:28px}.first-password-brand{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.first-password-card h1{margin:8px 0 14px;font-size:clamp(24px,5vw,32px);line-height:1.2}.first-password-card>p,.password-change-hint{color:var(--muted);margin:0;font-size:14px;line-height:1.55}.password-change-form{gap:16px;min-width:0;display:grid}.first-password-card .password-change-form{margin:22px 0 14px}.password-change-form .field,.password-change-form input{width:100%;min-width:0}.password-change-form .button{white-space:normal;min-height:44px}@media (width<=480px){.first-password-card{padding:20px 16px}.first-password-page{padding:12px}}.table-sort-button{max-width:100%;min-height:36px;color:inherit;font:inherit;font-weight:inherit;text-align:left;cursor:pointer;white-space:normal;background:0 0;border:0;align-items:center;gap:.45rem;padding:.25rem 0;display:inline-flex}.table-sort-button:hover{text-underline-offset:3px;text-decoration:underline}.table-sort-button:focus-visible{outline-offset:3px;border-radius:3px;outline:2px solid}.table-sort-button>span:last-child{flex-shrink:0;font-size:1.1em}th[aria-sort=ascending] .table-sort-button,th[aria-sort=descending] .table-sort-button{font-weight:700}.account-assignments{overflow-wrap:anywhere;gap:.7rem;min-width:13rem;max-width:30rem;display:grid}.account-assignments section{gap:.25rem;display:grid}.account-assignments__label{color:var(--muted);font-size:.7rem;font-weight:600}.account-assignments strong{color:var(--ink);font-weight:650}.account-assignments ul{gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.account-assignments li{gap:.1rem;display:grid}.account-assignments summary{cursor:pointer;color:var(--ink);width:fit-content;padding:.35rem 0}.account-assignments summary:focus-visible{outline:2px solid var(--ink);outline-offset:3px;border-radius:3px}.account-assignments details[open] summary{margin-bottom:.35rem}@media (width<=600px){.account-assignments summary{align-items:center;min-height:44px;display:flex}}.grouped-picker{border:0;width:100%;min-width:0;margin:0;padding:0}.grouped-picker legend{max-width:100%;color:var(--muted);margin-bottom:.6rem;padding:0;font-size:.8rem;font-weight:750}.grouped-picker__tools{gap:.65rem;display:grid}.grouped-picker__tools>input{width:100%;min-width:0;min-height:44px;color:var(--ink);background:var(--paper);border:1px solid var(--line-strong);border-radius:9px;padding:.7rem .8rem}.grouped-picker__only{width:fit-content;min-height:36px;color:var(--ink);cursor:pointer;align-items:center;gap:.6rem;font-size:.8rem;display:flex}.grouped-picker input[type=checkbox]{opacity:1;width:18px;height:18px;min-height:18px;accent-color:var(--blue-strong);flex:0 0 18px;margin:0;padding:0;position:static}.grouped-picker__count{color:var(--muted);margin:.4rem 0;font-size:.78rem}.grouped-picker__list{scrollbar-gutter:stable;border:1px solid var(--line);border-radius:10px;max-height:22rem;padding:.15rem;overflow-y:auto}.grouped-picker__group+.grouped-picker__group{border-top:1px solid var(--line)}.grouped-picker__heading{text-align:left;width:100%;min-height:48px;color:var(--ink);background:var(--paper);cursor:pointer;border:0;align-items:center;gap:.6rem;padding:.7rem;display:flex}.grouped-picker__heading strong{overflow-wrap:anywhere;flex:1;min-width:0;font-size:.88rem}.grouped-picker__heading small{color:var(--muted);flex-shrink:0;font-size:.73rem}.grouped-picker__arrow{color:var(--blue-strong);flex:0 0 1rem}.grouped-picker__options{padding:.25rem .6rem .6rem}.grouped-picker__options[hidden]{display:none}.grouped-picker__option{text-align:left;width:100%;min-width:0;min-height:46px;color:var(--ink);background:var(--paper);border:1px solid var(--line);cursor:pointer;border-radius:8px;align-items:center;gap:.7rem;margin-top:.3rem;padding:.7rem;display:flex}.grouped-picker__option>span:first-of-type{flex:1;min-width:0}.grouped-picker__option strong,.grouped-picker__option small{overflow-wrap:anywhere;display:block}.grouped-picker__option strong{font-size:.85rem;font-weight:650}.grouped-picker__option small{color:var(--muted);margin-top:.2rem;font-size:.75rem}.grouped-picker__option.is-selected,.grouped-picker__option[aria-pressed=true]{border-color:var(--blue);background:var(--blue-soft)}.grouped-picker__option:focus-within,.grouped-picker__heading:focus-visible{outline:2px solid var(--blue-strong);outline-offset:1px}.grouped-picker__option:hover,.grouped-picker__heading:hover{background:var(--blue-soft)}.grouped-picker__hint,.grouped-picker__empty{color:var(--muted);margin:.6rem 0 0;font-size:.78rem;line-height:1.5;display:block}.grouped-picker__empty{margin:0;padding:.7rem}.course-select{min-width:0}.course-select__trigger{width:100%;min-width:0;min-height:44px;color:var(--ink);background:var(--paper);border:1px solid var(--line-strong);text-align:left;cursor:pointer;border-radius:9px;justify-content:space-between;align-items:center;gap:.8rem;padding:.65rem .8rem;display:flex}.course-select__trigger>span:first-child{overflow-wrap:anywhere;min-width:0}.course-select-dialog{width:min(640px,100vw - 24px)}.course-select-dialog .grouped-picker__list{max-height:min(27rem,52dvh)}.list-pagination{color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.7rem;padding:.9rem;font-size:.8rem;display:flex}.list-pagination>div{align-items:center;gap:.65rem;display:flex}.collection-search{margin:.8rem 0;display:block}.collection-search input{width:100%;min-width:0;min-height:44px;color:var(--ink);background:var(--paper);border:1px solid var(--line-strong);border-radius:9px;padding:.7rem .8rem}.catalog-course-groups{gap:.6rem;display:grid}.catalog-course-group{border:1px solid var(--line);background:var(--paper);border-radius:10px;overflow:hidden}.catalog-course-group>summary{min-height:48px;color:var(--ink);cursor:pointer;overflow-wrap:anywhere;padding:.8rem;font-weight:700}.catalog-course-group>summary small{color:var(--muted);margin-left:.5rem;font-weight:400}.catalog-course-cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,19rem),1fr));gap:.6rem;max-height:34rem;padding:.7rem;display:grid;overflow-y:auto}.catalog-course-card{border:1px solid var(--line);border-radius:9px;align-content:start;gap:.6rem;min-width:0;padding:.9rem;display:grid}.catalog-course-card h4,.catalog-course-card p{overflow-wrap:anywhere;margin:0}.catalog-course-card h4{font-size:.9rem}.catalog-course-card small{color:var(--muted)}.catalog-course-card .module-actions{flex-wrap:wrap;gap:.5rem;display:flex}@media (width<=600px){.grouped-picker__list{max-height:19rem}.grouped-picker__heading{gap:.4rem;padding:.65rem .45rem}.grouped-picker__heading small{text-align:right;max-width:6rem}.list-pagination{padding-inline:0}}.account-delete-dialog .account-form{grid-template-columns:minmax(0,1fr)}.account-delete-dialog .account-form>*{overflow-wrap:anywhere;min-width:0}.account-delete-dialog .account-form p{margin:0;line-height:1.6}.account-delete-dialog .dialog__body{box-sizing:border-box;width:100%;min-width:0}.dj-library-page .dj-library-card{align-items:start}.dj-library-page .dj-library-card h3{-webkit-line-clamp:2;white-space:normal;overflow-wrap:anywhere;color:var(--ink);-webkit-box-orient:vertical;font-weight:750;line-height:1.45;display:-webkit-box}.dj-library-page .library-description-preview{-webkit-line-clamp:2;white-space:normal;overflow-wrap:anywhere;color:var(--muted);-webkit-box-orient:vertical;font-size:14px;line-height:1.5;display:-webkit-box}.dj-library-page .dj-library-card__icon{color:var(--blue-strong);background:var(--blue-soft)}.dj-library-page .dj-library-card.is-archived{opacity:1;background:var(--surface-subtle)}.dj-library-page .dj-library-card__meta{color:var(--muted);font-size:12px}.library-material-details{margin-top:8px;font-size:14px}.library-material-details summary{width:fit-content;min-height:40px;color:var(--blue-strong);cursor:pointer;align-items:center;gap:8px;font-weight:700;list-style:none;display:flex}.library-material-details summary:before{content:"▸"}.library-material-details[open] summary:before{content:"▾"}.library-material-details summary::-webkit-details-marker{display:none}.library-material-details summary:focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-radius:4px}.library-material-details>div{border:1px solid var(--line);background:var(--surface-subtle);border-radius:10px;padding:12px}.library-material-full-title{color:var(--ink);overflow-wrap:anywhere;line-height:1.5;display:block}.dj-library-page .dj-library-card .library-material-full-description,.dj-library-page .dj-library-card .library-material-filename{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--ink);margin:10px 0 0;font-size:14px;line-height:1.6;display:block;overflow:visible}.announcement-filters,.announcement-receipt-filters{border:1px solid var(--line);background:var(--paper);border-radius:14px;grid-template-columns:minmax(180px,2fr) repeat(2,minmax(145px,1fr)) auto;align-items:end;gap:12px;margin-bottom:14px;padding:16px;display:grid}.announcement-filter-count{color:var(--muted);margin:0 0 12px;font-size:14px}.announcements-page .announcement h2{color:var(--ink);overflow-wrap:anywhere;font-weight:750;line-height:1.45}.announcements-page .announcement__body{color:var(--ink);overflow-wrap:anywhere;font-size:15px;line-height:1.6}.announcements-page .announcement__body.is-collapsed{-webkit-line-clamp:4;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.announcements-page .announcement__read-more{min-height:40px;margin:0 0 8px;padding-inline:0}.announcements-page .announcement footer{gap:12px}.announcements-page .announcement__actions,.announcements-page .announcement__meta{flex-wrap:wrap}.announcement-action-error{flex-wrap:wrap;margin-top:14px}.announcement-action-error>span{flex:240px}.announcement-edit-notice{border:1px solid var(--line-strong);background:var(--blue-soft);color:var(--ink);border-radius:10px;padding:12px;font-size:14px;line-height:1.55}.announcement-edit-confirm{align-items:flex-start;gap:10px;font-size:14px;line-height:1.5;display:flex}.announcement-edit-confirm input{flex:none;width:20px;min-height:20px;margin-top:2px}.announcement-receipts-dialog{width:min(760px,100%)}.announcement-receipt-filters{border:0;grid-template-columns:minmax(160px,2fr) minmax(150px,1fr);padding:0}.announcement-receipts-dialog .receipt-list>div{gap:16px}.announcement-receipts-dialog .receipt-list strong,.announcement-receipts-dialog .receipt-list small{overflow-wrap:anywhere;white-space:normal}.announcement-receipt-stat{color:var(--muted);margin:0 0 16px;font-size:14px;line-height:1.55}.announcement-recipient-choice{border:1px solid var(--line);color:var(--blue-strong);background:var(--blue-soft);overflow-wrap:anywhere;border-radius:10px;padding:10px 12px;font-size:14px;line-height:1.5}@media (width<=760px){.announcement-filters{grid-template-columns:1fr 1fr}.announcement-filters>.field:first-child,.announcement-filters>.button{grid-column:1/-1}.announcement-receipt-filters,.announcements-page .announcement{grid-template-columns:1fr}.announcements-page .announcement__icon{display:none}.announcements-page .announcement__actions{width:100%}.announcements-page .announcement__actions .button{flex:auto;width:auto}.announcements-page .announcement__read-more{width:auto}}@media (width<=360px){.announcement-filters{grid-template-columns:minmax(0,1fr)}}.dj-homework-page .dj-homework-layout.is-readonly{display:block}.dj-homework-page .homework-create{flex-shrink:0}.homework-list-tools{border:1px solid var(--line);background:var(--paper);border-radius:14px;margin-bottom:18px;padding:18px}.homework-list-primary{grid-template-columns:minmax(0,1.6fr) minmax(150px,1fr) minmax(180px,1fr);align-items:end;gap:14px;display:grid}.homework-list-tools .dj-field{min-width:0;margin:0}.homework-list-tools .dj-field>span{letter-spacing:.035em;margin-bottom:6px;font-size:12px;display:block}.homework-list-tools input,.homework-list-tools select{width:100%;min-width:0;min-height:44px;font-size:14px}.homework-extra-filters{border-top:1px solid var(--line);margin-top:14px}.homework-extra-filters>summary{cursor:pointer;color:var(--blue-strong);flex-wrap:wrap;align-items:center;gap:10px;padding:12px 0 2px;font-size:14px;font-weight:650;display:flex}.homework-extra-filters>summary:before{content:"+";font-size:20px;line-height:1}.homework-extra-filters[open]>summary:before{content:"−"}.homework-extra-filters>summary span{color:var(--muted);font-size:12px;font-weight:400}.homework-extra-filters>div{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:14px;display:grid}.homework-filter-note{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;margin-top:12px;font-size:12px;line-height:1.5;display:flex}.homework-filter-note>button{min-height:36px;color:var(--blue-strong);background:var(--paper);border:1px solid var(--line);cursor:pointer;border-radius:8px;flex-shrink:0;padding:5px 10px;font-size:13px}.dj-homework-page .dj-homework-list{scroll-margin-top:90px}.dj-homework-page .dj-homework-card>p{color:var(--ink);overflow-wrap:anywhere;font-size:15px;line-height:1.65}.dj-homework-page .dj-attachment-row a,.dj-homework-page .dj-submission-files a{color:var(--blue-strong);background:var(--blue-soft);border-color:var(--line-strong);overflow-wrap:anywhere;text-underline-offset:3px;align-items:center;min-height:40px;padding:8px 10px;font-size:14px;text-decoration:underline;display:inline-flex}.dj-homework-page .dj-homework-card.is-teacher{background:var(--paper);margin:0;padding:0 20px}.dj-homework-page .dj-homework-card.is-teacher>summary{cursor:pointer;grid-template-columns:40px minmax(0,1fr) auto 20px;align-items:start;gap:12px;padding:18px 0;list-style:none;display:grid}.dj-homework-page .dj-homework-card.is-teacher>summary::-webkit-details-marker{display:none}.dj-homework-page .dj-homework-card.is-teacher>summary:after{content:none}.dj-homework-page .dj-homework-card.is-teacher[open]>summary{border-bottom:1px solid var(--line);margin-bottom:12px}.dj-homework-page .homework-card-heading{min-width:0}.dj-homework-page .dj-homework-card.is-teacher>summary b{color:var(--ink);overflow-wrap:anywhere;font-size:17px;font-weight:700;line-height:1.4;display:block}.dj-homework-page .dj-homework-card.is-teacher>summary small{color:var(--muted);overflow-wrap:anywhere;margin-top:5px;font-size:13px;line-height:1.5;display:block}.homework-card-meta{color:var(--muted);flex-wrap:wrap;gap:8px 14px;margin-top:9px;font-size:13px;line-height:1.5;display:flex}.homework-card-meta time{color:var(--ink);font-weight:550}.homework-waiting{color:var(--warning);background:var(--warning-soft);border-radius:6px;padding:1px 7px}.homework-card-toggle{color:var(--blue-strong);text-align:center;font-size:23px;line-height:1}.dj-homework-page .dj-homework-card.is-teacher .dj-status{overflow-wrap:anywhere;max-width:100%;font-size:12px}.dj-homework-page .dj-homework-card.is-teacher>footer{padding:14px 0 18px}.dj-homework-page .dj-homework-card.is-teacher>footer small,.dj-homework-page .dj-submission-row small{font-size:12px;line-height:1.5}.dj-homework-page .dj-homework-card.is-teacher>footer b{font-size:14px}.dj-homework-page .dj-homework-card.is-teacher .dj-text-button{min-height:40px;padding:8px 12px;font-size:14px}.dj-homework-page .dj-submission-block>header,.dj-homework-page .dj-submission-row>span:nth-child(2)>b{font-size:14px}.dj-homework-page .dj-submission-status{font-size:12px}.dj-homework-page .dj-assigned-variant{border:1px solid var(--line-strong);border-left:3px solid var(--blue);background:var(--surface-subtle);border-radius:9px;margin:14px 0;padding:14px}.dj-homework-page .dj-assigned-variant>small{color:var(--muted);margin-bottom:5px;font-size:12px;display:block}.dj-homework-page .dj-assigned-variant>b{color:var(--ink);font-size:16px;display:block}.dj-homework-page .dj-assigned-variant>p{color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;margin:8px 0 0;font-size:15px;line-height:1.6}.homework-editor-dialog{width:min(880px,100vw - 24px)}.homework-editor-dialog .homework-editor-fields{border:0;min-width:0;margin:0;padding:0}.homework-editor-dialog .dj-homework-editor{box-shadow:none;background:0 0;border:0;min-width:0}.homework-editor-status{flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 16px;display:flex}.homework-editor-status small{color:var(--muted);font-size:12px;line-height:1.5}.homework-editor-dialog .dj-editor-row{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) minmax(140px,.8fr)}.homework-editor-dialog .dj-field>span{font-size:12px;line-height:1.5}.homework-editor-dialog .dj-field input,.homework-editor-dialog .dj-field select,.homework-editor-dialog .dj-field textarea{font-size:15px}.homework-editor-dialog .dj-variant-list>fieldset{min-width:0}.homework-editor-dialog .dj-variant-list .grouped-picker{background:0 0;border:0;margin:14px 0 0;padding:0}.homework-editor-dialog .dj-choice-box .grouped-picker{margin-top:14px}.homework-editor-dialog .grouped-picker__list{max-height:240px}.homework-editor-dialog .dj-variant-list>fieldset>legend{overflow-wrap:anywhere;flex-wrap:wrap;align-items:center;gap:10px;max-width:100%;display:flex}.homework-editor-dialog .dj-variant-list>fieldset>legend>button{min-width:36px;min-height:36px}.homework-editor-dialog .dj-inline-choice>label{min-height:40px;font-size:14px;line-height:1.5}.homework-editor-dialog>footer{gap:10px}.homework-editor-dialog>footer .dj-button{font-size:14px}@media (width<=900px){.homework-list-primary{grid-template-columns:repeat(2,minmax(0,1fr))}.homework-search{grid-column:1/-1}.homework-extra-filters>div{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.homework-list-tools{padding:14px}.homework-list-primary{gap:10px}.homework-list-tools select,.homework-list-tools input{font-size:14px}.homework-filter-note{flex-wrap:wrap}.dj-homework-page .dj-homework-card.is-teacher{padding-inline:14px}.dj-homework-page .dj-homework-card.is-teacher>summary{grid-template-columns:34px minmax(0,1fr) 18px;gap:10px;padding-block:16px}.dj-homework-page .dj-homework-card.is-teacher>summary .dj-status{grid-column:2;width:fit-content}.dj-homework-page .dj-homework-card.is-teacher>summary .homework-card-toggle{grid-area:1/3}.dj-homework-page .dj-homework-card.is-teacher>summary b{font-size:16px}.dj-homework-page .dj-homework-card.is-teacher>summary .dj-subject-mark{width:34px;height:34px}.homework-editor-dialog .dj-editor-row{grid-template-columns:1fr}.homework-editor-dialog>footer{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:8px;display:grid}.homework-editor-dialog>footer .dj-button{min-width:0;padding-inline:8px;font-size:13px}.homework-editor-dialog>footer .dj-button--primary{grid-column:1/-1}.homework-editor-dialog .grouped-picker__list{max-height:220px}}@media (width<=360px){.homework-extra-filters>div{grid-template-columns:1fr}}.student-profile-link{color:var(--teal-700,var(--ink));text-underline-offset:.2em;overflow-wrap:anywhere;font-weight:600;text-decoration:underline}.student-profile-link:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.student-card-page{max-width:72rem;margin-inline:auto}.student-card-page .page-header h1{overflow-wrap:anywhere}.student-message-compose,.student-message-filters,.student-message{min-width:0;padding:1.25rem}.student-message-compose h2,.student-message-history h2{margin:0 0 .5rem;font-size:1.3rem}.student-message-compose>p,.student-message-history>header p{margin:0 0 1rem;line-height:1.6}.student-message-compose form{grid-template-columns:minmax(0,1fr);gap:1rem;display:grid}.student-message-compose form .button{justify-self:start}.student-message-compose textarea{resize:vertical;min-height:8rem;font-size:1rem}.student-message-audience,.student-message-warning{background:var(--surface-subtle);border-left:3px solid var(--line-strong);overflow-wrap:anywhere;border-radius:.6rem;padding:.8rem}.student-message-confirm{align-items:flex-start;gap:.65rem;font-size:.9rem;display:flex}.student-message-confirm input{flex:none;width:auto;margin-top:.25rem}.student-message-history{gap:1rem;min-width:0;margin-top:1.75rem;display:grid}.student-message-filters{grid-template-columns:minmax(0,1fr);align-items:end;gap:1rem;display:grid}.student-message-advanced summary{cursor:pointer;color:var(--ink);font-size:.95rem;font-weight:600}.student-message-advanced summary small{color:var(--muted);margin-left:.8rem}.student-message-advanced>div{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:1rem;margin-top:1rem;display:grid}.student-message-advanced>div>*,.student-message-filters>*,.student-message-list>*,.student-message header>*{min-width:0}.student-message-filters input,.student-message-filters select{width:100%;font-size:.95rem}.student-card-page .field__label,.student-message-hint{color:var(--muted);font-size:.875rem;line-height:1.5}.student-message-list{gap:1rem;display:grid}.student-message header{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;gap:.5rem 1.5rem;padding-bottom:.75rem;display:flex}.student-message header strong{overflow-wrap:anywhere;font-size:1rem}.student-message time{color:var(--muted);font-size:.875rem}.student-message>p,.student-message-long p{white-space:pre-wrap;overflow-wrap:anywhere;margin:1rem 0 0;font-size:1rem;line-height:1.65}.student-message-long{margin-top:1rem}.student-message-long summary{cursor:pointer;overflow-wrap:anywhere;line-height:1.65}.student-message-long summary strong{color:var(--muted);margin-top:.5rem;font-size:.875rem;display:block}@media (width<=680px){.student-message-filters,.student-message-advanced>div{grid-template-columns:minmax(0,1fr)}.student-message-compose,.student-message-filters,.student-message{padding:1rem}.student-message-compose form .button{justify-self:stretch}}.workload-panel{gap:1rem;min-width:0;padding:1.2rem;display:grid}.workload-panel h3{font-size:1.125rem;font-weight:700}.workload-panel h4{font-size:1rem;font-weight:650}.workload-panel .field{align-items:stretch;gap:.4rem;display:grid}.workload-panel .field>span{font-size:.875rem}.catalog-manager .catalog-manager-toolbar .segmented{flex-wrap:wrap;overflow:visible}.catalog-manager .catalog-manager-toolbar .segmented button,.catalog-manager .catalog-manager-toolbar .segmented button span{white-space:nowrap}.catalog-manager .catalog-manager-toolbar .segmented button span:empty{display:none}.workload-row .button--secondary,.account-dialog .button--secondary{background:var(--paper);color:var(--ink);border-color:var(--line-strong)}.workload-row .button--secondary:not(:disabled):hover,.account-dialog .button--secondary:not(:disabled):hover{background:var(--surface-subtle);color:var(--ink)}.workload-panel h3,.workload-panel h4,.workload-panel p{margin:0}.workload-panel header p,.workload-note{color:var(--muted);font-size:.875rem;line-height:1.6}.workload-tools{grid-template-columns:1fr 1fr auto;align-items:end;gap:1rem;display:grid}.workload-tools>label{align-items:center;gap:.5rem;min-height:44px;display:flex}.workload-row{border:1px solid var(--line);border-radius:12px;min-width:0;padding:1rem}.workload-row form{grid-template-columns:minmax(8rem,1.4fr) repeat(2,minmax(7rem,1fr)) repeat(2,minmax(6rem,.8fr)) auto;align-items:end;gap:1rem;display:grid}.workload-row .field,.workload-row input{width:100%;min-width:0}.workload-target,.workload-count{overflow-wrap:anywhere;flex-direction:column;align-self:center;gap:.4rem;display:flex}.workload-target>strong{font-size:1rem}.workload-target small,.workload-count span{color:var(--muted);font-size:.875rem}.workload-count strong{font-size:1.125rem}.workload-warning{border:1px solid var(--line);border-left:3px solid var(--warning);border-radius:8px;margin-top:.75rem;padding:.75rem 1rem;font-size:.875rem;line-height:1.6}.workload-warning summary{cursor:pointer;min-height:30px;font-weight:650}.workload-warning ul{max-height:15rem;padding-left:1.25rem;overflow:auto}.workload-warning p{margin-top:.5rem}.workload-saved{padding-top:.5rem;font-size:.875rem}.teacher-course-picker{gap:1rem;min-width:0;display:grid}.account-recovery{flex-wrap:wrap;align-items:center;gap:.75rem;padding:1rem;display:flex}.account-recovery p{flex-basis:100%}@media (width<=1100px){.workload-row form{grid-template-columns:repeat(2,minmax(0,1fr))}.workload-target,.workload-row form>button{grid-column:1/-1}.workload-tools{grid-template-columns:1fr 1fr}.workload-tools>label{grid-column:1/-1}}@media (width<=520px){.workload-panel{padding:.8rem}.workload-tools{grid-template-columns:1fr}.workload-row{padding:.75rem}.workload-row form{gap:.75rem}.workload-row input{font-size:1rem}.catalog-manager .catalog-manager-toolbar .segmented button{flex:1 0 auto}}.schedule-templates{color:var(--ink);gap:1.25rem;min-width:0;max-width:100%;scroll-margin-top:100px;display:grid}.schedule-templates h2,.schedule-templates h3,.schedule-templates p{overflow-wrap:anywhere;margin:0}.template-head,.template-context,.template-day>header,.template-list article{justify-content:space-between;align-items:center;gap:1rem;display:flex}.template-head p,.template-help,.template-list p{color:var(--muted);line-height:1.6}.template-head>div{gap:.5rem;display:grid}.template-filters{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-items:end;gap:1rem;display:grid}.template-list{gap:.6rem;display:grid}.template-list article,.template-day,.template-repeat,.template-preview{background:var(--paper);border:1px solid var(--line);border-radius:14px;min-width:0;padding:1.1rem}.template-list article>div{min-width:0}.template-list strong{overflow-wrap:anywhere}.template-steps{flex-wrap:wrap;gap:.6rem;display:flex}.template-steps b{background:var(--surface-subtle);color:var(--muted);border-radius:8px;padding:.6rem .9rem}.template-steps .is-current{color:var(--ink);box-shadow:inset 0 -3px var(--primary)}.template-editor,.template-repeat{border:0;gap:1rem;min-width:0;margin:0;padding:0;display:grid}.template-repeat{border:1px solid var(--line);padding:1.2rem}.template-day{gap:1rem;display:grid}.template-slot{border-top:1px solid var(--line);grid-template-columns:70px minmax(130px,1.4fr) minmax(160px,1.6fr) 100px 100px auto;align-items:end;gap:.7rem;padding-top:1rem;display:grid}.schedule-templates .field{gap:.35rem;min-width:0;display:grid}.schedule-templates select,.schedule-templates input,.schedule-templates textarea{background:var(--input);width:100%;min-width:0;max-width:100%;color:var(--ink);border:1px solid var(--line-strong);border-radius:8px;min-height:42px;padding:.65rem}.schedule-templates input[type=checkbox]{flex-shrink:0;width:20px;min-height:20px}.template-actions{flex-wrap:wrap;align-items:end;gap:.7rem;display:flex}.template-actions [aria-pressed=true]{outline:2px solid var(--blue)}.template-check{align-items:center;gap:.7rem;line-height:1.5;display:flex}.template-note,.template-notice{background:var(--surface-subtle);border-left:3px solid var(--blue);padding:1rem;line-height:1.6}.template-summary{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.template-summary div{background:var(--surface-subtle);border-radius:10px;gap:.4rem;padding:1rem;display:grid}.template-summary strong{font-size:1.5rem}.template-summary span{color:var(--muted)}.template-preview{gap:1rem;display:grid}.template-preview-list{gap:.6rem;max-height:330px;margin-top:.8rem;display:grid;overflow:auto}.template-import{border:1px solid var(--line);border-radius:10px;padding:1rem}.schedule-templates summary{cursor:pointer;min-height:32px;font-weight:600}.template-import p{margin:.5rem 0}.schedule-templates .button{white-space:normal}.schedule-templates .button--secondary{background:var(--paper);color:var(--ink);border-color:var(--line-strong)}.template-joint{background:var(--surface-subtle);border-radius:8px;grid-column:1/-1;padding:.8rem}.template-joint p{margin:.5rem 0;line-height:1.5}.template-joint-options{flex-wrap:wrap;gap:1rem;margin:.7rem 0;display:flex}.template-past-choice{border:2px solid var(--blue);border-radius:10px;gap:1rem;min-width:0;padding:1rem;display:grid}.template-past-choice legend{max-width:100%;padding:.3rem;font-weight:700}.schedule-templates input[type=radio]{flex-shrink:0;width:20px;min-height:20px}.template-history-row{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding-top:1rem;display:flex}.template-history-row>div{min-width:0}.template-history-row small{color:var(--muted)}.template-joint small{color:var(--muted);display:block}@media (width<=1100px){.template-slot{grid-template-columns:70px 1fr 1fr}.template-slot .button{align-self:end}}@media (width<=600px){.template-head,.template-context{flex-direction:column;align-items:stretch}.template-filters{grid-template-columns:1fr}.template-slot{grid-template-columns:1fr 1fr}.template-slot .field:nth-child(2),.template-slot .field:nth-child(3){grid-column:1/-1}.template-summary{grid-template-columns:1fr;gap:.5rem}.template-list article{flex-direction:column;align-items:flex-start}.template-day{padding:.85rem}.template-actions>*{flex:180px}.template-steps{font-size:.82rem}}.local-modules{min-width:0}.module-toolbar,.module-grid{grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));align-items:end;gap:16px;display:grid}.module-toolbar{padding:20px}.module-toolbar label,.module-form label{min-width:0}.module-toolbar select,.module-form select,.module-form input:not([type=checkbox]),.module-form textarea{width:100%;min-width:0;max-width:100%}.module-summary{justify-content:space-between;align-items:center;gap:20px;padding:20px;display:flex}.module-summary h2,.module-topic-list h3{overflow-wrap:anywhere;margin:10px 0}.module-summary p,.module-topic-list p{white-space:pre-wrap;overflow-wrap:anywhere}.module-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.module-topic-list{gap:16px;display:grid}.module-topic-list>.card{min-width:0;padding:20px}.module-topic-list header{justify-content:space-between;align-items:start;gap:16px;display:flex}.module-form{gap:16px;display:grid}.curriculum-topic-toolbar{grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:end;gap:16px;margin:16px 0;display:grid}.curriculum-topic-toolbar .collection-search{min-width:0;margin:0}.curriculum-topic-toolbar .collection-search>span{color:var(--muted);margin-bottom:7px;font-size:13px;display:block}.curriculum-topic-toolbar select{width:100%;min-width:0;min-height:44px}.module-topic-list .curriculum-topic-card{padding:0;overflow:hidden}.curriculum-topic-card>header{flex-direction:column;gap:12px;padding:18px 20px 10px}.curriculum-topic-title{min-width:0}.curriculum-topic-number{color:var(--muted);font-size:13px}.curriculum-topic-title h3{margin:6px 0 0;font-size:18px;font-weight:650;line-height:1.4}.curriculum-topic-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px 18px;font-size:13px;display:flex}.curriculum-topic-meta .status-badge{font-size:12px}.curriculum-topic-details>summary{cursor:pointer;min-height:46px;color:var(--blue-strong);flex-wrap:wrap;align-items:center;gap:8px;padding:10px 20px;font-size:14px;list-style:none;display:flex}.curriculum-topic-details>summary::-webkit-details-marker{display:none}.curriculum-topic-details>summary:before{content:"+";width:16px;font-size:20px}.curriculum-topic-details[open]>summary:before{content:"−"}.curriculum-topic-details>summary>span{color:var(--muted);font-size:12px}.curriculum-topic-details>div{border-top:1px solid var(--line);background:var(--surface-subtle);padding:18px 20px}.curriculum-topic-copy{grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:18px;display:grid}.curriculum-topic-copy section{min-width:0}.curriculum-topic-card h4{color:var(--muted);margin:0 0 8px;font-size:13px;font-weight:650}.curriculum-topic-copy p{color:var(--ink);margin:0;font-size:15px;line-height:1.6}.curriculum-teacher-note{border-left:3px solid var(--line-strong);padding-left:14px}.curriculum-added{color:var(--muted);font-size:12px}.curriculum-topic-details .module-actions{margin-top:16px}.curriculum-lessons{margin-top:20px}.curriculum-lessons .module-linked-lessons{margin-top:8px;font-size:14px}@media (width<=700px){.curriculum-topic-toolbar{grid-template-columns:minmax(0,1fr)}.curriculum-topic-card>header,.curriculum-topic-details>div{padding:14px}.curriculum-topic-details>summary{padding-inline:14px}}.module-form textarea{min-height:90px}.module-check{align-items:start;gap:12px;display:flex}.module-check input{flex:none;margin-top:4px}.module-linked-lessons{gap:12px;margin:16px 0 0;padding:0;list-style:none;display:grid}.module-linked-lessons li{justify-content:space-between;align-items:center;gap:12px;display:flex}.module-linked-lessons small{display:block}.module-report{min-width:0;padding:20px}.module-report-scroll{border:1px solid var(--line,#dce4e6);border-radius:10px;max-width:100%;overflow:auto}.module-report table{border-collapse:collapse;width:100%;font-size:14px}.module-report td,.module-report th{text-align:left;border-bottom:1px solid var(--line,#dce4e6);vertical-align:top;min-width:80px;padding:10px 12px}.module-report th{white-space:nowrap}.module-report th:first-child,.module-report td:first-child{min-width:160px}.module-report-note{white-space:pre-wrap;line-height:1.6}.module-print-chunks{display:none}.module-import-preview{max-height:300px;overflow:auto}.module-import-credentials{max-width:100%;overflow:auto}.module-import-credentials td,.module-import-credentials th{text-align:left;padding:8px}.workbook-import,.workbook-import>*{min-width:0;max-width:100%}.workbook-file-name,.workbook-sheet-list span,.workbook-samples dd{overflow-wrap:anywhere}.workbook-sheet-list{border:1px solid var(--line,#dce4e6);border-radius:10px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;padding:14px;display:grid}.workbook-mapping-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.workbook-samples summary{cursor:pointer;align-items:center;min-height:44px;display:flex}.workbook-samples ol{padding-left:22px}.workbook-samples li{margin:12px 0}.workbook-samples dl{margin:8px 0}.workbook-samples dl>div{border-bottom:1px solid var(--line,#dce4e6);grid-template-columns:minmax(90px,1fr) minmax(0,2fr);gap:8px;padding:5px 0;display:grid}.workbook-samples dt{color:var(--muted)}.workbook-samples dd{margin:0}.curriculum-import-preview{overflow-wrap:anywhere;min-width:0}.curriculum-import-preview ol{padding-left:24px}.curriculum-import-preview li{border:1px solid var(--line);background:var(--surface-subtle);border-radius:10px;margin:12px 0;padding:12px}.curriculum-import-preview h4{margin:6px 0;font-size:16px}.curriculum-import-preview small{color:var(--muted)}.curriculum-import-preview p{white-space:pre-wrap}.workbook-preview-rows{padding-left:22px}.workbook-preview-rows li{overflow-wrap:anywhere;margin:10px 0}.workbook-preview-rows small{display:block}@media (width<=550px){.workbook-mapping-grid,.workbook-sheet-list{grid-template-columns:minmax(0,1fr)}}@media (width<=700px){.module-summary,.module-topic-list header{flex-direction:column;align-items:stretch}.module-actions>.button{flex:140px}.module-topic-list>.card,.module-toolbar,.module-summary,.module-report{padding:14px}.module-linked-lessons li{align-items:start}.module-report-note{font-size:14px}}@media print{body:has(.module-report){color:#000!important;background:#fff!important}body:has(.module-report) :is(.sidebar,.topbar,.module-no-print,.module-toolbar,.page-header,.mobile-nav,.hosted-demo-banner,.family-child-switcher){display:none!important}.module-report{color:#000!important;box-shadow:none!important;background:#fff!important;border:0!important;padding:0!important}.module-report-scroll{border:0;border-radius:0;overflow:visible}.module-report table{font-size:9pt}.module-report td,.module-report th{white-space:normal;border-color:#aaa;padding:5px;color:#000!important;background:#fff!important;min-width:0!important}.module-report tr{break-inside:avoid}.module-report thead{display:table-header-group}.module-report-note{font-size:9pt}.module-print-chunks{display:block}.module-print-chunks section+section{break-before:page}.module-journal-screen{display:none}.module-print-topics{break-before:page}}.students-page .student-action-label{display:none}.students-page .student-toolbar .search-field{align-items:center;min-height:44px}.students-page .student-toolbar .search-field input{min-height:42px}@media (width<=760px){.students-page .student-toolbar .search-field{flex:none;width:100%;max-width:none}.students-page .student-toolbar .search-field input{width:100%;min-width:0;font-size:16px}.students-page .student-toolbar>.field select{min-height:44px;font-size:16px}.students-page .student-toolbar__count{font-size:12px}.students-page .student-table-wrap{background:var(--surface-subtle);padding:12px;overflow:visible}.students-page .student-table{width:100%;min-width:0;display:block}.students-page .student-table thead{margin-bottom:12px;display:block}.students-page .student-table thead tr{flex-wrap:wrap;gap:6px;display:flex}.students-page .student-table th{border:1px solid var(--line);background:var(--paper);border-radius:8px;height:auto;padding:0 10px;font-size:12px}.students-page .student-table th:last-child{display:none}.students-page .student-table .table-sort-button{min-height:44px}.students-page .student-table tbody{gap:12px;width:100%;display:grid}.students-page .student-table tbody tr{border:1px solid var(--line);background:var(--paper);border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 12px;padding:14px;display:grid}.students-page .student-table tbody tr:hover{background:var(--paper)}.students-page .student-table td{min-width:0;color:var(--ink);overflow-wrap:anywhere;border:0;align-content:start;justify-items:start;gap:4px;padding:0;font-size:14px;display:grid}.students-page .student-table td[data-label]:before{content:attr(data-label);color:var(--muted);font-size:12px;font-weight:500;display:block}.students-page .student-table td:first-child{border-bottom:1px solid var(--line);grid-column:1/-1;align-items:center;gap:10px;min-width:0;padding-bottom:12px;display:flex}.students-page .student-table td:first-child .avatar{flex:none}.students-page .student-table td:first-child strong{white-space:normal;font-size:15px;line-height:1.4;overflow:visible}.students-page .student-table td:first-child small{overflow-wrap:anywhere;font-size:12px}.students-page .student-table td:last-child{border-top:1px solid var(--line);grid-column:1/-1;padding-top:12px}.students-page .student-row-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;display:grid}.students-page .student-row-actions button{border:1px solid var(--line);background:var(--paper);width:100%;height:auto;min-height:44px;color:var(--ink);justify-content:center;align-items:center;gap:6px;padding:8px 4px;font-size:12px;display:flex}.students-page .student-row-actions button svg{flex:none}.students-page .student-row-actions button.danger{color:var(--danger)}.students-page .student-action-label{display:inline}}.curriculum-unlink-preview{border:1px solid var(--line);background:var(--surface-subtle);border-radius:12px;min-width:0;padding:1rem}.curriculum-unlink-preview p{overflow-wrap:anywhere;margin:.5rem 0}.curriculum-unlink-options{gap:1rem;display:grid}.curriculum-unlink-options section{border:1px solid var(--line);border-radius:12px;min-width:0;padding:1rem}.curriculum-unlink-options .button{white-space:normal;width:100%;height:auto;min-height:44px}.curriculum-unlink-options .button span{overflow-wrap:anywhere;min-width:0}.curriculum-unlink-options p{color:var(--muted);margin:.6rem 0 0;line-height:1.5}.ktp-catalog-controls{grid-template-columns:minmax(180px,1fr) minmax(200px,1.5fr) minmax(150px,1fr) minmax(180px,1fr);gap:16px;padding:20px;display:grid}.ktp-catalog-heading{justify-content:space-between;align-items:baseline;gap:16px;margin:24px 0 14px;display:flex}.ktp-catalog-heading h2{margin:0}.ktp-catalog-heading span,.ktp-subject-card p,.ktp-subject-card small{color:var(--muted)}.ktp-subject-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.ktp-subject-card{flex-direction:column;justify-content:space-between;gap:20px;min-width:0;padding:22px;display:flex}.ktp-subject-card h3{overflow-wrap:anywhere;margin:14px 0 8px;font-size:20px;line-height:1.35}.ktp-subject-card p{margin:0 0 6px;line-height:1.5}.ktp-subject-card .button{align-self:flex-start}.ktp-course-context{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;padding:20px;display:flex}.ktp-course-context h2{overflow-wrap:anywhere;margin:4px 0;font-size:24px}.ktp-course-context p{color:var(--muted);margin:0}.ktp-plan-variants{border:1px solid var(--line);border-radius:16px;margin-bottom:16px;padding:16px 20px}.ktp-plan-variants summary{cursor:pointer;font-weight:700}.ktp-plan-variants[open] summary{margin-bottom:16px}.ktp-plan-variants ul{gap:8px;max-height:320px;padding:0;list-style:none;display:grid;overflow:auto}.ktp-plan-variants li{overflow-wrap:anywhere;justify-content:space-between;align-items:center;gap:12px;display:flex}.ktp-plan-variants li .button{white-space:normal;text-align:left;max-width:100%}.ktp-destination{border:1px solid var(--line);border-left:4px solid var(--blue);overflow-wrap:anywhere;border-radius:10px;margin-bottom:16px;padding:14px 16px}.ktp-destination p{margin:6px 0 0}.ktp-move-lessons{max-height:220px;padding-left:20px;overflow:auto}.ktp-empty-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin:16px 0 32px;display:flex}@media (width<=1100px){.ktp-catalog-controls,.ktp-subject-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.ktp-catalog-controls,.ktp-subject-grid{grid-template-columns:minmax(0,1fr)}.ktp-catalog-heading,.ktp-course-context{flex-direction:column;align-items:stretch}.ktp-catalog-controls{padding:16px}.ktp-subject-card{padding:18px}.ktp-plan-variants li{flex-direction:column;align-items:stretch}.ktp-course-context h2{font-size:22px}}:root{--surface-subtle:#f1f5f6;--muted:#5e7278;--orange:#bc461c;--orange-strong:#a83c16;--success:#217653;--warning:#8c5612;--dj-day-meta:#536e76;--blue-strong:#24788a;--primary:#bc461c;--primary-hover:#a83c16;--primary-ink:#fff;--input:#fff;--violet-soft:#f1edf8}html[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--canvas:#121b22;--paper:#1b2831;--input:#16222b;--surface-subtle:#22323d;--ink:#e7eff1;--muted:#a9bdc6;--line:#344955;--line-strong:#516874;--sidebar:#101a22;--blue:#75beca;--blue-strong:#8cd2dc;--blue-soft:#203d46;--orange:#e0a282;--orange-strong:#efb596;--orange-soft:#403029;--primary:#d99c79;--primary-hover:#e8b18f;--primary-ink:#1a2228;--success:#90d6b0;--success-soft:#203e33;--warning:#e5c27f;--warning-soft:#423a27;--danger:#f1a4aa;--danger-soft:#432d36;--violet:#c1adeb;--violet-soft:#343048;--shadow-sm:0 3px 18px #0002;--shadow-lg:0 22px 70px #0007;--dj-soft:var(--surface-subtle);--dj-green:var(--success);--dj-blue:var(--blue-strong);--dj-amber:var(--warning);--dj-red:var(--danger);--dj-day-border:#3b5c67;--dj-day-header-border:#3b5c67;--dj-day-header-start:#213b44;--dj-day-header-end:#243b43;--dj-day-accent:#70acb7;--dj-day-title:#b3dfe4;--dj-day-meta:#a9c5cd;--dj-today-border:#ad816b;--dj-today-header-border:#725746;--dj-today-header-start:#3a302b;--dj-today-header-end:#37302d;--dj-today-accent:#ba8a70;--dj-today-title:#ecc4ac;--dj-today-meta:#d2b5a4;--dj-shadow:0 14px 34px #0002}.button--primary,.dj-button--primary{border-color:var(--primary);background:var(--primary);box-shadow:none;color:var(--primary-ink)!important}.button--primary:hover:not(:disabled),.dj-button--primary:hover:not(:disabled){background:var(--primary-hover);border-color:var(--primary-hover)}.dj-grade-options button{color:var(--ink);min-height:44px;position:relative}.dj-grade-options button.is-selected{box-shadow:none;border:2px solid}.dj-grade-options button.is-selected:after{content:"✓";font-size:11px;position:absolute;top:3px;right:5px}.dj-grade-options button.is-grade-5.is-selected{color:var(--success);background:var(--success-soft);border-color:currentColor}.dj-grade-options button.is-grade-4.is-selected{color:var(--blue-strong);background:var(--blue-soft);border-color:currentColor}.dj-grade-options button.is-grade-3.is-selected{color:var(--warning);background:var(--warning-soft);border-color:currentColor}.dj-grade-options button.is-grade-2.is-selected{color:var(--danger);background:var(--danger-soft);border-color:currentColor}.icon-button{color:var(--muted)}.field input,.field select,.field textarea,.dj-field input,.dj-field select,.dj-field textarea{background:var(--input);border-color:var(--line-strong)}input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}.dj-field :is(input,select,textarea):focus{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-soft)}.status-badge--info{color:var(--blue-strong)}.form-alert,.global-alert{color:var(--danger);border-color:var(--line-strong);background:var(--danger-soft)}.success-alert{color:var(--success);border-color:var(--line-strong)}.notification-action-error{flex-shrink:0;margin:.75rem}.theme-switcher{position:relative}.theme-menu{z-index:90;border:1px solid var(--line-strong);min-width:230px;color:var(--ink);background:var(--paper);box-shadow:var(--shadow-lg);border-radius:14px;margin:0;padding:12px;position:absolute;top:calc(100% + 10px);right:0}.theme-menu legend{float:left;width:100%;margin-bottom:8px;padding:4px 8px;font-size:14px;font-weight:750}.theme-menu label{cursor:pointer;clear:both;border-radius:8px;align-items:center;gap:12px;min-height:44px;padding:10px 8px;font-size:14px;display:flex}.theme-menu label:has(input:checked){color:var(--blue-strong);background:var(--blue-soft)}input[type=radio],input[type=checkbox]{accent-color:var(--blue-strong)}.login-theme{z-index:10;position:absolute;top:20px;right:20px}html[data-theme=dark] .topbar{border-color:var(--line);background:#121b22f2}html[data-theme=dark] :is(.mobile-nav,.mobile-more-panel){background:var(--paper);border-color:var(--line)}html[data-theme=dark] :is(.login-showcase,.sidebar){background:var(--sidebar)}html[data-theme=dark] :is(.login-screen,.login-form-panel,.boot-screen,.journal-error-screen){background:var(--canvas)}html[data-theme=dark] :is(.dialog,.dj-modal,.notification-panel,.notification-panel__header,.notification-panel__footer,.profile-popover,.profile-trigger,.card){color:var(--ink);background:var(--paper);border-color:var(--line)}html[data-theme=dark] :is(.dialog__footer,.dj-modal>footer,.dj-panel-actions){background:var(--surface-subtle)}html[data-theme=dark] :is(.icon-button__badge,.brand__mark,.family-diary-subject__mark){color:var(--primary-ink);background:var(--primary);border-color:var(--paper)}html[data-theme=dark] :is(.family-hero,.family-child-card.is-selected,.family-child-selector,.parent-child-summary){background:var(--orange-soft);border-color:var(--dj-today-border);color:var(--ink)}html[data-theme=dark] :is(.notification-item.is-unread,.notification-tabs button.active,.settings-nav button.active){background:var(--blue-soft)}html[data-theme=dark] :is(.notification-item:hover,.accounts-table tr:hover,.family-diary-table tbody tr:hover td,.family-diary-table tbody tr:hover .family-diary-subject,.dj-schedule-card.is-interactive:hover){background:var(--surface-subtle)}html[data-theme=dark] :is(.dj-subtle-badge,.dj-save-state,.dj-submission-status.is-accepted,.dj-grade-transferred,.status-badge--success){color:var(--success);background:var(--success-soft);border-color:var(--line)}html[data-theme=dark] :is(.dj-status,.dj-submission-status){color:var(--muted);background:var(--surface-subtle)}html[data-theme=dark] :is(.dj-status--draft,.dj-submission-status.is-submitted,.dj-status--planned,.dj-grade-cell__draft){color:var(--warning);background:var(--warning-soft)}html[data-theme=dark] :is(.dj-status--published,.dj-status--completed){color:var(--success);background:var(--success-soft)}html[data-theme=dark] :is(.dj-status--cancelled,.dj-status--returned,.dj-submission-status.is-returned,.dj-schedule-card__badge,.dj-grade-cell__absence){color:var(--danger);background:var(--danger-soft)}html[data-theme=dark] :is(.dj-grade-cell .is-grade-5,.family-diary-mark__grade,.diary-grade){color:var(--success);background:var(--success-soft)}html[data-theme=dark] .dj-grade-cell .is-grade-4{color:var(--blue-strong);background:var(--blue-soft)}html[data-theme=dark] .dj-grade-cell .is-grade-3{color:var(--warning);background:var(--warning-soft)}html[data-theme=dark] .dj-grade-cell .is-grade-2{color:var(--danger);background:var(--danger-soft)}html[data-theme=dark] :is(.family-diary-mark__attendance,.family-attendance-summary){color:var(--danger)}html[data-theme=dark] .dj-attendance-options button.is-selected{color:var(--blue-strong);border-color:var(--blue);background:var(--blue-soft)}html[data-theme=dark] :is(.dj-grade-cell,.dj-grade-options button,.dj-attendance-options button,.dj-schedule-card,.dj-button--ghost,.dj-modal,.dj-modal-close){border-color:var(--line-strong)}html[data-theme=dark] :is(.dj-subject-mark,.dj-submission-avatar,.attention-icon,.metric-card__icon){color:var(--blue-strong);background:var(--blue-soft)}html[data-theme=dark] :is(.dj-review-source,.dj-assigned-variant,.dj-attempt-history article,.dj-homework-card.is-draft,.dj-grade-cell.is-comment-only,.dj-student-submit,.dj-submission-block,.dj-file-drop,.dj-confirm-transfer){background:var(--surface-subtle);border-color:var(--line);color:var(--ink)}html[data-theme=dark] .dj-schedule-card__edit{color:var(--muted);background:var(--paper);border-color:var(--line)}html[data-theme=dark] :is(.dj-journal-table thead th,.dj-journal-table tfoot th,.dj-journal-table tfoot td,.dj-journal-table .dj-student-col,.family-diary-table thead th){background:var(--surface-subtle);color:var(--muted)}html[data-theme=dark] :is(.dj-journal-table tbody tr:hover td,.dj-journal-table tbody tr:hover th){background:var(--surface-subtle)}html[data-theme=dark] ::selection{color:var(--ink);background:#365566}.metric-card__copy>span,.notification-item__meta,.dj-day-empty,.dj-day-empty span{color:var(--muted)}html[data-theme=dark] :is(.dj-variant-list fieldset,.academic-rules-note,.dj-form-note){color:var(--muted);background:var(--surface-subtle);border-color:var(--line)}html[data-theme=dark] .academic-rules-note strong{color:var(--ink)}html[data-theme=dark] :is(.role-picker label span,.association-picker label span,.account-detail p){color:var(--muted)}html[data-theme=dark] .notification-tabs button span,html[data-theme=dark] :is(.role-tabs button.active,.student-class-strip button.active,.student-class-card.is-selected .student-class-card__grade,.catalog-manager-toolbar .segmented button.active span,.demo-accounts button.active,.demo-accounts button:hover),html[data-theme=dark] .button--danger:hover:not(:disabled){color:var(--canvas)}html[data-theme=dark] .catalog-manager-toolbar .segmented button.active span{color:var(--blue-strong);background:var(--blue-soft)}html[data-theme=dark] .dj-attempt-history>header{color:var(--ink);background:var(--surface-subtle)}html[data-theme=dark] :is(.dj-review-source p,.dj-attempt-history article p,.dj-attempt-history article em),.dj-homework-day-empty,.dj-empty>span,.dj-journal-table thead span{color:var(--muted)}.dj-class-picker button.is-active,.dj-segmented button.is-active{color:var(--blue-strong);background:var(--blue-soft)}.dj-class-picker button.is-active small{color:var(--blue-strong)}.dj-tabs--compact{background:var(--surface-subtle)}.family-diary-mark__cancelled{color:var(--danger);background:var(--danger-soft)}html[data-theme=dark] :is(.dj-homework-week,.family-diary-average,.settings-note){color:var(--muted);background:var(--surface-subtle)}.avatar{color:var(--primary-ink);background:var(--primary)}.family-hero .eyebrow{color:var(--primary-ink);background:var(--primary);box-shadow:none}.legend-comment,.family-activity-card__comment,.family-diary-mark__comment,.dj-grade-cell__comment{color:var(--primary-ink)!important;background:var(--primary)!important}html[data-theme=dark] :is(.hosted-demo-banner,.academic-history-lock,.period-closure-issues>span){color:var(--warning);background:var(--warning-soft);border-color:var(--line-strong)}html[data-theme=dark] .hosted-demo-banner strong{color:var(--warning)}html[data-theme=dark] :is(.family-child-switcher,.family-child-switcher>header){border-color:var(--dj-today-border)}html[data-theme=dark] .family-child-switcher>header{color:var(--ink);background:var(--orange-soft)}html[data-theme=dark] :is(.family-child-switcher__options button:hover,.dj-info-line,.dj-card-line){color:var(--ink);background:var(--surface-subtle)}html[data-theme=dark] .family-activity-card>header{background:var(--violet-soft)}html[data-theme=dark] .dj-tabs--compact{background:var(--surface-subtle)}html[data-theme=dark] :is(.dj-class-picker button.is-active,.dj-segmented button.is-active,.dj-bell-list button.is-active,.dj-report-nav button.is-active){color:var(--blue-strong);background:var(--blue-soft);border-color:var(--blue)}html[data-theme=dark] .dj-lesson-hero{color:var(--ink);background:var(--blue-soft)}html[data-theme=dark] :is(.dj-empty>span,.dj-journal-table thead span,.generated-credentials-note){color:var(--muted)}html[data-theme=dark] :is(.credentials-card code,.catalog-feature,.catalog-manager-toolbar .segmented button span){color:var(--muted);background:var(--surface-subtle)}html[data-theme=dark] .dj-homework-card>p{color:var(--ink)}@media print{html[data-theme=dark]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--canvas:#fff;--paper:#fff;--input:#fff;--surface-subtle:#f3f4f5;--ink:#172c34;--muted:#455e68;--line:#ccd5d8;--line-strong:#a5b7be;--blue-strong:#246879;--blue-soft:#eff7f8;--success:#206047;--success-soft:#ecf6ef;--warning:#725315;--warning-soft:#faf5e8;--danger:#933c44;--danger-soft:#fcf1f2;--primary:#96421e;--primary-ink:#fff;--dj-day-header-start:#eff7f8;--dj-day-header-end:#fff;--dj-day-title:#235765;--dj-day-meta:#46626b;--dj-today-header-start:#fcf3ef;--dj-today-header-end:#fff;--dj-today-title:#76492f;--dj-today-meta:#76492f}.theme-switcher,.login-theme{display:none!important}}.week-shortcuts{flex-wrap:wrap;gap:8px;display:flex}.topbar:has(.notification-panel){z-index:120;-webkit-backdrop-filter:none;backdrop-filter:none}.notification-panel{max-height:min(42rem,100dvh - 100px)}.notification-list{flex:auto;min-height:0}.notification-panel__header,.notification-tabs,.notification-panel__footer{flex:none}.week-shortcuts button{border:1px solid var(--line-strong);min-height:40px;color:var(--blue-strong);background:var(--paper);border-radius:10px;padding:8px 14px;font-size:14px;font-weight:650}.dj-day>header .day-toggle{text-align:left;width:auto;height:auto;color:inherit;background:0 0;border:0;border-radius:0;flex:1;justify-content:space-between;align-items:center;gap:12px;padding:4px 0;display:flex}.day-toggle>span:first-child{gap:5px;display:grid}.dj-day>header .day-toggle b{text-transform:capitalize;font-size:16px}.dj-day>header .day-toggle small,.dj-day>header .day-toggle>span:last-child{font-size:13px;font-weight:500}.day-toggle i{text-align:center;min-width:20px;font-size:20px;font-style:normal;display:inline-block}.dj-day>header .day-add{flex:0 0 44px;width:44px;height:44px}.dj-day,.diary-day,.dj-homework-card{scroll-margin-top:90px}.dj-day__lessons.is-collapsed{display:none}.dj-schedule-card__body b{white-space:normal;font-size:15px}.dj-schedule-card__body small,.dj-schedule-card__meta,.dj-schedule-card__time small{font-size:12px}.dj-schedule-card__time b{font-size:14px}.dj-schedule-card__meta{white-space:normal}.dj-modal,.dialog{max-height:calc(100dvh - 32px)}.dj-modal{flex-direction:column;display:flex;overflow:hidden}.dj-modal>header,.dj-modal>footer,.dialog__header,.dialog__footer{flex:none}.dj-modal-body{overscroll-behavior:contain;min-height:0;overflow-y:auto}.dj-modal>footer,.dialog__footer{flex-wrap:wrap}.dialog__footer .button,.dj-modal>footer .dj-button{min-height:44px;line-height:1.35}.dialog-footer-spacer{flex:1 1 0}.dj-field>span,.field__label{letter-spacing:.035em;font-size:12px}.dj-attendance-options button,.dj-grade-editor legend{font-size:13px}.dj-attendance-options button{min-height:44px}.dj-modal input,.dj-modal select,.dj-modal textarea,.dialog input,.dialog select,.dialog textarea{font-size:16px}.dj-modal .form-alert{font-size:14px}.family-diary-mobile{display:none}.diary-day{border:1px solid var(--dj-day-border);background:var(--paper);border-radius:12px;overflow:hidden}.diary-day>summary{min-height:62px;color:var(--dj-day-title);background:linear-gradient(110deg, var(--dj-day-header-start), var(--dj-day-header-end));cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:12px;list-style:none;display:flex}.diary-day>summary::-webkit-details-marker{display:none}.diary-day>summary:after{content:"+";font-size:20px}.diary-day[open]>summary:after{content:"−"}.diary-day>summary>span:first-child{flex:1;gap:5px;display:grid}.diary-day>summary b{text-transform:capitalize;font-size:15px}.diary-day>summary small,.diary-day>summary>span:last-of-type{color:var(--dj-day-meta);font-size:12px}.diary-day.is-today{border:2px solid var(--dj-today-border)}.diary-day.is-today>summary{background:linear-gradient(110deg, var(--dj-today-header-start), var(--dj-today-header-end));color:var(--dj-today-title)}.diary-day.is-today>summary small,.diary-day.is-today>summary>span:last-of-type{color:var(--dj-today-meta)}.diary-lesson{border-top:1px solid var(--line);width:100%;color:var(--ink);background:var(--paper);text-align:left;grid-template-columns:44px minmax(0,1fr) auto;align-items:start;gap:10px;padding:14px 12px;display:grid}.diary-lesson time{color:var(--muted);font-size:12px;line-height:21px}.diary-lesson-copy{overflow-wrap:anywhere;gap:6px;font-size:13px;line-height:1.45;display:grid}.diary-lesson-copy b{font-size:15px}.diary-lesson-copy>span,.diary-lesson-copy small{color:var(--muted);font-size:12px}.diary-lesson-marks{gap:4px;display:flex}.diary-lesson-marks .family-diary-mark__grade{min-width:28px;height:32px;font-size:15px}.day-empty-copy{color:var(--muted);margin:0;padding:16px;font-size:14px}.dj-homework-card.is-family{border:1px solid var(--dj-day-border);border-radius:12px;margin:8px 14px;padding:0 14px}.dj-homework-card.is-family>summary{color:var(--ink);background:var(--paper);cursor:pointer;border-radius:11px;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:10px;margin:0 -14px;padding:14px;list-style:none;display:grid}.dj-homework-card.is-family>summary::-webkit-details-marker{display:none}.dj-homework-card.is-family>summary:after{content:"+";grid-area:1/3;font-size:22px}.dj-homework-card.is-family[open]>summary:after{content:"−"}.dj-homework-card.is-family>summary>.dj-status{grid-column:2;justify-self:start;font-size:12px}.dj-homework-card.is-family>summary b,.dj-homework-card.is-family>summary small{display:block}.dj-homework-card.is-family>summary b{font-size:16px}.dj-homework-card.is-family>summary small{color:var(--muted);overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:5px;font-size:14px;font-weight:400;display:-webkit-box;overflow:hidden}.homework-due-label{color:var(--dj-day-meta);margin-bottom:5px;font-size:13px;display:block}.dj-homework-card.is-family>p{color:var(--ink);font-size:15px}.dj-homework-card.is-family>.homework-title{font-weight:650}.dj-homework-card.is-family>footer{padding-bottom:14px}.unavailable-feature{max-width:850px;margin-inline:auto}.local-audit-list{gap:12px;padding:16px;display:grid}.local-audit-list article{border:1px solid var(--line);overflow-wrap:anywhere;border-radius:10px;padding:14px}.local-audit-list article p{margin:8px 0}.local-audit-list small{color:var(--muted)}@media (width<=760px){.notification-panel{height:100dvh;max-height:100dvh}:root{font-size:16px}.topbar{gap:8px;padding-inline:12px}.topbar__actions{gap:7px}.mobile-brand{gap:7px;min-width:0}.mobile-brand strong{font-size:12px}.mobile-brand small{font-size:11px}.mobile-brand .brand__mark{width:30px;height:34px}.icon-button,.profile-trigger{width:40px;height:40px;min-height:40px}.mobile-nav{left:6px;right:6px;bottom:max(6px, env(safe-area-inset-bottom));padding:4px}.mobile-nav span{white-space:normal;text-align:center;max-width:100%;font-size:11px;line-height:1.25;overflow:visible}.mobile-nav button{min-width:0;min-height:56px}.main-content{padding-inline:12px}.workspace{padding-bottom:calc(88px + env(safe-area-inset-bottom))}.button,.dj-button{min-height:44px;font-size:14px}.dj-toolbar :is(input,select),.accounts-toolbar select,.field :is(input,select,textarea){font-size:16px}.status-badge,.dj-status{white-space:normal;font-size:12px}.dj-modal-backdrop,.dialog-backdrop{padding:10px}.dj-modal,.dialog{width:100%;max-height:calc(100dvh - 20px)}.dj-modal>header,.dialog__header{min-height:60px;padding:12px}.dj-modal>footer,.dialog__footer{padding:10px 12px max(10px, env(safe-area-inset-bottom));gap:8px}.dj-modal-body,.dialog__body{padding:12px}.dj-modal-close{flex-shrink:0;width:40px;height:40px}.dj-schedule-card{grid-template-columns:50px minmax(0,1fr);gap:8px}.dj-schedule-card__meta{flex-wrap:wrap;grid-column:2;justify-items:start;gap:5px 12px;min-width:0;display:flex}.dj-schedule-card__time{grid-row:span 2;padding-right:8px}.dj-schedule-card__body small{-webkit-line-clamp:3}.dj-panel-head{gap:10px}.dj-panel-head p,.metric-card__copy>span,.family-child-switcher>header small,.family-child-switcher__options small,.section-header p,.notification-item__meta{font-size:12px}.family-child-switcher__options b{font-size:14px}.dj-journal-table thead span{font-size:12px}.dj-submission-row{flex-wrap:wrap}.dj-submission-row small,.dj-submission-block>p,.dj-file-drop small{font-size:13px}.notification-panel__footer{flex-wrap:wrap}.notification-item__body{font-size:14px}}@media (width<=680px){.family-diary-main>.family-diary-table-wrap{display:none}.family-diary-mobile{gap:10px;padding:10px;display:grid}.account-detail-dialog .dialog__footer{grid-template-columns:1fr 1fr;display:grid}.account-detail-dialog .dialog-footer-spacer{display:none}.account-detail-dialog .dialog__footer .button{width:100%;min-width:0;padding-inline:10px}.account-detail-dialog .dialog__footer .button--primary{grid-column:1/-1}.dj-editor-grades,.dj-grade-editor .dj-editor-row{grid-template-columns:minmax(0,1fr)}.dj-attendance-options{grid-template-columns:1fr 1fr}.dj-field--compact select{min-width:0}.dj-homework-card.is-family{margin-inline:8px}}@media (width<=360px){.mobile-brand .brand__mark{display:none}.topbar__actions{gap:6px}.theme-menu{min-width:0;position:fixed;top:66px;left:10px;right:10px}.login-theme .theme-menu{top:70px}.dj-page-head h2{font-size:27px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:0s!important;animation-duration:.01ms!important}}@media print{.family-diary-mobile,.week-shortcuts,.day-add{display:none!important}.family-diary-main>.family-diary-table-wrap,.dj-day__lessons.is-collapsed{display:block}.dj-day{break-inside:avoid}}.family-event-preview strong{font-size:14px}.family-event-preview small{overflow-wrap:anywhere;font-size:13px;line-height:1.5}.today-lesson__time small,.today-lesson__subject small,.today-lesson__room{font-size:12px}.account-role-notice{border:1px solid var(--line);background:var(--surface-subtle);border-radius:12px;padding:14px}.account-role-notice strong{font-size:14px}.account-role-notice p{color:var(--muted);margin:6px 0 0;font-size:13px;line-height:1.5}.account-secondary-actions{border-top:1px solid var(--line);padding-top:8px}.account-secondary-actions summary{cursor:pointer;min-height:44px;color:var(--ink);padding:10px 0;font-size:14px;font-weight:600}.account-secondary-actions>div{flex-wrap:wrap;gap:10px;padding-block:8px;display:flex}.account-detail-dialog .dialog__footer{flex-wrap:nowrap;gap:8px;display:flex}.account-detail-dialog .dialog__footer .button{flex:auto;width:auto;min-width:0;padding-inline:10px}.dj-grade-batch>footer{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:8px;display:grid}.dj-grade-batch>footer .dj-batch-total{grid-column:1/-1;margin:0;font-size:12px}.dj-grade-batch>footer .dj-button{white-space:normal;width:100%;min-width:0;padding-inline:8px;font-size:14px}.dj-bell-periods>div{grid-template-columns:28px minmax(0,1fr) 15px minmax(0,1fr) 44px}.dj-bell-periods input{min-width:0}.dj-bell-periods>div>button{width:44px;height:44px;color:var(--danger);background:var(--danger-soft);font-size:22px}.dj-bell-periods>header button{min-height:44px;font-size:14px}.report-result-tools{flex-wrap:wrap;align-items:end;gap:12px;margin:16px 0;display:flex}.report-result-tools .field{flex:240px}.report-result-tools p{color:var(--muted);margin:0;font-size:13px}.module-report-screen-only .module-report-scroll{max-height:65vh}.module-report-screen-only .module-report-scroll table{border-collapse:separate;border-spacing:0}.module-report-screen-only .module-report-scroll thead th{z-index:2;background:var(--surface-subtle);position:sticky;top:0}.module-report-screen-only .module-report-scroll th:first-child,.module-report-screen-only .module-report-scroll td:first-child{z-index:1;background:var(--paper);overflow-wrap:anywhere;max-width:220px;position:sticky;left:0}.module-report-screen-only .module-report-scroll thead th:first-child{z-index:3;background:var(--surface-subtle)}.module-full-print-table{display:none}@media (width<=420px){.dj-bell-periods>div{grid-template-columns:minmax(0,1fr) 16px minmax(0,1fr);gap:6px;padding:8px}.dj-bell-periods>div>span{grid-area:1/1}.dj-bell-periods>div>button{grid-area:1/3;justify-self:end}.dj-bell-periods>div>input:first-of-type{grid-area:2/1}.dj-bell-periods>div>b{grid-area:2/2}.dj-bell-periods>div>input:last-of-type{grid-area:2/3}.dj-bell-periods input{min-height:44px;padding-inline:6px}}@media (width<=700px){.accounts-page .account-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.accounts-page .account-summary .card{min-width:0;min-height:74px;padding:10px}.accounts-page .account-summary__icon{display:none}.accounts-page .account-summary strong{font-size:20px}.accounts-page .account-summary small{font-size:12px}.account-detail-dialog>header h2{overflow-wrap:anywhere;font-size:18px;line-height:1.35}}@media print{.module-report-screen-only{display:none!important}.module-full-print-table{display:block}}
