/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer theme{:host,:root{--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{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}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{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:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,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,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-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,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.block{display:block}.hidden{display:none}.table-row{display:table-row}}:root{color-scheme:dark;color:#edf0f4;background:#101318;font-family:Arial,Helvetica,sans-serif;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}a,button{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}h1,h2,p{margin-top:0}h1{letter-spacing:-1px;margin-bottom:8px;font-size:32px}h2{margin-bottom:0;font-size:16px}small{font-size:12px}.muted{color:#969eac}.eyebrow{letter-spacing:2px;color:#88b7a9;margin-bottom:14px;font-size:10px;font-weight:700}.button{border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:9px;min-height:42px;padding:10px 16px;font-weight:600;display:inline-flex}.button:disabled{opacity:.5;cursor:wait}.button-primary{color:#10241e;background:#8fd8bf}.button-primary:hover{background:#abe7d2}.button-secondary{color:#e8edf4;background:#242a34;border-color:#37404d}.button-danger{color:#ffb4b4;background:#45272b}.button:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:3px;outline:2px solid #9be9ce}input,select,textarea{color:#e7ecf2;background:#151a22;border:1px solid #343c49;border-radius:7px;max-width:100%;min-height:42px;padding:10px 12px}textarea{resize:vertical;min-height:85px}.app-shell{min-height:100vh;display:flex}.sidebar{background:#13171e;border-right:1px solid #252b35;flex-direction:column;flex-shrink:0;width:235px;padding:30px 18px;display:flex;position:fixed;inset:0 auto 0 0}.brand{align-items:center;gap:11px;margin-bottom:45px;font-size:17px;font-weight:700;display:flex}.brand small{letter-spacing:1.3px;color:#77818f;margin-top:7px;font-size:8px;display:block}.brand-symbol{color:#a8e2cb;letter-spacing:-2px;align-items:center;width:40px;height:40px;font-size:24px;font-weight:800;display:inline-flex}.brand-symbol span{letter-spacing:-1px;align-self:flex-end;margin-bottom:7px;font-size:10px}.nav-label{letter-spacing:1.5px;color:#747d8c;margin-bottom:13px;padding:0 12px;font-size:9px}.nav-item{color:#99a3b3;text-align:left;background:0 0;border:0;border-radius:7px;align-items:center;gap:12px;width:100%;margin-bottom:5px;padding:13px 12px;display:flex}.nav-item:hover{color:#edf0f4;background:#222932}.nav-item.selected{color:#ace2cc;background:#23342f;border:1px solid #355046}.sidebar-bottom{margin-top:auto}.security{color:#9bb6ad;border-top:1px solid #293039;align-items:center;gap:10px;padding:16px 10px;font-size:12px;display:flex}.security small{color:#737d8c;margin-top:5px;font-size:10px;display:block}.main-area{width:calc(100% - 235px);margin-left:235px}.topbar{border-bottom:1px solid #272d37;justify-content:space-between;height:72px;padding:0 38px;font-size:12px}.environment,.topbar{align-items:center;display:flex}.environment{letter-spacing:1.2px;color:#96b5a8;gap:7px;font-size:9px}.environment i{background:#8fd8bf;border-radius:50%;width:5px;height:5px}.workspace{max-width:1600px;margin:auto;padding:36px 38px}.page-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;display:flex}.page-heading p.muted{margin-bottom:0;font-size:13px}.period-controls{align-items:center;gap:8px;display:flex}.kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:26px;display:grid}.kpi{background:#191e27;border:1px solid #2d3541;border-radius:10px;flex-direction:column;gap:18px;padding:24px 20px;display:flex}.kpi>span{color:#aab3c0;font-size:12px}.kpi strong{letter-spacing:-.7px;white-space:nowrap;font-size:clamp(20px,2vw,30px);font-weight:600}.kpi small{color:#788597;font-size:10px}.kpi.accent{background:linear-gradient(125deg,#263d34,#1b2b27);border-color:#3a5b4d}.kpi.accent strong{color:#b2ebd4}.dashboard-grid{grid-template-columns:1.15fr 1fr;gap:22px;display:grid}.panel{background:#171c24;border:1px solid #2c3440;border-radius:10px;padding:24px}.panel-heading{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.panel-heading svg{color:#7ea596}.stat-row{border-bottom:1px solid #282f3b;justify-content:space-between;gap:15px;padding:16px 0;font-size:12px;display:flex}.stat-row:last-child{border-bottom:0}.stat-row>span{color:#98a4b5}.stat-row strong{text-align:right;font-weight:500}.tag{color:#a4b3a9;border:1px solid #39463f;border-radius:4px;padding:4px 7px;font-size:10px}.notice{color:#bbc4ce;background:#252a2d;border:1px solid #3a4246;border-radius:7px;margin:18px 0;padding:15px;font-size:12px;line-height:1.6}.footer-note{color:#586575;text-align:right;margin-top:28px;font-size:10px}.login{background:radial-gradient(at 50% 20%,#22382e,#0000 65%);place-items:center;min-height:100vh;padding:22px;display:grid}.login-card{background:#161e1d;border:1px solid #36443e;border-radius:14px;width:100%;max-width:430px;padding:40px}.login-card>.brand-symbol{margin-bottom:28px}.login-card>p{color:#a0b0ab;line-height:1.8}.login-card>.button{width:100%;margin:15px 0}.login-card>small{color:#829b90;justify-content:center;align-items:center;gap:7px;margin-top:18px;display:flex}@media (min-width:1600px){.workspace{padding-top:45px}}@media (max-width:1150px){.sidebar{width:195px;padding:26px 12px}.main-area{width:calc(100% - 195px);margin-left:195px}.workspace{padding:28px 24px}.topbar{padding:0 24px}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid{grid-template-columns:1fr}.page-heading{flex-direction:column;align-items:flex-start}.kpi strong{font-size:27px}}@media (max-width:650px){.app-shell,.sidebar{display:block}.sidebar{border-bottom:1px solid #293039;border-right:0;width:100%;padding:15px 18px;position:static}.brand{margin:0;font-size:16px}.brand small{font-size:7px}.sidebar .nav-label,.sidebar .security{display:none}.sidebar .nav-item{width:auto;margin-top:12px;margin-bottom:0;padding:10px;font-size:12px;display:inline-flex}.sidebar-bottom{float:right;display:inline-block}.sidebar-bottom .nav-item{gap:0;font-size:0}.main-area{width:100%;margin:0}.topbar{height:45px;padding:0 20px;font-size:11px}.workspace{padding:25px 18px}.page-heading{gap:18px;margin-bottom:22px}h1{font-size:28px}.eyebrow{font-size:8px}.period-controls{width:100%}.period-controls input{flex:1;min-width:0}.kpi-grid{gap:10px}.kpi{gap:14px;padding:17px 13px}.kpi strong{font-size:21px}.kpi>span{font-size:11px}.kpi small{font-size:9px;line-height:1.5}.panel{padding:19px}.dashboard-grid{gap:16px}.login-card{padding:27px}}.form-dialog{color:#e8edf4;background:#1a2029;border:1px solid #465246;border-radius:12px;width:calc(100% - 32px);max-width:650px;max-height:90vh;padding:26px;box-shadow:0 20px 70px #0008}.form-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#05090bba}.dialog-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;display:flex}.form-grid{grid-template-columns:1fr 1fr;gap:17px;display:grid}.form-grid label{color:#acb8c8;flex-direction:column;gap:8px;font-size:12px;display:flex}.form-grid .wide{grid-column:1/-1}.dialog-actions{justify-content:flex-end;gap:10px;margin-top:25px;display:flex}.icon-button{color:#b0bfca;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;min-width:38px;min-height:38px;display:inline-flex}.icon-button:hover{color:#b6efd5;background:#303b44}.row-actions{gap:4px;display:flex}.table-head,.table-row{grid-template-columns:1.4fr 1.2fr 1fr 1fr 80px;align-items:center;gap:14px;display:grid}.table-head{text-transform:uppercase;letter-spacing:1px;color:#7b899b;border-bottom:1px solid #39404c;padding:13px 0;font-size:10px}.table-row{border-bottom:1px solid #2b3340;padding:18px 0;font-size:12px}.table-row strong{font-weight:600}.table-row small{color:#8592a3;overflow-wrap:anywhere;margin-top:6px;font-size:11px;display:block}.student-name{align-items:center;gap:12px;display:flex}.avatar{background:#2a333d;border-radius:9px;place-items:center;min-width:38px;height:40px;display:grid}.pagination{color:#92a2b5;justify-content:space-between;align-items:center;gap:15px;margin-top:22px;font-size:11px;display:flex}.pagination>div{gap:8px;display:flex}.pagination .button{min-height:34px;padding:6px 12px;font-size:11px}.empty-state{text-align:center;color:#8a9bad;padding:40px 15px}.text-button{color:#9ce6c9;background:0 0;border:0;padding:5px;text-decoration:underline}.error{color:#ffb9c0;border-color:#724047}@media (max-width:800px){.table-head{display:none}.table-row{grid-template-columns:1fr 1fr;padding:20px 0}.table-row .row-actions{justify-content:flex-end}.panel-heading{flex-wrap:wrap;gap:15px}}@media (max-width:450px){.form-grid{grid-template-columns:1fr}.form-dialog{padding:21px}.pagination{flex-direction:column;align-items:flex-start}.panel-heading input{width:100%}}.section-gap{margin-top:24px}.schedule-row{border-bottom:1px solid #303a43;justify-content:space-between;align-items:center;gap:15px;padding:18px 0;display:flex}.schedule-row small{color:#91a3b4;margin-top:7px;display:block}.school-days{max-height:300px;overflow:auto}.school-days>div{color:#a7b5c3;border-bottom:1px solid #29343e;gap:20px;padding:10px 0;font-size:12px;display:flex}.school-days time{color:#dddfdf;min-width:80px}@media (max-width:650px){.schedule-row{flex-wrap:wrap}.schedule-row>.row-actions{width:100%}.schedule-row .button{font-size:11px}}.toolbar{flex-wrap:wrap;align-items:center;gap:15px;margin-bottom:20px;display:flex}.segmented{background:#202833;border:1px solid #38434e;border-radius:8px;padding:3px;display:inline-flex}.segmented button{color:#9eafbd;background:0 0;border:0;border-radius:5px;padding:9px 15px}.segmented .active{color:#b1efd5;background:#324c42}.lesson-card{border-bottom:1px solid #2a343f;border-left:3px solid #82a996;align-items:center;gap:24px;margin-bottom:10px;padding:21px 12px 21px 18px;display:flex}.lesson-time{min-width:84px}.lesson-time strong{font-size:22px;font-weight:500}.lesson-card small{color:#8fa1b3;margin-top:7px;font-size:11px;display:block}.lesson-person{overflow-wrap:anywhere;flex:1;min-width:0}.lesson-person>strong{margin-bottom:9px;font-size:16px;display:block}.lesson-person>.muted{font-size:12px}.lesson-controls{flex-direction:column;align-items:flex-end;gap:12px;display:flex}.lesson-controls select{max-width:205px;font-size:12px}.lesson-controls .button{padding:8px 12px;font-size:12px}@media (max-width:850px){.lesson-card{flex-wrap:wrap;gap:17px}.lesson-controls{flex-direction:row;justify-content:space-between;align-items:center;width:100%}.lesson-controls select{max-width:175px}.lesson-person{min-width:100px}.lesson-controls .row-actions{gap:0}}@media (max-width:450px){.lesson-controls{flex-wrap:wrap}.lesson-controls select{width:100%;max-width:none}.lesson-controls .row-actions{justify-content:flex-end;width:100%}.lesson-card{padding-left:12px}.toolbar>.muted{font-size:11px}.sidebar-bottom{float:none}.sidebar .nav-item{margin-top:5px}}.message-text{width:100%;min-height:160px;margin:12px 0 18px;line-height:1.7}.invoice-dialog{max-width:850px}.invoice-item{border:1px solid #3a4651;border-radius:8px;margin:20px 0;padding:18px}.invoice-item legend{color:#a7c9b9;padding:0 8px}.invoice-item .button{margin-top:14px}.sidebar{overflow-y:auto}.schedule-row{overflow-wrap:anywhere}.row-actions{flex-wrap:wrap}.goal-progress{flex:1;min-width:150px}.goal-progress progress{accent-color:#8fd8bf;width:100%;height:12px;margin-top:14px}.report-table-scroll{max-width:100%;overflow-x:auto}.report-table{border-collapse:collapse;white-space:nowrap;width:100%;font-size:12px}.report-table td,.report-table th{text-align:right;border-bottom:1px solid #34424c;padding:13px 10px}.report-table th:first-child{text-align:left}.report-table thead{color:#9aaeba}.main-area,.workspace{min-width:0}.primary-navigation{flex:1;min-height:0;overflow-y:auto}@media (max-width:650px){.primary-navigation{gap:4px;margin-top:8px;padding-bottom:6px;display:flex;overflow-x:auto}.primary-navigation .nav-item{white-space:nowrap;flex:none;margin-top:0}.sidebar-bottom{float:none;justify-content:flex-end;display:flex}.sidebar-bottom .nav-item{margin-top:0}}.profile-facts{grid-template-columns:minmax(130px,1fr) minmax(0,1fr);gap:12px 20px;margin:20px 0;font-size:14px;display:grid}.profile-facts dt{color:#9eacbd}.profile-facts dd{overflow-wrap:anywhere;margin:0}.profile-note{white-space:pre-wrap;overflow-wrap:anywhere;color:#bdc9d8;line-height:1.6}.exam-result,.profile-lesson{border-bottom:1px solid #34424c;padding:12px 0}.student-profile-link{text-align:left;font-weight:700}@media (max-width:450px){.profile-facts{grid-template-columns:1fr;gap:5px}.profile-facts dd{margin-bottom:10px}}.learning-materials fieldset{border:0;min-width:0;margin:12px 0;padding:0}.learning-materials label{max-width:100%;margin-bottom:10px;display:block}.learning-materials .row-actions>label{flex:220px;min-width:0}.learning-materials input:not([type=checkbox]),.learning-materials select,.learning-materials textarea{width:100%;margin-top:5px;display:block}.learning-materials input[type=checkbox]{min-height:auto;margin-right:8px}.whiteboard-section{margin-top:24px}.whiteboard-canvas{border:1px solid #343c49;border-radius:8px;width:100%;min-width:0;height:600px;margin-top:12px;overflow:hidden}.whiteboard-section>.row-actions{margin:12px 0}@media (max-width:600px){.whiteboard-canvas{height:480px}}.guest-board{max-width:1400px;margin:0 auto;padding:24px}.guest-board input{width:100%}@media (max-width:640px){.guest-board{padding:12px}}.consent-evidence{overflow-wrap:anywhere}.student-profile-tabs{flex-wrap:wrap;margin-bottom:20px;display:flex}.student-profile-panel[hidden]{display:none}