/*! 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)))){*,:before,:after{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--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}::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--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}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::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]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance: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{.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.isolate{isolation:isolate}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.italic{font-style:italic}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);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,)}.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))}}:root{--navy:#0f233a;--navy-2:#173653;--red:#a42a38;--red-dark:#81212c;--ink:#172332;--muted:#687482;--line:#dce1e5;--soft-line:#e9ecef;--paper:#fffdfa;--canvas:#f3f1ec;--blue:#2a69b8;--green:#23765d;--amber:#a36514;--shadow:0 18px 45px #0f233a14;--school-font:"DengXian", "等线", Arial, sans-serif;--font-body:14px;--font-label:12px;--font-compact:11px}*{box-sizing:border-box}html{background:var(--canvas);color:var(--ink);scroll-behavior:smooth}body{background:var(--canvas);min-width:320px;font-family:var(--school-font);font-size:var(--font-body);margin:0;line-height:1.45}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:inherit;text-decoration:none}:is(button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible){outline-offset:2px;outline:3px solid #2a69b847}.app-shell{min-height:100vh}.sidebar{z-index:30;color:#fff;background:var(--navy);border-right:1px solid #ffffff14;flex-direction:column;width:248px;padding:26px 18px 20px;display:flex;position:fixed;inset:0 auto 0 0}.brand-lockup{background:#fff;border-radius:10px;place-items:center;margin:0 0 24px;padding:12px 10px;display:grid;position:relative;box-shadow:0 10px 24px #00000029}.full-brand-logo{object-fit:contain;width:100%;height:auto;display:block}.brand-lockup .sidebar-close{color:#fff;background:var(--red);border-radius:50%;width:28px;height:28px;margin:0;position:absolute;top:-15px;right:-8px}.sidebar nav{gap:6px;display:grid}.sidebar nav a{color:#ffffffab;border-radius:9px;align-items:center;gap:12px;padding:12px 13px;font-size:14px;font-weight:700;transition:all .16s;display:flex}.sidebar nav a:hover{color:#fff;background:#ffffff12}.sidebar nav a.active{color:var(--navy);background:#fff;box-shadow:0 10px 24px #00000024}.sidebar nav a.active svg{color:var(--red)}.sidebar-spacer{flex:1}.teacher-card{border-top:1px solid #ffffff1f;align-items:center;gap:10px;padding:13px 8px;display:flex}.teacher-avatar{background:var(--red);width:35px;height:35px;font-size:var(--font-label);border-radius:50%;place-items:center;font-weight:800;display:grid}.teacher-card strong{font-size:12px;display:block}.teacher-card span{font-size:var(--font-label);color:#ffffff8c;margin-top:2px;display:block}.beta-label{color:#ffffff6e;font-size:var(--font-label);text-transform:uppercase;letter-spacing:.12em;align-items:center;gap:7px;padding:10px 8px 0;display:flex}.beta-label span{background:#69ce9f;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #69ce9f1f}.sidebar-close,.mobile-menu,.sidebar-scrim{display:none}.app-main{min-height:100vh;margin-left:248px}.page{width:min(1500px,100%);margin:0 auto;padding:38px 44px 64px}.eyebrow{font-size:var(--font-label);text-transform:uppercase;letter-spacing:.16em;color:var(--red);font-weight:800;line-height:1.3;display:block}.page-topbar{justify-content:space-between;align-items:flex-start;gap:28px;min-height:92px;margin-bottom:26px;display:flex}.page-topbar h1{font-family:var(--school-font);letter-spacing:-.03em;color:var(--navy);margin:7px 0;font-size:clamp(31px,3vw,45px);font-weight:500;line-height:1.05}.page-topbar p{color:var(--muted);max-width:700px;margin:0;font-size:14px;line-height:1.55}.preview-date{border:1px solid var(--line);background:#ffffffa3;border-radius:10px;grid-template-columns:24px 1fr;align-items:center;min-width:164px;padding:12px 15px;display:grid;box-shadow:0 5px 20px #0f233a0a}.preview-date svg{color:var(--red);grid-row:span 2}.preview-date span{color:var(--muted);font-size:var(--font-label);text-transform:uppercase;letter-spacing:.11em}.preview-date strong{color:var(--navy);margin-top:2px;font-size:13px}.date-navigator{border:1px solid var(--line);background:#ffffffc7;border-radius:10px;grid-template-columns:34px minmax(150px,1fr) 34px;align-items:stretch;min-width:252px;min-height:48px;display:grid;overflow:hidden;box-shadow:0 5px 20px #0f233a0a}.date-navigator>button{color:var(--navy);cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.date-navigator>button:first-child{border-right:1px solid var(--soft-line)}.date-navigator>button:last-child{border-left:1px solid var(--soft-line)}.date-navigator>button:hover{color:var(--red);background:#f8f6f2}.date-navigator label{align-content:center;gap:1px;min-width:0;padding:7px 10px 5px;display:grid}.date-navigator label span{color:var(--muted);font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.1em;font-weight:800}.date-navigator input{width:100%;min-width:0;color:var(--navy);font-size:var(--font-label);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:0 0;border:0;outline:0;padding:0;font-weight:800}.day-navigator{grid-template-columns:34px minmax(150px,1fr) 34px 58px;min-width:310px}.day-navigator>.day-next-button{border-left:1px solid var(--soft-line)}.day-navigator>.today-jump-button{color:var(--red);font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.06em;font-weight:800}.day-navigator>.today-jump-button:disabled{color:#9aa2a9;cursor:default;background:#f5f4f1}.card{background:var(--paper);border:1px solid var(--line);border-radius:14px;box-shadow:0 10px 34px #0f233a0e}.card-heading{justify-content:space-between;align-items:center;gap:20px;padding:24px 26px 18px;display:flex}.card-heading h2{color:var(--navy);font-family:var(--school-font);margin:4px 0 0;font-size:24px;font-weight:500}.card-heading a{color:var(--red);align-items:center;gap:7px;font-size:12px;font-weight:700;display:inline-flex}.card-heading.compact{padding:21px 21px 12px}.card-heading.compact h2{font-size:20px}.button{cursor:pointer;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:39px;padding:0 15px;font-size:12px;font-weight:800;transition:all .15s;display:inline-flex}.button:disabled{opacity:.55;cursor:wait}.button.primary{color:#fff;background:var(--red);border-color:var(--red);box-shadow:0 8px 18px #a42a382e}.button.primary:hover:not(:disabled){background:var(--red-dark);transform:translateY(-1px)}.button.secondary{color:var(--navy);border-color:var(--line);background:#fff}.button.secondary:hover:not(:disabled){background:#fafafa;border-color:#adb7bf}.dashboard-hero{color:#fff;background:linear-gradient(115deg, var(--navy) 0%, #173754 68%, #234864 100%);border-radius:15px;min-height:185px;margin-bottom:24px;padding:28px 30px;position:relative;overflow:hidden;box-shadow:0 18px 38px #0f233a2e}.dashboard-hero:after{content:"";border:48px solid #ffffff0b;border-radius:50%;width:340px;height:340px;position:absolute;top:-105px;right:-70px}.hero-kicker{font-size:var(--font-label);letter-spacing:.13em;text-transform:uppercase;color:#e7c7ca;align-items:center;gap:7px;font-weight:800;display:inline-flex}.dashboard-hero h2{max-width:590px;font-family:var(--school-font);letter-spacing:-.02em;margin:9px 0 7px;font-size:clamp(25px,3vw,36px);font-weight:500}.dashboard-hero p{color:#fff9;margin:0;font-size:12px}.hero-stats{z-index:1;display:flex;position:absolute;top:48px;right:185px}.hero-stats>div{text-align:center;border-left:1px solid #ffffff26;min-width:90px;padding:8px 20px}.hero-stats strong{font:500 29px var(--school-font);display:block}.hero-stats span{color:#ffffff8a;font-size:var(--font-label);text-transform:uppercase;letter-spacing:.12em;margin-top:3px;display:block}.hero-action{z-index:1;color:var(--navy);font-size:var(--font-label);background:#fff;border-radius:7px;align-items:center;gap:8px;padding:11px 14px;font-weight:800;display:inline-flex;position:absolute;bottom:28px;right:30px}.dashboard-columns{grid-template-columns:minmax(0,1.55fr) minmax(310px,.7fr);align-items:start;gap:22px;margin-bottom:22px;display:grid}.side-stack{gap:22px;display:grid}.today-list{padding:0 20px 20px}.today-list article{--unit-color:var(--red);border-top:1px solid var(--soft-line);grid-template-columns:68px minmax(0,1fr) auto;align-items:center;min-height:92px;display:grid;position:relative}.today-list article:before{content:"";background:var(--unit-color);border-radius:3px;width:3px;height:54px;position:absolute;left:0}.period-tile{padding-left:14px}.period-tile strong{color:var(--navy);font-size:13px;display:block}.period-tile span{color:var(--muted);font-size:var(--font-label);margin-top:4px;display:block}.today-main{justify-content:space-between;align-items:center;gap:16px;padding-right:20px;display:flex}.lesson-grade{color:var(--unit-color);font-size:var(--font-label);text-transform:uppercase;letter-spacing:.12em;font-weight:800;display:block}.today-main h3{font:500 19px var(--school-font);color:var(--navy);margin:4px 0 0}.unit-selection-link{color:#286a78;text-underline-offset:3px;align-items:center;gap:5px;-webkit-text-decoration:underline #286a7852;text-decoration:underline #286a7852;display:inline-flex}.unit-selection-link:hover{color:var(--red);text-decoration-color:currentColor}.today-meta{flex-direction:column;gap:5px;display:flex}.today-meta span{color:var(--muted);font-size:var(--font-label);align-items:center;gap:5px;display:flex}.today-status{flex-direction:column;align-items:flex-end;gap:9px;min-width:155px;display:flex}.today-status a{color:var(--red);font-size:var(--font-label);align-items:center;gap:5px;font-weight:800;display:inline-flex}.status-badge{width:max-content;font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:5px 8px;font-weight:800;display:inline-flex}.status-badge.status-not-planned{color:#67717b;background:#f1f2f3}.status-badge.status-draft{color:#8e5b18;background:#f7ebd9}.status-badge.status-completed{color:#216e57;background:#e4f1ec}.status-badge.status-completed-plus-pdf-generated{color:#2b5686;background:#e4ebf4}.loading-line{color:var(--muted);font-size:var(--font-label);padding:0 20px 18px}.staff-message-region{gap:8px;margin-bottom:14px;display:grid}.staff-message-placeholder{border:1px solid var(--line);min-height:38px;color:var(--muted);font-size:var(--font-compact);background:#ffffff8c;border-radius:8px;align-items:center;gap:8px;padding:8px 13px;display:flex}.staff-message-placeholder svg{color:#8d979e}.staff-message-banner{--message-color:#315f80;--message-bg:#edf4f8;border:1px solid var(--message-color);grid-template-columns:40px minmax(0,1fr) auto;align-items:start;gap:13px;min-height:84px;padding:15px 18px;display:grid}@supports (color:color-mix(in lab, red, red)){.staff-message-banner{border:1px solid color-mix(in srgb, var(--message-color) 24%, white)}}.staff-message-banner{border-left:5px solid var(--message-color);background:var(--message-bg);border-radius:10px;box-shadow:0 7px 20px #0f233a0a}.staff-message-banner.reminder{--message-color:#96691d;--message-bg:#fff8e9}.staff-message-banner.urgent{--message-color:var(--red);--message-bg:#fff2f3}.staff-message-banner-icon{color:#fff;background:var(--message-color);border-radius:9px;place-items:center;width:38px;height:38px;display:grid}.staff-message-banner span{color:var(--message-color);font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.08em;font-weight:800}.staff-message-banner h2{color:var(--navy);margin:3px 0 4px;font-size:15px;font-weight:700}.staff-message-banner p{color:#53616d;font-size:var(--font-label);white-space:pre-wrap;margin:0;line-height:1.55}.staff-message-banner-content{min-width:0}.staff-message-document-button{border:1px solid var(--message-color);grid-template-rows:auto auto;grid-template-columns:25px 1fr;align-items:center;column-gap:7px;min-width:88px;min-height:58px;padding:7px 10px;display:grid}@supports (color:color-mix(in lab, red, red)){.staff-message-document-button{border:1px solid color-mix(in srgb, var(--message-color) 30%, white)}}.staff-message-document-button{color:var(--message-color);cursor:pointer;background:#ffffffc7;border-radius:9px;transition:transform .15s,box-shadow .15s,background .15s;box-shadow:0 3px 10px #0f233a0f}.staff-message-document-button:hover{background:#fff;transform:translateY(-1px);box-shadow:0 6px 16px #0f233a1a}.staff-message-document-button svg{grid-row:1/3}.staff-message-document-button strong{color:var(--message-color);letter-spacing:.08em;align-self:end;font-size:11px;line-height:1}.staff-message-document-button small{color:#68737b;white-space:nowrap;align-self:start;font-size:9px;font-weight:700}body.notice-document-open{overflow:hidden}.staff-notice-modal-backdrop{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0c1d2ea6;place-items:center;padding:34px;display:grid;position:fixed;inset:0}.staff-notice-modal{color:#1f2f3e;background:#fff;border:1px solid #ffffffbf;border-radius:12px;width:min(760px,100%);max-height:calc(100vh - 68px);padding:42px 54px 56px;position:relative;overflow-y:auto;box-shadow:0 30px 80px #06162652}.staff-notice-modal-close{color:#56636e;cursor:pointer;background:#fff;border:1px solid #d9e0e5;border-radius:50%;place-items:center;width:36px;height:36px;display:grid;position:absolute;top:15px;right:15px}.staff-notice-document-header{justify-content:space-between;align-items:center;gap:26px;min-height:74px;display:flex}.staff-notice-document-header img{object-fit:contain;object-position:left center;width:min(330px,62%);height:auto}.staff-notice-document-header div{color:var(--navy);justify-items:end;gap:4px;display:grid}.staff-notice-document-header span{letter-spacing:.15em;font-size:10px;font-weight:800}.staff-notice-document-header strong{color:var(--red);letter-spacing:.1em;font-size:13px}.staff-notice-document-meta{margin-top:34px}.staff-notice-document-meta>span{color:var(--red);text-transform:uppercase;letter-spacing:.12em;font-size:10px;font-weight:800}.staff-notice-document-meta h2{color:var(--navy);margin:7px 0 0;font-size:25px;line-height:1.25}.staff-notice-document-rule{background:var(--red);border-radius:99px;width:56px;height:4px;margin:18px 0 28px}.staff-notice-document-body{color:#2f3d49;white-space:pre-wrap;overflow-wrap:anywhere;tab-size:4;font-size:14px;line-height:1.72}.todo-due-soon-banner{border:1px solid var(--red);grid-template-columns:38px minmax(0,1fr) auto;align-items:start;gap:13px;margin-bottom:14px;padding:15px 18px;display:grid}@supports (color:color-mix(in lab, red, red)){.todo-due-soon-banner{border:1px solid color-mix(in srgb, var(--red) 24%, white)}}.todo-due-soon-banner{border-left:5px solid var(--red);background:#fff2f3;border-radius:10px;text-decoration:none;transition:all .15s;box-shadow:0 7px 20px #0f233a0a}.todo-due-soon-banner:hover{background:var(--red)}@supports (color:color-mix(in lab, red, red)){.todo-due-soon-banner:hover{background:color-mix(in srgb, var(--red) 8%, #fff2f3)}}.todo-due-soon-banner>svg{color:var(--red);margin-top:2px}.todo-due-soon-banner>svg:last-child{justify-self:end;margin-top:4px}.todo-due-soon-banner>div>span{color:var(--red);font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px;font-weight:800;display:block}.todo-due-soon-banner ul{gap:5px;margin:0;padding:0;list-style:none;display:grid}.todo-due-soon-banner li{align-items:baseline;gap:8px;display:flex}.todo-due-soon-banner strong{color:var(--navy);font-size:var(--font-label);font-weight:700}.todo-due-soon-banner small{color:#53616d;font-size:var(--font-compact);white-space:nowrap}.outcome-coverage-card{margin-bottom:22px;overflow:hidden}.gradebook-topbar{align-items:flex-start}.gradebook-topbar .topbar-actions{flex-wrap:wrap;gap:8px;display:flex}.notice{color:#315d39;font-size:var(--font-label);background:#edf7ef;border:1px solid #c7d9cb;border-radius:8px;margin:0 0 16px;padding:10px 14px}.gradebook-setup,.roster-editor,.gradebook-controls,.weekly-gradebook{margin-bottom:20px;overflow:hidden}.gradebook-setup{padding-bottom:20px}.scheme-total{text-align:right}.scheme-total strong,.scheme-total span{display:block}.scheme-total strong{color:var(--red);font-size:28px}.scheme-total.ready strong{color:var(--green)}.scheme-total span{color:var(--muted);font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.08em}.grading-component-list{border-top:1px solid var(--soft-line);margin:0 20px 14px}.grading-component{border-bottom:1px solid var(--soft-line)}.grading-component summary{cursor:pointer;grid-template-columns:78px 1fr auto 18px;align-items:center;gap:10px;min-height:50px;list-style:none;display:grid}.grading-component summary::-webkit-details-marker{display:none}.grading-component summary>span:last-of-type{color:var(--muted);font-size:var(--font-label)}.component-drag{color:var(--muted);font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.07em;font-weight:800}.grading-component.summative .component-drag{color:var(--red)}.grading-component-edit{padding:0 0 16px}.grading-component-fields{grid-template-columns:1fr 100px 160px;gap:12px;display:grid}.grading-component-fields label,.roster-form label,.gradebook-controls label{color:var(--muted);font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.06em;gap:5px;display:grid}.grading-component-fields input,.roster-form input,.roster-form select,.gradebook-controls input,.gradebook-controls select,.semester-row input{border:1px solid var(--line);width:100%;min-height:34px;color:var(--navy);font:inherit;font-size:var(--font-label);text-transform:none;letter-spacing:0;background:#fff;border-radius:6px;padding:7px 9px}.component-enabled{align-items:center;gap:7px;padding-top:19px;display:flex!important}.component-enabled input{width:auto;min-height:auto}.descriptor-editor{background:#f7f6f3;border-radius:7px;margin-top:13px;padding:12px}.descriptor-editor>span{color:var(--muted);font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px;font-weight:800;display:block}.descriptor-editor label{grid-template-columns:22px 1fr;align-items:center;gap:8px;margin-top:5px;display:grid}.descriptor-editor b{color:var(--green);font-size:var(--font-label);text-align:center}.descriptor-editor input{border:1px solid var(--line);min-height:30px;font:inherit;font-size:var(--font-label);border-radius:5px;padding:6px 8px}.gradebook-setup>.button{margin:0 0 0 20px}.gradebook-setup>.button+.button{margin-left:8px}.semester-editor{border-top:1px solid var(--soft-line);margin:22px 20px 0;padding-top:16px}.semester-editor h3{margin:3px 0 12px;font-size:15px}.semester-row{grid-template-columns:1fr 150px 150px auto;gap:8px;margin-top:8px;display:grid}.roster-form{grid-template-columns:1fr 1fr 1fr 100px 120px auto;align-items:end;gap:10px;padding:0 20px 20px;display:grid}.gradebook-controls{justify-content:space-between;align-items:center;gap:20px;min-height:82px;padding:16px 20px;display:flex}.gradebook-controls>div:first-child{align-items:end;gap:10px;display:flex}.gradebook-controls label{min-width:145px}.semester-status{gap:4px;padding-bottom:2px;display:grid}.semester-status span{color:var(--muted);font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.06em;font-weight:800}.semester-status strong{font-size:var(--font-label)}.qwen-status{color:#7c6a30;align-items:center;gap:9px;display:flex}.qwen-status>svg{color:#a48a36}.qwen-status strong,.qwen-status span{display:block}.qwen-status strong{font-size:var(--font-label)}.qwen-status span{color:var(--muted);font-size:var(--font-label);margin-top:2px}.qwen-status i{background:#c5a24d;border-radius:50%;width:9px;height:9px}.weekly-gradebook .card-heading{padding-bottom:14px}.gradebook-table-wrap{border-top:1px solid var(--soft-line);overflow:auto}.gradebook-table-wrap table{border-collapse:collapse;width:100%;min-width:1080px}.gradebook-table-wrap th{color:var(--muted);font-size:var(--font-compact);text-align:left;text-transform:uppercase;letter-spacing:.06em;background:#f7f6f3;padding:12px 10px}.gradebook-table-wrap th small{color:var(--red);font-size:var(--font-compact);margin-top:3px;display:block}.gradebook-table-wrap td{vertical-align:top;border-top:1px solid var(--soft-line);padding:10px}.gradebook-table-wrap td>strong,.gradebook-table-wrap td>span{display:block}.gradebook-table-wrap td>strong{color:var(--navy);font-size:var(--font-label)}.gradebook-table-wrap td>span{color:var(--muted);font-size:var(--font-compact);margin-top:3px}.gradebook-table-wrap select{border:1px solid var(--line);width:190px;min-height:34px;color:var(--navy);font:inherit;font-size:var(--font-label);background:#fff;border-radius:5px;padding:6px}.gradebook-table-wrap textarea{border:1px solid var(--line);width:220px;color:var(--navy);font:inherit;font-size:var(--font-label);resize:vertical;border-radius:5px;padding:7px}.gradebook-table-wrap td>b{color:var(--green);font-size:14px}.summative-pending{white-space:nowrap;color:var(--muted)!important}.clean-comment{color:#9a8a55;font:inherit;font-size:var(--font-compact);cursor:not-allowed;background:0 0;border:0;align-items:center;gap:4px;margin-top:5px;display:inline-flex}.clean-comment:not(:disabled){color:var(--red);cursor:pointer}.gradebook-empty{text-align:center;min-height:230px;color:var(--muted);place-content:center;justify-items:center;gap:8px;padding:35px;display:grid}.gradebook-empty svg{color:var(--green)}.gradebook-empty strong{color:var(--navy);font-size:13px}.gradebook-empty span{max-width:410px;font-size:var(--font-label);line-height:1.5}.roster-list{border-top:1px solid var(--soft-line);margin:0 20px 20px}.roster-list>div:first-child{padding:12px 0 8px}.roster-list>div:first-child strong,.roster-list>div:first-child span{display:block}.roster-list>div:first-child strong{color:var(--navy);font-size:var(--font-label)}.roster-list>div:first-child span{color:var(--muted);font-size:var(--font-compact);margin-top:3px}.roster-list-row{border-top:1px solid var(--soft-line);justify-content:space-between;align-items:center;gap:12px;min-height:48px;display:flex}.roster-list-row>span strong,.roster-list-row>span small{display:block}.roster-list-row>span strong{color:var(--navy);font-size:var(--font-label)}.roster-list-row>span small{color:var(--muted);font-size:var(--font-compact);margin-top:2px}.roster-list-row>div{gap:5px;display:flex}.icon-button{border:1px solid var(--line);width:28px;height:28px;color:var(--navy);cursor:pointer;background:#fff;border-radius:6px;place-items:center;display:grid}.icon-button.danger{color:var(--red)}.icon-button:disabled{opacity:.5;cursor:not-allowed}.roster-heading-actions{gap:8px;display:flex}.intschool-import-review{background:#f5f9f7;border:1px solid #cbd9d2;border-radius:9px;margin:0 20px 18px;padding:14px}.intschool-import-summary{grid-template-columns:repeat(5,1fr);gap:7px;display:grid}.intschool-import-summary>div{background:#fff;border-radius:7px;padding:9px}.intschool-import-summary span,.intschool-import-summary strong{display:block}.intschool-import-summary span{color:var(--muted);font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.06em;font-weight:800}.intschool-import-summary strong{color:var(--navy);margin-top:3px;font-size:17px}.intschool-import-grades{flex-wrap:wrap;gap:6px;margin-top:9px;display:flex}.intschool-import-grades span{color:var(--muted);font-size:var(--font-compact);background:#e8efeb;border-radius:5px;padding:5px 7px}.intschool-import-grades b{color:var(--navy);margin-left:3px}.intschool-import-actions{justify-content:flex-end;gap:7px;margin-top:12px;display:flex}.intschool-connector-status{border:1px solid var(--line);background:#fff;border-radius:7px;align-items:center;gap:8px;min-width:112px;padding:5px 9px;display:flex}.intschool-connector-status>i{background:#aa3b43;border-radius:50%;flex:none;width:8px;height:8px;box-shadow:0 0 0 3px #aa3b431a}.intschool-connector-status.connected>i{background:#3d7f55;box-shadow:0 0 0 3px #3d7f551f}.intschool-connector-status strong,.intschool-connector-status small{line-height:1.15;display:block}.intschool-connector-status strong{color:var(--navy);font-size:var(--font-label)}.intschool-connector-status small{color:var(--muted);font-size:var(--font-compact);margin-top:2px}.grading-reminder{color:#79571a;background:#fff8e9;border:1px solid #e6c891;border-radius:7px;grid-template-columns:18px 1fr 16px;align-items:center;gap:9px;margin-top:12px;padding:11px;text-decoration:none;display:grid}.grading-reminder strong,.grading-reminder small{display:block}.grading-reminder strong{font-size:var(--font-label)}.grading-reminder small{color:#8a7446;font-size:var(--font-compact);margin-top:3px}.outcome-coverage-heading{align-items:flex-end}.outcome-coverage-heading p{color:var(--muted);font-size:var(--font-label);margin:5px 0 0}.outcome-coverage-total{text-align:right;min-width:110px}.outcome-coverage-total strong,.outcome-coverage-total span{display:block}.outcome-coverage-total strong{color:var(--red);font-size:34px;font-weight:500;line-height:1}.outcome-coverage-total span{color:var(--muted);font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.08em;margin-top:4px}.outcome-coverage-loading{min-height:150px;color:var(--muted);font-size:var(--font-label);place-items:center;display:grid}.outcome-coverage-summary{border-top:1px solid var(--soft-line);border-bottom:1px solid var(--soft-line);background:#f7f6f3;grid-template-columns:auto minmax(120px,1fr) 38px;align-items:center;gap:15px;min-height:55px;padding:12px 25px;display:grid}.outcome-coverage-summary>div:first-child{color:var(--green);align-items:center;gap:8px;display:flex}.outcome-coverage-summary span{color:var(--muted);font-size:var(--font-label)}.outcome-coverage-summary span strong{color:var(--navy)}.outcome-coverage-summary>b{color:var(--green);font-size:var(--font-label);text-align:right}.outcome-coverage-progress,.outcome-unit-progress{background:#e2e7e5;border-radius:99px;overflow:hidden}.outcome-coverage-progress{height:7px}.outcome-coverage-progress i,.outcome-unit-progress i{border-radius:inherit;background:var(--green);height:100%;transition:width .2s;display:block}.outcome-coverage-units{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:10px;padding:18px 24px 8px;display:grid}.outcome-coverage-units article{border:1px solid var(--line);border-top:4px solid var(--unit-color);background:#fff;border-radius:9px;align-self:start;overflow:hidden}.outcome-coverage-units article>header{grid-template-columns:35px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:62px;padding:11px 13px;display:grid}.outcome-coverage-grade{color:#fff;background:var(--unit-color);width:34px;height:31px;font-size:var(--font-label);border-radius:6px;place-items:center;font-weight:800;display:grid}.outcome-coverage-units header>div:nth-child(2){min-width:0}.outcome-coverage-units header>div:nth-child(2) strong,.outcome-coverage-units header>div:nth-child(2) small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.outcome-coverage-units header>div:nth-child(2) strong{color:var(--navy);font-size:var(--font-label)}.outcome-coverage-units header>div:nth-child(2) small{color:var(--muted);font-size:var(--font-compact);margin-top:3px}.outcome-coverage-count{text-align:right;min-width:46px}.outcome-coverage-count strong,.outcome-coverage-count span{display:block}.outcome-coverage-count strong{color:var(--red);font-size:19px;line-height:1}.outcome-coverage-count span{color:var(--muted);font-size:var(--font-compact);margin-top:2px}.outcome-coverage-count.complete strong{color:var(--green)}.outcome-unit-progress{height:4px;margin:0 13px 10px}.outcome-unit-progress i{background:var(--unit-color)}.outcome-coverage-units details{border-top:1px solid var(--soft-line)}.outcome-coverage-units summary{min-height:39px;color:var(--navy);font-size:var(--font-compact);cursor:pointer;background:#faf9f6;justify-content:space-between;align-items:center;gap:10px;padding:9px 13px;font-weight:800;list-style:none;display:flex}.outcome-coverage-units summary::-webkit-details-marker{display:none}.outcome-coverage-units summary svg{color:var(--muted);transition:transform .15s}.outcome-coverage-units details[open] summary svg{transform:rotate(180deg)}.outcome-coverage-units ul{margin:0;padding:4px 13px 10px 29px}.outcome-coverage-units li{color:#50606d;font-size:var(--font-compact);padding:6px 0;line-height:1.45}.outcome-coverage-units li::marker{color:var(--unit-color)}.outcome-unit-complete{border-top:1px solid var(--soft-line);min-height:39px;color:var(--green);font-size:var(--font-compact);background:#f1f7f4;align-items:center;gap:7px;padding:9px 13px;font-weight:800;display:flex}.outcome-coverage-empty{min-height:120px;color:var(--muted);text-align:center;grid-column:1/-1;align-content:center;place-items:center;gap:5px;display:grid}.outcome-coverage-empty svg{color:var(--red)}.outcome-coverage-empty strong{color:var(--navy);font-size:var(--font-label)}.outcome-coverage-empty span{font-size:var(--font-compact)}.outcome-coverage-warning{color:#825d1c;font-size:var(--font-compact);background:#faf0dc;border-radius:7px;align-items:center;gap:7px;margin:4px 24px 0;padding:9px 11px;display:flex}.outcome-coverage-warning svg{flex:none}.outcome-coverage-rule{color:#8a9298;font-size:var(--font-compact);margin:0;padding:12px 24px 17px;line-height:1.5}.icon-buttons{gap:4px;display:flex}.icon-buttons button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:7px;place-items:center;width:30px;height:30px;display:grid}.month-controls{align-items:center}.month-controls label{height:30px}.month-controls input{border:1px solid var(--line);width:118px;height:30px;color:var(--navy);font-size:var(--font-label);background:#fff;border-radius:7px;padding:4px 7px;font-weight:800}.month-grid{grid-template-columns:repeat(7,1fr);padding:0 18px;display:grid}.weekday-row span{text-align:center;color:#929ba3;font-size:var(--font-compact);text-transform:uppercase;padding:7px 0;font-weight:800}.days-grid button,.days-grid>span{aspect-ratio:1;color:#475463;min-height:28px;font-size:var(--font-label);cursor:default;background:0 0;border:0;border-radius:50%;place-items:center;display:grid;position:relative}.days-grid button:disabled{opacity:1}.days-grid button.today{color:#fff;background:var(--red);font-weight:800}.days-grid button.has-event{cursor:pointer}.days-grid button.has-event:not(.today){color:var(--navy);background:#edf3f7;font-weight:800}.days-grid button.selected{box-shadow:0 0 0 2px var(--navy)}.day-event-markers{display:flex;position:absolute;bottom:-2px;left:50%;transform:translate(-50%)}.day-event-markers i,.calendar-event-item-dot,.selected-calendar-events>div>i,.upcoming-events article>i{background:var(--blue);border:1px solid #fff;border-radius:50%;flex:none;width:6px;height:6px;box-shadow:0 1px 3px #0f233a38}.day-event-markers i+i{margin-left:-2px}.day-event-markers i.holiday,.selected-calendar-events i.holiday,.upcoming-events i.holiday{background:#d29030}.day-event-markers i.exams,.selected-calendar-events i.exams,.upcoming-events i.exams{background:var(--red)}.days-grid button.today .day-event-markers i{border-color:var(--red)}.calendar-legend{border-bottom:1px solid var(--soft-line);flex-wrap:wrap;gap:12px;margin:9px 20px 13px;padding-bottom:12px;display:flex}.calendar-legend span{color:var(--muted);font-size:var(--font-label);align-items:center;gap:5px;display:flex}.calendar-legend i{background:var(--blue);border-radius:50%;width:6px;height:6px}.calendar-legend i.holiday-dot{background:#d29030}.calendar-legend i.exam-dot{background:var(--red)}.selected-calendar-events{background:#f3f7fa;border:1px solid #cad8e3;border-radius:9px;margin:0 18px 15px;padding:11px 12px}.selected-calendar-events header{border-bottom:1px solid #d9e2e9;justify-content:space-between;align-items:center;gap:10px;padding-bottom:8px;display:flex}.selected-calendar-events header span,.selected-calendar-events header strong{display:block}.selected-calendar-events header span{color:var(--blue);font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.08em;font-weight:800}.selected-calendar-events header strong{color:var(--navy);font-size:var(--font-label);margin-top:2px}.selected-calendar-events header small{color:var(--muted);font-size:var(--font-compact)}.selected-calendar-events>div{grid-template-columns:8px minmax(0,1fr);align-items:start;gap:7px;padding-top:8px;display:grid}.selected-calendar-events>div>i{margin-top:3px}.selected-calendar-events>div strong,.selected-calendar-events>div small{display:block}.selected-calendar-events>div strong{color:var(--navy);font-size:var(--font-label);line-height:1.35}.selected-calendar-events>div small{color:var(--muted);font-size:var(--font-compact);margin-top:2px}.month-events-heading{justify-content:space-between;align-items:flex-end;gap:10px;padding:0 20px 10px;display:flex}.month-events-heading strong{color:var(--navy);font-size:var(--font-label);margin-top:2px;display:block}.month-events-heading>small{max-width:125px;color:var(--muted);font-size:var(--font-compact);text-align:right;line-height:1.35}.upcoming-events{max-height:285px;padding:0 20px 18px;display:grid;overflow-y:auto}.upcoming-events article{border-top:1px solid var(--soft-line);grid-template-columns:8px minmax(0,1fr);align-items:start;gap:8px;padding:9px 0;display:grid}.upcoming-events article>i{margin-top:4px}.upcoming-events time,.upcoming-events strong,.upcoming-events span{display:block}.upcoming-events time{color:var(--red);font-size:var(--font-compact);font-weight:800}.upcoming-events strong{color:var(--navy);font-size:var(--font-label);margin-top:3px;line-height:1.4}.upcoming-events span{color:var(--muted);font-size:var(--font-compact);margin-top:2px}.upcoming-events p{color:var(--muted);font-size:var(--font-compact);margin:4px 0 0;line-height:1.4}.calendar-empty{border-top:1px solid var(--soft-line);color:var(--muted);font-size:var(--font-label);margin:0;padding:16px 0 4px;line-height:1.45}.calendar-card-wide{margin-top:22px;overflow:hidden}.calendar-card-wide .calendar-layout{border-top:1px solid var(--soft-line);grid-template-columns:minmax(440px,1.25fr) minmax(320px,.75fr);display:grid}.calendar-card-wide .calendar-month-panel{padding:8px 16px 12px}.calendar-card-wide .calendar-events-panel{border-left:1px solid var(--soft-line);background:#faf9f6;padding:19px 8px 10px}.calendar-card-wide .month-grid{padding-left:12px;padding-right:12px}.calendar-card-wide .days-grid{row-gap:5px}.calendar-card-wide .days-grid button,.calendar-card-wide .days-grid>span{aspect-ratio:1;width:40px;min-height:40px;font-size:var(--font-label);justify-self:center}.calendar-card-wide .upcoming-events{max-height:390px;padding-bottom:8px}.calendar-card-wide .selected-calendar-events{margin-bottom:0}.card-intro{color:var(--muted);font-size:var(--font-label);margin:0;padding:0 21px 13px;line-height:1.5}.week-progress{width:39px;height:39px;color:var(--red);font-size:var(--font-label);background:#f4e4e6;border-radius:50%;place-items:center;font-weight:800;display:grid}.reflection-list{padding:0 12px 13px}.reflection-list>button{border:0;border-top:1px solid var(--soft-line);text-align:left;cursor:pointer;background:0 0;grid-template-columns:27px 1fr 18px;align-items:center;width:100%;min-height:49px;padding:8px;display:grid}.reflection-list>button>span:nth-child(2){min-width:0}.reflection-list strong,.reflection-list small{display:block}.reflection-list strong{font-size:var(--font-label);color:var(--navy)}.reflection-list small{font-size:var(--font-label);color:var(--muted);margin-top:2px}.reflection-icon{border-radius:50%;place-items:center;width:20px;height:20px;display:grid}.reflection-icon.required{color:#9c6b20;background:#f8ebd7}.reflection-icon.complete{color:#22735a;background:#e1f0e9}.reflection-list>button>svg{color:#9da5ac}.reflection-modal{z-index:80;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.modal-scrim{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0916249e;border:0;position:absolute;inset:0}.reflection-sheet{z-index:1;background:var(--paper);border-radius:15px;width:min(560px,100%);padding:30px;position:relative;box-shadow:0 30px 90px #0000004d}.reflection-sheet h2{color:var(--navy);font:500 28px var(--school-font);margin:5px 0 22px}.reflection-sheet label{color:var(--navy);font-size:var(--font-label);gap:7px;margin-top:14px;font-weight:800;display:grid}.reflection-sheet textarea{resize:vertical;border:1px solid var(--line);min-height:88px;color:var(--ink);background:#fff;border-radius:8px;padding:11px;font-size:12px;font-weight:400;line-height:1.5}.modal-close{cursor:pointer;background:0 0;border:0;position:absolute;top:15px;right:15px}.modal-actions{justify-content:flex-end;gap:8px;margin-top:20px;display:flex}.timetable-card{margin-top:22px}.timetable-heading{padding-bottom:20px}.timetable-week-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.week-chip{border:1px solid var(--line);color:var(--navy);font-size:var(--font-label);background:#fff;border-radius:999px;padding:8px 12px;font-weight:800}.week-chip span{color:var(--red);margin:0 5px}.timetable-scroll{padding:0 20px 22px;overflow-x:auto}.timetable-grid{border:1px solid var(--line);border-bottom:0;border-right:0;min-width:920px}.timetable-header,.timetable-body{grid-template-columns:74px repeat(5,minmax(0,1fr));display:grid}.timetable-body{grid-template-rows:repeat(13,62px)}.timetable-period-row{display:contents}.time-head,.day-head,.time-cell,.slot{border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:62px}.time-head,.day-head{background:#f6f5f2;justify-content:center;align-items:center;min-height:53px;display:flex}.time-head{color:var(--muted);font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.12em}.day-head{gap:7px}.day-head strong{color:var(--navy);font-size:12px}.day-head span{color:var(--muted);font-size:var(--font-label)}.day-head.non-teaching-day,.admin-day-head.non-teaching-day{background:#eeeae2}.day-head.non-teaching-day strong,.admin-day-head.non-teaching-day strong{color:var(--red)}.day-head.non-teaching-day span,.admin-day-head.non-teaching-day span{color:#8d7375;font-weight:800}.time-cell{background:#faf9f6;flex-direction:column;justify-content:center;align-items:center;display:flex}.time-cell strong{color:var(--navy);font-size:var(--font-label)}.time-cell span{color:var(--muted);font-size:var(--font-compact);margin-top:3px}.slot{padding:8px}.empty-slot{background:#fff}.commitment-slot{background:#eef0f1;flex-direction:column;justify-content:center;display:flex}.commitment-slot strong{color:var(--navy);font-size:var(--font-label)}.commitment-slot span{color:var(--muted);font-size:var(--font-compact);margin-top:3px}.slot.holiday-slot,.admin-timetable-slot.holiday-slot{background:repeating-linear-gradient(135deg,#f5f2ec,#f5f2ec 9px,#eeeae2 9px 10px)}.lesson-slot{border-left:3px solid var(--unit-color);background:var(--unit-color);flex-direction:column;justify-content:center;display:flex}@supports (color:color-mix(in lab, red, red)){.lesson-slot{background:color-mix(in srgb, var(--unit-color) 7%, white)}}.lesson-slot{transition:all .15s}.lesson-slot:hover{background:var(--unit-color)}@supports (color:color-mix(in lab, red, red)){.lesson-slot:hover{background:color-mix(in srgb, var(--unit-color) 12%, white)}}.lesson-slot.swimming-slot{cursor:default}.lesson-slot.swimming-slot:hover{background:var(--unit-color)}@supports (color:color-mix(in lab, red, red)){.lesson-slot.swimming-slot:hover{background:color-mix(in srgb, var(--unit-color) 7%, white)}}.lesson-slot.unit-unselected-slot{background:#edf6f6;border-left-color:#286a78}.lesson-slot.unit-unselected-slot .lesson-slot-top span{color:#286a78;text-underline-offset:2px;text-decoration:underline}.lesson-slot-top{justify-content:space-between;gap:5px;display:flex}.lesson-slot-top strong{color:var(--navy);font-size:var(--font-label)}.lesson-slot-top span{color:var(--unit-color);font-size:var(--font-compact);font-weight:800}.lesson-meta{gap:8px;margin:5px 0;display:flex}.lesson-meta span{color:var(--muted);font-size:var(--font-compact);align-items:center;gap:3px;display:flex}.lesson-slot .status-badge{font-size:var(--font-compact);padding:3px 5px}.timetable-status-row{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.timetable-pdf-badge{color:#216e57;width:fit-content;font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.05em;background:#e4f1ec;border-radius:4px;align-items:center;gap:3px;padding:3px 5px;font-weight:800;display:inline-flex}.evidence-note{color:#2c5374;background:#eff5f8;border:1px solid #cedbe5;border-radius:10px;align-items:flex-start;gap:12px;margin-top:22px;padding:17px 20px;display:flex}.evidence-note strong,.evidence-note span{display:block}.evidence-note strong{font-size:var(--font-label)}.evidence-note span{font-size:var(--font-label);color:#5e7587;margin-top:4px;line-height:1.45}.plans-overview{border:1px solid var(--line);background:var(--paper);border-radius:12px;grid-template-columns:repeat(3,1fr);margin-bottom:20px;display:grid}.plans-overview>div{border-right:1px solid var(--line);align-items:center;gap:12px;padding:18px 22px;display:flex}.plans-overview>div:last-child{border:0}.plans-overview svg{color:var(--red);width:19px}.plans-overview span{font-size:var(--font-label);color:var(--muted)}.plans-overview strong{font:500 21px var(--school-font);color:var(--navy);margin-right:4px}.filter-tabs{gap:5px;margin:5px 0 20px;display:flex}.filter-tabs button{border:1px solid var(--line);color:var(--muted);font-size:var(--font-label);cursor:pointer;background:0 0;border-radius:999px;padding:8px 13px;font-weight:800}.filter-tabs button.active{border-color:var(--navy);color:#fff;background:var(--navy)}.plan-day{grid-template-columns:130px 1fr;gap:24px;margin-bottom:28px;display:grid}.plan-day-heading{grid-template-columns:35px 1fr;align-content:start;padding-top:8px;display:grid}.plan-day-heading>span{color:#fff;background:var(--red);width:29px;height:29px;font-size:var(--font-compact);border-radius:6px;grid-row:span 2;place-items:center;font-weight:800;display:grid}.plan-day-heading h2{font:500 18px var(--school-font);color:var(--navy);margin:0}.plan-day-heading p{color:var(--muted);font-size:var(--font-compact);margin:3px 0 0}.plan-day-heading small{color:var(--muted);font-size:var(--font-label);grid-column:1/-1;margin-top:12px}.plan-grid{gap:8px;display:grid}.plan-grid article{background:var(--paper);border:1px solid var(--line);border-radius:10px;grid-template-columns:4px 70px minmax(0,1fr) 150px;align-items:center;min-height:92px;display:grid;overflow:hidden;box-shadow:0 6px 18px #0f233a09}.plan-color{background:var(--unit-color);align-self:stretch}.plan-time{text-align:center}.plan-time strong{color:var(--navy);font-size:12px;display:block}.plan-time span{color:var(--muted);font-size:var(--font-compact);margin-top:4px;display:block}.plan-info{border-left:1px solid var(--soft-line);padding:12px 18px}.plan-info>span{color:var(--unit-color);font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.12em;font-weight:800}.plan-info h3{font:500 18px var(--school-font);color:var(--navy);margin:3px 0 1px}.plan-info p{color:var(--muted);font-size:var(--font-label);margin:0}.plan-info small{color:#7a848d;font-size:var(--font-compact);align-items:center;gap:4px;margin-top:7px;display:flex}.plan-cta{flex-direction:column;align-items:flex-end;gap:8px;padding-right:18px;display:flex}.plan-cta a{color:var(--red);font-size:var(--font-label);align-items:center;gap:5px;font-weight:800;display:flex}.empty-state{text-align:center;padding:60px 20px}.empty-state svg{color:var(--green)}.empty-state h2{font:500 25px var(--school-font);color:var(--navy);margin:10px 0 6px}.empty-state p{color:var(--muted);font-size:var(--font-label)}.source-footnote{color:#8a9299;font-size:var(--font-label);margin:28px 0 0 154px;line-height:1.5}.class-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.class-grid article{background:var(--paper);border:1px solid var(--line);border-top:4px solid var(--unit-color);border-radius:12px;padding:23px;box-shadow:0 10px 28px #0f233a0b}.class-card-top{justify-content:space-between;align-items:center;display:flex}.class-card-top span{color:#fff;background:var(--unit-color);width:38px;height:28px;font-size:var(--font-label);border-radius:6px;place-items:center;font-weight:800;display:grid}.class-card-top small{color:var(--muted);font-size:var(--font-label)}.class-grid h2{color:var(--navy);font:500 26px var(--school-font);margin:15px 0 2px}.class-grid .class-activity{color:var(--unit-color);font-size:var(--font-label);text-transform:uppercase;letter-spacing:.1em;font-weight:800}.class-grid article>p:not(.class-activity){color:var(--muted);font-size:var(--font-label);margin:8px 0 16px}.class-facts{gap:7px;margin-bottom:16px;display:grid}.class-facts span{color:#586675;font-size:var(--font-label);align-items:center;gap:7px;display:flex}.class-facts svg{color:var(--unit-color)}.assessment-box{background:var(--unit-color);border-radius:8px;align-items:flex-start;gap:10px;min-height:79px;padding:12px;display:flex}@supports (color:color-mix(in lab, red, red)){.assessment-box{background:color-mix(in srgb, var(--unit-color) 7%, white)}}.assessment-box{color:var(--unit-color)}.assessment-box strong,.assessment-box span{display:block}.assessment-box strong{font-size:var(--font-label);text-transform:uppercase;letter-spacing:.09em}.assessment-box span{color:#566371;font-size:var(--font-label);margin-top:5px;line-height:1.45}.class-grid article>a{color:var(--red);font-size:var(--font-label);justify-content:flex-end;align-items:center;gap:6px;margin-top:17px;font-weight:800;display:flex}.curriculum-overview{background:var(--navy);color:#fff;border-radius:12px;grid-template-columns:repeat(3,1fr);margin-bottom:24px;display:grid}.curriculum-pathway-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 16px;display:grid}.curriculum-pathway-tabs button{color:#53686f;text-align:left;cursor:pointer;background:#fff;border:1px solid #cfd9dc;border-radius:10px;gap:4px;padding:14px 17px;display:grid}.curriculum-pathway-tabs button span{color:var(--navy);font:500 17px var(--school-font)}.curriculum-pathway-tabs button small{font-size:var(--font-label)}.curriculum-pathway-tabs button.active{background:#e9f3f4;border-color:#286a78;box-shadow:inset 0 3px #286a78}.curriculum-pathway-tabs button:first-child.active{border-color:var(--navy);box-shadow:inset 0 3px 0 var(--navy);background:#eef1f3}.curriculum-overview>div{border-right:1px solid #ffffff1f;grid-template-columns:28px auto 1fr;align-items:center;padding:20px 24px;display:grid}.curriculum-overview>div:last-child{border:0}.curriculum-overview svg{color:#e4a9b0}.curriculum-overview strong{font:500 25px var(--school-font);margin-right:8px}.curriculum-overview span{color:#fff9;font-size:var(--font-label)}.curriculum-framework-summary{grid-template-columns:repeat(4,1fr)}.curriculum-grade-map{margin-bottom:28px;padding:24px}.igcse-pathway-intro{border-left:5px solid #286a78;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:28px;margin-bottom:28px;padding:24px;display:grid}.igcse-pathway-intro h2{color:var(--navy);font:500 25px var(--school-font);margin:4px 0 6px}.igcse-pathway-intro p{max-width:720px;color:var(--muted);font-size:var(--font-label);margin:0;line-height:1.55}.igcse-pathway-intro>div:last-child{background:#e9f3f4;border-radius:9px;gap:3px;min-width:225px;padding:14px 16px;display:grid}.igcse-pathway-intro>div:last-child span,.igcse-pathway-intro>div:last-child small{color:#5e7379;font-size:var(--font-label)}.igcse-pathway-intro>div:last-child strong{color:#215b66;font-size:15px}.igcse-unit-library .curriculum-heading small{letter-spacing:.04em;text-transform:none}.curriculum-grade-tabs button small{font-size:var(--font-compact);letter-spacing:.06em;text-transform:uppercase;margin-top:1px;display:block}.curriculum-window-intro{background:#f7fafb;border:1px solid #dce5e9;border-radius:10px;justify-content:space-between;align-items:center;gap:16px;margin-top:14px;padding:15px 17px;display:flex}.curriculum-window-intro strong{color:#173f49}.curriculum-window-intro p{color:#60747b;margin:4px 0 0;font-size:12px}.curriculum-window-intro>span{color:#2f806c;font-size:var(--font-label);text-align:right;font-weight:800}.curriculum-window-intro-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:14px;display:flex}.curriculum-window-intro-actions>span{color:#2f806c;font-size:var(--font-label);text-align:right;font-weight:800}.curriculum-window-intro-actions-standalone{justify-content:flex-start;margin-bottom:14px}.curriculum-save-notice{color:#276955;background:#eaf5f1;border-radius:8px;margin-top:10px;padding:10px 13px;font-size:12px;font-weight:700}.curriculum-window-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.curriculum-window-grid>article{background:#fff;border:1px solid #dce5e9;border-radius:10px;padding:14px}.curriculum-window-grid>article.planned{border-color:#9ccbbc;box-shadow:inset 0 3px #2f806c}.curriculum-window-grid>article.curriculum-window-focused{border-color:#286a78;box-shadow:0 0 0 3px #286a7821,inset 0 3px #286a78}.curriculum-window-grid article header{color:#2f806c;justify-content:space-between;align-items:flex-start;display:flex}.curriculum-window-grid article header small{color:#75868c;font-size:var(--font-label);text-transform:uppercase;letter-spacing:.08em;font-weight:800}.curriculum-window-grid article h3{color:#173f49;margin:3px 0 0;font-size:16px}.curriculum-window-grid article>p{color:#687b81;font-size:var(--font-label);align-items:center;gap:6px;margin:8px 0 12px;display:flex}.curriculum-window-controls{gap:8px;display:grid}.curriculum-window-controls label{color:#53686f;font-size:var(--font-label);gap:4px;font-weight:800;display:grid}.curriculum-window-controls select{color:#243f47;width:100%;min-width:0;font:inherit;font-size:var(--font-label);background:#fff;border:1px solid #cad7db;border-radius:7px;padding:8px 7px}.curriculum-window-controls>div{justify-content:flex-end;align-items:center;gap:6px;margin-top:2px;display:flex}.curriculum-window-controls button{color:#fff;font:inherit;font-size:var(--font-label);cursor:pointer;background:#2f806c;border:0;border-radius:7px;align-items:center;gap:4px;padding:7px 9px;font-weight:800;display:inline-flex}.curriculum-window-controls button.curriculum-delete-units{color:#a42b3a;background:#fff;border:1px solid #d8a9ae}.curriculum-window-controls button:disabled{cursor:not-allowed;opacity:.5}.curriculum-window-readonly{background:#f5f8f9;border-radius:8px;gap:5px;padding:11px;display:grid}.curriculum-window-readonly strong{color:#294b54;font-size:12px}.curriculum-window-readonly span{color:#6a7d83;font-size:var(--font-label)}@media (max-width:980px){.curriculum-window-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.curriculum-window-intro{flex-direction:column;align-items:flex-start}.curriculum-window-intro>span{text-align:left}.curriculum-window-intro-actions{justify-content:flex-start}.curriculum-window-intro-actions>span{text-align:left}.curriculum-window-grid{grid-template-columns:1fr}}.scope-sequence-panel{padding-bottom:22px;overflow-x:auto}.scope-sequence-panel>.curriculum-save-notice{margin-left:26px;margin-right:26px}.scope-sequence-export{background:var(--navy);color:#fff;font:inherit;font-size:var(--font-label);cursor:pointer;white-space:nowrap;border:0;border-radius:9px;align-items:center;gap:6px;padding:9px 13px;font-weight:800;display:inline-flex}.scope-sequence-export:disabled{opacity:.6;cursor:default}.scope-sequence-header{border-bottom:1px solid var(--soft-line);min-width:928px;margin:0 26px 8px;padding-bottom:8px;display:grid}.scope-sequence-header-cell{padding:0 8px}.scope-sequence-header-cell strong{color:var(--navy);font-size:var(--font-label);display:block}.scope-sequence-header-cell span{color:#8792a3;font-size:var(--font-compact);margin-top:2px;display:block}.scope-sequence-group{margin-top:20px;padding:0 26px}.scope-sequence-group h3{color:#75868c;font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.1em;margin:0 0 10px;font-weight:900}.scope-sequence-group h3 span{color:#a5aeb8;text-transform:none;letter-spacing:normal;font-weight:700}.scope-sequence-row{align-items:stretch;gap:0;min-width:928px;padding:6px 0;display:grid}.scope-sequence-row:not(:last-child){border-bottom:1px solid #f1f3f5}.scope-sequence-row-label{color:var(--navy);font-size:var(--font-label);align-items:center;gap:6px;padding:0 12px 0 4px;font-weight:800;display:flex}.scope-sequence-row-label small{color:#286a78;text-transform:uppercase;background:#e9f3f4;border-radius:999px;padding:1px 6px;font-size:9px;font-weight:900}.scope-sequence-cell-wrap{padding:0 4px;position:relative}.scope-sequence-cell{border:1px solid var(--soft-line);color:#7c8a92;width:100%;min-height:52px;font:inherit;text-align:left;cursor:pointer;background:#fafbfc;border-radius:8px;padding:9px 10px;font-size:11px;font-weight:700;line-height:1.35;transition:transform .1s,box-shadow .1s}.scope-sequence-cell:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 3px 10px #0f233a1f}.scope-sequence-cell:disabled{cursor:default}.scope-sequence-cell.planned{background:var(--unit-color);border-color:#0000}@supports (color:color-mix(in lab, red, red)){.scope-sequence-cell.planned{background:color-mix(in srgb, var(--unit-color) 85%, black 3%)}}.scope-sequence-cell.planned{color:#fff}.scope-sequence-cell.open{box-shadow:0 0 0 2px var(--navy)}.scope-sequence-popover{z-index:20;border:1px solid var(--line);background:#fff;border-radius:10px;gap:8px;width:240px;padding:12px;display:grid;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 14px 34px #0f233a29}.scope-sequence-popover header{gap:2px;margin-bottom:2px;display:grid}.scope-sequence-popover header strong{color:var(--navy);font-size:var(--font-label)}.scope-sequence-popover header span{color:#8792a3;font-size:var(--font-compact)}.scope-sequence-popover label{color:#53686f;font-size:var(--font-compact);gap:4px;font-weight:800;display:grid}.scope-sequence-popover select{color:#243f47;width:100%;font:inherit;font-size:var(--font-label);background:#fff;border:1px solid #cad7db;border-radius:7px;padding:7px}.scope-sequence-popover-actions{justify-content:flex-end;align-items:center;gap:6px;margin-top:2px;display:flex}.scope-sequence-popover-actions button{color:#53686f;font:inherit;font-size:var(--font-compact);cursor:pointer;background:#fff;border:1px solid #cad7db;border-radius:7px;padding:7px 10px;font-weight:800}.scope-sequence-popover-actions button.primary{color:#fff;background:#2f806c;border-color:#2f806c}.scope-sequence-popover-actions button:disabled{cursor:not-allowed;opacity:.5}.scope-sequence-rotation-row{grid-template-columns:160px 1fr}.scope-sequence-rotation-halves{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0 4px;display:grid}.scope-sequence-rotation-half{background:#eef1f3;border-radius:8px;align-content:center;gap:3px;min-height:52px;padding:9px 12px;display:grid}.scope-sequence-rotation-half strong{color:var(--navy);font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.06em}.scope-sequence-rotation-half span{color:#53686f;font-size:var(--font-label);font-weight:700}.scope-sequence-rotation-note{color:#8792a3;font-size:var(--font-compact);margin:10px 0 0}.curriculum-grade-tabs{grid-template-columns:repeat(12,minmax(42px,1fr));gap:6px;margin:18px 0 14px;display:grid}.curriculum-grade-tabs button{border:1px solid var(--line);height:38px;color:var(--navy);font-size:var(--font-label);cursor:pointer;background:#fff;border-radius:7px;font-weight:800}.curriculum-grade-tabs button.active{color:#fff;border-color:var(--navy);background:var(--navy)}.curriculum-map-grid{grid-template-columns:1fr;gap:26px;margin-top:24px;display:grid}.curriculum-map-blocks>h3,.curriculum-coverage-panel>h3{color:var(--navy);font-size:var(--font-label);margin:0 0 10px}.curriculum-map-blocks>h3 span{width:20px;height:20px;color:var(--red);font-size:var(--font-compact);background:#f8eaeb;border-radius:50%;place-items:center;margin-left:4px;display:inline-grid}.curriculum-map-blocks article{border-top:1px solid var(--soft-line);grid-template-columns:38px minmax(0,1fr);gap:13px;padding:14px 0;display:grid}.curriculum-map-number{color:#fff;background:var(--red);width:34px;height:34px;font-size:var(--font-label);border-radius:8px;place-items:center;font-weight:800;display:grid}.curriculum-map-blocks article small{color:var(--muted);font-size:var(--font-compact);align-items:center;gap:5px;display:flex}.curriculum-map-blocks article h4{color:var(--navy);margin:4px 0;font-size:12px}.curriculum-map-blocks article p{color:#596672;font-size:var(--font-label);margin:0;line-height:1.45}.curriculum-map-blocks article>div:last-child>span{color:var(--green);font-size:var(--font-compact);margin-top:7px;font-weight:800;display:inline-block}.curriculum-empty-map{min-height:180px;color:var(--muted);text-align:center;border:1px dashed #bdc5cb;border-radius:9px;align-content:center;place-items:center;gap:7px;padding:20px;display:grid}.curriculum-empty-map strong{color:var(--navy);font-size:var(--font-label)}.curriculum-empty-map p{max-width:330px;font-size:var(--font-label);margin:0;line-height:1.45}.igpe-legend{flex-wrap:wrap;align-items:center;gap:10px;margin:14px 0 10px;display:flex}.igpe-legend-chip{color:#47585d;font-size:var(--font-label);align-items:center;gap:6px;font-weight:700;display:inline-flex}.igpe-legend-chip i{border-radius:3px;width:10px;height:10px;display:inline-block}.igpe-legend-holiday{background:#fff0dc;border:1px solid #d9a959}.igpe-legend-exam{background:#fff0f2;border:1px solid #c04a5a}.igpe-legend-hint{color:#2f806c;font-size:var(--font-label);font-weight:700}.igpe-inline-form-area{margin:14px 0}.igpe-add-trigger{color:#2f806c;font:inherit;font-size:var(--font-label);cursor:pointer;background:#fff;border:1px dashed #9db2b9;border-radius:8px;align-items:center;gap:6px;padding:8px 12px;font-weight:800;display:inline-flex}.igpe-inline-form{background:#f7fafb;border:1px solid #dce5e9;border-radius:10px;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:14px;display:grid}.igpe-inline-form label{color:#53686f;font-size:var(--font-label);gap:4px;font-weight:800;display:grid}.igpe-inline-form input[type=text],.igpe-inline-form input[type=date]{color:#243f47;font:inherit;font-size:var(--font-label);background:#fff;border:1px solid #cad7db;border-radius:7px;padding:8px 9px}.igpe-inline-form>div{grid-column:1/-1;justify-content:flex-end;gap:6px;display:flex}.igpe-inline-form>div button{color:#fff;font:inherit;font-size:var(--font-label);cursor:pointer;background:#2f806c;border:0;border-radius:7px;align-items:center;gap:4px;padding:7px 12px;font-weight:800;display:inline-flex}.igpe-inline-form>div button:first-child{color:#53686f;background:#fff;border:1px solid #cad7db}.igpe-inline-form>div button:disabled{cursor:not-allowed;opacity:.6}.igpe-custom-unit-form{grid-template-columns:repeat(2,minmax(0,1fr))}.igpe-outcome-picker{background:#fff;border:1px solid #dce5e9;border-radius:8px;grid-column:1/-1;margin:0;padding:10px 12px}.igpe-outcome-picker legend{color:#53686f;font-size:var(--font-label);padding:0 4px;font-weight:800}.igpe-outcome-checklist{gap:10px;max-height:260px;display:grid;overflow-y:auto}.igpe-outcome-checklist>div strong{color:#173f49;margin-bottom:4px;font-size:12px;display:block}.igpe-outcome-checklist label{color:#47585d;font-size:var(--font-label);align-items:flex-start;gap:6px;padding:2px 0;font-weight:400;display:flex}.igpe-outcome-section{grid-column:1/-1;margin-top:6px}.igpe-outcome-toggle{color:#294b54;font-size:var(--font-compact);cursor:pointer;background:#f7fafb;border:1px solid #dce5e9;border-radius:7px;padding:6px 10px;font-weight:700}.igpe-outcome-picker p{color:#53686f;font-size:var(--font-compact);margin:0 0 8px}.igpe-outcome-row{border-bottom:1px solid #eef2f3;justify-content:space-between;align-items:flex-start;gap:12px;padding:4px 0;display:flex}.igpe-outcome-row label{flex:1}.igpe-outcome-assessed{white-space:nowrap;color:var(--red)!important;flex:none!important;font-weight:700!important}.curriculum-coverage-panel{background:var(--navy);color:#fff;border-radius:10px;padding:18px}.curriculum-coverage-panel>h3{color:#fff}.curriculum-coverage-panel>p{color:#ffffff94;font-size:var(--font-compact);margin:-4px 0 15px}.strand-coverage-row{margin-top:12px}.strand-coverage-row>div:first-child{grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:7px;display:grid}.strand-coverage-row span{width:18px;height:18px;color:var(--navy);font-size:var(--font-compact);background:#fff;border-radius:50%;place-items:center;font-weight:800;display:grid}.strand-coverage-row strong{color:#ffffffd6;font-size:var(--font-compact);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.strand-coverage-row em{color:#e4a9b0;font-size:var(--font-compact);font-style:normal}.strand-coverage-row>div:last-child{background:#ffffff1f;border-radius:4px;height:4px;margin:6px 0 0 25px;position:relative;overflow:hidden}.strand-coverage-row i{border-radius:inherit;background:var(--red);height:100%;display:block}.strand-coverage-row b{border-radius:inherit;background:#78c8d4;height:2px;display:block;position:absolute;bottom:0;left:0}.curriculum-recommendation{color:var(--navy);background:#f3f0ea;border-radius:8px;gap:9px;margin-top:18px;padding:12px;display:flex}.curriculum-recommendation svg{width:16px;color:var(--red);flex:none}.curriculum-recommendation strong{font-size:var(--font-label)}.curriculum-recommendation p{color:#596672;font-size:var(--font-compact);margin:4px 0 0;line-height:1.4}.curriculum-library-section>.card-heading{margin-bottom:14px}.curriculum-list{gap:9px;display:grid}.curriculum-list>section{background:var(--paper);border:1px solid var(--line);border-left:4px solid var(--unit-color);border-radius:10px;overflow:hidden}.curriculum-heading{text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:48px minmax(0,1fr) 80px 20px;align-items:center;gap:15px;width:100%;padding:18px 20px;display:grid}.curriculum-grade{color:#fff;background:var(--unit-color);width:40px;height:35px;font-size:var(--font-label);border-radius:6px;place-items:center;font-weight:800;display:grid}.curriculum-heading small{color:var(--unit-color);font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.1em;font-weight:800}.curriculum-heading h2{color:var(--navy);font:500 18px var(--school-font);margin:3px 0 1px}.curriculum-heading p{color:var(--muted);font-size:var(--font-label);margin:0}.curriculum-count{text-align:right}.curriculum-count strong,.curriculum-count span{display:block}.curriculum-count strong{color:var(--navy);font:500 20px var(--school-font)}.curriculum-count span{color:var(--muted);font-size:var(--font-compact)}.curriculum-heading>svg{color:var(--muted);transition:transform .2s}.curriculum-heading>svg.open{transform:rotate(180deg)}.curriculum-body{border-top:1px solid var(--soft-line);padding:3px 24px 24px 83px}.curriculum-unit-description,.curriculum-unit-evidence{border:1px solid var(--unit-color);align-items:flex-start;gap:10px;margin-top:18px;padding:14px 15px;display:flex}@supports (color:color-mix(in lab, red, red)){.curriculum-unit-description,.curriculum-unit-evidence{border:1px solid color-mix(in srgb, var(--unit-color) 24%, white)}}.curriculum-unit-description,.curriculum-unit-evidence{background:var(--unit-color);border-radius:9px}@supports (color:color-mix(in lab, red, red)){.curriculum-unit-description,.curriculum-unit-evidence{background:color-mix(in srgb, var(--unit-color) 6%, white)}}.curriculum-unit-description,.curriculum-unit-evidence{color:var(--unit-color)}.curriculum-unit-description{color:var(--navy);background:#f6f8f9;border-color:#d9e1e5}.curriculum-unit-description+.curriculum-unit-evidence{margin-top:10px}.curriculum-unit-description svg,.curriculum-unit-evidence svg{flex:none;margin-top:2px}.curriculum-unit-description strong,.curriculum-unit-evidence strong{color:var(--navy);font-size:var(--font-label)}.curriculum-unit-description p,.curriculum-unit-evidence p{color:#52636c;font-size:var(--font-label);margin:4px 0 0;line-height:1.55}.curriculum-assessment{color:var(--unit-color);background:#f4f1eb;border-radius:8px;gap:10px;margin:18px 0;padding:15px;display:flex}.curriculum-assessment strong{color:var(--navy);font-size:var(--font-label)}.curriculum-assessment p{color:var(--muted);font-size:var(--font-label);margin:4px 0 0;line-height:1.45}.curriculum-outcome-group{margin-top:18px}.curriculum-outcome-group h3{color:var(--navy);font-size:var(--font-label);text-transform:uppercase;letter-spacing:.1em}.curriculum-outcome-group h3 span{width:19px;height:19px;color:var(--unit-color);background:var(--unit-color);border-radius:50%;place-items:center;display:inline-grid}@supports (color:color-mix(in lab, red, red)){.curriculum-outcome-group h3 span{background:color-mix(in srgb, var(--unit-color) 10%, white)}}.curriculum-outcome-group h3 span{font-size:var(--font-compact);margin-left:4px}.curriculum-foundational-outcomes{background:#f2f8f5;border:1px solid #b8d8ce;border-radius:11px;padding:16px}.curriculum-foundational-outcomes>header{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.curriculum-foundational-outcomes>header h3{margin:4px 0 0}.curriculum-foundational-outcomes>header p{color:#577068;max-width:560px;font-size:var(--font-label);margin:0;line-height:1.5}.curriculum-foundational-parent-groups{gap:12px;display:grid}.curriculum-foundational-parent-groups>article{border-top:1px solid #d8e8e2;padding-top:10px}.curriculum-foundational-parent-groups>article:first-child{border-top:0;padding-top:0}.curriculum-foundational-parent-groups>article>strong{color:#2b5f54;font-size:var(--font-compact);margin-bottom:5px;line-height:1.45;display:block}.curriculum-foundational-parent-groups li small{color:#2f7566;text-transform:uppercase;letter-spacing:.04em;font-weight:800}.curriculum-strand-groups{gap:18px;margin-top:12px;display:grid}.curriculum-strand-group{border:1px solid var(--soft-line);background:var(--unit-color);border-radius:10px;padding:15px 17px}@supports (color:color-mix(in lab, red, red)){.curriculum-strand-group{background:color-mix(in srgb, var(--unit-color) 3%, white)}}.curriculum-strand-group h4{color:var(--navy);font-size:var(--font-label);align-items:baseline;gap:9px;margin:0 0 10px;display:flex}.curriculum-strand-group h4 span{color:var(--unit-color);font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.06em}.curriculum-strand-group ul{margin:0;padding:0;list-style:none}.curriculum-strand-group li{border-top:1px solid var(--soft-line);color:var(--unit-color);grid-template-columns:10px minmax(0,1fr);gap:10px;padding:9px 0;display:grid}.curriculum-strand-group li:before{content:"•";color:var(--unit-color);font-weight:900}.curriculum-strand-group p{color:#465563;font-size:var(--font-label);margin:0;line-height:1.5}.curriculum-strand-group li small{color:#718087;font-size:var(--font-compact);margin-top:4px;display:block}.curriculum-generic-reference{color:#8a97a0;font-size:var(--font-compact);margin-top:3px;line-height:1.4;display:block}.curriculum-generic-reference strong{color:#60757d}.curriculum-specific-objectives{gap:2px;margin:10px 0 0;padding:0;list-style:none;display:grid}.curriculum-specific-objectives li{border-top:1px solid var(--soft-line);color:#344854;font-size:var(--font-label);grid-template-columns:10px minmax(0,1fr);gap:10px;padding:7px 0;line-height:1.5;display:grid}.curriculum-specific-objectives li:before{content:"•";color:var(--unit-color);font-weight:900}.curriculum-vocabulary-list{color:#465563;font-size:var(--font-label);margin:10px 0 0;line-height:1.6}.source-panel{color:var(--amber);background:#f8f4eb;border:1px solid #d6d1c7;border-radius:10px;align-items:flex-start;gap:14px;margin-top:24px;padding:18px 20px;display:flex}.source-panel strong{color:var(--navy);font-size:var(--font-label)}.source-panel p{color:var(--muted);font-size:var(--font-label);margin:4px 0 0;line-height:1.5}.source-panel a{color:#286a78;font-size:var(--font-label);margin-top:7px;font-weight:800;display:inline-block}.planner-page{max-width:1570px;padding-bottom:100px}.planner-header{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:22px;display:flex}.planner-title-row{align-items:center;gap:13px;display:flex}.grade-chip{color:#fff;border-radius:8px;flex:none;place-items:center;width:47px;height:43px;font-size:12px;font-weight:800;display:grid}.planner-header h1{color:var(--navy);font:500 clamp(28px, 3vw, 39px)/1 var(--school-font);letter-spacing:-.02em;margin:3px 0 0}.planner-meta{align-items:center;gap:16px;margin:11px 0 0 60px;display:flex}.planner-meta>span:not(.status-badge){color:var(--muted);font-size:var(--font-label);align-items:center;gap:5px;display:flex}.planner-meta svg{color:var(--red)}.planner-header-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.notice{min-height:45px;font-size:var(--font-label);border-radius:8px;justify-content:space-between;align-items:center;margin:0 0 18px;padding:10px 13px;font-weight:700;display:flex}.notice>span{align-items:center;gap:7px;display:flex}.notice button{cursor:pointer;background:0 0;border:0}.notice.success{color:#1d694f;background:#e5f2ec;border:1px solid #c8e2d7}.notice.error{color:#8e2834;background:#f7e8e9;border:1px solid #ebc8cd}.planner-layout{grid-template-columns:minmax(0,1fr) 265px;align-items:start;gap:22px;display:grid}.planner-main{gap:15px;min-width:0;display:grid}.planner-section{background:var(--paper);border:1px solid var(--line);border-radius:12px;min-width:0;padding:28px 30px 30px 67px;position:relative;box-shadow:0 8px 25px #0f233a09}.section-number{background:var(--navy);color:#fff;width:29px;height:25px;font-size:var(--font-compact);letter-spacing:.07em;border-radius:5px;place-items:center;font-weight:800;display:grid;position:absolute;top:29px;left:20px}.section-heading{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:22px;display:flex}.section-heading h2{color:var(--navy);font:500 25px var(--school-font);margin:4px 0 6px}.section-heading p{color:var(--muted);font-size:var(--font-label);max-width:630px;margin:0;line-height:1.5}.section-heading>select{border:1px solid var(--line);max-width:185px;color:var(--navy);font-size:var(--font-label);background:#fff;border-radius:7px;padding:8px 30px 8px 10px}.selection-count{color:var(--red);font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.07em;white-space:nowrap;background:#f3e5e7;border-radius:999px;padding:7px 10px;font-weight:800}.selection-summary{gap:11px;display:grid}.selected-choice-list{gap:6px;display:grid}.selected-choice{color:#43515e;min-height:43px;font-size:var(--font-label);background:#fcf7f7;border:1px solid #e4d8da;border-radius:8px;grid-template-columns:22px minmax(0,1fr) 27px;align-items:center;gap:7px;padding:8px 8px 8px 11px;line-height:1.45;display:grid}.selected-choice.foundational{background:#f1f8f5;border-color:#bdd8cf}.selected-choice.foundational .selected-choice-check{background:#2f7566}.selected-choice-check{color:#fff;background:var(--red);border-radius:50%;place-items:center;width:18px;height:18px;display:grid}.selected-choice>button{color:#8c969f;cursor:pointer;background:0 0;border:0;border-radius:5px;place-items:center;width:27px;height:27px;display:grid}.selected-choice>button:hover{color:var(--red);background:#f4e7e9}.picker-button{justify-self:start}.selection-empty{color:var(--muted);font-size:var(--font-label);text-align:center;background:#fafafa;border:1px dashed #cbd1d6;border-radius:8px;margin:0;padding:14px}.outcome-groups{border:1px solid var(--line);border-radius:9px;overflow:hidden}.outcome-group+.outcome-group{border-top:1px solid var(--line)}.outcome-group-heading{width:100%;min-height:45px;color:var(--navy);font-size:var(--font-label);cursor:pointer;background:#f8f7f4;border:0;justify-content:space-between;align-items:center;padding:0 14px;font-weight:800;display:flex}.outcome-group-heading small{color:var(--muted);font-size:var(--font-compact);background:#e8e9e9;border-radius:9px;margin-left:5px;padding:3px 6px}.outcome-group-heading svg{transition:transform .2s}.outcome-group-heading svg.open{transform:rotate(180deg)}.outcome-list{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.outcome-list label{border-top:1px solid var(--soft-line);color:#50606d;min-height:63px;font-size:var(--font-label);cursor:pointer;background:#fff;grid-template-columns:20px 1fr;align-items:start;gap:9px;padding:13px;line-height:1.45;display:grid}.outcome-list label:nth-child(odd){border-right:1px solid var(--soft-line)}.outcome-list label.selected{color:var(--ink);background:#fbf4f5}.outcome-list input{opacity:0;position:absolute}.custom-check{color:#0000;border:1px solid #bec6cc;border-radius:4px;place-items:center;width:17px;height:17px;display:grid}.outcome-list label.selected .custom-check{color:#fff;border-color:var(--red);background:var(--red)}.success-criteria{margin-top:18px}.field-heading{justify-content:space-between;align-items:center;gap:15px;min-height:27px;display:flex}.field-heading label{color:var(--navy);font-size:var(--font-label);font-weight:800}.field-heading label span,.field-heading>span{color:var(--muted);font-size:var(--font-compact);margin-left:5px;font-weight:400}.field-heading button{color:var(--red);font-size:var(--font-label);cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;font-weight:800;display:inline-flex}.repeat-field{grid-template-columns:1fr 33px;margin-top:7px;display:grid}.repeat-field input,.inline-add input{border:1px solid var(--line);min-height:36px;color:var(--ink);font-size:var(--font-label);background:#fff;border-radius:7px 0 0 7px;padding:0 11px}.repeat-field button{border:1px solid var(--line);color:var(--muted);cursor:pointer;background:#fff;border-left:0;border-radius:0 7px 7px 0}.two-column-fields{grid-template-columns:.8fr 1.2fr;gap:28px;display:grid}.chip-picker{flex-wrap:wrap;gap:6px;margin:7px 0 12px;display:flex}.chip-picker button{border:1px solid var(--line);color:#596673;min-height:29px;font-size:var(--font-label);cursor:pointer;background:#fff;border-radius:999px;align-items:center;gap:5px;padding:0 9px;display:inline-flex}.chip-picker button.selected{color:var(--red);background:#fbf1f2;border-color:#d9acb2;font-weight:700}.inline-add{grid-template-columns:1fr auto;display:grid}.inline-add button{border:1px solid var(--line);color:var(--red);font-size:var(--font-label);cursor:pointer;background:#fff;border-left:0;border-radius:0 7px 7px 0;align-items:center;gap:4px;padding:0 10px;font-weight:800;display:flex}.custom-chips{flex-wrap:wrap;gap:5px;margin-top:8px;display:flex}.custom-chips>span{color:var(--navy);font-size:var(--font-compact);background:#e9edf0;border-radius:5px;align-items:center;gap:4px;padding:5px 5px 5px 8px;display:flex}.custom-chips button{cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid}.question-heading>div{gap:10px;display:flex}.question-list{gap:8px;margin-top:7px;display:grid}.question-card{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:22px 1fr 24px;align-items:start;padding:10px;display:grid}.question-card>svg{color:var(--red);margin-top:4px}.question-card textarea{resize:vertical;width:100%;color:var(--ink);font-size:var(--font-label);background:0 0;border:0;outline:0;line-height:1.45}.question-card select{border:1px solid var(--soft-line);width:100%;color:var(--muted);font-size:var(--font-compact);background:#f8f8f7;border-radius:5px;margin-top:5px;padding:5px}.question-card>button{color:#9ba2a8;cursor:pointer;background:0 0;border:0}.duration-total{color:var(--green);font-size:var(--font-label);white-space:nowrap;background:#e8f3ee;border-radius:7px;align-items:center;gap:5px;padding:8px 11px;display:inline-flex}.duration-total.warning{color:#8b5c1e;background:#f7ebd8}.duration-warning{color:#8b5c1e;font-size:var(--font-label);background:#faf0df;border-radius:6px;align-items:center;gap:6px;margin:-10px 0 14px;padding:8px 10px;display:flex}.phase-list{gap:9px;display:grid}.phase-card{border:1px solid var(--line);background:#fff;border-radius:9px;grid-template-columns:42px minmax(0,1fr) 31px;gap:10px;padding:13px 10px;transition:border-color .15s;display:grid}.phase-card.active{border-color:#b4c5d3;box-shadow:0 0 0 2px #2a69b80f}.phase-order{color:#a0a7ad;flex-direction:column;align-items:center;gap:7px;display:flex}.phase-order span{background:var(--navy);color:#fff;width:27px;height:27px;font-size:var(--font-compact);border-radius:50%;place-items:center;font-weight:800;display:grid}.phase-fields{min-width:0}.phase-title-fields{gap:8px;margin-bottom:9px;display:flex}.phase-name{border:0;border-bottom:1px solid var(--soft-line);min-width:0;color:var(--navy);font:500 16px var(--school-font);background:0 0;flex:1;padding:0 2px 5px}.phase-title-fields label{width:72px;color:var(--muted);font-size:var(--font-compact);align-items:center;gap:3px;display:flex}.phase-title-fields label input{border:1px solid var(--line);width:43px;height:29px;color:var(--navy);font-size:var(--font-label);border-radius:5px;padding:0 5px}.phase-fields>label{color:var(--navy);font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.06em;gap:5px;margin-top:7px;font-weight:800;display:grid}.phase-fields textarea{resize:vertical;border:1px solid var(--soft-line);color:#4a5865;width:100%;font-size:var(--font-label);text-transform:none;letter-spacing:normal;background:#fafafa;border-radius:6px;padding:9px;font-weight:400;line-height:1.5}.diagram-link{color:var(--red);font-size:var(--font-compact);cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;padding:7px 0 0;font-weight:800;display:inline-flex}.diagram-link.has-diagram{color:var(--green)}.phase-actions{flex-direction:column;gap:4px;display:flex}.phase-actions button{border:1px solid var(--soft-line);width:27px;height:27px;color:var(--muted);cursor:pointer;background:#fff;border-radius:5px;place-items:center;display:grid}.phase-actions button:disabled{opacity:.3;cursor:default}.add-phase{width:100%;min-height:38px;color:var(--red);font-size:var(--font-label);cursor:pointer;background:#fafafa;border:1px dashed #bdc5cb;border-radius:8px;justify-content:center;align-items:center;gap:6px;margin-top:10px;font-weight:800;display:flex}.tactical-board{border:1px solid var(--line);background:#fff;border-radius:10px;overflow:hidden}.board-topline{border-bottom:1px solid var(--line);background:#f6f5f2;justify-content:space-between;align-items:center;min-height:48px;padding:8px 10px;display:flex}.board-topline label{color:var(--muted);font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.07em;align-items:center;gap:7px;font-weight:800;display:flex}.board-topline select{border:1px solid var(--line);color:var(--navy);font-size:var(--font-label);text-transform:none;letter-spacing:normal;background:#fff;border-radius:5px;padding:6px 25px 6px 8px}.board-history{gap:4px;display:flex}.board-history button{border:1px solid var(--line);width:30px;height:30px;color:var(--navy);cursor:pointer;background:#fff;border-radius:6px;place-items:center;display:grid}.board-history button:disabled{opacity:.35;cursor:default}.board-workspace{background:#d5d9dc;grid-template-columns:75px minmax(0,1fr);display:grid}.board-tools{background:var(--navy);align-content:start;gap:4px;padding:7px;display:grid}.board-tools button{color:#ffffff9e;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:5px;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-height:43px;padding:5px 2px;display:flex}.board-tools button span{font-size:var(--font-compact)}.board-tools button.active{color:#fff;background:var(--red);border-color:#ffffff38}.board-workspace canvas{touch-action:none;cursor:crosshair;width:100%;height:auto;max-height:540px;display:block}.board-hint{color:var(--muted);font-size:var(--font-compact);background:#f8f7f4;align-items:center;gap:6px;margin:0;padding:9px 12px;display:flex}.board-hint svg{color:var(--red)}.board-section.collapsed{padding-bottom:23px}.board-section.collapsed .section-heading{align-items:center;margin-bottom:0}.board-section-actions{align-items:center;gap:8px;display:flex}.board-section-actions select{border:1px solid var(--line);max-width:185px;color:var(--navy);font-size:var(--font-label);background:#fff;border-radius:7px;padding:8px 30px 8px 10px}.adaptation-grid{grid-template-columns:1fr 1fr;gap:15px;display:grid}.adaptation-grid label{gap:7px;display:grid}.adaptation-grid label>span{color:var(--navy);font-size:var(--font-label);align-items:center;gap:5px;font-weight:800;display:flex}.adaptation-grid label>span svg{color:var(--red)}.adaptation-grid textarea{resize:vertical;border:1px solid var(--line);color:#495764;width:100%;font-size:var(--font-label);background:#fff;border-radius:7px;padding:10px;line-height:1.5}.afl-field{margin-top:18px}.planner-summary{z-index:2;gap:12px;width:265px;display:grid;position:sticky;top:18px}.summary-card,.pdf-card{border:1px solid var(--line);background:var(--paper);border-radius:11px;padding:21px;box-shadow:0 8px 25px #0f233a0a}.summary-card h3{color:var(--navy);font:500 21px var(--school-font);margin:5px 0 18px}.readiness-list{gap:9px;display:grid}.readiness-list span{color:#9ba2a8;font-size:var(--font-label);align-items:center;gap:7px;display:flex}.readiness-list svg{width:15px;height:15px}.readiness-list span.done{color:var(--green);font-weight:700}.summary-divider{background:var(--soft-line);height:1px;margin:18px 0}.summary-card dl{gap:13px;margin:0;display:grid}.summary-card dl>div{gap:3px;display:grid}.summary-card dt{color:#929aa1;font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.08em}.summary-card dd{color:#485764;font-size:var(--font-label);margin:0;line-height:1.45}.pdf-card{background:#edf4f8;border-color:#cfdce6}.pdf-card>div{color:#315d7d;align-items:center;gap:8px;display:flex}.pdf-card>div span{font-size:var(--font-label);text-transform:uppercase;letter-spacing:.08em;font-weight:800}.pdf-card p{color:#637989;font-size:var(--font-label);line-height:1.55}.pdf-card .button{width:100%;margin-top:4px}.planner-sticky-actions{display:none}.planner-loading{min-height:60vh;color:var(--navy);flex-direction:column;justify-content:center;align-items:center;display:flex}.planner-loading svg{color:var(--red)}.planner-loading h1{font:500 29px var(--school-font);margin:14px 0 5px}.planner-loading p{color:var(--muted);font-size:var(--font-label)}.spin{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.picker-modal{z-index:80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0916249e;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.picker-sheet{background:var(--paper);border:1px solid #ffffff8c;border-radius:14px;flex-direction:column;width:min(720px,100%);max-height:min(82vh,760px);display:flex;overflow:hidden;box-shadow:0 30px 80px #06121f4d}.picker-header{border-bottom:1px solid var(--line);justify-content:space-between;gap:24px;padding:25px 27px 20px;display:flex}.picker-header h2{color:var(--navy);margin:4px 0 6px;font-size:27px;font-weight:500}.picker-header p{color:var(--muted);font-size:var(--font-label);margin:0}.picker-header>button{border:1px solid var(--line);width:34px;height:34px;color:var(--muted);cursor:pointer;background:#fff;border-radius:7px;flex:none;place-items:center;display:grid}.picker-options{gap:7px;padding:18px 27px;display:grid;overflow:auto}.picker-outcome-group{gap:8px;display:grid}.picker-outcome-group+.picker-outcome-group{border-top:1px solid var(--line);margin-top:10px;padding-top:16px}.picker-outcome-group>header{justify-content:space-between;align-items:baseline;gap:14px;display:flex}.picker-outcome-group>header strong{color:var(--navy);text-transform:uppercase;letter-spacing:.05em;font-size:12px}.picker-outcome-group>header span{color:var(--muted);font-size:var(--font-compact)}.picker-outcome-group>div{gap:7px;display:grid}.picker-outcome-group.foundational{background:#f3f8f6;border:1px solid #c8ddd6;border-radius:10px;padding:13px}.picker-outcome-group.foundational+.picker-outcome-group{margin-top:4px}.picker-outcome-group.foundational>header strong{color:#2f7566}.picker-option{border:1px solid var(--line);color:#465563;width:100%;font-size:var(--font-label);text-align:left;cursor:pointer;background:#fff;border-radius:8px;grid-template-columns:21px minmax(0,1fr);align-items:start;gap:10px;padding:12px 13px;line-height:1.45;display:grid}.picker-option .custom-check{margin-top:1px}.picker-option.selected{color:var(--ink);background:#fbf1f2;border-color:#d9acb2}.picker-option.selected .custom-check{color:#fff;border-color:var(--red);background:var(--red)}.question-option strong,.question-option small{display:block}.question-option strong{color:inherit;font-size:var(--font-label);font-weight:700}.question-option small{color:var(--muted);font-size:var(--font-compact);margin-top:4px;line-height:1.4}.picker-footer{border-top:1px solid var(--line);background:#f7f6f3;justify-content:space-between;align-items:center;gap:15px;min-height:62px;padding:11px 27px;display:flex}.picker-footer span{color:var(--muted);font-size:var(--font-label);font-weight:700}.planning-mode-switcher{border:1px solid var(--line);background:var(--paper);border-radius:12px;grid-template-columns:minmax(250px,.72fr) minmax(540px,1.28fr);align-items:center;gap:25px;margin-bottom:15px;padding:20px 23px;display:grid;box-shadow:0 8px 25px #0f233a09}.planning-mode-switcher h2{color:var(--navy);margin:4px 0 5px;font-size:21px;font-weight:500}.planning-mode-switcher p{color:var(--muted);font-size:var(--font-label);margin:0;line-height:1.45}.planning-mode-options{grid-template-columns:repeat(3,1fr);gap:7px;display:grid}.planning-mode-options>button{border:1px solid var(--line);min-height:65px;color:var(--muted);text-align:left;cursor:pointer;background:#fff;border-radius:9px;grid-template-columns:26px 1fr;align-items:center;gap:9px;padding:10px 12px;display:grid}.planning-mode-options>button>svg{color:#89949d;width:21px}.planning-mode-options strong,.planning-mode-options small{display:block}.planning-mode-options strong{color:var(--navy);font-size:var(--font-label)}.planning-mode-options small{color:var(--muted);font-size:var(--font-compact);margin-top:3px;line-height:1.3}.planning-mode-options>button.active{background:#fbf0f2;border-color:#d8aab1;box-shadow:inset 0 0 0 1px #a42a3814}.planning-mode-options>button.active>svg,.planning-mode-options>button.active strong{color:var(--red)}.assessment-overview-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.assessment-title-field{color:var(--navy);font-size:var(--font-label);gap:6px;font-weight:800;display:grid}.assessment-title-field input,.assessment-task-fields input,.assessment-task-fields select,.assessment-task-fields textarea{border:1px solid var(--line);width:100%;color:var(--ink);font-size:var(--font-label);resize:vertical;background:#fff;border-radius:7px;padding:9px 10px;font-weight:400;line-height:1.5}.assessment-task-list{gap:12px;margin-top:14px;display:grid}.assessment-task-card{border:1px solid var(--line);background:#fafaf8;border-radius:9px;padding:13px;transition:border-color .16s,box-shadow .16s,opacity .16s}.assessment-task-card:hover{border-color:#c8c2b8;box-shadow:0 5px 16px #1f30420f}.assessment-task-card.dragging{opacity:.55;border-color:var(--red)}.assessment-task-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:11px;display:flex}.assessment-task-order{color:var(--navy);font-size:var(--font-label);cursor:grab;align-items:center;gap:7px;font-weight:800;display:inline-flex}.assessment-task-order svg{color:var(--muted)}.assessment-task-actions{gap:5px;display:flex}.assessment-task-actions button{border:1px solid var(--line);width:28px;height:28px;color:var(--navy);cursor:pointer;background:#fff;border-radius:6px;place-items:center;display:grid}.assessment-task-actions button:last-child:not(:disabled){color:var(--red)}.assessment-task-actions button:disabled{opacity:.35;cursor:default}.assessment-task-fields{grid-template-columns:1fr 1fr;gap:11px;display:grid}.assessment-task-fields label{color:var(--navy);font-size:var(--font-label);gap:6px;font-weight:800;display:grid}.assessment-task-fields label.wide{grid-column:1/-1}.assessment-task-board{justify-items:start;gap:12px;margin-top:12px;display:grid}.assessment-task-board>:not(button){width:100%}.assessment-roster-summary{color:var(--red);background:#fbf0f2;border-radius:8px;align-items:flex-start;gap:9px;padding:11px;display:flex}.assessment-roster-summary.ready{color:var(--green);background:#e9f3ee}.assessment-roster-summary svg{flex:none}.assessment-roster-summary strong,.assessment-roster-summary span{display:block}.assessment-roster-summary strong{font-size:var(--font-label)}.assessment-roster-summary span{color:var(--muted);font-size:var(--font-compact);margin-top:3px;line-height:1.4}.assessment-overview-grid label,.marking-setup-grid label,.other-fields label{color:var(--navy);font-size:var(--font-label);gap:6px;font-weight:800;display:grid}.assessment-overview-grid label.wide{grid-column:1/-1}.assessment-overview-grid input,.assessment-overview-grid select,.assessment-overview-grid textarea,.marking-setup-grid input,.marking-setup-grid textarea,.other-fields textarea{border:1px solid var(--line);width:100%;color:var(--ink);font-size:var(--font-label);resize:vertical;background:#fff;border-radius:7px;padding:9px 10px;font-weight:400;line-height:1.5}.assessment-criteria-list{gap:8px;margin-top:17px;display:grid}.assessment-criteria-list article{border:1px solid var(--line);background:#fafaf8;border-radius:8px;grid-template-columns:31px minmax(0,1fr);gap:10px;padding:12px;display:grid}.assessment-criteria-list article>span{color:#fff;background:var(--navy);width:28px;height:27px;font-size:var(--font-compact);border-radius:6px;place-items:center;font-weight:800;display:grid}.assessment-criteria-list article strong{color:var(--navy);font-size:var(--font-label);line-height:1.45;display:block}.criterion-fields{grid-template-columns:minmax(180px,.55fr) minmax(260px,1.45fr);gap:10px;margin-top:9px;display:grid}.criterion-fields label{color:var(--muted);font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.05em;gap:5px;font-weight:800;display:grid}.criterion-fields select,.criterion-fields textarea{border:1px solid var(--line);width:100%;color:var(--ink);font-size:var(--font-label);text-transform:none;letter-spacing:0;resize:vertical;background:#fff;border-radius:6px;padding:8px;font-weight:400}.rubric-section .section-heading>.button{flex:none}.rubric-scroll{overscroll-behavior-inline:contain;border:1px solid var(--line);border-radius:9px;width:100%;max-width:100%;overflow-x:auto}.rubric-grid{min-width:920px;display:grid}.rubric-corner,.rubric-level-head,.rubric-outcome,.rubric-descriptor{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.rubric-corner{color:var(--muted);font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.07em;background:#f2f1ed;align-items:center;padding:12px;font-weight:800;display:flex}.rubric-level-head{background:#f2f1ed;grid-template-columns:1fr auto;align-items:center;gap:5px;min-height:47px;padding:8px;display:grid}.rubric-level-head>div{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;min-width:0;display:grid}.rubric-level-head input{min-width:0;color:var(--navy);font-size:var(--font-label);background:0 0;border:1px solid #0000;border-radius:5px;padding:5px 6px;font-weight:800}.rubric-level-head input:focus{border-color:var(--line);background:#fff}.rubric-level-head label{color:var(--muted);font-size:var(--font-compact);text-transform:uppercase;align-items:center;gap:3px;font-weight:800;display:flex}.rubric-level-head label .rubric-score-input{border-color:var(--line);text-align:center;background:#fff;width:42px;padding:5px 3px}.rubric-level-head button{width:25px;height:25px;color:var(--red);cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.rubric-outcome{background:#f9f8f5;padding:11px}.rubric-outcome strong,.rubric-outcome small{display:block}.rubric-outcome strong{color:var(--navy);font-size:var(--font-label);line-height:1.4}.rubric-outcome small{color:var(--red);font-size:var(--font-compact);margin-top:7px}.rubric-descriptor{background:#fff;padding:6px}.rubric-descriptor textarea{color:#4b5864;resize:vertical;width:100%;min-height:88px;font-size:var(--font-compact);background:0 0;border:1px solid #0000;border-radius:5px;padding:7px;line-height:1.45}.rubric-descriptor textarea:focus{border-color:var(--line);background:#fafafa}.marking-setup-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.marking-setup-grid label>span{color:var(--muted);font-size:var(--font-compact);font-weight:400}.marking-setup-grid>div{align-content:start;gap:11px;display:grid}.roster-status{color:var(--green);background:#e9f3ee;border-radius:8px;align-items:flex-start;gap:9px;padding:11px;display:flex}.roster-status svg{flex:none}.roster-status strong,.roster-status span{display:block}.roster-status strong{font-size:var(--font-label)}.roster-status span{color:#55776a;font-size:var(--font-compact);margin-top:3px;line-height:1.4}.marking-preview{overscroll-behavior-inline:contain;border:1px solid var(--line);border-radius:8px;width:100%;max-width:100%;margin-top:16px;overflow-x:auto}.assessment-planner-layout .rubric-section,.assessment-planner-layout .marking-sheet-section{overflow:hidden}.score-key{flex-wrap:wrap;gap:7px;margin-top:16px;display:flex}.score-key span{border:1px solid var(--line);color:var(--muted);font-size:var(--font-compact);background:#fafaf8;border-radius:7px;align-items:center;gap:5px;padding:6px 8px;display:inline-flex}.score-key strong{color:#fff;background:var(--navy);width:20px;height:20px;font-size:var(--font-compact);border-radius:5px;place-items:center;display:grid}.marking-preview table{border-collapse:collapse;width:100%;min-width:940px}.marking-preview th,.marking-preview td{border-right:1px solid var(--line);border-bottom:1px solid var(--line);height:31px;color:var(--muted);font-size:var(--font-compact);text-align:left;padding:6px 8px}.marking-preview th{color:var(--navy);background:#f2f1ed;font-weight:800}.marking-preview th small{color:var(--muted);font-size:var(--font-compact);text-transform:uppercase;margin-top:2px;display:block}.marking-preview th:first-child{width:145px}.marking-preview th:last-child{width:150px}.marking-preview select{border:1px solid var(--line);width:48px;color:var(--navy);font-size:var(--font-label);background:#fff;border-radius:5px;padding:4px;font-weight:800}.marking-preview input{border:1px solid var(--line);width:100%;min-width:120px;color:var(--ink);font-size:var(--font-compact);background:#fff;border-radius:5px;padding:5px}.score-placeholder{color:#a1a8ae;font-size:var(--font-compact);white-space:nowrap}.other-explanation-field{color:var(--navy);font-size:var(--font-label);gap:7px;font-weight:800;display:grid}.other-explanation-field textarea{border:1px solid var(--line);width:100%;min-height:270px;color:var(--ink);resize:vertical;font-size:var(--font-label);background:#fff;border-radius:8px;padding:13px;font-weight:400;line-height:1.65}.auth-loading{min-height:100vh;color:var(--muted);background:var(--canvas);align-content:center;place-items:center;gap:14px;font-size:12px;display:grid}.auth-loading img{border-radius:15px;box-shadow:0 14px 35px #0f233a26}.auth-loading svg{color:var(--red)}.login-page{background:var(--paper);grid-template-columns:minmax(430px,.9fr) 1.1fr;min-height:100vh;display:grid}.login-brand-panel{color:#fff;background:radial-gradient(circle at 78% 18%,#b43443b3,#0000 32%),linear-gradient(145deg,#0d2239,#163d5d 62%,#102a43);flex-direction:column;min-height:100vh;padding:45px clamp(42px,6vw,90px);display:flex;position:relative;overflow:hidden}.login-brand-panel:after{content:"";border:70px solid #ffffff09;border-radius:50%;width:420px;height:420px;position:absolute;bottom:-130px;right:-210px}.login-brand-lockup{z-index:1;background:#fff;border-radius:12px;place-items:center;width:min(430px,100%);padding:14px 18px;display:grid;position:relative;box-shadow:0 14px 34px #06121f33}.login-brand-lockup img{width:100%;height:auto;display:block}.login-message{z-index:1;margin:auto 0;position:relative}.login-message .eyebrow{color:#e8aab2}.login-message h1{letter-spacing:-.04em;margin:13px 0 20px;font-size:clamp(42px,5vw,72px);font-weight:500;line-height:.98}.login-message p{color:#ffffffad;max-width:510px;font-size:16px;line-height:1.65}.login-security{z-index:1;color:#ffffff8c;font-size:var(--font-label);align-items:center;gap:9px;display:flex;position:relative}.login-security svg{color:#87d4b4}.login-form-panel{background:#f6f3ed;place-items:center;padding:40px;display:grid}.login-form{border:1px solid var(--line);background:var(--paper);border-radius:16px;width:min(420px,100%);padding:42px;box-shadow:0 24px 70px #0f233a1c}.login-icon{color:#fff;background:var(--navy);border-radius:11px;place-items:center;width:45px;height:45px;margin-bottom:21px;display:grid}.login-form h2{color:var(--navy);margin:5px 0 7px;font-size:32px;font-weight:500}.login-form>p{color:var(--muted);font-size:var(--font-label);margin:0 0 25px;line-height:1.55}.login-form label{color:var(--navy);font-size:var(--font-label);gap:7px;margin-top:15px;font-weight:800;display:grid}.login-form input{border:1px solid var(--line);width:100%;height:43px;color:var(--ink);font-size:var(--font-label);background:#fff;border-radius:8px;padding:0 12px}.password-field{position:relative}.password-field input{padding-right:43px}.password-field button{width:31px;height:31px;color:var(--muted);cursor:pointer;background:0 0;border:0;place-items:center;display:grid;position:absolute;top:6px;right:6px}.login-error{color:#8e2834;font-size:var(--font-label);background:#f7e8e9;border-radius:7px;margin-top:13px;padding:9px 11px}.login-submit{justify-content:space-between;width:100%;margin-top:20px}.login-form>small{color:#929aa1;font-size:var(--font-label);text-align:center;margin-top:18px;display:block}.manager-access-label{color:#efb3ba;font-size:var(--font-label);text-transform:uppercase;letter-spacing:.08em;background:#a42a3833;border-radius:6px;align-items:center;gap:6px;margin:-9px 5px 14px;padding:7px 9px;font-weight:800;display:flex}.teacher-card{position:relative}.teacher-card>div:nth-child(2){min-width:0}.signout-button{color:#ffffff8c;cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;width:31px;height:31px;margin-left:auto;display:grid}.signout-button:hover{color:#fff;background:#ffffff14}.topbar-actions{align-items:stretch;gap:10px;display:flex}.teacher-view-select{border:1px solid var(--line);background:#ffffffa3;border-radius:10px;grid-template-columns:22px 1fr;align-items:center;min-width:210px;padding:10px 13px;display:grid}.teacher-view-select svg{color:var(--red);grid-row:span 2}.teacher-view-select span{color:var(--muted);font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.1em}.teacher-view-select select{min-width:0;color:var(--navy);font-size:var(--font-label);background:0 0;border:0;outline:0;padding:0;font-weight:800}.dashboard-empty{color:var(--muted);font-size:var(--font-label);text-align:center;padding:35px 20px}.manager-page{max-width:1450px}.manager-hero{color:#fff;background:linear-gradient(120deg, var(--navy), #19486b);min-height:190px;box-shadow:var(--shadow);border-radius:14px;justify-content:space-between;align-items:center;gap:30px;padding:32px 36px;transition:opacity .16s;display:flex}.manager-hero.is-loading{opacity:.72}.manager-hero .hero-kicker{color:#e9b1b8}.manager-hero h2{max-width:680px;margin:11px 0 8px;font-size:clamp(26px,3vw,38px);font-weight:500}.manager-hero p{color:#fff9;font-size:var(--font-label);margin:0}.manager-hero-progress{text-align:right;min-width:190px}.manager-hero-progress strong{font-size:47px;font-weight:500;display:block}.manager-hero-progress span{color:#ffffff94;font-size:var(--font-label);text-transform:uppercase;letter-spacing:.12em}.manager-hero-progress>div{background:#ffffff21;border-radius:999px;width:190px;height:7px;margin-top:12px;overflow:hidden}.manager-hero-progress i{border-radius:inherit;background:#d77c88;height:100%;display:block}.manager-stat-grid{grid-template-columns:repeat(4,1fr);gap:12px;margin:15px 0;display:grid}.manager-stat-grid article{border:1px solid var(--line);background:var(--paper);border-radius:11px;align-items:center;gap:13px;min-height:93px;padding:18px 20px;display:flex}.manager-stat-grid svg{width:20px;color:var(--red)}.manager-stat-grid strong,.manager-stat-grid span{display:block}.manager-stat-grid strong{color:var(--navy);font-size:25px;font-weight:500}.manager-stat-grid span{color:var(--muted);font-size:var(--font-label);margin-top:2px}.team-progress-card{overflow:hidden}.manager-week-chip{color:var(--red);font-size:var(--font-compact);background:#f5e8ea;border-radius:999px;padding:7px 10px;font-weight:800}.manager-progress-heading p{color:var(--muted);font-size:var(--font-label);margin:5px 0 0}.team-table-head,.team-progress-list article{grid-template-columns:1.05fr .72fr .82fr .9fr .72fr .62fr 100px;align-items:center;gap:15px;display:grid}.team-table-head{color:#8b949c;border-top:1px solid var(--soft-line);border-bottom:1px solid var(--soft-line);font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.08em;background:#f6f5f2;padding:11px 23px;font-weight:800}.team-progress-list article{border-bottom:1px solid var(--soft-line);min-height:91px;padding:15px 23px}.team-progress-list article:last-child{border:0}.team-person{align-items:center;gap:10px;display:flex}.team-person>span{color:#fff;background:var(--navy);width:36px;height:36px;font-size:var(--font-label);border-radius:9px;place-items:center;font-weight:800;display:grid}.team-person strong,.team-person small{display:block}.team-person strong{color:var(--navy);font-size:var(--font-label)}.team-person small{color:var(--muted);font-size:var(--font-compact);margin-top:3px}.team-progress>div{background:#e8ecee;border-radius:99px;height:6px;overflow:hidden}.team-progress i{background:var(--green);height:100%;display:block}.team-progress>span{color:var(--muted);font-size:var(--font-compact);margin-top:5px;display:block}.team-plan-counts{flex-wrap:wrap;gap:5px;display:flex}.team-plan-counts span{font-size:var(--font-compact);border-radius:5px;padding:4px 6px;font-weight:800}.team-plan-counts .ready{color:#23765d;background:#e7f2ed}.team-plan-counts .draft{color:#84601d;background:#f6eddc}.team-plan-counts .attention{color:#8d2a36;background:#f5e8ea}.reflection-state{font-size:var(--font-compact);align-items:center;gap:5px;font-weight:800;display:inline-flex}.reflection-state.complete{color:var(--green)}.reflection-state.required{color:var(--red)}.team-progress-list article>a{color:var(--red);font-size:var(--font-compact);justify-content:flex-end;align-items:center;gap:5px;font-weight:800;display:flex}.team-progress-list .unit-plan-state{border-radius:7px;justify-content:flex-start;padding:6px 8px}.unit-plan-state.complete{color:#247455;background:#e6f2ec}.unit-plan-state.draft{color:#8a641e;background:#f8efdc}.unit-plan-state.required{color:#9c3441;background:#f7e8eb}.manager-action-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:15px;display:grid}.manager-action-grid>a{border:1px solid var(--line);background:var(--paper);border-radius:11px;grid-template-columns:34px 1fr 18px;align-items:center;gap:11px;min-height:94px;padding:19px;transition:transform .15s,box-shadow .15s;display:grid}.manager-action-grid>a:hover{transform:translateY(-2px);box-shadow:0 10px 28px #0f233a14}.manager-action-grid>a>svg:first-child{color:var(--red)}.manager-action-grid>a>svg:last-child{color:#9aa2a9}.manager-action-grid strong,.manager-action-grid span{display:block}.manager-action-grid strong{color:var(--navy);font-size:var(--font-label)}.manager-action-grid span{color:var(--muted);font-size:var(--font-compact);margin-top:4px}.permission-page{text-align:center;align-content:center;place-items:center;min-height:70vh;display:grid}.permission-page svg{color:var(--red)}.permission-page h1{color:var(--navy);margin:13px 0 5px;font-size:30px;font-weight:500}.permission-page p{color:var(--muted);font-size:var(--font-label);margin:0}.permission-detail{opacity:.65;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;margin-top:6px!important}.manage-page{max-width:1450px}.manager-access-pill{color:var(--red);font-size:var(--font-label);background:#f3e5e7;border-radius:8px;align-items:center;gap:6px;padding:9px 12px;font-weight:800;display:flex}.admin-notice{color:var(--green);font-size:var(--font-label);background:#e5f2ec;border:1px solid #c8e2d7;border-radius:8px;align-items:center;gap:7px;margin-bottom:13px;padding:10px 12px;font-weight:700;display:flex}.admin-tabs{border:1px solid var(--line);background:#e9e7e2;border-radius:10px;gap:5px;margin-bottom:14px;padding:5px;display:flex}.admin-tabs button{min-height:42px;color:var(--muted);font-size:var(--font-label);cursor:pointer;background:0 0;border:0;border-radius:7px;flex:1;justify-content:center;align-items:center;gap:7px;font-weight:800;display:flex}.admin-tabs button svg{width:16px}.admin-tabs button.active{color:var(--navy);background:#fff;box-shadow:0 4px 12px #0f233a14}.admin-tabs button.active svg{color:var(--red)}.admin-layout{grid-template-columns:minmax(0,1.3fr) minmax(320px,.7fr);gap:14px;display:grid}.admin-form-card,.admin-list-card,.outcome-manager-card{padding-bottom:22px}.admin-form-grid{grid-template-columns:repeat(2,1fr);gap:12px;padding:0 23px 18px;display:grid}.admin-form-grid label{color:var(--navy);font-size:var(--font-label);gap:6px;font-weight:800;display:grid}.admin-form-grid label.wide{grid-column:1/-1}.admin-form-grid input,.admin-form-grid select,.admin-form-grid textarea{border:1px solid var(--line);width:100%;color:var(--ink);font-size:var(--font-label);background:#fff;border-radius:7px;padding:9px 10px}.admin-form-grid textarea{resize:vertical}.admin-form-card>.button{margin-left:23px}.admin-help{color:var(--muted);font-size:var(--font-label);margin:-7px 23px 18px;line-height:1.5}.admin-event-list,.override-list{padding:0 23px;display:grid}.admin-event-list article{border-bottom:1px solid var(--soft-line);grid-template-columns:48px 1fr;gap:10px;padding:11px 0;display:grid}.admin-event-list time{color:var(--red);font-size:var(--font-label);font-weight:800}.admin-event-list strong,.admin-event-list span{display:block}.admin-event-list strong{color:var(--navy);font-size:var(--font-label)}.admin-event-list span{color:var(--muted);font-size:var(--font-compact);text-transform:capitalize;margin-top:3px}.override-list article{border-bottom:1px solid var(--soft-line);align-items:center;gap:10px;padding:10px 0;display:flex}.override-list article>span{color:#fff;background:var(--navy);width:31px;height:31px;font-size:var(--font-compact);border-radius:7px;place-items:center;font-weight:800;display:grid}.override-list strong,.override-list small{display:block}.override-list strong{color:var(--navy);font-size:var(--font-label)}.override-list small{color:var(--muted);font-size:var(--font-compact);margin-top:3px}.admin-empty{color:var(--muted);font-size:var(--font-label);text-align:center;border:1px dashed #cbd1d6;border-radius:8px;margin:0 23px;padding:30px 16px}.outcome-manager-card>.card-heading>span{color:var(--muted);font-size:var(--font-compact)}.authoritative-bank-note{color:var(--green);background:#eff7f3;border:1px solid #cbded6;border-radius:9px;gap:11px;margin:0 23px 18px;padding:14px;display:flex}.authoritative-bank-note strong{color:var(--navy);font-size:var(--font-label)}.authoritative-bank-note p{color:#596672;font-size:var(--font-compact);margin:3px 0 0;line-height:1.45}.curriculum-phase-tabs{grid-template-columns:repeat(5,1fr);gap:7px;margin:0 23px 18px;display:grid}.curriculum-phase-tabs button{border:1px solid var(--line);min-height:58px;color:var(--navy);text-align:left;cursor:pointer;background:#fff;border-radius:8px;padding:9px}.curriculum-phase-tabs button.active{color:#fff;border-color:var(--navy);background:var(--navy)}.curriculum-phase-tabs strong,.curriculum-phase-tabs span{display:block}.curriculum-phase-tabs strong{font-size:var(--font-compact)}.curriculum-phase-tabs span{color:var(--muted);font-size:var(--font-compact);margin-top:4px}.curriculum-phase-tabs button.active span{color:#ffffffa6}.authoritative-unit-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:0 23px 23px;display:grid}.authoritative-unit-grid article{border:1px solid var(--line);background:#fff;border-radius:9px;padding:13px}.authoritative-unit-grid article header,.authoritative-unit-grid article header>div{justify-content:space-between;align-items:center;gap:9px;display:flex}.authoritative-unit-grid article header>div>span{color:#fff;background:var(--red);width:32px;height:32px;font-size:var(--font-compact);border-radius:7px;place-items:center;font-weight:800;display:grid}.authoritative-unit-grid strong,.authoritative-unit-grid small{display:block}.authoritative-unit-grid strong{color:var(--navy);font-size:var(--font-label)}.authoritative-unit-grid small,.authoritative-unit-grid em{color:var(--muted);font-size:var(--font-compact);margin-top:2px;font-style:normal}.authoritative-unit-grid article>div{flex-wrap:wrap;gap:4px;margin-top:10px;display:flex}.authoritative-unit-grid article>div>span{color:var(--green);font-size:var(--font-compact);background:#eff7f3;border-radius:5px;padding:4px 6px;font-weight:800}.authoritative-unit-grid article>p{color:var(--muted);font-size:var(--font-compact);margin:8px 0 0;line-height:1.4}.outcome-manager-list{gap:11px;padding:0 23px;display:grid}.outcome-manager-list>section{border:1px solid var(--line);border-left:4px solid var(--unit-color);border-radius:9px;overflow:hidden}.outcome-manager-list header{background:#f8f7f4;align-items:center;gap:10px;padding:13px 15px;display:flex}.outcome-manager-list header>span{color:#fff;background:var(--unit-color);width:34px;height:29px;font-size:var(--font-label);border-radius:6px;place-items:center;font-weight:800;display:grid}.outcome-manager-list header strong,.outcome-manager-list header small{display:block}.outcome-manager-list header strong{color:var(--navy);font-size:var(--font-label)}.outcome-manager-list header small{color:var(--muted);font-size:var(--font-compact);margin-top:2px}.outcome-edit-row{border-top:1px solid var(--soft-line);grid-template-columns:1fr auto;align-items:center;gap:9px;padding:9px 13px;display:grid}.outcome-edit-row textarea{resize:vertical;color:#465563;width:100%;font-size:var(--font-label);background:0 0;border:1px solid #0000;border-radius:6px;padding:8px 9px;line-height:1.45}.outcome-edit-row textarea:focus{border-color:var(--line);background:#fff}.adjusted-slot small{color:var(--muted);font-size:var(--font-compact)}.outcome-edit-row{grid-template-columns:minmax(0,1fr) auto}.outcome-edit-row textarea,.outcome-add-row textarea{font:400 var(--font-label)/1.45 var(--school-font)}.outcome-row-actions{align-items:center;gap:6px;display:flex}.outcome-row-actions .icon-action{flex:none}.outcome-row-actions .icon-action.danger{color:var(--red)}.outcome-add-row{border-top:1px solid var(--line);background:#f8faf8;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:9px;padding:12px 13px;display:grid}.outcome-add-row textarea{resize:vertical;border:1px solid var(--line);color:#465563;background:#fff;border-radius:6px;width:100%;padding:8px 9px}.calendar-admin-layout{grid-template-columns:minmax(390px,.8fr) minmax(520px,1.2fr);align-items:start}.icon-action{border:1px solid var(--line);width:32px;height:32px;color:var(--muted);cursor:pointer;background:#fff;border-radius:8px;place-items:center;display:grid}.admin-form-grid .checkbox-field{grid-template-columns:auto 1fr;align-items:center;gap:8px;padding:3px 0;display:flex}.admin-form-grid .checkbox-field input{width:16px;height:16px;accent-color:var(--red);margin:0}.admin-form-actions{justify-content:flex-end;gap:8px;padding:0 23px;display:flex}.calendar-records-card{max-height:690px;overflow:hidden}.calendar-records-card>.card-heading>span{color:var(--muted);font-size:var(--font-label)}.calendar-list-toolbar{padding:0 23px 10px}.calendar-list-toolbar input{border:1px solid var(--line);width:100%;color:var(--ink);font-size:var(--font-label);background:#fff;border-radius:8px;padding:9px 11px}.calendar-records-card .admin-event-list{max-height:562px;padding-bottom:10px;overflow-y:auto}.calendar-records-card .admin-event-list article{grid-template-columns:48px minmax(0,1fr) auto;align-items:center}.admin-event-details{min-width:0}.event-actions{gap:5px;display:flex}.event-actions button{border:1px solid var(--line);width:30px;height:30px;color:var(--navy);cursor:pointer;background:#fff;border-radius:7px;place-items:center;display:grid}.event-actions button:hover{background:#f7f7f5;border-color:#aeb8c0}.event-actions button.danger{color:var(--red)}.unit-dates-layout{grid-template-columns:minmax(620px,1.25fr) minmax(360px,.75fr);align-items:start}.field-hint{color:var(--muted);font-size:var(--font-compact);font-weight:400}.unit-grade-fieldset{border:0;min-width:0;margin:0;padding:0}.admin-form-grid fieldset.wide{grid-column:1/-1}.unit-grade-fieldset legend{color:var(--navy);font-size:var(--font-label);margin-bottom:7px;font-weight:800}.unit-grade-options{gap:7px;display:grid}.curriculum-grade-options{grid-template-columns:repeat(3,minmax(0,1fr))}.curriculum-unit-plan-editor{border:1px solid var(--line);background:#f8f8f6;border-radius:10px;padding:16px}.curriculum-unit-plan-editor>header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;display:flex}.curriculum-unit-plan-editor>header>div{align-items:center;gap:9px;display:flex}.curriculum-unit-plan-editor>header>div>span{color:#fff;background:var(--navy);width:34px;height:34px;font-size:var(--font-label);border-radius:7px;place-items:center;font-weight:800;display:grid}.curriculum-unit-plan-editor header strong,.curriculum-unit-plan-editor header small{display:block}.curriculum-unit-plan-editor header strong{color:var(--navy);font-size:var(--font-label)}.curriculum-unit-plan-editor header small,.curriculum-unit-plan-editor header em{color:var(--muted);font-size:var(--font-compact);margin-top:2px;font-style:normal}.curriculum-unit-selectors{grid-template-columns:1fr 1fr;gap:10px;display:grid}.curriculum-unit-plan-editor>label{margin-top:12px;display:block}.planned-outcomes-heading{justify-content:space-between;align-items:center;gap:12px;margin:14px 0 8px;display:flex}.planned-outcomes-heading strong,.planned-outcomes-heading span{display:block}.planned-outcomes-heading strong{color:var(--navy);font-size:var(--font-label)}.planned-outcomes-heading span{color:var(--muted);font-size:var(--font-compact);margin-top:2px}.planned-outcome-list{gap:6px;max-height:360px;padding-right:3px;display:grid;overflow:auto}.planned-outcome-list label,.planned-outcome-list>div{border:1px solid var(--line);color:#52616d;font-size:var(--font-compact);cursor:pointer;background:#fff;border-radius:7px;grid-template-columns:16px minmax(0,1fr);align-items:start;gap:8px;padding:9px;line-height:1.45;display:grid}.planned-outcome-list label.selected,.planned-outcome-list>div.selected{background:#eff7f3;border-color:#9fc9ba}.planned-outcome-list>div{cursor:default}.planned-outcome-list input{width:15px;height:15px;accent-color:var(--green);margin:1px 0 0}.planned-outcome-list small{color:var(--red);font-size:var(--font-compact);text-transform:uppercase;margin-bottom:2px;font-weight:800;display:block}.curriculum-feed-banner{color:var(--green);background:#eff7f3;border:1px solid #cbded6;border-radius:9px;align-items:flex-start;gap:11px;margin-bottom:16px;padding:13px 15px;display:flex}.curriculum-feed-banner strong{color:var(--navy);font-size:var(--font-label)}.curriculum-feed-banner p{color:#51626c;font-size:var(--font-label);margin:3px 0;line-height:1.45}.curriculum-feed-banner span{color:var(--green);font-size:var(--font-compact);font-weight:800}.lesson-evidence-context{border-top:1px solid #cbded6;margin:9px 0 8px;padding-top:9px}.lesson-evidence-context b{color:#276955;font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.06em;display:block}.lesson-evidence-context p{white-space:pre-line}.selected-choice>span:nth-child(2) small,.picker-option>span:last-child small{color:var(--red);font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.04em;margin-bottom:2px;font-weight:800;display:block}.selected-choice>span:nth-child(2) em,.picker-option>span:last-child em{color:#8a97a0;font-size:var(--font-compact);margin-top:4px;font-style:normal;line-height:1.4;display:block}.unit-grade-options>label{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;grid-template-columns:17px 32px minmax(0,1fr);align-items:center;gap:8px;min-width:0;padding:9px 10px;display:grid}.unit-grade-options>label.selected{box-shadow:inset 3px 0 var(--green);background:#eff7f3;border-color:#9fc9ba}.unit-grade-options input{width:16px;height:16px;accent-color:var(--green);margin:0}.unit-grade-options label>span{color:var(--red);font-size:var(--font-label);font-weight:800}.unit-grade-options strong,.unit-grade-options small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.unit-grade-options strong{color:var(--navy);font-size:var(--font-label)}.unit-grade-options small{color:var(--muted);font-size:var(--font-compact);margin-top:2px}.unit-date-list-card{overflow:hidden}.unit-date-list-card>.card-heading>span{color:var(--muted);font-size:var(--font-label)}.unit-date-list{padding:0 23px 15px;display:grid}.unit-date-list article{border-bottom:1px solid var(--soft-line);grid-template-columns:98px minmax(0,1fr) auto;align-items:center;gap:14px;min-height:108px;padding:15px 0;display:grid}.unit-date-list article:last-of-type{border-bottom:0}.unit-date-range{color:var(--red);align-items:flex-start;gap:8px;display:flex}.unit-date-range svg{flex:none;margin-top:2px}.unit-date-range strong,.unit-date-range span{display:block}.unit-date-range strong{color:var(--navy);font-size:var(--font-label)}.unit-date-range span{color:var(--muted);font-size:var(--font-compact);margin-top:3px}.unit-date-details{min-width:0}.unit-date-details h3{color:var(--navy);margin:0;font-size:12px;font-weight:700}.unit-grade-chips{flex-wrap:wrap;gap:4px;margin-top:7px;display:flex}.unit-grade-chips span{color:#fff;background:var(--navy);font-size:var(--font-compact);border-radius:5px;padding:4px 6px;font-weight:800}.unit-date-details p,.unit-date-details small{color:var(--muted);font-size:var(--font-compact);margin:6px 0 0;line-height:1.4;display:block}.unit-date-details small{color:#7a848b;font-style:italic}.staff-message-admin-layout{grid-template-columns:minmax(430px,.85fr) minmax(520px,1.15fr);align-items:start}.message-recipient-fieldset{border:0;min-width:0;margin:0;padding:0;position:relative}.message-recipient-fieldset legend{color:var(--navy);font-size:var(--font-label);margin-bottom:8px;font-weight:800}.message-select-all{color:var(--red);font:800 var(--font-compact) var(--school-font);cursor:pointer;background:0 0;border:0;padding:4px 0;position:absolute;top:-5px;right:0}.message-recipient-options{grid-template-columns:repeat(3,1fr);gap:7px;display:grid}.staff-notice-paste-field textarea{tab-size:4;white-space:pre-wrap;line-height:1.55}.staff-notice-paste-field>small{color:var(--muted);font-size:var(--font-compact);align-items:center;gap:6px;margin-top:7px;font-weight:600;display:flex}.message-recipient-options>label{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;grid-template-columns:16px 30px minmax(0,1fr);align-items:center;gap:7px;min-width:0;padding:9px;display:grid}.message-recipient-options>label.selected{box-shadow:inset 3px 0 var(--green);background:#eff7f3;border-color:#9fc9ba}.message-recipient-options input{width:15px;height:15px;accent-color:var(--green);margin:0}.message-recipient-options label>span{color:#fff;background:var(--navy);width:28px;height:28px;font-size:var(--font-compact);border-radius:6px;place-items:center;font-weight:800;display:grid}.message-recipient-options strong,.message-recipient-options small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.message-recipient-options strong{color:var(--navy);font-size:var(--font-compact)}.message-recipient-options small{color:var(--muted);font-size:var(--font-compact);margin-top:2px}.staff-message-list-card{overflow:hidden}.staff-message-list-card>.card-heading>span{color:var(--muted);font-size:var(--font-label)}.staff-message-admin-list{padding:0 23px 15px;display:grid}.staff-message-admin-list article{--message-color:#315f80;border-bottom:1px solid var(--soft-line);grid-template-columns:38px minmax(0,1fr) auto;align-items:start;gap:11px;min-height:130px;padding:15px 0;display:grid}.staff-message-admin-list article.reminder{--message-color:#96691d}.staff-message-admin-list article.urgent{--message-color:var(--red)}.staff-message-admin-icon{color:#fff;background:var(--message-color);border-radius:8px;place-items:center;width:36px;height:36px;display:grid}.staff-message-admin-details{min-width:0}.staff-message-admin-details>div{align-items:center;gap:6px;display:flex}.staff-message-admin-details>div small{color:var(--message-color);font-size:var(--font-compact);text-transform:uppercase;font-weight:800}.staff-message-admin-details>div .message-document-state{color:#315f80;align-items:center;gap:3px;display:inline-flex}.message-state{font-size:var(--font-compact);border-radius:99px;padding:4px 6px;font-weight:800}.message-state.active{color:#237259;background:#e5f1eb}.message-state.scheduled{color:#315f80;background:#e6eef4}.message-state.expired{color:#68737b;background:#eceff0}.staff-message-admin-details h3{color:var(--navy);margin:7px 0 4px;font-size:12px}.staff-message-admin-details p{color:#596670;font-size:var(--font-label);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;line-height:1.45;display:-webkit-box;overflow:hidden}.staff-message-admin-details footer{color:var(--muted);font-size:var(--font-compact);flex-wrap:wrap;gap:6px 13px;margin-top:9px;display:flex}.staff-message-admin-list .event-actions{align-self:center}.timetable-manager-card{overflow:hidden}.timetable-manager-toolbar{border-bottom:1px solid var(--soft-line);justify-content:space-between;align-items:flex-start;gap:25px;padding:25px 26px 18px;display:flex}.timetable-manager-toolbar h2{color:var(--navy);margin:4px 0 5px;font-size:25px;font-weight:500}.timetable-manager-toolbar p{color:var(--muted);font-size:var(--font-label);margin:0;line-height:1.5}.timetable-manager-controls{gap:9px;display:flex}.timetable-manager-controls label{min-width:170px;color:var(--muted);font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.08em;gap:5px;font-weight:800;display:grid}.timetable-manager-controls select,.timetable-manager-controls input{border:1px solid var(--line);min-height:36px;color:var(--navy);font-size:var(--font-label);text-transform:none;letter-spacing:0;background:#fff;border-radius:8px;padding:7px 9px;font-weight:700}.week-navigation{border-bottom:1px solid var(--line);background:#f7f6f3;grid-template-columns:auto 1fr;align-items:center;gap:15px;min-height:67px;padding:12px 20px;display:grid}.week-navigation>div{text-align:center}.week-navigation strong,.week-navigation span{display:block}.week-navigation strong{color:var(--navy);font-size:13px}.week-navigation span{color:var(--muted);font-size:var(--font-label);margin-top:3px}.admin-timetable-scroll{padding:18px 20px 23px;position:relative;overflow:auto}.admin-timetable-grid{border:1px solid var(--line);background:#fff;border-bottom:0;border-right:0;grid-template-columns:92px repeat(5,minmax(190px,1fr));min-width:1150px;display:grid}.admin-time-head,.admin-day-head,.admin-period-cell,.admin-timetable-slot{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.admin-time-head,.admin-day-head{background:#f2f1ed;justify-content:center;align-items:center;min-height:55px;display:flex}.admin-time-head{color:var(--muted);font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.1em;font-weight:800}.admin-day-head{gap:7px}.admin-day-head strong{color:var(--navy);font-size:var(--font-label)}.admin-day-head span{color:var(--muted);font-size:var(--font-compact)}.admin-period-cell{background:#f8f7f4;flex-direction:column;justify-content:center;min-height:68px;padding:9px 7px;display:flex}.admin-period-cell strong,.admin-period-cell span{display:block}.admin-period-cell strong{color:var(--navy);font-size:var(--font-label);line-height:1.25}.admin-period-cell span{color:var(--muted);font-size:var(--font-compact);margin-top:4px}.admin-timetable-slot{background:#fff;align-items:stretch;min-height:68px;padding:5px;transition:background .12s,box-shadow .12s;display:flex}.admin-timetable-slot.drop-ready{box-shadow:inset 0 0 0 2px var(--blue);background:#eaf2f9}.empty-slot-button{color:#0000;width:100%;min-height:55px;font-size:var(--font-compact);cursor:pointer;background:0 0;border:1px dashed #0000;border-radius:7px;justify-content:center;align-items:center;gap:5px;font-weight:800;display:flex}.admin-timetable-slot:hover .empty-slot-button{color:var(--muted);background:#fafaf8;border-color:#cfd6dc}.empty-slot-button:focus-visible{color:var(--muted);background:#fafaf8;border-color:#cfd6dc}.admin-slot-card{border:1px solid var(--slot-color);grid-template-columns:14px minmax(0,1fr) 14px;align-items:center;gap:5px;width:100%;min-height:55px;padding:7px 8px 7px 6px;display:grid;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.admin-slot-card{border:1px solid color-mix(in srgb, var(--slot-color) 30%, white)}}.admin-slot-card{border-left:4px solid var(--slot-color);color:var(--navy);background:var(--slot-color);border-radius:7px}@supports (color:color-mix(in lab, red, red)){.admin-slot-card{background:color-mix(in srgb, var(--slot-color) 9%, white)}}.admin-slot-card{cursor:grab}.admin-slot-card:active{cursor:grabbing}.admin-slot-card>svg:first-child{color:#a4abb1}.admin-slot-card>svg:last-child{color:var(--slot-color)}.admin-slot-card strong,.admin-slot-card span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.admin-slot-card strong{font-size:var(--font-label)}.admin-slot-card span{color:var(--muted);font-size:var(--font-compact);text-transform:capitalize;margin-top:3px}.admin-slot-card.meeting,.admin-slot-card.activity{--slot-color:#52697d}.timetable-loading-cover{color:var(--navy);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);font-size:var(--font-label);background:#ffffffb8;justify-content:center;align-items:center;gap:8px;font-weight:800;display:flex;position:absolute;inset:18px 20px 23px}.slot-editor-modal{z-index:90;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.slot-editor-sheet{z-index:1;border:1px solid var(--line);background:var(--paper);border-radius:15px;width:min(520px,100%);padding:29px;position:relative;box-shadow:0 30px 90px #0000004d}.slot-editor-sheet h2{color:var(--navy);margin:5px 0;font-size:28px;font-weight:500}.slot-editor-sheet>p{color:var(--muted);font-size:var(--font-label);margin:0 0 22px}.slot-form-grid{padding:0}.clear-slot-note{color:#7a561b;font-size:var(--font-label);background:#f8eddc;border-radius:8px;grid-column:1/-1;padding:12px;line-height:1.5}.import-center{gap:14px;display:grid}.import-status-grid{grid-template-columns:repeat(3,1fr);gap:11px;display:grid}.import-status-card{grid-template-columns:38px minmax(0,1fr);align-items:start;gap:12px;min-height:104px;padding:18px;display:grid}.import-status-card>svg{border-radius:9px;width:37px;height:37px;padding:9px}.import-status-card.ready>svg{color:var(--green);background:#e6f2ec}.import-status-card.offline>svg{color:#a33c48;background:#f5e7e9}.import-status-card.private>svg{color:#315f80;background:#e5edf3}.import-status-card span,.import-status-card strong{display:block}.import-status-card span{color:var(--muted);font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.09em;font-weight:800}.import-status-card strong{color:var(--navy);margin-top:4px;font-size:13px}.import-status-card p{color:var(--muted);font-size:var(--font-compact);margin:5px 0 0;line-height:1.45}.import-workspace,.import-history-card{overflow:hidden}.import-heading p{color:var(--muted);font-size:var(--font-label);margin:5px 0 0}.import-heading>svg,.import-history-card .card-heading>svg{color:var(--red)}.import-kind-switch{grid-template-columns:1fr 1fr;gap:7px;margin:0 23px;display:grid}.import-kind-switch button{border:1px solid var(--line);min-height:65px;color:var(--muted);text-align:left;cursor:pointer;background:#fff;border-radius:9px;grid-template-columns:31px minmax(0,1fr);align-items:center;gap:10px;padding:11px 14px;display:grid}.import-kind-switch button>svg{color:#87939d}.import-kind-switch strong,.import-kind-switch small{display:block}.import-kind-switch strong{color:var(--navy);font-size:var(--font-label)}.import-kind-switch small{color:var(--muted);font-size:var(--font-compact);margin-top:3px}.import-kind-switch button.active{background:#fbf1f2;border-color:#d9a9b0;box-shadow:inset 0 0 0 1px #a42a3814}.import-kind-switch button.active>svg,.import-kind-switch button.active strong{color:var(--red)}.import-select-stage{padding:18px 23px 24px}.import-context-fields{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px;display:grid}.import-context-fields label{color:var(--navy);font-size:var(--font-compact);gap:5px;font-weight:800;display:grid}.import-context-fields select,.import-context-fields input{border:1px solid var(--line);min-height:39px;color:var(--navy);font:600 var(--font-label) var(--school-font);background:#fff;border-radius:8px;padding:8px 10px}.import-dropzone{min-height:185px;color:var(--muted);text-align:center;cursor:pointer;background:#faf9f6;border:2px dashed #c9cfd4;border-radius:11px;align-content:center;place-items:center;gap:8px;padding:25px;transition:border-color .15s,background .15s;display:grid}.import-dropzone:hover,.import-dropzone.has-file{background:#fdf6f7;border-color:#b76b76}.import-dropzone input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.import-dropzone>svg{width:32px;height:32px;color:var(--red)}.import-dropzone strong{color:var(--navy);font-size:13px}.import-dropzone span{font-size:var(--font-compact)}.import-stage-actions{justify-content:space-between;align-items:center;gap:14px;margin-top:13px;display:flex}.import-stage-actions>span{color:var(--muted);font-size:var(--font-compact);line-height:1.45}.import-stage-actions .button svg,.import-confirm-bar .button svg,.timetable-import-toolbar .button svg{width:15px}.import-review-stage{padding-top:18px}.import-review-summary{justify-content:space-between;align-items:flex-end;gap:20px;padding:0 23px 15px;display:flex}.import-review-summary h3{color:var(--navy);margin:5px 0 3px;font-size:16px}.import-review-summary p{color:var(--muted);font-size:var(--font-label);margin:0}.import-counts{gap:6px;display:flex}.import-counts span{min-width:72px;font-size:var(--font-compact);text-align:center;border-radius:7px;padding:7px 9px}.import-counts b{margin-bottom:2px;font-size:13px;display:block}.import-counts .new{color:#236b53;background:#e8f3ed}.import-counts .update{color:#7a5719;background:#f7eedb}.import-counts .unchanged{color:#65717a;background:#edf0f1}.import-warnings{color:#835f1e;background:#fbf3e2;border:1px solid #ead6aa;border-radius:8px;align-items:flex-start;gap:9px;margin:0 23px 14px;padding:12px 13px;display:flex}.import-warnings>svg{flex:none;width:17px}.import-warnings strong{font-size:var(--font-label);display:block}.import-warnings p{color:#806d45;font-size:var(--font-compact);margin:4px 0 0;line-height:1.45}.import-table-scroll{border-top:1px solid var(--line);border-bottom:1px solid var(--line);width:100%;overflow-x:auto}.calendar-import-table{min-width:1120px}.timetable-import-table{min-width:900px}.import-table-head,.calendar-import-table .import-table-row,.timetable-import-table .import-table-row{align-items:center;gap:8px;display:grid}.calendar-import-table .import-table-head,.calendar-import-table .import-table-row{grid-template-columns:36px minmax(250px,1.4fr) 130px 130px minmax(165px,.7fr) 72px}.timetable-import-table .import-table-head,.timetable-import-table .import-table-row{grid-template-columns:150px 190px 150px minmax(220px,1fr) 38px}.import-table-head{color:#818b93;min-height:38px;font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.08em;background:#f2f1ed;padding:7px 19px;font-weight:800}.import-table-row{border-top:1px solid var(--soft-line);background:#fff;min-height:54px;padding:7px 19px}.import-table-row.unchanged{background:#fafaf8}.import-table-row.invalid{background:#fff2f3}.import-table-row input:not([type=checkbox]),.import-table-row select{width:100%;min-height:35px;color:var(--ink);font:500 var(--font-label) var(--school-font);background:0 0;border:1px solid #0000;border-radius:6px;padding:7px 8px}.import-table-row:hover input:not([type=checkbox]),.import-table-row:hover select,.import-table-row input:focus,.import-table-row select:focus{border-color:var(--line);background:#fff}.import-check{place-items:center;width:21px;height:21px;display:grid;position:relative}.import-check input{opacity:0;cursor:pointer;position:absolute;inset:0}.import-check span{background:#fff;border:1px solid #bcc5cb;border-radius:4px;width:17px;height:17px}.import-check input:checked+span{border-color:var(--green);background:var(--green);box-shadow:inset 0 0 0 4px #fff}.import-check input:disabled+span{box-shadow:none;background:#e7eaec}.import-change{font-size:var(--font-compact);text-align:center;text-transform:capitalize;border-radius:99px;padding:5px 6px;font-weight:800}.import-change.new{color:#236b53;background:#e8f3ed}.import-change.update{color:#7a5719;background:#f7eedb}.import-change.unchanged{color:#68737b;background:#eceff0}.timetable-import-toolbar{justify-content:space-between;align-items:center;gap:15px;padding:0 23px 13px;display:flex}.timetable-import-toolbar p{color:var(--muted);font-size:var(--font-label);margin:0}.timetable-import-toolbar p strong{color:var(--navy)}.import-inline-error{color:#8d2935;font-size:var(--font-label);background:#f8e9eb;border-radius:7px;align-items:center;gap:7px;margin:0 23px 13px;padding:10px 12px;display:flex}.import-inline-error svg,.import-table-row .icon-action svg{width:15px}.import-confirm-bar{background:#f7f6f3;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;min-height:78px;padding:13px 23px;display:grid}.import-confirm-bar>div{justify-content:center;align-items:center;gap:9px;display:flex}.import-confirm-bar>div>svg{color:var(--green)}.import-confirm-bar strong,.import-confirm-bar small{display:block}.import-confirm-bar strong{color:var(--navy);font-size:var(--font-label)}.import-confirm-bar small{color:var(--muted);font-size:var(--font-compact);margin-top:3px}.import-history-list{padding-bottom:10px;display:grid}.import-history-list article{border-top:1px solid var(--soft-line);grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:11px;min-height:73px;padding:12px 23px;display:grid}.import-history-icon{border-radius:8px;place-items:center;width:36px;height:36px;display:grid}.import-history-icon svg{width:17px}.import-history-icon.calendar{color:#315f80;background:#e6eef4}.import-history-icon.timetable{color:#267157;background:#e5f1eb}.import-history-list strong,.import-history-list small{display:block}.import-history-list strong{color:var(--navy);font-size:var(--font-label)}.import-history-list p{color:var(--muted);font-size:var(--font-compact);margin:3px 0}.import-history-list small{color:#9099a0;font-size:var(--font-compact)}.import-history-list article>span:last-child{color:var(--muted);font-size:var(--font-compact);background:#f1f2f1;border-radius:6px;padding:5px 7px;font-weight:800}@media (max-width:1180px){.page{padding-left:30px;padding-right:30px}.hero-stats{top:34px;right:30px}.hero-action{right:30px}.dashboard-columns,.side-stack,.planner-layout{grid-template-columns:1fr}.planner-summary{grid-template-columns:1fr 1fr;width:auto;position:static}.summary-card{order:1}.planner-sticky-actions{z-index:25;min-height:61px;color:var(--muted);border-top:1px solid var(--line);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#fffdfaf5;justify-content:flex-end;align-items:center;gap:8px;padding:10px 30px;display:flex;position:fixed;bottom:0;left:248px;right:0}.planner-sticky-actions>span{font-size:var(--font-label);margin-right:auto}.team-table-head{display:none}.team-progress-list article{grid-template-columns:1fr 1fr}.team-progress-list article>a{justify-content:flex-start}.manager-stat-grid{grid-template-columns:repeat(2,1fr)}.calendar-admin-layout{grid-template-columns:1fr}.calendar-records-card{max-height:none}.calendar-records-card .admin-event-list{max-height:620px}.import-status-grid{grid-template-columns:1fr 1fr}.import-status-card.private{grid-column:1/-1}.planning-mode-switcher,.unit-dates-layout,.curriculum-map-grid{grid-template-columns:1fr}}@media (max-width:860px){.sidebar{transition:transform .2s;transform:translate(-100%);box-shadow:20px 0 50px #00000040}.sidebar.sidebar-open{transform:translate(0)}.sidebar-close{color:#fff;cursor:pointer;background:0 0;border:0;place-items:center;margin-left:auto;display:grid}.sidebar-scrim{z-index:29;background:#0916248a;border:0;display:block;position:fixed;inset:0}.mobile-menu{z-index:28;color:#fff;background:var(--navy);cursor:pointer;border:1px solid #ffffff1f;border-radius:8px;place-items:center;width:39px;height:39px;display:grid;position:fixed;top:14px;left:14px;box-shadow:0 7px 18px #0f233a33}.app-main{margin-left:0}.page{padding:74px 18px 85px}.planner-sticky-actions{padding:9px 16px;left:0}.page-topbar{flex-direction:column}.preview-date{align-self:stretch}.dashboard-hero{padding-bottom:90px}.hero-stats{margin-top:22px;position:static}.hero-stats>div{flex:1}.hero-action{left:30px;right:auto}.side-stack{grid-template-columns:1fr}.today-list article{grid-template-columns:58px 1fr;padding:10px 0}.today-status{flex-direction:row;grid-column:2;justify-content:space-between;align-items:center;margin-top:8px}.today-main{padding-right:0}.plan-day{grid-template-columns:1fr;gap:5px}.plan-day-heading{grid-template-columns:35px 1fr auto}.plan-day-heading small{grid-column:auto}.source-footnote{margin-left:0}.class-grid{grid-template-columns:1fr}.planner-header{flex-direction:column;align-items:flex-start}.planner-header-actions{width:100%}.planner-header-actions .button{flex:1}.planner-layout{display:block}.planner-summary{margin-top:15px;display:grid}.planner-main{gap:12px}.planner-section{padding:24px 18px 25px 54px}.section-number{top:24px;left:14px}.outcome-list{grid-template-columns:1fr}.outcome-list label:nth-child(odd){border-right:0}.two-column-fields,.assessment-task-fields{grid-template-columns:1fr}.assessment-task-fields label.wide{grid-column:auto}.board-section-actions{flex-direction:column;align-items:flex-end}.board-workspace{grid-template-columns:1fr}.board-tools{grid-template-columns:repeat(5,1fr)}.board-tools button{min-height:40px}.adaptation-grid,.login-page{grid-template-columns:1fr}.login-brand-panel{min-height:330px;padding:30px}.login-message{margin:50px 0 35px}.login-message h1{font-size:44px}.login-security{display:none}.login-form-panel{padding:30px 18px}.manager-hero{flex-direction:column;align-items:flex-start}.manager-hero-progress{text-align:left;width:100%}.manager-hero-progress>div{width:100%}.manager-action-grid,.admin-layout{grid-template-columns:1fr}.timetable-manager-toolbar{flex-direction:column}.timetable-manager-controls{width:100%}.timetable-manager-controls label{flex:1}.import-review-summary{flex-direction:column;align-items:flex-start}.import-counts{width:100%}.import-counts span{flex:1}.assessment-overview-grid,.criterion-fields,.marking-setup-grid{grid-template-columns:1fr}.assessment-overview-grid label.wide{grid-column:auto}.curriculum-grade-tabs{grid-template-columns:repeat(6,1fr)}.curriculum-framework-summary,.curriculum-phase-tabs{grid-template-columns:repeat(2,1fr)}}@media (max-width:580px){.page-topbar h1{font-size:34px}.dashboard-hero{padding:24px 20px 85px}.hero-stats>div{min-width:0;padding:8px}.hero-action{bottom:22px;left:20px}.today-main{display:block}.today-meta{flex-direction:row;margin-top:6px}.today-status{display:grid}.card-heading{padding-left:18px;padding-right:18px}.outcome-coverage-heading{align-items:flex-start}.outcome-coverage-total{min-width:72px}.outcome-coverage-total strong{font-size:27px}.outcome-coverage-summary{grid-template-columns:1fr auto;padding-left:18px;padding-right:18px}.outcome-coverage-progress{grid-area:2/1/auto/-1}.outcome-coverage-summary>b{grid-area:1/2}.outcome-coverage-units{grid-template-columns:1fr;padding-left:18px;padding-right:18px}.outcome-coverage-warning{margin-left:18px;margin-right:18px}.outcome-coverage-rule{padding-left:18px;padding-right:18px}.plans-overview{grid-template-columns:1fr}.plans-overview>div{border-right:0;border-bottom:1px solid var(--line)}.plan-grid article{grid-template-columns:4px 50px 1fr}.plan-cta{flex-direction:row;grid-column:3;justify-content:space-between;align-items:center;padding:0 12px 12px 18px}.curriculum-overview,.curriculum-pathway-tabs,.igcse-pathway-intro{grid-template-columns:1fr}.curriculum-overview>div{border-bottom:1px solid #ffffff1f;border-right:0}.curriculum-grade-map{padding:18px}.curriculum-grade-tabs{grid-template-columns:repeat(4,1fr)}.planned-outcomes-heading,.curriculum-unit-plan-editor>header{flex-direction:column;align-items:flex-start}.curriculum-grade-options,.curriculum-unit-selectors,.authoritative-unit-grid{grid-template-columns:1fr}.curriculum-heading{grid-template-columns:42px 1fr 20px;padding:14px}.curriculum-count{display:none}.curriculum-body{padding:3px 16px 20px}.curriculum-strand-group{padding:13px}.curriculum-strand-group li{grid-template-columns:10px 1fr;gap:2px}.planner-title-row{align-items:flex-start}.planner-meta{flex-wrap:wrap;margin-left:0}.planner-header-actions{display:none}.planner-section{padding-top:61px;padding-left:16px}.section-number{top:18px;left:16px}.section-heading{display:block}.selection-count,.duration-total{margin-top:12px;display:inline-flex}.question-heading{align-items:start;display:grid}.question-heading>div{flex-wrap:wrap;margin-top:8px}.phase-card{grid-template-columns:31px minmax(0,1fr)}.phase-order svg{display:none}.phase-actions{flex-direction:row;grid-column:2;justify-content:flex-end}.board-section.collapsed .section-heading{display:block}.board-section-actions{align-items:stretch;margin-top:13px}.board-topline{align-items:flex-start;gap:8px}.board-history{flex-wrap:wrap;justify-content:flex-end}.board-tools{grid-template-columns:repeat(5,1fr)}.planner-summary{grid-template-columns:1fr}.planner-sticky-actions>span{display:none}.planner-sticky-actions .button{flex:1}.planner-loading{text-align:center;padding-left:20px;padding-right:20px}.picker-modal{padding:10px}.picker-sheet{max-height:92vh}.picker-header,.picker-options,.picker-footer{padding-left:17px;padding-right:17px}.login-brand-panel{min-height:285px}.login-brand-lockup{padding:10px 13px}.login-brand-lockup img{width:100%;height:auto}.login-message{margin:35px 0 15px}.login-message h1{font-size:37px}.login-message p{font-size:12px}.login-form{padding:29px 22px}.topbar-actions{flex-direction:column;width:100%}.teacher-view-select{width:100%}.manager-stat-grid{grid-template-columns:1fr}.team-progress-list article{grid-template-columns:1fr;gap:11px}.manager-hero{padding:26px 22px}.manager-hero-progress strong{font-size:38px}.admin-tabs{grid-template-columns:1fr;display:grid}.admin-form-grid{grid-template-columns:1fr}.admin-form-grid label.wide{grid-column:auto}.outcome-edit-row{grid-template-columns:1fr}.outcome-edit-row .button{justify-self:end}.calendar-records-card .admin-event-list article{grid-template-columns:44px minmax(0,1fr)}.event-actions{grid-column:2}.unit-date-list article{grid-template-columns:1fr auto}.unit-date-range{grid-column:1/-1}.unit-date-list .event-actions{grid-area:2/2}.admin-form-grid fieldset.wide{grid-column:auto}.timetable-manager-toolbar{padding:22px 18px}.timetable-manager-controls{flex-direction:column}.timetable-manager-controls label{width:100%}.week-navigation{grid-template-columns:1fr}.week-navigation>div{grid-row:1}.week-navigation>.date-navigator{grid-row:2;justify-self:center}.slot-editor-sheet{padding:25px 20px}.import-status-grid,.import-kind-switch,.import-context-fields{grid-template-columns:1fr}.import-status-card.private{grid-column:auto}.import-kind-switch,.import-review-summary{margin-left:18px;margin-right:18px}.import-select-stage{padding-left:18px;padding-right:18px}.import-stage-actions{flex-direction:column;align-items:stretch}.import-stage-actions .button{width:100%}.import-warnings,.import-inline-error{margin-left:18px;margin-right:18px}.timetable-import-toolbar{flex-direction:column;align-items:stretch;padding-left:18px;padding-right:18px}.import-confirm-bar{grid-template-columns:1fr 1fr}.import-confirm-bar>div{grid-area:1/1/auto/-1}.import-confirm-bar>button{grid-row:2}.import-confirm-bar>button:last-child{justify-self:stretch}.planning-mode-switcher{padding:18px}.planning-mode-options{grid-template-columns:1fr}.planning-mode-options>button{min-height:56px}.assessment-criteria-list article{grid-template-columns:1fr}.assessment-criteria-list article>span{display:none}.rubric-section .section-heading>.button{margin-top:12px}}@media (max-width:700px){.message-recipient-options{grid-template-columns:1fr}.staff-message-admin-list article{grid-template-columns:36px minmax(0,1fr)}.staff-message-admin-list .event-actions{grid-column:2;justify-self:start}}@media (max-width:580px){.staff-message-banner{grid-template-columns:34px minmax(0,1fr) 52px;padding:13px}.staff-message-banner-icon{width:33px;height:33px}.staff-message-banner h2{font-size:13px}.staff-message-document-button{grid-template-rows:auto auto;grid-template-columns:1fr;justify-items:center;min-width:50px;min-height:52px;padding:6px}.staff-message-document-button svg{grid-row:auto}.staff-message-document-button strong{align-self:start}.staff-message-document-button small{display:none}.staff-notice-modal-backdrop{place-items:stretch stretch;padding:0}.staff-notice-modal{border:0;border-radius:0;width:100%;max-height:100vh;padding:34px 25px 44px}.staff-notice-document-header{min-height:54px}.staff-notice-document-header img{width:68%}.staff-notice-document-header div span{display:none}.staff-notice-document-header strong{font-size:10px}.staff-notice-document-meta{margin-top:28px}.staff-notice-document-meta h2{padding-right:20px;font-size:21px}}.reflection-sheet select{border:1px solid var(--line);min-height:40px;color:var(--navy);font:600 var(--font-label) var(--school-font);background:#fff;border-radius:8px;padding:8px 10px}.reflection-help{color:var(--muted);font-size:var(--font-label);margin:12px 0 2px;line-height:1.5}.manager-action-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.observation-policy{border:1px solid var(--line);background:#ffffffa8;border-radius:10px;align-items:center;gap:11px;max-width:310px;padding:13px 15px;display:flex}.observation-policy>svg{color:var(--red)}.observation-policy strong,.observation-policy span{display:block}.observation-policy strong{color:var(--navy);font-size:var(--font-label)}.observation-policy span{color:var(--muted);font-size:var(--font-compact);margin-top:3px;line-height:1.4}.observation-scheduler{margin-bottom:15px;padding-bottom:22px;overflow:hidden}.observation-scheduler .card-heading>svg{color:var(--red)}.observation-schedule-grid{grid-template-columns:1fr 1fr;gap:12px;padding:0 23px 18px;display:grid}.observation-schedule-grid label{color:var(--navy);font-size:var(--font-label);gap:6px;font-weight:800;display:grid}.observation-schedule-grid label.wide{grid-column:1/-1}.observation-schedule-grid input,.observation-schedule-grid select{border:1px solid var(--line);width:100%;min-height:41px;color:var(--ink);font:600 var(--font-label) var(--school-font);background:#fff;border-radius:8px;padding:8px 10px}.observation-week-field{gap:6px;display:grid}.observation-week-field>span{color:var(--navy);font-size:var(--font-label);font-weight:800}.observation-week-field .date-navigator{width:100%;min-width:0;min-height:41px}.observation-week-field .date-navigator input{border:0;min-height:0;padding:0}.observation-selection-summary{border:1px solid #cadcdf;border-left:4px solid var(--green);background:#f1f7f4;border-radius:9px;justify-content:space-between;align-items:center;gap:20px;margin:0 23px;padding:14px;display:flex}.observation-selection-summary span,.observation-selection-summary strong,.observation-selection-summary small{display:block}.observation-selection-summary span{color:var(--green);font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.08em;font-weight:800}.observation-selection-summary strong{color:var(--navy);margin-top:3px;font-size:12px}.observation-selection-summary small{color:var(--muted);font-size:var(--font-label);margin-top:4px}.observations-list-card{overflow:hidden}.observation-loading{min-height:150px;color:var(--muted);font-size:var(--font-label);justify-content:center;align-items:center;gap:8px;display:flex}.observation-record-list{border-top:1px solid var(--soft-line)}.observation-record{border-bottom:1px solid var(--soft-line);grid-template-columns:48px minmax(0,1fr) auto 118px;align-items:center;gap:15px;min-height:94px;padding:14px 23px;display:grid}.observation-record:last-child{border-bottom:0}.observation-date{color:#fff;background:var(--navy);border-radius:8px;align-content:center;place-items:center;width:45px;height:51px;display:grid}.observation-date strong,.observation-date span{display:block}.observation-date strong{font-size:17px;font-weight:500;line-height:1}.observation-date span{font-size:var(--font-compact);text-transform:uppercase;margin-top:3px}.observation-record-main>span{color:var(--red);font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.07em;font-weight:800}.observation-record-main h3{color:var(--navy);margin:4px 0;font-size:13px;font-weight:600}.observation-record-main p{color:var(--muted);font-size:var(--font-label);align-items:center;gap:5px;margin:0;display:flex}.observation-status{font-size:var(--font-compact);border-radius:999px;justify-content:center;align-items:center;gap:5px;padding:6px 9px;font-weight:800;display:inline-flex}.observation-status.scheduled{color:#315d7e;background:#e7eff5}.observation-status.draft{color:#806020;background:#f5eddc}.observation-status.completed{color:#247259;background:#e5f1eb}.observation-status.large{font-size:var(--font-label);padding:9px 12px}.observation-record>a{color:var(--red);font-size:var(--font-label);justify-content:flex-end;align-items:center;gap:5px;font-weight:800;display:flex}.observation-empty{text-align:center;align-content:center;place-items:center;min-height:220px;display:grid}.observation-empty>svg{color:var(--red)}.observation-empty h3{color:var(--navy);margin:10px 0 4px;font-size:18px}.observation-empty p{color:var(--muted);font-size:var(--font-label);margin:0}.observation-dashboard-alert{border:1px solid #d7bcc1;border-left:5px solid var(--red);color:inherit;background:#fff7f7;border-radius:11px;grid-template-columns:38px minmax(0,1fr) 20px;align-items:center;gap:12px;margin-bottom:14px;padding:15px 18px;display:grid;box-shadow:0 8px 24px #4c1a220d}.observation-dashboard-alert>span{color:#fff;background:var(--red);border-radius:9px;place-items:center;width:36px;height:36px;display:grid}.observation-dashboard-alert small,.observation-dashboard-alert strong,.observation-dashboard-alert p{display:block}.observation-dashboard-alert small{color:var(--red);font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.08em;font-weight:800}.observation-dashboard-alert strong{color:var(--navy);margin-top:3px;font-size:12px}.observation-dashboard-alert p{color:var(--muted);font-size:var(--font-label);margin:3px 0 0}.observation-dashboard-alert>svg{color:var(--red)}.lesson-slot.observation-slot{background:#fff7f7;border-color:#c88b94;box-shadow:inset 0 0 0 1px #a42a382b}.lesson-slot.observation-slot:before{background:var(--red)}.timetable-observation-badge{color:#fff;background:var(--red);width:fit-content;font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.05em;border-radius:4px;margin-top:5px;padding:3px 6px;font-weight:800}.observation-editor-page{padding-bottom:105px}.observation-editor-header{align-items:flex-end}.back-link{color:var(--muted);font-size:var(--font-label);align-items:center;gap:5px;margin-bottom:12px;font-weight:800;display:inline-flex}.observation-context-card{grid-template-columns:repeat(3,1fr);margin-bottom:13px;display:grid;overflow:hidden}.observation-context-card>div{border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:68px;padding:14px 17px}.observation-context-card>div:nth-child(3n){border-right:0}.observation-context-card>div:nth-child(n+4){border-bottom:0}.observation-context-card span,.observation-context-card strong{display:block}.observation-context-card span{color:var(--muted);font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.08em;font-weight:800}.observation-context-card strong{color:var(--navy);font-size:var(--font-label);margin-top:5px}.observation-teacher-notice{align-items:flex-start;gap:16px;padding:26px;display:flex}.observation-teacher-notice>svg{color:var(--green)}.observation-teacher-notice h2{color:var(--navy);margin:0 0 6px;font-size:21px}.observation-teacher-notice p{color:var(--muted);font-size:var(--font-label);margin:0;line-height:1.55}.observation-rating-guide{border:1px solid var(--line);background:#f6f5f2;border-radius:9px;flex-wrap:wrap;align-items:center;gap:8px;margin:14px 0;padding:11px 14px;display:flex}.observation-rating-guide>strong{color:var(--navy);font-size:var(--font-label);margin-right:5px}.observation-rating-guide span{color:var(--muted);font-size:var(--font-compact);background:#fff;border-radius:5px;padding:5px 7px}.observation-rating-guide span b{color:var(--red);margin-right:3px}.observation-rating-guide small{color:var(--muted);font-size:var(--font-compact);margin-left:auto}.observation-form-sections{gap:13px;display:grid}.observation-form-section{overflow:hidden}.observation-section-title{color:#fff;background:var(--navy);justify-content:space-between;align-items:center;min-height:45px;padding:12px 18px;display:flex}.observation-section-title span{font-size:13px;font-weight:700}.observation-section-title small{color:#ffffff94;font-size:var(--font-compact)}.observation-criterion{border-bottom:1px solid var(--soft-line);padding:18px}.observation-criterion:last-child{border-bottom:0}.criterion-heading{grid-template-columns:minmax(190px,.65fr) minmax(620px,1.35fr);align-items:center;gap:20px;display:grid}.criterion-heading h3{color:var(--navy);margin:0;font-size:13px}.criterion-heading>div:first-child>span{color:var(--muted);font-size:var(--font-compact);margin-top:5px;display:block}.rating-buttons{grid-template-columns:repeat(4,1fr);gap:5px;display:grid}.rating-buttons button{border:1px solid var(--line);min-height:42px;color:var(--muted);text-align:left;cursor:pointer;background:#fff;border-radius:7px;grid-template-columns:18px 1fr 14px;align-items:center;gap:4px;padding:6px 8px;display:grid}.rating-buttons button b{color:var(--navy);font-size:var(--font-label)}.rating-buttons button span{font-size:var(--font-compact);line-height:1.2}.rating-buttons button svg{color:var(--green)}.rating-buttons button.selected{color:var(--navy);background:#edf6f1;border-color:#8ebead}.rating-buttons button:disabled{cursor:default;opacity:.8}.descriptor-grid{grid-template-columns:repeat(3,1fr);gap:6px;margin-top:13px;display:grid}.descriptor-grid>div{border:1px solid var(--soft-line);background:#fafaf8;border-radius:7px;grid-template-columns:21px 1fr;gap:7px;min-height:86px;padding:10px;display:grid}.descriptor-grid>div>b{width:20px;height:20px;color:var(--muted);font-size:var(--font-compact);background:#e8e9e9;border-radius:5px;place-items:center;display:grid}.descriptor-grid p{color:var(--muted);font-size:var(--font-compact);margin:0;line-height:1.5}.descriptor-grid>div.selected{background:#f0f7f3;border-color:#9fc9ba}.descriptor-grid>div.selected>b{color:#fff;background:var(--green)}.descriptor-grid>div.selected p{color:var(--ink)}.observation-narrative-card{margin-top:13px;padding-bottom:24px;overflow:hidden}.observation-narratives{grid-template-columns:1fr 1fr;gap:14px;padding:0 23px;display:grid}.observation-narratives label{color:var(--navy);font-size:var(--font-label);gap:6px;font-weight:800;display:grid}.observation-narratives textarea{resize:vertical;border:1px solid var(--line);width:100%;color:var(--ink);font:400 var(--font-label)/1.5 var(--school-font);background:#fff;border-radius:8px;padding:11px}.observation-narratives textarea[readonly]{background:#f8f7f4}.observation-sticky-actions{z-index:25;border-top:1px solid var(--line);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#fffdfaf5;justify-content:space-between;align-items:center;gap:20px;min-height:72px;padding:10px 34px;display:flex;position:fixed;bottom:0;left:248px;right:0}.observation-sticky-actions>div:first-child span,.observation-sticky-actions>div:first-child strong{display:block}.observation-sticky-actions>div:first-child span{color:var(--red);font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.08em;font-weight:800}.observation-sticky-actions>div:first-child strong{color:var(--navy);font-size:var(--font-label);margin-top:4px}.observation-sticky-actions>div:last-child{gap:8px;display:flex}.observation-sticky-actions.teacher{justify-content:space-between}@media (max-width:1180px){.manager-action-grid{grid-template-columns:repeat(2,1fr)}.criterion-heading{grid-template-columns:1fr}.observation-sticky-actions{left:248px}.observation-record{grid-template-columns:48px minmax(0,1fr) auto}.observation-record>a{grid-column:2/-1;justify-content:flex-start}}@media (max-width:860px){.observation-sticky-actions{left:0}.observation-context-card{grid-template-columns:repeat(2,1fr)}.observation-context-card>div,.observation-context-card>div:nth-child(3n),.observation-context-card>div:nth-child(n+4){border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.observation-context-card>div:nth-child(2n){border-right:0}.observation-context-card>div:nth-child(n+5){border-bottom:0}.descriptor-grid,.observation-narratives{grid-template-columns:1fr}}@media (max-width:580px){.manager-action-grid{grid-template-columns:1fr}.observation-policy{max-width:none}.observation-schedule-grid{grid-template-columns:1fr;padding-left:18px;padding-right:18px}.observation-schedule-grid label.wide{grid-column:auto}.observation-selection-summary{flex-direction:column;align-items:stretch;margin:0 18px}.observation-record{grid-template-columns:45px minmax(0,1fr);padding:14px 18px}.observation-record .observation-status{grid-column:2;justify-self:start}.observation-record>a{grid-column:2}.rating-buttons{grid-template-columns:1fr 1fr}.criterion-heading{min-width:0}.observation-context-card{grid-template-columns:1fr}.observation-context-card>div,.observation-context-card>div:nth-child(2n),.observation-context-card>div:nth-child(3n),.observation-context-card>div:nth-child(n+4),.observation-context-card>div:nth-child(n+5){border-right:0;border-bottom:1px solid var(--line)}.observation-context-card>div:last-child{border-bottom:0}.observation-sticky-actions{flex-direction:column;align-items:stretch;min-height:92px;padding:10px 14px}.observation-sticky-actions>div:last-child,.observation-sticky-actions.teacher>.button{width:100%}.observation-sticky-actions>div:last-child .button{flex:1}.observation-sticky-actions>div:first-child{display:none}.observation-editor-page{padding-bottom:125px}}@media (max-width:860px){.timetable-heading,.manager-progress-heading{flex-direction:column;align-items:flex-start}.timetable-week-actions{justify-content:flex-start;width:100%}.manager-progress-heading .date-navigator{width:100%}.calendar-card-wide .calendar-layout{grid-template-columns:1fr}.calendar-card-wide .calendar-events-panel{border-left:0;border-top:1px solid var(--soft-line)}.gradebook-topbar,.gradebook-controls{flex-direction:column;align-items:flex-start}.gradebook-controls>div:first-child{flex-wrap:wrap;width:100%}.roster-form,.grading-component-fields,.semester-row,.intschool-import-summary{grid-template-columns:1fr 1fr}.roster-form .button,.semester-row .button{width:100%}}@media (max-width:580px){.date-navigator{width:100%;min-width:0}.timetable-week-actions .date-navigator{width:100%}.timetable-week-actions .week-chip{text-align:center;width:100%}.month-controls input{width:104px}.outcome-edit-row,.outcome-add-row{grid-template-columns:1fr}.outcome-row-actions,.outcome-add-row .button{justify-self:end}.roster-form,.grading-component-fields,.semester-row{grid-template-columns:1fr}.roster-heading-actions,.intschool-import-actions{flex-direction:column;width:100%}.roster-heading-actions .button,.intschool-import-actions .button{width:100%}.gradebook-controls>div:first-child,.qwen-status{flex-direction:column;align-items:flex-start}.gradebook-controls label{width:100%}.grading-component summary{grid-template-columns:1fr auto 18px}.grading-component summary .component-drag{display:none}}.guided-tutorial{z-index:120;position:relative}.tutorial-backdrop,.tutorial-spotlight{pointer-events:none;position:fixed}.tutorial-backdrop{z-index:118;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:#071422a8;inset:0}.tutorial-spotlight{z-index:119;border:3px solid #f3c04f;border-radius:13px;transition:top .2s,left .2s,width .2s,height .2s;box-shadow:0 0 0 9999px #071422a8,0 0 0 7px #f3c04f33,0 16px 40px #00000038}.tutorial-card{z-index:121;color:#fff;background:#102c46;border:1px solid #ffffff26;border-radius:15px;width:min(390px,100vw - 32px);padding:22px;position:fixed;bottom:28px;right:28px;box-shadow:0 22px 70px #0000005c}.tutorial-progress{color:#d6a0a7;font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.11em;justify-content:space-between;align-items:center;gap:14px;font-weight:800;display:flex}.tutorial-progress strong{color:#ffffffb8;font-size:var(--font-compact)}.tutorial-progress-track{background:#ffffff1f;border-radius:99px;height:4px;margin-top:9px;overflow:hidden}.tutorial-progress-track i{border-radius:inherit;background:#f3c04f;height:100%;transition:width .2s;display:block}.tutorial-card h2{color:#fff;margin:19px 0 8px;font-size:22px;font-weight:600;line-height:1.15}.tutorial-card>p{color:#ffffffb8;font-size:var(--font-label);margin:0;line-height:1.65}.tutorial-error{color:#ffd6db;font-size:var(--font-label);background:#a42a3861;border-radius:7px;margin-top:13px;padding:9px 10px;line-height:1.45}.tutorial-actions{justify-content:space-between;align-items:center;gap:9px;margin-top:20px;display:flex}.tutorial-actions .button{min-width:103px}.tutorial-actions .button.secondary{color:#fff;background:#ffffff12;border-color:#ffffff40}.tutorial-actions .button.secondary:disabled{opacity:.34}.tutorial-actions .button.primary{background:#b63c4a;border-color:#b63c4a;margin-left:auto}@media (max-width:580px){.tutorial-card{width:calc(100vw - 24px);padding:18px;bottom:12px;right:12px}.tutorial-card h2{margin-top:15px;font-size:19px}.tutorial-card>p{font-size:var(--font-label)}}.gradebook-table-wrap{overflow:hidden}.gradebook-table-wrap table{table-layout:fixed;width:100%;min-width:0}.gradebook-table-wrap .student-column{width:18%}.gradebook-table-wrap .formative-column{width:27%}.gradebook-table-wrap .comment-column{width:20%}.gradebook-table-wrap .score-column{width:9.3%}.assessment-table-wrap .assessment-outcomes-column{width:42%}.assessment-table-wrap .student-column{width:18%}.assessment-table-wrap .score-column{width:8.5%}.assessment-table-wrap .comment-column{width:23%}.gradebook-table-wrap th,.gradebook-table-wrap td{overflow-wrap:anywhere;min-width:0}.gradebook-table-wrap td:first-child{min-width:0}.gradebook-table-wrap td>strong{font-size:15px;line-height:1.2}.gradebook-table-wrap textarea{box-sizing:border-box;width:100%;max-width:100%}.compact-formative-scores,.assessment-outcome-scores{gap:6px;display:grid}.compact-formative-scores label,.assessment-outcome-scores label{grid-template-columns:minmax(0,1fr) minmax(74px,43%);align-items:center;gap:7px;min-width:0;display:grid}.compact-formative-scores label>span,.assessment-outcome-scores label>span{min-width:0;color:var(--navy);font-size:var(--font-label);text-overflow:ellipsis;white-space:nowrap;font-weight:700;line-height:1.25;overflow:hidden}.compact-formative-scores label>span small{color:var(--muted);font-size:var(--font-compact);font-weight:600}.gradebook-table-wrap .compact-formative-scores select,.gradebook-table-wrap .assessment-outcome-scores select{width:100%;min-width:0;min-height:30px;font-size:var(--font-label)}.assessment-gradebook{margin-bottom:20px}.assessment-gradebook-heading{align-items:end}.assessment-gradebook-actions{align-items:end;gap:10px;display:flex}.assessment-gradebook-actions label{color:var(--muted);font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.06em;gap:5px;display:grid}.assessment-gradebook-actions>label>select{border:1px solid var(--line);min-width:230px;min-height:34px;color:var(--navy);font:inherit;font-size:var(--font-label);text-transform:none;letter-spacing:0;background:#fff;border-radius:6px;padding:7px 9px}.total-grade-cell{background:#f2f7f2}.total-grade-cell>b{color:var(--green)!important;font-size:17px!important}.summative-reminder{background:#fbf7ee;border-color:#d8c6a2}@media (max-width:900px){.gradebook-table-wrap th,.gradebook-table-wrap td{padding:8px 6px}.gradebook-table-wrap td>strong{font-size:13px}.compact-formative-scores label,.assessment-outcome-scores label{grid-template-columns:1fr;gap:3px}.assessment-gradebook-heading,.assessment-gradebook-actions{align-items:stretch}.assessment-gradebook-actions{flex-direction:column}}.gradebook-view-switch{border:1px solid var(--line);background:#f4f6f7;border-radius:8px;gap:4px;padding:3px;display:inline-flex}.gradebook-view-switch .button{background:0 0;border:0}.gradebook-view-switch .button.active{color:var(--navy);background:#fff;box-shadow:0 1px 4px #162d411a}.report-writing{gap:16px;display:grid}.report-toolbar{justify-content:space-between;align-items:end;gap:18px;padding:15px 18px;display:flex}.report-toolbar-controls{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.report-toolbar label,.report-due-date{gap:5px;display:grid}.report-toolbar label>span,.report-due-date>span,.report-additional-comments>span,.report-comment-fields label>span{color:var(--muted);font-size:var(--font-label);letter-spacing:.06em;text-transform:uppercase;font-weight:700}.report-toolbar select{border:1px solid var(--line);min-width:210px;min-height:36px;color:var(--navy);font:inherit;background:#fff;border-radius:6px;padding:6px 9px}.report-due-date{border-left:1px solid var(--line);justify-content:center;min-width:130px;min-height:36px;padding:0 11px}.report-due-date strong{color:var(--navy);font-size:12px}.qwen-status i.connected{background:var(--green)}.report-writer-layout{grid-template-columns:minmax(210px,250px) minmax(0,1fr);align-items:start;gap:16px;display:grid}.report-student-list{max-height:calc(100vh - 36px);position:sticky;top:18px;overflow:hidden}.report-student-list .card-heading{padding:15px 15px 10px}.report-student-list .card-heading h2{font-size:17px}.report-student-list .card-heading>span{color:var(--green);font-size:var(--font-label);font-weight:800}.report-student-list>div:last-child{max-height:calc(100vh - 115px);padding:0 7px 8px;overflow-y:auto}.report-student-list button{width:100%;color:var(--navy);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;grid-template-columns:25px minmax(0,1fr) auto;align-items:center;gap:8px;padding:9px;display:grid}.report-student-list button:hover,.report-student-list button.active{background:#edf3f6}.report-student-list button.active{box-shadow:inset 3px 0 var(--red)}.report-student-list button>span{width:22px;height:22px;font-size:var(--font-label);background:#e5eaed;border-radius:50%;place-items:center;font-weight:800;display:grid}.report-student-list button>div{gap:2px;min-width:0;display:grid}.report-student-list button strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.report-student-list button small{color:var(--muted);font-size:var(--font-label)}.report-student-list button>svg{color:var(--green)}.report-student-editor{gap:16px;min-width:0;display:grid}.report-student-heading,.report-evidence-card,.report-bank-card,.report-output-card{padding:18px}.report-student-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.report-student-heading h2{color:var(--navy);margin:2px 0;font-size:25px}.report-student-heading p{color:var(--muted);font-size:var(--font-label);margin:0}.report-student-navigation{gap:7px;display:flex}.report-total{color:var(--green);align-items:baseline;gap:3px;display:flex}.report-total strong{font-size:23px}.report-total span{color:var(--muted);font-size:var(--font-label)}.report-evidence-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.report-evidence-columns details,.report-bank-groups details{border:1px solid var(--line);background:#fbfcfc;border-radius:7px;overflow:hidden}.report-evidence-columns summary,.report-bank-groups summary{color:var(--navy);font-size:var(--font-label);cursor:pointer;justify-content:space-between;align-items:center;padding:10px 12px;font-weight:800;display:flex}.report-evidence-columns summary span{color:var(--muted)}.report-evidence-columns details>div{gap:8px;max-height:290px;padding:0 10px 10px;display:grid;overflow-y:auto}.report-evidence-columns article{background:#fff;border-radius:5px;padding:9px}.report-evidence-columns article strong{color:var(--navy);font-size:var(--font-label)}.report-evidence-columns article p,.report-evidence-columns article blockquote{color:#4f626e;font-size:var(--font-label);margin:5px 0 0;line-height:1.4}.report-evidence-columns article blockquote{border-left:2px solid #c5d3da;padding-left:8px;font-style:italic}.report-bank-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.report-bank-groups details>div{gap:5px;padding:0 8px 8px;display:grid}.report-bank-groups label{color:#425761;cursor:pointer;background:#fff;border:1px solid #0000;border-radius:5px;grid-template-columns:auto 23px minmax(0,1fr);align-items:start;gap:7px;padding:8px;display:grid}.report-bank-groups label.selected{background:#eef7f2;border-color:#9ebdb0}.report-bank-groups label b{color:var(--red);font-size:var(--font-label)}.report-bank-groups label span{font-size:var(--font-label);line-height:1.4}.report-additional-comments{gap:6px;margin-top:14px;display:grid}.report-additional-comments textarea,.report-comment-fields textarea{resize:vertical;border:1px solid var(--line);width:100%;color:var(--navy);font:inherit;background:#fff;border-radius:6px;padding:10px;font-size:12px;line-height:1.5}.report-comment-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.report-comment-fields label{gap:6px;display:grid}.report-output-actions{justify-content:flex-end;gap:8px;margin-top:12px;display:flex}.report-writer-loading,.report-empty{min-height:140px;color:var(--muted);justify-content:center;align-items:center;gap:9px;display:flex}.report-writing-reminder{background:#f1f7f4;border-color:#bfd3ca}.report-date-manager{padding:20px}.report-date-list{gap:9px;display:grid}.report-date-list article{border:1px solid var(--line);background:#fbfcfc;border-radius:7px;grid-template-columns:minmax(220px,1fr) minmax(180px,230px) auto;align-items:end;gap:14px;padding:13px;display:grid}.report-date-list article>div,.report-date-list label{gap:4px;display:grid}.report-date-list article strong{color:var(--navy);font-size:13px}.report-date-list article span,.report-date-list label{color:var(--muted);font-size:var(--font-label);text-transform:uppercase;letter-spacing:.05em}.report-date-list input{border:1px solid var(--line);min-height:35px;color:var(--navy);font:inherit;background:#fff;border-radius:6px;padding:6px 8px}@media (max-width:980px){.report-writer-layout{grid-template-columns:1fr}.report-student-list{max-height:none;position:static}.report-student-list>div:last-child{grid-template-columns:repeat(2,minmax(0,1fr));max-height:260px;display:grid}}@media (max-width:680px){.report-toolbar,.report-student-heading{flex-direction:column;align-items:stretch}.report-toolbar-controls,.report-student-navigation{grid-template-columns:1fr 1fr;display:grid}.report-toolbar label:first-child,.report-due-date{grid-column:1/-1}.report-toolbar select{width:100%;min-width:0}.report-evidence-columns,.report-bank-groups,.report-comment-fields,.report-date-list article,.report-student-list>div:last-child{grid-template-columns:1fr}}.showcase-credentials{border:1px solid #d7dee3;border-left:4px solid var(--red);background:#f7f8f8;border-radius:9px;grid-template-columns:minmax(78px,auto) 1fr;align-items:center;gap:7px 14px;margin:-8px 0 22px;padding:13px 15px;display:grid}.showcase-credentials span{color:var(--muted);font-size:var(--font-label);text-transform:uppercase;letter-spacing:.09em;font-weight:800}.showcase-credentials strong{color:var(--navy);letter-spacing:.02em;font-size:13px;font-weight:700}.showcase-global-banner{z-index:27;color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0f233af7;border-bottom:1px solid #ffffff1f;justify-content:space-between;align-items:center;gap:16px;min-height:46px;padding:7px 18px;display:flex;position:sticky;top:0;box-shadow:0 8px 24px #0f233a24}.showcase-global-banner>div{align-items:center;gap:8px;display:flex}.showcase-global-banner>div:first-child svg{color:#f0c45e;flex:none}.showcase-global-banner>div:first-child span{color:#ffffffbf;font-size:var(--font-label);letter-spacing:.01em}.showcase-global-banner>div:first-child strong{color:#fff;font-weight:800}.showcase-global-banner button{color:#ffffffdb;min-height:31px;font-size:var(--font-label);cursor:pointer;background:#ffffff12;border:1px solid #ffffff2e;border-radius:7px;justify-content:center;align-items:center;gap:6px;padding:6px 10px;font-weight:800;transition:border-color .15s,color .15s,background .15s;display:inline-flex}.showcase-global-banner button:hover:not(:disabled){color:#fff;background:#ffffff21;border-color:#ffffff5c}.showcase-global-banner button:focus-visible{outline-color:#f0c45e}.showcase-global-banner button:disabled{opacity:.58;cursor:wait}.showcase-page{max-width:1500px}.showcase-intro{isolation:isolate;color:#fff;background:radial-gradient(circle at 84% 18%,#b4344380,#0000 31%),linear-gradient(135deg,#0d2239 0%,#173f5f 62%,#102a43 100%);border-radius:18px;grid-template-columns:minmax(0,1.15fr) minmax(380px,.85fr);align-items:center;gap:clamp(30px,5vw,76px);min-height:520px;padding:clamp(40px,5vw,70px);display:grid;position:relative;overflow:hidden;box-shadow:0 26px 70px #0f233a2e}.showcase-intro:before{content:"";z-index:-1;border:78px solid #ffffff09;border-radius:50%;width:520px;height:520px;position:absolute;bottom:-255px;right:-250px}.showcase-intro:after{content:"";z-index:-1;opacity:.25;background-image:linear-gradient(#ffffff09 1px,#0000 1px),linear-gradient(90deg,#ffffff09 1px,#0000 1px);background-size:52px 52px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#0000,#000 62%);mask-image:linear-gradient(90deg,#0000,#000 62%)}.showcase-intro-copy{z-index:2;position:relative}.showcase-overline{color:#f2c5ca;width:fit-content;font-size:var(--font-label);text-transform:uppercase;letter-spacing:.11em;background:#ffffff0f;border:1px solid #ffffff2b;border-radius:999px;align-items:center;gap:7px;padding:7px 10px;font-weight:800;display:inline-flex}.showcase-overline svg{color:#f0c45e}.showcase-intro h1{color:#fff;letter-spacing:-.045em;max-width:820px;margin:20px 0;font-size:clamp(40px,4.6vw,67px);font-weight:500;line-height:1.01}.showcase-intro-copy>p{color:#ffffffb8;max-width:700px;margin:0;font-size:15px;line-height:1.72}.showcase-intro-actions{flex-wrap:wrap;gap:10px;margin-top:29px;display:flex}.showcase-intro-actions .button{min-height:43px;padding-inline:17px}.showcase-intro-actions .button.primary{background:#b63c4a;border-color:#b63c4a}.showcase-intro-actions .button.primary:hover{background:#c44554}.showcase-intro-actions .button.secondary{color:#fff;background:#ffffff12;border-color:#ffffff3d}.showcase-intro-actions .button.secondary:hover{background:#ffffff21;border-color:#ffffff6b}.showcase-system-map{z-index:1;aspect-ratio:1;border-radius:50%;justify-self:center;width:min(100%,430px);position:relative}.showcase-system-map:before,.showcase-system-map:after{content:"";border-radius:50%;position:absolute}.showcase-system-map:before{border:1px solid #ffffff38;inset:13%;box-shadow:0 0 0 32px #ffffff05,0 0 0 33px #ffffff12}.showcase-system-map:after{border:1px dashed #f0c45e66;inset:28%}.showcase-map-core{z-index:3;background:#fffffff5;border:1px solid #ffffff3d;border-radius:50%;align-content:center;place-items:center;width:166px;height:166px;padding:19px;display:grid;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);box-shadow:0 20px 55px #040f1b59}.showcase-map-core img{object-fit:contain;width:62px;height:62px}.showcase-map-core strong,.showcase-map-core span{text-align:center;display:block}.showcase-map-core strong{color:var(--navy);margin-top:5px;font-size:14px}.showcase-map-core span{color:var(--muted);font-size:var(--font-compact);margin-top:3px;line-height:1.3}.showcase-map-node{z-index:4;color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0c2338db;border:1px solid #fff3;border-radius:12px;align-content:center;place-items:center;gap:4px;width:88px;min-height:64px;padding:9px 7px;display:grid;position:absolute;box-shadow:0 12px 28px #040f1b40}.showcase-map-node svg{color:#f0c45e;width:19px}.showcase-map-node span{font-size:var(--font-label);letter-spacing:.03em;font-weight:800}.showcase-map-node.teach{top:0;left:50%;transform:translate(-50%)}.showcase-map-node.plan{top:25%;right:0}.showcase-map-node.assess{bottom:2%;right:11%}.showcase-map-node.report{bottom:2%;left:11%}.showcase-map-node.lead{top:25%;left:0}.showcase-data-notice{color:#194c3c;background:#eff7f3;border:1px solid #bdd6ca;border-radius:11px;align-items:center;gap:13px;margin-top:18px;padding:16px 19px;display:flex}.showcase-data-notice>svg{color:var(--green);flex:none}.showcase-data-notice strong,.showcase-data-notice span{display:block}.showcase-data-notice strong{font-size:var(--font-label)}.showcase-data-notice span{color:#4a675d;font-size:var(--font-label);margin-top:3px;line-height:1.5}.showcase-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0 0;display:grid}.showcase-metrics article{border:1px solid var(--line);background:var(--paper);border-radius:11px;align-content:center;gap:4px;min-height:105px;padding:20px;display:grid;box-shadow:0 10px 30px #0f233a0b}.showcase-metrics strong,.showcase-metrics span{display:block}.showcase-metrics strong{color:var(--navy);align-items:center;gap:7px;font-size:28px;font-weight:500;display:flex}.showcase-metrics strong svg{color:var(--red)}.showcase-metrics span{color:var(--muted);font-size:var(--font-label);text-transform:uppercase;letter-spacing:.08em}.showcase-capabilities{margin-top:76px}.showcase-capabilities>header{max-width:760px;margin-bottom:25px}.showcase-capabilities>header h2{color:var(--navy);letter-spacing:-.03em;margin:8px 0;font-size:clamp(28px,3vw,42px);font-weight:500;line-height:1.08}.showcase-capabilities>header p{color:var(--muted);margin:0;font-size:13px;line-height:1.6}.showcase-capability-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;display:grid}.showcase-capability-grid>a{border:1px solid var(--line);background:var(--paper);border-radius:12px;flex-direction:column;min-height:245px;padding:24px;transition:transform .16s,border-color .16s,box-shadow .16s;display:flex;position:relative;overflow:hidden;box-shadow:0 12px 34px #0f233a0b}.showcase-capability-grid>a:after{content:"";border:18px solid #a42a380b;border-radius:50%;width:104px;height:104px;position:absolute;top:-54px;right:-54px}.showcase-capability-grid>a:hover{border-color:#cbd4da;transform:translateY(-3px);box-shadow:0 18px 42px #0f233a17}.showcase-capability-number{color:#a7afb5;font-size:var(--font-label);letter-spacing:.12em;font-weight:800;position:absolute;top:17px;right:18px}.showcase-capability-grid>a>svg{color:var(--red);margin-bottom:22px}.showcase-capability-grid h3{color:var(--navy);margin:0 0 8px;font-size:20px;font-weight:600}.showcase-capability-grid p{color:var(--muted);font-size:var(--font-label);margin:0;line-height:1.62}.showcase-capability-grid>a>span{color:var(--red);font-size:var(--font-label);align-items:center;gap:6px;margin-top:auto;padding-top:22px;font-weight:800;display:inline-flex}.showcase-closing-card{text-align:center;background:radial-gradient(circle at 50% 0,#2a69b81f,#0000 45%),#f8fafb;border:1px solid #ccd8df;border-radius:14px;justify-items:center;margin-top:18px;padding:44px clamp(24px,5vw,70px);display:grid}.showcase-closing-card>div{color:var(--red);gap:7px;display:flex}.showcase-closing-card>div svg:last-child{color:var(--blue)}.showcase-closing-card h2{max-width:720px;color:var(--navy);letter-spacing:-.025em;margin:15px 0 9px;font-size:clamp(24px,2.7vw,36px);font-weight:500;line-height:1.12}.showcase-closing-card p{max-width:740px;color:var(--muted);margin:0;font-size:12px;line-height:1.65}.showcase-closing-card .button{margin-top:22px}.showcase-tour{z-index:140;position:relative}.showcase-tour-backdrop,.showcase-tour-spotlight{position:fixed;inset:0}.showcase-tour-backdrop{z-index:138;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:#07142294}.showcase-tour-spotlight{z-index:139;pointer-events:none;border:3px solid #f0c45e;border-radius:13px;transition:top .2s,left .2s,width .2s,height .2s;inset:auto;box-shadow:0 0 0 9999px #07142212,0 0 0 7px #f0c45e33,0 18px 45px #0000003d}.showcase-tour-card{z-index:141;overscroll-behavior:contain;color:#fff;background:#102c46;border:1px solid #ffffff29;border-radius:15px;width:min(420px,100vw - 32px);max-height:calc(100vh - 32px);padding:22px;position:fixed;bottom:27px;right:27px;overflow-y:auto;box-shadow:0 24px 74px #00000061}.showcase-tour-card>header{justify-content:space-between;align-items:center;gap:14px;display:flex}.showcase-tour-card>header>span{color:#f2c5ca;font-size:var(--font-label);text-transform:uppercase;letter-spacing:.12em;align-items:center;gap:6px;font-weight:800;display:inline-flex}.showcase-tour-card>header>span svg{color:#f0c45e}.showcase-tour-card>header>button{color:#ffffffb8;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff24;border-radius:8px;place-items:center;width:38px;height:38px;display:grid}.showcase-tour-card>header>button:hover{color:#fff;background:#ffffff1f}.showcase-tour-progress{background:#ffffff1f;border-radius:999px;height:4px;margin-top:14px;overflow:hidden}.showcase-tour-progress i{border-radius:inherit;background:#f0c45e;height:100%;transition:width .2s;display:block}.showcase-tour-card>small{color:#ffffff94;font-size:var(--font-compact);text-transform:uppercase;letter-spacing:.1em;margin-top:9px;font-weight:800;display:block}.showcase-tour-card h2{color:#fff;margin:17px 0 8px;font-size:23px;font-weight:600;line-height:1.15}.showcase-tour-card>p{color:#ffffffbd;font-size:var(--font-label);margin:0;line-height:1.65}.showcase-tour-card>footer{grid-template-columns:auto 1fr auto;align-items:center;gap:8px;margin-top:20px;display:grid}.showcase-tour-card .button{min-width:91px;min-height:40px;padding:7px 11px}.showcase-tour-card .button.secondary{color:#fff;background:#ffffff12;border-color:#ffffff3d}.showcase-tour-card .button.secondary:hover:not(:disabled){background:#ffffff1f;border-color:#fff6}.showcase-tour-card .button.secondary:disabled{opacity:.38}.showcase-tour-card .button.primary{background:#b63c4a;border-color:#b63c4a}.showcase-explore-button{color:#ffffffad;min-height:35px;font-size:var(--font-label);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:5px 8px;font-weight:800;-webkit-text-decoration:underline #ffffff4d;text-decoration:underline #ffffff4d}.showcase-explore-button:hover{color:#fff;text-decoration-color:currentColor}.showcase-tour-card button:focus-visible{outline-color:#f0c45e}@media (max-width:1120px){.showcase-intro{grid-template-columns:minmax(0,1fr) minmax(330px,.72fr);gap:28px}.showcase-system-map{width:min(100%,370px)}.showcase-map-node{width:80px}}@media (max-width:960px){.showcase-intro{grid-template-columns:1fr}.showcase-intro-copy{max-width:820px}.showcase-system-map{width:min(100%,430px);margin-top:8px}.showcase-metrics,.showcase-capability-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:860px){.showcase-global-banner{padding-left:63px}.showcase-page{padding-top:24px}}@media (max-width:640px){.showcase-global-banner{align-items:flex-start;min-height:54px;padding:7px 8px 7px 61px}.showcase-global-banner>div:first-child{min-height:34px}.showcase-global-banner>div:first-child span{max-width:155px;font-size:var(--font-label);line-height:1.35}.showcase-global-banner>div:last-child{gap:5px}.showcase-global-banner button{width:34px;height:34px;padding:0}.showcase-global-banner button svg{width:15px}.showcase-global-banner button:not(:disabled){font-size:0}.showcase-global-banner button:disabled{width:auto;font-size:var(--font-compact);padding:0 8px}.showcase-page{padding-top:18px}.showcase-intro{border-radius:14px;min-height:0;padding:30px 22px}.showcase-overline{max-width:100%;font-size:var(--font-compact);line-height:1.35}.showcase-intro h1{margin-top:17px;font-size:clamp(33px,10vw,45px)}.showcase-intro-copy>p{font-size:12px;line-height:1.65}.showcase-intro-actions{display:grid}.showcase-intro-actions .button{width:100%}.showcase-system-map{width:min(100%,330px)}.showcase-map-core{width:138px;height:138px;padding:14px}.showcase-map-core img{width:49px;height:49px}.showcase-map-core strong{font-size:12px}.showcase-map-core span{font-size:var(--font-compact)}.showcase-map-node{border-radius:9px;width:70px;min-height:55px;padding:7px 5px}.showcase-map-node svg{width:16px}.showcase-map-node span{font-size:var(--font-compact)}.showcase-data-notice{align-items:flex-start;padding:14px}.showcase-metrics,.showcase-capability-grid{grid-template-columns:1fr}.showcase-metrics article{min-height:82px;padding:16px 18px}.showcase-capabilities{margin-top:50px}.showcase-capability-grid>a{min-height:215px}.showcase-closing-card{padding:34px 20px}.showcase-tour-card{width:calc(100vw - 22px);padding:18px;bottom:11px;right:11px}.showcase-tour-card h2{margin-top:14px;font-size:20px}.showcase-tour-card>p{font-size:var(--font-label)}.showcase-tour-card>footer{grid-template-columns:1fr 1fr}.showcase-explore-button{grid-area:2/1/auto/-1}.showcase-tour-card .button{width:100%}}@media (max-width:390px){.showcase-system-map{width:min(100%,278px)}.showcase-map-node{width:61px;min-height:50px}.showcase-map-node span{font-size:var(--font-compact)}.showcase-map-core{width:123px;height:123px}}@media (prefers-reduced-motion:reduce){.showcase-capability-grid>a,.showcase-global-banner button,.showcase-tour-spotlight,.showcase-tour-progress i{transition:none}}.weekly-unit-planner-page{max-width:1480px}.weekly-unit-planner-page .eyebrow{font-size:var(--font-label)}.weekly-plan-teacher{color:#52636d;font-size:var(--font-label);text-transform:uppercase;gap:6px;font-weight:800;display:grid}.weekly-plan-teacher select{border:1px solid var(--line);min-width:210px;color:var(--navy);background:#fff;border-radius:8px;padding:11px 12px;font-size:13px}.planning-level-strip{border:1px solid var(--line);background:#faf9f6;border-radius:12px;justify-content:center;align-items:center;gap:14px;margin:2px 0 18px;padding:15px 20px;display:flex}.planning-level-strip>div{color:#78858e;align-items:center;gap:9px;display:flex}.planning-level-strip>div.active{color:#8f2940}.planning-level-strip>div>svg{width:18px}.planning-level-strip>svg{color:#b9c0c5;width:14px}.planning-level-strip strong,.planning-level-strip small{display:block}.planning-level-strip strong{font-size:13px}.planning-level-strip small{font-size:var(--font-label);color:#65747e;margin-top:3px}.weekly-plan-layout{grid-template-columns:290px minmax(0,1fr);align-items:start;gap:18px;display:grid}.weekly-plan-selector{padding:18px;position:sticky;top:16px}.weekly-plan-selector>button{text-align:left;background:#f7f7f5;border:1px solid #0000;border-radius:10px;grid-template-columns:5px 1fr 18px;align-items:center;gap:11px;width:100%;margin-top:10px;padding:14px 12px;display:grid}.weekly-plan-selector>button.active{border-color:var(--plan-color)}@supports (color:color-mix(in lab, red, red)){.weekly-plan-selector>button.active{border-color:color-mix(in srgb, var(--plan-color) 38%, white)}}.weekly-plan-selector>button.active{background:var(--plan-color)}@supports (color:color-mix(in lab, red, red)){.weekly-plan-selector>button.active{background:color-mix(in srgb, var(--plan-color) 11%, white)}}.weekly-plan-selector button i{background:var(--plan-color);border-radius:8px;width:5px;height:100%;min-height:42px}.weekly-plan-selector strong,.weekly-plan-selector small,.weekly-plan-selector em{display:block}.weekly-plan-selector strong{color:var(--navy);font-size:14px}.weekly-plan-selector small{color:#415965;margin-top:4px;font-size:12px;line-height:1.35}.weekly-plan-selector em{color:#667781;font-size:var(--font-label);margin-top:6px;font-style:normal}.weekly-plan-selector button>svg{width:16px;color:var(--green)}.weekly-plan-selector-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.weekly-plan-selector-toggle{font-size:var(--font-label);color:#415965;cursor:pointer;align-items:center;gap:6px;font-weight:500;display:flex}.weekly-plan-selector-toggle input{margin:0}.weekly-plan-selector-empty{color:#667781;font-size:var(--font-compact);margin-top:10px}.weekly-plan-main{min-width:0}.weekly-plan-summary{justify-content:space-between;align-items:center;gap:20px;padding:20px 22px;display:flex}.weekly-plan-summary h2{color:var(--navy);margin:5px 0 4px;font-size:22px;font-weight:550}.weekly-plan-summary p{color:#5d6d77;margin:0;font-size:12px;line-height:1.45}.weekly-plan-igpe-pattern{color:#405c68;align-items:center;gap:7px;margin-top:10px;font-size:11px;font-weight:750;display:flex}.weekly-plan-igpe-pattern>svg:first-child{color:#287f8d}.weekly-plan-igpe-pattern>svg:last-of-type{color:#9a4f45}.weekly-plan-igpe-pattern>span{background:var(--line);width:1px;height:15px;margin:0 3px}.weekly-plan-summary-controls{align-items:end;gap:10px;display:flex}.weekly-plan-count{text-align:center;background:#edf5f4;border-radius:10px;min-width:92px;padding:11px 14px}.weekly-plan-count strong,.weekly-plan-count span{display:block}.weekly-plan-count strong{color:#247b7e;font-size:27px;font-weight:550}.weekly-plan-count span{color:#456d72;font-size:var(--font-label);font-weight:800}.weekly-plan-assessment,.weekly-plan-week>label{color:#5f513d;gap:7px;font-size:12px;font-weight:800;display:grid}.weekly-plan-assessment select,.weekly-plan-week textarea{width:100%;color:var(--navy);font:inherit;background:#fff;border:1px solid #dacbaa;border-radius:8px;padding:11px 12px}.weekly-plan-assessment{color:#566872;min-width:205px}.weekly-plan-assessment select{border-color:var(--line);font-size:13px}.weekly-plan-coverage{margin:13px 0;padding:20px 22px}.weekly-plan-coverage>header{justify-content:space-between;align-items:center;gap:18px;display:flex}.weekly-plan-coverage>header h2{color:var(--navy);margin:5px 0 4px;font-size:21px}.weekly-plan-coverage>header p{color:#60717a;margin:0;font-size:12px;line-height:1.5}.weekly-plan-coverage>header>div:last-child{text-align:center;background:#fff1eb;border-radius:9px;min-width:98px;padding:10px 13px}.weekly-plan-coverage>header>div:last-child.complete{background:#edf7f2}.weekly-plan-coverage>header>div:last-child strong,.weekly-plan-coverage>header>div:last-child span{display:block}.weekly-plan-coverage>header>div:last-child strong{color:#aa463a;font-size:26px}.weekly-plan-coverage>header>div:last-child.complete strong{color:#25735d}.weekly-plan-coverage>header>div:last-child span{color:#6f514d;font-size:var(--font-label);font-weight:800}.weekly-plan-coverage-summary{color:#45616c;grid-template-columns:20px auto auto minmax(140px,1fr);align-items:center;gap:7px;margin-top:16px;font-size:12px;display:grid}.weekly-plan-coverage-summary>svg{color:#287f8d}.weekly-plan-coverage-summary>strong{color:var(--navy)}.weekly-plan-coverage-summary>div{background:#e5ecee;border-radius:99px;height:8px;margin-left:8px;overflow:hidden}.weekly-plan-coverage-summary>div i{border-radius:inherit;background:#2d817c;height:100%;display:block}.weekly-plan-coverage-windows{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:16px;display:grid}.weekly-plan-coverage-windows button{border:1px solid var(--soft-line);text-align:left;background:#f8faf9;border-radius:9px;min-width:0;padding:12px}.weekly-plan-coverage-windows button.active{background:#eef7f4;border-color:#6ba99f;box-shadow:inset 0 0 0 1px #6ba99f}.weekly-plan-coverage-windows span,.weekly-plan-coverage-windows strong,.weekly-plan-coverage-windows small{display:block}.weekly-plan-coverage-windows span{color:#8f2940;font-size:var(--font-label);text-transform:uppercase;font-weight:850}.weekly-plan-coverage-windows strong{color:var(--navy);text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font-size:12px;line-height:1.35;overflow:hidden}.weekly-plan-coverage-windows small{color:#65757e;font-size:var(--font-label);margin-top:6px}.weekly-plan-coverage-remaining{border-top:1px solid var(--soft-line);margin-top:14px}.weekly-plan-coverage-remaining summary{color:#345965;cursor:pointer;justify-content:space-between;align-items:center;padding:14px 2px 0;font-size:12px;font-weight:800;list-style:none;display:flex}.weekly-plan-coverage-remaining summary::-webkit-details-marker{display:none}.weekly-plan-coverage-remaining[open] summary svg{transform:rotate(180deg)}.weekly-plan-coverage-remaining>div{gap:10px;margin-top:13px;display:grid}.weekly-plan-coverage-remaining article{background:#f7f8f7;border-radius:9px;padding:14px 15px}.weekly-plan-coverage-remaining h3{color:var(--navy);margin:0;font-size:14px}.weekly-plan-coverage-remaining h3 small{color:#5d7079;margin-top:4px;font-size:11px;font-weight:600;display:block}.weekly-plan-coverage-remaining ul{color:#425963;gap:6px;margin:11px 0 0;padding-left:20px;font-size:12px;line-height:1.45;display:grid}.weekly-plan-coverage-complete{border-top:1px solid var(--soft-line);color:#25735d;align-items:center;gap:8px;margin-top:14px;padding-top:14px;font-size:12px;font-weight:800;display:flex}.weekly-assessment-builder{background:#fffaf1;border:2px solid #d3a459;border-radius:11px;margin:0 18px 18px;padding:18px}.weekly-assessment-builder-heading{align-items:flex-start;gap:12px;display:flex}.weekly-assessment-builder-heading>svg{color:#9b651d;flex:none;width:23px;height:23px}.weekly-assessment-builder-heading h4{color:#684515;margin:4px 0 5px;font-size:17px}.weekly-assessment-builder-heading p{color:#6a5a43;max-width:850px;margin:0;font-size:12px;line-height:1.55}.weekly-assessment-fields{grid-template-columns:minmax(0,1fr) minmax(180px,.45fr);gap:11px;margin-top:16px;display:grid}.weekly-assessment-fields label{color:#59492f;gap:7px;font-size:12px;font-weight:800;display:grid}.weekly-assessment-fields label.wide{grid-column:1/-1}.weekly-assessment-fields input,.weekly-assessment-fields select,.weekly-assessment-fields textarea{width:100%;color:var(--navy);font:inherit;background:#fff;border:1px solid #d8c5a4;border-radius:8px;padding:10px 11px}.weekly-assessment-fields textarea{resize:vertical;line-height:1.5}.weekly-assessment-builder fieldset{margin-top:17px;padding:0}.weekly-assessment-builder legend{color:#684515;justify-content:space-between;align-items:center;width:100%;display:flex}.weekly-assessment-builder legend span{color:#8b6b37;font-size:var(--font-label)}.weekly-assessment-builder fieldset label{background:#fff}.weekly-assessment-next{border-top:1px solid #e2d2b5;justify-content:space-between;align-items:center;gap:18px;margin-top:16px;padding-top:15px;display:flex}.weekly-assessment-next strong,.weekly-assessment-next span{display:block}.weekly-assessment-next strong{color:#684515;font-size:12px}.weekly-assessment-next span{color:#6a5a43;max-width:720px;margin-top:4px;font-size:11px;line-height:1.5}.weekly-assessment-next .button{flex:none}.weekly-plan-weeks{gap:12px;display:grid}.weekly-plan-week{padding:0;overflow:hidden}.weekly-plan-week>header{border-bottom:1px solid var(--soft-line);background:#f5f8fa;justify-content:space-between;align-items:center;padding:15px 18px;display:flex}.weekly-plan-week.assessment-week{border:2px solid #d3a459;box-shadow:0 8px 24px #6f4b1617}.weekly-plan-week.assessment-week>header{background:#f8ead1}.weekly-plan-week.assessment-week>header>div:first-child span{color:#8c5718}.weekly-plan-week header span,.weekly-plan-week header h3{display:block}.weekly-plan-week header>div:first-child span{color:#48616f;font-size:var(--font-label);text-transform:uppercase;font-weight:800}.weekly-plan-week header h3{color:var(--navy);margin:4px 0 0;font-size:18px}.weekly-plan-week header>div:last-child{text-align:center}.weekly-plan-week header>div:last-child strong{color:var(--navy);font-size:24px}.weekly-plan-week header>div:last-child span{color:#65747e;font-size:var(--font-label)}.weekly-plan-dates{flex-wrap:wrap;gap:6px;padding:12px 18px 0;display:flex}.weekly-plan-dates span{color:#365866;font-size:var(--font-label);background:#eaf1f4;border-radius:6px;padding:7px 9px;font-weight:800}.weekly-plan-dates span.practical{color:#7d3f37;background:#f9e9e4;box-shadow:inset 0 0 0 1px #efc5ba}.weekly-plan-dates span.assessment{color:#965a1e;background:#f7e8ce}.weekly-plan-week>label{color:var(--navy);margin:14px 18px}.weekly-plan-week textarea{border-color:var(--line);resize:vertical;min-height:76px;font-size:14px;line-height:1.5}.weekly-plan-focus-grid{gap:12px;margin:14px 18px;display:grid}.weekly-plan-focus-grid.split{grid-template-columns:minmax(0,1.45fr) minmax(260px,.8fr)}.weekly-plan-focus-grid label{color:var(--navy);gap:7px;font-size:12px;font-weight:800;display:grid}.weekly-plan-focus-grid label>span{align-items:center;gap:6px;display:flex}.weekly-plan-focus-grid label>small{color:#6a7b83;font-size:10.5px;font-weight:650}.weekly-plan-focus-grid label.practical{color:#783f38;background:#fff8f5;border:1px solid #efc5ba;border-radius:9px;padding:12px}.weekly-plan-focus-grid label.practical>span svg{color:#a34f44}.weekly-plan-focus-grid label.practical textarea{border-color:#dfb3a8}.weekly-plan-no-outcomes{color:#5b6c74;background:#f4f7f7;border-radius:8px;margin:0 18px 18px;padding:12px 14px;font-size:12px}.weekly-plan-week fieldset{border:0;margin:0;padding:0 18px 18px}.weekly-plan-week legend{color:var(--navy);margin-bottom:10px;font-size:12px;font-weight:800}.weekly-plan-week fieldset>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.weekly-plan-week fieldset>.weekly-outcome-groups{grid-template-columns:1fr;gap:14px;display:grid}.weekly-outcome-group{gap:8px;display:grid}.weekly-outcome-group>header{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.weekly-outcome-group>header strong{color:var(--navy);text-transform:uppercase;letter-spacing:.05em;font-size:11px}.weekly-outcome-group>header span{color:#728087;font-size:10.5px}.weekly-outcome-group>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.weekly-outcome-group.foundational{background:#f3f8f6;border:1px solid #c8ddd6;border-radius:9px;padding:12px}.weekly-outcome-group.foundational>header strong{color:#2f7566}.weekly-outcome-group.foundational label{background:#fff}.weekly-plan-week fieldset label{border:1px solid var(--soft-line);color:#405761;background:#fafafa;border-radius:8px;align-items:flex-start;gap:10px;padding:12px;font-size:12.5px;line-height:1.5;display:flex}.weekly-plan-week fieldset label span small{color:#7c8a92;margin-top:4px;font-size:10.5px;line-height:1.4;display:block}.weekly-plan-week fieldset label.selected{color:#245f58;background:#edf6f3;border-color:#aacdc7}.weekly-plan-week fieldset input{accent-color:#2d7c70;flex:none;width:17px;height:17px;margin-top:1px}.weekly-plan-actions{z-index:5;border:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff5;border-radius:11px;justify-content:flex-end;align-items:center;gap:9px;margin-top:14px;padding:13px 16px;display:flex;position:sticky;bottom:0;box-shadow:0 -8px 24px #0f233a0f}.weekly-plan-actions>span{color:#5d6d77;align-items:center;gap:7px;margin-right:auto;font-size:12px;display:flex}.weekly-plan-actions>span svg{width:15px;color:var(--green)}.weekly-plan-actions .button svg{width:14px}.weekly-plan-empty{text-align:center;padding:50px}.weekly-plan-empty>svg{color:var(--red)}.weekly-plan-empty h2{color:var(--navy)}.weekly-plan-empty p{color:var(--muted)}@media (max-width:1050px){.manager-stat-grid{grid-template-columns:repeat(2,1fr)}.team-progress-card{overflow-x:auto}.team-table-head,.team-progress-list article{min-width:1080px}.weekly-plan-layout{grid-template-columns:1fr}.weekly-plan-selector{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid;position:static}.weekly-plan-selector>.weekly-plan-selector-heading{grid-column:1/-1}.weekly-plan-selector>button{margin:0}}@media (max-width:700px){.planning-level-strip{flex-direction:column;align-items:stretch}.planning-level-strip>svg{align-self:center;transform:rotate(90deg)}.weekly-plan-selector,.weekly-plan-week fieldset>div,.weekly-outcome-group>div{grid-template-columns:1fr}.weekly-plan-summary,.weekly-plan-summary-controls{flex-direction:column;align-items:stretch}.weekly-plan-assessment{min-width:0}.weekly-plan-coverage-windows{grid-template-columns:1fr 1fr}.weekly-plan-coverage-summary{grid-template-columns:20px auto 1fr}.weekly-plan-coverage-summary>div{grid-column:1/-1;margin-left:0}.weekly-plan-focus-grid.split,.weekly-assessment-fields{grid-template-columns:1fr}.weekly-assessment-fields label.wide{grid-column:auto}.weekly-assessment-next{flex-direction:column;align-items:stretch}.weekly-assessment-next .button{width:100%}.weekly-plan-actions{flex-wrap:wrap}.weekly-plan-actions>span{width:100%}}@media print{.showcase-global-banner,.showcase-tour{display:none!important}}.nav-notification-count{color:#fff;background:#c84250;border-radius:999px;place-items:center;min-width:20px;height:20px;margin-left:auto;padding:0 5px;font-size:10px;font-weight:900;display:grid}.sidebar nav a.active .nav-notification-count{color:#fff;background:#c84250}.todo-global-notification{color:#244f68;background:linear-gradient(135deg,#f7fbff,#edf5ff);border:1px solid #bfd4e7;border-radius:11px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:11px;margin:0 0 16px;padding:11px 13px;display:grid;box-shadow:0 4px 14px #234e680f}.todo-global-notification>svg{color:#3f79a0}.todo-global-notification>div{gap:2px;min-width:0;display:grid}.todo-global-notification strong{font-size:12px}.todo-global-notification span{color:#687f8b;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.todo-global-notification>a{color:#fff;background:#2e708f;border-radius:7px;padding:6px 9px;font-size:11px;font-weight:850}.todo-global-notification>button{color:#8c5360;cursor:pointer;background:0 0;border:0;border-radius:7px;place-items:center;width:29px;height:29px;padding:0;display:grid}.todo-global-notification>button:hover{color:#a62b3a;background:#fff}@media (max-width:640px){.todo-global-notification{grid-template-columns:auto minmax(0,1fr) auto}.todo-global-notification>a{grid-column:2;justify-self:start}.todo-global-notification>button{grid-area:1/3/3}}.sport-rotation-controls{flex-wrap:wrap;gap:14px;margin:14px 0;display:flex}.sport-rotation-controls label{color:#53686f;font-size:var(--font-label);gap:4px;font-weight:800;display:grid}.sport-rotation-controls select{color:#243f47;font:inherit;font-size:var(--font-label);background:#fff;border:1px solid #cad7db;border-radius:7px;padding:8px 9px}.sport-rotation-capacity-bar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;display:flex}.sport-rotation-capacity-card{color:#294b54;font-size:var(--font-label);background:#f7fafb;border:1px solid #dce5e9;border-radius:9px;align-items:center;gap:8px;padding:9px 13px;display:flex}.sport-rotation-capacity-card strong{font-weight:800}.sport-rotation-capacity-card span{color:#53686f;align-items:center;gap:4px;display:flex}.sport-rotation-capacity-card input{color:#243f47;width:46px;font:inherit;font-size:var(--font-label);background:#fff;border:1px solid #cad7db;border-radius:5px;padding:3px 5px}.sport-rotation-capacity-card.full{color:#8a2c2c;background:#fdecec;border-color:#d8a9ae}.sport-rotation-capacity-bar>button{color:#fff;font:inherit;font-size:var(--font-label);cursor:pointer;background:#2f806c;border:0;border-radius:7px;align-items:center;gap:5px;padding:8px 12px;font-weight:800;display:inline-flex}.sport-rotation-capacity-bar>button:disabled{cursor:not-allowed;opacity:.6}.sport-rotation-roster{border:1px solid var(--soft-line);border-radius:10px;overflow-x:auto}.sport-rotation-roster table{border-collapse:collapse;width:100%;font-size:var(--font-label)}.sport-rotation-roster th{border-bottom:1px solid var(--soft-line);color:#53686f;font-size:var(--font-compact);text-align:left;text-transform:uppercase;letter-spacing:.05em;background:#f7fafb;padding:10px 14px;font-weight:850}.sport-rotation-roster td{border-bottom:1px solid var(--soft-line);color:#294b54;padding:9px 14px}.sport-rotation-roster td:first-child{color:#47585d;align-items:center;gap:7px;display:flex}.sport-rotation-roster td select{color:#243f47;font:inherit;font-size:var(--font-compact);background:#fff;border:1px solid #cad7db;border-radius:6px;padding:6px 8px}.sport-rotation-roster tr:last-child td{border-bottom:0}.sport-rotation-weekly-panel,.sport-rotation-skill-panel{margin-top:24px}.sport-rotation-lesson-status{justify-items:end;gap:4px;display:grid}.sport-rotation-sport-select{color:var(--navy);font:inherit;text-align:right;cursor:pointer;background:0 0;border:none;padding:4px 26px 4px 2px;font-size:17px;font-weight:800}.sport-rotation-plan-link{color:var(--red);font-size:var(--font-compact);font-weight:800;text-decoration:none}.sport-rotation-plan-link:hover{text-decoration:underline}.sport-rotation-independent-groups{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;margin:16px 0;display:grid}.sport-rotation-independent-card{border:1px solid var(--soft-line);background:#f7fafb;border-radius:10px;gap:8px;padding:14px;display:grid}.sport-rotation-independent-card header{color:#294b54;align-items:center;gap:7px;margin-bottom:2px;display:flex}.sport-rotation-independent-card h3{font-size:var(--font-label);margin:0}.sport-rotation-independent-card label{color:#53686f;font-size:var(--font-compact);gap:4px;font-weight:800;display:grid}.sport-rotation-independent-card textarea{color:#243f47;font:inherit;font-size:var(--font-label);resize:vertical;background:#fff;border:1px solid #cad7db;border-radius:7px;padding:7px 9px}.sport-rotation-outcomes{border:0;border-top:1px solid var(--soft-line);gap:6px;margin:4px 0 0;padding:10px 0 0;display:grid}.sport-rotation-outcomes legend{color:#53686f;font-size:var(--font-compact);padding:0 0 6px;font-weight:800}.sport-rotation-outcome-group{gap:6px;display:grid}.sport-rotation-outcome-group+.sport-rotation-outcome-group{border-top:1px solid var(--soft-line);margin-top:7px;padding-top:9px}.sport-rotation-outcome-group>strong{color:#4c6269;text-transform:uppercase;letter-spacing:.04em;font-size:10.5px}.sport-rotation-outcome-group.foundational{background:#f3f8f6;border:1px solid #c8ddd6;border-radius:8px;padding:9px}.sport-rotation-outcome-group.foundational>strong{color:#2f7566}.sport-rotation-independent-card .sport-rotation-outcomes label{border:1px solid var(--soft-line);color:#405761;background:#fff;border-radius:7px;align-items:flex-start;gap:8px;padding:8px 9px;font-size:12px;font-weight:500;line-height:1.45;display:flex}.sport-rotation-outcomes label span small{color:#7c8a92;margin-top:3px;font-size:10.5px;line-height:1.4;display:block}.sport-rotation-outcomes label.selected{color:#245f58;background:#edf6f3;border-color:#aacdc7}.sport-rotation-outcomes input{accent-color:#2d7c70;flex:none;width:16px;height:16px;margin-top:1px}.sport-rotation-weekly-save{justify-content:flex-end;display:flex}.sport-rotation-weekly-save button{color:#fff;font:inherit;font-size:var(--font-label);cursor:pointer;background:#2f806c;border:0;border-radius:8px;align-items:center;gap:6px;padding:9px 14px;font-weight:800;display:inline-flex}.sport-rotation-weekly-save button:disabled{cursor:not-allowed;opacity:.6}.ltp-modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0c1d2ea6;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.ltp-modal{background:#fff;border-radius:14px;flex-direction:column;width:min(760px,100%);max-height:calc(100vh - 48px);display:flex;position:relative;overflow:hidden;box-shadow:0 30px 80px #06162652}.ltp-modal-head{border-bottom:1px solid var(--soft-line);justify-content:space-between;align-items:flex-start;gap:20px;padding:22px 60px 18px 24px;display:flex}.ltp-modal-head h2{color:#172033;margin:4px 0 6px;font-size:1.15rem}.ltp-modal-head p{color:#7d8999;font-size:var(--font-compact);margin:0;line-height:1.45}.ltp-modal-close{color:#56636e;cursor:pointer;background:#fff;border:1px solid #d9e0e5;border-radius:50%;place-items:center;width:34px;height:34px;display:grid;position:absolute;top:15px;right:15px}.ltp-modal-body{gap:14px;padding:18px 24px;display:grid;overflow-y:auto}.ltp-modal-topic{border:1px solid var(--soft-line);background:#f9fafb;border-radius:10px;padding:12px 14px}.ltp-modal-topic>header{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:10px;display:flex}.ltp-modal-topic>header strong{color:#202c40;font-size:.95rem}.ltp-modal-topic>header span{color:#8792a3;font-size:var(--font-compact);white-space:nowrap}.ltp-modal-items{gap:8px;display:grid}.ltp-modal-item-row{grid-template-columns:1fr 1fr auto;align-items:start;gap:8px;display:grid}.ltp-pref-field{gap:6px;display:grid}.ltp-pref-field select,.ltp-pref-field input{color:#243f47;font:inherit;font-size:var(--font-label);background:#fff;border:1px solid #cad7db;border-radius:7px;padding:8px 9px}.ltp-modal-remove{color:#a74b53;cursor:pointer;background:#fff8f8;border:1px solid #ebdadd;border-radius:7px;place-items:center;width:34px;height:34px;margin-top:1px;display:grid}.ltp-modal-add{color:#2f806c;font:inherit;font-size:var(--font-compact);cursor:pointer;background:0 0;border:1px dashed #cad7db;border-radius:7px;align-items:center;gap:6px;margin-top:10px;padding:7px 10px;font-weight:800;display:inline-flex}.ltp-modal-empty{color:#8792a4;font-size:var(--font-compact);margin:0}.ltp-modal-actions{border-top:1px solid var(--soft-line);background:#fbfcfe;justify-content:flex-end;gap:10px;padding:16px 24px;display:flex}.ltp-modal-actions .secondaryButton,.ltp-modal-actions .primaryButton{font:inherit;font-size:var(--font-compact);cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:9px 14px;font-weight:800;display:inline-flex}.ltp-modal-actions .secondaryButton{color:#59677b;background:#fff;border:1px solid #d6dde6}.ltp-modal-actions .primaryButton{color:#fff;background:#2f806c;border:0}.ltp-modal-actions button:disabled{opacity:.6;cursor:not-allowed}@media (max-width:640px){.ltp-modal-item-row{grid-template-columns:1fr}.ltp-modal-remove{justify-self:flex-end}}.weather-week-card{margin-bottom:16px}.weather-week{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;display:grid}.weather-week.loading{color:#8792a3;font-size:var(--font-compact);grid-template-columns:none;align-items:center;gap:8px;padding:8px 0;display:flex}.weather-day{border:1px solid var(--soft-line);text-align:center;background:#f9fafb;border-radius:10px;justify-items:center;gap:4px;padding:12px 6px;display:grid}.weather-day-label{font-size:var(--font-compact);color:#7d8999;text-transform:uppercase;letter-spacing:.05em;font-weight:800}.weather-day-emoji{font-size:1.4rem;line-height:1}.weather-day-temp{font-size:var(--font-label);color:#243f47;font-weight:800}.weather-day-temp small{color:#8792a3;font-weight:600}.weather-day-rain{color:#2b6bab;align-items:center;gap:3px;font-size:10.5px;font-weight:700;display:inline-flex}.weather-day{font:inherit;cursor:pointer;transition:background .15s,border-color .15s;position:relative}.weather-day:hover{background:#f2f5f8;border-color:#c9d4de}.weather-day:focus-visible{outline:2px solid var(--navy);outline-offset:2px}.weather-day.is-open{background:#eef4fa;border-color:#9fbcd8}.weather-day-chevron{color:#9aa6b4;transition:transform .15s}.weather-day.is-open .weather-day-chevron{color:#2b6bab;transform:rotate(180deg)}.weather-hours-panel{border:1px solid var(--soft-line);background:#f9fafb;border-radius:10px;margin-top:10px;padding:12px}.weather-hours-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px;margin-bottom:10px;display:flex}.weather-hours-head strong{color:#243f47;font-size:var(--font-label);font-weight:800}.weather-hours-head span{color:#7d8999;font-size:var(--font-compact)}.weather-hours{gap:6px;padding-bottom:4px;display:flex;overflow-x:auto}.weather-hour{border:1px solid var(--soft-line);text-align:center;background:#fff;border-radius:8px;flex:none;justify-items:center;gap:3px;min-width:62px;padding:8px 6px;display:grid}.weather-hour.is-now{background:#eef4fa;border-color:#2b6bab}.weather-hour-time{color:#7d8999;letter-spacing:.03em;font-size:10.5px;font-weight:800}.weather-hour.is-now .weather-hour-time{color:#2b6bab}.weather-hour-emoji{font-size:1.15rem;line-height:1}.weather-hour-temp{font-size:var(--font-compact);color:#243f47;font-weight:800}.weather-hour-feels{color:#9aa6b4;font-size:10px}.weather-hour-rain{color:#8792a3;align-items:center;gap:2px;font-size:10px;font-weight:700;display:inline-flex}.weather-hour-rain.is-wet{color:#2b6bab}.weather-hour-wind{color:#9aa6b4;align-items:center;gap:2px;font-size:10px;display:inline-flex}.weather-hours-empty{color:#8792a3;font-size:var(--font-compact);margin:0}.weather-day-chip{border:1px solid var(--soft-line);color:#445761;font-size:var(--font-compact);white-space:nowrap;background:#f9fafb;border-radius:999px;align-items:center;gap:7px;padding:5px 10px;font-weight:700;display:inline-flex}.weather-day-chip-temp{color:#7d8999;font-weight:600}.weather-day-chip-rain{color:#2b6bab;align-items:center;gap:3px;display:inline-flex}@media (max-width:720px){.weather-week{grid-template-columns:repeat(4,minmax(0,1fr))}}.duplicate-picker-modal{width:min(560px,100%)}.duplicate-picker-controls{flex-wrap:wrap;align-items:flex-end;gap:14px;padding:16px 24px 0;display:flex}.duplicate-picker-teacher{gap:6px;display:grid}.duplicate-picker-teacher span{font-size:var(--font-compact);color:#7d8999;font-weight:800}.duplicate-picker-teacher select{color:#243f47;font:inherit;font-size:var(--font-label);background:#fff;border:1px solid #cad7db;border-radius:7px;padding:8px 10px}.duplicate-picker-body{gap:8px;display:grid}.duplicate-picker-loading{color:#8792a3;font-size:var(--font-compact);align-items:center;gap:8px;padding:10px 0;display:flex}.duplicate-picker-lesson{border:1px solid var(--soft-line);cursor:pointer;text-align:left;font:inherit;background:#f9fafb;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:11px 13px;display:flex}.duplicate-picker-lesson:hover{background:#f2f5f7;border-color:#b7c3cc}.duplicate-picker-lesson-main{gap:2px;display:grid}.duplicate-picker-lesson-main strong{color:#202c40;font-size:var(--font-label)}.duplicate-picker-lesson-main span{color:#7d8999;font-size:var(--font-compact)}.duplicate-picker-lesson-meta{justify-items:flex-end;gap:6px;display:grid}.duplicate-picker-lesson-meta>span:first-child{color:#7d8999;font-size:var(--font-compact);white-space:nowrap;align-items:center;gap:5px;display:inline-flex}.duplicate-picker-status{text-transform:uppercase;letter-spacing:.04em;border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:10.5px;font-weight:800;display:inline-flex}.duplicate-picker-status.empty{color:#8792a3;background:#f1f3f5}.duplicate-picker-status.draft{color:#8b6710;background:#fff2bf}.duplicate-picker-status.ready{color:#227050;background:#eafaf0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@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}
