/*! 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-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--spacing:.25rem;--default-font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--default-mono-font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.relative{position:relative}.static{position:static}.-start{inset-inline-start:calc(var(--spacing) * -1)}.start{inset-inline-start:var(--spacing)}.-end{inset-inline-end:calc(var(--spacing) * -1)}.end{inset-inline-end:var(--spacing)}.block{display:block}.contents{display:contents}.flex{display:flex}.hidden{display:none}.inline{display:inline}.table{display:table}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.border{border-style:var(--tw-border-style);border-width:1px}.lowercase{text-transform:lowercase}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--ink:#10231f;--ink-soft:#465952;--paper:#f6f4ed;--white:#fff;--line:#d9ddd5;--green:#1d8f68;--green-dark:#116149;--green-pale:#e6f4ed;--coral:#f47f65}body{background:var(--paper);color:var(--ink);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}.home-shell{min-height:100vh;padding:0 5vw 48px;overflow:hidden}.home-nav{border-bottom:1px solid #10231f1f;justify-content:space-between;align-items:center;height:88px;display:flex}.home-nav-actions{gap:8px;display:flex}.brand-lockup{letter-spacing:-.02em;align-items:center;gap:12px;font-weight:800;display:flex}.brand-mark{background:var(--ink);color:#fff;border-radius:12px;place-items:center;width:38px;height:38px;display:grid}.brand-mark svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;width:21px}.nav-link{background:#ffffff8c;border:1px solid #10231f2e;border-radius:999px;padding:10px 16px;font-size:14px;font-weight:700}.home-hero{grid-template-columns:1.05fr .95fr;align-items:center;gap:7vw;max-width:1240px;min-height:620px;margin:0 auto;padding:76px 0 62px;display:grid}.eyebrow{background:var(--green-pale);color:var(--green-dark);text-transform:uppercase;letter-spacing:.12em;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:800;display:inline-flex}.home-copy h1{letter-spacing:-.065em;margin:24px 0 20px;font-size:clamp(54px,7vw,92px);font-weight:760;line-height:.93}.home-copy p{max-width:610px;color:var(--ink-soft);font-size:18px;line-height:1.7}.primary-button{background:var(--ink);color:#fff;border:0;border-radius:14px;justify-content:center;align-items:center;gap:18px;font-weight:750;display:inline-flex;box-shadow:0 10px 22px #10231f29}.large-button{margin-top:22px;padding:16px 20px}.large-button span{color:#a8dbc8;font-size:20px}.home-actions{align-items:center;gap:18px;margin-top:22px;display:flex}.home-actions .large-button{margin-top:0}.home-admin-link{color:var(--ink-soft);font-size:13px;font-weight:800}.scan-demo{background:var(--white);border:1px solid #10231f1a;border-radius:28px;justify-self:end;width:min(100%,460px);padding:24px;position:relative;transform:rotate(1.2deg);box-shadow:0 30px 80px #10231f21}.scan-demo:before{content:"";z-index:-1;background:var(--green);opacity:.13;border-radius:30px;position:absolute;inset:28px -36px -28px 34px;transform:rotate(-4deg)}.demo-topline{justify-content:space-between;align-items:center;font-size:13px;font-weight:800;display:flex}.live-pill{background:var(--green-pale);color:var(--green-dark);border-radius:999px;padding:7px 10px}.live-pill i{background:var(--green);border-radius:50%;width:7px;height:7px;margin-right:5px;display:inline-block}.demo-qr{background:var(--paper);border-radius:18px;grid-template-columns:repeat(3,1fr);gap:8px;width:210px;height:210px;margin:34px auto 20px;padding:16px;display:grid}.demo-qr span{background:var(--ink);border-radius:6px}.demo-qr span:nth-child(2),.demo-qr span:nth-child(4),.demo-qr span:nth-child(6),.demo-qr span:nth-child(8){border:6px solid var(--ink);background:0 0}.demo-title{text-align:center;margin:0;font-weight:800}.demo-subtitle{text-align:center;color:var(--ink-soft);margin:6px 0 22px;font-size:13px}.demo-success{background:var(--green-pale);border-radius:15px;align-items:center;gap:12px;padding:14px;display:flex}.demo-success>span{color:#fff;background:var(--green);border-radius:50%;place-items:center;width:34px;height:34px;font-weight:900;display:grid}.demo-success strong,.demo-success small{display:block}.demo-success strong{font-size:13px}.demo-success small{color:var(--ink-soft);margin-top:3px;font-size:11px}.home-steps{border-top:1px solid #10231f21;grid-template-columns:repeat(3,1fr);max-width:1240px;margin:0 auto;display:grid}.home-steps article{gap:18px;padding:28px 30px 6px 0;display:flex}.home-steps article+article{border-left:1px solid #10231f21;padding-left:30px}.home-steps article>span{color:var(--coral);font-size:12px;font-weight:900}.home-steps h2{margin:0 0 7px;font-size:16px}.home-steps p{color:var(--ink-soft);margin:0;font-size:13px;line-height:1.55}@media (width<=800px){.home-shell{padding:0 22px 34px}.home-nav{height:74px}.home-hero{grid-template-columns:1fr;gap:54px;padding:54px 0 48px}.home-copy h1{font-size:clamp(52px,17vw,76px)}.scan-demo{justify-self:center;transform:none}.home-steps{grid-template-columns:1fr}.home-steps article,.home-steps article+article{border-bottom:1px solid #10231f21;border-left:0;padding:22px 0}}.center-state,.login-shell{place-items:center;min-height:100vh;padding:24px;display:grid}.center-state{color:var(--ink-soft);align-content:center}.spinner{border:3px solid var(--line);border-top-color:var(--green);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.login-shell{background:radial-gradient(circle at 15% 20%, #1d8f6829, transparent 28%), var(--paper)}.login-card{background:#fff;border:1px solid #10231f1a;border-radius:26px;width:min(100%,430px);padding:40px;box-shadow:0 26px 70px #10231f21}.login-mark{background:var(--ink);color:#fff;border-radius:14px;place-items:center;width:46px;height:46px;margin-bottom:30px;font-size:20px;font-weight:900;display:grid}.login-card h1{letter-spacing:-.05em;margin:18px 0 8px;font-size:42px}.login-card>p{color:var(--ink-soft);margin:0 0 28px;line-height:1.6}.login-card form{gap:10px;display:grid}label{text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft);font-size:12px;font-weight:800}input,select{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:12px;outline:none;padding:13px 14px;transition:border .2s,box-shadow .2s}select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--ink-soft) 50%), linear-gradient(135deg, var(--ink-soft) 50%, transparent 50%);background-position:calc(100% - 18px) 52%,calc(100% - 13px) 52%;background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:42px}input:focus,select:focus{border-color:var(--green);box-shadow:0 0 0 3px #1d8f681f}.full-button{width:100%;margin-top:6px;padding:14px 18px}.form-error{color:#a53c2c;margin:0;font-size:13px}.back-link{text-align:center;color:var(--ink-soft);margin-top:26px;font-size:13px;font-weight:700;display:block}.admin-shell{background:#f3f2ec;min-height:100vh;padding:0 4vw 60px}.admin-header{border-bottom:1px solid #10231f1f;justify-content:space-between;align-items:center;height:82px;display:flex}.admin-header .brand-lockup>div{gap:2px;display:grid}.admin-header .brand-lockup small{color:var(--ink-soft);font-size:11px;font-weight:600}.ghost-button,.secondary-button,.danger-button,.text-button,.reset-button{background:0 0;border:0;font-weight:750}.ghost-button{border:1px solid var(--line);background:#ffffff8c;border-radius:11px;padding:10px 15px}.admin-intro{justify-content:space-between;align-items:end;gap:40px;max-width:1280px;margin:0 auto;padding:46px 0 28px;display:flex}.admin-intro h1{letter-spacing:-.05em;margin:15px 0 6px;font-size:42px}.admin-intro p{color:var(--ink-soft);margin:0}.summary-row{background:#fff;border:1px solid #10231f17;border-radius:17px;min-width:430px;display:flex}.summary-row div{flex:1;padding:16px 20px}.summary-row div+div{border-left:1px solid var(--line)}.summary-row strong,.summary-row span{display:block}.summary-row strong{letter-spacing:-.04em;font-size:24px}.summary-row span{color:var(--ink-soft);margin-top:3px;font-size:11px}.error-banner{color:#923724;background:#fff0ec;border-radius:12px;justify-content:space-between;max-width:1280px;margin:0 auto 16px;padding:12px 14px;font-size:13px;display:flex}.error-banner button{color:inherit;background:0 0;border:0;font-size:18px}.success-banner{background:var(--green-pale);max-width:1280px;color:var(--green-dark);border-radius:12px;justify-content:space-between;margin:0 auto 16px;padding:12px 14px;font-size:13px;display:flex}.success-banner button{color:inherit;background:0 0;border:0;font-size:18px}.portal-tabs{z-index:18;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);scrollbar-width:thin;background:#ffffffeb;border:1px solid #10231f1a;border-radius:17px;gap:5px;max-width:1280px;margin:0 auto 18px;padding:6px;display:flex;position:sticky;top:10px;overflow-x:auto;box-shadow:0 12px 32px #10231f17}.portal-tab{min-height:52px;color:var(--ink-soft);white-space:nowrap;background:0 0;border:0;border-radius:12px;flex:1 0 150px;justify-content:center;align-items:center;gap:8px;padding:9px 12px;font-size:11px;font-weight:800;transition:background .18s,color .18s,transform .18s;display:flex;position:relative}.teacher-tabs .portal-tab{flex-basis:190px}.portal-tab:hover{background:var(--paper);color:var(--ink)}.portal-tab.active{background:var(--ink);color:#fff;box-shadow:0 7px 16px #10231f29}.portal-tab:focus-visible{outline-offset:2px;outline:3px solid #1d8f6840}.portal-tab-icon{font-size:17px;line-height:1}.portal-tab strong{background:var(--paper);min-width:22px;height:22px;color:var(--ink-soft);border-radius:999px;place-items:center;padding:0 6px;font-size:9px;display:grid}.portal-tab.active strong{color:#fff;background:#ffffff24}.portal-live-dot{background:#32c88b;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #32c88b24}.portal-tab-content{min-height:430px;scroll-margin-top:82px}.portal-tab-content>.students-panel:first-child,.portal-tab-content>.history-panel:first-child,.portal-tab-content>.reports-panel:first-child,.portal-tab-content>.teacher-history-panel:first-child{margin-top:0}.organisation-panel{max-width:1280px;margin:0 auto 18px;padding:24px}.panel-note{color:var(--ink-soft);margin:10px 0 0;font-size:12px}.structure-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:20px;display:grid}.structure-card{border:1px solid #e5e9e3;border-radius:16px;min-width:0;padding:16px}.structure-card h3{margin:0 0 12px;font-size:14px}.compact-create-form{background:var(--paper);border-radius:13px;grid-template-columns:1fr auto;gap:7px;padding:10px;display:grid}.compact-create-form.stacked{grid-template-columns:1fr}.compact-create-form.stacked>div{grid-template-columns:1fr auto;gap:7px;display:grid}.compact-create-form input,.compact-create-form select{min-width:0;padding:9px 10px;font-size:11px}.compact-create-form .primary-button{padding:0 13px;font-size:10px}.structure-list{max-height:260px;margin-top:12px;overflow:auto}.structure-list>form{border-top:1px solid #edf0ec;grid-template-columns:1fr auto;align-items:end;gap:7px;padding:9px 2px;display:grid}.structure-list>form>div{min-width:0}.structure-list small{color:var(--ink-soft);margin:0 0 4px;font-size:9px;display:block}.structure-list input{min-width:0;padding:8px 9px;font-size:11px}.structure-list button{background:var(--green-pale);color:var(--green-dark);border:0;border-radius:8px;padding:8px 9px;font-size:9px;font-weight:850}.structure-list button:disabled{opacity:.35}.structure-list>p{color:var(--ink-soft);margin:20px 4px;font-size:11px;line-height:1.5}.subjects-panel{max-width:1280px;margin:0 auto 18px;padding:22px 24px}.subjects-layout{grid-template-columns:minmax(300px,.7fr) 1.3fr;align-items:center;gap:20px;margin-top:18px;display:grid}.subject-form{background:var(--paper);border-radius:15px;grid-template-columns:1fr auto;gap:9px;padding:12px;display:grid}.subject-form.enhanced{grid-template-columns:1.3fr .7fr auto}.subject-form.enhanced .inline-check,.subject-form.enhanced .primary-button{min-height:44px}.inline-check{color:var(--ink-soft);text-transform:none;letter-spacing:0;background:#fff;border-radius:11px;align-items:center;gap:8px;padding:9px 11px;font-size:10px;display:flex}.inline-check input{width:16px;height:16px;padding:0}.subject-form .primary-button{padding:0 18px}.subject-chips{flex-wrap:wrap;gap:8px;display:flex}.subject-chips span{background:var(--green-pale);color:var(--green-dark);border-radius:999px;padding:9px 12px;font-size:12px;font-weight:800}.subject-chips small{color:var(--ink-soft)}.subject-catalogue{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.subject-catalogue-card{background:#fff;border:1px solid #e4e9e2;border-radius:12px;grid-template-columns:1fr auto;display:grid;overflow:hidden}.subject-catalogue-card.selected{box-shadow:inset 3px 0 var(--green);border-color:#86b9a4}.subject-manage-button{color:var(--ink);text-align:left;background:0 0;gap:3px;padding:12px;display:grid}.subject-edit-button{color:var(--green-dark);background:#fafbf9;border-left:1px solid #edf0ec;align-self:stretch;padding:0 12px;font-size:9px;font-weight:850}.subject-catalogue strong,.subject-catalogue small{display:block}.subject-catalogue strong{font-size:12px}.subject-catalogue small{color:var(--ink-soft);font-size:9px}.subject-catalogue span{color:var(--green-dark);font-size:9px;font-weight:850}.rule-builder{border-top:1px solid #edf0ec;margin-top:20px;padding-top:20px}.rule-builder h3{margin:5px 0;font-size:17px}.rule-builder>div:first-child p{color:var(--ink-soft);margin:0;font-size:11px}.rule-builder>form{background:var(--paper);border-radius:14px;grid-template-columns:1fr .7fr .8fr 1.3fr auto;gap:8px;margin-top:14px;padding:12px;display:grid}.rule-builder>form input,.rule-builder>form select{min-width:0;font-size:11px}.rule-builder>form .primary-button{padding:0 16px;font-size:10px}.rule-list{grid-template-columns:repeat(2,1fr);gap:8px;margin-top:12px;display:grid}.rule-list>div{border:1px solid #e5e9e3;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;display:flex}.rule-list strong,.rule-list small{display:block}.rule-list strong{font-size:11px}.rule-list small{color:var(--ink-soft);margin-top:3px;font-size:9px}.rule-list button{color:#9a3f2e;background:0 0;border:0;font-size:9px;font-weight:850}.rule-list>p{color:var(--ink-soft);grid-column:1/-1;font-size:11px}.access-panel{max-width:1280px;margin:0 auto 18px;padding:24px}.access-controls{background:var(--paper);border-radius:16px;grid-template-columns:minmax(240px,.7fr) 1.3fr;align-items:end;gap:20px;margin-top:18px;padding:14px;display:grid}.access-controls>div{gap:8px;display:grid}.access-controls p{color:var(--ink-soft);margin:0;font-size:12px;line-height:1.55}.access-list{margin-top:18px}.access-row{border-top:1px solid #edf0ec;grid-template-columns:42px 1fr 110px 120px;align-items:center;gap:12px;min-height:64px;padding:10px 4px;display:grid}.subject-roster-row{grid-template-columns:42px minmax(190px,1fr) 90px minmax(170px,.6fr) 110px}.subject-roster-row.enhanced{grid-template-columns:24px 42px minmax(190px,1fr) 90px minmax(170px,.6fr) 110px}.subject-student-check{width:17px;height:17px;accent-color:var(--green);padding:0}.subject-section-select{min-width:0;padding:9px 30px 9px 10px;font-size:10px}.subject-section-placeholder{color:var(--ink-soft);text-align:center}.subject-group-workspace{background:linear-gradient(145deg,#f8fbf8,#f1f7f3);border:1px solid #dfe8e1;border-radius:18px;margin:16px 0;padding:18px}.subject-group-year-row{justify-content:space-between;align-items:end;gap:18px;display:flex}.subject-group-year-row h3,.subject-distribution-heading h3{margin:4px 0 3px;font-size:17px}.subject-group-year-row p,.subject-distribution-heading p{color:var(--ink-soft);margin:0;font-size:11px;line-height:1.5}.subject-group-year-row label{min-width:160px}.subject-group-year-row select{width:100%;margin-top:6px;font-size:11px}.subject-group-create-grid{grid-template-columns:1fr 1fr;gap:10px;margin-top:15px;display:grid}.pathway-group-card,.custom-subject-group-form{background:#fff;border:1px solid #dce6df;border-radius:15px;padding:15px}.pathway-group-card h4,.custom-subject-group-form h4{margin:9px 0 4px;font-size:13px}.pathway-group-card p,.custom-subject-group-form p{min-height:34px;color:var(--ink-soft);margin:0 0 12px;font-size:10px;line-height:1.45}.pathway-group-card button{width:100%;min-height:40px}.group-method-badge{background:var(--green-pale);color:var(--green-dark);letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:5px 8px;font-size:8px;font-weight:900;display:inline-flex}.group-method-badge.custom{color:#725b27;background:#f1eee4}.custom-subject-group-form>div{grid-template-columns:1fr auto;gap:8px;display:grid}.custom-subject-group-form input{min-width:0;padding:10px 11px;font-size:10px}.custom-subject-group-form button{min-height:40px}.subject-section-list.enhanced{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.subject-section-list.enhanced>article{background:#fff;border:1px solid #e1e8e2;border-radius:13px;grid-template-columns:minmax(0,1fr) minmax(160px,.65fr);align-items:center;gap:12px;padding:11px;display:grid}.subject-section-identity{align-items:center;gap:9px;min-width:0;display:flex}.subject-section-identity>span{background:var(--green-pale);width:34px;height:34px;color:var(--green-dark);border-radius:10px;flex:none;place-items:center;font-size:12px;font-weight:900;display:grid}.subject-section-identity strong,.subject-section-identity small{display:block}.subject-section-identity strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.subject-section-identity small{color:var(--ink-soft);margin-top:3px;font-size:8px}.subject-section-list.enhanced label{font-size:8px}.subject-section-list.enhanced select{width:100%;margin-top:4px;padding:8px 28px 8px 9px;font-size:9px}.subject-groups-empty{background:#ffffffb3;border:1px dashed #cbd9ce;border-radius:13px;grid-column:1/-1;align-items:center;gap:11px;padding:15px;display:flex}.subject-groups-empty>span{width:34px;height:34px;color:var(--green);background:#fff;border-radius:50%;place-items:center;font-size:18px;display:grid}.subject-groups-empty strong,.subject-groups-empty small{display:block}.subject-groups-empty strong{font-size:11px}.subject-groups-empty small{color:var(--ink-soft);margin-top:3px;font-size:9px}.subject-distribution-panel{border-top:1px solid #e7ece8;margin-top:18px;padding-top:18px}.subject-distribution-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.subject-roster-filters{background:var(--paper);border-radius:14px;grid-template-columns:1.2fr 1fr 1fr;gap:9px;margin-top:14px;padding:12px;display:grid}.subject-roster-filters input,.subject-roster-filters select{width:100%;margin-top:5px;padding:10px;font-size:10px}.subject-bulk-move-bar{background:#fff;border:1px solid #dce6df;border-radius:13px;justify-content:space-between;align-items:center;gap:12px;margin-top:10px;padding:10px 12px;display:flex}.bulk-select-all{color:var(--ink);letter-spacing:0;text-transform:none;align-items:center;gap:8px;font-size:10px;font-weight:800;display:flex}.bulk-select-all input{width:16px;height:16px;accent-color:var(--green);padding:0}.subject-bulk-move-bar>div{align-items:center;gap:8px;display:flex}.subject-bulk-move-bar strong{color:var(--green-dark);font-size:10px}.subject-bulk-move-bar select{min-width:190px;padding:9px 30px 9px 10px;font-size:10px}.subject-bulk-move-bar button{min-height:38px}.subject-roster-list{max-height:560px;padding-right:4px;overflow:auto}.subject-groups-page-heading{margin-bottom:16px}.back-to-subjects{color:var(--green-dark);background:#fff;border:1px solid #dce5de;border-radius:10px;margin-bottom:13px;padding:8px 11px;font-size:10px;font-weight:850}.subject-edit-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.subject-edit-actions button{min-height:44px}.open-groups-button{border:2px solid var(--green);background:var(--green-pale);color:var(--green-dark);text-align:left;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:10px 13px;transition:background .16s,color .16s,transform .16s,box-shadow .16s;display:flex;box-shadow:0 7px 18px #19654b1a}.open-groups-button:hover{background:var(--green);color:#fff;transform:translateY(-1px);box-shadow:0 10px 22px #19654b33}.open-groups-button strong,.open-groups-button small{display:block}.open-groups-button strong{font-size:11px}.open-groups-button small{color:currentColor;opacity:.78;margin-top:2px;font-size:8px}.open-groups-button b{font-size:18px}.access-row strong,.access-row small{display:block}.access-row strong{font-size:13px}.access-row small{color:var(--ink-soft);margin-top:3px;font-size:11px}.add-access-button,.remove-access-button{border-radius:9px;padding:8px 10px;font-size:11px;font-weight:800}.add-access-button{background:var(--green-pale);color:var(--green-dark);border:0}.remove-access-button{color:#9a3f2e;background:#fff7f4;border:1px solid #f0c6bd}.teacher-form{background:var(--paper);border-radius:16px;grid-template-columns:1.25fr .85fr .65fr auto;gap:9px;margin-top:20px;padding:14px;display:grid}.teacher-form .primary-button{padding:0 18px}.teacher-admin-list{grid-template-columns:repeat(2,1fr);gap:12px;margin-top:18px;display:grid}.teacher-admin-card{border:1px solid #e5e9e3;border-radius:16px;padding:16px}.teacher-card-heading{align-items:center;gap:11px;display:flex}.teacher-card-heading strong,.teacher-card-heading small{display:block}.teacher-card-heading strong{font-size:13px}.teacher-card-heading small{color:var(--ink-soft);margin-top:3px;font-size:10px}.attendance-permission{text-align:left;border:1px solid var(--line);background:var(--paper);width:100%;color:var(--ink);border-radius:12px;grid-template-columns:26px 1fr;align-items:center;gap:10px;margin-top:14px;padding:11px 12px;display:grid}.attendance-permission>span{color:#fff;background:#fff;border:1px solid #cfd6d1;border-radius:8px;place-items:center;width:24px;height:24px;font-size:12px;font-weight:900;display:grid}.attendance-permission strong,.attendance-permission small{display:block}.attendance-permission strong{font-size:11px}.attendance-permission small{color:var(--ink-soft);margin-top:3px;font-size:9px;line-height:1.4}.attendance-permission.enabled{background:var(--green-pale);border-color:#b9d9cb}.attendance-permission.enabled>span{border-color:var(--green);background:var(--green)}.teacher-subject-access{margin-top:15px}.teacher-subject-access>small{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.09em;font-size:9px;font-weight:850}.teacher-subject-access>div{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.subject-access-chip{border:1px solid var(--line);color:var(--ink-soft);background:#fff;border-radius:999px;padding:7px 9px;font-size:10px;font-weight:800}.subject-access-chip.assigned{background:var(--green-pale);color:var(--green-dark);border-color:#b9d9cb}.teacher-group-access{border-top:1px solid #edf0ec;margin-top:15px;padding-top:14px}.teacher-group-access-heading{justify-content:space-between;align-items:end;gap:10px;display:flex}.teacher-group-access-heading small,.teacher-group-access-heading strong{display:block}.teacher-group-access-heading small{color:var(--ink-soft);letter-spacing:.09em;text-transform:uppercase;font-size:8px;font-weight:850}.teacher-group-access-heading strong{margin-top:4px;font-size:12px}.teacher-group-access-heading>span{color:var(--ink-soft);font-size:8px}.teacher-group-chip-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:10px;display:grid}.teacher-group-chip{color:var(--ink);text-align:left;background:#fff;border:1px solid #dfe5e0;border-radius:11px;grid-template-columns:26px minmax(0,1fr);align-items:center;gap:8px;padding:9px;transition:border-color .16s,background .16s,transform .16s;display:grid}.teacher-group-chip:hover{background:#f7fbf8;border-color:#8bbba7;transform:translateY(-1px)}.teacher-group-chip>span{width:24px;height:24px;color:var(--green-dark);border:1px solid #ced8d1;border-radius:8px;place-items:center;font-size:11px;font-weight:900;display:grid}.teacher-group-chip strong,.teacher-group-chip small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.teacher-group-chip strong{font-size:9px}.teacher-group-chip small{color:var(--ink-soft);margin-top:3px;font-size:7px}.teacher-group-chip.assigned{background:var(--green-pale);border-color:#82bfa6}.teacher-group-chip.assigned>span{border-color:var(--green);background:var(--green);color:#fff}.teacher-group-chip.assigned-other{background:#fffaf0;border-color:#e7d8ad}.teacher-group-chip.assigned-other>span{color:#7a5c00;background:#fff4cf;border-color:#dfc878}.teacher-groups-empty{color:var(--ink-soft);border:1px dashed #d7dfd8;border-radius:11px;align-items:center;gap:9px;margin-top:10px;padding:10px;display:flex}.teacher-groups-empty>span{background:var(--paper);border-radius:50%;place-items:center;width:26px;height:26px;display:grid}.teacher-groups-empty strong,.teacher-groups-empty small{display:block}.teacher-groups-empty strong{color:var(--ink);font-size:9px}.teacher-groups-empty small{margin-top:2px;font-size:7px}.mini-spinner{border:2px solid #10231f2e;border-top-color:var(--green);border-radius:50%;width:12px;height:12px;animation:.7s linear infinite spin}.wifi-settings-panel{margin-bottom:18px;overflow:hidden}.wifi-state{border:1px solid var(--line);color:var(--muted);letter-spacing:.08em;text-transform:uppercase;background:#f7f5ef;border-radius:999px;align-self:flex-start;padding:8px 12px;font-size:10px;font-weight:900}.wifi-state.enabled{color:var(--green-dark);background:#e2f4ec;border-color:#83c3aa}.wifi-settings-grid{grid-template-columns:minmax(250px,.7fr) minmax(420px,1.3fr);gap:16px;margin-top:20px;display:grid}.wifi-default-card,.wifi-network-card{border:1px solid var(--line);background:#fbfaf7;border-radius:18px;padding:20px}.wifi-default-card{flex-direction:column;justify-content:space-between;gap:24px;display:flex}.wifi-default-card>div,.wifi-network-card>div:first-child{gap:6px;display:grid}.wifi-default-card strong,.wifi-network-card strong{color:var(--ink);font-size:14px}.wifi-default-card span,.wifi-network-card span{color:var(--muted);font-size:12px;line-height:1.5}.wifi-toggle{width:100%;min-height:56px;color:var(--muted);background:#fff;border:1px solid #d9d5ca;border-radius:14px;justify-content:center;align-items:center;gap:10px;padding:9px 14px;font-weight:900;display:flex}.wifi-toggle i,.teacher-wifi-choice i{background:#d8d5cc;border-radius:999px;flex:none;width:36px;height:22px;transition:background .18s;position:relative}.wifi-toggle i:after,.teacher-wifi-choice i:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .18s;position:absolute;top:3px;left:3px;box-shadow:0 1px 4px #10231f33}.wifi-toggle.enabled{color:var(--green-dark);background:#e2f4ec;border-color:#83c3aa}.wifi-toggle.enabled i,.teacher-wifi-choice.enabled i{background:var(--green)}.wifi-toggle.enabled i:after,.teacher-wifi-choice.enabled i:after{transform:translate(14px)}.wifi-capture-actions{align-items:center;gap:12px;margin-top:18px;display:flex}.wifi-capture-actions small{color:var(--muted);font-size:10px;line-height:1.4}.wifi-manual-form{border-top:1px solid var(--line);grid-template-columns:minmax(150px,.65fr) minmax(230px,1.2fr) auto;align-items:end;gap:10px;margin-top:16px;padding-top:16px;display:grid}.wifi-manual-form label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;gap:6px;font-size:10px;font-weight:850;display:grid}.wifi-manual-form input{min-height:44px}.wifi-network-list{gap:8px;margin-top:16px;display:grid}.wifi-network-list>div{border:1px solid var(--line);background:#fff;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;min-height:54px;padding:10px 12px;display:flex}.wifi-network-list>div>span{gap:2px;display:grid}.wifi-network-list small{color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px}.wifi-network-list button{color:#8b3f34;background:#f8e8e4;border:0;border-radius:9px;padding:7px 10px;font-size:10px;font-weight:850}.wifi-network-empty{background:#f7f5ef!important;border-style:dashed!important;justify-content:flex-start!important;gap:3px!important;display:grid!important}.teacher-wifi-choice{text-align:left;width:100%;color:var(--ink);background:#f7f5ef;border:1px solid #d9d5ca;border-radius:14px;align-items:center;gap:12px;margin-top:16px;padding:13px 14px;display:flex}.teacher-wifi-choice>span{gap:2px;display:grid}.teacher-wifi-choice strong{font-size:12px}.teacher-wifi-choice small{color:var(--muted);font-size:10px;line-height:1.4}.teacher-wifi-choice.enabled{background:#e2f4ec;border-color:#83c3aa}.live-session-wifi{text-align:left;width:100%;color:var(--ink);background:#f7f5ef;border:1px solid #d9d5ca;border-radius:13px;justify-content:space-between;align-items:center;gap:12px;margin:14px 0 4px;padding:11px 13px;display:flex}.live-session-wifi>span{gap:2px;display:grid}.live-session-wifi strong{font-size:11px}.live-session-wifi small{color:var(--muted);font-size:9px}.live-session-wifi b{min-width:38px;color:var(--muted);text-align:center;background:#ddd9cf;border-radius:999px;padding:5px 8px;font-size:9px}.live-session-wifi.enabled{background:#e2f4ec;border-color:#83c3aa}.live-session-wifi.enabled b{background:var(--green);color:#fff}.live-wifi-button{text-align:left;width:100%;min-width:190px;color:var(--ink);background:#f7f5ef;border:1px solid #d9d5ca;border-radius:12px;gap:2px;margin-top:10px;padding:9px 11px;display:grid}.live-wifi-button span{font-size:10px;font-weight:900}.live-wifi-button small{color:var(--muted);font-size:8px}.live-wifi-button.enabled{color:var(--green-dark);background:#e2f4ec;border-color:#83c3aa}.pin-reset-form{border-top:1px solid #edf0ec;grid-template-columns:1fr auto;gap:7px;margin-top:15px;padding-top:13px;display:grid}.pin-reset-form input{padding:9px 11px;font-size:11px}.pin-reset-form .secondary-button{font-size:10px}.dashboard-grid{grid-template-columns:1.05fr .95fr;gap:18px;max-width:1280px;margin:0 auto;display:grid}.dashboard-live-grid{margin-bottom:18px}.admin-live-overview{max-width:1280px;margin:0 auto 18px;padding:24px}.admin-live-overview .panel-heading p{max-width:620px;color:var(--ink-soft);margin:7px 0 0;font-size:11px;line-height:1.5}.admin-active-session-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px;display:grid}.admin-active-session-list>article{background:#fafbf9;border:1px solid #e4e9e4;border-radius:15px;min-width:0;padding:15px}.active-session-identity{align-items:center;gap:10px;display:flex}.active-session-identity strong,.active-session-identity small{display:block}.active-session-identity strong{font-size:13px}.active-session-identity small{color:var(--ink-soft);margin-top:3px;font-size:9px}.active-session-metrics{grid-template-columns:repeat(4,1fr);gap:6px;margin-top:13px;display:grid}.active-session-metrics span{color:var(--ink-soft);background:#fff;border-radius:10px;padding:9px;font-size:8px}.active-session-metrics strong{color:var(--ink);margin-bottom:2px;font-size:15px;display:block}.active-session-metrics .present{background:var(--green-pale);color:var(--green-dark)}.active-session-metrics .late{color:#80570d;background:#fff1ce}.active-session-metrics .absent{color:#943c2c;background:#fff0ec}.admin-analytics-panel{max-width:1280px;margin:0 auto;padding:24px}.analytics-heading{justify-content:space-between;align-items:flex-end;gap:28px;display:flex}.analytics-heading h2{letter-spacing:-.035em;margin:5px 0 4px;font-size:24px}.analytics-heading p{color:var(--ink-soft);margin:0;font-size:11px;line-height:1.5}.dashboard-period-control{min-width:390px}.dashboard-period-control>span{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.09em;margin-bottom:7px;font-size:9px;font-weight:850;display:block}.dashboard-period-control .range-tabs{margin:0}.dashboard-custom-dates{grid-template-columns:repeat(2,1fr);gap:9px;width:min(100%,430px);margin:12px 0 0 auto;display:grid}.dashboard-custom-dates label{gap:6px;display:grid}.dashboard-loading{min-height:300px;color:var(--ink-soft);align-content:center;place-items:center;gap:10px;font-size:11px;display:grid}.dashboard-kpis{grid-template-columns:repeat(5,1fr);gap:9px;margin-top:20px;display:grid}.dashboard-kpis>div{background:#fafbf9;border:1px solid #e7ebe7;border-radius:15px;min-width:0;padding:16px}.dashboard-kpis span,.dashboard-kpis strong,.dashboard-kpis small{display:block}.dashboard-kpis span{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.08em;font-size:9px;font-weight:850}.dashboard-kpis strong{letter-spacing:-.045em;margin-top:7px;font-size:27px}.dashboard-kpis small{color:var(--ink-soft);margin-top:4px;font-size:9px}.dashboard-kpis .dashboard-rate-kpi{background:linear-gradient(145deg,#eef9f4,#fff);border-color:#acd5c5}.dashboard-analysis-grid{grid-template-columns:1.2fr .8fr;gap:12px;margin-top:12px;display:grid}.dashboard-card{background:#fff;border:1px solid #e6eae5;border-radius:17px;min-width:0;padding:18px}.dashboard-card-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.dashboard-card-heading h3,.data-readiness-card h3{letter-spacing:-.025em;margin:4px 0 0;font-size:16px}.dashboard-card-heading>span{background:var(--paper);color:var(--ink-soft);white-space:nowrap;border-radius:999px;padding:6px 8px;font-size:9px;font-weight:850}.dashboard-session-list,.dashboard-subject-list{max-height:390px;margin-top:12px;overflow-y:auto}.dashboard-session-list>button{width:100%;min-height:68px;color:var(--ink);text-align:left;background:0 0;border:0;border-top:1px solid #edf0ec;grid-template-columns:58px minmax(130px,1fr) auto 42px 74px;align-items:center;gap:11px;padding:9px 3px;display:grid}.dashboard-session-list>button:hover{background:#fafbf9}.dashboard-session-list strong,.dashboard-session-list small{display:block}.dashboard-session-list strong{font-size:11px}.dashboard-session-list small{color:var(--ink-soft);margin-top:3px;font-size:9px}.dashboard-session-list b{font-size:11px}.dashboard-session-list em{color:var(--green-dark);text-align:right;font-size:9px;font-style:normal;font-weight:850}.session-status-strip{gap:4px;display:flex}.session-status-strip i{text-align:center;border-radius:7px;min-width:27px;padding:5px 6px;font-size:8px;font-style:normal;font-weight:850}.session-status-strip .present{background:var(--green-pale);color:var(--green-dark)}.session-status-strip .late{color:#80570d;background:#fff1ce}.session-status-strip .absent{color:#943c2c;background:#fff0ec}.session-status-strip .excused{color:#4b5792;background:#eef0ff}.dashboard-subject-list>div{border-top:1px solid #edf0ec;grid-template-columns:minmax(110px,1fr) minmax(70px,.8fr) 40px;align-items:center;gap:10px;min-height:60px;padding:9px 2px;display:grid}.dashboard-subject-list strong,.dashboard-subject-list small{display:block}.dashboard-subject-list strong{font-size:11px}.dashboard-subject-list small{color:var(--ink-soft);margin-top:3px;font-size:8px}.dashboard-subject-list>div>span{background:#e8ede9;border-radius:999px;height:7px;overflow:hidden}.dashboard-subject-list>div>span i{border-radius:inherit;background:linear-gradient(90deg, #e2a33a, var(--green));height:100%;display:block}.dashboard-subject-list b{text-align:right;font-size:11px}.dashboard-followup-card{margin-top:12px}.followup-heading{align-items:flex-end}.followup-heading p{color:var(--ink-soft);margin:5px 0 0;font-size:10px}.followup-controls{gap:7px;display:flex}.followup-controls label{gap:5px;font-size:8px;display:grid}.followup-controls select{min-width:94px;padding:8px 27px 8px 9px;font-size:10px}.followup-table{margin-top:13px;overflow-x:auto}.followup-head,.followup-row{grid-template-columns:minmax(180px,1.25fr) minmax(125px,.9fr) repeat(6,62px) 78px;align-items:center;gap:10px;min-width:980px;display:grid}.followup-head{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.07em;padding:0 7px 8px;font-size:8px;font-weight:850}.followup-row{border-top:1px solid #edf0ec;min-height:62px;padding:9px 7px;font-size:10px}.followup-row strong,.followup-row small{display:block}.followup-row strong{font-size:10px}.followup-row small{color:var(--ink-soft);margin-top:3px;font-size:8px}.followup-row b{color:#a24735;font-size:11px}.followup-row .history-button{padding:7px;font-size:8px}.dashboard-empty{min-height:145px;color:var(--ink-soft);text-align:left;justify-content:center;align-items:center;gap:12px;display:flex}.dashboard-empty.compact{border:0;grid-template-columns:none}.dashboard-empty>span{background:var(--paper);width:42px;height:42px;color:var(--green);border-radius:13px;flex:none;place-items:center;font-size:18px;display:grid}.dashboard-empty strong,.dashboard-empty small{display:block}.dashboard-empty strong{color:var(--ink);font-size:11px}.dashboard-empty small{max-width:330px;margin-top:4px;font-size:9px;line-height:1.45}.data-readiness-card{grid-template-columns:minmax(210px,.75fr) 1.25fr;align-items:center;gap:20px;margin-top:12px;display:grid}.readiness-grid{grid-template-columns:repeat(4,1fr);gap:7px;display:grid}.readiness-grid button{min-width:0;color:var(--ink);text-align:left;background:#fafbf9;border:1px solid #e6eae5;border-radius:12px;padding:12px}.readiness-grid strong,.readiness-grid span,.readiness-grid small{display:block}.readiness-grid strong{letter-spacing:-.03em;font-size:20px}.readiness-grid span{margin-top:3px;font-size:9px;font-weight:800}.readiness-grid small{color:var(--green-dark);margin-top:3px;font-size:8px}.panel{background:#fff;border:1px solid #10231f17;border-radius:20px;box-shadow:0 8px 24px #10231f0a}.session-panel,.attendees-panel{min-height:515px;padding:24px}.panel-heading{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.panel-heading h2{letter-spacing:-.035em;margin:5px 0 0;font-size:23px}.section-kicker{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.12em;font-size:10px;font-weight:850}.active-qr{border:1px solid var(--line);border-radius:18px;width:fit-content;margin:28px auto 14px;padding:12px}.qr-image{border-radius:8px;max-width:100%;height:auto;display:block}.qr-placeholder{background:var(--paper);border-radius:12px;width:250px;height:250px}.scan-instruction{text-align:center;color:var(--ink-soft);font-size:13px}.session-actions{justify-content:center;gap:9px;margin-top:18px;display:flex}.secondary-button,.danger-button{border-radius:10px;padding:10px 13px}.secondary-button{background:var(--paper);color:var(--ink)}.danger-button{color:#9d3d2b;background:#fff0ec}.start-form{gap:11px;max-width:430px;margin:48px auto 0;display:grid}.start-form>p{text-align:center;max-width:320px;color:var(--ink-soft);margin:0 auto 18px;line-height:1.5}.empty-illustration{background:var(--green-pale);width:76px;height:76px;color:var(--green);border-radius:24px;place-items:center;margin:0 auto;display:grid}.empty-illustration span{font-size:38px;font-weight:300}.count-pill{background:var(--green-pale);min-width:34px;height:34px;color:var(--green-dark);border-radius:999px;place-items:center;font-weight:900;display:grid}.live-counts{gap:8px;margin:18px 0 -5px;display:flex}.live-counts span{background:var(--paper);color:var(--ink-soft);border-radius:12px;flex:1;padding:10px 12px;font-size:11px}.live-counts strong{color:var(--ink);font-size:15px}.attendee-list{max-height:410px;margin-top:22px;overflow:auto}.attendee-row{border-bottom:1px solid #edf0ec;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;padding:12px 4px;display:grid}.avatar{background:var(--paper);width:40px;height:40px;color:var(--green-dark);border-radius:13px;place-items:center;font-weight:900;display:grid}.attendee-row strong,.attendee-row small{display:block}.attendee-row strong{font-size:13px}.attendee-row small{color:var(--ink-soft);margin-top:3px;font-size:11px}.attendee-row time{color:var(--ink-soft);font-size:11px}.empty-list{text-align:center;height:350px;color:var(--ink-soft);align-content:center;place-items:center;display:grid}.empty-list span{background:var(--paper);width:54px;height:54px;color:var(--green);border-radius:18px;place-items:center;font-size:24px;display:grid}.empty-list p{max-width:220px;font-size:13px;line-height:1.5}.students-panel{max-width:1280px;margin:18px auto 0;padding:24px}.student-entry-layout{grid-template-columns:1.45fr .55fr;gap:14px;margin-top:20px;display:grid}.student-intake-form,.bulk-import-card{background:#fff;border:1px solid #e5e9e3;border-radius:17px;padding:17px}.entry-heading{justify-content:space-between;align-items:end;gap:18px;display:flex}.entry-heading h3,.bulk-import-card h3{margin:5px 0 0;font-size:18px}.entry-heading p{color:var(--ink-soft);margin:0;font-size:10px}.student-intake-grid{grid-template-columns:repeat(4,1fr);gap:9px;margin-top:15px;display:grid}.student-intake-grid label,.edit-student-grid label{gap:6px;display:grid}.student-intake-grid input,.student-intake-grid select{min-width:0;padding:10px 11px;font-size:11px}.student-intake-grid .wide-field{grid-column:span 2}.elective-picker{margin-top:13px}.elective-picker>span{color:var(--ink-soft);font-size:10px;font-weight:800}.elective-picker>div{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.elective-picker label{border:1px solid var(--line);color:var(--ink-soft);text-transform:none;letter-spacing:0;cursor:pointer;border-radius:999px;padding:7px 9px;font-size:9px}.elective-picker label.selected{background:var(--green-pale);color:var(--green-dark);border-color:#b9d9cb}.elective-picker input{opacity:0;pointer-events:none;position:absolute}.intake-submit{min-height:44px;margin-top:15px;padding:0 18px}.bulk-import-card{background:var(--paper)}.bulk-import-card>p{color:var(--ink-soft);margin:9px 0 17px;font-size:11px;line-height:1.55}.import-actions{flex-wrap:wrap;gap:7px;display:flex}.upload-button{background:var(--ink);color:#fff;text-transform:none;letter-spacing:0;border-radius:10px;justify-content:center;align-items:center;padding:10px 13px;font-size:10px;display:inline-flex}.upload-button input{opacity:0;width:1px;height:1px;position:absolute}.import-empty{min-height:110px;color:var(--ink-soft);text-align:center;border:1px dashed #cbd2ca;border-radius:13px;place-items:center;margin-top:14px;padding:14px;font-size:10px;display:grid}.import-preview{background:#fff;border-radius:13px;gap:6px;margin-top:14px;padding:12px;display:grid}.import-preview strong,.import-preview span{display:block}.import-preview strong{font-size:11px}.import-preview span,.import-preview small,.import-preview em{color:var(--ink-soft);font-size:9px}.import-preview>div{gap:3px;margin:4px 0;display:grid}.import-preview .primary-button{min-height:39px;margin-top:5px}.student-form{background:var(--paper);border-radius:15px;grid-template-columns:.7fr 1fr 1.15fr auto;gap:10px;margin-top:20px;padding:14px;display:grid}.student-form .primary-button{padding:0 20px}.student-table{margin-top:22px}.student-table-head,.student-table-row{grid-template-columns:1.1fr 1.35fr .65fr .9fr;align-items:center;gap:16px;display:grid}.student-table-head.expanded,.student-table-row.expanded{grid-template-columns:1.15fr 1.25fr 1fr .55fr 1.15fr}.student-table-head{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.11em;padding:0 12px 9px;font-size:10px;font-weight:850}.student-table-row{border-top:1px solid #edf0ec;min-height:66px;padding:10px 12px}.student-table-row.inactive{opacity:.62;background:#fafafa}.student-table-row strong,.student-table-row small{display:block}.student-table-row strong{font-size:13px}.student-table-row small{color:var(--ink-soft);margin-top:4px;font-size:11px}.email-edit-form{grid-template-columns:1fr auto;gap:6px;display:grid}.email-edit-form input{min-width:0;padding:9px 10px;font-size:11px}.email-save-button{background:var(--green-pale);color:var(--green-dark);border:0;border-radius:9px;padding:8px 9px;font-size:10px;font-weight:850}.email-save-button:disabled{opacity:.38;cursor:default}.status{border-radius:999px;width:fit-content;padding:6px 9px;font-size:10px;font-weight:850}.status.registered{color:var(--green-dark);background:var(--green-pale)}.status.waiting{color:#7b6530;background:#f8efd8}.status.archived{color:#5e6260;background:#eceeed}.placement-cell strong,.placement-cell small{display:block}.placement-cell strong{font-size:11px}.placement-cell small{color:var(--ink-soft);margin-top:4px;font-size:9px}.student-email-cell{color:var(--ink-soft);text-overflow:ellipsis;font-size:10px;overflow:hidden}.row-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.edit-profile-button{border:1px solid var(--line);color:var(--ink-soft);background:#fff;border-radius:9px;padding:8px 10px;font-size:10px;font-weight:850}.text-button{color:var(--green-dark);font-size:12px}.reset-button{color:var(--ink-soft);padding:6px 8px;font-size:11px}.replace-button{background:var(--paper);border-radius:9px;padding:8px 10px}.table-empty{text-align:center;color:var(--ink-soft);border-top:1px solid #edf0ec;padding:34px;font-size:13px}.history-panel{max-width:1280px;margin:18px auto 0;padding:24px}.history-list{margin-top:20px}.history-row{border-top:1px solid #edf0ec;grid-template-columns:64px 1fr 92px 92px auto;align-items:center;gap:16px;min-height:76px;padding:12px;display:grid}.history-row.extended{grid-template-columns:64px minmax(180px,1fr) repeat(4,74px) auto;gap:12px}.history-date{background:var(--paper);border-radius:14px;align-content:center;place-items:center;width:54px;height:52px;display:grid}.history-date strong,.history-date small,.history-name strong,.history-name small{display:block}.history-date strong{font-size:13px}.history-date small,.history-name small{color:var(--ink-soft);margin-top:3px;font-size:10px}.history-name strong{font-size:14px}.history-count{color:var(--ink-soft);font-size:11px}.history-count strong{color:var(--ink);font-size:17px}.history-count.absent-count strong{color:#a24735}.history-count.late-count strong{color:#9b6b10}.history-count.excused-count strong{color:#4e5ea7}.history-button{border:1px solid var(--line);color:var(--green-dark);background:#fff;border-radius:10px;padding:9px 12px;font-size:11px;font-weight:800}.history-button:hover{background:var(--green-pale);border-color:#b9d9cb}.history-empty{text-align:center;color:var(--ink-soft);border-top:1px solid #edf0ec;place-items:center;padding:42px 20px;display:grid}.history-empty span{background:var(--paper);width:52px;height:52px;color:var(--green);border-radius:16px;place-items:center;font-size:22px;display:grid}.history-empty p{margin:12px 0 0;font-size:13px}.reports-panel{max-width:1280px;margin:18px auto 0;padding:24px}.report-controls{background:var(--paper);border-radius:16px;grid-template-columns:minmax(230px,.7fr) 1.3fr;align-items:end;gap:18px;margin-top:22px;padding:14px;display:grid}.report-controls>div{gap:8px;display:grid}.range-tabs{gap:6px;display:flex}.range-tabs button{border:1px solid var(--line);min-height:44px;color:var(--ink-soft);background:#fff;border-radius:11px;flex:1;padding:8px 12px;font-size:12px;font-weight:800}.range-tabs button.active{border-color:var(--ink);background:var(--ink);color:#fff}.report-metrics{grid-template-columns:repeat(4,1fr);gap:10px;margin-top:18px;display:grid}.report-metrics.five{grid-template-columns:repeat(5,1fr)}.report-metrics.six{grid-template-columns:repeat(6,1fr)}.report-metrics.seven{grid-template-columns:repeat(7,1fr)}.report-metrics div{background:#fff;border:1px solid #edf0ec;border-radius:15px;padding:16px}.report-metrics span,.report-metrics strong{display:block}.report-metrics span{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:800}.report-metrics strong{letter-spacing:-.04em;margin-top:7px;font-size:24px}.report-grid{grid-template-columns:.85fr 1.15fr;gap:22px;margin-top:24px;display:grid}.report-grid h3{margin:0 0 12px;font-size:14px}.daily-row{border-top:1px solid #edf0ec;grid-template-columns:1fr auto auto;align-items:center;gap:12px;min-height:60px;padding:10px 4px;display:grid}.daily-row strong,.daily-row small{display:block}.daily-row strong{font-size:12px}.daily-row small{color:var(--ink-soft);margin-top:3px;font-size:10px}.report-present,.report-late,.report-absent,.report-excused{white-space:nowrap;border-radius:999px;padding:6px 8px;font-size:10px;font-weight:800}.report-present{color:var(--green-dark);background:var(--green-pale)}.report-late{color:#80570d;background:#fff1ce}.report-absent{color:#943c2c;background:#fff0ec}.report-excused{color:#4e5ea7;background:#eef0ff}.daily-row.extended{grid-template-columns:1fr repeat(2,auto)}.daily-row.extended .report-excused{grid-column:3}.report-table-head,.report-table-row{grid-template-columns:1fr 58px 58px 58px;align-items:center;gap:10px;display:grid}.report-table-head.extended,.report-table-row.extended{grid-template-columns:minmax(150px,1fr) repeat(5,50px)}.report-table-head.extended.weighted,.report-table-row.extended.weighted{grid-template-columns:minmax(150px,1fr) repeat(6,54px);min-width:620px}.report-table-head{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.08em;padding:0 4px 9px;font-size:9px;font-weight:800}.report-table-row{border-top:1px solid #edf0ec;min-height:60px;padding:9px 4px;font-size:12px}.report-table-row strong,.report-table-row small{display:block}.report-table-row small{color:var(--ink-soft);margin-top:3px;font-size:10px}.report-absent-number{color:#a24735;font-weight:800}.report-late-number{color:#80570d;font-weight:800}.report-excused-number{color:#4e5ea7;font-weight:800}.report-state{text-align:center;min-height:240px;color:var(--ink-soft);align-content:center;place-items:center;gap:10px;display:grid}.report-state>span{background:var(--paper);width:52px;height:52px;color:var(--green);border-radius:16px;place-items:center;font-size:22px;display:grid}.report-state p{margin:0;font-size:13px}.report-policy-note{color:#745716;background:#fff8e8;border-radius:11px;margin:12px 0 0;padding:10px 12px;font-size:11px;line-height:1.5}.report-history-note{color:var(--ink-soft);background:#f6faf8;border:1px solid #d9e4e0;border-radius:11px;margin:12px 0 0;padding:10px 12px;font-size:11px;line-height:1.5}.report-heading{gap:18px}.report-actions{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.report-actions small{width:100%;color:var(--ink-soft);text-align:right;font-size:9px}.report-actions .secondary-button{padding:9px 11px}.report-controls-expanded{grid-template-columns:minmax(210px,.65fr) minmax(210px,.65fr) 1.25fr}.report-filter-grid{background:var(--paper);border-radius:17px;grid-template-columns:repeat(3,minmax(170px,1fr));gap:12px;margin-top:22px;padding:15px;display:grid}.report-filter-grid label,.report-filter-grid>div{color:var(--ink);align-content:end;gap:7px;font-size:11px;font-weight:800;display:grid}.report-primary-toolbar{background:#fafbf9;border:1px solid #e5e9e3;border-radius:17px;grid-template-columns:minmax(230px,1.2fr) minmax(210px,.9fr) minmax(190px,.8fr) auto auto;align-items:end;gap:10px;margin-top:22px;padding:13px;display:grid}.report-primary-toolbar label,.teacher-report-toolbar label{color:var(--ink);gap:7px;font-size:10px;font-weight:850;display:grid}.filter-toggle,.clear-workspace-button{white-space:nowrap;border-radius:11px;min-height:45px;padding:0 14px;font-size:11px;font-weight:850}.filter-toggle{border:1px solid var(--line);color:var(--ink);background:#fff;justify-content:center;align-items:center;gap:7px;display:flex}.filter-toggle.active{background:var(--green-pale);color:var(--green-dark);border-color:#9fcbb9}.filter-toggle span{background:var(--ink);color:#fff;border-radius:999px;place-items:center;min-width:20px;height:20px;font-size:9px;display:grid}.clear-workspace-button{color:var(--green-dark);background:0 0;border:0}.report-advanced-filters{background:var(--paper);border:1px solid #e5e9e3;margin-top:10px}.custom-date-range{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:8px;display:grid}.custom-date-range label{color:var(--ink);gap:7px;font-size:11px;font-weight:800;display:grid}.filter-actions{justify-content:flex-end;align-items:end;display:flex!important}.filter-actions .text-button{min-height:44px}.filter-error{color:#a12d2d;margin:10px 0 0;font-size:13px;font-weight:750}.filter-label{color:var(--ink);font-size:11px;font-weight:800}.report-kpis{grid-template-columns:repeat(6,1fr)}.report-kpis.compact{grid-template-columns:repeat(4,1fr)}.report-kpis div{min-height:108px;position:relative;overflow:hidden}.report-kpis div:after{content:"";background:var(--green-pale);border-radius:50%;width:46px;height:46px;position:absolute;bottom:-20px;right:-18px}.report-kpis .metric-rate{background:linear-gradient(145deg,#f3fbf7,#fff);border-color:#a9d6c4}.report-kpis small{color:var(--ink-soft);margin-top:7px;font-size:9px;display:block}.report-insights-grid{grid-template-columns:1.2fr .8fr;gap:16px;margin-top:18px;display:grid}.report-insight-card,.report-student-section{background:#fff;border:1px solid #e7ebe8;border-radius:18px;padding:18px}.report-student-section{margin-top:18px;overflow:hidden}.insight-heading{justify-content:space-between;align-items:center;gap:14px;display:flex}.insight-heading h3{margin:3px 0 0;font-size:16px}.insight-heading>span{color:var(--ink-soft);font-size:10px;font-weight:800}.insight-heading select{width:auto;min-width:120px;padding:8px 28px 8px 9px;font-size:10px}.trend-list{max-height:330px;margin-top:12px;overflow-y:auto}.trend-row,.subject-comparison-list>button{text-align:left;background:0 0;border:0;border-top:1px solid #edf0ec;grid-template-columns:86px minmax(100px,1fr) 42px;align-items:center;gap:12px;width:100%;padding:12px 3px;display:grid}.trend-row:hover,.subject-comparison-list>button:hover{background:#f9fbfa}.trend-row strong,.trend-row small,.subject-comparison-list strong,.subject-comparison-list small{display:block}.trend-row strong{font-size:11px}.trend-row small,.subject-comparison-list small{color:var(--ink-soft);margin-top:3px;font-size:9px}.trend-track{background:#edf0ee;border-radius:999px;height:8px;overflow:hidden}.trend-track i{border-radius:inherit;background:linear-gradient(90deg, #e0a124, var(--green));height:100%;display:block}.risk-list{max-height:330px;margin-top:12px;overflow-y:auto}.risk-list>button{text-align:left;background:0 0;border:0;border-top:1px solid #edf0ec;grid-template-columns:36px 1fr auto;align-items:center;gap:10px;width:100%;padding:9px 2px;display:grid}.risk-list>button:hover{background:#fffaf7}.risk-list .avatar{width:34px;height:34px}.risk-list strong,.risk-list small{display:block}.risk-list strong{font-size:11px}.risk-list small{color:var(--ink-soft);margin-top:3px;font-size:9px}.risk-list b{color:#a24735;font-size:12px}.risk-empty{min-height:150px;color:var(--ink-soft);text-align:center;place-items:center;padding:18px;font-size:11px;display:grid}.teacher-report-head.dashboard-table,.teacher-report-row.dashboard-table{grid-template-columns:minmax(180px,1fr) repeat(6,62px) 62px;min-width:780px}.teacher-report-row.dashboard-table.at-risk{background:linear-gradient(90deg,#0000,#fff0ec9e)}.teacher-report-row.dashboard-table .history-button{padding:7px 8px}.report-result-card{background:#fff;border:1px solid #e5e9e3;border-radius:18px;margin-top:16px;padding:18px}.report-result-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px;display:flex}.report-result-heading h3{letter-spacing:-.025em;margin:3px 0 0;font-size:17px}.report-result-heading>span{background:var(--paper);color:var(--ink-soft);white-space:nowrap;border-radius:999px;padding:6px 9px;font-size:9px;font-weight:850}.report-record-table,.report-group-table{overflow-x:auto}.report-record-head,.report-record-row{grid-template-columns:120px minmax(180px,1.1fr) minmax(170px,1fr) minmax(160px,.9fr) 140px;align-items:center;gap:14px;min-width:930px;display:grid}.report-record-head,.report-group-head{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.08em;padding:0 8px 9px;font-size:9px;font-weight:850}.report-record-row{border-top:1px solid #edf0ec;min-height:66px;padding:10px 8px}.report-status-action{justify-items:start;gap:5px;display:grid}.report-record-row strong,.report-record-row small,.report-group-row strong,.report-group-row small,.report-session-row strong,.report-session-row small{display:block}.report-record-row strong,.report-group-row strong,.report-session-row strong{font-size:11px}.report-record-row small,.report-group-row small,.report-session-row small{color:var(--ink-soft);margin-top:3px;font-size:9px}.report-group-head,.report-group-row{grid-template-columns:minmax(190px,1fr) repeat(6,70px);align-items:center;gap:12px;min-width:720px;display:grid}.report-group-row{border-top:1px solid #edf0ec;min-height:62px;padding:9px 8px;font-size:11px}.report-session-list{overflow-x:auto}.report-session-row{border-top:1px solid #edf0ec;grid-template-columns:62px minmax(180px,1fr) repeat(3,auto) 50px auto;align-items:center;gap:12px;min-width:820px;min-height:72px;padding:10px 4px;display:grid}.teacher-today-history{max-width:1280px;margin:18px auto 0;padding:24px}.today-stat-strip{grid-template-columns:repeat(5,1fr);gap:8px;margin-top:18px;display:grid}.today-stat-strip>div{background:#fafbf9;border:1px solid #e7ebe8;border-radius:13px;padding:13px 14px}.today-stat-strip strong,.today-stat-strip span{display:block}.today-stat-strip strong{letter-spacing:-.035em;font-size:20px}.today-stat-strip span{color:var(--ink-soft);text-transform:uppercase;margin-top:3px;font-size:9px;font-weight:800}.today-history-list{margin-top:10px}.today-empty{min-height:110px;color:var(--ink-soft);border-top:1px solid #edf0ec;justify-content:center;align-items:center;gap:13px;padding:20px;display:flex}.today-empty>span{background:var(--paper);width:42px;height:42px;color:var(--green);border-radius:13px;place-items:center;font-size:20px;display:grid}.today-empty strong,.today-empty small{display:block}.today-empty strong{color:var(--ink);font-size:12px}.today-empty small{margin-top:4px;font-size:10px}.teacher-report-workspace{margin-top:0}.teacher-reports-panel,.teacher-history-panel{display:none}.teacher-report-toolbar{background:#fafbf9;border:1px solid #e5e9e3;border-radius:17px;grid-template-columns:1fr 1.2fr .8fr auto;align-items:end;gap:10px;margin-top:22px;padding:13px;display:grid}.teacher-custom-dates{grid-template-columns:repeat(2,1fr);gap:9px;width:min(100%,460px);margin:10px 0 0 auto;display:grid}.teacher-custom-dates label{gap:6px;display:grid}.report-view-tabs{background:var(--paper);border-radius:13px;gap:6px;margin-top:12px;padding:5px;display:flex}.report-view-tabs button{min-height:40px;color:var(--ink-soft);background:0 0;border:0;border-radius:9px;flex:1;padding:8px 12px;font-size:11px;font-weight:850}.report-view-tabs button.active{color:var(--ink);background:#fff;box-shadow:0 3px 11px #10231f14}.teacher-report-summary-grid{grid-template-columns:.8fr 1.2fr;gap:14px;display:grid}.status-total-grid{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.status-total-grid>div{background:var(--paper);border-radius:13px;padding:15px}.status-total-grid strong,.status-total-grid span{display:block}.status-total-grid strong{font-size:23px}.status-total-grid span{color:var(--ink-soft);text-transform:uppercase;margin-top:3px;font-size:9px;font-weight:800}.compact-session-list>button{text-align:left;background:0 0;border:0;border-top:1px solid #edf0ec;grid-template-columns:1fr auto;align-items:center;gap:12px;width:100%;padding:10px 3px;display:grid}.compact-session-list>button:hover{background:#f9fbfa}.compact-session-list strong,.compact-session-list small{display:block}.compact-session-list strong{font-size:11px}.compact-session-list small{color:var(--ink-soft);margin-top:3px;font-size:9px}.compact-session-list>button>span{color:var(--green-dark);font-size:12px;font-weight:850}.report-comparison-panel{max-width:1280px;margin:18px auto 0;padding:24px}.subject-comparison-list{margin-top:16px}.subject-comparison-list>button{grid-template-columns:minmax(190px,.8fr) minmax(120px,1.2fr) 48px}.subject-comparison-list b{text-align:right;font-size:12px}.student-history-modal{width:min(100%,700px)}.student-history-summary{grid-template-columns:repeat(4,1fr);gap:8px;margin:18px 0;display:grid}.student-history-summary>div{background:var(--paper);border:1px solid #e7ebe8;border-radius:13px;padding:12px 8px}.student-history-summary strong,.student-history-summary span{display:block}.student-history-summary strong{font-size:20px}.student-history-summary span{color:var(--ink-soft);text-transform:uppercase;margin-top:4px;font-size:9px;font-weight:800}.student-history-list{text-align:left;max-height:370px;overflow-y:auto}.student-history-list>div{border-top:1px solid #edf0ec;grid-template-columns:1fr auto auto 50px;align-items:center;gap:9px;min-height:58px;padding:9px 3px;display:grid}.student-history-list strong,.student-history-list small{display:block}.student-history-list strong{font-size:11px}.student-history-list small{color:var(--ink-soft);margin-top:3px;font-size:9px}.student-history-list time{color:var(--ink-soft);font-size:10px}.class-complete-card{background:linear-gradient(135deg,#effaf5,#fff 65%);border-color:#b9d9cb;grid-template-columns:52px minmax(190px,1fr) minmax(340px,auto) auto;align-items:center;gap:18px;max-width:1280px;margin:0 auto 18px;padding:20px 22px;display:grid}.class-complete-card.just-closed{box-shadow:0 15px 36px #1d8f681f}.complete-icon{background:var(--green);color:#fff;border-radius:15px;place-items:center;width:46px;height:46px;font-size:24px;font-weight:900;display:grid}.complete-heading h2{margin:4px 0 0;font-size:18px}.complete-heading p{color:var(--ink-soft);margin:4px 0 0;font-size:10px}.complete-stats{grid-template-columns:repeat(4,minmax(58px,1fr));display:grid}.complete-stats>div{text-align:center;border-left:1px solid var(--line);padding:4px 13px}.complete-stats strong,.complete-stats span{display:block}.complete-stats strong{font-size:21px}.complete-stats span{color:var(--ink-soft);text-transform:uppercase;margin-top:3px;font-size:9px;font-weight:800}.complete-actions{gap:7px;display:flex}.complete-actions button{white-space:nowrap}.modal-backdrop{z-index:20;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#071411b8;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-card{text-align:center;background:#fff;border-radius:25px;width:min(100%,410px);padding:34px;position:relative;box-shadow:0 32px 90px #00000047}.modal-card h2{letter-spacing:-.04em;margin:16px 0 4px;font-size:27px}.modal-card>p{color:var(--ink-soft);margin:0 0 20px}.modal-card .qr-image{margin:0 auto 18px}.modal-instruction,.modal-card>small{display:block}.modal-instruction{font-size:14px}.modal-card>small{color:var(--ink-soft);margin-top:5px}.modal-close{background:var(--paper);border:0;border-radius:50%;width:34px;height:34px;font-size:21px;position:absolute;top:13px;right:14px}.edit-modal{text-align:left;gap:12px;width:min(100%,520px);display:grid}.edit-modal h2{margin-bottom:4px}.edit-modal>label{gap:6px;display:grid}.student-edit-modal{width:min(100%,860px);max-height:min(92vh,940px);overflow-y:auto}.student-subject-profile{text-align:left;background:#fafbf9;border:1px solid #e4e9e2;border-radius:14px;margin-top:16px;padding:14px}.student-subject-profile h3{margin:4px 0 0;font-size:16px}.student-subject-profile>div>p{color:var(--ink-soft);margin:5px 0 0;font-size:9px;line-height:1.5}.student-subject-profile-list{grid-template-columns:repeat(2,1fr);gap:7px;margin-top:12px;display:grid}.student-subject-profile-row{opacity:.72;background:#fff;border:1px solid #e7eae6;border-radius:11px;grid-template-columns:1fr minmax(135px,.75fr);align-items:center;gap:8px;padding:9px;display:grid}.student-subject-profile-row.assigned{opacity:1;border-color:#b9d9cb}.student-subject-profile-row>label{color:var(--ink);text-transform:none;letter-spacing:0;align-items:center;gap:8px;font-size:10px;display:flex}.student-subject-profile-row strong,.student-subject-profile-row small{display:block}.student-subject-profile-row strong{font-size:10px}.student-subject-profile-row small{color:var(--ink-soft);margin-top:2px;font-size:8px}.student-subject-profile-row select{min-width:0;padding:8px 28px 8px 9px;font-size:9px}.edit-student-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.edit-student-grid .wide-field{grid-column:1/-1}.modal-check{background:var(--paper);text-transform:none;letter-spacing:0;border-radius:12px;grid-template-columns:20px 1fr;align-items:center;padding:12px;gap:10px!important;display:flex!important}.modal-check input{width:18px;height:18px;padding:0}.modal-check span{gap:3px;display:grid}.modal-check strong{font-size:11px}.modal-check small{color:var(--ink-soft);font-size:9px;font-weight:500}.register-modal{text-align:left;width:min(100%,620px)}.register-modal>p{margin-bottom:22px}.register-toolbar{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:50px;padding:8px 0 12px;display:flex}.register-toolbar>div{align-items:center;gap:12px;display:flex}.register-toolbar strong{font-size:13px}.register-toolbar span{color:#a24735;font-size:12px;font-weight:800}.register-toolbar .late-summary{color:#80570d}.register-toolbar .excused-summary{color:#4e5ea7}.register-list{border-top:1px solid #edf0ec;max-height:340px;overflow:auto}.register-row{border-bottom:1px solid #edf0ec;grid-template-columns:42px 1fr auto 42px;align-items:center;gap:12px;padding:11px 2px;display:grid}.register-row.editable{grid-template-columns:42px minmax(150px,1fr) auto auto 42px}.register-row strong,.register-row small{display:block}.register-row strong{font-size:13px}.register-row small{color:var(--ink-soft);margin-top:3px;font-size:11px}.register-row time{color:var(--ink-soft);font-size:11px}.register-status{border-radius:999px;padding:6px 8px;font-size:10px;font-weight:850}.register-status.present{color:var(--green-dark);background:var(--green-pale)}.register-status.absent{color:#943c2c;background:#fff0ec}.register-status.late{color:#80570d;background:#fff1ce}.register-status.excused{color:#4e5ea7;background:#eef0ff}.excused-button{color:#4e5ea7;background:#fff;border:1px solid #cdd2f0;border-radius:9px;padding:7px 9px;font-size:10px;font-weight:850}.excused-button.active{background:#eef0ff}.register-loading{min-height:220px;color:var(--ink-soft);align-content:center;place-items:center;gap:12px;font-size:12px;display:grid}.register-empty{text-align:center;color:var(--ink-soft);padding:52px 16px;font-size:13px}.teacher-login-shell{background:radial-gradient(circle at 85% 15%, #f47f6521, transparent 28%), var(--paper)}.teacher-login-mark,.teacher-brand-mark{background:var(--green-dark)}.teacher-intro{padding-bottom:30px}.teacher-empty-access{text-align:center;max-width:760px;margin:20px auto;padding:54px 30px}.teacher-empty-access>span{color:#9d3d2b;background:#fff0ec;border-radius:18px;place-items:center;width:58px;height:58px;margin:0 auto;font-size:25px;font-weight:900;display:grid}.teacher-empty-access h2{margin:18px 0 7px}.teacher-empty-access p{color:var(--ink-soft);margin:0}.teacher-start-grid,.teacher-live-grid{grid-template-columns:.75fr 1.25fr;gap:18px;max-width:1280px;margin:0 auto;display:grid}.teacher-start-panel,.teacher-roster-panel,.teacher-qr-panel,.teacher-live-roster{min-height:500px;padding:24px}.teacher-start-panel{flex-direction:column;display:flex}.teacher-start-panel h2{letter-spacing:-.04em;margin:6px 0 8px;font-size:28px}.teacher-start-panel>p{color:var(--ink-soft);margin:0 0 34px;line-height:1.6}.teacher-start-panel label{margin-bottom:8px}.automatic-session-note{color:#24584a;background:#edf8f4;border:1px solid #cfe4dc;border-radius:12px;gap:4px;margin:16px 0 4px;padding:13px 15px;display:grid}.automatic-session-note strong{font-size:12px}.automatic-session-note span{font-size:10px;line-height:1.5}.teacher-subject-summary{background:var(--paper);border-radius:14px;margin:12px 0 18px;padding:17px}.teacher-subject-summary strong,.teacher-subject-summary span{display:block}.teacher-subject-summary strong{font-size:25px}.teacher-subject-summary span{color:var(--ink-soft);margin-top:3px;font-size:11px}.deletion-enabled{grid-template-columns:minmax(170px,1fr) repeat(3,auto) auto auto auto!important}.request-delete-button{color:#9a3828;background:#fff7f4;border:1px solid #e5b8ae;border-radius:9px;padding:8px 10px;font-size:9px;font-weight:850}.deletion-status{text-transform:capitalize;border-radius:999px;align-items:center;width:max-content;padding:6px 9px;font-size:9px;font-weight:850;display:inline-flex}.deletion-status.pending{color:#8a5a00;background:#fff0cf}.deletion-status.approved{color:#21663a;background:#e2f4e8}.deletion-status.rejected{color:#7d463d;background:#f2e9e7}.deletion-request-modal textarea{resize:vertical;width:100%}.approval-flow-note{color:#6f4d0f;background:#fff7e5;border-radius:12px;gap:4px;margin:14px 0;padding:13px;display:grid}.approval-flow-note strong{font-size:11px}.approval-flow-note span{font-size:10px;line-height:1.5}.deletion-approval-panel{margin-bottom:18px}.deletion-request-list{gap:10px;margin-top:14px;display:grid}.deletion-request-card{border:1px solid var(--line);background:#fff;border-radius:13px;grid-template-columns:minmax(240px,1fr) minmax(180px,.8fr) auto;align-items:center;gap:14px;padding:14px;display:grid}.deletion-request-card.pending{background:#fffdf8;border-color:#e6c57f}.deletion-request-main{align-items:center;gap:10px;display:flex}.deletion-request-main strong,.deletion-request-main small{display:block}.deletion-request-main small{color:var(--ink-soft);margin-top:4px;font-size:9px}.deletion-request-card p{color:var(--ink-soft);margin:0;font-size:10px;line-height:1.45}.deletion-review-actions{justify-content:flex-end;gap:7px;display:flex}.deletion-reviewed{color:var(--ink-soft);text-align:right;font-size:9px}.teacher-roster-list,.teacher-live-list{max-height:420px;margin-top:20px;overflow:auto}.teacher-roster-row{border-top:1px solid #edf0ec;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;padding:11px 3px;display:grid}.teacher-roster-row strong,.teacher-roster-row small{display:block}.teacher-roster-row strong{font-size:13px}.teacher-roster-row small{color:var(--ink-soft);margin-top:3px;font-size:10px}.replace-phone-button,.show-phone-qr-button{border-radius:9px;padding:8px 10px;font-size:10px;font-weight:850}.replace-phone-button{color:#775b2d;background:#fffaf1;border:1px solid #e3d4bd}.show-phone-qr-button{background:var(--green-pale);color:var(--green-dark);border:0}.teacher-qr-panel .active-qr{margin-top:22px}.teacher-live-row{border-top:1px solid #edf0ec;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;min-height:64px;padding:10px 3px;display:grid}.teacher-live-row.present{background:linear-gradient(90deg,#0000,#e6f4ed80)}.teacher-live-row.late{background:linear-gradient(90deg,#0000,#fff1ce99)}.teacher-live-row.excused{background:linear-gradient(90deg,#0000,#eef0ffb3)}.teacher-live-row strong,.teacher-live-row small{display:block}.teacher-live-row strong{font-size:13px}.teacher-live-row small{color:var(--ink-soft);margin-top:3px;font-size:10px}.manual-present-button{background:var(--ink);color:#fff;border:0;border-radius:9px;padding:8px 10px;font-size:10px;font-weight:850}.live-status-actions{align-items:center;gap:6px;display:flex}.late-button{color:#80570d;background:#fff;border:1px solid #ead8ad;border-radius:9px;padding:7px 9px;font-size:10px;font-weight:850}.late-button.active{background:#fff1ce}.undo-present-button{color:#9a3f2e;background:#fff7f4;border:1px solid #f0c6bd;border-radius:9px;padding:7px 9px;font-size:10px;font-weight:850}.teacher-history-panel{max-width:1280px;margin:18px auto 0;padding:24px}.teacher-directory-panel{max-width:1280px;margin:0 auto;padding:24px}.teacher-directory-controls{background:var(--paper);border-radius:16px;grid-template-columns:minmax(240px,.7fr) 1.3fr;align-items:end;gap:20px;margin-top:18px;padding:14px;display:grid}.teacher-directory-controls>label{gap:8px;display:grid}.teacher-directory-controls>p{color:var(--ink-soft);margin:0;font-size:12px;line-height:1.55}.teacher-directory-list{max-height:none}.teacher-history-list{margin-top:18px}.teacher-history-row{border-top:1px solid #edf0ec;grid-template-columns:1fr auto auto;align-items:center;gap:12px;min-height:64px;padding:10px 4px;display:grid}.teacher-history-row.extended{grid-template-columns:minmax(180px,1fr) repeat(5,auto)}.teacher-history-row strong,.teacher-history-row small{display:block}.teacher-history-row strong{font-size:13px}.teacher-history-row small{color:var(--ink-soft);margin-top:3px;font-size:10px}.closed-edit-notice{background:#fffaf4;border:1px solid #eadfd2;border-radius:12px;gap:3px;margin-top:16px;padding:11px 13px;display:grid}.closed-edit-notice.enabled{background:var(--green-pale);border-color:#b9d9cb}.closed-edit-notice strong{font-size:11px}.closed-edit-notice span{color:var(--ink-soft);font-size:10px;line-height:1.45}.teacher-reports-panel{margin-bottom:0}.teacher-report-table{margin-top:22px}.teacher-report-head,.teacher-report-row{grid-template-columns:minmax(180px,1fr) repeat(4,72px);align-items:center;gap:12px;display:grid}.teacher-report-head.weighted,.teacher-report-row.weighted{grid-template-columns:minmax(180px,1fr) repeat(6,64px);min-width:680px}.teacher-report-head{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.08em;padding:0 8px 9px;font-size:9px;font-weight:850}.teacher-report-row{border-top:1px solid #edf0ec;min-height:62px;padding:10px 8px;font-size:12px}.teacher-report-row strong,.teacher-report-row small{display:block}.teacher-report-row small{color:var(--ink-soft);margin-top:3px;font-size:10px}.teacher-register-modal{width:min(100%,720px)}.teacher-closed-row{grid-template-columns:42px minmax(170px,1fr) 120px 42px}.closed-status-select{border-radius:999px;padding:8px 30px 8px 10px;font-size:10px;font-weight:850}.closed-status-select.present{background-color:var(--green-pale);color:var(--green-dark);border-color:#b9d9cb}.closed-status-select.late{color:#80570d;background-color:#fff1ce;border-color:#ead8ad}.closed-status-select.absent{color:#943c2c;background-color:#fff0ec;border-color:#f0c6bd}.timetable-maker{max-width:1280px;margin:0 auto}.timetable-command-bar{grid-template-columns:minmax(260px,1fr) auto auto;align-items:center;gap:26px;padding:20px 22px;display:grid}.timetable-term-select{grid-template-columns:minmax(210px,360px);gap:7px;display:grid}.timetable-term-select select{padding-block:10px;font-weight:800}.timetable-term-select small,.timetable-state small{color:var(--ink-soft);font-size:10px}.timetable-state{justify-items:start;gap:5px;min-width:150px;display:grid}.timetable-state strong{font-size:13px}.timetable-status{text-transform:uppercase;letter-spacing:.09em;border-radius:999px;padding:5px 8px;font-size:9px;font-weight:900}.timetable-status.draft{color:#80570d;background:#fff1ce}.timetable-status.published{background:var(--green-pale);color:var(--green-dark)}.timetable-status.archived{color:var(--ink-soft);background:#ecefed}.timetable-primary-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.timetable-primary-actions .primary-button{padding:10px 14px}.timetable-primary-actions button:disabled{cursor:not-allowed;opacity:.45}.timetable-cohort-warning{color:#80570d;background:#fff9e9;border:1px solid #ead49c;border-radius:13px;justify-content:space-between;align-items:center;gap:18px;margin:12px 0;padding:13px 15px;display:flex}.timetable-cohort-warning strong,.timetable-cohort-warning span{display:block}.timetable-cohort-warning strong{font-size:11px}.timetable-cohort-warning span{margin-top:3px;font-size:9px;line-height:1.45}.timetable-cohort-warning .secondary-button{flex:none}.timetable-tabs{background:#e8e8e1;border-radius:14px;gap:7px;margin:12px 0 16px;padding:5px;display:flex;overflow-x:auto}.timetable-tabs button{min-height:44px;color:var(--ink-soft);background:0 0;border:0;border-radius:10px;flex:1 0 150px;justify-content:center;align-items:center;gap:8px;padding:8px 12px;font-size:11px;font-weight:850;display:flex}.timetable-tabs button.active{color:var(--ink);background:#fff;box-shadow:0 5px 16px #10231f14}.timetable-tabs button span{font-size:16px}.timetable-overview-panel{padding:22px;overflow:hidden}.timetable-filter-row{grid-template-columns:minmax(260px,1fr) 210px 190px;align-items:end;gap:12px;display:grid}.timetable-filter-row h2{letter-spacing:-.035em;margin:5px 0 0;font-size:24px}.timetable-filter-row label{gap:6px;display:grid}.timetable-filter-row select{padding-block:10px;font-size:11px}.timetable-week-grid{grid-template-columns:repeat(5,minmax(190px,1fr));gap:9px;margin-top:20px;padding-bottom:6px;display:grid;overflow-x:auto}.timetable-day-column{background:#f8f8f5;border:1px solid #e3e7e1;border-radius:15px;min-width:190px;overflow:hidden}.timetable-day-column>header{background:#fff;border-bottom:1px solid #e3e7e1;justify-content:space-between;align-items:center;padding:12px;display:flex}.timetable-day-column>header strong{font-size:12px}.timetable-day-column>header span{color:var(--ink-soft);font-size:9px}.timetable-day-column>div{align-content:start;gap:7px;min-height:340px;padding:8px;display:grid}.timetable-day-column>div>p{color:#87928d;text-align:center;margin:28px 0;font-size:10px}.timetable-class-card{border:1px solid #dfe7e1;border-left:3px solid var(--green);color:var(--ink);text-align:left;background:#fff;border-radius:11px;gap:4px;padding:11px;display:grid;position:relative}.timetable-class-card:hover{border-color:#9bc5b4;box-shadow:0 6px 16px #10231f12}.timetable-class-card.issue{border-color:#edc3ba;border-left-color:var(--coral);background:#fffaf8}.timetable-class-card time{color:var(--green-dark);letter-spacing:.02em;font-size:8px;font-weight:900}.timetable-class-card strong{font-size:11px;line-height:1.25}.timetable-class-card span,.timetable-class-card small,.timetable-class-card em{color:var(--ink-soft);font-size:8px;line-height:1.35}.timetable-class-card em{font-style:normal}.timetable-class-card b{color:#943c2c;background:#fff0ec;border-radius:999px;justify-self:start;margin-top:3px;padding:4px 6px;font-size:8px}.timetable-bulk-teachers{margin-top:14px;padding:20px 22px}.timetable-bulk-teachers>header{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.timetable-bulk-teachers h2{margin:5px 0 4px;font-size:21px}.timetable-bulk-teachers header p{color:var(--ink-soft);margin:0;font-size:10px;line-height:1.5}.timetable-bulk-teachers>header>strong{color:#943c2c;background:#fff0ec;border-radius:999px;flex:none;padding:6px 9px;font-size:9px}.timetable-bulk-teachers>div{gap:7px;margin-top:14px;display:grid}.timetable-bulk-teachers article{background:#fafbf9;border:1px solid #e4e8e3;border-radius:12px;grid-template-columns:minmax(180px,1fr) minmax(190px,260px) auto;align-items:center;gap:9px;padding:10px;display:grid}.timetable-bulk-teachers article>div strong,.timetable-bulk-teachers article>div span{display:block}.timetable-bulk-teachers article>div strong{font-size:11px}.timetable-bulk-teachers article>div span{color:var(--ink-soft);margin-top:3px;font-size:8px}.timetable-bulk-teachers select{min-width:0;padding-block:9px;font-size:10px}.timetable-bulk-teachers .primary-button{min-width:110px;padding:10px 12px}.timetable-validation{margin-top:14px;padding:22px}.timetable-validation.has-blockers{border-color:#efc7be}.timetable-validation.ready{border-color:#b9d9cb}.timetable-validation-heading{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.timetable-validation-heading h2{margin:5px 0;font-size:21px}.timetable-validation-heading p{color:var(--ink-soft);margin:0;font-size:11px}.timetable-validation-heading>span{color:#943c2c;background:#fff0ec;border-radius:13px;place-items:center;width:40px;height:40px;font-size:20px;font-weight:900;display:grid}.timetable-validation.ready .timetable-validation-heading>span{background:var(--green-pale);color:var(--green-dark)}.timetable-issue-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:520px;margin-top:16px;padding-right:4px;display:grid;overflow-y:auto}.timetable-issue-list>button{color:var(--ink);text-align:left;background:#fafbf9;border:1px solid #e4e8e3;border-radius:12px;grid-template-columns:7px 1fr;gap:10px;padding:12px;display:grid}.timetable-issue-list>button:hover{background:#fff;border-color:#9bc5b4;box-shadow:0 5px 14px #10231f0f}.timetable-issue-list i{background:#ddae42;border-radius:999px;width:7px;height:100%;min-height:36px}.timetable-issue-list i.blocking{background:var(--coral)}.timetable-issue-list strong,.timetable-issue-list span,.timetable-issue-list small,.timetable-issue-list em{display:block}.timetable-issue-list strong{text-transform:capitalize;font-size:9px}.timetable-issue-list span{margin-top:3px;font-size:10px;line-height:1.4}.timetable-issue-list small{color:var(--ink-soft);margin-top:4px;font-size:8px}.timetable-issue-list em{color:var(--green-dark);margin-top:7px;font-size:8px;font-style:normal;font-weight:900}.timetable-no-issues{background:var(--green-pale);color:var(--green-dark);border-radius:12px;grid-column:1/-1;align-items:center;gap:9px;padding:12px;display:flex}.timetable-no-issues p{margin:0;font-size:11px;font-weight:750}.timetable-editor-grid,.timetable-upload-grid,.timetable-settings-grid{grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);align-items:start;gap:14px;display:grid}.timetable-entry-form,.timetable-editor-help,.timetable-upload-card,.timetable-upload-rules,.timetable-term-settings,.timetable-room-settings{padding:22px}.timetable-entry-form .panel-heading p{max-width:680px;color:var(--ink-soft);margin:6px 0 0;font-size:11px}.timetable-apply-teacher{background:var(--green-pale);cursor:pointer;border:1px solid #b9d9cb;border-radius:12px;align-items:flex-start;gap:10px;margin-top:12px;padding:11px 12px;display:flex!important}.timetable-apply-teacher input{width:16px;height:16px;accent-color:var(--green);flex:none;margin-top:1px}.timetable-apply-teacher span,.timetable-apply-teacher strong,.timetable-apply-teacher small{display:block}.timetable-apply-teacher strong{color:var(--green-dark);font-size:10px}.timetable-apply-teacher small{color:#4d695f;margin-top:3px;font-size:8px;line-height:1.45}.timetable-editor-issues{background:#fffaf8;border:1px solid #efc7be;border-radius:14px;gap:8px;margin:16px 0;padding:13px;display:grid}.timetable-editor-issues>header{justify-content:space-between;align-items:center;gap:12px;display:flex}.timetable-editor-issues>header strong{color:#8e3426;margin-top:3px;font-size:12px;display:block}.timetable-editor-issues>header button{color:var(--green-dark);background:0 0;border:0;font-size:9px;font-weight:900}.timetable-editor-issues>article{background:#fff;border:1px solid #efd8d2;border-radius:11px;gap:6px;padding:11px 12px;display:grid}.timetable-editor-issues>article.focused{border-color:var(--coral);box-shadow:0 0 0 3px #d65f481a}.timetable-editor-issues>article>div:first-child{align-items:center;gap:7px;display:flex}.timetable-editor-issues article b{color:#943c2c;text-transform:uppercase;background:#fff0ec;border-radius:999px;padding:3px 6px;font-size:8px}.timetable-editor-issues article strong{text-transform:capitalize;font-size:10px}.timetable-editor-issues article p,.timetable-editor-issues article span,.timetable-editor-issues article small{margin:0;font-size:9px;line-height:1.45}.timetable-editor-issues article p{color:var(--ink)}.timetable-editor-issues article span{color:var(--green-dark);background:#f3f7f4;border-radius:9px;padding:8px 9px;font-weight:800}.timetable-editor-issues article small{color:var(--ink-soft)}.timetable-related-classes{gap:5px;display:grid}.timetable-related-classes button{border:1px solid var(--line);color:var(--ink-soft);text-align:left;background:#fff;border-radius:9px;padding:7px 9px;font-size:8px;font-weight:800}.timetable-related-classes button.active{background:var(--green-pale);color:var(--green-dark);border-color:#9bc5b4}.timetable-readonly-note{color:#80570d;background:#fff1ce;border-radius:11px;margin:16px 0;padding:11px 12px;font-size:10px;font-weight:750}.timetable-entry-fields{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:18px;display:grid}.timetable-entry-fields label,.timetable-time-row label,.timetable-entry-form>label,.timetable-term-settings form label{gap:6px;display:grid}.timetable-entry-fields select,.timetable-time-row input{min-width:0;font-size:11px}.session-picker{background:var(--paper);border-radius:12px;align-items:center;gap:12px;margin-top:14px;padding:11px 12px;display:flex}.session-picker>span{color:var(--ink-soft);flex:1;font-size:10px;font-weight:800}.session-picker>div{flex-wrap:wrap;gap:5px;display:flex}.session-picker button{border:1px solid var(--line);width:34px;height:32px;color:var(--ink-soft);background:#fff;border-radius:9px;font-size:10px;font-weight:850}.session-picker button.active{border-color:var(--green);background:var(--green);color:#fff}.session-picker button:disabled{opacity:.35}.timetable-time-row{grid-template-columns:1fr 1fr;gap:9px;margin-top:12px;display:grid}.audience-builder{border:1px solid #e2e7e1;border-radius:14px;grid-template-columns:minmax(190px,.35fr) 1fr;gap:14px;margin:14px 0;padding:14px;display:grid}.audience-builder label{gap:6px;display:grid}.audience-builder small{color:var(--ink-soft);margin-top:7px;font-size:9px;line-height:1.4;display:block}.audience-option-list{flex-wrap:wrap;align-content:flex-start;gap:6px;max-height:180px;display:flex;overflow:auto}.audience-option-list button{border:1px solid var(--line);color:var(--ink-soft);background:#fff;border-radius:999px;padding:8px 10px;font-size:9px;font-weight:800}.audience-option-list button.selected{background:var(--green-pale);color:var(--green-dark);border-color:#91c4af}.audience-option-list p{color:var(--ink-soft);margin:8px;font-size:10px}.timetable-entry-form textarea{border:1px solid var(--line);resize:vertical;width:100%;color:var(--ink);font:inherit;border-radius:12px;outline:none;padding:12px 13px}.timetable-entry-form textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px #1d8f681f}.timetable-entry-actions{gap:8px;margin-top:16px;display:flex}.timetable-entry-actions .primary-button{padding:11px 15px}.timetable-editor-help{background:var(--ink);color:#fff;gap:12px;display:grid}.timetable-editor-help h2{margin:0 0 4px;font-size:22px}.timetable-editor-help>div{border-top:1px solid #ffffff21;padding-top:12px}.timetable-editor-help strong{font-size:11px}.timetable-editor-help p{color:#b9c7c2;margin:5px 0 0;font-size:10px;line-height:1.55}.timetable-upload-card h2,.timetable-upload-rules h2,.timetable-term-settings h2,.timetable-room-settings h2{margin:6px 0 8px;font-size:23px}.timetable-upload-card>p,.timetable-upload-rules>p{color:var(--ink-soft);font-size:11px;line-height:1.55}.timetable-upload-actions{flex-wrap:wrap;gap:8px;margin:18px 0;display:flex}.timetable-upload-actions .upload-button.disabled{cursor:not-allowed;opacity:.45}.timetable-upload-message{border:1px solid;border-radius:12px;justify-content:space-between;align-items:flex-start;gap:12px;margin-top:14px;padding:12px 13px;font-size:10px;line-height:1.45;display:flex}.timetable-upload-message>div{align-content:start}.timetable-upload-message:not(:has(>div)){align-content:start}.timetable-upload-message strong,.timetable-upload-message span{display:block}.timetable-upload-message span{margin-top:3px}.timetable-upload-message.error{color:#8e3426;background:#fff8f6;border-color:#efc7be}.timetable-upload-message.warning{color:#80570d;background:#fff9e9;border-color:#ead49c}.timetable-upload-message button{width:26px;height:26px;color:inherit;background:#8e342614;border:0;border-radius:8px;flex:0 0 26px;font-size:16px}.timetable-import-preview{background:#fbfffd;border:1px solid #b9d9cb;border-radius:14px;gap:12px;padding:15px;display:grid}.timetable-import-preview>div:first-child{justify-content:space-between;gap:12px;display:flex}.timetable-import-preview strong,.timetable-import-preview span{font-size:11px}.timetable-import-check{border-radius:11px;gap:3px;padding:11px 12px;display:grid}.timetable-import-check.ready{background:var(--green-pale);color:var(--green-dark)}.timetable-import-check.has-errors{color:#943c2c;background:#fff0ec}.timetable-import-check span{font-size:9px;line-height:1.45}.timetable-import-problems{gap:6px;max-height:290px;padding-right:4px;display:grid;overflow-y:auto}.timetable-import-problems>div{color:#8e3426;background:#fff;border:1px solid #efc7be;border-radius:10px;grid-template-columns:54px 1fr;gap:8px;padding:9px 10px;display:grid}.timetable-import-problems strong{font-size:9px}.timetable-import-problems span,.timetable-import-problems small{font-size:9px;line-height:1.4}.timetable-import-warnings{color:#80570d;background:#fff9e9;border-radius:11px;gap:5px;padding:10px 12px;display:grid}.timetable-import-warnings p{margin:0;font-size:9px;line-height:1.45}.timetable-import-sample{grid-template-columns:repeat(2,1fr);gap:6px;display:grid}.timetable-import-sample>div{background:#fff;border-radius:10px;gap:3px;padding:9px;display:grid}.timetable-import-sample span,.timetable-import-sample small{color:var(--ink-soft);font-size:8px}.timetable-import-preview .primary-button{justify-self:start;padding:10px 14px}.import-empty{border:1px dashed var(--line);color:var(--ink-soft);text-align:center;border-radius:13px;padding:26px 14px;font-size:10px}.timetable-upload-rules ol{color:var(--ink-soft);gap:10px;padding-left:20px;font-size:10px;line-height:1.45;display:grid}.timetable-settings-grid{grid-template-columns:1.05fr .95fr}.timetable-term-settings>form:first-of-type{background:var(--paper);border-radius:14px;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px;padding:13px;display:grid}.timetable-term-settings>form:first-of-type .primary-button{grid-column:1/-1;min-height:42px}.term-version-list{gap:6px;margin-top:14px;display:grid}.term-version-list>button{color:var(--ink);text-align:left;background:#fff;border:1px solid #e4e8e3;border-radius:11px;justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;display:flex}.term-version-list>button.selected{box-shadow:inset 3px 0 var(--green);border-color:#8ebda9}.term-version-list strong,.term-version-list small{display:block}.term-version-list strong{font-size:11px}.term-version-list small{color:var(--ink-soft);margin-top:3px;font-size:8px}.term-version-list i{color:#80570d;text-transform:uppercase;background:#fff1ce;border-radius:999px;padding:5px 7px;font-size:8px;font-style:normal;font-weight:850}.term-version-list i.published{background:var(--green-pale);color:var(--green-dark)}.current-term-editor{border-top:1px solid #e8ece7;grid-template-columns:1fr 1fr;gap:7px;margin-top:14px;padding-top:14px;display:grid}.current-term-editor h3{grid-column:1/-1;margin:0 0 3px;font-size:13px}.current-term-editor button{min-height:38px}.add-room-form{background:var(--paper);border-radius:14px;grid-template-columns:1fr 100px auto;gap:7px;margin-top:16px;padding:12px;display:grid}.add-room-form .primary-button{padding:0 13px}.room-settings-list{gap:6px;margin-top:14px;display:grid}.room-settings-list form{border-top:1px solid #edf0ec;grid-template-columns:1fr 82px 55px auto auto;align-items:center;gap:6px;padding:7px 0;display:grid}.room-settings-list input{min-width:0;padding:9px;font-size:10px}.room-settings-list span{font-size:8px;font-weight:850}.room-settings-list span.active{color:var(--green-dark)}.room-settings-list span.inactive{color:#9a3f2e}.room-settings-list button{background:var(--green-pale);color:var(--green-dark);border:0;border-radius:8px;padding:8px;font-size:8px;font-weight:850}.room-settings-list button:last-child{color:var(--ink-soft);background:#f1f2ef}.timetable-empty{text-align:center;max-width:1280px;margin:0 auto;padding:54px 24px}.timetable-empty>span{background:var(--green-pale);width:52px;height:52px;color:var(--green-dark);border-radius:16px;place-items:center;margin:0 auto 13px;font-size:22px;display:grid}.timetable-empty h2{margin:0 0 7px}.timetable-empty p{color:var(--ink-soft);margin:0 auto 16px;font-size:11px}.teacher-today-schedule,.teacher-weekly-timetable{max-width:1280px;margin:0 auto 18px;padding:22px 24px}.teacher-today-schedule .panel-heading p{color:var(--ink-soft);margin:5px 0 0;font-size:10px}.teacher-schedule-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:15px;display:grid}.teacher-schedule-card{background:#fafbf9;border:1px solid #e3e8e2;border-radius:13px;grid-template-columns:90px minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px;display:grid}.teacher-schedule-card time{color:var(--green-dark);font-size:11px;font-weight:900}.teacher-schedule-card time span,.teacher-schedule-card strong,.teacher-schedule-card small{display:block}.teacher-schedule-card time span{color:var(--ink-soft);margin-top:2px;font-size:8px}.teacher-schedule-card strong{font-size:12px}.teacher-schedule-card small{color:var(--ink-soft);margin-top:3px;font-size:8px;line-height:1.35}.schedule-room{background:var(--green-pale);color:var(--green-dark);border-radius:999px;padding:6px 8px;font-size:8px;font-weight:850}.schedule-room.missing{color:#80570d;background:#fff1ce}.timetable-empty.compact{border:1px dashed var(--line);text-align:left;border-radius:13px;align-items:center;gap:12px;margin-top:14px;padding:17px;display:flex}.timetable-empty.compact>span{border-radius:12px;flex:0 0 38px;width:38px;height:38px;margin:0}.timetable-empty.compact strong,.timetable-empty.compact small{display:block}.timetable-empty.compact strong{font-size:11px}.timetable-empty.compact small{color:var(--ink-soft);margin-top:3px;font-size:9px}.teacher-timetable-heading{justify-content:space-between;align-items:end;gap:20px;display:flex}.teacher-timetable-heading h2{margin:5px 0;font-size:25px}.teacher-timetable-heading p{color:var(--ink-soft);margin:0;font-size:11px}.teacher-timetable-heading label{gap:6px;min-width:260px;display:grid}.teacher-timetable-term{border:1px solid var(--line);background:#fafbf9;border-radius:12px;gap:3px;padding:11px 13px;display:grid}.teacher-timetable-term strong{font-size:11px}.teacher-timetable-term span{color:var(--ink-soft);font-size:8px}.teacher-week-grid{grid-template-columns:repeat(5,minmax(190px,1fr));gap:8px;margin-top:18px;padding-bottom:5px;display:grid;overflow-x:auto}.teacher-week-day{background:#f8f8f5;border:1px solid #e3e7e1;border-radius:14px;min-width:190px;overflow:hidden}.teacher-week-day>header{background:#fff;border-bottom:1px solid #e3e7e1;justify-content:space-between;padding:11px;display:flex}.teacher-week-day>header strong{font-size:11px}.teacher-week-day>header span{color:var(--ink-soft);font-size:8px}.teacher-week-day>div{align-content:start;gap:7px;min-height:250px;padding:8px;display:grid}.teacher-week-day article{border-left:3px solid var(--green);background:#fff;border-radius:10px;grid-template-columns:57px 1fr;gap:8px;padding:10px;display:grid}.teacher-week-day time{color:var(--green-dark);font-size:8px;font-weight:900}.teacher-week-day time span,.teacher-week-day article strong,.teacher-week-day article small,.teacher-week-day article div>span{display:block}.teacher-week-day time span{color:var(--ink-soft);margin-top:3px}.teacher-week-day article strong{font-size:10px}.teacher-week-day article small,.teacher-week-day article div>span{color:var(--ink-soft);margin-top:3px;font-size:7px;line-height:1.35}.teacher-week-day>div>p{color:#87928d;text-align:center;margin:24px 0;font-size:9px}@media (width<=900px){.admin-shell{padding:0 18px 40px}.admin-intro{flex-direction:column;align-items:flex-start}.summary-row{width:100%;min-width:0}.dashboard-grid,.admin-active-session-list{grid-template-columns:1fr}.analytics-heading{flex-direction:column;align-items:flex-start}.dashboard-period-control{width:100%;min-width:0}.dashboard-kpis{grid-template-columns:repeat(3,1fr)}.dashboard-analysis-grid,.data-readiness-card{grid-template-columns:1fr}.readiness-grid{grid-template-columns:repeat(2,1fr)}.subjects-layout,.report-grid,.access-controls,.teacher-start-grid,.teacher-live-grid{grid-template-columns:1fr}.subject-form.enhanced{grid-template-columns:1fr 1fr}.subject-form.enhanced .primary-button{grid-column:1/-1}.structure-grid,.student-entry-layout{grid-template-columns:1fr}.rule-builder>form{grid-template-columns:repeat(2,1fr)}.rule-builder>form .primary-button{min-height:44px}.student-intake-grid{grid-template-columns:repeat(2,1fr)}.teacher-admin-list{grid-template-columns:1fr}.teacher-form{grid-template-columns:1fr 1fr}.teacher-form .primary-button{min-height:46px}.student-form{grid-template-columns:1fr}.student-form .primary-button{padding:13px}.report-controls{grid-template-columns:1fr}.report-controls-expanded,.report-filter-grid,.report-primary-toolbar,.teacher-report-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.report-kpis{grid-template-columns:repeat(3,1fr)}.report-kpis.compact{grid-template-columns:repeat(2,1fr)}.report-insights-grid,.teacher-report-summary-grid{grid-template-columns:1fr}.class-complete-card{grid-template-columns:48px 1fr}.complete-stats,.complete-actions{grid-column:1/-1}.teacher-directory-controls,.deletion-request-card{grid-template-columns:1fr}.deletion-review-actions{justify-content:flex-start}.deletion-reviewed{text-align:left}.subject-section-list.enhanced{grid-template-columns:1fr}.subject-roster-row.enhanced{grid-template-columns:24px 42px minmax(160px,1fr) 82px minmax(150px,.7fr) 100px}.student-subject-profile-list{grid-template-columns:1fr}.timetable-command-bar{grid-template-columns:1fr auto}.timetable-primary-actions{grid-column:1/-1;justify-content:flex-start}.timetable-filter-row{grid-template-columns:1fr 1fr}.timetable-filter-row>div{grid-column:1/-1}.timetable-editor-grid,.timetable-upload-grid,.timetable-settings-grid{grid-template-columns:1fr}.timetable-entry-fields{grid-template-columns:repeat(2,1fr)}.teacher-schedule-list{grid-template-columns:1fr}}@media (width<=620px){.login-card{padding:30px 22px}.admin-header{height:74px}.admin-header .brand-lockup small{display:none}.admin-intro{padding-top:34px}.portal-tabs{border-radius:14px;margin-bottom:14px;top:6px}.portal-tab{flex-basis:132px;min-height:48px;padding:8px 10px}.teacher-tabs .portal-tab{flex-basis:150px}.portal-tab-icon{font-size:15px}.summary-row{flex-direction:column}.summary-row div+div{border-left:0;border-top:1px solid var(--line)}.student-table-head{display:none}.student-table-row,.student-table-row.expanded{grid-template-columns:1fr auto;gap:10px;padding:16px 4px}.student-table-row .email-edit-form,.student-table-row.expanded .placement-cell,.student-table-row.expanded .student-email-cell{grid-column:1/-1}.student-table-row .row-actions{grid-column:1/-1;justify-content:flex-start}.session-panel,.attendees-panel,.students-panel,.subjects-panel,.history-panel,.reports-panel,.admin-analytics-panel,.admin-live-overview{padding:18px}.active-session-metrics,.dashboard-kpis{grid-template-columns:repeat(2,1fr)}.dashboard-kpis .dashboard-rate-kpi{grid-area:1/1/auto/-1}.dashboard-session-list{overflow-x:auto}.dashboard-session-list>button{min-width:690px}.followup-heading{flex-direction:column;align-items:flex-start}.followup-controls{width:100%}.followup-controls label{flex:1}.dashboard-custom-dates{grid-template-columns:1fr}.organisation-panel{padding:18px}.wifi-settings-grid,.wifi-manual-form{grid-template-columns:1fr}.wifi-capture-actions{flex-direction:column;align-items:stretch}.live-wifi-button{width:100%}.access-panel,.teacher-start-panel,.teacher-roster-panel,.teacher-qr-panel,.teacher-live-roster,.teacher-history-panel,.teacher-directory-panel{padding:18px}.subject-form,.subject-form.enhanced,.subject-catalogue,.rule-list,.rule-builder>form{grid-template-columns:1fr}.subject-form .primary-button{padding:13px}.history-row,.history-row.extended{grid-template-columns:54px 1fr;gap:12px;padding:14px 2px}.history-count{padding-left:66px}.history-button{justify-self:end}.report-metrics,.report-metrics.five,.report-metrics.six,.report-metrics.seven{grid-template-columns:repeat(2,1fr)}.report-kpis,.report-controls-expanded,.report-filter-grid,.report-primary-toolbar,.teacher-report-toolbar{grid-template-columns:1fr}.report-kpis.compact,.today-stat-strip{grid-template-columns:repeat(2,1fr)}.today-stat-strip>div:first-child{grid-column:1/-1}.teacher-today-history{padding:18px}.report-view-tabs{overflow-x:auto}.report-view-tabs button{flex:0 0 120px}.report-heading{flex-direction:column;align-items:flex-start}.report-actions{justify-content:flex-start}.student-history-summary{grid-template-columns:repeat(2,1fr)}.class-complete-card{grid-template-columns:42px 1fr;padding:18px}.complete-stats{grid-template-columns:repeat(2,1fr)}.complete-stats>div{border:0;border-top:1px solid var(--line);padding:10px}.complete-actions{flex-direction:column}.complete-actions button{width:100%}.range-tabs{flex-direction:column}.daily-row{grid-template-columns:1fr auto}.daily-row .report-absent{grid-column:2}.daily-row.extended{grid-template-columns:1fr auto}.daily-row.extended .report-excused{grid-column:2}.report-table-head,.report-table-row{grid-template-columns:1fr 46px 46px 46px}.report-table-head.extended,.report-table-row.extended{grid-template-columns:minmax(150px,1fr) repeat(5,50px);min-width:520px}.report-table-head.extended.weighted,.report-table-row.extended.weighted{grid-template-columns:minmax(150px,1fr) repeat(6,54px);min-width:620px}.student-report{overflow-x:auto}.register-modal{padding:30px 20px 22px}.register-row,.register-row.editable{grid-template-columns:38px 1fr auto}.register-row time{display:none}.register-row.editable .excused-button{grid-column:2/-1;justify-self:end}.access-row{grid-template-columns:42px 1fr}.access-row .status{justify-self:start}.access-row button{justify-self:end}.subject-group-year-row,.subject-distribution-heading,.subject-bulk-move-bar{flex-direction:column;align-items:stretch}.subject-group-year-row label{min-width:0}.subject-group-create-grid,.subject-roster-filters,.subject-form.enhanced{grid-template-columns:1fr}.subject-form.enhanced .primary-button{grid-column:auto}.subject-edit-actions,.teacher-group-chip-grid{grid-template-columns:1fr}.teacher-group-access-heading{flex-direction:column;align-items:flex-start}.subject-section-list.enhanced>article{grid-template-columns:1fr}.subject-bulk-move-bar>div{grid-template-columns:1fr;display:grid}.subject-bulk-move-bar select{width:100%;min-width:0}.subject-roster-list{overflow-x:auto}.subject-roster-row.enhanced{grid-template-columns:24px 42px minmax(170px,1fr) 82px minmax(160px,.7fr) 100px;min-width:680px}.subject-roster-row.enhanced .subject-section-select{width:100%}.student-subject-profile-row,.teacher-form{grid-template-columns:1fr}.teacher-form .primary-button{padding:13px}.home-nav-actions{gap:4px}.home-nav-actions .nav-link{padding:8px 10px;font-size:11px}.home-actions{flex-direction:column;align-items:flex-start}.teacher-history-row.extended{grid-template-columns:1fr auto}.teacher-history-row.extended>span{grid-column:2}.teacher-history-row.deletion-enabled,.report-session-row.deletion-enabled{min-width:760px}.deletion-request-main{flex-direction:column;align-items:flex-start}.teacher-report-table{overflow-x:auto}.teacher-report-head,.teacher-report-row{min-width:540px}.phone-roster-row{grid-template-columns:42px 1fr}.phone-roster-row button{grid-column:2;justify-self:start}.live-status-actions{flex-direction:column;align-items:flex-end}.student-intake-grid,.edit-student-grid{grid-template-columns:1fr}.student-intake-grid .wide-field,.edit-student-grid .wide-field{grid-column:auto}.entry-heading{flex-direction:column;align-items:flex-start}.timetable-command-bar{grid-template-columns:1fr}.timetable-state{grid-template-columns:auto auto;align-items:center}.timetable-state small{grid-column:1/-1}.timetable-primary-actions{grid-column:auto}.timetable-primary-actions button{flex:1}.timetable-cohort-warning{flex-direction:column;align-items:stretch}.timetable-cohort-warning .secondary-button{width:100%}.timetable-filter-row,.timetable-entry-fields,.timetable-time-row,.audience-builder,.timetable-term-settings>form:first-of-type,.current-term-editor{grid-template-columns:1fr}.timetable-bulk-teachers>header{flex-direction:column}.timetable-bulk-teachers article{grid-template-columns:1fr}.timetable-bulk-teachers .primary-button{width:100%}.timetable-filter-row>div,.timetable-term-settings>form:first-of-type .primary-button,.current-term-editor h3{grid-column:auto}.session-picker{flex-direction:column;align-items:flex-start}.timetable-issue-list,.timetable-import-sample{grid-template-columns:1fr}.timetable-entry-actions,.timetable-upload-actions{flex-direction:column}.timetable-entry-actions button,.timetable-upload-actions button,.timetable-upload-actions label{width:100%}.add-room-form{grid-template-columns:1fr 90px}.add-room-form .primary-button{grid-column:1/-1;min-height:40px}.room-settings-list{overflow-x:auto}.room-settings-list form{min-width:520px}.teacher-today-schedule,.teacher-weekly-timetable{padding:18px}.teacher-schedule-card{grid-template-columns:76px 1fr}.teacher-schedule-card .schedule-room{grid-column:2;justify-self:start}.teacher-timetable-heading{flex-direction:column;align-items:flex-start}.teacher-timetable-heading label{width:100%;min-width:0}}@media print{body{background:#fff}.admin-header,.admin-intro,.portal-tabs,.error-banner,.report-actions,.history-panel,.teacher-history-panel,.report-comparison-panel,.closed-edit-notice{display:none!important}.admin-shell{max-width:none;padding:0}.portal-tab-content{min-height:0}.reports-panel{box-shadow:none;border:0;margin:0;padding:0}.report-filter-grid,.report-controls,.report-policy-note,.report-history-note,.report-insight-card,.report-student-section,.report-kpis div{break-inside:avoid}.teacher-report-table{overflow:visible}.teacher-report-head.dashboard-table,.teacher-report-row.dashboard-table{grid-template-columns:minmax(150px,1fr) repeat(6,48px);min-width:0}.teacher-report-head.dashboard-table>:last-child,.teacher-report-row.dashboard-table>:last-child{display:none}}.result-shell{background:radial-gradient(circle at 50% 10%, #1d8f6824, transparent 34%), var(--paper);place-items:center;min-height:100vh;padding:22px;display:grid}.result-card{text-align:center;background:#fff;border:1px solid #10231f1a;border-radius:28px;width:min(100%,430px);padding:44px 30px 28px;box-shadow:0 28px 80px #10231f21}.result-icon{color:#fff;border-radius:24px;place-items:center;width:76px;height:76px;margin:0 auto 24px;font-size:38px;font-weight:850;display:grid}.result-icon.success{background:var(--green);box-shadow:0 12px 28px #1d8f6840}.result-icon.warning{background:var(--coral);box-shadow:0 12px 28px #f47f653d}.result-name{background:var(--green-pale);color:var(--green-dark);border-radius:999px;padding:6px 10px;font-size:12px;font-weight:800;display:inline-flex}.result-card h1{letter-spacing:-.05em;margin:16px 0 10px;font-size:34px}.result-card p{max-width:340px;color:var(--ink-soft);margin:0 auto;line-height:1.65}.result-divider{background:var(--line);height:1px;margin:30px 0 19px}.result-card>small{color:var(--ink-soft);font-weight:750;display:block}.result-home{color:var(--green-dark);margin-top:16px;font-size:12px;font-weight:800;display:inline-block}.report-pagination{justify-content:center;align-items:center;gap:.8rem;margin-top:1rem;display:flex}.report-pagination button{border:1px solid var(--line,#d9ddd9);min-width:6.5rem;color:inherit;font:inherit;cursor:pointer;background:#fff;border-radius:.7rem;padding:.65rem .9rem;font-weight:700}.report-pagination button:disabled{cursor:not-allowed;opacity:.45}.report-pagination span{text-align:center;min-width:7rem;font-size:.9rem;font-weight:700}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
