/*! 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,::backdrop{--tw-border-style:solid;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-outline-style:solid}}}@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,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.table{display:table}.border{border-style:var(--tw-border-style);border-width:1px}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.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))}}@font-face{font-family:Newsreader;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/fopos-0.ttf)format("truetype")}@font-face{font-family:Newsreader;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/fopos-1.ttf)format("truetype")}@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/fopos-2.ttf)format("truetype")}@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/fopos-3.ttf)format("truetype")}@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/fopos-4.ttf)format("truetype")}@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/fopos-5.ttf)format("truetype")}.guest-access-banner{color:var(--forest);background:#fffaf0;border:1px solid #d7c59f;border-radius:14px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;margin:18px clamp(20px,4vw,58px) 0;padding:14px 16px;display:grid}.guest-access-banner span{gap:3px;font-size:12px;line-height:1.5;display:grid}.guest-access-banner a{background:var(--forest);color:#fff;white-space:nowrap;border-radius:10px;padding:10px 14px;font-size:12px;font-weight:750;text-decoration:none}@media (width<=700px){.guest-access-banner{grid-template-columns:auto 1fr}.guest-access-banner a{text-align:center;grid-column:1/-1}}.profile-setup-shell{background:radial-gradient(circle at 80% 10%,#b58a4529,#0000 34%),linear-gradient(145deg,#14221f,#253d36);place-items:center;min-height:100vh;padding:32px 18px;display:grid}.profile-setup-card{background:#fffdf8;border:1px solid #ffffff1f;border-radius:24px;width:min(100%,620px);padding:clamp(28px,5vw,52px);box-shadow:0 30px 80px #00000047}.profile-security-mark{color:#80612f;letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:9px;font-size:11px;font-weight:800;display:inline-flex}.profile-setup-card h1{color:#20342e;font-family:var(--font-heading);margin:18px 0 10px;font-size:clamp(30px,5vw,44px);font-weight:540;line-height:1.08}.profile-setup-card>p{color:#66736d;margin:0;line-height:1.65}.profile-account{background:#edf4f0;border:1px solid #dce7e1;border-radius:12px;gap:5px;margin:24px 0;padding:14px 16px;display:grid}.profile-account small{color:#6c7d76;font-size:10px}.profile-account strong{color:var(--forest);font-size:13px}.profile-setup-card form{gap:16px;display:grid}.profile-setup-card label{gap:7px;display:grid}.profile-setup-card label span{color:#45534d;font-size:11px;font-weight:720}.profile-setup-card input{color:#172925;min-height:48px;font:inherit;background:#fff;border:1px solid #d5d8d2;border-radius:11px;padding:0 14px}.profile-setup-card input:focus{border-color:#9b7740;outline:none;box-shadow:0 0 0 3px #b58a4524}.profile-setup-card button{color:#fff;min-height:49px;font:inherit;background:linear-gradient(135deg,#355d51,#203f37);border:0;border-radius:11px;justify-content:center;align-items:center;gap:9px;margin-top:5px;font-size:12px;font-weight:750;display:flex;box-shadow:0 12px 24px #23493e38}.profile-setup-card [role=status]{color:#743b45;min-height:18px;font-size:11px}@keyframes profile-spin{to{transform:rotate(360deg)}}.record-archive-module{max-width:1240px;margin:0 auto;padding:34px clamp(24px,4vw,58px) 72px}.record-archive-hero{color:#edf4f0;background:linear-gradient(125deg,#172925,var(--forest) 72%,#6d5532 150%);border-radius:22px;grid-template-columns:1fr auto;align-items:center;gap:34px;padding:38px;display:grid}.record-archive-hero h1{color:#fff;font-family:var(--font-heading);margin:14px 0 10px;font-size:clamp(40px,5vw,60px);font-weight:540;line-height:1}.record-archive-hero p{color:#c7d4cf;max-width:720px;margin:0;line-height:1.7}.archive-security-seal{text-align:center;background:#ffffff0f;border:1px solid #ffffff29;border-radius:18px;justify-items:center;gap:7px;min-width:210px;padding:24px;display:grid}.archive-security-seal svg{color:#dbbc83}.archive-security-seal span{color:#c7d4cf;font-size:11px}.archive-summary-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:20px;display:grid}.archive-summary-grid article{background:#fff;border:1px solid #ddd6c9;border-radius:15px;grid-template-columns:auto 1fr;align-items:center;gap:5px 12px;padding:20px;display:grid}.archive-summary-grid svg{color:var(--gold);grid-row:1/3}.archive-summary-grid strong{color:var(--forest);font-size:25px}.archive-summary-grid span{color:var(--muted);font-size:11px}.academic-year-archive-filter{background:#fffaf0;border:1px solid #d7c59f;border-radius:16px;grid-template-columns:1fr minmax(290px,.45fr);align-items:center;gap:24px;margin-top:16px;padding:22px 24px;display:grid}.academic-year-archive-filter h2{color:var(--forest);margin:7px 0}.academic-year-archive-filter p{color:var(--muted);margin:5px 0;font-size:11px;line-height:1.6}.academic-year-archive-filter label{color:#65523b;gap:7px;font-size:11px;font-weight:700;display:grid}.academic-year-archive-filter select{color:#3d4d47;background:#fff;border:1px solid #c9b27f;border-radius:10px;width:100%;padding:11px 12px}.archive-message{color:#6d5532;background:#fff8ea;border:1px solid #d7c59f;border-radius:12px;margin-top:16px;padding:13px 16px;font-size:12px}.local-import-card{background:#fff;border:1px solid #ddd6c9;border-radius:17px;grid-template-columns:1fr minmax(280px,.55fr);align-items:center;gap:26px;margin-top:20px;padding:24px;display:grid}.local-import-card h2,.archive-list-heading h2{color:var(--forest);margin:7px 0}.local-import-card p{color:var(--muted);margin:6px 0;line-height:1.6}.local-import-card small{color:#80612f}.import-confirmation{gap:13px;display:grid}.import-confirmation label{color:#45534d;align-items:flex-start;gap:9px;font-size:11px;line-height:1.5;display:flex}.import-confirmation input{margin-top:2px}.import-confirmation .primary-button{width:100%;margin:0}.account-export-card{background:#edf5f1;border:1px solid #c7dbd2;border-radius:17px;grid-template-columns:1fr minmax(280px,.55fr);align-items:center;gap:26px;margin-top:16px;padding:24px;display:grid}.account-export-card h2{color:var(--forest);margin:7px 0}.account-export-card p{color:var(--muted);margin:6px 0;line-height:1.6}.account-export-card ul{color:#52665f;margin:13px 0 0;padding-left:18px;font-size:11px;line-height:1.7}.export-confirmation{gap:13px;display:grid}.export-confirmation label{color:#45534d;align-items:flex-start;gap:9px;font-size:11px;line-height:1.5;display:flex}.export-confirmation input{margin-top:2px}.export-confirmation .primary-button{width:100%;margin:0}.retention-policy-card{background:#fff;border:1px solid #d8d2c7;border-radius:17px;grid-template-columns:1fr minmax(300px,.55fr);align-items:start;gap:26px;margin-top:16px;padding:24px;display:grid}.retention-policy-card h2{color:var(--forest);margin:7px 0}.retention-policy-card p{color:var(--muted);margin:6px 0;line-height:1.6}.retention-policy-copy ul{color:#52665f;margin:14px 0 0;padding-left:18px;font-size:11px;line-height:1.75}.trash-recovery{background:#edf5f1;border:1px solid #c7dbd2;border-radius:12px;justify-content:space-between;align-items:center;gap:18px;margin-top:16px;padding:14px;display:flex}.trash-recovery div{gap:4px;display:grid}.trash-recovery strong{color:var(--forest);font-size:12px}.trash-recovery span{color:var(--muted);font-size:10px}.trash-recovery .secondary-button{white-space:nowrap}.delete-records-panel{background:#fff4f1;border:1px solid #e4b8b0;border-radius:14px;gap:12px;padding:18px;display:grid}.delete-records-panel>strong{color:#8c2f24}.delete-records-panel p{font-size:11px}.delete-records-panel>label{color:#633d38;align-items:flex-start;gap:8px;font-size:11px;line-height:1.5;display:flex}.delete-records-panel>label>input[type=checkbox]{margin-top:2px}.delete-records-panel .confirmation-phrase{gap:6px;display:grid}.confirmation-phrase input{color:#492a26;background:#fff;border:1px solid #d4a69e;border-radius:9px;width:100%;padding:10px 11px}.danger-button{color:#fff;min-height:42px;font:inherit;cursor:pointer;background:#a33a2f;border:0;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:10px 14px;font-size:11px;font-weight:750;display:inline-flex}.danger-button:hover:not(:disabled){background:#862c23}.danger-button:disabled{cursor:not-allowed;opacity:.45}.account-closure-card{background:linear-gradient(135deg,snow,#fff1ee);border:1px solid #d99b91;border-radius:17px;grid-template-columns:1fr minmax(320px,.58fr);align-items:start;gap:26px;margin-top:16px;padding:24px;display:grid}.account-closure-card h2{color:#852f26;margin:7px 0}.account-closure-card p{color:#6f504b;margin:6px 0;line-height:1.65}.account-closure-card ul{color:#6f504b;margin:14px 0 0;padding-left:18px;font-size:11px;line-height:1.75}.account-closure-card .closure-export-reminder{background:#ffffffb8;border-left:3px solid #a33a2f;margin-top:14px;padding:11px 13px;font-size:11px;font-weight:650}.account-closure-confirmation{background:#fff;border:1px solid #d99b91;border-radius:14px;gap:12px;padding:18px;display:grid}.account-closure-confirmation label{color:#633d38;gap:6px;font-size:11px;line-height:1.5;display:grid}.account-closure-confirmation label:first-child{grid-template-columns:auto 1fr;align-items:start}.account-closure-confirmation label:first-child input{margin-top:2px}.account-closure-confirmation input:not([type=checkbox]){color:#492a26;background:#fff;border:1px solid #d4a69e;border-radius:9px;width:100%;padding:10px 11px}.account-closure-confirmation .danger-button{margin-top:2px}.profile-settings-module{max-width:1240px;margin:0 auto;padding:34px clamp(24px,4vw,58px) 72px}.profile-settings-hero{color:#edf4f0;background:linear-gradient(125deg,#172925,var(--forest) 72%,#6d5532 150%);border-radius:22px;grid-template-columns:1fr auto;align-items:center;gap:34px;padding:38px;display:grid}.profile-settings-hero h1{color:#fff;font-family:var(--font-heading);margin:14px 0 10px;font-size:clamp(38px,5vw,56px);font-weight:540;line-height:1}.profile-settings-hero p{color:#c7d4cf;max-width:720px;margin:0;line-height:1.7}.profile-version-seal{text-align:center;background:#ffffff0f;border:1px solid #ffffff29;border-radius:18px;justify-items:center;gap:7px;min-width:210px;padding:24px;display:grid}.profile-version-seal svg{color:#dbbc83}.profile-version-seal span{color:#c7d4cf;font-size:11px}.profile-settings-grid{grid-template-columns:1fr 1fr;align-items:start;gap:16px;margin-top:18px;display:grid}.profile-edit-card,.academic-rollover-card,.profile-history-card{background:#fff;border:1px solid #ddd6c9;border-radius:17px;padding:24px}.profile-edit-card h2,.academic-rollover-card h2,.profile-history-card h2{color:var(--forest);margin:7px 0 16px}.profile-edit-card{gap:14px;display:grid}.profile-edit-card label{color:#45534d;gap:7px;font-size:11px;font-weight:650;display:grid}.profile-edit-card label span{align-items:center;gap:7px;display:flex}.profile-edit-card input,.rollover-confirmation input:not([type=checkbox]){color:#273b35;background:#fff;border:1px solid #cfc6b8;border-radius:10px;width:100%;padding:11px 12px}.profile-edit-card small{color:var(--muted);font-weight:400}.profile-settings-loading{min-height:160px;color:var(--muted);align-items:center;gap:9px;display:flex}.academic-rollover-card{gap:13px;display:grid}.academic-rollover-card.active{background:#fffaf0;border-color:#d7c59f}.academic-rollover-card p{color:var(--muted);margin:0;font-size:12px;line-height:1.65}.rollover-confirmation{background:#fff;border:1px solid #d7c59f;border-radius:12px;gap:12px;padding:14px;display:grid}.rollover-confirmation label{color:#65523b;gap:7px;font-size:11px;line-height:1.5;display:grid}.rollover-confirmation label:first-child{grid-template-columns:auto 1fr;align-items:start}.rollover-confirmation label:first-child input{margin-top:2px}.rollover-safe-note{color:#29604f;background:#edf5f1;border-radius:10px;align-items:center;gap:8px;padding:12px;font-size:11px;display:flex}.academic-rollover-card .primary-button{width:100%;margin:0}.profile-history-card{margin-top:16px}.profile-history-card>p{color:var(--muted)}.profile-history-list{gap:8px;display:grid}.profile-history-list article{color:var(--muted);background:#f7f7f4;border-radius:10px;grid-template-columns:auto 1fr auto auto;align-items:center;gap:16px;padding:12px;font-size:10px;display:grid}.profile-history-list strong{color:var(--forest)}.profile-history-list time{text-align:right}.class-workspaces-module{max-width:1240px;margin:0 auto;padding:34px clamp(24px,4vw,58px) 72px}.class-workspaces-hero{color:#edf4f0;background:linear-gradient(125deg,#172925,var(--forest) 72%,#6d5532 150%);border-radius:22px;grid-template-columns:1fr auto;align-items:center;gap:30px;padding:36px;display:grid}.class-workspaces-hero h1{color:#fff;font-family:var(--font-heading);margin:14px 0 9px;font-size:clamp(38px,5vw,56px);font-weight:540}.class-workspaces-hero p{color:#c7d4cf}.class-privacy-seal{background:#ffffff0f;border:1px solid #ffffff29;border-radius:18px;justify-items:center;gap:7px;min-width:210px;padding:22px;display:grid}.class-privacy-seal svg{color:#dbbc83}.class-privacy-seal span{color:#c7d4cf;font-size:11px}.class-workspace-create{background:#fffaf0;border:1px solid #d7c59f;border-radius:17px;grid-template-columns:1fr 1fr;align-items:center;gap:24px;margin-top:18px;padding:24px;display:grid}.class-workspace-create h2{color:var(--forest);margin:7px 0}.class-workspace-create p{color:var(--muted);font-size:11px;line-height:1.65}.class-workspace-create form{grid-template-columns:1fr 1fr;gap:10px;display:grid}.class-workspace-create label{color:#65523b;gap:6px;font-size:11px;font-weight:700;display:grid}.class-workspace-create input,.class-workspace-create select{background:#fff;border:1px solid #c9b27f;border-radius:9px;padding:10px}.class-workspace-create .primary-button{grid-column:1/-1;width:100%;margin:0}.class-workspace-list{margin-top:20px}.class-workspace-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.class-workspace-grid article{background:#fff;border:1px solid #ddd6c9;border-radius:14px;grid-template-columns:1fr auto;gap:12px;padding:18px;display:grid}.class-workspace-grid article>div{gap:4px;display:grid}.class-workspace-grid strong{color:var(--forest);font-size:18px}.class-workspace-grid span{color:var(--muted);font-size:10px}.class-workspace-grid svg{color:#368268}.class-workspace-grid .secondary-button{grid-column:1/-1}.class-workspace-grid article.archived{opacity:.68;background:#f4f2ed}.class-workspace-grid article.archived svg{color:#80612f}.class-workspace-actions{grid-column:1/-1;grid-template-columns:1fr 1fr;gap:8px!important;display:grid!important}.class-workspace-actions .primary-button{grid-column:1/-1;width:100%;margin:0}.class-workspace-actions .secondary-button,.class-archive-button{margin:0;grid-column:auto!important}.class-archive-button{grid-column:1/-1!important}.class-context-create form{grid-template-columns:1fr 1fr;gap:10px;width:min(520px,100%);margin-top:12px;display:grid}.class-context-create label{text-align:left;color:#42534c;gap:6px;font-size:12px;font-weight:700;display:grid}.class-context-create input,.class-context-create select{background:#fff;border:1px solid #c9b27f;border-radius:9px;padding:11px}.class-context-create .primary-button{grid-column:1/-1;width:100%;margin:0}.archive-list{margin-top:20px}.archive-list-heading{justify-content:space-between;align-items:end;margin-bottom:12px;display:flex}.archive-list-heading>span{color:var(--muted);font-size:11px}.archive-empty{min-height:180px;color:var(--muted);text-align:center;background:#ffffffb3;border:1px dashed #cfc6b8;border-radius:17px;flex-direction:column;justify-content:center;align-items:center;gap:9px;padding:28px;display:flex}.archive-empty strong{color:var(--forest)}.archive-record-card{background:#fff;border:1px solid #ddd6c9;border-radius:15px;margin-top:10px;padding:20px}.archive-record-title{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.archive-record-title>div{gap:5px;display:grid}.archive-record-title strong{color:var(--forest)}.archive-record-title span,.archive-record-card p{color:var(--muted);font-size:11px}.archive-record-card p{line-height:1.55}.archive-status{border-radius:999px;padding:6px 9px;font-weight:750;font-size:9px!important}.archive-status.draft{color:#80612f;background:#fff3d9}.archive-status.in_review{color:#1f4d78;background:#e8eef5}.archive-status.approved{color:#167b59;background:#eaf6f1}.archive-status.superseded{color:var(--muted);background:#eef0f2}.archive-record-card details{border-top:1px solid #eee9e0;margin-top:13px}.archive-record-card summary{cursor:pointer;color:#80612f;padding-top:13px;font-size:11px;font-weight:700}.archive-revision-row{color:var(--muted);background:#f7f7f4;border-radius:8px;grid-template-columns:1fr 1fr auto;gap:12px;margin-top:8px;padding:10px;font-size:10px;display:grid}.archive-revision-row time{text-align:right}.generation-audit-list{margin-top:22px}.generation-audit-card{background:#fbfdfc;border:1px solid #d7ddd9;border-radius:15px;margin-top:10px;padding:18px 20px}.generation-audit-card>div{justify-content:space-between;gap:16px;display:flex}.generation-audit-card>div strong{color:var(--forest)}.generation-audit-card>div span{color:var(--muted);overflow-wrap:anywhere;font-family:monospace;font-size:9px}.generation-audit-card dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0 0;display:grid}.generation-audit-card dl div{background:#fff;border-radius:9px;gap:4px;padding:10px;display:grid}.generation-audit-card dt{color:#7b8798;font-size:9px}.generation-audit-card dd{color:#34433e;overflow-wrap:anywhere;margin:0;font-size:10px;font-weight:650}.generation-audit-filters{background:#f7f9f8;border:1px solid #e1e5e2;border-radius:12px;grid-template-columns:1.4fr 1fr 1fr auto;align-items:end;gap:12px;margin:14px 0;padding:15px;display:grid}.generation-audit-filters label{color:#52615c;gap:6px;font-size:10px;font-weight:700;display:grid}.generation-audit-filters input,.generation-audit-filters select{color:#34433e;background:#fff;border:1px solid #ccd5d1;border-radius:9px;min-width:0;padding:10px}.generation-audit-actions{border-top:1px solid #e5e9e7;align-items:center;margin-top:14px;padding-top:12px}.generation-decision-detail{background:#eef4f1;border-radius:11px;margin-top:12px;padding:14px}.generation-decision-detail>strong{color:var(--forest)}.generation-decision-detail p{color:var(--muted);font-size:11px}.generation-decision-detail dl{margin-top:10px}.guided-audit-summary{background:linear-gradient(135deg,#f2f8f5,#fff);border:1px solid #b9d7c9;border-radius:14px;gap:14px;margin-top:18px;padding:18px;display:grid}.guided-audit-summary h4{color:#214b3e;margin:4px 0 0}.guided-audit-summary dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;display:grid}.guided-audit-summary dl>div{background:#fff;border:1px solid #dce8e2;border-radius:10px;padding:12px}.guided-audit-summary dt{color:#63716c;font-size:10px;font-weight:700}.guided-audit-summary dd{color:var(--forest);margin:4px 0 0;font-weight:700}.guided-audit-summary .secondary-button{justify-self:start}@media (width<=760px){.guided-audit-summary dl{grid-template-columns:1fr}}.generation-export-buttons{flex-wrap:wrap;gap:8px;display:flex}.generation-load-more{justify-content:center;padding:18px 0 2px;display:flex}.generation-load-more button{align-items:center;gap:8px;display:inline-flex}html[data-theme=dark] .archive-summary-grid article,html[data-theme=dark] .local-import-card,html[data-theme=dark] .account-export-card,html[data-theme=dark] .retention-policy-card,html[data-theme=dark] .archive-record-card{background:#18211e;border-color:#33413c}html[data-theme=dark] .archive-summary-grid strong,html[data-theme=dark] .local-import-card h2,html[data-theme=dark] .account-export-card h2,html[data-theme=dark] .retention-policy-card h2,html[data-theme=dark] .archive-list-heading h2,html[data-theme=dark] .archive-record-title strong{color:#e6ece8}html[data-theme=dark] .archive-empty{background:#141c19;border-color:#3c4a45}html[data-theme=dark] .delete-records-panel{background:#2a1c19;border-color:#70443d}html[data-theme=dark] .confirmation-phrase input{color:#f3e8e5;background:#201613;border-color:#70443d}html[data-theme=dark] .account-closure-card{background:#241a18;border-color:#70443d}html[data-theme=dark] .account-closure-card h2{color:#f3c3bb}html[data-theme=dark] .account-closure-card p,html[data-theme=dark] .account-closure-card ul{color:#d4b5af}html[data-theme=dark] .account-closure-confirmation{background:#1d1513;border-color:#70443d}html[data-theme=dark] .account-closure-confirmation input:not([type=checkbox]){color:#f3e8e5;background:#201613;border-color:#70443d}html[data-theme=dark] .profile-edit-card,html[data-theme=dark] .academic-rollover-card,html[data-theme=dark] .profile-history-card{background:#18211e;border-color:#33413c}html[data-theme=dark] .profile-edit-card h2,html[data-theme=dark] .academic-rollover-card h2,html[data-theme=dark] .profile-history-card h2,html[data-theme=dark] .profile-history-list strong{color:#e6ece8}html[data-theme=dark] .profile-edit-card input,html[data-theme=dark] .rollover-confirmation input:not([type=checkbox]){color:#e6ece8;background:#141c19;border-color:#3c4a45}html[data-theme=dark] .academic-rollover-card.active,html[data-theme=dark] .rollover-confirmation{background:#241f16;border-color:#6b5b3d}html[data-theme=dark] .profile-history-list article{background:#141c19}html[data-theme=dark] .academic-year-archive-filter{background:#241f16;border-color:#6b5b3d}html[data-theme=dark] .academic-year-archive-filter h2{color:#e6ece8}html[data-theme=dark] .academic-year-archive-filter select{color:#e6ece8;background:#141c19;border-color:#6b5b3d}:root{--ivory:#f7f4ee;--gold:#b8924a;--burgundy:#743b45;--forest:#1f5a43;--sidebar:#14241f;--navy:#0b2545;--blue:#2e74b5;--blue-dark:#1f4d78;--blue-pale:#e8eef5;--blue-soft:#f4f7fb;--green:#167b59;--green-pale:#eaf6f1;--ink:#1e2b27;--muted:#46544e;--line:#e1e6e3;--surface:#fff;--page:#f5f6f8}.app-shell{overflow:visible}.app-content{min-height:100vh;margin-left:264px;transition:margin-left .22s}.app-sidebar{z-index:50;color:#dfe7e3;background:var(--sidebar);border-right:1px solid #ffffff14;flex-direction:column;width:264px;padding:18px 14px;transition:width .22s,transform .22s;display:flex;position:fixed;inset:0 auto 0 0}.sidebar-brand{border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;min-height:56px;padding:0 7px 14px;display:flex}.app-sidebar .brand{color:#fff;text-align:left;background:0 0;border:0;min-width:0;padding:0}.app-sidebar .brand-mark{background:linear-gradient(145deg,#c29a55,#8a6834);position:relative;box-shadow:0 8px 22px #00000038}.app-sidebar .brand-mark svg{width:34px;height:34px}.mark-ring,.mark-tick,.mark-needle,.mark-land,.mark-lantern{vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}.mark-ring{stroke:#d2b06f;stroke-width:1.6px}.mark-tick,.mark-needle,.mark-land{stroke:#f2e5cb;stroke-width:1.5px}.mark-lantern{stroke:#d2b06f;stroke-width:1.4px}.mark-needle-fill,.mark-flame{fill:#c59b53}.mark-center{fill:#f6f1e7;stroke:#172925;stroke-width:1px}.app-sidebar .brand-mark i{background:#ebd6a8;border:2px solid #8a6834;border-radius:50%;width:7px;height:7px;position:absolute;bottom:5px;right:5px}.brand-copy{white-space:nowrap;flex-direction:column;display:flex;overflow:hidden}.brand-copy strong{font-family:var(--font-heading);letter-spacing:.08em;font-size:19px}.brand-copy small{color:#9eb0aa;letter-spacing:.12em;text-transform:uppercase;margin-top:4px;font-size:8px}.collapse-button,.theme-button,.mobile-menu-button{color:#b7c5c0;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;place-items:center;width:36px;height:36px;display:grid}.app-sidebar .main-nav{flex-direction:column;flex:1;align-items:stretch;gap:4px;padding:19px 0;display:flex;overflow-y:auto}.app-sidebar .main-nav button{color:#aebdb8;text-align:left;white-space:nowrap;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;width:100%;height:44px;min-height:44px;padding:0 12px;font-size:12px;font-weight:620;display:flex}.app-sidebar .main-nav button:hover{color:#fff;background:#ffffff0f}.app-sidebar .main-nav button.active{color:#fff4df;background:#b58a452b;box-shadow:inset 2px 0 #c89c54}.app-sidebar .main-nav button em{background:var(--gold);color:#192420;border-radius:5px;margin-left:auto;padding:2px 5px;font-size:8px;font-style:normal;font-weight:800}.nav-section-label{color:#657b74;letter-spacing:.14em;text-transform:uppercase;margin:13px 12px 7px;font-size:8px;font-weight:800}.sidebar-bottom{border-top:1px solid #ffffff14;align-items:center;gap:8px;padding:14px 5px 0;display:flex}.sidebar-bottom .curriculum-pill{color:#cbd8d3;white-space:nowrap;background:#ffffff0d;border-color:#ffffff14;flex:1;min-width:0;overflow:hidden}.sidebar-bottom .teacher-avatar{background:linear-gradient(145deg,var(--gold),#744f28);flex:none}.app-sidebar.collapsed{width:76px}.app-sidebar.collapsed+.app-content{margin-left:76px}.app-sidebar.collapsed .brand-copy,.app-sidebar.collapsed .main-nav button span,.app-sidebar.collapsed .main-nav button em,.app-sidebar.collapsed .nav-section-label,.app-sidebar.collapsed .curriculum-pill span,.app-sidebar.collapsed .collapse-button{display:none}.app-sidebar.collapsed .sidebar-brand{justify-content:center;padding-inline:0}.app-sidebar.collapsed .main-nav button{justify-content:center;padding:0}.mobile-menu-button{z-index:70;color:#fff;background:var(--sidebar);display:none;position:fixed;top:14px;left:14px}.dashboard{max-width:1440px;margin:0 auto;padding:34px clamp(28px,4vw,64px) 70px}.dashboard-top{justify-content:space-between;align-items:center;margin-bottom:29px;display:flex}.dashboard-top span,.section-title span{color:#8a7760;letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:750}.dashboard-top h1{color:#26332f;font-family:var(--font-heading);margin:6px 0 0;font-size:23px;font-weight:560}.dashboard-top button{color:#596760;background:#fff;border:1px solid #ddd7cc;border-radius:12px;place-items:center;width:40px;height:40px;display:grid;position:relative}.dashboard-top button i{background:var(--burgundy);border-radius:50%;width:6px;height:6px;position:absolute;top:8px;right:8px}.dashboard-hero{background:linear-gradient(125deg,#172925 0%,#253d36 66%,#5c4931 150%);border-radius:24px;grid-template-columns:1.25fr .75fr;align-items:center;min-height:340px;padding:48px 54px;display:grid;position:relative;overflow:hidden;box-shadow:0 24px 55px #1c302a2b}.dashboard-hero h2{color:#fff;font-family:var(--font-heading);letter-spacing:-.035em;margin:17px 0;font-size:clamp(36px,4vw,55px);font-weight:520;line-height:1.03}.dashboard-hero h2 em{color:#dbbc83;font-style:normal;font-weight:520}.dashboard-hero p{color:#bbcac4;max-width:650px;margin:0;font-size:14px;line-height:1.7}.dashboard-hero button{color:#18231f;background:#c39a55;border:0;border-radius:10px;align-items:center;gap:10px;min-height:44px;margin-top:25px;padding:0 17px;font-size:12px;font-weight:750;display:inline-flex}.hero-art{color:#d7ba83;border:1px solid #dbbc833d;border-radius:50%;justify-self:center;place-items:center;width:235px;height:235px;display:grid;position:relative}.hero-art svg{z-index:2;stroke-width:1px;position:relative}.hero-art i{font-family:var(--font-heading);color:#ffffff80;font-size:29px;font-style:normal;position:absolute;top:22px;right:23px}.orbit{border:1px solid #dbbc832e;border-radius:50%;position:absolute;transform:rotate(34deg)}.orbit-one{width:310px;height:115px}.orbit-two{width:115px;height:310px}.dashboard-section{margin-top:46px}.section-title{justify-content:space-between;align-items:end;margin-bottom:18px;display:flex}.section-title h2{color:#27342f;font-family:var(--font-heading);margin:5px 0 0;font-size:27px;font-weight:560}.section-title small{color:#8c958f;font-size:10px}.module-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;display:grid}.module-grid article{background:#ffffffdb;border:1px solid #e0dbd1;border-radius:17px;flex-direction:column;min-height:210px;padding:23px;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex;box-shadow:0 8px 22px #28312c09}.module-grid article:hover{border-color:#cfb98f;transform:translateY(-3px);box-shadow:0 17px 34px #28312c17}.module-grid article>span{width:41px;height:41px;color:var(--forest);background:#eef1ec;border-radius:11px;place-items:center;display:grid}.module-grid h3{color:#26332f;margin:18px 0 8px;font-size:15px}.module-grid p{color:#707a75;margin:0;font-size:11.5px;line-height:1.6}.module-grid button{color:#8a6834;background:0 0;border:0;align-items:center;gap:6px;margin-top:auto;padding:0;font-size:11px;font-weight:750;display:flex}.dashboard-columns{grid-template-columns:1.15fr .85fr;gap:18px;margin-top:42px;display:grid}.quick-panel,.notice-panel{background:#fff;border:1px solid #e0dbd1;border-radius:17px;padding:24px}.quick-links{grid-template-columns:1fr 1fr;gap:8px;display:grid}.quick-links button{color:#4d5a54;text-align:left;background:#faf9f6;border:1px solid #e7e2d9;border-radius:10px;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;min-height:42px;padding:0 12px;font-size:11px;display:grid}.quick-links button:disabled{cursor:not-allowed;opacity:.68}.quick-links button small{color:#9b7a43;letter-spacing:.08em;text-transform:uppercase;font-size:8px;font-weight:800}.notice{border-top:1px solid #eee9e0;grid-template-columns:auto 1fr auto;align-items:start;gap:10px;padding:12px 0;display:grid}.notice>i{background:var(--gold);border-radius:50%;width:8px;height:8px;margin-top:4px}.notice strong{color:#35413c;font-size:11px}.notice p{color:#78817d;margin:4px 0 0;font-size:10px}.notice time{color:#a29787;font-size:9px}html[data-theme=dark] body{--page:#101714;--surface:#17201d;--ink:#e8eee9;--line:#33413c;--navy:#e6d5b5;--muted:#9eaaa5;background:var(--page)}html[data-theme=dark] .dashboard-top h1,html[data-theme=dark] .section-title h2,html[data-theme=dark] .module-grid h3{color:#e6ece8}html[data-theme=dark] .module-grid article,html[data-theme=dark] .quick-panel,html[data-theme=dark] .notice-panel,html[data-theme=dark] .dashboard-top button{background:#18211e;border-color:#33413c}.theme-button{flex:none}.fopos-ai-module,.privacy-center-module{max-width:1240px;margin:0 auto;padding:34px clamp(24px,4vw,58px) 72px}.fopos-ai-hero,.privacy-center-hero{color:#edf4f0;background:linear-gradient(125deg,#172925,var(--forest) 72%,#6d5532 150%);border-radius:22px;grid-template-columns:1fr auto;align-items:center;gap:34px;padding:38px;display:grid}.fopos-ai-hero h1,.privacy-center-hero h1{color:#fff;font-family:var(--font-heading);margin:14px 0;font-size:clamp(40px,5vw,62px);line-height:1}.fopos-ai-hero h1 em,.privacy-center-hero h1 em{color:#dbbc83;font-style:normal}.fopos-ai-hero p,.privacy-center-hero p{color:#c7d4cf;max-width:720px;line-height:1.7}.ai-privacy-seal{text-align:center;background:#ffffff0f;border:1px solid #ffffff29;border-radius:18px;justify-items:center;gap:7px;width:210px;padding:24px;display:grid}.ai-privacy-seal span{color:#c7d4cf;font-size:11px;line-height:1.45}.ai-empty-state,.privacy-action-card{background:#fff;border:1px solid #ddd6c9;border-radius:17px;align-items:center;gap:22px;margin-top:20px;padding:24px;display:flex}.ai-empty-state>div,.privacy-action-card>div{flex:1}.ai-empty-state h2,.privacy-action-card strong{color:var(--forest);margin:0}.ai-empty-state p,.privacy-action-card p{color:var(--muted);line-height:1.6}.ai-empty-state .primary-button{width:auto;margin:0;padding:0 18px}.ai-metric-grid,.privacy-principle-grid{grid-template-columns:repeat(4,1fr);gap:12px;margin-top:20px;display:grid}.ai-metric-grid article,.privacy-principle-grid article{background:#fff;border:1px solid #ddd6c9;border-radius:15px;gap:8px;padding:20px;display:grid}.ai-metric-grid span,.privacy-principle-grid span{color:var(--muted);font-size:11px;line-height:1.5}.ai-metric-grid strong{color:var(--forest);font-size:25px}.privacy-principle-grid svg{color:var(--gold)}.ai-decision-card{background:#edf5f1;border:1px solid #c7dbd2;border-left:6px solid #3e7d68;border-radius:16px;grid-template-columns:190px 1fr;gap:24px;margin-top:16px;padding:24px;display:grid}.ai-decision-card.critical{background:#fbf0ed;border-left-color:#b65a4b}.ai-decision-card.monitor{border-left-color:var(--gold);background:#fbf5ea}.ai-decision-card>div:first-child{align-content:center;justify-items:start;gap:5px;display:grid}.ai-decision-card>div:first-child strong{font-size:24px}.ai-decision-card h2{color:var(--forest);margin:0}.ai-decision-card p{line-height:1.6}.ai-decision-card small{color:var(--muted)}.ai-governance-note{color:#6d5532;background:#fff8ea;border:1px solid #d7c59f;border-radius:14px;gap:13px;margin-top:14px;padding:18px;display:flex}.ai-governance-note p{margin:5px 0 0;line-height:1.55}.privacy-center-hero{grid-template-columns:1fr}.privacy-lifecycle-card{background:#fff;border:1px solid #ddd6c9;border-radius:17px;margin-top:16px;padding:24px}.privacy-lifecycle-card h2{color:var(--forest);margin:0 0 16px}.privacy-lifecycle-table{overflow-x:auto}.privacy-lifecycle-table table{border-collapse:collapse;width:100%;min-width:720px}.privacy-lifecycle-table th,.privacy-lifecycle-table td{text-align:left;vertical-align:top;border-bottom:1px solid #e7e2d9;padding:13px;font-size:12px}.privacy-lifecycle-table thead th{color:var(--muted)}.privacy-action-card .secondary-button{min-height:44px;padding:0 16px}@media (width<=1050px){.module-grid{grid-template-columns:repeat(2,1fr)}.dashboard-hero{grid-template-columns:1fr}.hero-art{display:none}.dashboard-columns{grid-template-columns:1fr}}@media (width<=760px){.mobile-menu-button{display:grid}.app-sidebar{width:min(86vw,300px);transform:translate(-105%)}.app-sidebar.mobile-open{transform:translate(0)}.app-content,.app-sidebar.collapsed+.app-content{margin-left:0}.nav-scrim{z-index:45;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0a110e8c;border:0;position:fixed;inset:0}.dashboard{padding:76px 18px 50px}.dashboard-top h1{font-size:19px}.dashboard-hero{min-height:390px;padding:34px 25px}.module-grid,.quick-links,.ai-metric-grid,.privacy-principle-grid,.archive-summary-grid{grid-template-columns:1fr}.dashboard-columns{margin-top:28px}.app-sidebar .main-nav button{min-height:48px}.main-nav button{flex:none;min-width:96px;min-height:48px}.fopos-ai-module,.privacy-center-module,.record-archive-module{padding:76px 18px 50px}.fopos-ai-hero,.privacy-center-hero,.record-archive-hero{grid-template-columns:1fr;padding:26px}.ai-privacy-seal,.archive-security-seal{width:auto;min-width:0}.ai-empty-state,.privacy-action-card{flex-direction:column;align-items:stretch}.ai-decision-card,.local-import-card,.account-export-card,.retention-policy-card,.account-closure-card,.academic-year-archive-filter{grid-template-columns:1fr}.trash-recovery{flex-direction:column;align-items:stretch}.archive-record-title{flex-direction:column}.archive-revision-row{grid-template-columns:1fr 1fr}.archive-revision-row time{text-align:left;grid-column:1/-1}.profile-settings-module{padding:76px 18px 50px}.profile-settings-hero{grid-template-columns:1fr;padding:26px}.profile-version-seal{width:auto;min-width:0}.profile-settings-grid{grid-template-columns:1fr}.profile-history-list article{grid-template-columns:1fr 1fr}.profile-history-list article span:first-of-type,.profile-history-list time{text-align:left;grid-column:1/-1}}.class-workspace-create label small{color:#806f55;font-size:9px;font-weight:500}.archive-session-confirm{background:#fff8e9;border:1px solid #e8c89b;border-radius:9px;grid-column:1/-1;align-items:flex-start;gap:8px;padding:9px;line-height:1.4;color:#704b1e!important;font-size:10px!important;display:flex!important}.archive-session-confirm input{flex:none;width:17px;height:17px}.rollover-session-warning{color:#8b3027;background:#fff2ef;border:1px solid #e5a89f;border-radius:10px;padding:12px;font-size:11px;line-height:1.55}@media (width<=760px){.class-workspaces-module{padding:76px 18px 50px}.class-workspaces-hero,.class-workspace-create{grid-template-columns:1fr;padding:26px}.class-privacy-seal{min-width:0}.class-workspace-grid{grid-template-columns:1fr}}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--page);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0}button,select{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;overflow:hidden}.topbar{border-bottom:1px solid var(--line);z-index:40;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff0;justify-content:space-between;align-items:center;height:72px;padding:0 clamp(20px,5vw,76px);display:flex;position:sticky;top:0}.brand{color:var(--navy);align-items:center;gap:11px;text-decoration:none;display:inline-flex}.brand-mark{background:var(--navy);color:#fff;border-radius:10px;place-items:center;width:38px;height:38px;display:grid;box-shadow:0 5px 12px #0b25452e}.brand>span:last-child{flex-direction:column;line-height:1.05;display:flex}.brand strong{letter-spacing:.02em;font-size:19px}.brand small{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-top:4px;font-size:10px;font-weight:560}.topbar-meta{align-items:center;gap:14px;display:flex}.curriculum-pill,.approved-pill{color:var(--green);background:var(--green-pale);border:1px solid #bfe4d6;border-radius:999px;align-items:center;gap:6px;padding:7px 11px;font-size:12px;font-weight:700;display:inline-flex}.teacher-avatar{color:#fff;background:linear-gradient(145deg, var(--blue), var(--navy));border-radius:50%;place-items:center;width:36px;height:36px;font-size:12px;font-weight:750;display:grid}.hero{grid-template-columns:minmax(0,1fr) 500px;align-items:center;gap:clamp(44px,7vw,100px);max-width:1280px;margin:0 auto;padding:72px 40px 62px;display:grid;position:relative}.hero:before{content:"";pointer-events:none;background:radial-gradient(circle,#2e74b51a,#0000 68%);border-radius:50%;width:620px;height:620px;position:absolute;top:-230px;left:-330px}.eyebrow,.section-kicker{color:var(--blue);letter-spacing:.11em;text-transform:uppercase;align-items:center;gap:7px;font-size:12px;font-weight:740;display:inline-flex}.hero h1{color:var(--navy);font-family:var(--font-heading);letter-spacing:-.045em;margin:20px 0 22px;font-size:clamp(45px,5vw,68px);font-weight:620;line-height:.99}.hero h1 em{color:var(--blue);font-weight:550}.hero-copy>p{color:#526072;max-width:625px;margin:0;font-size:18px;line-height:1.72}.hero-stats{gap:42px;margin-top:34px;display:flex}.hero-stats div{grid-template-columns:auto auto;align-items:center;column-gap:9px;display:grid}.hero-stats strong{color:var(--navy);font-size:30px;font-weight:720}.hero-stats span{max-width:72px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:11px;line-height:1.25}.builder-card{border:1px solid var(--line);background:#fff;border-radius:20px;padding:27px;position:relative;box-shadow:0 24px 60px #1b2e481f}.builder-card:after{content:"";z-index:-1;border:1px solid #2e74b529;border-radius:20px;position:absolute;inset:8px -9px -9px 8px}.card-heading,.panel-intro>div{align-items:center;gap:12px;display:flex}.step-badge{color:#fff;background:var(--blue);letter-spacing:.06em;border-radius:10px;flex:none;place-items:center;width:36px;height:36px;font-size:11px;font-weight:760;display:grid}.card-heading h2,.panel-intro h3{color:var(--navy);letter-spacing:-.02em;margin:0;font-size:19px}.card-heading p,.panel-intro p{color:var(--muted);margin:3px 0 0;font-size:12px}.field-grid{gap:13px;display:grid}.compact-grid{grid-template-columns:1fr 1fr;margin-top:22px}.field{margin-top:15px;display:block}.field>span{color:#475467;margin:0 0 7px;font-size:12px;font-weight:680;display:block}.select-wrap{background:#fff;border:1px solid #cbd5e1;border-radius:10px;align-items:center;height:44px;transition:border .16s,box-shadow .16s;display:flex;position:relative}.select-wrap:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px #2e74b51f}.select-wrap.locked{background:#f8fafc}.select-wrap select{appearance:none;width:100%;height:100%;color:var(--ink);background:0 0;border:0;outline:0;padding:0 38px 0 13px;font-size:12px;font-weight:580}.select-wrap select:disabled{color:#344054;opacity:1}.select-wrap svg{color:#8290a4;pointer-events:none;position:absolute;right:13px}.field-help{color:#7b8798;margin-top:6px;font-size:10.5px;line-height:1.35;display:block}.output-choice{background:#f5f9fd;border:1px solid #b8d4ed;border-radius:11px;grid-template-columns:25px 1fr auto;align-items:center;gap:9px;margin-top:18px;padding:13px;display:grid}.choice-check{color:#fff;background:var(--blue);border-radius:6px;place-items:center;width:21px;height:21px;display:grid}.output-choice div:nth-child(2){flex-direction:column;display:flex}.output-choice strong{color:var(--navy);font-size:12px}.output-choice span{color:var(--muted);margin-top:3px;font-size:9.5px}.output-choice>svg{color:var(--blue)}.primary-button,.download-button,.secondary-button{border:0;border-radius:10px;justify-content:center;align-items:center;gap:8px;font-weight:700;transition:transform .16s,box-shadow .16s,background .16s;display:inline-flex}.primary-button{color:#fff;background:linear-gradient(135deg, var(--blue) 0%, var(--blue-dark) 100%);width:100%;min-height:48px;margin-top:17px;font-size:13px;box-shadow:0 10px 20px #2e74b538}.primary-button:hover:not(:disabled),.download-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 13px 24px #2e74b547}.privacy-note{color:#8994a5;justify-content:center;align-items:center;gap:5px;margin:11px 0 0;font-size:9.5px;display:flex}.generation-progress{background:#f6f8fb;border-radius:9px;margin-top:15px;padding:11px 12px}.generation-progress>div:first-child{color:#566477;justify-content:space-between;font-size:10.5px;display:flex}.generation-progress strong{color:var(--blue)}.progress-track{background:#dce4ee;border-radius:99px;height:5px;margin-top:8px;overflow:hidden}.progress-track span{background:var(--blue);border-radius:inherit;height:100%;transition:width .26s;display:block}.spin{animation:.85s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.principles-strip{background:var(--navy);border-radius:16px;grid-template-columns:repeat(3,1fr);max-width:1200px;margin:0 auto;padding:24px 38px;display:grid;box-shadow:0 18px 40px #0b254521}.principles-strip>div{color:#caddf0;border-right:1px solid #ffffff24;align-items:center;gap:12px;min-height:45px;padding:0 24px;display:flex}.principles-strip>div:last-child{border:0}.principles-strip svg{color:#77b4e8;flex:none}.principles-strip span{flex-direction:column;font-size:10.5px;display:flex}.principles-strip strong{color:#fff;margin-bottom:4px;font-size:11.5px}.empty-state-section,.results-section{max-width:1200px;margin:0 auto;padding:86px 38px 100px}.empty-state-section>h2{color:var(--navy);font-family:var(--font-heading);letter-spacing:-.035em;margin:12px 0 28px;font-size:37px}.feature-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.feature-grid article{border:1px solid var(--line);background:#fff;border-radius:14px;min-height:195px;padding:23px;transition:transform .18s,box-shadow .18s}.feature-grid article:hover{transform:translateY(-3px);box-shadow:0 16px 30px #192e4814}.feature-grid article>span{width:40px;height:40px;color:var(--blue);background:var(--blue-pale);border-radius:9px;place-items:center;display:grid}.feature-grid h3{color:var(--navy);margin:19px 0 9px;font-size:15px}.feature-grid p{color:var(--muted);margin:0;font-size:12px;line-height:1.65}.results-section{scroll-margin-top:85px}.results-header{justify-content:space-between;align-items:flex-end;gap:28px;display:flex}.results-header h2{color:var(--navy);font-family:var(--font-heading);letter-spacing:-.035em;margin:12px 0 5px;font-size:38px}.results-header p{color:var(--muted);margin:0;font-size:12px}.result-actions{gap:9px;display:flex}.secondary-button,.download-button{min-height:42px;padding:0 15px;font-size:11px}.secondary-button{color:var(--blue-dark);background:#fff;border:1px solid #b9c8d9}.download-button{color:#fff;background:var(--blue);box-shadow:0 8px 17px #2e74b52e}.result-tabs{border-bottom:1px solid var(--line);gap:3px;margin-top:30px;display:flex}.result-tabs button{min-height:47px;color:var(--muted);background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:8px;padding:0 17px;font-size:12px;font-weight:650;display:inline-flex}.result-tabs button span{min-width:23px;color:var(--green);background:var(--green-pale);border-radius:99px;padding:3px 6px;font-size:9px}.tab-panel{padding-top:28px}.panel-intro{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.panel-intro>strong{color:var(--blue-dark);background:var(--blue-pale);border-radius:8px;align-items:center;gap:6px;padding:8px 11px;font-size:11px;display:inline-flex}.timeline{position:relative}.phase-card{grid-template-columns:44px 1fr;gap:15px;display:grid}.phase-index{flex-direction:column;align-items:center;display:flex}.phase-index span{width:32px;height:32px;color:var(--blue);background:#fff;border:1px solid #a9c9e5;border-radius:50%;flex:none;place-items:center;font-size:9px;font-weight:750;display:grid}.phase-index i{background:#cdd9e6;flex:1;width:1px;min-height:148px}.phase-card:last-child .phase-index i{background:0 0}.phase-content{border:1px solid var(--line);background:#fff;border-radius:13px;margin-bottom:14px;overflow:hidden}.phase-title{background:#f8fafc;border-bottom:1px solid #e3e8ef;justify-content:space-between;align-items:center;min-height:49px;padding:0 17px;display:flex}.phase-title>div{align-items:center;gap:8px;display:flex}.phase-title h4{color:var(--navy);margin:0;font-size:13px}.phase-title span{color:#91a0b2;font-family:var(--font-geist-mono), monospace;font-size:8.5px}.phase-title strong{color:var(--blue);font-size:10.5px}.phase-grid{grid-template-columns:1fr 1fr 190px;gap:18px;padding:15px 17px 17px;display:grid}.phase-grid>div>span,.mini-label{color:#8693a4;letter-spacing:.08em;text-transform:uppercase;margin-bottom:7px;font-size:8.5px;font-weight:750;display:block}.phase-grid p{color:#495669;margin:0;font-size:11px;line-height:1.55}.evidence-box{border-left:1px solid #e1e7ee;padding-left:16px}.evidence-box p{color:var(--green);align-items:center;gap:6px;font-weight:650;display:flex}.decision-grid{grid-template-columns:1.55fr .75fr;gap:18px;display:grid}.decision-main,.decision-grid aside{border:1px solid var(--line);background:#fff;border-radius:14px;padding:26px}.decision-main h4{color:var(--navy);font-family:var(--font-heading);margin:0 0 12px;font-size:27px}.decision-main>p{color:#556274;margin:0;font-size:13px;line-height:1.75}.method-list{flex-wrap:wrap;gap:8px;margin-top:20px;display:flex}.method-list span{color:var(--blue-dark);background:var(--blue-pale);border-radius:7px;align-items:center;gap:5px;padding:7px 9px;font-size:10.5px;font-weight:650;display:inline-flex}.aside-heading{color:#8c5a11;align-items:center;gap:8px;display:flex}.aside-heading h4{color:var(--navy);margin:0;font-size:14px}.risk-item{border-top:1px solid #e2e7ed;margin-top:18px;padding-top:17px}.risk-item strong{font-size:11.5px}.risk-item p{color:var(--muted);margin:6px 0 0;font-size:10.5px;line-height:1.55}.validation-summary{border:1px solid var(--line);background:#fff;border-radius:14px;grid-template-columns:150px 1fr;align-items:center;gap:27px;padding:27px;display:grid}.score-ring{--score:0deg;background:conic-gradient(var(--green) var(--score), #e3ebe7 0);border-radius:50%;place-items:center;width:124px;height:124px;display:grid;position:relative}.score-ring:before{content:"";background:#fff;border-radius:50%;position:absolute;inset:9px}.score-ring>div{z-index:1;flex-direction:column;align-items:center;display:flex}.score-ring strong{color:var(--navy);font-size:31px}.score-ring span{color:var(--muted);font-size:10px}.validation-summary h3{color:var(--navy);margin:13px 0 7px;font-size:21px}.validation-summary p{max-width:650px;color:var(--muted);margin:0;font-size:12px;line-height:1.6}.validation-summary small{color:#929dad;font-family:var(--font-geist-mono), monospace;margin-top:12px;font-size:8.5px;display:block}.score-grid{border:1px solid var(--line);background:#fff;border-radius:14px;grid-template-columns:1fr 1fr;gap:17px 34px;margin-top:16px;padding:22px 25px;display:grid}.score-grid>div>span{justify-content:space-between;margin-bottom:7px;display:flex}.score-grid strong{color:#475467;font-size:10px}.score-grid em{color:var(--green);font-size:10px;font-style:normal;font-weight:750}.score-grid>div>div{background:#e7ecef;border-radius:99px;height:5px;overflow:hidden}.score-grid i{background:var(--green);border-radius:inherit;height:100%;display:block}.checks-list{border:1px solid var(--line);background:#fff;border-radius:14px;margin-top:16px;overflow:hidden}.checks-list h4{color:var(--navy);border-bottom:1px solid var(--line);margin:0;padding:17px 20px;font-size:13px}.checks-list>div{border-bottom:1px solid #edf0f4;grid-template-columns:24px 1fr auto;align-items:center;gap:9px;min-height:58px;padding:10px 20px;display:grid}.checks-list>div:last-child{border:0}.checks-list svg{color:var(--green)}.checks-list span{flex-direction:column;display:flex}.checks-list strong{font-size:11px}.checks-list small{color:var(--muted);margin-top:3px;font-size:9.5px}.checks-list code{color:var(--green);background:var(--green-pale);border-radius:5px;padding:5px 7px;font-size:8px}footer{border-top:1px solid var(--line);max-width:1200px;color:var(--muted);grid-template-columns:1fr auto auto;align-items:center;gap:22px;margin:0 auto 34px;padding:25px 0 0;display:grid}.footer-brand .brand-mark{width:34px;height:34px;box-shadow:none}.footer-brand .brand-mark svg{width:30px;height:30px}footer p,footer>span{font-size:10px}footer>span{background:var(--blue-pale);color:var(--blue-dark);border-radius:6px;padding:5px 7px;font-weight:700}.main-nav{align-self:stretch;align-items:center;gap:4px;display:flex}.main-nav button{color:#657386;height:100%;font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;padding:0 16px;font-size:10.5px;font-weight:700}.main-nav button:hover{color:var(--navy);background:#f8fafc}.main-nav button.active{color:var(--blue-dark);border-bottom-color:var(--blue);background:var(--blue-pale)}.official-fields{border:1px solid var(--line);background:#f8fafc;border-radius:10px;margin:4px 0 14px}.official-fields summary{color:var(--navy);cursor:pointer;align-items:center;gap:8px;padding:12px 13px;font-size:11px;font-weight:750;list-style:none;display:flex}.official-fields summary::-webkit-details-marker{display:none}.official-fields summary svg:last-child{margin-left:auto;transition:transform .2s}.official-fields[open] summary svg:last-child{transform:rotate(180deg)}.official-fields-grid{grid-template-columns:1fr 1fr;gap:8px 11px;padding:2px 13px 13px;display:grid}.official-fields input{width:100%;min-height:38px;color:var(--navy);font:inherit;background:#fff;border:1px solid #d7dee7;border-radius:7px;outline:none;padding:0 10px;font-size:10.5px}.official-fields input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #2e74b517}.official-preview{background:#e9edf2;padding:26px}.document-sheet{color:#222;background:#fff;max-width:900px;margin:0 auto;padding:38px 44px;font-family:Arial,sans-serif;box-shadow:0 8px 28px #0f233c1f}.document-title{text-align:center;margin-bottom:16px;font-size:13px;line-height:1.45}.document-title span{font-weight:700;display:block}.document-table{border:1px solid #bfc7d0}.document-table>div{border-bottom:1px solid #cfd5dc;grid-template-columns:145px 1fr;display:grid}.document-table>div:last-child{border-bottom:0}.document-table>div:nth-child(-n+2){grid-template-columns:110px 1fr 110px 1fr}.document-table b,.document-table span{padding:8px 9px;font-size:10.5px;line-height:1.5}.document-table>div>b{background:#f3f4f6;border-right:1px solid #cfd5dc}.document-table>div>span:not(:last-child){border-right:1px solid #cfd5dc}.document-summary{border:1px solid #cfd5dc;margin-top:18px;padding:16px}.document-summary>b{margin-bottom:14px;font-size:12px;display:block}.document-summary div{margin:0 0 12px}.document-summary strong{font-size:11.5px}.document-summary p{margin:3px 0;font-size:10.5px;line-height:1.5}.document-curriculum-sections{border:1px solid #cfd5dc;margin-top:18px;padding:16px}.document-curriculum-sections h3{color:#0b5c8e;margin:16px 0 7px;font-size:13px}.document-curriculum-sections h3:first-child{margin-top:0}.document-curriculum-sections p{margin:5px 0;font-size:10.5px;line-height:1.55}.signature-row{text-align:center;justify-content:space-between;margin-top:24px;font-size:10.5px;display:flex}.signature-row span{flex-direction:column;gap:5px;min-width:180px;display:flex}.annual-hero{grid-template-columns:1.05fr .95fr;align-items:center;gap:72px;max-width:1200px;margin:0 auto;padding:86px 38px 62px;display:grid}.annual-hero h1{color:var(--navy);font-family:var(--font-heading);letter-spacing:-.045em;margin:20px 0 22px;font-size:clamp(45px,5vw,68px);font-weight:620;line-height:.99}.annual-hero h1 em{color:var(--blue);font-weight:550}.annual-hero>div>p{color:#526072;font-size:18px;line-height:1.72}.annual-fields{padding:6px 0 0}.annual-fields input{width:100%;min-height:40px;font:inherit;border:1px solid #d7dee7;border-radius:8px;padding:0 10px;font-size:10.5px}.calendar-note{color:var(--blue-dark);background:var(--blue-pale);border:1px solid #c6dced;border-radius:10px;align-items:center;gap:10px;margin-top:16px;padding:12px;display:flex}.calendar-note div{flex-direction:column;gap:3px;display:flex}.calendar-note strong{font-size:11px}.calendar-note span{color:var(--muted);font-size:9.5px}.annual-results{max-width:1440px}.annual-preview{background:#e9edf2;border-radius:14px;margin-top:28px;padding:24px;overflow-x:auto}.annual-document{background:#fff;min-width:1600px;padding:28px;font-family:Arial,sans-serif;box-shadow:0 8px 28px #0f233c1f}.annual-table{border:1px solid #94a3b8}.annual-row{grid-template-columns:78px 88px 145px 180px 225px 285px 145px 145px 145px 130px;display:grid}.annual-row>*{border-bottom:1px solid #b6c0cc;border-right:1px solid #b6c0cc;padding:7px;font-size:8.5px;line-height:1.42}.annual-row>:last-child{border-right:0}.annual-head{z-index:1;color:var(--navy);background:#dce6f1;position:sticky;top:0}.annual-head>*{text-align:center;justify-content:center;align-items:center;font-size:9px;display:flex}.annual-row.break{color:var(--muted);background:#f3f4f6}.annual-row.planning{background:#f7fbff}.annual-row.social{background:#f4fbf7}.annual-row.blank{color:var(--muted);background:#fafafa}.annual-note-grid{grid-template-columns:1fr 1fr;gap:8px;margin-top:14px;display:grid}.annual-note-grid article{background:#fbfcfd;border:1px solid #d8dee6;border-radius:8px;padding:10px}.annual-note-grid b{color:#344054;text-transform:uppercase;letter-spacing:.05em;font-size:9px}.annual-note-grid p{color:var(--muted);margin:5px 0 0;font-size:8.5px;line-height:1.45}.field textarea{resize:vertical;width:100%;min-height:76px;color:var(--navy);font:inherit;background:#fff;border:1px solid #d7dee7;border-radius:8px;padding:10px;font-size:10.5px;line-height:1.5}.field textarea:focus{border-color:var(--blue);outline:0;box-shadow:0 0 0 3px #2e74b517}.meeting-preview{background:#e9edf2;border-radius:14px;margin-top:28px;padding:28px}.meeting-document{color:#222;background:#fff;max-width:900px;margin:0 auto;padding:44px 52px;font-family:Arial,sans-serif;box-shadow:0 8px 28px #0f233c1f}.meeting-document h3{text-align:center;border-bottom:1px solid #8b98a8;margin:28px 0 13px;padding-bottom:7px;font-size:12px}.meeting-document ol{margin:0;padding-left:24px}.meeting-document li{margin:0 0 7px;font-size:10.5px;line-height:1.5}.decision-item{break-inside:avoid;margin:0 0 14px}.decision-item h4{margin:0 0 4px;font-size:11px}.decision-item p{text-align:justify;margin:0;font-size:10.5px;line-height:1.55}.meeting-legal{background:#f6f8fa;border:1px solid #b8c4d1;margin-top:22px;padding:13px;font-size:10.5px;line-height:1.55}.mode-switch{background:#eef2f6;border-radius:10px;grid-template-columns:1fr 1fr;gap:4px;margin-top:20px;padding:4px;display:grid}.mode-switch button{color:#64748b;min-height:38px;font:inherit;background:0 0;border:0;border-radius:8px;font-size:10.5px;font-weight:700}.mode-switch button.active{color:#fff;background:var(--blue);box-shadow:0 5px 12px #2e74b533}.bep-profile{background:#f2f8fd;border:1px solid #bed8ed;border-radius:10px;padding:12px}.exam-preview{background:#e9edf2;border-radius:14px;margin-top:28px;padding:28px}.exam-paper{color:#20242a;background:#fff;max-width:900px;margin:0 auto;padding:42px 50px;font-family:Arial,sans-serif;box-shadow:0 8px 28px #0f233c1f}.exam-paper.large-print{font-size:16px}.exam-paper.large-print .question-card h3,.exam-paper.large-print .exam-instructions{font-size:16px;line-height:1.6}.exam-identity{border:1px solid #8090a0;grid-template-columns:1fr auto auto;gap:18px;margin:18px 0 12px;padding:10px;font-size:10.5px;display:grid}.exam-instructions{text-align:center;background:#eef4f9;border:1px solid #bed0df;margin-bottom:18px;padding:9px;font-size:10px;font-weight:700}.bep-note{color:#174b72;background:#f0f8fe;border:1px solid #a9cee8;flex-direction:column;gap:5px;margin:12px 0;padding:11px;font-size:10px;line-height:1.5;display:flex}.question-card{break-inside:avoid;margin:0 0 18px}.question-card h3{margin:0 0 9px;font-size:11.5px;line-height:1.55}.question-card h3 b{color:var(--blue-dark);white-space:nowrap}.answer-lines{color:#7d8792;font-size:10px;line-height:2.1}.answer-key-panel{background:#fff;border:1px solid #ccd5df;max-width:900px;margin:18px auto 0;padding:28px 34px}.answer-key-panel>h3{color:var(--navy);font-family:var(--font-heading);margin:0 0 18px;font-size:23px}.answer-key-panel>div{border-top:1px solid #e2e8f0;padding:12px 0}.answer-key-panel b{font-size:11px}.answer-key-panel p{color:#4b5563;margin:5px 0;font-size:10.5px;line-height:1.5}.answer-key-panel small{color:var(--blue-dark);font-size:9.5px}@media (width<=980px){.hero{grid-template-columns:1fr;padding-top:50px}.hero-copy{text-align:center}.hero-copy>p{margin-inline:auto}.hero-stats{justify-content:center}.builder-card{width:100%;max-width:600px;margin:0 auto}.principles-strip{margin-inline:28px}.feature-grid,.phase-grid{grid-template-columns:1fr 1fr}.evidence-box{border-top:1px solid #e1e7ee;border-left:0;grid-column:1/-1;padding:13px 0 0}.annual-hero{grid-template-columns:1fr;gap:36px}.main-nav{overflow-x:auto}.main-nav button{white-space:nowrap}}@media (width<=680px){.topbar{height:64px;padding:0 16px}.curriculum-pill{display:none}.main-nav{z-index:10;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;justify-content:center;height:44px;position:fixed;top:64px;left:0;right:0}.main-nav button{flex:1;padding:0 4px;font-size:8.5px}.brand small{font-size:8px}.hero,.annual-hero{padding:82px 18px 45px}.annual-hero h1{font-size:42px}.annual-fields{grid-template-columns:1fr}.meeting-preview{padding:10px;overflow-x:auto}.meeting-document{min-width:700px;padding:30px}.exam-preview{padding:10px;overflow-x:auto}.exam-paper,.answer-key-panel{min-width:700px;padding:30px}.hero h1{font-size:42px}.hero-copy>p{font-size:15px}.hero-stats{gap:20px}.builder-card{padding:20px}.compact-grid{grid-template-columns:1fr;gap:0}.official-fields-grid{grid-template-columns:1fr}.official-preview{padding:10px;overflow-x:auto}.document-sheet{min-width:690px;padding:28px}.principles-strip{grid-template-columns:1fr;margin:0 18px;padding:10px 18px}.principles-strip>div{border-bottom:1px solid #ffffff24;border-right:0;padding:14px 0}.empty-state-section,.results-section{padding:62px 18px 76px}.empty-state-section>h2{font-size:30px}.feature-grid{grid-template-columns:1fr}.results-header{flex-direction:column;align-items:flex-start}.result-actions{width:100%}.result-actions button{flex:1}.result-tabs{overflow-x:auto}.result-tabs button{white-space:nowrap}.phase-card{grid-template-columns:32px 1fr;gap:9px}.phase-index span{width:27px;height:27px}.phase-grid{grid-template-columns:1fr}.evidence-box{grid-column:auto}.decision-grid,.validation-summary,.score-grid{grid-template-columns:1fr}.score-ring{margin:0 auto}footer{grid-template-columns:1fr auto;margin:0 18px 26px}footer p{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.exam-module select[multiple]{min-height:112px;padding:10px}.exam-module textarea{resize:vertical;min-height:76px}.question-editor-list{gap:18px;margin-top:22px;display:grid}.question-editor{background:#fff;border:1px solid #dbe3ec;border-radius:16px;padding:18px;box-shadow:0 8px 24px #0f172a0d}.passage-field{background:#eef4f9;border-left:4px solid #2e74b5;border-radius:10px;padding:14px}.passage-field textarea{background:#fff;min-height:150px;line-height:1.65}.question-toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;display:flex}.question-toolbar b{margin-right:auto}.question-toolbar select,.question-toolbar input,.question-toolbar button{background:#fff;border:1px solid #cbd5e1;border-radius:8px;min-height:36px}.question-toolbar button{cursor:pointer;place-items:center;width:36px;display:grid}.points-input{width:72px;padding:6px}.distribution-table{background:#f1f5f9;border-radius:12px;flex-wrap:wrap;gap:12px;margin:18px 0;padding:16px;display:flex}.distribution-table b{width:100%}.distribution-table span{background:#fff;border:1px solid #dbe3ec;border-radius:999px;padding:7px 10px;font-size:13px}.exam-blueprint{background:#f8f6f1;border:1px solid #d8d3c9;border-radius:14px;gap:14px;margin:18px 0;padding:16px;display:grid}.exam-blueprint-heading{justify-content:space-between;align-items:center;gap:14px;display:flex}.exam-blueprint-heading>div{gap:4px;display:grid}.exam-blueprint-heading strong{color:#30433b;font-size:15px}.exam-blueprint-heading span{color:#68746f;font-size:12px}.exam-blueprint-table{background:#fff;border:1px solid #ddd7cc;border-radius:11px;display:grid;overflow:hidden}.exam-blueprint-row{border-top:1px solid #ebe7df;grid-template-columns:minmax(180px,2fr) 78px 66px minmax(130px,1fr) minmax(120px,1fr) 96px;align-items:center;min-height:48px;display:grid}.exam-blueprint-row:first-child{border-top:0}.exam-blueprint-row>span,.exam-blueprint-row>label{min-width:0;padding:9px 11px}.exam-blueprint-row>span:first-child{gap:2px;display:grid}.exam-blueprint-row small{color:#6d7873;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.exam-blueprint-header{color:#53615b;text-transform:uppercase;letter-spacing:.05em;background:#efede7;min-height:38px;font-size:11px;font-weight:800}.exam-blueprint-row input{text-align:center;background:#fffefb;border:1px solid #d8d3c9;border-radius:8px;width:58px;min-height:36px;padding:6px}.exam-blueprint-row select{color:#30433b;background:#fffefb;border:1px solid #d8d3c9;border-radius:8px;width:100%;min-height:36px;padding:6px 7px}.blueprint-total{border-radius:9px;padding:9px 11px;font-size:12px;font-weight:700}.blueprint-total.valid{color:#2d6552;background:#e8f2ed}.blueprint-total.invalid{color:#8a493e;background:#f8eae7}.sr-only{clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.class-context-bar{background:#fffefb;border:1px solid #d9d3c8;border-radius:18px;grid-template-columns:minmax(210px,1fr) minmax(220px,320px) minmax(240px,1fr);align-items:center;gap:20px;width:calc(100% - 76px);max-width:1240px;margin:26px auto 0;padding:16px 20px;display:grid;box-shadow:0 8px 24px #24302a0d}.class-context-bar>div,.class-context-bar>div span,.class-context-bar label{display:flex}.class-context-bar>div{color:#355d51;align-items:center;gap:11px}.class-context-bar>div span,.class-context-bar label{flex-direction:column;gap:3px}.class-context-bar small,.class-context-bar label span{color:#6b756f;font-size:.78rem}.class-context-bar select{color:#243b34;background:#fff;border:1px solid #cfc7b9;border-radius:10px;min-height:42px;padding:0 12px}.class-context-bar p{color:#53675f;align-items:center;gap:7px;margin:0;font-size:.82rem;line-height:1.45;display:flex}.class-context-empty{text-align:center;background:#fffefb;border:1px solid #ddd5c8;border-radius:24px;width:min(720px,100% - 36px);margin:80px auto;padding:46px}.class-context-empty svg{color:#456d60}.class-context-empty h2{margin:12px 0 8px}.class-context-empty p{color:#66736d;max-width:520px;margin:0 auto 22px}.async-module-state{text-align:center;background:#fffefb;border:1px solid #ddd5c8;border-radius:24px;flex-direction:column;justify-content:center;align-items:center;width:min(720px,100% - 36px);min-height:190px;margin:80px auto;padding:40px;display:flex}.async-module-state h2{color:var(--forest);margin:0 0 8px}.async-module-state p{color:#66736d;max-width:520px;margin:0 0 22px}.async-module-loading{text-align:left;flex-direction:row;gap:16px}.async-module-loading h2{margin-bottom:4px}.async-module-loading p{margin:0}.async-module-spinner{border:3px solid #c9d8d2;border-top-color:#456d60;border-radius:50%;flex:none;width:28px;height:28px;animation:.8s linear infinite async-module-spin}@keyframes async-module-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.async-module-spinner{border-top-color:#c9d8d2;animation:none}}html[data-theme=dark] .class-context-bar,html[data-theme=dark] .class-context-empty,html[data-theme=dark] .async-module-state{color:#e8eee9;background:#18211e;border-color:#35443e}html[data-theme=dark] .class-context-bar select{color:#e8eee9;background:#202b27;border-color:#3a4943}@media (width<=760px){.resource-center{padding:74px 16px 48px}.resource-hero{grid-template-columns:1fr;padding:24px}.resource-hero h1{font-size:36px}.resource-sections{flex-direction:column}.resource-toolbar,.resource-summary{grid-template-columns:1fr}.resource-unit-heading{flex-direction:column}.resource-framework>div,.bep-steps,.bep-guide-grid,.document-guide-grid{grid-template-columns:1fr}.exam-blueprint-heading{flex-direction:column;align-items:stretch}.exam-blueprint-table{overflow-x:auto}.exam-blueprint-row>span:nth-child(2),.exam-blueprint-header>span:nth-child(2){display:none}.exam-blueprint-row{grid-template-columns:minmax(170px,1.5fr) 64px 130px 120px 84px;min-width:620px}.exam-blueprint-row small{white-space:normal}}.booklet-switch{max-width:340px;margin-top:20px}.add-question{margin-top:18px}.variant-budget-note{color:var(--muted);margin:10px 0 0;font-size:11px;line-height:1.5}@media print{.topbar,footer,.annual-hero,.result-actions,.booklet-switch,.question-toolbar button,.add-question,.variant-budget-note{display:none!important}.results-section{padding:0}.question-editor{box-shadow:none;break-inside:avoid}}@media (width<=720px){.question-toolbar{align-items:stretch}.question-toolbar b{width:100%}.question-toolbar select{flex:140px}}.analysis-summary{grid-template-columns:repeat(5,1fr);gap:12px;margin:20px 0;display:grid}.analysis-summary article{color:#fff;background:#0b2545;border-radius:14px;gap:6px;padding:18px;display:grid}.analysis-summary span{opacity:.75;text-transform:uppercase;font-size:12px}.analysis-summary b{font-size:28px}.analysis-grid{flex-direction:column;gap:20px;margin:24px 0;display:flex}.analysis-grid>section,.question-analysis,.improvement-plan{background:#fff;border:1px solid #dbe3ec;border-radius:16px;padding:18px}.analysis-roster-entry{order:-1;width:100%}.analysis-roster-entry .upload-drop{min-height:104px}.analysis-roster-entry .paste-area{min-height:110px}.question-definition{grid-template-columns:42px 1fr 76px 38px;align-items:center;gap:8px;margin:8px 0;display:grid}.question-definition select,.question-definition input,.question-definition button,.paste-area{background:#fff;border:1px solid #cbd5e1;border-radius:8px;min-height:38px}.question-definition button{place-items:center;display:grid}.paste-area{width:100%;min-height:150px;margin:8px 0 12px;padding:12px}.student-score-table{border:1px solid #cbd5e1;border-radius:14px;margin:22px 0;overflow-x:auto}.score-row{grid-template-columns:46px 58px 84px 220px repeat(8,minmax(58px,1fr)) 80px 130px 150px;min-width:1240px;display:grid}.score-row>*{border:1px solid #e2e8f0;border-top:0;border-left:0;min-width:0;padding:8px}.score-reference,.attendance-decision{flex-direction:column;justify-content:center;gap:3px;display:flex}.score-reference span{color:var(--muted);font-size:9px;line-height:1.25}.score-reference strong{font-size:11px}.attendance-decision select{max-width:100%;font-size:9px}.attendance-decision label{align-items:center;gap:4px;font-size:9px;display:flex}.mobile-score-list{display:none}.mobile-score-card{border:1px solid var(--line);background:#fff;border-radius:14px;padding:14px;box-shadow:0 6px 18px #0f172a0d}.mobile-score-card>header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.mobile-score-card>header>div{gap:2px;display:grid}.mobile-score-card header span,.mobile-score-result span,.mobile-student-identity span{color:var(--muted);font-size:10px}.mobile-score-card header strong{color:var(--navy);font-size:14px}.mobile-score-card header small{color:var(--muted);font-size:10px}.mobile-student-identity{grid-template-columns:110px 1fr;gap:9px;margin-bottom:12px;display:grid}.mobile-student-identity label,.mobile-question-scores label{gap:4px;display:grid}.mobile-student-identity input,.mobile-question-scores input,.mobile-attendance select{background:#fff;border:1px solid #cbd5e1;border-radius:9px;width:100%;min-height:44px;padding:8px}.mobile-question-scores{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;display:grid}.mobile-question-scores span{font-size:11px;font-weight:700}.mobile-question-scores small{color:var(--muted);font-weight:400}.mobile-score-result{border-top:1px solid var(--line);grid-template-columns:1fr 1fr 1.3fr;gap:8px;margin-top:12px;padding-top:12px;display:grid}.mobile-score-result>div{align-content:start;gap:3px;display:grid}.mobile-score-result strong{color:var(--navy);font-size:15px}.mobile-score-result small{color:var(--muted);font-size:9px}.mobile-attendance label{align-items:center;gap:6px;font-size:11px;display:flex}.mobile-attendance input{width:20px;height:20px}.score-head{color:#0b2545;background:#e8eef5}.document-guide{gap:16px;display:grid}.document-guide-intro,.document-safety{color:#315d4e;background:#edf5f1;border:1px solid #c7dbd2;border-radius:14px;align-items:flex-start;gap:11px;padding:17px;display:flex}.document-guide-intro div,.document-safety div{gap:4px;display:grid}.document-guide-intro p,.document-safety p{color:#5c6e67;margin:0;font-size:12px;line-height:1.55}.document-guide-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.document-guide-grid>article{background:#fff;border:1px solid #ddd6c9;border-radius:15px;align-content:start;gap:9px;padding:20px;display:grid;box-shadow:0 6px 20px #1f2f290a}.document-guide-grid header{color:#8a6937;justify-content:space-between;align-items:center;display:flex}.document-guide-grid header span{letter-spacing:.05em;text-transform:uppercase;background:#f5efe4;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:800}.document-guide-grid h2{color:#28483e;font-family:var(--font-heading);margin:2px 0;font-size:21px}.document-guide-grid>article>p{color:#5d6b66;margin:0;font-size:12px;line-height:1.55}.document-guide-grid h3{color:#8a6937;letter-spacing:.05em;text-transform:uppercase;margin:7px 0 0;font-size:10px}.document-guide-grid ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.document-guide-grid li{color:#475650;align-items:center;gap:7px;font-size:12px;display:flex}.document-guide-grid li svg{color:#39705d}.document-guide-grid button{color:#fff;cursor:pointer;background:#355d51;border:1px solid #355d51;border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:44px;margin-top:5px;font-weight:700;display:flex}.document-safety{color:#71572f;background:#f8f3e9;border-color:#d9d0be}.resource-sections{background:#f5f2eb;border:1px solid #ddd6c9;border-radius:14px;gap:8px;margin:24px 0 12px;padding:5px;display:flex}.resource-sections button{color:#5e6a65;cursor:pointer;background:0 0;border:0;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:8px;min-height:46px;font-weight:700;display:flex}.resource-sections button.active{color:#fff;background:#355d51;box-shadow:0 7px 16px #2a4d422e}.resource-toolbar.bep-toolbar{grid-template-columns:1fr}.bep-guide{gap:16px;display:grid}.bep-principle{color:#2e5c4c;background:#edf5f1;border:1px solid #c7dbd2;border-radius:15px;align-items:flex-start;gap:12px;padding:18px;display:flex}.bep-principle div{gap:5px;display:grid}.bep-principle p{color:#587067;margin:0;font-size:13px;line-height:1.55}.bep-steps{grid-template-columns:repeat(5,1fr);gap:8px;display:grid}.bep-steps>div{background:#fff;border:1px solid #ddd6c9;border-radius:11px;grid-template-columns:28px 1fr;align-items:center;gap:7px;padding:11px;display:grid}.bep-steps span{color:#fff;background:#a27a3d;border-radius:50%;place-items:center;width:28px;height:28px;font-size:12px;font-weight:800;display:grid}.bep-steps strong{color:#465650;font-size:11px;line-height:1.3}.bep-guide-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.bep-guide-grid>article{background:#fff;border:1px solid #ddd6c9;border-radius:15px;align-content:start;gap:8px;padding:19px;display:grid;box-shadow:0 6px 20px #1f2f290a}.bep-guide-grid header{color:#355d51;align-items:center;gap:9px;display:flex}.bep-guide-grid h2{font-family:var(--font-heading);margin:0;font-size:20px}.bep-guide-grid h3{color:#8a6937;letter-spacing:.04em;text-transform:uppercase;margin:7px 0 0;font-size:11px}.bep-guide-grid p{color:#5e6b66;margin:0;font-size:13px;line-height:1.5}.bep-guide-grid ul{gap:7px;margin:0;padding:0;list-style:none;display:grid}.bep-guide-grid li{color:#43534d;grid-template-columns:17px 1fr;gap:7px;font-size:12px;line-height:1.45;display:grid}.bep-guide-grid li svg{color:#39705d;margin-top:1px}.bep-avoid{color:#805048;background:#faf0ed;border-radius:9px;grid-template-columns:18px 1fr;gap:7px;margin-top:6px;padding:10px;font-size:11px;line-height:1.45;display:grid}.bep-privacy{color:#7f4b43;background:#fbf3f1;border:1px solid #e1c6bf;border-radius:13px;align-items:flex-start;gap:10px;padding:16px;display:flex}.bep-privacy div{gap:4px;display:grid}.bep-privacy p{margin:0;font-size:12px;line-height:1.5}.resource-center{max-width:1120px;margin:0 auto;padding:34px 38px 70px}.resource-hero{background:linear-gradient(135deg,#fffefb,#f1ede4);border:1px solid #ddd6c9;border-radius:22px;grid-template-columns:minmax(0,1fr) 280px;align-items:center;gap:28px;padding:38px;display:grid}.resource-hero h1{color:#18332b;font-family:var(--font-heading);margin:12px 0;font-size:clamp(34px,4.2vw,58px);line-height:1.03}.resource-hero h1 em{color:#a27a3d;font-weight:400}.resource-hero p{color:#5f6d67;max-width:680px;line-height:1.7}.resource-verification{color:#2d6552;background:#edf4f0;border:1px solid #cadbd3;border-radius:16px;gap:8px;padding:20px;display:grid}.resource-verification span{font-size:12px;line-height:1.55}.resource-toolbar{background:#fff;border:1px solid #ddd6c9;border-radius:16px;grid-template-columns:220px minmax(0,1fr);gap:14px;margin:24px 0 14px;padding:16px;display:grid}.resource-toolbar label{color:#53615b;gap:7px;font-size:12px;font-weight:700;display:grid}.resource-toolbar select,.resource-search>div{background:#fffefb;border:1px solid #d7d1c6;border-radius:10px;min-height:46px}.resource-toolbar select{padding:0 12px}.resource-search>div{align-items:center;gap:9px;padding:0 12px;display:flex}.resource-search input{background:0 0;border:0;outline:0;width:100%;min-height:42px}.resource-summary{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px;display:grid}.resource-summary>div{color:#fff;background:#18332b;border-radius:13px;align-items:baseline;gap:8px;padding:16px 18px;display:flex}.resource-summary strong{font-size:28px}.resource-summary span{opacity:.78;font-size:12px}.resource-unit-list{gap:16px;display:grid}.resource-unit-card{background:#fff;border:1px solid #ddd6c9;border-radius:17px;padding:22px;box-shadow:0 7px 24px #1f2f290d}.resource-unit-heading{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.resource-unit-heading>div>span{color:#9a743a;letter-spacing:.05em;font-size:11px;font-weight:800}.resource-unit-heading h2{color:#213c34;font-family:var(--font-heading);margin:4px 0 0;font-size:24px}.resource-unit-heading>strong{color:#355d51;white-space:nowrap;background:#edf4f0;border-radius:999px;align-items:center;gap:6px;padding:7px 10px;font-size:12px;display:flex}.resource-unit-card>p{color:#606d68;line-height:1.65}.resource-keywords{flex-wrap:wrap;gap:6px;margin:14px 0;display:flex}.resource-keywords span{color:#71572f;background:#f5efe4;border-radius:999px;padding:5px 9px;font-size:11px}.resource-outcomes{gap:8px;display:grid}.resource-outcomes h3{color:#30433b;align-items:center;gap:7px;font-size:14px;display:flex}.resource-outcomes details,.resource-framework{background:#faf9f6;border:1px solid #e1ddd4;border-radius:11px}.resource-outcomes summary,.resource-framework>summary{cursor:pointer;gap:12px;padding:13px;display:flex}.resource-outcomes summary strong{color:#8a6937;font-size:12px}.resource-outcomes summary span{color:#344740;font-size:13px}.resource-outcomes details>div{padding:0 14px 12px}.resource-outcomes details>div p{color:#5b6863;margin:6px 0;font-size:12px;line-height:1.55}.resource-framework{margin-top:12px}.resource-framework>summary{color:#355d51;font-size:12px;font-weight:800}.resource-framework>div{grid-template-columns:1fr 1fr;gap:20px;padding:0 16px 15px;display:grid}.resource-framework h4{color:#3c4f48;margin:8px 0;font-size:12px}.resource-framework p,.resource-framework li{color:#66726d;font-size:12px;line-height:1.5}.resource-empty{color:#65716c;text-align:center;background:#faf8f3;border:1px dashed #bcae97;border-radius:16px;place-items:center;gap:8px;padding:45px;display:grid}.row-delete{color:#dc2626;cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.student-import-card{color:#0b2545;background:#eef4f9;border:1px dashed #2e74b5;border-radius:12px;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;margin:12px 0;padding:14px;display:grid}.student-import-card>div{gap:3px;display:grid}.student-import-card span,.student-import-card small{color:#52677d;font-size:12px}.upload-button{color:#fff;cursor:pointer;white-space:nowrap;background:#0b5c8e;border-radius:9px;align-items:center;gap:6px;padding:9px 12px;display:flex}.upload-button input,.upload-drop input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.upload-drop{cursor:pointer;text-align:center;background:#f8fafc;border:2px dashed #94a3b8;border-radius:12px;place-items:center;gap:5px;min-height:120px;padding:16px;display:grid}.upload-drop span,.import-status{color:#64748b;font-size:12px}.import-status{background:#f1f5f9;border-radius:8px;padding:8px 10px}.question-analysis{gap:10px;display:grid}.question-analysis article{border-bottom:1px solid #e2e8f0;grid-template-columns:1fr 220px 120px;align-items:center;gap:12px;padding:10px 0;display:grid}.question-analysis article>div:first-child{gap:4px;display:grid}.question-analysis span{color:#64748b;font-size:12px}.analysis-bar{background:#e2e8f0;border-radius:99px;height:10px;overflow:hidden}.analysis-bar i{background:linear-gradient(90deg,#ef4444,#f59e0b,#22c55e);height:100%;display:block}.improvement-plan{margin-top:20px}.improvement-plan article{border-bottom:1px solid #e2e8f0;padding:14px 0}.improvement-plan p{margin:7px 0}.improvement-plan span{color:#64748b;font-size:12px}@media (width<=800px){.analysis-summary{grid-template-columns:repeat(2,1fr)}.question-analysis article{grid-template-columns:1fr}.student-score-table{display:none}.mobile-score-list{gap:12px;margin:18px 0;display:grid}.student-import-card{text-align:center;grid-template-columns:1fr}.student-import-card>svg{margin:auto}.upload-button{justify-content:center}}@media (width<=520px){.mobile-student-identity{grid-template-columns:1fr}.mobile-question-scores{grid-template-columns:repeat(2,minmax(0,1fr))}.mobile-score-result{grid-template-columns:1fr 1fr}.mobile-attendance{grid-column:1/-1}}.trace-line{color:#7b8798;overflow-wrap:anywhere;margin-top:6px;font-family:monospace;font-size:8.5px;display:block}.record-approval-bar{border:1px solid var(--line);background:#fff;border-radius:11px;align-items:center;gap:12px;max-width:1200px;margin:18px auto 0;padding:14px 16px;display:flex}.record-approval-bar>div{flex-direction:column;gap:3px;margin-right:auto;display:flex}.record-approval-bar strong{font-size:11px}.record-approval-bar span,.record-approval-bar label{color:var(--muted);font-size:9.5px}.record-history{border:1px solid var(--line);background:#fbfcfd;border-radius:11px;max-width:1200px;margin:10px auto 0;padding:12px 16px}.record-history summary{cursor:pointer;font-size:11px;font-weight:700}.record-history-item{border:1px solid var(--line);background:#fff;border-radius:8px;justify-content:space-between;margin-top:7px;padding:9px 10px;font-size:9px;display:flex}.record-history p{color:var(--muted);font-size:9px}.archive-recovery{color:#7c2d12;background:#fff7ed;border:1px solid #fdba74;border-radius:10px;gap:8px;max-width:620px;margin-top:12px;padding:12px;display:grid}.archive-recovery strong{font-size:12px}.archive-recovery span,.archive-recovery label{font-size:11px;line-height:1.45}.archive-recovery label{align-items:flex-start;gap:8px;display:flex}.archive-recovery input{flex:none;width:18px;height:18px}.session-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:9px;display:flex}.session-actions label{max-width:260px;color:var(--muted);align-items:center;gap:7px;font-size:10px;line-height:1.35;display:flex}.session-actions label input{flex:none;width:18px;height:18px}.session-clear{color:#991b1b;border:1px solid #fecaca;border-radius:9px;width:auto;padding:0 12px}.session-clear:disabled{color:var(--muted)}@media (width<=680px){.session-actions{flex-direction:column;align-items:stretch;width:100%}.session-actions>*{width:100%!important}.session-actions label{max-width:none}}.import-preview{background:#f8fafc;border:1px solid #cbd5e1;border-radius:12px;gap:14px;margin-top:14px;padding:16px;display:grid}.import-preview-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.import-preview-heading>div{gap:3px;display:grid}.import-preview-heading strong{color:var(--navy);font-size:13px}.import-preview-heading span,.import-preview-actions span{color:var(--muted);font-size:11px}.import-mapping-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.import-preview-table{border:1px solid var(--line);border-radius:9px;display:grid;overflow:hidden}.import-preview-table>div{grid-template-columns:1fr 2fr;display:grid}.import-preview-table>div>*{border-bottom:1px solid var(--line);padding:9px 11px;font-size:11px}.import-preview-table>div>*+*{border-left:1px solid var(--line)}.import-preview-table>div:first-child{color:var(--navy);background:#eef4f9}.import-preview-table>div:last-child>*{border-bottom:0}.import-preview-actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.import-undo{margin-top:10px}.import-preview-table--scores>div{grid-template-columns:1fr 2fr 1fr}.agenda-builder{border:1px solid var(--line);background:#f8fafc;border-radius:11px;gap:12px;padding:14px;display:grid}.agenda-builder>div:first-child{gap:4px;display:grid}.agenda-builder h3,.agenda-builder p{margin:0}.agenda-builder p,.meeting-agenda-actions span{color:var(--muted);font-size:11px;line-height:1.45}.agenda-builder-row{grid-template-columns:1fr auto;align-items:end;gap:10px;display:grid}.meeting-agenda-actions{background:#f0f9ff;border:1px solid #bae6fd;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin:0 0 14px;padding:12px 14px;display:flex}@media (width<=680px){.import-mapping-grid{grid-template-columns:1fr}.import-preview-actions{flex-direction:column;align-items:stretch}.import-preview-actions button{width:100%}.agenda-builder-row{grid-template-columns:1fr}.agenda-builder-row .row-delete{width:100%}.meeting-agenda-actions{flex-direction:column;align-items:stretch}.meeting-agenda-actions button{width:100%}}.roster-transfer-bar,.incoming-roster{background:#f0f9ff;border:1px solid #bae6fd;border-radius:12px;align-items:center;gap:14px;margin:14px auto 0;padding:14px 16px;display:flex}.roster-transfer-bar{max-width:1200px}.roster-transfer-bar>div,.incoming-roster>div:first-child{gap:4px;margin-right:auto;display:grid}.roster-transfer-bar strong,.incoming-roster strong{color:var(--navy);font-size:12px}.roster-transfer-bar span,.roster-transfer-bar label,.incoming-roster span,.incoming-roster p{color:var(--muted);font-size:10px;line-height:1.45}.roster-transfer-bar label{align-items:flex-start;gap:7px;max-width:250px;display:flex}.roster-transfer-bar input{flex:none;width:18px;height:18px}.incoming-roster{max-width:1200px}.incoming-roster p{margin:0}.incoming-roster>div:last-child{gap:9px;display:flex}.incoming-roster--attention{border-color:#60a5fa;box-shadow:0 0 0 4px #60a5fa24,0 14px 34px #1e40af1a}.incoming-roster--attention:focus{outline-offset:3px;outline:3px solid #2563eb}@media (width<=780px){.roster-transfer-bar,.incoming-roster{flex-direction:column;align-items:stretch}.roster-transfer-bar label{max-width:none}.roster-transfer-bar button,.incoming-roster button{width:100%}.incoming-roster>div:last-child{flex-direction:column}}.roster-list{gap:12px;margin-top:20px;display:grid}.roster-list>article{border:1px solid var(--line);background:#fff;border-radius:12px;align-items:center;gap:14px;padding:16px;display:flex}.roster-list>article>div:first-child{gap:4px;margin-right:auto;display:grid}.roster-list strong{color:var(--navy)}.roster-list span,.roster-list small,.roster-actions label{color:var(--muted);font-size:11px}.roster-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.roster-actions label{align-items:center;gap:6px;display:flex}.roster-actions input{width:18px;height:18px}.roster-upload{justify-content:center;margin-top:10px}@media (width<=780px){.roster-list>article,.roster-actions{flex-direction:column;align-items:stretch}.roster-actions>*,.roster-actions .row-delete{width:100%}}:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible,.upload-button:focus-within,.upload-drop:focus-within{outline-offset:3px;outline:3px solid #0b5c8e}.select-wrap:has(select:focus-visible){outline-offset:3px;outline:3px solid #0b5c8e}button,input:not([type=checkbox]):not([type=radio]):not([type=file]),select{min-height:44px}.question-toolbar button,.question-definition button,.row-delete{min-width:44px;min-height:44px}.privacy-note,.field-help,.record-approval-bar span,.record-approval-bar label,.trace-line{color:#526072;font-size:11px;line-height:1.45}.results-section:focus-visible{outline-offset:-4px}@media (width<=680px){.main-nav{scrollbar-width:thin;justify-content:flex-start;height:48px}.main-nav button{flex:none;min-width:96px;min-height:48px;padding:0 10px;font-size:11px}.result-actions,.record-approval-bar{flex-direction:column;align-items:stretch}.result-actions button,.record-approval-bar label{width:100%}.hero h1,.annual-hero h1{overflow-wrap:anywhere;font-size:clamp(34px,11vw,42px)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (forced-colors:active){:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid highlight}.primary-button,.download-button,.curriculum-pill,.approved-pill{border:1px solid buttontext}}.field>input,.field>select{width:100%;min-height:44px;color:var(--ink);font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:9px;padding:0 12px;font-size:12px}.decision-item-heading,.performance-card-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.add-meeting-item{width:100%;margin-top:16px}.performance-results{min-height:480px}.performance-empty{text-align:center;color:var(--muted);background:#fff;border:1px dashed #94a3b8;border-radius:16px;place-items:center;margin-top:24px;padding:42px 24px;display:grid}.performance-empty h3{color:var(--navy);margin:14px 0 6px}.performance-empty p{max-width:540px;margin:0}.performance-list{gap:18px;margin-top:24px;display:grid}.performance-card{border:1px solid var(--line);background:#fff;border-radius:16px;padding:20px;box-shadow:0 8px 24px #0f172a0d}.performance-card-header>div{gap:4px;display:grid}.performance-card-header strong{color:var(--navy);font-size:16px}.performance-card-header span,.performance-guidance span{color:var(--muted);font-size:12px;line-height:1.5}.performance-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px;display:grid}.performance-context-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.skill-score-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:18px;display:grid}.skill-score-grid label{color:#475467;gap:7px;font-size:11px;font-weight:680;display:grid}.skill-score-grid select{width:100%;min-height:44px;color:var(--ink);font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:9px;padding:0 9px;font-size:11px}.performance-guidance{color:var(--blue-dark);background:var(--blue-pale);border-radius:10px;align-items:center;gap:9px;margin-top:14px;padding:12px;display:flex}@media (width<=980px){.skill-score-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=680px){.performance-meta-grid,.skill-score-grid,.performance-context-grid{grid-template-columns:1fr}}.skill-map,.support-planner{border:1px solid var(--line);background:#fff;border-radius:16px;margin-top:24px;padding:20px}.skill-map h3,.support-planner h3{color:var(--navy);margin:0}.skill-map p,.support-planner p{color:var(--muted);margin:5px 0 0;font-size:12px}.skill-map-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:16px;display:grid}.skill-map-grid article{background:var(--blue-pale);border-radius:11px;gap:5px;padding:14px;display:grid}.skill-map-grid span,.skill-map-grid small{color:var(--muted);font-size:11px}.skill-map-grid strong{color:var(--blue-dark);font-size:24px}.evidence-list{gap:14px;margin-top:18px;display:grid}.evidence-card{background:#f8fafc;border:1px solid #dbe3ec;border-radius:12px;padding:16px}.evidence-header{color:var(--navy);justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.evidence-meta-grid{grid-template-columns:180px 1fr 2fr;gap:0 12px;display:grid}.add-evidence{margin-top:14px}.support-layout{grid-template-columns:minmax(220px,1fr) auto;align-items:end;gap:14px;display:grid}.support-student-list{border:1px solid var(--line);border-radius:11px;gap:8px;margin:16px 0;padding:14px;display:grid}.support-student-list legend{color:var(--navy);padding:0 6px;font-size:12px;font-weight:700}.support-student-list label{background:#f8fafc;border-radius:8px;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;padding:9px;font-size:12px;display:grid}.support-student-list input,.support-confirm input{width:18px;height:18px}.support-student-list small{color:var(--muted)}.support-confirm{color:#475467;align-items:flex-start;gap:9px;margin:14px 0;font-size:12px;line-height:1.5;display:flex}.support-plan-list{gap:10px;margin-top:16px;display:grid}.support-plan-list article{background:#eef8f2;border:1px solid #b8ddc5;border-radius:10px;justify-content:space-between;gap:12px;padding:14px;display:flex}.support-plan-list article div{gap:4px;display:grid}.support-plan-list span{color:var(--muted);font-size:11px}.support-plan-list p{color:var(--ink);margin:0}button:disabled{cursor:not-allowed;opacity:.5}@media (width<=980px){.skill-map-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.evidence-meta-grid{grid-template-columns:1fr 1fr}.evidence-outcome{grid-column:1/-1}}@media (width<=680px){.skill-map-grid,.evidence-meta-grid,.support-layout{grid-template-columns:1fr}.evidence-outcome{grid-column:auto}.support-student-list label{grid-template-columns:auto 1fr}.support-student-list small{grid-column:2}}.app-content>.hero,.app-content>.annual-hero,.app-content>.meeting-hero,.app-content>.exam-hero,.app-content>.analysis-hero,.app-content>.performance-hero{max-width:1360px;padding-top:54px}.annual-module,.meeting-module,.exam-module,.analysis-module,.performance-module,.rosters-module{padding-inline:clamp(22px,4vw,58px)}.hero h1,.annual-hero h1,.meeting-hero h1,.exam-hero h1,.analysis-hero h1,.performance-hero h1{color:#25332e;font-weight:540}.hero h1 em,.annual-hero h1 em,.meeting-hero h1 em,.exam-hero h1 em,.analysis-hero h1 em,.performance-hero h1 em{color:#8d6b36}.builder-card,.annual-fields,.meeting-preview,.exam-results,.analysis-results,.performance-results,.decision-panel,.validation-panel,.record-approval-bar,.record-history,.incoming-roster,.performance-card,.skill-map,.support-planner,.roster-list>article{border-color:#e0dbd1;border-radius:17px;box-shadow:0 12px 32px #24302a0e}.builder-card{border-top:3px solid var(--gold)}.builder-card:after{border-color:#b58a4538}.step-badge{background:var(--forest);border-radius:11px}.card-heading h2,.panel-intro h3,.performance-card-header strong{color:#27352f}.studio-workflow{z-index:2;max-width:1200px;margin:-18px auto 0;padding:0 38px;position:relative}.studio-workflow ol{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffeb;border:1px solid #ddd7cc;border-radius:16px;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:0;padding:10px;list-style:none;display:grid;box-shadow:0 16px 34px #24302a12}.studio-workflow li{color:#7d8782;border-radius:11px;align-items:center;gap:10px;min-width:0;padding:11px 12px;transition:background .18s,color .18s;display:flex}.studio-workflow li>span{letter-spacing:.06em;background:#f7f5f0;border:1px solid #d8d3c9;border-radius:9px;flex:none;place-items:center;width:30px;height:30px;font-size:9px;font-weight:850;display:grid}.studio-workflow li>div{gap:3px;min-width:0;display:grid}.studio-workflow strong{color:inherit;text-overflow:ellipsis;white-space:nowrap;font-size:10.5px;overflow:hidden}.studio-workflow small{color:#919a96;text-overflow:ellipsis;white-space:nowrap;font-size:8.5px;overflow:hidden}.studio-workflow li.active{color:#fff;background:#294c42}.studio-workflow li.active>span{color:#f1d7a8;background:#ffffff14;border-color:#fff3}.studio-workflow li.active small{color:#c4d3cd}.studio-workflow li.complete{color:#356454;background:#edf4f0}.studio-workflow li.complete>span{color:#356454;background:#fff;border-color:#c7ddd4}.field>span,.skill-score-grid label{color:#53615b;letter-spacing:.01em}.select-wrap,.field>input,.field>select,.official-fields input,.skill-score-grid select,.question-definition select,.question-definition input,.paste-area{background:#fffefb;border-color:#d8d3c9;border-radius:10px}.select-wrap:focus-within,.field>input:focus,.official-fields input:focus{border-color:#a47b3d;box-shadow:0 0 0 3px #b58a4521}.primary-button,.download-button{background:linear-gradient(135deg,#355d51,#203f37);box-shadow:0 10px 22px #23493e33}.primary-button:hover:not(:disabled),.download-button:hover:not(:disabled){box-shadow:0 14px 28px #23493e40}.secondary-button,.secondary-action,.upload-button{color:#355449;background:#fffefb;border-color:#cfc7b9}.output-choice,.official-fields,.import-preview,.agenda-builder,.meeting-agenda-actions,.roster-transfer-bar,.incoming-roster,.student-import-card,.performance-guidance{background:#f5f3ed;border-color:#dcd4c5}.choice-check{background:var(--forest)}.output-choice>svg,.eyebrow,.section-kicker{color:#95713a}.result-tabs button.active{color:#7f6030;border-bottom-color:var(--gold)}.phase-content,.decision-main,.decision-grid aside,.validation-summary,.score-grid,.checks-list,.document-sheet,.performance-empty,.evidence-card{border-color:#e2ddd4}.phase-title,.score-head,.import-preview-table>div:first-child{background:#f4f2ec}.approved-pill,.curriculum-pill{color:#2d6552;background:#edf4f0;border-color:#c9dfd6}.review-pill{color:#805d2b;background:#f8f1e5;border-color:#e5d1ad}.annual-table,.document-table,.student-score-table,.distribution-table,.identity-table{border-color:#d9d3c8;box-shadow:0 8px 24px #24302a0a}.annual-head,.document-title,.score-head{color:#30433b}.upload-drop{background:#faf8f3;border-color:#b8aa92}.upload-drop:hover{background:#f5f0e6;border-color:#9a7640}.analysis-bar i{background:linear-gradient(90deg,#9c4850,#c79b51,#39705d)}.app-content footer{width:calc(100% - 76px);max-width:1240px}html[data-theme=dark] .builder-card,html[data-theme=dark] .annual-fields,html[data-theme=dark] .meeting-preview,html[data-theme=dark] .exam-results,html[data-theme=dark] .analysis-results,html[data-theme=dark] .performance-results,html[data-theme=dark] .performance-card,html[data-theme=dark] .skill-map,html[data-theme=dark] .support-planner,html[data-theme=dark] .roster-list>article,html[data-theme=dark] .field>input,html[data-theme=dark] .field>select,html[data-theme=dark] .select-wrap{color:#e8eee9;background:#18211e;border-color:#35443e}html[data-theme=dark] .hero h1,html[data-theme=dark] .annual-hero h1,html[data-theme=dark] .meeting-hero h1,html[data-theme=dark] .exam-hero h1,html[data-theme=dark] .analysis-hero h1,html[data-theme=dark] .performance-hero h1{color:#e8eee9}html[data-theme=dark] .studio-workflow ol{background:#18211ef0;border-color:#35443e}html[data-theme=dark] .studio-workflow li.pending{color:#9eaaa4}html[data-theme=dark] .studio-workflow li>span{background:#202b27;border-color:#3a4943}@media (width<=760px){.app-sidebar.collapsed{width:min(86vw,300px)}.app-sidebar.collapsed .brand-copy,.app-sidebar.collapsed .main-nav button span,.app-sidebar.collapsed .main-nav button em,.app-sidebar.collapsed .nav-section-label,.app-sidebar.collapsed .curriculum-pill span{display:initial}.app-sidebar.collapsed .brand-copy{display:flex}.app-sidebar.collapsed .sidebar-brand{justify-content:space-between;padding-inline:7px}.app-sidebar.collapsed .main-nav button{justify-content:flex-start;padding:0 12px}.app-sidebar .collapse-button{display:none}.mobile-menu-button.open{left:min(86vw - 54px,246px)}.app-sidebar .main-nav{background:0 0;border:0;justify-content:flex-start;width:auto;height:auto;min-height:0;position:static;inset:auto;overflow:hidden auto}.app-sidebar .main-nav button{flex:0 0 48px;width:100%;min-width:0}.annual-module,.meeting-module,.exam-module,.analysis-module,.performance-module,.rosters-module{padding-inline:16px}.app-content>.hero,.app-content>.annual-hero,.app-content>.meeting-hero,.app-content>.exam-hero,.app-content>.analysis-hero,.app-content>.performance-hero{padding-top:82px}.studio-workflow{margin:0;padding:0 18px}.studio-workflow ol{grid-template-columns:1fr 1fr}.studio-workflow li{padding:10px}.studio-workflow strong,.studio-workflow small{white-space:normal}.app-content footer{width:auto;margin-inline:18px}.class-context-bar{grid-template-columns:1fr;gap:12px;width:auto;margin:18px 16px 0}}.discipline-settings-card{background:#edf5f1;border:1px solid #c7dbd2;border-radius:17px;margin-top:16px;padding:24px}.discipline-settings-heading{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.discipline-settings-heading h2{color:var(--forest);margin:7px 0}.discipline-settings-heading p,.discipline-settings-actions p{max-width:720px;color:var(--muted);margin:0;font-size:12px;line-height:1.65}.discipline-count{color:#29604f;background:#fff;border:1px solid #bdd5cb;border-radius:999px;flex:none;padding:7px 11px;font-size:10px;font-weight:750}.discipline-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px;display:grid}.discipline-option{background:#fff;border:1px solid #d7ddd9;border-radius:13px;justify-content:space-between;align-items:center;gap:16px;padding:16px;display:flex}.discipline-option.selected{border-color:#8fbaa9;box-shadow:inset 3px 0 #368268}.discipline-select{cursor:pointer;align-items:center;gap:11px;display:flex}.discipline-select input,.discipline-default input{flex:none;width:18px;height:18px}.discipline-select span{gap:4px;display:grid}.discipline-select strong{color:var(--forest);font-size:13px}.discipline-select small{color:var(--muted);font-size:10px}.discipline-default{color:#52665f;align-items:center;gap:7px;font-size:10px;font-weight:700;display:flex}.discipline-settings-actions{border-top:1px solid #c7dbd2;justify-content:space-between;align-items:center;gap:22px;margin-top:16px;padding-top:16px;display:flex}.discipline-settings-actions .primary-button{flex:none;margin:0}html[data-theme=dark] .discipline-settings-card{background:#17231f;border-color:#354a42}html[data-theme=dark] .discipline-settings-heading h2,html[data-theme=dark] .discipline-select strong{color:#e6ece8}html[data-theme=dark] .discipline-option{background:#141c19;border-color:#35443e}html[data-theme=dark] .discipline-count{color:#b9d8cb;background:#1d2c27;border-color:#416256}@media (width<=760px){.discipline-settings-heading,.discipline-settings-actions{flex-direction:column;align-items:stretch}.discipline-count{align-self:flex-start}.discipline-options{grid-template-columns:1fr}.discipline-option{flex-direction:column;align-items:flex-start}.discipline-settings-actions .primary-button{width:100%}}.module-grid .module-link{color:#8a6834;align-items:center;gap:6px;min-height:44px;margin-top:auto;font-size:11px;font-weight:750;text-decoration:none;display:flex}.module-grid .module-link:hover{text-decoration:underline}.module-grid .module-link:focus-visible{outline-offset:4px;outline:2px solid}:root{--font-heading:"Newsreader", Georgia, serif;--font-body:"Source Sans 3", Arial, sans-serif;--nav-active:#2a4338;--nav-hover:#21382f;--gold-text:#7a5b21;--gold-on-dark:#d9b873;--label-muted:#9fb0a8;--warning-bg:#fbf3e4;--warning-border:#ebd9b4;--success-bg:#e4efe9;--success-text:#1f5a43;--radius-card:16px;--radius-control:12px}body{font-family:var(--font-body)}h1,h2,h3{font-family:var(--font-heading);font-weight:600}.app-sidebar{background:var(--sidebar)}.nav-group{flex-direction:column;flex-shrink:0;gap:4px;display:flex}.nav-group+.nav-group{margin-top:12px}.app-sidebar .nav-section-label{color:var(--label-muted);letter-spacing:.08em;padding:8px 12px;font-size:13px;display:block}.app-sidebar .main-nav button,.app-sidebar .nav-external{border-radius:var(--radius-control);color:#dfe7e3;width:100%;height:auto;min-height:44px;font-family:var(--font-body);text-align:left;white-space:normal;background:0 0;border:0;align-items:center;gap:10px;padding:10px 12px;font-size:15px;font-weight:500;line-height:1.25;text-decoration:none;display:flex}.app-sidebar .main-nav svg{flex-shrink:0}.app-sidebar .main-nav button:hover,.app-sidebar .nav-external:hover{background:var(--nav-hover);color:#fff}.app-sidebar .main-nav button.active{background:var(--nav-active);color:#fff;box-shadow:none}.app-sidebar .main-nav button:focus-visible,.app-sidebar .nav-external:focus-visible{outline:2px solid var(--gold-on-dark);outline-offset:-2px}.app-sidebar.collapsed .nav-external{justify-content:center;padding-inline:0}.app-sidebar.collapsed .nav-external span,.app-sidebar.collapsed .nav-external>svg:last-of-type{display:none}.sidebar-brand .brand-copy strong{font-family:var(--font-heading);font-size:30px}.app-sidebar .theme-button,.collapse-button,.mobile-menu-button{min-width:44px;min-height:44px}.dashboard-hero,.module-grid>article,.quick-panel,.notice-panel{border-radius:var(--radius-card)}.dashboard-top h1{font-family:var(--font-heading);font-size:clamp(28px,3vw,42px)}.module-grid p,.dashboard-top>div>span,.dashboard-hero p,.notice p,.settings-tools span{font-size:14px;line-height:1.55}.section-title small,.quick-links button small{color:var(--muted);font-size:13px}.module-grid button,.module-grid .module-link{color:var(--gold-text);font-size:15px}.module-grid>article:has(.module-link){border-style:dashed}.dashboard-hero .eyebrow{color:var(--gold-on-dark)}.settings-tools{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0 16px;display:grid}.settings-tools button{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);text-align:left;color:var(--ink);gap:8px;padding:22px;display:grid}.settings-tools strong{font-size:18px}.settings-tools span{color:var(--muted)}.settings-tools button:hover{border-color:var(--gold)}.settings-about{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);color:var(--ink);padding:18px 22px}.settings-about summary{cursor:pointer;align-items:center;min-height:44px;font-weight:600;display:flex}.settings-return{padding:24px clamp(18px,4vw,58px) 0}@media (width<=900px){.mobile-menu-button{display:grid}.app-sidebar,.app-sidebar.collapsed{visibility:hidden;width:min(86vw,300px);transform:translate(-105%)}.app-sidebar.mobile-open{visibility:visible;transform:translate(0)}.app-content,.app-sidebar.collapsed+.app-content{margin-left:0}.nav-scrim{z-index:45;background:#14241f99;border:0;position:fixed;inset:0}.app-sidebar .collapse-button{display:none}.mobile-menu-button.open{left:min(86vw - 54px,246px)}.app-sidebar .main-nav{background:0 0;border:0;min-height:0;padding:16px 0;position:static;overflow:hidden auto}.app-sidebar .main-nav button{flex:none;min-width:0}.dashboard,.profile-settings-module{padding-top:80px}.settings-return{padding-top:76px}.settings-return+section{padding-top:20px}.settings-tools{grid-template-columns:1fr}}html[data-theme=dark]{--gold-text:var(--gold-on-dark)}.today-dashboard{max-width:1500px;padding:40px clamp(20px,3.5vw,52px) 64px}.today-header{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:32px;display:flex}.today-eyebrow{letter-spacing:.1em;color:var(--muted);font-size:13px;font-weight:600}.today-header h1{font-family:var(--font-heading);color:var(--ink);margin:8px 0 10px;font-size:clamp(32px,3.6vw,48px);line-height:1.12}.today-header p{color:var(--muted);margin:0;font-size:17px;line-height:1.6}.today-icon-button{border:1px solid var(--line);border-radius:var(--radius-control);min-width:48px;min-height:48px;color:var(--ink);background:var(--surface);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:relative}.today-badge{min-width:23px;min-height:23px;color:var(--sidebar);background:var(--gold-on-dark);border-radius:20px;place-items:center;padding:2px 5px;font-size:13px;font-weight:700;display:grid;position:absolute;top:-7px;right:-5px}.today-notifications{margin-top:3px;position:relative}.today-notification-menu{z-index:20;border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);width:min(320px,80vw);padding:22px;position:absolute;top:60px;right:0;box-shadow:0 12px 32px #14241f18}.today-notification-menu p{margin:8px 0 0;font-size:15px}.today-columns{grid-template-columns:minmax(0,1fr);align-items:start;gap:24px;display:grid}.today-card{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);min-width:0;color:var(--ink);padding:28px}.today-card h2,.today-tools h2{margin:0;font-size:28px;line-height:1.2}.today-lessons>header{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding-bottom:18px;display:flex}.today-card-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.today-button{border-radius:var(--radius-control);background:var(--sidebar);color:#fff;min-height:46px;font-family:var(--font-body);border:1px solid #0000;justify-content:center;align-items:center;gap:7px;padding:11px 17px;font-size:15px;font-weight:600;line-height:1.3;text-decoration:none;display:inline-flex}.today-button:disabled{opacity:.6;cursor:wait}.today-button.gold{background:var(--gold);color:var(--sidebar)}.today-button.outline{border-color:var(--gold);color:var(--gold-text);background:0 0}.today-button.success{background:var(--success-bg);color:var(--success-text);border-radius:24px}.today-text-button{min-height:44px;color:var(--gold-text);background:0 0;border:0;padding:8px 0;font-size:15px;font-weight:600}.today-lesson-list{margin:0;padding:0;list-style:none}.today-lesson-list>li{border-bottom:1px solid var(--line);grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:16px;padding:24px 0;display:grid}.today-lesson-list time{color:var(--muted);font-size:16px;font-weight:600}.today-lesson-copy{overflow-wrap:anywhere;gap:5px;display:grid}.today-lesson-copy strong{font-size:17px;line-height:1.4}.today-lesson-copy span,.today-lesson-copy small{color:var(--muted);font-size:14px;line-height:1.5}.today-add-lesson{border:1px dashed var(--label-muted);border-radius:var(--radius-control);width:100%;min-height:64px;color:var(--muted);background:0 0;margin-top:20px;padding:14px;font-size:15px;line-height:1.6}.today-empty{min-height:250px;color:var(--muted);align-content:center;justify-items:start;gap:14px;padding:28px 4px;display:grid}.today-empty svg{color:var(--gold-text)}.today-empty h3{color:var(--ink);margin:0;font-size:26px}.today-empty p{max-width:520px;margin:0;font-size:16px;line-height:1.6}.today-attention ul{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:12px;margin:20px 0 0;padding:0;list-style:none;display:grid}.today-attention li{border:1px solid var(--line);border-radius:var(--radius-control);background:var(--page)}.today-attention li.warning{border-color:var(--warning-border);background:var(--warning-bg)}.today-attention li button{text-align:left;width:100%;min-height:90px;color:var(--ink);border-radius:inherit;background:0 0;border:0;grid-template-columns:1fr auto;gap:7px;padding:18px;display:grid}.today-attention li strong{font-size:17px}.today-attention li span{color:var(--muted);grid-column:1;font-size:15px;line-height:1.5}.today-attention li svg{grid-area:1/2/3;align-self:center}.today-attention-empty{color:var(--muted);align-items:center;gap:12px;padding:16px 0 0;font-size:16px;line-height:1.6;display:flex}.today-attention-empty p{margin:0}.today-attention-empty svg{color:var(--gold-text);flex-shrink:0}.today-attention-note{color:var(--muted);font-size:14px}.today-studio{border-radius:var(--radius-card);background:var(--sidebar);color:#fff;justify-content:space-between;align-items:center;gap:28px;margin-top:26px;padding:32px;display:flex}.today-studio .today-eyebrow{color:var(--gold-on-dark)}.today-studio h2{color:#fff;margin:12px 0 10px;font-size:clamp(28px,2.7vw,36px);line-height:1.2}.today-studio p{color:#dfe7e3;margin:0;font-size:16px;line-height:1.6}.today-studio-actions{flex-wrap:wrap;flex-shrink:0;gap:12px;display:flex}.today-studio-actions .outline{color:#fff;border-color:var(--label-muted)}.today-tools{margin-top:30px}.today-tools>div{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:18px;display:grid}.today-tools button,.today-tools a{border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface);min-height:68px;color:var(--ink);text-align:left;align-items:center;gap:10px;padding:16px;font-size:16px;font-weight:600;text-decoration:none;display:flex}.today-tools svg{flex-shrink:0}.today-tools svg:last-of-type{margin-left:auto}.today-tools a{border-style:dashed}.today-message.today-storage-note{margin:24px 0 0}.today-message{border:1px solid var(--warning-border);border-radius:var(--radius-control);background:var(--warning-bg);color:var(--ink);flex-wrap:wrap;align-items:center;gap:14px;margin:0 0 22px;padding:18px;font-size:16px;line-height:1.5;display:flex}.timetable-dialog{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);width:min(780px,100vw - 32px);max-height:calc(100dvh - 40px);color:var(--ink);margin:auto;padding:28px;overflow-y:auto}.timetable-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#14241f99}.timetable-dialog>header{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.timetable-dialog h2{margin:8px 0 0;font-size:32px}.timetable-dialog h3{margin:20px 0 12px;font-size:25px}.timetable-dialog p{color:var(--muted);font-size:15px;line-height:1.6}.timetable-form{grid-template-columns:1fr 1fr;gap:16px;margin-top:22px;display:grid}.timetable-form label{color:var(--ink);flex-direction:column;gap:8px;min-width:0;font-size:15px;font-weight:600;display:flex}.timetable-form label>span{color:var(--muted);font-weight:400}.timetable-form input,.timetable-form select{border:1px solid var(--line);width:100%;min-width:0;min-height:46px;color:var(--ink);background:var(--surface);font-family:var(--font-body);border-radius:10px;padding:10px 12px;font-size:16px}.timetable-form .timetable-check{flex-direction:row;align-self:end;align-items:center;gap:10px;min-height:46px;font-weight:400;display:flex}.timetable-check input{width:22px;min-height:22px}.timetable-wide{grid-column:1/-1}.timetable-actions{flex-wrap:wrap;gap:12px;margin-top:8px;display:flex}.timetable-list{margin:0 0 20px;padding:0;list-style:none}.timetable-list li{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:14px 0;display:flex}.timetable-list li>div{flex:1;gap:5px;display:grid}.timetable-list strong{font-size:15px}.timetable-list span{color:var(--muted);font-size:14px}html[data-theme=dark] .today-message,html[data-theme=dark] .today-attention li.warning{background:#30291c;border-color:#675336}html[data-theme=dark] .today-button.success{color:#bce5ce;background:#213c30}@media (width<=1200px){.today-studio{flex-direction:column;align-items:flex-start}.today-tools>div{grid-template-columns:1fr 1fr}.today-card{padding:22px}}@media (width<=900px){.today-dashboard{padding-top:80px}.today-columns{grid-template-columns:1fr}.today-header h1{font-size:34px}}@media (width<=540px){.today-dashboard{padding-inline:16px}.today-header{gap:12px}.today-header h1{font-size:30px}.today-header p{font-size:16px}.today-card{padding:20px 16px}.today-card h2{font-size:26px}.today-card-actions{justify-content:space-between;gap:8px;width:100%}.today-lesson-list>li{grid-template-columns:45px minmax(0,1fr);gap:12px}.today-lesson-list .today-button{grid-column:2;justify-self:start}.today-studio{padding:25px 22px}.today-studio-actions{flex-direction:column;width:100%}.today-tools>div{grid-template-columns:1fr}.timetable-dialog{padding:22px 18px}.timetable-form{grid-template-columns:1fr}.timetable-wide{grid-column:auto}.timetable-list li{flex-wrap:wrap}.timetable-list li>div{flex-basis:100%}}.import-name-note{color:var(--muted);margin:12px 0;font-size:14px;line-height:1.6}.import-preview-heading strong{font-size:16px}.import-preview-heading span,.import-preview-actions span,.import-preview-table>div>*{font-size:14px}.persistent-roster-fields{border:0;gap:24px;min-width:0;margin:22px 0 0;padding:0;display:grid}.persistent-roster-fields>.builder-card{width:100%;max-width:none}.saved-roster-editor{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);padding:24px}.saved-roster-editor>header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.saved-roster-editor h2{margin:0;font-size:28px}.saved-roster-editor p{color:var(--muted);font-size:15px}.roster-edit-grid{gap:10px;margin:20px 0;display:grid}.roster-edit-grid>div{grid-template-columns:minmax(100px,1fr) minmax(160px,3fr) 44px;align-items:end;gap:12px;display:grid}.roster-delete-confirm{border-block:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:18px;margin:18px 0;padding:22px 0;display:flex}.roster-delete-confirm label{font-size:14px}.saved-roster-editor>.primary-button{width:100%}@media (width<=600px){.saved-roster-editor{padding:18px}.saved-roster-editor>header{flex-direction:column;align-items:flex-start}.roster-edit-grid>div{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) 44px;padding-block:10px}.roster-edit-grid>div>label:first-child{grid-column:1/-1}.roster-edit-grid>div>label:nth-child(2){grid-column:1}}.timetable-dialog{width:min(1320px,100vw - 32px)}.weekly-toolbar,.weekly-program-summary{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:20px 0 12px;display:flex}.weekly-toolbar{justify-content:flex-start}.weekly-program-summary{color:var(--muted);font-size:15px}.weekly-program-summary strong{color:var(--ink);font-size:22px}.weekly-grid-hint{margin:8px 0 14px}.weekly-grid-scroll{border:1px solid var(--line);overscroll-behavior-x:contain;border-radius:14px;max-width:100%;overflow-x:auto}.weekly-grid-scroll:focus-visible{outline:3px solid var(--gold-text);outline-offset:3px}.weekly-grid{border-collapse:separate;border-spacing:5px;background:var(--page-bg,#f5f6f8);width:100%;min-width:1000px;padding:7px;font-size:15px}.weekly-grid th,.weekly-grid td{text-align:center;vertical-align:middle;border-radius:10px;min-width:104px;padding:0}.weekly-grid thead th{background:var(--surface);height:75px;padding:14px 8px;font-weight:600}.weekly-grid thead strong{font-size:15px;display:block}.weekly-grid thead span{color:var(--muted);white-space:nowrap;margin-top:7px;font-size:14px;font-weight:400;display:block}.weekly-grid tbody th{background:var(--surface);text-align:left;padding:12px;font-weight:600}.weekly-grid th:first-child{z-index:2;min-width:112px;position:sticky;left:0;box-shadow:4px 0 8px #14241f08}.weekly-grid thead th:first-child{z-index:3}.weekly-grid tbody th small{color:var(--gold-text,#7a5b21);margin-top:5px;font-size:13px;font-weight:400;display:block}.weekly-grid td{background:var(--surface);height:79px}.weekly-grid button{width:100%;min-height:79px;font-family:var(--font-body);cursor:pointer;color:var(--ink);background:0 0;border:0;border-radius:10px;padding:12px 7px}.weekly-grid button:focus-visible{outline:3px solid var(--gold-text,#7a5b21);outline-offset:-3px}.weekly-grid button:hover{background:#e4efe9}.weekly-grid button:disabled{cursor:wait;opacity:.65}.weekly-lesson strong,.weekly-lesson span{display:block}.weekly-lesson strong{font-size:18px;line-height:1.3}.weekly-lesson span{color:var(--muted);margin-top:6px;font-size:14px}.weekly-empty{justify-content:center;align-items:center;display:flex}.weekly-empty svg{opacity:.45}.weekly-grid .weekly-break{color:#7a5b21;background:#fbf3e4;min-width:82px}.weekly-grid .weekly-break span{color:#7a5b21;font-size:14px}.weekly-grid .weekly-today th{color:#fff;background:#14241f}.weekly-grid .weekly-today th small{color:#d9b873}.weekly-grid .weekly-today td:not(.weekly-break){background:#e4efe9}.weekly-grid .weekly-today button:hover{background:#d4e6dc}.timetable-fields{border:0;grid-column:1/-1;grid-template-columns:1fr 1fr;gap:16px;min-width:0;margin:0;padding:0;display:grid}.timetable-fields:disabled{opacity:.7}.weekly-hours-editor{background:var(--page-bg,#f5f6f8);border:1px solid var(--line);border-radius:14px;margin-top:20px;padding:18px}.weekly-hours-editor fieldset{border:0;min-width:0;margin:0;padding:0}.weekly-hours-row{grid-template-columns:1fr 1fr 1fr auto;align-items:end;gap:12px;margin-bottom:12px;display:grid}.weekly-hours-row label{gap:6px;font-size:14px;display:grid}.weekly-hours-row input,.weekly-hours-row select{border:1px solid var(--line);background:var(--surface);width:100%;min-width:0;min-height:44px;color:var(--ink);font:inherit;border-radius:10px;padding:9px}@media (width<=540px){.timetable-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 20px);padding:18px 12px}.timetable-dialog h2{font-size:27px}.timetable-fields{grid-template-columns:1fr}.weekly-grid{min-width:1000px}.weekly-grid tbody th{min-width:98px}.weekly-hours-row{grid-template-columns:1fr 1fr}.weekly-hours-row label:first-child{grid-column:1/-1}.weekly-hours-row button{grid-column:1/-1;justify-self:start}.weekly-program-summary{flex-direction:column;align-items:flex-start}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}
