@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.fixed{position:fixed}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.grid{display:grid}.hidden{display:none}.table{display:table}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}.teacher-daily-balance{background:var(--green-soft);justify-content:space-between;align-items:center;gap:18px;display:flex}@supports (color:color-mix(in lab, red, red)){.teacher-daily-balance{background:color-mix(in srgb,var(--green-soft) 36%,var(--surface))}}.teacher-daily-targets{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.teacher-daily-targets>span{border:1px solid var(--green);align-items:center;gap:5px;padding:8px 10px;display:flex}@supports (color:color-mix(in lab, red, red)){.teacher-daily-targets>span{border:1px solid color-mix(in srgb,var(--green) 24%,var(--line))}}.teacher-daily-targets>span{background:var(--surface);color:var(--green);border-radius:10px;font-size:8px;font-weight:900}.teacher-daily-targets b{color:var(--text);font-size:8px}.auto-rule-grid article.balance>span{background:var(--blue-soft);color:var(--blue)}.app.dark .teacher-daily-balance,.app.dark .teacher-daily-targets>span{background:#132b2b;border-color:#2d5751}@media (max-width:760px){.teacher-daily-balance{flex-direction:column;align-items:flex-start}.teacher-daily-targets{justify-content:flex-start}}.schedule-reference-board .schedule-top-scroll{display:none}.schedule-reference-board .schedule-reference-scroll{padding:8px;overflow-x:hidden}.schedule-reference-board .board-day-head,.schedule-reference-board .board-day-cell{width:42px;min-width:0}.schedule-reference-board .board-period-head,.schedule-reference-board .board-period-cell{width:30px;min-width:0}.schedule-reference-board .board-grade-head{min-width:0}.schedule-reference-board .board-field-head,.schedule-reference-board .board-lesson-cell,.schedule-reference-board .board-teacher-cell{overflow-wrap:anywhere;width:auto;min-width:0;padding:3px 2px}.schedule-reference-board .board-lesson-cell strong{font-size:clamp(5px,.5vw,8px)}.schedule-reference-board .board-teacher-cell span,.schedule-reference-board .board-teacher-button{font-size:clamp(4px,.44vw,7px)}:root{--bg:#f5f7fb;--surface:#fff;--surface-2:#f8fafc;--text:#172033;--muted:#7a869d;--line:#e8ecf3;--blue:#2563eb;--blue-soft:#eaf1ff;--green:#16a36a;--green-soft:#e8f8f1;--orange:#ed8b2f;--orange-soft:#fff3e8;--purple:#805ad5;--purple-soft:#f1ebff;--shadow:0 8px 32px #1f2d4a0f}.brand>div:last-child{flex:1;min-width:0}.package-badge{border-radius:20px;align-items:center;width:max-content;margin-top:7px;padding:3px 7px;font-weight:900;font-size:9px!important;display:inline-flex!important}.package-badge.full{background:var(--purple-soft);color:var(--purple)}.package-badge.administrative{background:var(--green-soft);color:var(--green)}.subscription-plan-picker{border:0;grid-template-columns:1fr 1fr;gap:11px;margin:0 0 20px;padding:0;display:grid}.subscription-plan-picker legend{color:#38465e;grid-column:1/-1;width:100%;margin-bottom:8px;font-size:12px;font-weight:900}.subscription-plan-picker label{cursor:pointer;position:relative}.subscription-plan-picker input{opacity:0;pointer-events:none;position:absolute}.subscription-plan-picker label>span{background:#fbfcfe;border:1px solid #dfe6f1;border-radius:13px;grid-template-rows:auto auto;grid-template-columns:40px 1fr;gap:3px 10px;min-height:96px;padding:14px;transition:all .2s;display:grid}.subscription-plan-picker label>span>i{color:#60708a;background:#edf2fa;border-radius:11px;grid-row:1/3;place-items:center;width:40px;height:40px;font-size:18px;font-style:normal;display:grid}.subscription-plan-picker label>span>strong{color:#24324a;font-size:13px}.subscription-plan-picker label>span>small{color:#7f8ca0;font-size:10px;line-height:1.65}.subscription-plan-picker label:has(input:checked)>span{border-color:var(--blue);background:#f2f7ff;box-shadow:0 0 0 3px #2563eb14}.subscription-plan-picker label:has(input:checked)>span>i{background:var(--blue);color:#fff}@media (max-width:570px){.subscription-plan-picker{grid-template-columns:1fr}}.school-level-preview-control{border:1px solid var(--line);background:var(--surface-2);min-width:190px;height:46px;color:var(--text);border-radius:11px;align-items:center;gap:8px;margin:0 10px;padding:5px 9px;display:flex}.school-level-preview-control>span{background:var(--blue-soft);width:28px;height:28px;color:var(--blue);border-radius:8px;place-items:center;display:grid}.school-level-preview-control>div{flex:1}.school-level-preview-control small{color:var(--muted);margin-bottom:1px;font-size:8px;display:block}.school-level-preview-control select{width:100%;color:var(--text);background:0 0;border:0;outline:0;padding:0;font-size:10px;font-weight:800}.school-level-preview-control.active{background:#fff8eb;border-color:#e29b2f}.school-level-preview-control.active>span{color:#fff;background:#f1a838}.app.dark .school-level-preview-control.active{background:#3b2c17;border-color:#7c5927}.school-level-preview-banner{color:#563b13;background:#fff8e9;border:1px solid #efb55a;border-radius:13px;align-items:center;gap:11px;margin:0 0 18px;padding:12px 14px;display:flex}.school-level-preview-banner>span{color:#fff;background:#f1a838;border-radius:10px;place-items:center;width:34px;height:34px;display:grid}.school-level-preview-banner>div{flex:1}.school-level-preview-banner strong,.school-level-preview-banner small{display:block}.school-level-preview-banner strong{font-size:12px}.school-level-preview-banner small{color:#8a672f;margin-top:3px;font-size:9px}.school-level-preview-banner button{color:#fff;cursor:pointer;background:#563b13;border:0;border-radius:9px;padding:8px 12px;font-size:9px;font-weight:900}.app.dark .school-level-preview-banner{color:#ffe3ad;background:#3b2c17;border-color:#7c5927}.app.dark .school-level-preview-banner small{color:#d9b777}@media (max-width:1000px){.school-level-preview-control{min-width:155px}.school-level-preview-control small{display:none}}@media (max-width:760px){.school-level-preview-control{display:none}.school-level-preview-banner{flex-wrap:wrap;align-items:flex-start}.school-level-preview-banner button{width:100%}}*{box-sizing:border-box}html,body{background:var(--bg);min-height:100%;color:var(--text);margin:0;font-family:Segoe UI,Tahoma,Arial,sans-serif}.app{background:var(--bg);min-height:100vh;transition:all .25s;display:flex}.app.dark{--bg:#0d1422;--surface:#141e2f;--surface-2:#1a2639;--text:#edf3ff;--muted:#98a6bd;--line:#26344a;--blue-soft:#1b315a;--green-soft:#183c31;--orange-soft:#412d20;--purple-soft:#31264d}.button,button,input,select{font:inherit}.sidebar{background:var(--surface);border-left:1px solid var(--line);z-index:30;flex-direction:column;width:252px;padding:24px 16px;display:flex;position:fixed;inset:0 0 0 auto}.brand{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:0 8px 27px;display:flex}.brand-mark{color:#fff;background:linear-gradient(145deg,#2164df,#4791ff);border-radius:14px;place-items:center;width:44px;height:44px;font-size:25px;font-weight:800;display:grid;box-shadow:0 8px 18px #2563eb3d}.brand strong,.brand small{display:block}.brand strong{font-size:18px}.brand small{color:var(--muted);margin-top:4px;font-size:13px}.nav-label{color:#a2acbe;margin:22px 13px 9px;font-size:12px;font-weight:700}.nav-label.second{margin-top:24px}.nav-item{color:#69768c;cursor:pointer;text-align:right;background:0 0;border:0;border-radius:11px;align-items:center;gap:13px;width:100%;height:43px;margin:2px 0;padding:0 13px;font-size:15px;display:flex}.nav-item:hover{background:var(--surface-2);color:var(--blue)}.nav-item.active{background:var(--blue-soft);color:var(--blue);font-weight:700;position:relative}.nav-item.active:after{content:"";background:var(--blue);border-radius:3px;width:3px;height:22px;position:absolute;right:-16px}.nav-item .icon{text-align:center;min-width:19px;font-size:22px;font-weight:500}.nav-item em{color:#fff;background:#ff5d63;border-radius:10px;margin-right:auto;padding:2px 6px;font-size:11px;font-style:normal}.help-card{text-align:center;color:#40506c;background:linear-gradient(145deg,#eef4ff,#f6f9ff);border-radius:16px;margin-top:auto;padding:14px}.dark .help-card{background:#1a2a44}.help-card>span{width:30px;height:30px;color:var(--blue);background:#fff;border-radius:50%;place-items:center;margin:-29px auto 8px;font-weight:800;display:grid;box-shadow:0 4px 14px #cbd8ed}.help-card strong,.help-card small{display:block}.help-card strong{font-size:14px}.help-card small{color:var(--muted);margin:4px;font-size:11px}.help-card button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:8px;padding:7px 20px;font-size:12px}.sidebar-user{border-top:1px solid var(--line);align-items:center;gap:9px;margin-top:17px;padding:17px 3px 0;display:flex}.avatar{color:#fff;background:linear-gradient(145deg,#d9a275,#7d4c2c);border-radius:10px;place-items:center;width:34px;height:34px;font-weight:800;display:grid}.sidebar-user strong,.sidebar-user small{display:block}.sidebar-user strong{font-size:13px}.sidebar-user small{color:var(--muted);margin-top:3px;font-size:11px}.sidebar-user button{color:var(--muted);cursor:pointer;background:0 0;border:0;margin-right:auto}.workspace{width:calc(100% - 252px);min-width:0;margin-right:252px}.topbar{background:var(--surface);border-bottom:1px solid var(--line);z-index:20;align-items:center;height:74px;padding:0 34px;display:flex;position:sticky;top:0}.searchbox{background:var(--surface-2);border:1px solid var(--line);color:#9ba6b8;border-radius:11px;align-items:center;gap:10px;width:min(420px,38vw);height:40px;padding:0 14px;display:flex}.searchbox input{width:100%;color:var(--text);background:0 0;border:0;outline:0;font-size:14px}.top-actions{align-items:center;gap:9px;margin-right:auto;display:flex}.round-button{border:1px solid var(--line);background:var(--surface);width:39px;height:39px;color:var(--text);cursor:pointer;border-radius:11px;place-items:center;display:grid}.notification-button{position:relative}.notification-button b{color:#fff;border:2px solid var(--surface);background:#ff5d63;border-radius:50%;place-items:center;width:17px;height:17px;font-size:10px;display:grid;position:absolute;top:-4px;left:-3px}.primary-button,.outline-button{cursor:pointer;border:0;border-radius:11px;align-items:center;gap:9px;height:40px;padding:0 17px;font-size:14px;font-weight:700;display:flex}.primary-button{background:var(--blue);color:#fff;box-shadow:0 6px 16px #2563eb33}.primary-button .icon{font-size:22px}.menu-button,.mobile-close{display:none}.notifications{background:var(--surface);border:1px solid var(--line);z-index:40;border-radius:16px;width:340px;padding:14px;position:absolute;top:63px;left:28px;box-shadow:0 20px 60px #0c193229}.panel-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.panel-heading strong{font-size:16px}.panel-heading small{color:var(--muted);margin-top:5px;font-size:12px;display:block}.panel-heading button{color:var(--blue);cursor:pointer;background:0 0;border:0;font-size:12px}.notice{border-top:1px solid var(--line);align-items:center;gap:11px;padding:13px 4px;display:flex}.notice:first-of-type{margin-top:10px}.notice i{border-radius:10px;place-items:center;width:32px;height:32px;font-style:normal;display:grid}.notice div strong,.notice div small{font-size:12px;display:block}.notice div small{color:var(--muted);margin-top:4px}.notice.unread{background:var(--surface-2)}.n-blue{background:var(--blue-soft);color:var(--blue)}.n-orange{background:var(--orange-soft);color:var(--orange)}.n-green{background:var(--green-soft);color:var(--green)}.content{max-width:1600px;margin:auto;padding:27px 34px 45px}.welcome-row{justify-content:space-between;align-items:flex-end;margin-bottom:24px;display:flex}.eyebrow{font-weight:700;color:var(--blue)!important;font-size:12px!important}.welcome-row h1{color:var(--text);letter-spacing:-.4px;margin:5px 0;font-size:28px}.welcome-row p{color:var(--muted);margin:0;font-size:14px}.outline-button{border:1px solid var(--line);background:var(--surface);color:var(--text)}.stats-grid{grid-template-columns:repeat(4,1fr);gap:15px;display:grid}.stat-card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:15px;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;min-height:106px;padding:17px;display:grid}.stat-icon{border-radius:12px;place-items:center;width:42px;height:42px;font-size:20px;font-weight:700;display:grid}.stat-icon.blue{background:var(--blue-soft);color:var(--blue)}.stat-icon.green{background:var(--green-soft);color:var(--green)}.stat-icon.orange{background:var(--orange-soft);color:var(--orange)}.stat-icon.purple{background:var(--purple-soft);color:var(--purple)}.stat-card span{color:var(--muted);font-size:12px;display:block}.stat-card strong{margin:4px 0;font-size:24px;display:block}.stat-card small{font-size:10px}.up{color:var(--green)}.down{color:#e06464}.muted{color:var(--muted)}.spark{align-items:end;gap:2px;height:38px;display:flex}.spark i{opacity:.22;border-radius:3px 3px 0 0;width:4px}.spark i:first-child{height:28%}.spark i:nth-child(2){height:52%}.spark i:nth-child(3){height:39%}.spark i:nth-child(4){height:70%}.spark i:nth-child(5){height:62%}.spark i:nth-child(6){opacity:1;height:95%}.blue-spark i{background:var(--blue)}.green-spark i{background:var(--green)}.purple-spark i{background:var(--purple)}.progress-ring{background:conic-gradient(var(--orange) 0 93%,var(--orange-soft) 93%);border-radius:50%;place-items:center;width:43px;height:43px;display:grid}.progress-ring:after{content:"";background:var(--surface);border-radius:50%;width:32px;height:32px;position:absolute}.progress-ring span{z-index:1;color:var(--orange);font-size:10px;font-weight:800}.dashboard-grid{grid-template-columns:1.5fr 1fr;gap:15px;margin-top:15px;display:grid}.panel{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:15px;padding:19px}.panel select{border:1px solid var(--line);background:var(--surface-2);color:var(--text);border-radius:8px;outline:0;padding:7px 9px;font-size:11px}.chart-wrap{gap:12px;height:185px;margin-top:18px;display:flex}.y-axis{color:var(--muted);flex-direction:column;justify-content:space-between;padding-bottom:23px;font-size:10px;display:flex}.chart-bars{border-bottom:1px solid var(--line);background:repeating-linear-gradient(to bottom,var(--line) 0,var(--line) 1px,transparent 1px,transparent 40px);flex:1;justify-content:space-around;align-items:end;padding:12px 5px 0;display:flex}.bar-group{flex-direction:column;justify-content:end;align-items:center;gap:7px;width:13%;height:100%;display:flex}.bar{background:linear-gradient(#4c86f5,#2461dc);border-radius:6px 6px 2px 2px;width:26px;min-height:30px;max-height:135px;position:relative;box-shadow:0 6px 12px #2563eb26}.bar span{color:var(--text);font-size:10px;font-weight:700;position:absolute;top:-17px;left:50%;transform:translate(-50%)}.bar-group small{color:var(--muted);white-space:nowrap;font-size:10px}.chart-legend{color:var(--muted);align-items:center;gap:17px;padding-top:11px;font-size:11px;display:flex}.dot{border-radius:2px;width:7px;height:7px;display:inline-block}.blue-dot{background:var(--blue)}.pale-dot{background:#d7e4fa}.chart-legend b{margin-right:auto;font-weight:400}.chart-legend b strong{color:var(--blue);margin-right:4px;display:inline}.schedule-panel .panel-heading button,.students-panel .panel-heading button{align-items:center;gap:6px;display:flex}.lessons{margin-top:11px}.lesson{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:12px 0;display:flex}.lesson:last-child{border-bottom:0}.lesson-time{text-align:left;width:43px}.lesson-time strong{font-size:13px}.lesson-time small{color:var(--muted);margin-right:2px;font-size:10px}.lesson-line{border-radius:3px;width:3px;height:33px}.lesson-line.blue{background:var(--blue)}.lesson-line.green{background:var(--green)}.lesson-line.orange{background:var(--orange)}.lesson-line.purple{background:var(--purple)}.lesson-info{flex:1}.lesson-info strong,.lesson-info small{display:block}.lesson-info strong{font-size:13px}.lesson-info small{color:var(--muted);margin-top:4px;font-size:10px}.room{border-radius:6px;padding:5px 7px;font-size:10px}.room.blue{background:var(--blue-soft);color:var(--blue)}.room.green{background:var(--green-soft);color:var(--green)}.room.orange{background:var(--orange-soft);color:var(--orange)}.room.purple{background:var(--purple-soft);color:var(--purple)}.bottom-grid{grid-template-columns:1.5fr 1fr;gap:15px;margin-top:15px;display:grid}.table-scroll{margin:10px -8px -5px;overflow:auto}table{border-collapse:collapse;width:100%;min-width:570px}th{text-align:right;color:var(--muted);border-bottom:1px solid var(--line);padding:8px;font-size:10px;font-weight:600}td{border-bottom:1px solid var(--line);padding:9px 8px;font-size:12px}td:first-child{align-items:center;gap:8px;display:flex}.student-avatar{color:#fff;border-radius:9px;place-items:center;width:30px;height:30px;font-size:10px;font-weight:700;display:grid}.a1{background:#6287d8}.a2{background:#cb7d8f}.a3{background:#4fa692}.a4{background:#a17acb}td div strong,td div small{display:block}td div small{color:var(--muted);margin-top:3px;font-size:9px}.status{border-radius:12px;padding:4px 8px;font-size:10px;display:inline-block}.status.حاضر{background:var(--green-soft);color:var(--green)}.status.متأخر{background:var(--orange-soft);color:var(--orange)}.status.غائب{color:#dd5d63;background:#ffeded}.more{color:var(--muted);cursor:pointer;background:0 0;border:0}.empty{text-align:center;color:var(--muted);padding:30px;font-size:13px}.quick-grid{grid-template-columns:1fr 1fr;gap:10px;margin-top:17px;display:grid}.quick-grid button{border:1px solid var(--line);background:var(--surface-2);text-align:right;cursor:pointer;color:var(--text);border-radius:11px;padding:13px;transition:all .2s}.quick-grid button:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.quick-grid i{border-radius:9px;place-items:center;width:31px;height:31px;margin-bottom:9px;font-style:normal;display:grid}.q-blue{background:var(--blue-soft);color:var(--blue)}.q-green{background:var(--green-soft);color:var(--green)}.q-orange{background:var(--orange-soft);color:var(--orange)}.q-purple{background:var(--purple-soft);color:var(--purple)}.quick-grid span,.quick-grid small{display:block}.quick-grid span{font-size:12px;font-weight:700}.quick-grid small{color:var(--muted);margin-top:4px;font-size:10px}.toast{color:#fff;z-index:60;background:#172033;border-radius:12px;align-items:center;gap:10px;padding:13px 18px;font-size:13px;animation:.25s pop;display:flex;position:fixed;bottom:25px;left:25px;box-shadow:0 10px 35px #0003}.toast span{background:var(--green);border-radius:50%;place-items:center;width:20px;height:20px;display:grid}@keyframes pop{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media (max-width:1100px){.stats-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.bottom-grid{grid-template-columns:1fr}.sidebar{width:220px}.workspace{width:calc(100% - 220px);margin-right:220px}}@media (max-width:760px){.sidebar{width:270px;transition:all .25s;transform:translate(100%);box-shadow:-20px 0 50px #00000029}.sidebar.open{transform:none}.mobile-close{background:var(--surface-2);width:30px;height:30px;color:var(--text);border:0;border-radius:8px;font-size:22px;display:block;position:absolute;top:12px;left:12px}.backdrop{z-index:25;background:#0c142273;border:0;position:fixed;inset:0}.workspace{width:100%;margin:0}.topbar{height:65px;padding:0 15px}.menu-button{color:var(--text);background:0 0;border:0;margin-left:9px;font-size:22px;display:block}.searchbox{flex:1;width:auto}.top-actions{margin-right:8px}.top-actions .round-button:first-child{display:none}.primary-button{justify-content:center;width:39px;padding:0}.primary-button:not(.icon){font-size:0}.primary-button .icon{font-size:22px}.notifications{width:auto;left:10px;right:10px}.content{padding:20px 15px 35px}.welcome-row{align-items:flex-start}.welcome-row h1{font-size:24px}.outline-button{justify-content:center;width:40px;padding:0;font-size:0}.outline-button .icon{font-size:17px}.stats-grid{grid-template-columns:1fr 1fr;gap:10px}.stat-card{grid-template-columns:auto 1fr;min-height:90px;padding:13px}.stat-card .spark,.progress-ring{display:none}.stat-card strong{font-size:20px}.dashboard-grid,.bottom-grid{gap:10px;margin-top:10px}.panel{padding:15px}.chart-wrap{height:170px}.quick-grid{grid-template-columns:1fr 1fr}.toast{bottom:15px;left:15px;right:15px}.help-card{margin-top:50px}}@media (max-width:430px){.stats-grid{grid-template-columns:1fr}.searchbox input{font-size:12px}.stat-card{grid-template-columns:auto 1fr auto}.stat-card .spark{display:flex}.quick-grid{grid-template-columns:1fr}.bar{width:20px}.bar-group small{font-size:9px}.chart-legend b{display:none}}@media print{.sidebar,.topbar,.outline-button,.quick-panel{display:none!important}.workspace{width:100%;margin:0}.content{padding:10px}.app{background:#fff}.panel,.stat-card{box-shadow:none}}.live-students{padding:0;overflow:hidden}.module-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:20px 22px;display:flex}.module-toolbar strong,.module-toolbar small{display:block}.module-toolbar strong{font-size:17px}.module-toolbar small{color:var(--muted);margin-top:5px;font-size:12px}.data-state{background:var(--green-soft);color:var(--green);border-radius:20px;align-items:center;gap:6px;padding:7px 11px;font-size:11px;font-weight:700;display:flex}.online-dot{background:var(--green);width:7px;height:7px;box-shadow:0 0 0 4px var(--green);border-radius:50%}@supports (color:color-mix(in lab, red, red)){.online-dot{box-shadow:0 0 0 4px color-mix(in srgb,var(--green) 15%,transparent)}}.live-summary{background:var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.live-summary>div{background:var(--surface-2);padding:17px 22px}.live-summary span,.live-summary strong{display:block}.live-summary span{color:var(--muted);font-size:11px}.live-summary strong{margin-top:4px;font-size:22px}.live-table{margin:0}.live-table table{min-width:760px}.live-table th{background:var(--surface-2);padding:12px 18px}.live-table td{padding:13px 18px}.delete-button{color:#dc5c64;cursor:pointer;background:#fff0f0;border:0;border-radius:7px;padding:6px 9px;font-size:11px}.dark .delete-button{background:#40272c}.empty-live{flex-direction:column;align-items:center;gap:6px;padding:52px 20px;display:flex}.empty-live>span{background:var(--blue-soft);width:48px;height:48px;color:var(--blue);border-radius:14px;place-items:center;font-size:26px;display:grid}.empty-live strong{color:var(--text);font-size:15px}.empty-live small{font-size:11px}.empty-live button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:8px;margin-top:5px;padding:8px 13px;font-size:12px}.modal-layer{z-index:100;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0812238c;border:0;position:absolute;inset:0}.student-form{background:var(--surface);border:1px solid var(--line);border-radius:19px;width:min(500px,100%);padding:23px;animation:.22s pop;position:relative;box-shadow:0 28px 80px #0712264d}.form-head{border-bottom:1px solid var(--line);align-items:center;gap:12px;margin-bottom:18px;padding-bottom:18px;display:flex}.form-head h2{margin:0;font-size:19px}.form-head p{color:var(--muted);margin:5px 0 0;font-size:11px}.form-head>button{background:var(--surface-2);width:30px;height:30px;color:var(--muted);cursor:pointer;border:0;border-radius:8px;align-self:flex-start;margin-right:auto;font-size:22px}.student-form label{color:var(--text);margin:12px 0;font-size:12px;font-weight:700;display:block}.student-form input,.student-form select{border:1px solid var(--line);background:var(--surface-2);width:100%;height:42px;color:var(--text);border-radius:10px;outline:0;margin-top:7px;padding:0 12px;font-size:13px;display:block}.student-form input:focus,.student-form select:focus{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue)}@supports (color:color-mix(in lab, red, red)){.student-form input:focus,.student-form select:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--blue) 12%,transparent)}}.form-grid{grid-template-columns:2fr 1fr;gap:12px;display:grid}.form-actions{border-top:1px solid var(--line);justify-content:flex-end;gap:9px;margin-top:17px;padding-top:17px;display:flex}.cancel-button{border:1px solid var(--line);background:var(--surface);height:40px;color:var(--text);cursor:pointer;border-radius:10px;padding:0 18px;font-size:13px}.form-actions .primary-button:disabled{opacity:.6;cursor:wait}.student-form-wide{width:min(650px,100%);max-height:calc(100vh - 36px);overflow:auto}.form-grid.equal{grid-template-columns:1fr 1fr}.address-cell{white-space:nowrap;text-overflow:ellipsis;max-width:185px;display:block;overflow:hidden}.live-table:has(.address-cell) table{min-width:1180px}@media (max-width:760px){.module-toolbar{padding:17px}.live-summary>div{padding:13px}.live-summary strong{font-size:19px}.student-form{padding:18px}.form-grid,.form-grid.equal{grid-template-columns:1fr}.data-state{padding:8px;font-size:0}.data-state .online-dot{display:block}.welcome-row .primary-button{width:auto;padding:0 12px;font-size:12px}}.searchbox{position:relative}.search-results{background:var(--surface);border:1px solid var(--line);z-index:60;border-radius:14px;width:100%;min-width:390px;padding:8px;position:absolute;top:47px;right:0;box-shadow:0 22px 60px #0f1c3433}.search-results-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:8px 9px 10px;display:flex}.search-results-head span{color:var(--text);font-size:12px;font-weight:800}.search-results-head small{color:var(--muted);font-size:10px}.search-results>button{width:100%;color:var(--text);text-align:right;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;padding:10px;display:flex}.search-results>button:hover{background:var(--surface-2)}.search-results>button i{border-radius:9px;place-items:center;width:33px;height:33px;font-style:normal;display:grid}.search-results>button div{flex:1;min-width:0}.search-results>button strong,.search-results>button small{display:block}.search-results>button strong{font-size:12px}.search-results>button small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-top:4px;font-size:10px;overflow:hidden}.search-results>button>span{color:var(--blue);background:var(--blue-soft);border-radius:10px;padding:4px 7px;font-size:10px}.search-empty{text-align:center;color:var(--muted);flex-direction:column;align-items:center;padding:28px 12px;display:flex}.search-empty .icon{font-size:27px}.search-empty strong{color:var(--text);margin:7px 0 3px;font-size:13px}.search-empty small{font-size:10px}.search-hint{text-align:center;color:var(--muted);border-top:1px solid var(--line);padding:9px 4px 2px;font-size:10px}@media (max-width:760px){.search-results{width:auto;min-width:0;position:fixed;top:60px;left:10px;right:10px}}.stat-button{font:inherit;color:var(--text);text-align:right;cursor:pointer;transition:transform .2s,box-shadow .2s,border-color .2s}.stat-button:hover{border-color:var(--blue);transform:translateY(-2px)}@supports (color:color-mix(in lab, red, red)){.stat-button:hover{border-color:color-mix(in srgb,var(--blue) 35%,var(--line))}}.stat-button:hover{box-shadow:0 12px 32px #1f2d4a1c}.stat-button:focus-visible{outline:3px solid var(--blue)}@supports (color:color-mix(in lab, red, red)){.stat-button:focus-visible{outline:3px solid color-mix(in srgb,var(--blue) 24%,transparent)}}.stat-button:focus-visible{outline-offset:2px}.stat-button small .icon{margin-right:3px;font-size:11px;display:inline}.action-buttons{white-space:nowrap;align-items:center;gap:7px;display:flex}.edit-button,.delete-button{cursor:pointer;border:0;border-radius:8px;padding:7px 12px;font-size:11px;font-weight:800;transition:transform .18s,filter .18s;box-shadow:0 4px 10px #0000001f;color:#fff!important}.edit-button{background:#17a66a}.delete-button{background:#e64f59}.edit-button:hover,.delete-button:hover{filter:brightness(.94);transform:translateY(-1px)}.edit-button:focus-visible,.delete-button:focus-visible{outline:3px solid}@supports (color:color-mix(in lab, red, red)){.edit-button:focus-visible,.delete-button:focus-visible{outline:3px solid color-mix(in srgb,currentColor 20%,transparent)}}.edit-button:focus-visible,.delete-button:focus-visible{outline-offset:2px}.login-loading{background:#f3f7ff;min-height:100vh}.login-page{color:#172033;background:#fff;grid-template-columns:minmax(420px,46%) 1fr;min-height:100vh;display:grid}.login-visual{color:#fff;background:linear-gradient(150deg,#0a328c 0%,#1356c9 50%,#2779ed 100%);flex-direction:column;min-height:100vh;padding:48px clamp(34px,5vw,76px);display:flex;position:relative;overflow:hidden}.login-visual:before{content:"";background:radial-gradient(circle at 20% 18%,#ffffff29,#0000 30%),linear-gradient(125deg,#0000 35%,#ffffff0d 35% 36%,#0000 36% 62%,#ffffff0f 62% 63%,#0000 63%);position:absolute;inset:0}.login-brand,.login-copy,.login-stats{z-index:2;position:relative}.login-brand{align-items:center;gap:14px;display:flex}.login-brand .brand-mark{color:#1e63d9;background:#fff;box-shadow:0 14px 34px #0518463d}.login-brand strong,.login-brand small{display:block}.login-brand strong{font-size:20px}.login-brand small{color:#ffffffb3;margin-top:4px;font-size:13px}.login-copy{max-width:570px;margin:auto 0}.secure-badge{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff1a;border:1px solid #ffffff3b;border-radius:30px;align-items:center;gap:8px;padding:8px 13px;font-size:13px;display:inline-flex}.secure-badge:first-letter{color:#6bf0b0}.login-copy h1{letter-spacing:-1.5px;margin:25px 0 20px;font-size:clamp(40px,4.8vw,70px);line-height:1.16}.login-copy h1 em{color:#9ed0ff;font-style:normal}.login-copy p{color:#ffffffc2;max-width:500px;margin:0;font-size:16px;line-height:2}.login-stats{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#08286c38;border:1px solid #ffffff29;border-radius:18px;gap:8px;padding:13px;display:flex}.login-stats div{border-left:1px solid #ffffff21;flex:1;padding:7px 15px}.login-stats div:last-child{border-left:0}.login-stats strong,.login-stats span{display:block}.login-stats strong{font-size:22px}.login-stats span{color:#ffffffa6;margin-top:4px;font-size:12px}.visual-orb{filter:blur(1px);pointer-events:none;border-radius:50%;position:absolute}.orb-one{background:#5eb8ff21;border:1px solid #ffffff1a;width:240px;height:240px;top:20%;left:-90px}.orb-two{background:#64cfff1f;border:1px solid #ffffff17;width:360px;height:360px;bottom:-170px;right:-180px}.login-panel{background:linear-gradient(#fff,#f9fbff);place-items:center;min-height:100vh;padding:40px clamp(28px,6vw,90px);display:grid}.login-box{width:min(590px,100%)}.login-mobile-brand{display:none}.login-heading>span{color:#2563eb;font-size:13px;font-weight:800}.login-heading h2{color:#15203a;margin:8px 0;font-size:35px}.login-heading p{color:#7b879b;margin:0 0 26px;font-size:14px}.role-picker{grid-template-columns:1fr 1fr;gap:11px;margin-bottom:24px;display:grid}.role-card{color:#26344e;text-align:right;cursor:pointer;background:#fff;border:1px solid #e4e9f1;border-radius:14px;min-height:94px;padding:14px 53px 14px 13px;transition:all .2s;position:relative}.role-card:hover{border-color:#a9c2f3;transform:translateY(-1px)}.role-card.selected{background:#f1f6ff;border-color:#2e6fe5;box-shadow:0 0 0 3px #2563eb14}.role-card>i{color:#54709f;background:#eef3fb;border-radius:9px;place-items:center;width:31px;height:31px;font-size:19px;font-style:normal;display:grid;position:absolute;top:14px;right:13px}.role-card.selected>i{color:#fff;background:#2563eb}.role-card strong,.role-card small{display:block}.role-card strong{font-size:14px}.role-card small{color:#8490a4;margin-top:6px;font-size:11px;line-height:1.5}.role-card>b{color:#fff;background:#2563eb;border-radius:50%;place-items:center;width:18px;height:18px;font-size:12px;display:none;position:absolute;top:10px;left:10px}.role-card.selected>b{display:grid}.login-form label{color:#35425a;margin-top:14px;font-size:13px;font-weight:800;display:block}.login-input{background:#fff;border:1px solid #e0e6ef;border-radius:11px;align-items:center;gap:10px;height:48px;margin-top:8px;padding:0 13px;transition:all .2s;display:flex}.login-input:focus-within{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb17}.login-input>span{color:#8290a8}.login-input input{color:#172033;background:0 0;border:0;outline:0;flex:1;min-width:0;font-size:14px}.login-input button{color:#2563eb;cursor:pointer;background:0 0;border:0;font-size:11px;font-weight:700}.login-error{color:#d44350;background:#fff0f1;border-radius:9px;margin-top:13px;padding:10px 12px;font-size:12px}.login-submit{color:#fff;cursor:pointer;background:linear-gradient(135deg,#1d5fd7,#317cf1);border:0;border-radius:11px;width:100%;height:49px;margin-top:20px;font-size:15px;font-weight:800;transition:all .2s;box-shadow:0 10px 24px #2563eb38}.login-submit:hover{transform:translateY(-1px);box-shadow:0 14px 28px #2563eb47}.login-submit span{margin-right:8px;font-size:20px}.demo-credentials{background:#f7f9fd;border:1px dashed #ccd7e8;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;margin-top:14px;padding:10px 13px;display:flex}.demo-credentials>span{color:#768399;font-size:11px}.demo-credentials>div{direction:ltr;align-items:center;gap:7px;display:flex}.demo-credentials code{color:#2458ad;background:#e9f0fd;border-radius:5px;padding:3px 7px;font-size:12px}.demo-credentials i{color:#aab3c1;font-style:normal}.login-help{text-align:center;color:#8b96a7;margin:17px 0 0;font-size:11px}.login-help button{color:#2563eb;cursor:pointer;background:0 0;border:0;font-weight:700}.logout-mini{color:#d94c58!important;background:#fff0f1!important;border-radius:7px!important;padding:6px 8px!important;font-size:11px!important}.student-context{align-items:center;gap:10px;display:flex}.student-context>.icon{background:var(--blue-soft);width:35px;height:35px;color:var(--blue);border-radius:10px;place-items:center;display:grid}.student-context strong,.student-context small{display:block}.student-context strong{font-size:13px}.student-context small{color:var(--muted);margin-top:3px;font-size:10px}@media (max-width:980px){.login-page{grid-template-columns:1fr}.login-visual{display:none}.login-panel{padding:32px 22px}.login-mobile-brand{justify-content:center;align-items:center;gap:11px;margin-bottom:32px;display:flex}.login-mobile-brand .brand-mark{border-radius:11px;width:39px;height:39px;font-size:21px}.login-mobile-brand strong{font-size:16px}}@media (max-width:540px){.login-panel{place-items:start center;padding-top:22px}.login-heading h2{font-size:29px}.role-picker{gap:8px}.role-card{min-height:89px;padding:12px 45px 12px 9px}.role-card>i{width:27px;height:27px;right:10px}.role-card small{font-size:10px}.demo-credentials{flex-direction:column;align-items:flex-start}.login-mobile-brand{margin-bottom:24px}}.permissions-page{flex-direction:column;gap:14px;display:flex}.permissions-hero{background:linear-gradient(120deg,var(--surface),var(--blue-soft));align-items:center;gap:16px;padding:22px;display:flex}@supports (color:color-mix(in lab, red, red)){.permissions-hero{background:linear-gradient(120deg,var(--surface),color-mix(in srgb,var(--blue-soft) 56%,var(--surface)))}}.permissions-hero-icon{color:#fff;background:linear-gradient(145deg,#255fda,#4688f4);border-radius:16px;place-items:center;width:54px;height:54px;font-size:26px;display:grid;box-shadow:0 10px 25px #2563eb38}.permissions-hero>div:nth-child(2){flex:1}.permissions-hero span{color:var(--blue);font-size:11px;font-weight:800}.permissions-hero h2{color:var(--text);margin:4px 0;font-size:21px}.permissions-hero p{color:var(--muted);margin:0;font-size:12px;line-height:1.7}.permissions-status{background:var(--surface);border:1px solid var(--line);white-space:nowrap;border-radius:20px;align-items:center;gap:8px;padding:8px 12px;display:flex;color:var(--green)!important;font-size:11px!important}.saving-dot{border:2px solid var(--blue);border-top-color:#0000;border-radius:50%;width:8px;height:8px;animation:.7s linear infinite permissionSpin}@keyframes permissionSpin{to{transform:rotate(360deg)}}.role-tabs{grid-template-columns:repeat(3,1fr);gap:11px;display:grid}.role-tabs button{border:1px solid var(--line);background:var(--surface);height:70px;color:var(--text);text-align:right;cursor:pointer;box-shadow:var(--shadow);border-radius:14px;align-items:center;gap:10px;padding:10px 13px;transition:all .2s;display:flex}.role-tabs button:hover{border-color:var(--blue);transform:translateY(-1px)}@supports (color:color-mix(in lab, red, red)){.role-tabs button:hover{border-color:color-mix(in srgb,var(--blue) 35%,var(--line))}}.role-tabs button.selected{border-color:var(--blue);background:var(--blue-soft);box-shadow:0 0 0 3px var(--blue)}@supports (color:color-mix(in lab, red, red)){.role-tabs button.selected{box-shadow:0 0 0 3px color-mix(in srgb,var(--blue) 9%,transparent)}}.role-tabs button>i{background:var(--surface-2);width:37px;height:37px;color:var(--muted);border-radius:11px;place-items:center;font-size:20px;font-style:normal;display:grid}.role-tabs button.selected>i{background:var(--blue);color:#fff}.role-tabs button span{flex:1}.role-tabs strong,.role-tabs small{display:block}.role-tabs strong{font-size:13px}.role-tabs small{color:var(--muted);text-align:right;direction:ltr;margin-top:4px;font-size:10px}.role-tabs b{color:var(--blue);background:var(--surface);white-space:nowrap;border-radius:10px;padding:5px 7px;font-size:10px}.permission-toolbar{justify-content:space-between;align-items:center;padding:14px 17px;display:flex}.permission-toolbar>div:first-child{align-items:center;gap:10px;display:flex}.permission-avatar{background:var(--purple-soft);width:38px;height:38px;color:var(--purple);border-radius:11px;place-items:center;font-size:20px;display:grid}.permission-toolbar strong,.permission-toolbar small{display:block}.permission-toolbar strong{font-size:14px}.permission-toolbar small{color:var(--muted);margin-top:4px;font-size:10px}.permission-bulk{gap:7px;display:flex}.permission-bulk button{border:1px solid var(--green);height:31px}@supports (color:color-mix(in lab, red, red)){.permission-bulk button{border:1px solid color-mix(in srgb,var(--green) 30%,var(--line))}}.permission-bulk button{background:var(--green-soft);color:var(--green);cursor:pointer;border-radius:8px;padding:0 10px;font-size:11px;font-weight:800}.permission-bulk button:nth-child(2){border-color:#e64f59}@supports (color:color-mix(in lab, red, red)){.permission-bulk button:nth-child(2){border-color:color-mix(in srgb,#e64f59 30%,var(--line))}}.permission-bulk button:nth-child(2){color:#d94c58;background:#fff0f1}.dark .permission-bulk button:nth-child(2){background:#40272c}.permission-bulk .reset-permissions{border-color:var(--line);background:var(--surface-2);color:var(--muted)}.permissions-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.permission-group{padding:0;overflow:hidden}.permission-group-head{background:var(--surface-2);border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:16px 18px;display:flex}.permission-group-head>i{background:var(--blue-soft);width:34px;height:34px;color:var(--blue);border-radius:10px;place-items:center;font-size:19px;font-style:normal;display:grid}.permission-group-head strong,.permission-group-head small{display:block}.permission-group-head strong{font-size:14px}.permission-group-head small{color:var(--muted);margin-top:4px;font-size:10px}.permission-list{padding:4px 17px}.permission-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:15px;min-height:62px;display:flex}.permission-row:last-child{border-bottom:0}.permission-row>div{min-width:0}.permission-row strong,.permission-row small{display:block}.permission-row strong{font-size:12px}.permission-row small{color:var(--muted);margin-top:4px;font-size:10px}.permission-switch{cursor:pointer;white-space:nowrap;align-items:center;gap:8px;display:flex}.permission-switch input{opacity:0;pointer-events:none;position:absolute}.permission-switch>span{background:#cbd3df;border-radius:20px;width:38px;height:21px;transition:all .2s;position:relative}.permission-switch>span:after{content:"";background:#fff;border-radius:50%;width:15px;height:15px;transition:all .2s;position:absolute;top:3px;right:3px;box-shadow:0 2px 6px #0000002e}.permission-switch input:checked+span{background:var(--green)}.permission-switch input:checked+span:after{transform:translate(-17px)}.permission-switch input:focus-visible+span{outline:3px solid var(--blue)}@supports (color:color-mix(in lab, red, red)){.permission-switch input:focus-visible+span{outline:3px solid color-mix(in srgb,var(--blue) 25%,transparent)}}.permission-switch input:focus-visible+span{outline-offset:2px}.permission-switch input:disabled+span{opacity:.55;cursor:wait}.permission-switch em{color:var(--muted);width:42px;font-size:10px;font-style:normal}.permission-switch input:checked~em{color:var(--green);font-weight:800}.permission-note{border:1px solid var(--blue);align-items:center;gap:10px;display:flex}@supports (color:color-mix(in lab, red, red)){.permission-note{border:1px solid color-mix(in srgb,var(--blue) 20%,var(--line))}}.permission-note{background:var(--blue-soft);color:var(--text);border-radius:13px;padding:12px 15px}.permission-note>span{background:var(--blue);color:#fff;border-radius:50%;place-items:center;width:24px;height:24px;font-size:13px;font-weight:800;display:grid}.permission-note strong,.permission-note small{display:block}.permission-note strong{font-size:11px}.permission-note small{color:var(--muted);margin-top:3px;font-size:10px}.permissions-loading{text-align:center;color:var(--muted);padding:50px;font-size:13px}.quick-empty{text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:10px;grid-column:1/-1;padding:24px 10px;font-size:11px}.staff-permission-picker{border-color:var(--purple);grid-template-columns:1fr minmax(280px,420px);align-items:end;gap:18px;padding:15px 17px;display:grid}@supports (color:color-mix(in lab, red, red)){.staff-permission-picker{border-color:color-mix(in srgb,var(--purple) 24%,var(--line))}}.staff-permission-picker{background:linear-gradient(120deg,var(--surface),var(--purple-soft))}@supports (color:color-mix(in lab, red, red)){.staff-permission-picker{background:linear-gradient(120deg,var(--surface),color-mix(in srgb,var(--purple-soft) 34%,var(--surface)))}}.staff-permission-picker>div{align-items:center;gap:10px;display:flex}.staff-permission-picker>div>span{background:var(--purple);color:#fff;border-radius:11px;place-items:center;width:36px;height:36px;font-size:13px;font-weight:900;display:grid}.staff-permission-picker strong,.staff-permission-picker small,.staff-permission-picker label>span{display:block}.staff-permission-picker strong{font-size:13px}.staff-permission-picker small{color:var(--muted);margin-top:3px;font-size:9px}.staff-permission-picker label>span{color:var(--muted);margin-bottom:6px;font-size:9px;font-weight:800}.staff-permission-picker select{border:1px solid var(--purple);width:100%;height:43px}@supports (color:color-mix(in lab, red, red)){.staff-permission-picker select{border:1px solid color-mix(in srgb,var(--purple) 28%,var(--line))}}.staff-permission-picker select{background:var(--surface);color:var(--text);border-radius:11px;outline:0;padding:0 11px;font-size:10px;font-weight:800}.staff-permission-picker select:focus{border-color:var(--purple);box-shadow:0 0 0 3px var(--purple)}@supports (color:color-mix(in lab, red, red)){.staff-permission-picker select:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--purple) 12%,transparent)}}.permission-bulk button:disabled{opacity:.45;cursor:not-allowed}.app.dark .staff-permission-picker{background:linear-gradient(120deg,#101c2e,#1d213d);border-color:#433d68}.app.dark .staff-permission-picker select{color:#f4f7ff;background:#17263b;border-color:#4a4772}@media (max-width:900px){.permissions-grid{grid-template-columns:1fr}.permissions-hero{align-items:flex-start}.permissions-status{margin-right:auto}.role-tabs b{display:none}}@media (max-width:620px){.permissions-hero{grid-template-columns:auto 1fr;padding:16px;display:grid}.permissions-hero-icon{width:46px;height:46px}.permissions-status{grid-column:1/-1;width:max-content;margin:0}.role-tabs{grid-template-columns:1fr}.role-tabs button{height:61px}.role-tabs b{display:block}.staff-permission-picker{grid-template-columns:1fr}.permission-toolbar{flex-direction:column;align-items:flex-start;gap:12px}.permission-bulk{grid-template-columns:repeat(3,1fr);width:100%;display:grid}.permission-bulk button{padding:0 4px}.permission-row{min-height:68px}.permission-switch em{display:none}}.brand-mark.has-logo{background:#fff;padding:3px;overflow:hidden}.brand-mark.has-logo img{object-fit:contain;border-radius:10px;width:100%;height:100%}.setup-page{color:#172033;background:#f4f7fc;grid-template-columns:minmax(320px,35%) 1fr;min-height:100vh;display:grid}.setup-aside{color:#fff;background:linear-gradient(155deg,#0b378f,#1d67dc 66%,#3188f5);flex-direction:column;min-height:100vh;padding:42px clamp(28px,4vw,58px);display:flex;position:relative;overflow:hidden}.setup-aside:before,.setup-aside:after{content:"";background:#ffffff0d;border:1px solid #ffffff1a;border-radius:50%;position:absolute}.setup-aside:before{width:330px;height:330px;top:13%;left:-190px}.setup-aside:after{width:420px;height:420px;bottom:-190px;right:-220px}.setup-logo,.setup-copy,.setup-points,.setup-logout{z-index:1;position:relative}.setup-logo{color:#2267d7;background:#fff;border-radius:16px;place-items:center;width:52px;height:52px;font-size:27px;font-weight:900;display:grid;box-shadow:0 12px 28px #051e5747}.setup-copy{margin:auto 0 38px}.setup-copy>span{background:#ffffff17;border:1px solid #fff3;border-radius:20px;padding:7px 12px;font-size:12px;display:inline-block}.setup-copy h1{letter-spacing:-1px;margin:20px 0 15px;font-size:clamp(36px,4vw,58px);line-height:1.22}.setup-copy p{color:#ffffffb8;max-width:440px;font-size:14px;line-height:1.9}.setup-points{gap:15px;display:grid}.setup-points>div{align-items:center;gap:11px;display:flex}.setup-points i{color:#8dffc5;background:#ffffff21;border-radius:9px;place-items:center;width:27px;height:27px;font-style:normal;display:grid}.setup-points strong,.setup-points small{display:block}.setup-points strong{font-size:12px}.setup-points small{color:#ffffff9e;margin-top:3px;font-size:10px}.setup-logout{color:#ffffffbf;cursor:pointer;background:0 0;border:1px solid #fff3;border-radius:9px;align-self:flex-start;margin-top:30px;padding:8px 13px;font-size:11px}.setup-workspace{min-height:100vh;padding:30px clamp(24px,5vw,72px) 45px;overflow:auto}.setup-progress{align-items:center;max-width:510px;height:43px;margin:0 auto 22px;display:flex;position:relative}.setup-progress>span{color:#8c98ab;z-index:1;background:#dfe5ef;border-radius:50%;place-items:center;width:25px;height:25px;font-size:11px;font-weight:800;display:grid}.setup-progress>span.done{background:var(--blue);color:#fff}.setup-progress>i{background:#dfe5ef;flex:1;height:2px}.setup-progress>i:first-of-type{background:var(--blue)}.setup-progress>em{color:var(--blue);font-size:10px;font-style:normal;font-weight:800;position:absolute;top:31px;right:-12px}.school-setup-form{background:#fff;border:1px solid #e5eaf2;border-radius:20px;width:min(820px,100%);margin:auto;overflow:hidden;box-shadow:0 24px 70px #152a4e1a}.school-setup-form>header{border-bottom:1px solid #edf0f5;padding:25px 30px 21px}.school-setup-form>header>span{color:var(--blue);font-size:12px;font-weight:800}.school-setup-form h2{color:#172033;margin:6px 0;font-size:25px}.school-setup-form header p{color:#8490a2;margin:0;font-size:12px}.school-form-body{padding:22px 30px}.logo-uploader{cursor:pointer;background:#f7faff;border:1px dashed #b9c9e2;border-radius:14px;align-items:center;gap:15px;transition:all .2s;margin:0 0 20px!important;padding:13px!important;display:flex!important}.logo-uploader:hover{border-color:var(--blue);background:#f1f6ff}.logo-uploader>input{display:none!important}.logo-preview{width:70px;min-width:70px;height:70px;color:var(--blue);background:#e8f0ff;border-radius:14px;place-items:center;display:grid;overflow:hidden}.logo-preview span{font-size:27px}.logo-preview img{object-fit:contain;background:#fff;width:100%;height:100%}.logo-uploader>div:last-child{flex:1}.logo-uploader strong,.logo-uploader small,.logo-uploader b{display:block}.logo-uploader strong{font-size:14px}.logo-uploader small{color:#8995a8;margin:5px 0 8px;font-size:11px}.logo-uploader b{width:max-content;color:var(--blue);background:#e7efff;border-radius:7px;padding:5px 9px;font-size:11px}.setup-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.setup-grid label{color:#38465e;font-size:12px;font-weight:800}.setup-grid input,.setup-grid select,.setup-grid textarea{color:#172033;background:#fbfcfe;border:1px solid #e0e6ef;border-radius:10px;outline:0;width:100%;margin-top:7px;padding:0 12px;font-size:13px;display:block}.setup-grid input,.setup-grid select{height:44px}.setup-grid textarea{resize:vertical;min-height:76px;padding-top:11px;font-family:inherit;line-height:1.6}.setup-grid input:focus,.setup-grid select:focus,.setup-grid textarea:focus{border-color:var(--blue);background:#fff;box-shadow:0 0 0 3px #2563eb14}.setup-grid .full-field{grid-column:1/-1}.setup-error{color:#d3424f;background:#fff0f1;border-radius:9px;margin-top:14px;padding:10px 12px;font-size:12px}.school-setup-form>footer{background:#f8fafc;border-top:1px solid #edf0f5;justify-content:space-between;align-items:center;gap:15px;padding:16px 30px;display:flex}.school-setup-form>footer>div{align-items:center;gap:7px;display:flex}.school-setup-form>footer small{color:#8692a4;font-size:10px}.school-setup-form>footer>button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#1d60d9,#327ef0);border:0;border-radius:10px;height:42px;padding:0 17px;font-size:13px;font-weight:800;box-shadow:0 8px 20px #2563eb33}.school-setup-form>footer>button:disabled{opacity:.6;cursor:wait}.school-setup-form>footer>button span{margin-right:7px;font-size:17px}@media (max-width:900px){.setup-page{grid-template-columns:1fr}.setup-aside{min-height:auto;padding:25px 28px}.setup-copy{margin:28px 0 10px}.setup-copy h1{margin:12px 0 8px;font-size:33px}.setup-copy p{margin:0}.setup-points{display:none}.setup-logout{margin:0;position:absolute;top:19px;left:25px}.setup-workspace{min-height:auto;padding:22px 18px 35px}.setup-progress{display:none}}@media (max-width:570px){.school-setup-form>header,.school-form-body{padding:20px}.school-setup-form>footer{flex-direction:column;align-items:stretch;padding:14px 20px}.school-setup-form>footer>button{width:100%}.setup-grid{grid-template-columns:1fr}.setup-grid .full-field{grid-column:auto}.logo-preview{width:58px;min-width:58px;height:58px}.logo-uploader small{line-height:1.5}.setup-copy p{font-size:12px}.setup-logo{width:43px;height:43px}}.student-class-picker{background:linear-gradient(180deg,var(--surface),var(--surface-2));border-bottom:1px solid var(--line);padding:20px 22px}.picker-heading{align-items:center;gap:10px;margin-bottom:11px;display:flex}.picker-heading>span{background:var(--blue);color:#fff;width:27px;height:27px;box-shadow:0 5px 12px var(--blue);border-radius:9px;place-items:center;font-size:12px;font-weight:900;display:grid}@supports (color:color-mix(in lab, red, red)){.picker-heading>span{box-shadow:0 5px 12px color-mix(in srgb,var(--blue) 24%,transparent)}}.picker-heading strong,.picker-heading small{display:block}.picker-heading strong{font-size:13px}.picker-heading small{color:var(--muted);margin-top:3px;font-size:10px}.grade-tabs{grid-template-columns:repeat(auto-fit,minmax(125px,1fr));gap:8px;margin-bottom:18px;display:grid}.grade-tabs button{border:1px solid var(--line);background:var(--surface);min-height:57px;color:var(--text);text-align:right;cursor:pointer;border-radius:11px;padding:10px 12px;transition:all .18s}.grade-tabs button:hover{border-color:var(--blue)}@supports (color:color-mix(in lab, red, red)){.grade-tabs button:hover{border-color:color-mix(in srgb,var(--blue) 45%,var(--line))}}.grade-tabs button:hover{transform:translateY(-1px)}.grade-tabs button.selected{border-color:var(--blue);background:var(--blue-soft);box-shadow:0 0 0 3px var(--blue)}@supports (color:color-mix(in lab, red, red)){.grade-tabs button.selected{box-shadow:0 0 0 3px color-mix(in srgb,var(--blue) 9%,transparent)}}.grade-tabs strong,.grade-tabs small{display:block}.grade-tabs strong{font-size:12px}.grade-tabs small{color:var(--muted);margin-top:5px;font-size:10px}.grade-tabs button.selected small{color:var(--blue)}.section-picker{border-top:1px dashed var(--line);padding-top:16px;transition:all .2s}.section-picker.disabled{opacity:.48}.section-tabs{grid-template-columns:repeat(7,minmax(52px,1fr));gap:8px;display:grid}.section-tabs button{border:1px solid var(--line);background:var(--surface);height:53px;color:var(--text);cursor:pointer;border-radius:11px;justify-content:center;align-items:center;gap:7px;transition:all .18s;display:flex}.section-tabs button b{font-size:17px}.section-tabs button small{background:var(--surface-2);min-width:20px;height:20px;color:var(--muted);border-radius:10px;place-items:center;padding:0 5px;font-size:10px;display:grid}.section-tabs button:not(:disabled):hover{border-color:var(--blue)}@supports (color:color-mix(in lab, red, red)){.section-tabs button:not(:disabled):hover{border-color:color-mix(in srgb,var(--blue) 45%,var(--line))}}.section-tabs button:not(:disabled):hover{transform:translateY(-1px)}.section-tabs button.selected{border-color:var(--blue);background:var(--blue);color:#fff;box-shadow:0 7px 16px var(--blue)}@supports (color:color-mix(in lab, red, red)){.section-tabs button.selected{box-shadow:0 7px 16px color-mix(in srgb,var(--blue) 25%,transparent)}}.section-tabs button.selected small{color:#fff;background:#fff3}.section-tabs button:disabled{cursor:not-allowed}.student-selection-empty{text-align:center;background:var(--surface);flex-direction:column;justify-content:center;align-items:center;min-height:230px;padding:38px 20px;display:flex}.student-selection-empty>span{background:var(--blue-soft);width:58px;height:58px;color:var(--blue);border-radius:17px;place-items:center;margin-bottom:12px;font-size:28px;display:grid}.student-selection-empty strong{font-size:15px}.student-selection-empty small{color:var(--muted);margin-top:6px;font-size:11px}.selected-class-title{border-bottom:1px solid var(--line);background:var(--surface);justify-content:space-between;align-items:center;padding:14px 20px;display:flex}.selected-class-title span,.selected-class-title strong{display:block}.selected-class-title span{color:var(--muted);font-size:10px}.selected-class-title strong{margin-top:4px;font-size:14px}.selected-class-title>b{color:var(--blue);background:var(--blue-soft);border-radius:20px;padding:7px 11px;font-size:11px}@media (max-width:700px){.student-class-picker{padding:16px}.grade-tabs{grid-template-columns:repeat(2,1fr)}.section-tabs{grid-template-columns:repeat(4,1fr)}.section-tabs button:last-child{grid-column:auto}.selected-class-title{padding:12px 16px}}.class-counts{align-items:center;gap:7px;display:flex}.class-counts b,.class-counts em{border-radius:20px;padding:7px 11px;font-size:11px;font-style:normal}.class-counts b{color:var(--blue);background:var(--blue-soft)}.class-counts em{color:var(--green);background:var(--green-soft);font-weight:800}.select-cell{text-align:center!important;width:46px!important;min-width:46px!important;padding-left:8px!important;padding-right:12px!important}.sequence-cell{color:var(--muted);text-align:center!important;width:38px!important;min-width:38px!important}.sequence-cell b{background:var(--surface-2);width:24px;height:24px;color:var(--text);border-radius:8px;place-items:center;font-size:11px;display:inline-grid}.student-check{cursor:pointer;place-items:center;display:inline-grid}.student-check input{opacity:0;pointer-events:none;position:absolute}.student-check span{background:var(--surface);border:1.5px solid #b9c4d4;border-radius:6px;width:19px;height:19px;transition:all .18s;position:relative}.student-check input:checked+span{border-color:var(--blue);background:var(--blue);box-shadow:0 4px 10px var(--blue)}@supports (color:color-mix(in lab, red, red)){.student-check input:checked+span{box-shadow:0 4px 10px color-mix(in srgb,var(--blue) 25%,transparent)}}.student-check input:checked+span:after{content:"✓";color:#fff;place-items:center;font-size:14px;font-weight:900;display:grid;position:absolute;inset:0}.student-check input:focus-visible+span{outline:3px solid var(--blue)}@supports (color:color-mix(in lab, red, red)){.student-check input:focus-visible+span{outline:3px solid color-mix(in srgb,var(--blue) 20%,transparent)}}.student-check input:focus-visible+span{outline-offset:2px}.live-table tr.student-row-selected td{background:var(--blue-soft)}@supports (color:color-mix(in lab, red, red)){.live-table tr.student-row-selected td{background:color-mix(in srgb,var(--blue-soft) 58%,var(--surface))}}.live-table tr.student-row-selected .sequence-cell b{background:var(--blue);color:#fff}@media (max-width:700px){.selected-class-title{align-items:flex-start;gap:10px}.class-counts{flex-direction:column;align-items:flex-end}.class-counts b,.class-counts em{padding:5px 8px}}.live-table th.select-cell,.live-table td.select-cell{vertical-align:middle!important;border-left:0!important;width:30px!important;min-width:30px!important;padding:8px 2px!important}.live-table th.sequence-cell,.live-table td.sequence-cell{vertical-align:middle!important;border-right:0!important;width:34px!important;min-width:34px!important;padding:8px 2px!important}.live-table .student-check{justify-content:center;align-items:center;width:24px;height:24px;margin:0 auto}.live-table .sequence-cell b{margin:0 auto}@media (max-width:700px){.live-table th.select-cell,.live-table td.select-cell{width:27px!important;min-width:27px!important}.live-table th.sequence-cell,.live-table td.sequence-cell{width:31px!important;min-width:31px!important}}.student-form-alert{color:#a92733;background:#fff1f2;border:1px solid #f3a7ad;border-radius:12px;align-items:flex-start;gap:11px;margin-top:15px;padding:13px 14px;animation:.22s alertIn;display:flex}.dark .student-form-alert{color:#ffadb5;background:#3b2026;border-color:#7c3a45}.student-form-alert>span{color:#fff;background:#e34f5b;border-radius:9px;place-items:center;width:27px;min-width:27px;height:27px;font-size:17px;font-weight:900;display:grid;box-shadow:0 5px 12px #e34f5b38}.student-form-alert strong,.student-form-alert p,.student-form-alert small{display:block}.student-form-alert strong{font-size:13px}.student-form-alert p{margin:4px 0 3px;font-size:12px;font-weight:700;line-height:1.7}.student-form-alert small{color:currentColor;font-size:10px}@supports (color:color-mix(in lab, red, red)){.student-form-alert small{color:color-mix(in srgb,currentColor 72%,transparent)}}@keyframes alertIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}.attendance-page{flex-direction:column;gap:14px;display:flex}.attendance-hero{background:linear-gradient(120deg,var(--surface),var(--green-soft));align-items:center;gap:16px;padding:21px 23px;display:flex}@supports (color:color-mix(in lab, red, red)){.attendance-hero{background:linear-gradient(120deg,var(--surface),color-mix(in srgb,var(--green-soft) 65%,var(--surface)))}}.attendance-hero-icon{color:#fff;background:linear-gradient(145deg,#12945f,#27bd80);border-radius:16px;place-items:center;width:54px;height:54px;font-size:27px;display:grid;box-shadow:0 10px 24px #16a36a38}.attendance-hero>div:nth-child(2){flex:1}.attendance-hero>div:nth-child(2)>span{color:var(--green);font-size:11px;font-weight:900}.attendance-hero h2{margin:4px 0;font-size:21px}.attendance-hero p{color:var(--muted);margin:0;font-size:12px}.attendance-date{border:1px solid var(--line);background:var(--surface);border-radius:12px;min-width:180px;padding:10px 12px}.attendance-date small{color:var(--muted);margin-bottom:6px;font-size:10px;display:block}.attendance-date input{width:100%;color:var(--text);background:0 0;border:0;outline:0;font-size:13px;font-weight:800}.attendance-picker{padding:20px 22px}.attendance-picker .grade-tabs{margin-bottom:18px}.attendance-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:190px;display:flex}.attendance-empty>span{background:var(--green-soft);width:54px;height:54px;color:var(--green);border-radius:16px;place-items:center;margin-bottom:11px;font-size:26px;display:grid}.attendance-empty strong{font-size:15px}.attendance-empty small{color:var(--muted);margin-top:6px;font-size:11px}.attendance-spinner{animation:1s linear infinite attendanceSpin}@keyframes attendanceSpin{to{transform:rotate(360deg)}}.attendance-summary{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.attendance-summary article{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:14px;padding:17px 19px}.attendance-summary span,.attendance-summary strong,.attendance-summary small{display:block}.attendance-summary span{color:var(--muted);font-size:11px}.attendance-summary strong{margin:4px 0;font-size:27px}.attendance-summary small{color:var(--muted);font-size:10px}.attendance-summary .present-summary{border-color:var(--green)}@supports (color:color-mix(in lab, red, red)){.attendance-summary .present-summary{border-color:color-mix(in srgb,var(--green) 22%,var(--line))}}.attendance-summary .present-summary{background:linear-gradient(135deg,var(--surface),var(--green-soft))}.attendance-summary .present-summary strong{color:var(--green)}.attendance-summary .absent-summary{border-color:#e34f5b}@supports (color:color-mix(in lab, red, red)){.attendance-summary .absent-summary{border-color:color-mix(in srgb,#e34f5b 22%,var(--line))}}.attendance-summary .absent-summary{background:linear-gradient(135deg,var(--surface),#fff1f2)}.dark .attendance-summary .absent-summary{background:linear-gradient(135deg,var(--surface),#3b2026)}.attendance-summary .absent-summary strong{color:#df4855}.attendance-register{padding:0;overflow:hidden}.attendance-register-head{border-bottom:1px solid var(--line);background:var(--surface-2);justify-content:space-between;align-items:center;padding:16px 19px;display:flex}.attendance-register-head span,.attendance-register-head strong{display:block}.attendance-register-head span{color:var(--muted);font-size:10px}.attendance-register-head strong{margin-top:4px;font-size:14px}.attendance-register-head>button{border:1px solid var(--green);height:33px}@supports (color:color-mix(in lab, red, red)){.attendance-register-head>button{border:1px solid color-mix(in srgb,var(--green) 35%,var(--line))}}.attendance-register-head>button{background:var(--green-soft);color:var(--green);cursor:pointer;border-radius:9px;padding:0 11px;font-size:11px;font-weight:800}.attendance-register-head>button:disabled{opacity:.45;cursor:not-allowed}.attendance-list{grid-template-columns:repeat(2,1fr);gap:8px;padding:14px;display:grid}.attendance-student{border:1px solid var(--line);background:var(--surface);min-height:62px;color:var(--text);text-align:right;cursor:pointer;border-radius:12px;align-items:center;gap:10px;padding:9px 11px;transition:all .18s;display:flex}.attendance-student:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.attendance-student>b{width:24px;color:var(--muted);text-align:center;font-size:10px}.attendance-student>div:nth-of-type(2){flex:1;min-width:0}.attendance-student strong,.attendance-student small{display:block}.attendance-student strong{white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.attendance-student small{color:var(--muted);margin-top:4px;font-size:9px}.attendance-student>span{border-radius:12px;padding:5px 8px;font-size:10px;font-weight:900}.attendance-student>i{border-radius:8px;place-items:center;width:25px;height:25px;font-size:15px;font-style:normal;font-weight:900;display:grid}.attendance-student.present>span,.attendance-student.present>i{background:var(--green-soft);color:var(--green)}.attendance-student.absent{background:#fff5f6;border-color:#ed8d96;box-shadow:0 0 0 2px #e34f5b12}.dark .attendance-student.absent{background:#3b2026}.attendance-student.absent>span,.attendance-student.absent>i{color:#fff;background:#e34f5b}.attendance-actions{border-top:1px solid var(--line);background:var(--surface-2);justify-content:space-between;align-items:center;gap:15px;padding:14px 18px;display:flex}.attendance-actions>div{align-items:center;gap:8px;display:flex}.attendance-actions>div>span{background:var(--blue-soft);width:22px;height:22px;color:var(--blue);border-radius:50%;place-items:center;font-size:11px;font-weight:900;display:grid}.attendance-actions small{color:var(--muted);font-size:10px}.attendance-actions>button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#e14452,#f06470);border:0;border-radius:10px;height:40px;padding:0 18px;font-size:12px;font-weight:900;box-shadow:0 8px 18px #e144522e}.attendance-actions>button:disabled{opacity:.55;cursor:wait}@media (max-width:760px){.attendance-hero{grid-template-columns:auto 1fr;padding:17px;display:grid}.attendance-hero-icon{width:46px;height:46px}.attendance-date{grid-column:1/-1;width:100%}.attendance-picker{padding:16px}.attendance-summary{grid-template-columns:1fr 1fr}.attendance-summary article:first-child{grid-column:1/-1}.attendance-list{grid-template-columns:1fr;padding:10px}.attendance-student>span{display:none}.attendance-actions{flex-direction:column;align-items:stretch}.attendance-actions>button{width:100%}}.attendance-mode-tabs{grid-template-columns:repeat(4,1fr);gap:9px;padding:8px;display:grid}.attendance-mode-tabs button{min-height:58px;color:var(--text);text-align:right;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:12px;align-items:center;gap:11px;padding:9px 13px;transition:all .18s;display:flex}.attendance-mode-tabs button:hover{background:var(--surface-2)}.attendance-mode-tabs button.selected{border-color:var(--blue)}@supports (color:color-mix(in lab, red, red)){.attendance-mode-tabs button.selected{border-color:color-mix(in srgb,var(--blue) 25%,var(--line))}}.attendance-mode-tabs button.selected{background:var(--blue-soft);color:var(--blue)}.attendance-mode-tabs button.warning-tab.selected{color:#d83f4d;background:#fff0f1;border-color:#f0b1b7}.dark .attendance-mode-tabs button.warning-tab.selected{background:#3b2026}.attendance-mode-tabs button>span{background:var(--surface-2);border-radius:10px;place-items:center;width:34px;min-width:34px;height:34px;font-size:18px;display:grid}.attendance-mode-tabs button.selected>span{background:var(--blue);color:#fff}.attendance-mode-tabs button.warning-tab.selected>span{background:#e34f5b}.attendance-mode-tabs strong,.attendance-mode-tabs small{display:block}.attendance-mode-tabs strong{font-size:12px}.attendance-mode-tabs small{color:var(--muted);margin-top:4px;font-size:10px}.history-badge{color:#d94250;background:#fff3f4;border:1px solid #f2b5ba;border-radius:12px;align-items:center;gap:10px;min-width:170px;padding:9px 11px;display:flex}.dark .history-badge{background:#3b2026}.history-badge>span{color:#fff;background:#e34f5b;border-radius:9px;place-items:center;width:32px;height:32px;display:grid}.history-badge small,.history-badge strong{display:block}.history-badge small{opacity:.75;font-size:10px}.history-badge strong{margin-top:3px;font-size:12px}.absence-history-summary .latest-absence{font-size:19px}.absence-history-panel{padding:0;overflow:hidden}.attendance-register-head>b{color:#df4855;background:#fff0f1;border-radius:18px;padding:7px 11px;font-size:11px}.dark .attendance-register-head>b{background:#3b2026}.absence-history-list{gap:9px;padding:14px;display:grid}.absence-history-card{border:1px solid var(--line);background:var(--surface);border-radius:13px;align-items:center;gap:12px;min-height:76px;padding:10px 12px;transition:all .18s;display:flex}.absence-history-card:hover{box-shadow:var(--shadow);border-color:#efbbc0;transform:translateY(-1px)}.absence-date-box{color:#fff;text-align:center;background:linear-gradient(145deg,#d93d4c,#f05c68);border-radius:11px;flex-direction:column;justify-content:center;align-items:center;width:112px;min-width:112px;min-height:54px;display:flex;box-shadow:0 7px 16px #de414f33}.absence-date-box strong{font-size:12px}.absence-date-box span{direction:rtl;margin-top:4px;font-size:11px}.absence-student-info{flex:1;min-width:0}.absence-student-info strong,.absence-student-info small{display:block}.absence-student-info strong{white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.absence-student-info small{color:var(--muted);margin-top:5px;font-size:10px}.absence-class-tag{text-align:center;border-right:1px solid var(--line);min-width:110px;padding-right:12px}.absence-class-tag span,.absence-class-tag small{display:block}.absence-class-tag span{font-size:11px;font-weight:900}.absence-class-tag small{color:var(--muted);margin-top:4px;font-size:10px}.absence-empty>span{color:#df4855;background:#fff0f1}.dark .absence-empty>span{background:#3b2026}@media (max-width:760px){.attendance-mode-tabs{grid-template-columns:1fr}.history-badge{grid-column:1/-1;width:100%}.absence-history-summary{grid-template-columns:1fr}.attendance-summary.absence-history-summary article:first-child{grid-column:auto}.absence-history-card{grid-template-columns:auto auto 1fr;padding:10px;display:grid}.absence-date-box{grid-row:1/3;width:96px;min-width:96px}.absence-class-tag{border-right:0;border-top:1px solid var(--line);text-align:right;grid-column:2/4;gap:6px;padding:7px 0 0;display:flex}.absence-class-tag span,.absence-class-tag small{display:inline}.absence-student-info strong{font-size:12px}}.calendar-month-picker{color:#d94250;background:#fff3f4;border:1px solid #f2b5ba;border-radius:12px;min-width:190px;padding:10px 12px}.dark .calendar-month-picker{background:#3b2026}.calendar-month-picker small{margin-bottom:6px;font-size:10px;display:block}.calendar-month-picker input{width:100%;color:inherit;background:0 0;border:0;outline:0;font:800 13px inherit}.absence-calendar-panel{padding:0;overflow:hidden}.absence-calendar-head{border-bottom:1px solid var(--line);background:var(--surface-2);justify-content:space-between;align-items:center;gap:15px;padding:16px 19px;display:flex}.absence-calendar-head span,.absence-calendar-head strong{display:block}.absence-calendar-head span{color:var(--muted);font-size:10px}.absence-calendar-head strong{margin-top:4px;font-size:14px}.calendar-legend{color:var(--muted);align-items:center;gap:7px;font-size:10px;display:flex}.calendar-legend>i{background:#e34f5b;border-radius:5px;width:16px;height:16px;box-shadow:0 4px 9px #e34f5b33}.calendar-legend>b{background:var(--blue-soft);color:var(--blue);border-radius:16px;margin-right:8px;padding:6px 9px;font-size:10px}.absence-calendar-scroll{overscroll-behavior-inline:contain;overflow-x:auto}.absence-calendar-table{border-collapse:separate;border-spacing:0;background:var(--surface);width:max-content;min-width:100%;font-size:11px}.absence-calendar-table th,.absence-calendar-table td{text-align:center;border-left:1px solid var(--line);border-bottom:1px solid var(--line);min-width:39px;height:48px;padding:5px}.absence-calendar-table thead th{z-index:2;background:var(--surface-2);height:52px;color:var(--muted);position:sticky;top:0}.absence-calendar-table thead th small,.absence-calendar-table thead th strong{display:block}.absence-calendar-table thead th small{font-size:9px;font-weight:500}.absence-calendar-table thead th strong{color:var(--text);margin-top:3px;font-size:12px}.absence-calendar-table tbody tr:hover td{background:var(--blue-soft)}@supports (color:color-mix(in lab, red, red)){.absence-calendar-table tbody tr:hover td{background:color-mix(in srgb,var(--blue-soft) 35%,var(--surface))}}.absence-calendar-table .calendar-student-column{z-index:3;background:var(--surface);text-align:right;min-width:250px;max-width:250px;position:sticky;right:0}.absence-calendar-table thead .calendar-student-column{z-index:5;background:var(--surface-2);padding-right:16px}.absence-calendar-table tbody .calendar-student-column{align-items:center;gap:8px;padding:6px 11px;display:flex}.calendar-student-column>b{width:20px;color:var(--muted);text-align:center;font-size:10px}.calendar-student-column .student-avatar{width:31px;min-width:31px;height:31px;font-size:10px}.calendar-student-column>span{min-width:0}.calendar-student-column>span strong,.calendar-student-column>span small{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.calendar-student-column>span strong{font-size:11px}.calendar-student-column>span small{color:var(--muted);margin-top:4px;font-size:9px}.absence-calendar-table .calendar-total-column{z-index:3;background:var(--surface);min-width:76px;position:sticky;right:250px;box-shadow:-5px 0 9px #1d2d460a}.absence-calendar-table thead .calendar-total-column{z-index:5;background:var(--surface-2)}.calendar-total-column>strong,.calendar-total-column>small{display:block}.calendar-total-column>strong{background:var(--surface-2);width:26px;height:26px;color:var(--muted);border-radius:8px;place-items:center;margin:auto;font-size:12px;display:grid}.calendar-total-column>strong.has-absence{color:#df4855;background:#fff0f1}.dark .calendar-total-column>strong.has-absence{background:#3b2026}.calendar-total-column>small{color:var(--muted);margin-top:2px;font-size:9px}.calendar-day>i{background:var(--line);border-radius:50%;width:5px;height:5px;margin:auto;display:block}.absence-calendar-table td.absent-day{background:#fff0f1!important}.dark .absence-calendar-table td.absent-day{background:#3b2026!important}.absent-day>span{color:#fff;background:linear-gradient(145deg,#d93d4c,#f05c68);border-radius:8px;place-items:center;width:27px;height:27px;margin:auto;font-size:11px;font-weight:900;display:grid;box-shadow:0 5px 11px #de414f33}@media (max-width:760px){.calendar-month-picker{grid-column:1/-1;width:100%}.absence-calendar-head{flex-direction:column;align-items:flex-start}.absence-calendar-table .calendar-student-column{min-width:190px;max-width:190px}.absence-calendar-table .calendar-total-column{min-width:65px;right:190px}.calendar-student-column .student-avatar{display:none}.absence-calendar-table th,.absence-calendar-table td{min-width:36px}.absence-calendar-table tbody .calendar-student-column{padding:6px 8px}}.warning-rule-badge{border-color:#f0aeb5}.warning-levels{grid-template-columns:repeat(6,1fr);gap:8px;display:grid}.warning-level{background:linear-gradient(145deg,var(--surface),#fff5f6);border:1px solid #f0c2c6;border-radius:13px;align-items:center;gap:8px;min-height:72px;padding:11px;display:flex}.dark .warning-level{background:linear-gradient(145deg,var(--surface),#3b2026)}.warning-level>span{color:#fff;background:#e34f5b;border-radius:9px;place-items:center;width:29px;min-width:29px;height:29px;font-size:13px;font-weight:900;display:grid}.warning-level div{flex:1;min-width:0}.warning-level small,.warning-level strong{display:block}.warning-level small{color:#d33b49;font-size:9px}.warning-level strong{white-space:nowrap;margin-top:4px;font-size:11px}.warning-level>b{color:#d33b49;white-space:nowrap;background:#fff;border-radius:12px;padding:5px 7px;font-size:9px}.dark .warning-level>b{background:#2a1820}.warning-level.level-4,.warning-level.level-5,.warning-level.level-6{border-color:#df8b93}.warning-level.level-4>span,.warning-level.level-5>span,.warning-level.level-6>span{background:#b92534}.warning-alert-banner,.warning-safe-banner{align-items:center;gap:12px;padding:15px 17px;display:flex}.warning-alert-banner{background:linear-gradient(135deg,#fff1f2,var(--surface));color:#a82431;border-color:#f0aeb5}.dark .warning-alert-banner{background:linear-gradient(135deg,#3b2026,var(--surface))}.warning-safe-banner{border-color:var(--green)}@supports (color:color-mix(in lab, red, red)){.warning-safe-banner{border-color:color-mix(in srgb,var(--green) 28%,var(--line))}}.warning-safe-banner{background:linear-gradient(135deg,var(--green-soft),var(--surface));color:var(--green)}.warning-alert-banner>span,.warning-safe-banner>span{color:#fff;border-radius:11px;place-items:center;width:35px;min-width:35px;height:35px;font-size:19px;font-weight:900;display:grid}.warning-alert-banner>span{background:#e34f5b}.warning-safe-banner>span{background:var(--green)}.warning-alert-banner strong,.warning-alert-banner small,.warning-safe-banner strong,.warning-safe-banner small{display:block}.warning-alert-banner strong,.warning-safe-banner strong{font-size:13px}.warning-alert-banner small,.warning-safe-banner small{opacity:.72;margin-top:4px;font-size:10px}.student-warnings-panel{padding:0;overflow:hidden}.student-warnings-head{border-bottom:1px solid var(--line);background:var(--surface-2);justify-content:space-between;align-items:center;padding:16px 19px;display:flex}.student-warnings-head span,.student-warnings-head strong{display:block}.student-warnings-head span{color:var(--muted);font-size:10px}.student-warnings-head strong{margin-top:4px;font-size:14px}.student-warnings-head>b{color:#d43d4b;background:#fff0f1;border-radius:16px;padding:7px 10px;font-size:10px}.dark .student-warnings-head>b{background:#3b2026}.student-warning-list{gap:9px;padding:14px;display:grid}.student-warning-card{background:var(--surface);border:1px solid #efc5c9;border-radius:14px;align-items:center;gap:12px;min-height:92px;padding:10px 12px;display:flex}.warning-level-seal{color:#fff;text-align:center;background:linear-gradient(145deg,#d83d4b,#ef626d);border-radius:11px;flex-direction:column;justify-content:center;align-items:center;width:80px;min-width:80px;height:67px;display:flex;box-shadow:0 7px 15px #d83d4b33}.warning-card-level-4 .warning-level-seal,.warning-card-level-5 .warning-level-seal,.warning-card-level-6 .warning-level-seal{background:linear-gradient(145deg,#a91e2c,#d23a48)}.warning-level-seal span,.warning-level-seal strong,.warning-level-seal small{display:block}.warning-level-seal span{opacity:.8;font-size:9px}.warning-level-seal strong{margin:2px 0;font-size:13px}.warning-level-seal small{font-size:9px}.warning-student-copy{flex:1;min-width:0}.warning-student-copy>strong,.warning-student-copy>small{display:block}.warning-student-copy>strong{font-size:13px}.warning-student-copy>small{color:var(--muted);margin-top:4px;font-size:9px}.warning-student-copy p{color:#9e2530;background:#fff3f4;border-radius:8px;margin:8px 0 0;padding:7px 9px;font-size:10px;line-height:1.6}.dark .warning-student-copy p{color:#ffadb5;background:#3b2026}.warning-student-copy p em{font-style:normal;font-weight:900}.warning-progress{text-align:center;width:180px;min-width:180px}.warning-progress>div{background:var(--surface-2);border-radius:6px;height:7px;overflow:hidden}.warning-progress>div>span{border-radius:inherit;background:linear-gradient(90deg,#f26a75,#bd2937);height:100%;display:block}.warning-progress strong,.warning-progress small{display:block}.warning-progress strong{color:#d13b49;margin-top:6px;font-size:12px}.warning-progress small{color:var(--muted);margin-top:3px;font-size:9px}.warning-empty>span{color:#df4855;background:#fff0f1}@media (max-width:1050px){.warning-levels{grid-template-columns:repeat(3,1fr)}}@media (max-width:760px){.warning-levels{grid-template-columns:repeat(2,1fr)}.student-warning-card{grid-template-columns:auto auto 1fr;display:grid}.warning-level-seal{grid-row:1/3}.warning-student-copy{grid-column:2/4}.warning-progress{grid-column:1/4;width:100%}.warning-alert-banner,.warning-safe-banner{align-items:flex-start}.warning-level>b{display:none}}.attendance-warning-notice{align-items:center;gap:12px;min-height:66px;padding:11px 14px;transition:all .2s;display:flex}.attendance-warning-notice>span{color:#fff;border-radius:11px;place-items:center;width:37px;min-width:37px;height:37px;font-size:19px;font-weight:900;display:grid}.attendance-warning-notice>div{flex:1}.attendance-warning-notice strong,.attendance-warning-notice small{display:block}.attendance-warning-notice strong{font-size:12px}.attendance-warning-notice small{opacity:.72;margin-top:4px;font-size:10px}.attendance-warning-notice.has-pending{background:linear-gradient(135deg,#fff1f2,var(--surface));color:#a82431;border-color:#f0aeb5}.dark .attendance-warning-notice.has-pending{background:linear-gradient(135deg,#3b2026,var(--surface))}.attendance-warning-notice.has-pending>span{background:#e34f5b;box-shadow:0 6px 14px #e34f5b38}.attendance-warning-notice.all-notified{border-color:var(--green)}@supports (color:color-mix(in lab, red, red)){.attendance-warning-notice.all-notified{border-color:color-mix(in srgb,var(--green) 28%,var(--line))}}.attendance-warning-notice.all-notified{background:linear-gradient(135deg,var(--green-soft),var(--surface));color:var(--green)}.attendance-warning-notice.all-notified>span{background:var(--green)}.attendance-warning-notice>button{color:#fff;cursor:pointer;border:0;border-radius:10px;height:37px;padding:0 14px;font-size:11px;font-weight:900}.attendance-warning-notice.has-pending>button{background:#e34f5b;box-shadow:0 6px 14px #e34f5b2e}.attendance-warning-notice.all-notified>button{background:var(--green)}.warning-notify-button{color:#fff;cursor:pointer;border:0;border-radius:10px;min-width:103px;height:39px;font-size:11px;font-weight:900;transition:all .2s}.warning-notify-button.pending{background:linear-gradient(135deg,#df3f4d,#ef5b67);box-shadow:0 6px 14px #df3f4d33}.warning-notify-button.notified{cursor:default;background:linear-gradient(135deg,#11925e,#28b978);box-shadow:0 6px 14px #11925e2e}.warning-notify-button:disabled{opacity:1}.student-warning-card.warning-notified{border-color:var(--green)}@supports (color:color-mix(in lab, red, red)){.student-warning-card.warning-notified{border-color:color-mix(in srgb,var(--green) 28%,var(--line))}}.student-warning-card.warning-notified{background:linear-gradient(135deg,var(--surface),var(--green-soft))}.warning-notified .warning-level-seal{background:linear-gradient(145deg,#108a59,#27b777);box-shadow:0 7px 15px #108a592e}.warning-notified .warning-student-copy p{background:var(--green-soft);color:#08784b}.dark .warning-notified .warning-student-copy p{color:#89efbd}@media (max-width:760px){.attendance-warning-notice{flex-wrap:wrap;align-items:flex-start}.attendance-warning-notice>div{min-width:calc(100% - 55px)}.attendance-warning-notice>button{width:100%}.student-warning-card .warning-notify-button{grid-column:1/4;width:100%}}.attendance-mode-tabs button.leave-tab.selected{color:#a56800;background:#fff8e8;border-color:#f1c87a}.dark .attendance-mode-tabs button.leave-tab.selected{color:#ffd47f;background:#352b18}.attendance-mode-tabs button.leave-tab.selected>span{color:#fff;background:linear-gradient(145deg,#d99a20,#f0bd4e)}.leave-month-picker{color:#9a6500;background:#fff9ea;border-color:#efd18f}.dark .leave-month-picker{color:#ffd47f;background:#352b18}.leave-summary .leave-total{background:linear-gradient(145deg,var(--surface),#fff9e9);border-color:#efd18f}.dark .leave-summary .leave-total{background:linear-gradient(145deg,var(--surface),#352b18)}.leave-entry-panel{padding:0;overflow:hidden}.leave-entry-head{border-bottom:1px solid var(--line);background:var(--surface-2);justify-content:space-between;align-items:center;gap:12px;padding:15px 18px;display:flex}.leave-entry-head span,.leave-entry-head strong{display:block}.leave-entry-head span{color:var(--muted);font-size:10px}.leave-entry-head strong{margin-top:4px;font-size:14px}.leave-entry-head>b{color:#9a6500;background:#fff4d8;border-radius:18px;padding:7px 10px;font-size:10px}.dark .leave-entry-head>b{color:#ffd47f;background:#352b18}.leave-entry-grid{grid-template-columns:1.5fr .75fr 1fr 1.5fr auto;align-items:end;gap:10px;padding:16px 18px;display:grid}.leave-entry-grid label small{color:var(--muted);margin-bottom:6px;font-size:10px;font-weight:800;display:block}.leave-entry-grid input,.leave-entry-grid select{border:1px solid var(--line);background:var(--surface-2);width:100%;height:42px;color:var(--text);border-radius:10px;outline:none;padding:0 11px;font:700 11px inherit}.leave-entry-grid input:focus,.leave-entry-grid select:focus{border-color:#d99a20;box-shadow:0 0 0 3px #d99a201a}.leave-entry-grid>button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#c8850d,#efb941);border:0;border-radius:10px;height:42px;padding:0 17px;font-size:11px;font-weight:900;box-shadow:0 7px 16px #c8850d2e}.leave-entry-grid>button:disabled{opacity:.5;cursor:not-allowed}.leave-calendar-legend{color:var(--muted);align-items:center;gap:12px;font-size:10px;display:flex}.leave-calendar-legend span{align-items:center;gap:5px;display:flex}.leave-calendar-legend i{border-radius:5px;width:15px;height:15px}.leave-calendar-legend .leave-dot{background:#e8a72a}.leave-calendar-legend .license-dot{background:#3888df}.leave-calendar-legend>b{background:var(--blue-soft);color:var(--blue);border-radius:16px;padding:6px 9px;font-size:10px}.calendar-total-column>strong.has-leave{color:#a56800;background:#fff3d5}.dark .calendar-total-column>strong.has-leave{color:#ffd47f;background:#352b18}.leave-calendar-table td.leave-day{background:#fff8e8!important}.leave-calendar-table td.license-day{background:#eef7ff!important}.dark .leave-calendar-table td.leave-day{background:#352b18!important}.dark .leave-calendar-table td.license-day{background:#152b43!important}.leave-calendar-table td.leave-day>span,.leave-calendar-table td.license-day>span{color:#fff;border-radius:8px;place-items:center;width:27px;height:27px;margin:auto;font-size:11px;font-weight:900;display:grid}.leave-calendar-table td.leave-day>span{background:linear-gradient(145deg,#cf8a14,#efbd4f);box-shadow:0 5px 11px #cf8a1433}.leave-calendar-table td.license-day>span{background:linear-gradient(145deg,#2475cc,#4ba0eb);box-shadow:0 5px 11px #2475cc33}.leave-empty>span{color:#b47608;background:#fff4d8}.dark .leave-empty>span{color:#ffd47f;background:#352b18}@media (max-width:1100px){.attendance-mode-tabs{grid-template-columns:repeat(2,1fr)}.leave-entry-grid{grid-template-columns:1fr 1fr}.leave-note,.leave-entry-grid>button{grid-column:1/-1}}@media (max-width:760px){.attendance-mode-tabs{grid-template-columns:1fr}.leave-entry-head{flex-direction:column;align-items:flex-start}.leave-entry-grid{grid-template-columns:1fr}.leave-note,.leave-entry-grid>button{grid-column:auto}.leave-calendar-legend{flex-wrap:wrap;align-items:flex-start}}.faculty-page{flex-direction:column;gap:14px;display:flex}.faculty-hero{background:radial-gradient(circle at 8% 10%,#7b52d621,transparent 30%),linear-gradient(125deg,var(--surface),var(--blue-soft));align-items:center;gap:16px;padding:22px;display:flex}@supports (color:color-mix(in lab, red, red)){.faculty-hero{background:radial-gradient(circle at 8% 10%,#7b52d621,transparent 30%),linear-gradient(125deg,var(--surface),color-mix(in srgb,var(--blue-soft) 54%,var(--surface)))}}.faculty-hero-icon{color:#fff;background:linear-gradient(145deg,#6845c7,#8c6ae3);border-radius:17px;place-items:center;width:57px;min-width:57px;height:57px;font-size:28px;display:grid;box-shadow:0 11px 25px #6845c73d}.faculty-hero>div:nth-child(2){flex:1}.faculty-hero>div:nth-child(2)>span{color:var(--purple);font-size:10px;font-weight:900}.faculty-hero h2{margin:4px 0;font-size:22px}.faculty-hero p{color:var(--muted);margin:0;font-size:11px}.faculty-hero-stats{align-items:center;gap:8px;display:flex}.faculty-hero-stats>div{border:1px solid var(--purple);min-width:82px;padding:10px 12px}@supports (color:color-mix(in lab, red, red)){.faculty-hero-stats>div{border:1px solid color-mix(in srgb,var(--purple) 20%,var(--line))}}.faculty-hero-stats>div{background:var(--surface);border-radius:12px}@supports (color:color-mix(in lab, red, red)){.faculty-hero-stats>div{background:color-mix(in srgb,var(--surface) 84%,transparent)}}.faculty-hero-stats>div{text-align:center}.faculty-hero-stats strong,.faculty-hero-stats small{display:block}.faculty-hero-stats strong{color:var(--purple);font-size:20px}.faculty-hero-stats small{color:var(--muted);margin-top:3px;font-size:9px}.faculty-tabs{grid-template-columns:repeat(3,1fr);gap:9px;padding:8px;display:grid}.faculty-tabs button{min-height:62px;color:var(--text);text-align:right;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:12px;align-items:center;gap:11px;padding:9px 13px;transition:all .18s;display:flex}.faculty-tabs button:hover{background:var(--surface-2)}.faculty-tabs button.selected{border-color:var(--purple)}@supports (color:color-mix(in lab, red, red)){.faculty-tabs button.selected{border-color:color-mix(in srgb,var(--purple) 28%,var(--line))}}.faculty-tabs button.selected{background:var(--purple-soft);color:var(--purple)}.faculty-tabs button>span{background:var(--surface-2);border-radius:11px;place-items:center;width:36px;min-width:36px;height:36px;font-size:18px;display:grid}.faculty-tabs button.selected>span{background:var(--purple);color:#fff}.faculty-tabs strong,.faculty-tabs small{display:block}.faculty-tabs strong{font-size:12px}.faculty-tabs small{color:var(--muted);margin-top:4px;font-size:9px}.faculty-summary-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.faculty-summary-grid article{border:1px solid var(--line);background:var(--surface);min-height:94px;box-shadow:var(--shadow);border-radius:14px;padding:16px 18px}.faculty-summary-grid span,.faculty-summary-grid strong,.faculty-summary-grid small{display:block}.faculty-summary-grid span{color:var(--muted);font-size:10px}.faculty-summary-grid strong{color:var(--purple);margin:5px 0;font-size:25px}.faculty-summary-grid small{color:var(--muted);font-size:9px}.faculty-table-panel{padding:0;overflow:hidden}.faculty-panel-head{border-bottom:1px solid var(--line);background:var(--surface-2);justify-content:space-between;align-items:center;gap:14px;padding:16px 19px;display:flex}.faculty-panel-head span,.faculty-panel-head strong{display:block}.faculty-panel-head span{color:var(--purple);font-size:9px}.faculty-panel-head strong{margin-top:4px;font-size:14px}.faculty-panel-head>b{background:var(--purple-soft);color:var(--purple);border-radius:16px;padding:7px 10px;font-size:9px}.faculty-table-scroll{overflow:auto}.faculty-table{min-width:850px}.faculty-table th{background:var(--surface-2);height:43px}.faculty-table td{height:54px}.faculty-table td:first-child{display:table-cell}.faculty-day{font-weight:900}.period-badge{background:var(--blue-soft);width:29px;height:29px;color:var(--blue);border-radius:9px;place-items:center;display:grid}.subject-chip{border-radius:9px;padding:6px 9px;font-size:10px;font-weight:900;display:inline-block}.subject-1{background:var(--blue-soft);color:var(--blue)}.subject-2{background:var(--green-soft);color:var(--green)}.subject-3{background:var(--orange-soft);color:var(--orange)}.subject-4{background:var(--purple-soft);color:var(--purple)}.subject-5{color:#d84250;background:#fff0f1}.dark .subject-5{background:#3b2026}.faculty-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:210px;padding:30px;display:flex}.faculty-empty>span{background:var(--purple-soft);width:52px;height:52px;color:var(--purple);border-radius:16px;place-items:center;margin-bottom:10px;font-size:24px;display:grid}.faculty-empty strong{font-size:14px}.faculty-empty small{color:var(--muted);margin-top:5px;font-size:10px}.exam-summary article:first-child{border-color:var(--orange)}@supports (color:color-mix(in lab, red, red)){.exam-summary article:first-child{border-color:color-mix(in srgb,var(--orange) 28%,var(--line))}}.exam-summary article:first-child{background:linear-gradient(145deg,var(--surface),var(--orange-soft))}.exam-summary article:first-child strong{color:var(--orange)}.exam-cards{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.exam-card{align-items:center;gap:14px;min-height:112px;padding:14px 17px;display:flex;position:relative;overflow:hidden}.exam-date-box{color:#fff;background:linear-gradient(145deg,#6a47c9,#9371e7);border-radius:13px;flex-direction:column;justify-content:center;align-items:center;width:74px;min-width:74px;height:78px;display:flex;box-shadow:0 8px 18px #6a47c933}.exam-date-box small,.exam-date-box strong,.exam-date-box span{display:block}.exam-date-box small{opacity:.8;font-size:9px}.exam-date-box strong{font-size:24px;line-height:1.05}.exam-date-box span{font-size:9px}.exam-copy{flex:1}.exam-copy>span{color:var(--purple);font-size:9px}.exam-copy h3{margin:4px 0;font-size:15px}.exam-copy p{color:var(--muted);margin:0;font-size:9px}.exam-meta{gap:7px;min-width:90px;display:grid}.exam-meta span{color:var(--muted);align-items:center;gap:6px;font-size:10px;display:flex}.exam-meta b{background:var(--surface-2);border-radius:7px;place-items:center;width:23px;height:23px;font-size:11px;display:grid}.exam-card>i{width:4px;position:absolute;top:0;bottom:0;right:0}.exam-card>i.tone-1{background:var(--blue)}.exam-card>i.tone-2{background:var(--green)}.exam-card>i.tone-3{background:var(--orange)}.exam-card>i.tone-4{background:var(--purple)}.faculty-notices-layout{grid-template-columns:.9fr 1.4fr;align-items:start;gap:14px;display:grid}.notice-compose,.notices-log{padding:0;overflow:hidden}.notice-form-body{gap:12px;padding:17px;display:grid}.notice-target-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.notice-form-body label small{color:var(--muted);margin-bottom:6px;font-size:10px;font-weight:800;display:block}.notice-form-body input,.notice-form-body select,.notice-form-body textarea{border:1px solid var(--line);background:var(--surface-2);width:100%;color:var(--text);resize:vertical;border-radius:10px;outline:none;padding:10px 11px;font:700 11px inherit}.notice-form-body input,.notice-form-body select{height:42px}.notice-form-body input:focus,.notice-form-body select:focus,.notice-form-body textarea:focus{border-color:var(--purple);box-shadow:0 0 0 3px var(--purple)}@supports (color:color-mix(in lab, red, red)){.notice-form-body input:focus,.notice-form-body select:focus,.notice-form-body textarea:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--purple) 11%,transparent)}}.notice-audience{background:var(--purple-soft);color:var(--purple);border-radius:11px;align-items:center;gap:10px;padding:10px 12px;display:flex}.notice-audience>span{background:var(--purple);color:#fff;border-radius:9px;place-items:center;width:30px;height:30px;display:grid}.notice-audience strong,.notice-audience small{display:block}.notice-audience strong{font-size:11px}.notice-audience small{opacity:.75;margin-top:3px;font-size:9px}.notice-form-body>button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#6845c7,#936fe5);border:0;border-radius:10px;height:43px;font-size:11px;font-weight:900;box-shadow:0 8px 18px #6845c738}.notice-form-body>button:disabled{opacity:.55;cursor:wait}.notice-list{gap:9px;max-height:580px;padding:13px;display:grid;overflow:auto}.notice-list>article{border:1px solid var(--line);background:var(--surface);border-radius:12px;align-items:flex-start;gap:10px;padding:12px;display:flex}.notice-number{color:#fff;border-radius:10px;place-items:center;width:33px;min-width:33px;height:33px;font-size:11px;font-weight:900;display:grid}.notice-number.tone-1{background:#477ee4}.notice-number.tone-2{background:#18a36c}.notice-number.tone-3{background:#d18320}.notice-number.tone-4{background:#8356d1}.notice-number.tone-5{background:#d64c65}.notice-copy{flex:1;min-width:0}.notice-copy>div{justify-content:space-between;align-items:center;gap:10px;display:flex}.notice-copy strong{font-size:12px}.notice-copy time{color:var(--muted);white-space:nowrap;font-size:8px}.notice-copy p{color:var(--text);margin:6px 0;font-size:10px;line-height:1.7}.notice-copy>span{background:var(--blue-soft);color:var(--blue);border-radius:8px;padding:5px 7px;font-size:8px;font-weight:800;display:inline-block}@media (max-width:1050px){.faculty-hero{flex-wrap:wrap;align-items:flex-start}.faculty-hero-stats{width:100%}.faculty-hero-stats>div{flex:1}.faculty-notices-layout,.exam-cards{grid-template-columns:1fr}}@media (max-width:760px){.faculty-hero{grid-template-columns:auto 1fr;padding:17px;display:grid}.faculty-hero-stats{grid-column:1/-1}.faculty-tabs,.faculty-summary-grid{grid-template-columns:1fr}.faculty-tabs button{min-height:55px}.exam-card{flex-wrap:wrap;align-items:flex-start}.exam-meta{width:100%;display:flex}.notice-target-grid{grid-template-columns:1fr}.faculty-panel-head{flex-direction:column;align-items:flex-start}.faculty-hero-stats>div{min-width:0;padding:8px}.faculty-hero-stats strong{font-size:17px}}.student-home-page{flex-direction:column;gap:14px;display:flex}.student-home-identity{background:radial-gradient(circle at 8% 15%,#3d75e524,transparent 32%),linear-gradient(125deg,var(--surface),var(--blue-soft));align-items:center;gap:15px;padding:20px 22px;display:flex}@supports (color:color-mix(in lab, red, red)){.student-home-identity{background:radial-gradient(circle at 8% 15%,#3d75e524,transparent 32%),linear-gradient(125deg,var(--surface),color-mix(in srgb,var(--blue-soft) 55%,var(--surface)))}}.student-home-avatar{color:#fff;background:linear-gradient(145deg,#2c67db,#4c8bf4);border-radius:18px;place-items:center;width:60px;min-width:60px;height:60px;font-size:18px;font-weight:900;display:grid;box-shadow:0 11px 25px #2c67db38}.student-home-identity>div:nth-child(2){flex:1}.student-home-identity>div:nth-child(2)>span{color:var(--blue);font-size:10px;font-weight:900}.student-home-identity h2{margin:4px 0;font-size:21px}.student-home-identity p{color:var(--muted);margin:0;font-size:10px}.student-home-average{border:1px solid var(--green);min-width:112px;padding:11px 15px}@supports (color:color-mix(in lab, red, red)){.student-home-average{border:1px solid color-mix(in srgb,var(--green) 25%,var(--line))}}.student-home-average{background:var(--surface);text-align:center;border-radius:13px}.student-home-average small,.student-home-average strong,.student-home-average span{display:block}.student-home-average small{color:var(--muted);font-size:9px}.student-home-average strong{color:var(--green);margin:3px 0;font-size:25px}.student-home-average span{color:var(--green);font-size:9px;font-weight:900}.student-notices-section,.student-week-section,.student-exams-section,.student-grades-section,.student-absence-section{padding:0;overflow:hidden}.student-section-heading{border-bottom:1px solid var(--line);background:var(--surface-2);justify-content:space-between;align-items:center;gap:15px;padding:15px 18px;display:flex}.student-section-heading>div{align-items:center;gap:10px;display:flex}.section-order{color:#fff;border-radius:11px;place-items:center;width:35px;height:35px;font-size:14px;font-weight:900;display:grid}.order-purple{background:linear-gradient(145deg,#7150c9,#9876e8)}.order-blue{background:linear-gradient(145deg,#2765d9,#4a8cf4)}.order-orange{background:linear-gradient(145deg,#c97818,#eea33a)}.order-green{background:linear-gradient(145deg,#0f925d,#2abd7c)}.order-red{background:linear-gradient(145deg,#cf3545,#ef5966)}.student-section-heading small,.student-section-heading h3,.student-section-heading p{display:block}.student-section-heading small{color:var(--muted);font-size:8px}.student-section-heading h3{margin:2px 0;font-size:14px}.student-section-heading p{color:var(--muted);margin:0;font-size:9px}.student-section-heading>b{background:var(--blue-soft);color:var(--blue);white-space:nowrap;border-radius:16px;padding:7px 10px;font-size:9px}.student-notice-grid{grid-template-columns:repeat(2,1fr);gap:9px;padding:13px;display:grid}.student-notice-grid>article{border:1px solid var(--line);background:var(--surface);border-radius:12px;align-items:flex-start;gap:10px;padding:12px;display:flex}.student-notice-icon{color:#fff;border-radius:10px;place-items:center;width:34px;min-width:34px;height:34px;display:grid}.student-notice-icon.tone-1{background:#477ee4}.student-notice-icon.tone-2{background:#18a36c}.student-notice-icon.tone-3{background:#d18320}.student-notice-icon.tone-4{background:#8356d1}.student-notice-icon.tone-5{background:#d64c65}.student-notice-grid article>div:last-child{flex:1;min-width:0}.student-notice-grid article>div>div{justify-content:space-between;align-items:center;gap:8px;display:flex}.student-notice-grid strong{font-size:11px}.student-notice-grid time{color:var(--muted);white-space:nowrap;font-size:8px}.student-notice-grid p{color:var(--text);margin:5px 0;font-size:9px;line-height:1.7}.student-notice-grid article>div>small{color:var(--purple);background:var(--purple-soft);border-radius:7px;padding:4px 6px;font-size:8px;display:inline-block}.student-section-empty{text-align:center;min-height:145px;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;font-size:11px;display:flex}.student-section-empty>span{background:var(--purple-soft);width:42px;height:42px;color:var(--purple);border-radius:13px;place-items:center;margin-bottom:8px;font-size:20px;display:grid}.student-section-empty strong{color:var(--text);font-size:12px}.student-section-empty small{margin-top:4px;font-size:9px}.student-week-scroll{overflow:auto}.student-week-table{min-width:720px}.student-week-table th{background:var(--surface-2);height:42px}.student-week-table td{height:49px}.student-week-table td:first-child{display:table-cell}.student-week-table tbody tr:nth-child(3n){border-bottom:2px solid var(--line)}.student-day-badge{text-align:center;background:var(--blue-soft);min-width:68px;color:var(--blue);border-radius:9px;padding:6px 8px;font-size:9px;font-weight:900;display:inline-block}.student-exam-grid{grid-template-columns:repeat(2,1fr);gap:10px;padding:13px;display:grid}.student-exam-grid>article{border:1px solid var(--line);background:var(--surface);border-radius:12px;align-items:center;gap:11px;padding:11px;display:flex}.student-exam-date{color:#fff;background:linear-gradient(145deg,#c97818,#efa63e);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;width:62px;min-width:62px;height:66px;display:flex}.student-exam-date small,.student-exam-date strong,.student-exam-date span{display:block}.student-exam-date small,.student-exam-date span{font-size:8px}.student-exam-date strong{font-size:20px;line-height:1.1}.student-exam-grid article>div:last-child small,.student-exam-grid article>div:last-child strong,.student-exam-grid article>div:last-child span{display:block}.student-exam-grid article>div:last-child small{color:var(--orange);font-size:8px}.student-exam-grid article>div:last-child strong{margin:4px 0;font-size:12px}.student-exam-grid article>div:last-child span{color:var(--muted);font-size:9px}.student-grade-grid{grid-template-columns:repeat(3,1fr);gap:10px;padding:13px;display:grid}.student-grade-grid>article{border:1px solid var(--line);background:var(--surface);border-radius:12px;padding:13px}.student-grade-grid article>div:first-child{align-items:center;gap:8px;display:flex}.grade-subject-icon{color:#fff;border-radius:9px;place-items:center;width:29px;height:29px;font-size:12px;display:grid}.grade-subject-icon.tone-1{background:#477ee4}.grade-subject-icon.tone-2{background:#18a36c}.grade-subject-icon.tone-3{background:#d18320}.grade-subject-icon.tone-4{background:#8356d1}.grade-subject-icon.tone-5{background:#d64c65}.student-grade-grid article>div strong{font-size:10px}.student-grade-grid article>b{margin:10px 0 6px;font-size:20px;display:block}.student-grade-grid article>b small{color:var(--muted);font-size:8px}.student-grade-bar{background:var(--surface-2);border-radius:6px;height:6px;overflow:hidden}.student-grade-bar span{border-radius:inherit;background:linear-gradient(90deg,#2f6dde,#53a0f8);height:100%;display:block}.student-grade-grid article>small{color:var(--green);margin-top:6px;font-size:8px;font-weight:900;display:block}.student-absence-layout{grid-template-columns:220px 1fr;gap:14px;padding:13px;display:grid}.student-absence-total{text-align:center;background:linear-gradient(145deg,#fff4f5,#fff);border:1px solid #f0c3c7;border-radius:13px;padding:18px}.dark .student-absence-total{background:linear-gradient(145deg,#3b2026,var(--surface))}.student-absence-total>span,.student-absence-total>strong,.student-absence-total>small{display:block}.student-absence-total>span{color:#d13d4a;font-size:9px}.student-absence-total>strong{color:#df4654;margin:5px 0;font-size:39px}.student-absence-total>small{color:var(--muted);font-size:8px}.student-absence-total>div{background:var(--surface-2);border-radius:7px;height:7px;margin-top:14px;overflow:hidden}.student-absence-total i{border-radius:inherit;background:linear-gradient(90deg,#ef6b76,#c72e3d);height:100%;display:block}.student-absence-list{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.student-absence-list>article{background:var(--surface);border:1px solid #f0c7ca;border-radius:11px;align-items:center;gap:9px;padding:10px 11px;display:flex}.student-absence-list>article>b{color:#d94451;background:#fff0f1;border-radius:8px;place-items:center;width:25px;height:25px;font-size:9px;display:grid}.dark .student-absence-list>article>b{background:#3b2026}.student-absence-list article>div{flex:1}.student-absence-list strong,.student-absence-list small{display:block}.student-absence-list strong{font-size:10px}.student-absence-list small{color:var(--muted);margin-top:3px;font-size:8px}.student-absence-list article>span{color:#fff;background:#e34f5b;border-radius:8px;padding:5px 7px;font-size:8px}.student-absence-safe{border:1px dashed var(--green);grid-column:1/-1;justify-content:center;align-items:center;gap:10px;min-height:120px;display:flex}@supports (color:color-mix(in lab, red, red)){.student-absence-safe{border:1px dashed color-mix(in srgb,var(--green) 30%,var(--line))}}.student-absence-safe{background:var(--green-soft);border-radius:12px}.student-absence-safe>span{background:var(--green);color:#fff;border-radius:11px;place-items:center;width:35px;height:35px;display:grid}.student-absence-safe strong,.student-absence-safe small{display:block}.student-absence-safe strong{font-size:11px}.student-absence-safe small{color:var(--muted);margin-top:3px;font-size:9px}@media (max-width:900px){.student-grade-grid{grid-template-columns:repeat(2,1fr)}.student-absence-layout{grid-template-columns:1fr}.student-absence-total{text-align:right;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;display:grid}.student-absence-total>div{grid-column:1/-1;margin-top:5px}.student-absence-total>strong{font-size:28px}.student-absence-total>small{text-align:left}}@media (max-width:760px){.student-home-identity{grid-template-columns:auto 1fr;padding:16px;display:grid}.student-home-average{text-align:right;grid-column:1/-1;grid-template-columns:1fr auto 1fr;align-items:center;display:grid}.student-home-average strong{font-size:20px}.student-home-average span{text-align:left}.student-section-heading{align-items:flex-start}.student-section-heading>b{display:none}.student-notice-grid,.student-exam-grid,.student-grade-grid,.student-absence-list{grid-template-columns:1fr}.student-section-heading p{display:none}.student-home-identity h2{font-size:17px}}.all-warnings-panel{padding:0;overflow:hidden}.all-warnings-scroll{overscroll-behavior-inline:contain;overflow-x:auto}.all-warnings-table{table-layout:fixed;border-collapse:separate;border-spacing:0;background:var(--surface);width:100%;min-width:1335px;font-size:11px}.all-warnings-table col.col-sequence{width:48px}.all-warnings-table col.col-student{width:255px}.all-warnings-table col.col-class{width:135px}.all-warnings-table col.col-total{width:88px}.all-warnings-table col.col-warning{width:112px}.all-warnings-table col.col-action{width:125px}.all-warnings-table th,.all-warnings-table td{text-align:center;vertical-align:middle;border-left:1px solid var(--line);border-bottom:1px solid var(--line);height:76px;padding:9px 7px;overflow:hidden}.all-warnings-table thead th{background:var(--surface-2);height:66px;color:var(--muted);font-size:10px}.all-warnings-table thead th small,.all-warnings-table thead th strong,.all-warnings-table thead th span{display:block}.all-warnings-table thead th strong{color:var(--text);margin:3px 0;font-size:11px}.all-warnings-table thead th span{color:#df4855;font-size:9px}.all-warnings-table tbody tr{transition:all .18s}.all-warnings-table tbody tr:hover td{background:var(--blue-soft)}@supports (color:color-mix(in lab, red, red)){.all-warnings-table tbody tr:hover td{background:color-mix(in srgb,var(--blue-soft) 30%,var(--surface))}}.all-warnings-table tbody tr.pending-row{box-shadow:inset -4px 0 #e34f5b}.all-warnings-table tbody tr.notified-row{box-shadow:inset -4px 0 var(--green)}.all-warnings-table td>strong,.all-warnings-table td>small{display:block}.all-warnings-table td>strong{font-size:11px}.all-warnings-table td>small{color:var(--muted);margin-top:4px;font-size:9px}.all-warnings-table .warning-sequence{color:var(--muted);font-weight:900}.all-warnings-table .warning-name-column{text-align:right}.warning-name-content{align-items:center;gap:9px;min-width:0;display:flex}.warning-name-content .student-avatar{width:34px;min-width:34px;height:34px;font-size:10px}.warning-name-content>span{min-width:0}.warning-name-content>span strong,.warning-name-content>span small{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.warning-name-content>span strong{font-size:11px}.warning-name-content>span small{color:var(--muted);margin-top:4px;font-size:9px}.total-absence-badge{color:#df4855;background:#fff0f1;border-radius:10px;place-items:center;width:34px;height:34px;margin:auto;font-size:14px;display:grid}.dark .total-absence-badge{background:#3b2026}.warning-table-cell{border-radius:10px;grid-template-columns:32px 1fr;align-items:center;width:96px;min-height:58px;margin:auto;padding:6px;display:grid}.warning-table-cell>div{border-left:1px solid;padding-left:5px}.warning-table-cell strong,.warning-table-cell small,.warning-table-cell time{display:block}.warning-table-cell strong{font-size:14px}.warning-table-cell small{margin-top:1px;font-size:9px}.warning-table-cell time{direction:rtl;font-size:9px;font-weight:900;line-height:1.45}.warning-table-cell.delivered{background:var(--green-soft);color:var(--green);border:1px solid var(--green)}@supports (color:color-mix(in lab, red, red)){.warning-table-cell.delivered{border:1px solid color-mix(in srgb,var(--green) 25%,transparent)}}.warning-table-cell.due{color:#df4855;background:#fff0f1;border:1px solid #f2b5ba;box-shadow:0 4px 10px #df48551a}.dark .warning-table-cell.due{background:#3b2026}.warning-table-cell.future{background:var(--surface-2);color:var(--muted);opacity:.65;flex-direction:column;justify-content:center;display:flex}.warning-table-cell.future>div{border:0;padding:0}.warning-table-cell.future time{margin-top:4px}.all-warnings-table .warning-notify-button{min-width:100px}@media (max-width:760px){.all-warnings-table{min-width:1260px}.all-warnings-table col.col-student{width:215px}.warning-name-content .student-avatar{display:none}.all-warnings-table th,.all-warnings-table td{padding:7px 5px}.warning-table-cell{width:92px}}.calendar-student-column>b{min-width:20px}.calendar-student-link{min-width:0;color:var(--text);text-align:right;cursor:pointer;background:0 0;border:0;border-radius:9px;flex:1;align-items:center;gap:8px;padding:3px;transition:all .18s;display:flex}.calendar-student-link:hover,.calendar-student-link:focus-visible{background:var(--blue-soft);color:var(--blue);outline:none}.calendar-student-link .student-avatar{width:31px;min-width:31px;height:31px;font-size:10px}.calendar-student-link>span{flex:1;min-width:0}.calendar-student-link>span strong,.calendar-student-link>span small{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.calendar-student-link>span strong{font-size:11px}.calendar-student-link>span small{color:var(--muted);margin-top:4px;font-size:9px}.calendar-student-link>i{color:var(--blue);opacity:0;font-size:15px;font-style:normal;transition:all .18s;transform:translate(4px)}.calendar-student-link:hover>i,.calendar-student-link:focus-visible>i{opacity:1;transform:none}.absence-detail-page{flex-direction:column;gap:13px;display:flex}.absence-detail-toolbar{justify-content:space-between;align-items:center;gap:12px;display:flex}.absence-detail-toolbar>button{border:1px solid var(--line);background:var(--surface);color:var(--blue);cursor:pointer;border-radius:11px;padding:10px 14px;font-weight:900;box-shadow:0 5px 14px #1e36580d}.absence-detail-toolbar>button span{margin-left:6px;font-size:17px;display:inline-block}.absence-detail-toolbar>button:hover{border-color:var(--blue);background:var(--blue-soft)}.absence-detail-toolbar>div{text-align:left}.absence-detail-toolbar small,.absence-detail-toolbar strong{display:block}.absence-detail-toolbar small{color:var(--muted);font-size:10px}.absence-detail-toolbar strong{margin-top:3px;font-size:14px}.absence-detail-hero{background:linear-gradient(135deg,var(--surface),var(--blue-soft));justify-content:space-between;align-items:center;gap:18px;padding:20px 22px;display:flex}@supports (color:color-mix(in lab, red, red)){.absence-detail-hero{background:linear-gradient(135deg,var(--surface),color-mix(in srgb,var(--blue-soft) 55%,var(--surface)))}}.absence-detail-identity{align-items:center;gap:14px;display:flex}.absence-detail-avatar{color:#fff;background:linear-gradient(145deg,#2d67ee,#7b9cf5);border-radius:17px;place-items:center;width:58px;min-width:58px;height:58px;font-size:18px;font-weight:900;display:grid;box-shadow:0 9px 22px #2a63eb38}.absence-detail-identity span,.absence-detail-identity h3,.absence-detail-identity p{margin:0;display:block}.absence-detail-identity span{color:var(--blue);font-size:10px;font-weight:800}.absence-detail-identity h3{margin-top:5px;font-size:19px}.absence-detail-identity p{color:var(--muted);margin-top:6px;font-size:10px}.absence-detail-class{border:1px solid var(--blue);min-width:170px;padding:12px 15px}@supports (color:color-mix(in lab, red, red)){.absence-detail-class{border:1px solid color-mix(in srgb,var(--blue) 18%,var(--line))}}.absence-detail-class{background:var(--surface);text-align:center;border-radius:13px}.absence-detail-class small,.absence-detail-class strong,.absence-detail-class span{display:block}.absence-detail-class small{color:var(--muted);font-size:10px}.absence-detail-class strong{margin-top:5px;font-size:13px}.absence-detail-class span{color:var(--blue);margin-top:4px;font-size:10px}.absence-detail-summary{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.absence-detail-summary article{border:1px solid var(--line);background:var(--surface);border-radius:14px;flex-direction:column;justify-content:center;min-height:92px;padding:14px 16px;display:flex}.absence-detail-summary article.total{background:linear-gradient(145deg,#fff3f4,var(--surface));border-color:#efb7bd}.dark .absence-detail-summary article.total{background:linear-gradient(145deg,#3b2026,var(--surface))}.absence-detail-summary span,.absence-detail-summary strong,.absence-detail-summary small{display:block}.absence-detail-summary span{color:var(--muted);font-size:10px}.absence-detail-summary strong{margin-top:5px;font-size:23px}.absence-detail-summary article.total strong{color:#dc4351}.absence-detail-summary small{color:var(--muted);margin-top:4px;font-size:10px}.absence-months-list{gap:12px;display:grid}.absence-month-group{padding:0;overflow:hidden}.absence-month-heading{border-bottom:1px solid var(--line);background:var(--surface-2);justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.absence-month-heading span,.absence-month-heading strong{display:block}.absence-month-heading span{color:var(--muted);font-size:10px}.absence-month-heading strong{margin-top:3px;font-size:14px}.absence-month-heading>b{color:#d9404e;background:#fff0f1;border-radius:15px;padding:7px 10px;font-size:10px}.dark .absence-month-heading>b{background:#3b2026}.absence-days-grid{grid-template-columns:repeat(3,1fr);gap:9px;padding:13px;display:grid}.absence-day-card{background:var(--surface);border:1px solid #efc5c9;border-radius:12px;align-items:center;gap:10px;min-height:69px;padding:10px;display:flex}.absence-day-card>span{color:#df4351;background:#fff0f1;border-radius:8px;place-items:center;width:27px;min-width:27px;height:27px;font-size:10px;font-weight:900;display:grid}.dark .absence-day-card>span{background:#3b2026}.absence-day-card>div{flex:1;min-width:0}.absence-day-card strong,.absence-day-card small{display:block}.absence-day-card strong{font-size:12px}.absence-day-card small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-top:4px;font-size:9px;overflow:hidden}.absence-day-card>b{color:#fff;background:#e34f5b;border-radius:9px;padding:6px 8px;font-size:9px}.absence-detail-empty{min-height:220px}@media (max-width:900px){.absence-days-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:760px){.absence-detail-toolbar{align-items:flex-start}.absence-detail-hero{flex-direction:column;align-items:flex-start}.absence-detail-class{text-align:right;width:100%}.absence-detail-summary,.absence-days-grid{grid-template-columns:1fr}.absence-detail-avatar{width:50px;min-width:50px;height:50px}.absence-detail-identity h3{font-size:16px}.calendar-student-link .student-avatar{display:none}}.topbar{gap:12px}.global-back-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#1f5fdd,#3f83f4);border:0;border-radius:12px;justify-content:center;align-items:center;gap:8px;min-width:91px;height:42px;padding:0 15px;font-weight:900;transition:transform .18s,box-shadow .18s;display:flex;box-shadow:0 7px 17px #2563eb40}.global-back-button:hover{transform:translateY(-1px);box-shadow:0 9px 21px #2563eb52}.global-back-button:focus-visible{outline:3px solid var(--blue)}@supports (color:color-mix(in lab, red, red)){.global-back-button:focus-visible{outline:3px solid color-mix(in srgb,var(--blue) 30%,transparent)}}.global-back-button:focus-visible{outline-offset:2px}.global-back-button span{font-size:22px;line-height:1}.global-back-button strong{font-size:13px}@media (max-width:760px){.topbar{gap:7px}.global-back-button{width:42px;min-width:42px;height:40px;padding:0}.global-back-button strong{display:none}.global-back-button span{font-size:21px}.searchbox{min-width:0}.top-actions{margin-right:0}}.teacher-table table{min-width:1200px}.teacher-position,.teacher-specialty{white-space:nowrap;border-radius:10px;padding:7px 10px;font-size:11px;display:inline-block}.teacher-position{background:var(--purple-soft);color:var(--purple)}.teacher-specialty{background:var(--green-soft);color:var(--green)}.teaching-assignment-list{flex-wrap:wrap;gap:6px;min-width:290px;display:flex}.teaching-assignment-list>span{border:1px solid var(--blue);padding:6px 8px;display:inline-block}@supports (color:color-mix(in lab, red, red)){.teaching-assignment-list>span{border:1px solid color-mix(in srgb,var(--blue) 20%,var(--line))}}.teaching-assignment-list>span{background:var(--blue-soft);color:var(--blue);white-space:nowrap;border-radius:9px;font-size:10px;font-weight:800}.teaching-assignment-list>small{color:var(--muted);font-size:10px}.field-hint{color:var(--muted);margin-top:6px;font-size:10px;font-weight:500;display:block}.teacher-assignment-field{margin:12px 0}.teacher-assignment-label{justify-content:space-between;align-items:end;gap:10px;margin-bottom:7px;display:flex}.teacher-assignment-label strong{font-size:12px}.teacher-assignment-label small{color:var(--muted);font-size:9px}.teacher-assignment-dropdown{position:relative}.teacher-assignment-dropdown>summary{border:1px solid var(--line);background:var(--surface-2);height:44px;color:var(--text);cursor:pointer;border-radius:10px;justify-content:space-between;align-items:center;padding:0 12px;font-size:12px;font-weight:800;list-style:none;display:flex}.teacher-assignment-dropdown>summary::-webkit-details-marker{display:none}.teacher-assignment-dropdown[open]>summary{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue)}@supports (color:color-mix(in lab, red, red)){.teacher-assignment-dropdown[open]>summary{box-shadow:0 0 0 3px color-mix(in srgb,var(--blue) 12%,transparent)}}.teacher-assignment-dropdown>summary b{background:var(--blue-soft);width:25px;height:25px;color:var(--blue);border-radius:7px;place-items:center;font-size:16px;display:grid}.teacher-assignment-menu{z-index:12;border:1px solid var(--line);background:var(--surface);border-radius:13px;max-height:330px;padding:10px;position:absolute;top:50px;left:0;right:0;overflow:auto;box-shadow:0 18px 45px #0e1c3433}.assignment-menu-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:2px 3px 9px;display:flex}.assignment-menu-toolbar span{color:var(--muted);font-size:10px}.assignment-menu-toolbar button,.assignment-grade>div:first-child button{background:var(--blue-soft);color:var(--blue);cursor:pointer;border:0;border-radius:8px;padding:6px 8px;font-size:9px;font-weight:800}.assignment-menu-toolbar button{color:#df4653;background:#fff0f1}.dark .assignment-menu-toolbar button{background:#3b2026}.assignment-grade{border-bottom:1px solid var(--line);padding:10px 2px}.assignment-grade:last-child{border-bottom:0}.assignment-grade>div:first-child{justify-content:space-between;align-items:center;display:flex}.assignment-grade>div:first-child strong{font-size:11px}.assignment-grade>div:first-child button.all-selected{background:var(--green-soft);color:var(--green)}.assignment-sections{grid-template-columns:repeat(7,1fr);gap:5px;margin-top:8px;display:grid}.assignment-sections label{border:1px solid var(--line);background:var(--surface-2);cursor:pointer;border-radius:8px;place-items:center;height:32px;transition:all .15s;display:grid}.assignment-sections label.selected{border-color:var(--blue);background:var(--blue);color:#fff;box-shadow:0 4px 10px #2563eb33}.assignment-sections input{opacity:0;pointer-events:none;position:absolute}.assignment-sections span{font-size:11px;font-weight:900}.selected-assignment-preview{flex-wrap:wrap;gap:5px;margin-top:8px;display:flex}.selected-assignment-preview span{background:var(--blue-soft);color:var(--blue);border-radius:8px;padding:5px 7px;font-size:9px;font-weight:800}@media (max-width:520px){.teacher-assignment-label{flex-direction:column;align-items:flex-start}.assignment-sections{grid-template-columns:repeat(4,1fr)}.teacher-assignment-menu{max-height:285px}}.assignment-specialty-notice{border:1px dashed var(--line);background:var(--surface-2);color:var(--muted);text-align:center;border-radius:10px;margin:10px 2px 2px;padding:13px;font-size:10px}.assignment-grade>div:first-child button:disabled{background:var(--surface-2);color:var(--muted);cursor:not-allowed}.assignment-sections label.reserved{color:#d54753;cursor:not-allowed;opacity:.8;background:#fff2f3;border-color:#efc4c8;height:42px;position:relative}.dark .assignment-sections label.reserved{background:#3b2026}.assignment-sections label.reserved span{margin-top:-9px}.assignment-sections label.reserved em{font-size:7px;font-style:normal;font-weight:900;position:absolute;bottom:3px}.assignment-sections label.reserved:after{content:"×";font-size:9px;font-weight:900;position:absolute;top:2px;left:4px}.assignment-sections label.reserved input{cursor:not-allowed}.curriculum-hint{border:1px solid var(--blue);align-items:center;gap:9px;margin:7px 0 2px;padding:9px 10px;display:flex}@supports (color:color-mix(in lab, red, red)){.curriculum-hint{border:1px solid color-mix(in srgb,var(--blue) 20%,var(--line))}}.curriculum-hint{background:var(--blue-soft);color:var(--blue);border-radius:10px}.curriculum-hint>span{background:var(--surface);border-radius:8px;place-items:center;width:27px;height:27px;font-weight:900;display:grid}.curriculum-hint div{gap:2px;display:grid}.curriculum-hint strong{font-size:10px}.curriculum-hint small{color:var(--muted);font-size:8px}.teacher-view-tabs{border-bottom:1px solid var(--line);background:var(--surface-2);grid-template-columns:1fr 1fr;gap:8px;padding:9px 12px;display:grid}.teacher-view-tabs button{background:var(--surface);min-height:56px;color:var(--text);text-align:right;cursor:pointer;border:1px solid #0000;border-radius:12px;align-items:center;gap:10px;padding:9px 13px;display:flex}.teacher-view-tabs button.selected{border-color:var(--blue)}@supports (color:color-mix(in lab, red, red)){.teacher-view-tabs button.selected{border-color:color-mix(in srgb,var(--blue) 30%,var(--line))}}.teacher-view-tabs button.selected{background:var(--blue-soft);color:var(--blue)}.teacher-view-tabs button>span{background:var(--surface-2);border-radius:10px;place-items:center;width:34px;height:34px;font-size:17px;display:grid}.teacher-view-tabs button.selected>span{background:var(--blue);color:#fff}.teacher-view-tabs strong,.teacher-view-tabs small{display:block}.teacher-view-tabs strong{font-size:12px}.teacher-view-tabs small{color:var(--muted);margin-top:3px;font-size:9px}.specialties-view{background:radial-gradient(circle at 15% 10%,#457eee17,transparent 32%),radial-gradient(circle at 85% 80%,#935bda14,transparent 28%),var(--surface-2);padding:18px}.specialties-intro{justify-content:space-between;align-items:center;margin-bottom:13px;display:flex}.specialties-intro span,.specialties-intro strong{display:block}.specialties-intro span{color:var(--blue);font-size:10px}.specialties-intro strong{margin-top:4px;font-size:15px}.specialties-intro>b{background:var(--surface);color:var(--blue);border-radius:16px;padding:7px 11px;font-size:10px}.specialty-glass-grid{grid-template-columns:repeat(3,1fr);gap:11px;display:grid}.specialty-glass-card{--glass:#3478ee;border:1px solid var(--glass);min-height:120px;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.specialty-glass-card{border:1px solid color-mix(in srgb,var(--glass) 28%,var(--line))}}.specialty-glass-card{background:linear-gradient(135deg,var(--glass),var(--surface));border-radius:17px;padding:16px}@supports (color:color-mix(in lab, red, red)){.specialty-glass-card{background:linear-gradient(135deg,color-mix(in srgb,var(--glass) 14%,transparent),color-mix(in srgb,var(--surface) 82%,transparent))}}.specialty-glass-card{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);color:var(--text);text-align:right;cursor:pointer;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;transition:all .2s;display:grid;box-shadow:0 10px 28px #162a4a14,inset 0 1px #ffffff47}.specialty-glass-card:before{content:"";background:var(--glass);border-radius:50%;width:95px;height:95px;position:absolute}@supports (color:color-mix(in lab, red, red)){.specialty-glass-card:before{background:color-mix(in srgb,var(--glass) 22%,transparent)}}.specialty-glass-card:before{filter:blur(8px);top:-46px;left:-24px}.specialty-glass-card:hover,.specialty-glass-card.selected{border-color:var(--glass);box-shadow:0 14px 34px var(--glass);transform:translateY(-3px)}@supports (color:color-mix(in lab, red, red)){.specialty-glass-card:hover,.specialty-glass-card.selected{box-shadow:0 14px 34px color-mix(in srgb,var(--glass) 16%,transparent)}}.specialty-glass-card.selected{outline:3px solid var(--glass)}@supports (color:color-mix(in lab, red, red)){.specialty-glass-card.selected{outline:3px solid color-mix(in srgb,var(--glass) 18%,transparent)}}.specialty-glass-card>i{background:var(--glass);border-radius:13px;width:43px;height:43px}@supports (color:color-mix(in lab, red, red)){.specialty-glass-card>i{background:color-mix(in srgb,var(--glass) 84%,#fff)}}.specialty-glass-card>i{color:#fff;box-shadow:0 7px 16px var(--glass);place-items:center;font-size:20px;font-style:normal;display:grid}@supports (color:color-mix(in lab, red, red)){.specialty-glass-card>i{box-shadow:0 7px 16px color-mix(in srgb,var(--glass) 25%,transparent)}}.specialty-glass-card div span,.specialty-glass-card div strong,.specialty-glass-card div small{display:block}.specialty-glass-card div span{color:var(--glass);font-size:9px}.specialty-glass-card div strong{margin-top:4px;font-size:14px}.specialty-glass-card div small{color:var(--muted);margin-top:5px;font-size:9px}.specialty-glass-card>b{text-align:center;color:var(--glass);font-size:21px}.specialty-glass-card>b small{white-space:nowrap;margin-top:4px;font-size:8px;display:block}.glass-tone-1{--glass:#3478ee}.glass-tone-2{--glass:#16a06c}.glass-tone-3{--glass:#c46b19}.glass-tone-4{--glass:#8b58d5}.glass-tone-5{--glass:#d74967}.glass-tone-6{--glass:#168ca3}.specialty-teachers-panel{border:1px solid var(--line);background:var(--surface);border-radius:17px;margin-top:15px}@supports (color:color-mix(in lab, red, red)){.specialty-teachers-panel{background:color-mix(in srgb,var(--surface) 90%,transparent)}}.specialty-teachers-panel{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);overflow:hidden}.specialty-detail-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:17px 19px;display:flex}.specialty-detail-head span,.specialty-detail-head strong,.specialty-detail-head small{display:block}.specialty-detail-head span{color:var(--blue);font-size:9px}.specialty-detail-head strong{margin-top:3px;font-size:16px}.specialty-detail-head small{color:var(--muted);margin-top:5px;font-size:9px}.specialty-detail-head>b{background:var(--blue-soft);color:var(--blue);border-radius:14px;padding:7px 10px;font-size:10px}.specialty-teacher-list{gap:9px;padding:13px;display:grid}.specialty-teacher-list>article{border:1px solid var(--line);background:var(--surface);border-radius:13px;align-items:center;gap:11px;min-height:88px;padding:11px 13px;display:flex}.specialty-teacher-copy{flex:1;min-width:0}.specialty-teacher-copy>strong,.specialty-teacher-copy>small{display:block}.specialty-teacher-copy>strong{font-size:13px}.specialty-teacher-copy>small{color:var(--muted);margin-top:3px;font-size:9px}.specialty-teacher-copy>div{flex-wrap:wrap;gap:5px;margin-top:7px;display:flex}.specialty-teacher-copy>div span{background:var(--blue-soft);color:var(--blue);border-radius:7px;padding:5px 7px;font-size:9px;font-weight:800}.specialty-teacher-copy>div em{color:var(--muted);font-size:9px}.teacher-lesson-count{border-right:1px solid var(--line);text-align:center;min-width:110px;padding:9px 11px}.teacher-lesson-count strong,.teacher-lesson-count span,.teacher-lesson-count small{display:block}.teacher-lesson-count strong{color:var(--blue);font-size:23px}.teacher-lesson-count span{font-size:9px;font-weight:900}.teacher-lesson-count small{color:var(--muted);margin-top:4px;font-size:8px}@media (max-width:1050px){.specialty-glass-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:760px){.teacher-view-tabs{grid-template-columns:1fr}.specialties-view{padding:12px}.specialty-glass-grid{grid-template-columns:1fr}.specialties-intro{align-items:flex-start;gap:10px}.specialty-teacher-list>article{flex-wrap:wrap;align-items:flex-start}.teacher-lesson-count{border-right:0;border-top:1px solid var(--line);text-align:right;grid-template-columns:auto 1fr auto;align-items:center;width:100%;display:grid}.teacher-lesson-count strong{font-size:18px}.teacher-lesson-count small{text-align:left;margin:0}}.specialties-split{direction:ltr;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:14px;display:grid}.specialty-catalog,.specialty-teachers-panel,.specialty-detail-placeholder{direction:rtl}.specialty-catalog{min-width:0}.specialties-split .specialty-glass-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.specialties-split .specialty-glass-card{border-radius:13px;grid-template-columns:1fr auto;gap:7px;min-height:86px;padding:10px}.specialties-split .specialty-glass-card>i{display:none}.specialties-split .specialty-glass-card div span{font-size:7px}.specialties-split .specialty-glass-card div strong{font-size:10px;line-height:1.4}.specialties-split .specialty-glass-card div small{margin-top:3px;font-size:8px}.specialties-split .specialty-glass-card>b{font-size:17px}.specialties-split .specialty-glass-card>b small{font-size:7px}.specialties-split .specialty-teachers-panel{min-height:430px;max-height:620px;margin-top:0;overflow:auto}.specialty-detail-placeholder{border:1px dashed var(--blue);min-height:430px}@supports (color:color-mix(in lab, red, red)){.specialty-detail-placeholder{border:1px dashed color-mix(in srgb,var(--blue) 28%,var(--line))}}.specialty-detail-placeholder{background:var(--surface);border-radius:17px}@supports (color:color-mix(in lab, red, red)){.specialty-detail-placeholder{background:color-mix(in srgb,var(--surface) 80%,transparent)}}.specialty-detail-placeholder{text-align:center;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;padding:28px;display:flex}.specialty-detail-placeholder>span{background:var(--blue-soft);width:52px;height:52px;color:var(--blue);border-radius:16px;place-items:center;margin-bottom:12px;font-size:24px;display:grid}.specialty-detail-placeholder strong{color:var(--text);font-size:14px}.specialty-detail-placeholder small{max-width:280px;margin-top:6px;font-size:10px;line-height:1.8}@media (max-width:1150px){.specialties-split{grid-template-columns:1fr}.specialties-split .specialty-glass-grid{grid-template-columns:repeat(3,1fr)}.specialties-split .specialty-teachers-panel,.specialty-detail-placeholder{min-height:auto;max-height:none}}@media (max-width:620px){.specialties-split .specialty-glass-grid{grid-template-columns:repeat(2,1fr)}}.teacher-view-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}.management-tab-page{background:radial-gradient(circle at 10% 5%,#2563eb14,transparent 30%),var(--surface-2);min-height:470px;padding:18px}.management-tab-hero{border:1px solid var(--line);background:linear-gradient(135deg,var(--blue),var(--surface));border-radius:18px;align-items:center;gap:15px;padding:19px;display:flex}@supports (color:color-mix(in lab, red, red)){.management-tab-hero{background:linear-gradient(135deg,color-mix(in srgb,var(--blue) 10%,var(--surface)),var(--surface))}}.management-tab-hero{box-shadow:var(--shadow)}.management-tab-hero.staff-hero{background:linear-gradient(135deg,var(--green),var(--surface))}@supports (color:color-mix(in lab, red, red)){.management-tab-hero.staff-hero{background:linear-gradient(135deg,color-mix(in srgb,var(--green) 10%,var(--surface)),var(--surface))}}.management-tab-icon{background:var(--blue);color:#fff;border-radius:16px;place-items:center;width:54px;height:54px;font-size:25px;display:grid;box-shadow:0 9px 22px #2563eb38}.staff-hero .management-tab-icon{background:var(--green)}.management-tab-hero>div{flex:1}.management-tab-hero small,.management-tab-hero strong,.management-tab-hero p{display:block}.management-tab-hero small{color:var(--blue);font-size:10px;font-weight:800}.management-tab-hero strong{margin-top:3px;font-size:19px}.management-tab-hero p{color:var(--muted);margin:5px 0 0;font-size:11px}.management-tab-hero>b{background:var(--blue-soft);color:var(--blue);white-space:nowrap;border-radius:15px;padding:8px 12px;font-size:10px}.staff-hero>b{background:var(--green-soft);color:var(--green)}.management-summary{grid-template-columns:repeat(3,1fr);gap:11px;margin-top:13px;display:grid}.management-summary article{border:1px solid var(--line);background:var(--surface);border-radius:15px;padding:16px}.management-summary span,.management-summary strong,.management-summary small{display:block}.management-summary span{color:var(--muted);font-size:10px}.management-summary strong{color:var(--blue);margin:5px 0;font-size:24px}.management-summary small{color:var(--muted);font-size:9px}.management-empty{border:1px dashed var(--blue);min-height:210px;margin-top:13px}@supports (color:color-mix(in lab, red, red)){.management-empty{border:1px dashed color-mix(in srgb,var(--blue) 28%,var(--line))}}.management-empty{background:var(--surface);border-radius:17px}@supports (color:color-mix(in lab, red, red)){.management-empty{background:color-mix(in srgb,var(--surface) 86%,transparent)}}.management-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:28px;display:flex}.management-empty>span{background:var(--blue-soft);width:50px;height:50px;color:var(--blue);border-radius:15px;place-items:center;margin-bottom:11px;font-size:23px;display:grid}.management-empty strong{font-size:14px}.management-empty small{color:var(--muted);margin-top:6px;font-size:10px;line-height:1.8}.admin-role-grid{grid-template-columns:repeat(5,1fr);gap:10px;margin-top:13px;display:grid}.admin-role-grid article{border:1px solid var(--line);background:var(--surface);border-radius:14px;align-items:center;gap:9px;padding:13px;display:flex}.admin-role-grid i{color:#fff;border-radius:10px;place-items:center;width:34px;height:34px;font-style:normal;display:grid}.admin-role-grid .tone-1{background:#3976df}.admin-role-grid .tone-2{background:#18a16e}.admin-role-grid .tone-3{background:#8c59d4}.admin-role-grid .tone-4{background:#d0712a}.admin-role-grid .tone-5{background:#d84b68}.admin-role-grid article>div{flex:1;min-width:0}.admin-role-grid strong,.admin-role-grid small{display:block}.admin-role-grid strong{font-size:10px}.admin-role-grid small{color:var(--muted);margin-top:3px;font-size:8px}.admin-role-grid article>b{color:var(--muted);font-size:18px}@media (max-width:1050px){.teacher-view-tabs{grid-template-columns:repeat(2,1fr)}.admin-role-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:620px){.teacher-view-tabs{grid-template-columns:1fr}.management-tab-page{padding:12px}.management-tab-hero{flex-wrap:wrap;align-items:flex-start}.management-tab-hero>b{margin-right:auto}.management-summary,.admin-role-grid{grid-template-columns:1fr}}.school-leadership-section{border:1px solid var(--purple);margin:14px 0 0;padding:15px}@supports (color:color-mix(in lab, red, red)){.school-leadership-section{border:1px solid color-mix(in srgb,var(--purple) 22%,var(--line))}}.school-leadership-section{background:linear-gradient(135deg,var(--purple),var(--surface));border-radius:17px}@supports (color:color-mix(in lab, red, red)){.school-leadership-section{background:linear-gradient(135deg,color-mix(in srgb,var(--purple) 8%,var(--surface)),var(--surface))}}.teacher-section-title,.teachers-list-divider{align-items:center;gap:12px;display:flex}.teacher-section-title>div,.teachers-list-divider>div{flex:1;align-items:center;gap:10px;display:flex}.teacher-section-title>div>span,.teachers-list-divider>span{border-radius:11px;place-items:center;width:36px;height:36px;display:grid}.teacher-section-title>div>span{background:var(--purple-soft);color:var(--purple);font-size:18px}.teacher-section-title strong,.teacher-section-title small,.teachers-list-divider strong,.teachers-list-divider small{display:block}.teacher-section-title strong,.teachers-list-divider strong{font-size:13px}.teacher-section-title small,.teachers-list-divider small{color:var(--muted);margin-top:3px;font-size:9px}.teacher-section-title>b,.teachers-list-divider>b{background:var(--surface);color:var(--purple);border-radius:13px;padding:7px 10px;font-size:10px}.leadership-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.leadership-grid article{border:1px solid var(--line);background:var(--surface);border-radius:14px;align-items:center;gap:11px;min-height:82px;padding:12px;display:flex;box-shadow:0 8px 24px #1925410d}.leadership-grid article.principal-card{border-color:var(--purple)}@supports (color:color-mix(in lab, red, red)){.leadership-grid article.principal-card{border-color:color-mix(in srgb,var(--purple) 35%,var(--line))}}.leadership-grid article.principal-card{box-shadow:inset -3px 0 var(--purple),0 8px 24px #1925410d}.leadership-grid article.assistant-card{box-shadow:inset -3px 0 var(--blue),0 8px 24px #1925410d}.leadership-copy{flex:1;min-width:0}.leadership-copy span,.leadership-copy strong,.leadership-copy small,.leadership-contact span,.leadership-contact strong,.leadership-contact small{display:block}.leadership-copy span{color:var(--purple);font-size:9px;font-weight:900}.assistant-card .leadership-copy span{color:var(--blue)}.leadership-copy strong{margin-top:3px;font-size:12px}.leadership-copy small,.leadership-contact small{color:var(--muted);margin-top:3px;font-size:8px}.leadership-contact{border-right:1px solid var(--line);min-width:115px;padding:5px 12px}.leadership-contact strong{margin-top:4px;font-size:10px}.leadership-grid .action-buttons{flex-direction:column;gap:5px}.leadership-grid .action-buttons button{min-width:58px}.leadership-empty{border:1px dashed var(--line);background:var(--surface);border-radius:13px;align-items:center;gap:11px;margin-top:12px;padding:14px;display:flex}@supports (color:color-mix(in lab, red, red)){.leadership-empty{background:color-mix(in srgb,var(--surface) 75%,transparent)}}.leadership-empty>span{background:var(--purple-soft);width:37px;height:37px;color:var(--purple);border-radius:11px;place-items:center;display:grid}.leadership-empty strong,.leadership-empty small{display:block}.leadership-empty strong{font-size:11px}.leadership-empty small{color:var(--muted);margin-top:3px;font-size:9px}.teachers-list-divider{border-top:2px solid var(--line);margin:17px 0 2px;padding:13px 4px 11px}.teachers-list-divider>span{background:var(--green-soft);color:var(--green);font-size:18px}.teachers-list-divider>b{color:var(--green);background:var(--green-soft)}@media (max-width:900px){.leadership-grid{grid-template-columns:1fr}}@media (max-width:620px){.school-leadership-section{padding:11px}.teacher-section-title,.teachers-list-divider{align-items:flex-start}.leadership-grid article{flex-wrap:wrap;align-items:flex-start}.leadership-contact{border-right:0;border-top:1px solid var(--line);width:100%;padding:8px 0 0}.leadership-grid .action-buttons{flex-direction:row;width:100%}.leadership-grid .action-buttons button{flex:1}.teacher-section-title>b,.teachers-list-divider>b{white-space:nowrap;margin-right:auto}}.app.dark{--bg:#08111f;--surface:#101c2e;--surface-2:#17263b;--text:#f4f7ff;--muted:#b3c0d4;--line:#2b3e5a;--blue:#5b8cff;--blue-soft:#1c3763;--green:#2dd58e;--green-soft:#153f35;--orange:#ffad5c;--orange-soft:#49321f;--purple:#ad8cff;--purple-soft:#382b59;--shadow:0 12px 34px #0000003d}.app.dark .sidebar,.app.dark .topbar{background:#0f1b2d;border-color:#2b3e5a}.app.dark .brand strong,.app.dark .sidebar-user strong,.app.dark .module-toolbar strong,.app.dark .selected-class-title strong,.app.dark table,.app.dark td,.app.dark td strong,.app.dark .address-cell{color:var(--text)}.app.dark th,.app.dark td small,.app.dark .selected-class-title span{color:var(--muted)}.app.dark .nav-label{color:#8191aa}.app.dark .nav-item{color:#a9b7cc}.app.dark .nav-item:hover{color:#dce8ff;background:#172a45}.app.dark .nav-item.active{color:#78a6ff;background:#1d3a68;box-shadow:inset 0 0 0 1px #5b8cff1f}.app.dark .help-card{color:var(--text);background:linear-gradient(145deg,#172b48,#1d3455);border:1px solid #294362}.app.dark .help-card>span{color:#8bb2ff;background:#203958;box-shadow:0 7px 18px #00000047}.app.dark .searchbox{color:#a8b7cc;background:#15243a;border-color:#2d4260}.app.dark .searchbox input::placeholder,.app.dark input::placeholder{color:#8798b1;opacity:1}.app.dark .round-button,.app.dark .outline-button{color:#eef4ff;background:#14243a;border-color:#304761}.app.dark .panel,.app.dark .stat-card,.app.dark .selected-class-title,.app.dark .student-selection-empty{background:#101c2e;border-color:#293d58}.app.dark .live-summary,.app.dark .live-table th{background:#1a2a40}.app.dark .live-summary>div{background:#16253a}.app.dark .live-table tbody td{background:#101c2e;border-color:#2a3c56}.app.dark .live-table tbody tr:nth-child(2n) td{background:#121f32}.app.dark .live-table tbody tr:hover td{background:#182b46}.app.dark .live-table tr.student-row-selected td,.app.dark .live-table tr.student-row-selected:nth-child(2n) td{color:#fff;background:#203e6d}.app.dark .live-table tr.student-row-selected td strong,.app.dark .live-table tr.student-row-selected .address-cell{color:#fff}.app.dark .live-table tr.student-row-selected td small{color:#c9d9f3}.app.dark .student-check span{background:#132137;border-color:#71839c}.app.dark .sequence-cell b{color:#e8efff;background:#1b2d46}.app.dark .status.حاضر{color:#64efb3;background:#14503d}.app.dark .status.متأخر{color:#ffc27c;background:#53391f}.app.dark .status.غائب{color:#ff939e;background:#542933}.app.dark .data-state{color:#59e8a7;background:#164535}.app.dark .student-form,.app.dark .notifications,.app.dark .search-results,.app.dark .teacher-assignment-menu{background:#101c2e;border-color:#30445f}.app.dark .student-form input,.app.dark .student-form select,.app.dark .panel select,.app.dark .teacher-assignment-dropdown>summary{color:#f4f7ff;background:#17263b;border-color:#30445f}.app.dark select option{color:#f4f7ff;background:#17263b}.app.dark .grade-tabs button,.app.dark .section-tabs button,.app.dark .teacher-view-tabs button{color:#edf3ff;background:#132238;border-color:#2b3e5a}.app.dark .grade-tabs button.selected,.app.dark .teacher-view-tabs button.selected{color:#8eb3ff;background:#1c3763;border-color:#5b8cff}.app.dark .section-tabs button.selected{color:#fff;background:#4e7fe9;border-color:#6c9aff}.app.dark .edit-button{background:#159f69}.app.dark .delete-button{background:#c94350}.app.dark .teacher-position{color:#c7b2ff;background:#3b2e60}.app.dark .teacher-specialty{color:#62e5ac;background:#164535}.app.dark .leadership-grid article,.app.dark .management-summary article,.app.dark .admin-role-grid article{background:#122137;border-color:#2b405c}.app.dark .school-leadership-section{background:linear-gradient(135deg,#1a2138,#101c2e);border-color:#4a3b70}.app.dark .pale-dot{background:#49617e}.staff-leave-form{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:16px;margin-top:13px;padding:15px}.leave-tab-alert{color:#fff;background:#e54856;border-radius:8px;place-items:center;min-width:21px;height:21px;margin-right:auto;font-size:8px;display:grid;box-shadow:0 5px 12px #e5485647}.leave-expiry-alert{background:linear-gradient(135deg,#fff3f4,var(--surface));border:1px solid #f0b8be;border-radius:16px;margin-top:13px;padding:14px;box-shadow:0 8px 22px #d73c4a14}.dark .leave-expiry-alert{background:linear-gradient(135deg,#3b2026,var(--surface));border-color:#68333c}.leave-expiry-alert-head{align-items:center;gap:10px;display:flex}.leave-expiry-alert-head>span{color:#fff;background:#e54856;border-radius:12px;place-items:center;width:38px;height:38px;font-size:18px;font-weight:900;display:grid;box-shadow:0 7px 16px #e548563d}.leave-expiry-alert-head strong,.leave-expiry-alert-head small{display:block}.leave-expiry-alert-head strong{color:#d73c4a;font-size:13px}.leave-expiry-alert-head small{color:var(--muted);margin-top:3px;font-size:9px}.leave-expiry-alert-list{grid-template-columns:repeat(2,1fr);gap:8px;margin-top:11px;display:grid}.leave-expiry-alert-list article{border:1px solid #e54856;align-items:center;gap:9px;padding:10px;display:flex}@supports (color:color-mix(in lab, red, red)){.leave-expiry-alert-list article{border:1px solid color-mix(in srgb,#e54856 20%,var(--line))}}.leave-expiry-alert-list article{background:var(--surface);border-radius:12px}.leave-expiry-alert-list article>div:nth-child(2){flex:1;min-width:0}.leave-expiry-alert-list article>div:nth-child(2) strong,.leave-expiry-alert-list article>div:nth-child(2) small{display:block}.leave-expiry-alert-list article>div:nth-child(2) strong{font-size:10px}.leave-expiry-alert-list article>div:nth-child(2) small{color:var(--muted);margin-top:3px;font-size:8px}.leave-expiry-date{text-align:left}.leave-expiry-date span,.leave-expiry-date strong,.leave-expiry-date small{display:block}.leave-expiry-date span{color:#d73c4a;font-size:8px;font-weight:900}.leave-expiry-date strong{margin-top:3px;font-size:9px}.leave-expiry-date small{color:var(--muted);direction:ltr;margin-top:2px;font-size:7px}.staff-leave-form-head,.staff-leave-form-head>div{align-items:center;gap:10px;display:flex}.staff-leave-form-head{justify-content:space-between;margin-bottom:13px}.staff-leave-form-head>div>span{background:var(--blue);color:#fff;border-radius:11px;place-items:center;width:36px;height:36px;font-size:19px;display:grid}.staff-leave-form-head strong,.staff-leave-form-head small{display:block}.staff-leave-form-head strong{font-size:13px}.staff-leave-form-head small{color:var(--muted);margin-top:3px;font-size:9px}.staff-leave-form-head>b{background:var(--green-soft);color:var(--green);border-radius:13px;padding:6px 9px;font-size:9px}.staff-leave-fields{grid-template-columns:1.5fr repeat(3,1fr);gap:9px;display:grid}.staff-leave-form label>span{color:var(--muted);margin-bottom:6px;font-size:9px;font-weight:800;display:block}.staff-leave-form input,.staff-leave-form select{border:1px solid var(--line);background:var(--surface-2);width:100%;height:42px;color:var(--text);border-radius:10px;outline:0;padding:0 10px;font-size:10px;font-weight:700}.staff-leave-form input:focus,.staff-leave-form select:focus{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue)}@supports (color:color-mix(in lab, red, red)){.staff-leave-form input:focus,.staff-leave-form select:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--blue) 10%,transparent)}}.staff-leave-note{grid-template-columns:1fr auto;align-items:end;gap:9px;margin-top:9px;display:grid}.staff-leave-note button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:10px;height:42px;padding:0 20px;font-size:10px;font-weight:900;box-shadow:0 7px 16px #2563eb33}.staff-leave-note button:disabled{opacity:.55;cursor:not-allowed}.staff-leaves-table-wrap{border:1px solid var(--line);background:var(--surface);border-radius:16px;margin-top:13px;overflow:hidden}.staff-leaves-table-title,.staff-leaves-table-title>div{align-items:center;gap:9px;display:flex}.staff-leaves-table-title{border-bottom:1px solid var(--line);background:var(--surface-2);justify-content:space-between;padding:13px 15px}.staff-leaves-table-title>div>span{background:var(--blue-soft);width:31px;height:31px;color:var(--blue);border-radius:9px;place-items:center;display:grid}.staff-leaves-table-title strong,.staff-leaves-table-title small{display:block}.staff-leaves-table-title strong{font-size:12px}.staff-leaves-table-title small{color:var(--muted);margin-top:2px;font-size:8px}.staff-leaves-table-title>b{color:var(--blue);background:var(--blue-soft);border-radius:12px;padding:6px 9px;font-size:9px}.staff-leaves-table-wrap .table-scroll{margin:0}.staff-leaves-table{min-width:1120px}.staff-leaves-table th{background:var(--surface-2);white-space:nowrap;padding:11px 10px}.staff-leaves-table td{vertical-align:middle;padding:10px}.staff-leaves-table td:first-child{text-align:center;display:table-cell}.staff-leaves-table td:nth-child(2){align-items:center;gap:8px;display:flex}.leave-sequence{background:var(--blue-soft);width:26px;height:26px;color:var(--blue);border-radius:8px;place-items:center;font-size:9px;display:grid}.staff-type{border-radius:8px;width:max-content;padding:5px 7px;font-size:8px;font-weight:900;display:block}.staff-type.teaching{background:var(--purple-soft);color:var(--purple)}.staff-type.administrative{background:var(--green-soft);color:var(--green)}.staff-position{color:var(--muted);margin-top:4px;font-size:8px;display:block}.leave-type{background:var(--orange-soft);color:var(--orange);border-radius:9px;padding:5px 8px;font-size:9px;display:inline-block}.leave-date-cell strong,.leave-date-cell span{display:block}.leave-date-cell strong{color:var(--text);font-size:10px}.leave-date-cell span{color:var(--muted);text-align:right;direction:ltr;margin-top:3px;font-size:8px}.leave-duration{color:var(--blue);font-size:17px}.leave-duration small{color:var(--muted);font-size:8px}.leave-note{white-space:nowrap;text-overflow:ellipsis;max-width:150px;color:var(--muted);font-size:9px;display:block;overflow:hidden}@media (max-width:1050px){.staff-leave-fields{grid-template-columns:1fr 1fr}}@media (max-width:620px){.staff-leave-fields,.staff-leave-note{grid-template-columns:1fr}.staff-leave-note button{width:100%}.leave-expiry-alert-list{grid-template-columns:1fr}}.weekly-matrix-table{border-collapse:separate;border-spacing:0;table-layout:fixed;background:var(--surface);width:100%;min-width:900px}.weekly-matrix-table th,.weekly-matrix-table td{border-left:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center;vertical-align:middle;padding:7px}.weekly-matrix-table thead th{background:linear-gradient(145deg,var(--blue-soft),var(--surface-2));height:52px;color:var(--blue);font-size:12px;font-weight:900}.weekly-matrix-table .matrix-corner{color:#fff;background:linear-gradient(145deg,#245fcf,#4187f0);width:92px}.matrix-corner strong,.matrix-corner small{display:block}.matrix-corner small{opacity:.78;margin-top:3px;font-size:8px}.weekly-matrix-table .matrix-period{background:var(--surface-2);width:92px}.matrix-period b,.matrix-period span{display:block}.matrix-period b{background:var(--blue);color:#fff;border-radius:9px;place-items:center;width:31px;height:31px;margin:auto;font-size:13px;display:grid}.matrix-period span{color:var(--muted);margin-top:4px;font-size:8px}.weekly-matrix-table td{background:var(--surface);height:86px}.weekly-matrix-table td.matrix-empty{background:var(--surface-2)}@supports (color:color-mix(in lab, red, red)){.weekly-matrix-table td.matrix-empty{background:color-mix(in srgb,var(--surface-2) 55%,var(--surface))}}.matrix-empty>i{color:var(--line);font-size:16px;font-style:normal}.matrix-lesson-stack{gap:5px;display:grid}.matrix-lesson,.student-matrix-lesson{background:var(--blue-soft);min-height:62px;color:var(--blue);border:1px solid var(--blue);border-radius:10px;flex-direction:column;justify-content:center;align-items:center;padding:7px;display:flex}@supports (color:color-mix(in lab, red, red)){.matrix-lesson,.student-matrix-lesson{border:1px solid color-mix(in srgb,var(--blue) 20%,var(--line))}}.matrix-lesson strong,.matrix-lesson span,.matrix-lesson small,.student-matrix-lesson strong,.student-matrix-lesson small{display:block}.matrix-lesson strong,.student-matrix-lesson strong{font-size:10px}.matrix-lesson span{margin-top:3px;font-size:8px;font-weight:800}.matrix-lesson small,.student-matrix-lesson small{color:var(--muted);margin-top:3px;font-size:7px}.matrix-lesson.tone-2,.student-matrix-lesson.tone-2{background:var(--green-soft);color:var(--green)}.matrix-lesson.tone-3,.student-matrix-lesson.tone-3{background:var(--orange-soft);color:var(--orange)}.matrix-lesson.tone-4,.student-matrix-lesson.tone-4{background:var(--purple-soft);color:var(--purple)}.matrix-lesson.tone-5,.student-matrix-lesson.tone-5{color:#d84250;background:#fff0f1}.dark .matrix-lesson.tone-5,.dark .student-matrix-lesson.tone-5{background:#3b2026}.student-matrix-lesson{min-height:66px}@media (max-width:760px){.weekly-matrix-table{min-width:760px}.weekly-matrix-table td{height:78px}.weekly-matrix-table .matrix-corner,.weekly-matrix-table .matrix-period{width:74px}}.staff-hero-actions{justify-content:flex-end;align-items:center;gap:9px;display:flex;flex:none!important}.staff-hero-actions>b{background:var(--green-soft);color:var(--green);white-space:nowrap;border-radius:14px;padding:8px 12px;font-size:10px}.staff-hero-actions>button,.management-empty>button{background:var(--green);color:#fff;cursor:pointer;border:0;border-radius:11px;padding:10px 14px;font-size:10px;font-weight:900;box-shadow:0 8px 18px #16a36e33}.admin-rank-grid{grid-template-columns:repeat(3,1fr);gap:11px;margin-top:13px;display:grid}.admin-rank-grid article{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:15px;align-items:center;gap:10px;padding:14px;display:flex}.admin-rank-grid article>i{color:#fff;border-radius:12px;place-items:center;width:39px;height:39px;font-style:normal;display:grid}.admin-rank-grid article>div{flex:1}.admin-rank-grid strong,.admin-rank-grid small{display:block}.admin-rank-grid strong{font-size:12px}.admin-rank-grid small{color:var(--muted);margin-top:3px;font-size:9px}.admin-rank-grid article>b{font-size:22px}.rank-tone-1>i{background:#3976df}.rank-tone-1>b{color:#3976df}.rank-tone-2>i{background:#8c59d4}.rank-tone-2>b{color:#8c59d4}.rank-tone-3>i{background:#18a16e}.rank-tone-3>b{color:#18a16e}.admin-staff-groups{gap:13px;margin-top:13px;display:grid}.admin-staff-rank-section{border:1px solid var(--line);background:var(--surface);border-radius:16px;overflow:hidden}.admin-staff-rank-section>header,.admin-staff-rank-section>header>div{align-items:center;gap:9px;display:flex}.admin-staff-rank-section>header{background:var(--surface-2);border-bottom:1px solid var(--line);justify-content:space-between;padding:12px 14px}.admin-staff-rank-section header strong,.admin-staff-rank-section header small{display:block}.admin-staff-rank-section header strong{font-size:12px}.admin-staff-rank-section header small{color:var(--muted);margin-top:2px;font-size:8px}.admin-staff-rank-section header>b{background:var(--blue-soft);color:var(--blue);border-radius:10px;padding:5px 8px;font-size:9px}.rank-badge{color:#fff;border-radius:9px;place-items:center;width:31px;height:31px;font-size:11px;font-weight:900;display:grid}.rank-1{background:#3976df}.rank-2{background:#8c59d4}.rank-3{background:#18a16e}.admin-staff-member-grid{grid-template-columns:repeat(2,1fr);gap:10px;padding:12px;display:grid}.admin-staff-member-grid>article{border:1px solid var(--line);background:var(--surface-2);border-radius:13px;align-items:flex-start;gap:10px;padding:12px;display:flex}.admin-member-copy{flex:1;min-width:0}.admin-member-copy>strong,.admin-member-copy>small,.admin-member-copy>span{display:block}.admin-member-copy>strong{font-size:11px}.admin-member-copy>small{color:var(--muted);margin-top:2px;font-size:8px}.admin-member-copy>span{color:var(--blue);text-align:right;direction:ltr;margin-top:6px;font-size:9px;font-weight:800}.admin-member-copy details{margin-top:7px}.admin-member-copy summary{color:var(--purple);cursor:pointer;font-size:8px;font-weight:900}.admin-member-copy details p{color:var(--muted);margin:5px 0 0;font-size:8px;line-height:1.8}.admin-staff-member-grid .action-buttons{flex-direction:column;align-self:center}.admin-rank-empty{text-align:center;color:var(--muted);padding:18px;font-size:9px}.advanced-info{border:1px solid var(--line);background:var(--surface-2);border-radius:13px;overflow:hidden}.advanced-info>summary{cursor:pointer;justify-content:space-between;align-items:center;padding:13px;list-style:none;display:flex}.advanced-info>summary::-webkit-details-marker{display:none}.advanced-info>summary span{align-items:center;gap:7px;display:flex}.advanced-info>summary b{font-size:11px}.advanced-info>summary small{background:var(--purple-soft);color:var(--purple);border-radius:7px;padding:3px 6px;font-size:8px}.advanced-info>summary i{color:var(--muted);font-style:normal;transition:transform .2s}.advanced-info[open]>summary i{transform:rotate(180deg)}.advanced-info-fields{border-top:1px solid var(--line);gap:10px;padding:12px 13px 13px;display:grid}.advanced-info-fields textarea{resize:vertical;border:1px solid var(--line);background:var(--surface);width:100%;color:var(--text);font:inherit;border-radius:11px;outline:0;padding:10px}.app.dark .admin-rank-grid article,.app.dark .admin-staff-rank-section,.app.dark .admin-staff-member-grid>article{background:#122137;border-color:#2b405c}.app.dark .advanced-info{background:#132238;border-color:#2b405c}.app.dark .advanced-info-fields textarea{color:#f4f7ff;background:#17263b;border-color:#30445f}.admin-rank-grid button{border:1px solid var(--line);background:var(--surface);color:var(--text);box-shadow:var(--shadow);text-align:right;cursor:pointer;border-radius:15px;align-items:center;gap:10px;padding:14px;transition:all .2s;display:flex;position:relative}.admin-rank-grid button:hover{border-color:var(--blue);transform:translateY(-2px)}@supports (color:color-mix(in lab, red, red)){.admin-rank-grid button:hover{border-color:color-mix(in srgb,var(--blue) 35%,var(--line))}}.admin-rank-grid button.selected{box-shadow:0 0 0 3px currentColor,var(--shadow);border-color:currentColor}@supports (color:color-mix(in lab, red, red)){.admin-rank-grid button.selected{box-shadow:0 0 0 3px color-mix(in srgb,currentColor 9%,transparent),var(--shadow)}}.admin-rank-grid button>i{color:#fff;border-radius:12px;place-items:center;width:39px;height:39px;font-style:normal;display:grid}.admin-rank-grid button>div{flex:1}.admin-rank-grid button strong,.admin-rank-grid button small{display:block}.admin-rank-grid button strong{font-size:12px}.admin-rank-grid button small{color:var(--muted);margin-top:3px;font-size:9px}.admin-rank-grid button>b{font-size:22px}.admin-rank-grid button>em{color:var(--muted);font-size:7px;font-style:normal;position:absolute;bottom:7px;left:10px}.admin-rank-grid button.rank-tone-1{color:#3976df}.admin-rank-grid button.rank-tone-1>i{background:#3976df}.admin-rank-grid button.rank-tone-2{color:#8c59d4}.admin-rank-grid button.rank-tone-2>i{background:#8c59d4}.admin-rank-grid button.rank-tone-3{color:#18a16e}.admin-rank-grid button.rank-tone-3>i{background:#18a16e}.admin-rank-prompt{min-height:170px}.app.dark .admin-rank-grid button{background:#122137;border-color:#2b405c}@media (max-width:900px){.admin-staff-member-grid{grid-template-columns:1fr}}@media (max-width:620px){.staff-hero-actions{justify-content:space-between;width:100%}.admin-rank-grid{grid-template-columns:1fr}.admin-staff-member-grid>article{flex-wrap:wrap}.admin-staff-member-grid .action-buttons{flex-direction:row;width:100%}.admin-staff-member-grid .action-buttons button{flex:1}}.employment-type-badge{white-space:nowrap;border-radius:999px;flex:none;padding:6px 9px;font-size:8px;font-weight:900}.employment-type-badge.permanent{color:#087d53;background:#dff8ed;border:1px solid #a9e8d0}.employment-type-badge.contract{color:#a75b00;background:#fff2d5;border:1px solid #f2d28d}.document-employment-line{border:1px solid #b8bdc5;border-radius:7px;justify-content:center;align-items:center;gap:12px;width:max-content;min-width:150px;margin:0 auto 20px;padding:7px 14px;font-size:12px;display:flex}.document-employment-line span{color:#555}.document-employment-line.permanent{background:#f3fbf7;border-color:#afd9c5}.document-employment-line.contract{background:#fff8e8;border-color:#e2c477}.files-page{flex-direction:column;gap:13px;display:flex}.files-hero{background:linear-gradient(135deg,var(--surface),var(--purple-soft));align-items:center;gap:15px;padding:20px;display:flex}@supports (color:color-mix(in lab, red, red)){.files-hero{background:linear-gradient(135deg,var(--surface),color-mix(in srgb,var(--purple-soft) 45%,var(--surface)))}}.files-hero-icon{color:#fff;background:linear-gradient(145deg,#6f4ac8,#9a72e5);border-radius:16px;place-items:center;width:53px;height:53px;font-size:25px;display:grid;box-shadow:0 10px 24px #6f4ac83d}.files-hero>div:nth-child(2){flex:1}.files-hero span,.files-hero h2,.files-hero p{display:block}.files-hero span{color:var(--purple);font-size:10px;font-weight:900}.files-hero h2{margin:3px 0;font-size:21px}.files-hero p{color:var(--muted);margin:0;font-size:10px}.files-hero>b{background:var(--purple-soft);color:var(--purple);white-space:nowrap;border-radius:13px;padding:8px 11px;font-size:9px}.file-template-tabs{grid-template-columns:repeat(4,1fr);gap:9px;padding:11px;display:grid}.file-template-tabs button{border:1px solid var(--line);background:var(--surface-2);min-height:60px;color:var(--text);text-align:right;cursor:pointer;border-radius:12px;align-items:center;gap:9px;padding:9px;display:flex}.file-template-tabs button>i{background:var(--surface);width:31px;height:31px;color:var(--muted);border-radius:9px;place-items:center;font-style:normal;font-weight:900;display:grid}.file-template-tabs button>span{flex:1}.file-template-tabs strong,.file-template-tabs small{display:block}.file-template-tabs strong{font-size:10px}.file-template-tabs small{color:var(--muted);margin-top:3px;font-size:8px}.file-template-tabs button.selected{border-color:var(--purple);background:var(--purple-soft);box-shadow:0 0 0 3px var(--purple)}@supports (color:color-mix(in lab, red, red)){.file-template-tabs button.selected{box-shadow:0 0 0 3px color-mix(in srgb,var(--purple) 8%,transparent)}}.file-template-tabs button.selected>i{background:var(--purple);color:#fff}.files-workspace{grid-template-columns:minmax(270px,340px) minmax(0,1fr);align-items:start;gap:13px;display:grid}.file-controls{gap:11px;padding:15px;display:grid;position:sticky;top:86px}.file-controls-head{border-bottom:1px solid var(--line);align-items:center;gap:9px;padding-bottom:11px;display:flex}.file-controls-head>span{background:var(--purple);color:#fff;border-radius:10px;place-items:center;width:34px;height:34px;font-weight:900;display:grid}.file-controls-head strong,.file-controls-head small{display:block}.file-controls-head strong{font-size:12px}.file-controls-head small{color:var(--muted);margin-top:2px;font-size:8px}.file-controls label>span{color:var(--muted);margin-bottom:5px;font-size:9px;font-weight:800;display:block}.file-controls input,.file-controls select{border:1px solid var(--line);background:var(--surface-2);width:100%;height:42px;color:var(--text);border-radius:10px;outline:0;padding:0 10px;font-size:9px;font-weight:700}.file-controls input:focus,.file-controls select:focus{border-color:var(--purple);box-shadow:0 0 0 3px var(--purple)}@supports (color:color-mix(in lab, red, red)){.file-controls input:focus,.file-controls select:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--purple) 10%,transparent)}}.file-control-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.file-employee-summary{border:1px solid var(--green);align-items:center;gap:9px;padding:10px;display:flex}@supports (color:color-mix(in lab, red, red)){.file-employee-summary{border:1px solid color-mix(in srgb,var(--green) 24%,var(--line))}}.file-employee-summary{background:var(--green-soft);border-radius:11px}.file-employee-summary.admin{border-color:var(--purple)}@supports (color:color-mix(in lab, red, red)){.file-employee-summary.admin{border-color:color-mix(in srgb,var(--purple) 24%,var(--line))}}.file-employee-summary.admin{background:var(--purple-soft)}.file-employee-summary>div:nth-child(2){flex:1}.file-employee-summary strong,.file-employee-summary small,.file-employee-summary span{display:block}.file-employee-summary strong{font-size:10px}.file-employee-summary small{color:var(--muted);margin-top:2px;font-size:8px}.file-employee-summary span{color:var(--green);margin-top:4px;font-size:8px;font-weight:900}.file-employee-summary.admin span{color:var(--purple)}.file-template-note{background:var(--blue-soft);border:1px solid var(--blue);border-radius:10px;align-items:flex-start;gap:8px;padding:9px;display:flex}@supports (color:color-mix(in lab, red, red)){.file-template-note{border:1px solid color-mix(in srgb,var(--blue) 18%,var(--line))}}.file-template-note>span{background:var(--blue);color:#fff;border-radius:50%;place-items:center;width:21px;height:21px;font-size:9px;font-weight:900;display:grid}.file-template-note>div{flex:1}.file-template-note strong,.file-template-note small{display:block}.file-template-note strong{font-size:9px}.file-template-note small{color:var(--muted);margin-top:2px;font-size:8px;line-height:1.6}.print-file-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#6e49c8,#8e65dd);border:0;border-radius:11px;height:43px;font-size:10px;font-weight:900;box-shadow:0 9px 20px #6f4ac838}.print-file-button:disabled{opacity:.5;cursor:not-allowed}.official-document-shell{padding:14px;overflow:auto}.document-preview-label{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.document-preview-label span{color:var(--muted);font-size:10px;font-weight:900}.document-preview-label b{background:var(--green-soft);color:var(--green);border-radius:8px;padding:5px 8px;font-size:8px}.official-document{color:#111;background:#fff;border:1px solid #dfe3e9;width:min(100%,760px);min-height:900px;margin:auto;padding:54px 62px;font-family:Arial,sans-serif;box-shadow:0 17px 46px #1b27441f}.official-document>header{grid-template-columns:90px 1fr 170px;align-items:start;gap:16px;display:grid}.official-document>header>div{border:1px solid #c8cdd5;border-radius:50%;place-items:center;width:76px;height:76px;display:grid;overflow:hidden}.official-document>header img{object-fit:contain;width:100%;height:100%}.official-document>header>div>span{font-size:30px;font-weight:900}.official-document>header section{text-align:center}.official-document>header section small,.official-document>header section strong{display:block}.official-document>header section small{margin-bottom:4px;font-size:13px}.official-document>header section strong{margin:7px 0;font-size:18px}.official-document>header aside{text-align:right;direction:rtl;padding-top:8px}.official-document>header aside span{margin-bottom:9px;font-size:12px;display:block}.document-divider{background:#111;border-bottom:1px solid #111;height:3px;margin:24px 0 36px;padding-bottom:3px}.document-recipient{align-items:center;gap:8px;font-size:15px;display:flex}.official-document h3{text-align:center;margin:38px 0 30px;font-size:18px;text-decoration:underline}.official-document>p{text-align:justify;margin:0;font-size:16px;line-height:2.4}.document-closing{margin-top:28px!important}.official-document>footer{justify-content:flex-end;align-items:center;gap:60px;margin:75px 40px 0;display:flex}.official-document>footer>div:first-child{text-align:center}.official-document>footer strong,.official-document>footer span,.official-document>footer small{display:block}.official-document>footer strong{font-size:16px}.official-document>footer span{margin:8px 0;font-size:13px}.official-document>footer small{font-size:11px}.document-stamp{text-align:center;color:#777;border:2px dashed #818892;border-radius:50%;place-items:center;width:88px;height:88px;font-size:12px;line-height:1.6;display:grid;transform:rotate(-7deg)}.document-copy{border-top:1px solid #aaa;flex-wrap:wrap;gap:16px;margin-top:95px;padding-top:13px;font-size:10px;display:flex}.document-copy strong{width:100%}.app.dark .official-document-shell{background:#101c2e}.app.dark .file-controls{background:#122137}.app.dark .file-controls input,.app.dark .file-controls select{color:#f4f7ff;background:#17263b;border-color:#30445f}@media (max-width:1050px){.file-template-tabs{grid-template-columns:repeat(2,1fr)}.files-workspace{grid-template-columns:1fr}.file-controls{position:static}.official-document{min-width:650px}}@media (max-width:620px){.files-hero{flex-wrap:wrap;align-items:flex-start}.files-hero>b{margin-right:auto}.file-template-tabs,.file-control-grid{grid-template-columns:1fr}.official-document-shell{padding:8px}}@media print{body:not(.printing-timetable) *{visibility:hidden!important}body:not(.printing-timetable) .official-document,body:not(.printing-timetable) .official-document *{visibility:visible!important}.official-document{width:210mm;min-height:297mm;box-shadow:none;border:0;margin:0;padding:18mm 20mm;position:absolute;inset:0}.official-document-shell{border:0;padding:0}.document-preview-label{display:none!important}@page{size:A4;margin:0}}.custom-document-fields{gap:11px;display:grid}.file-controls textarea{resize:vertical;border:1px solid var(--line);background:var(--surface-2);width:100%;min-height:155px;color:var(--text);border-radius:10px;outline:0;padding:11px;font-size:10px;font-weight:700;line-height:1.9}.file-controls textarea:focus{border-color:var(--purple);box-shadow:0 0 0 3px var(--purple)}@supports (color:color-mix(in lab, red, red)){.file-controls textarea:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--purple) 10%,transparent)}}.custom-document-fields label>small{color:var(--muted);text-align:left;margin-top:4px;font-size:8px;display:block}.custom-document-body{white-space:pre-wrap}.app.dark .file-controls textarea{color:#f4f7ff;background:#17263b;border-color:#30445f}@media (min-width:1051px){.file-template-tabs{grid-template-columns:repeat(5,1fr)}}.authorization-document-fields{border:1px solid var(--purple);gap:11px;padding:11px;display:grid}@supports (color:color-mix(in lab, red, red)){.authorization-document-fields{border:1px solid color-mix(in srgb,var(--purple) 20%,var(--line))}}.authorization-document-fields{background:var(--purple-soft);border-radius:12px}@supports (color:color-mix(in lab, red, red)){.authorization-document-fields{background:color-mix(in srgb,var(--purple-soft) 38%,var(--surface))}}.authorization-document-fields textarea{min-height:92px}@media (min-width:1051px){.file-template-tabs{grid-template-columns:repeat(6,1fr)}}.specialty-edit-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#0ea76f,#18bf84);border:0;border-radius:10px;flex:none;justify-content:center;align-items:center;gap:6px;min-height:36px;padding:8px 11px;font-size:9px;font-weight:900;transition:all .18s;display:flex;box-shadow:0 7px 16px #0ea76f33}.specialty-edit-button:hover{transform:translateY(-1px);box-shadow:0 9px 20px #0ea76f47}.specialty-edit-button>span{font-size:12px}@media (max-width:760px){.specialty-edit-button{order:4;width:100%}.teacher-lesson-count{order:3}}.timetable-builder-page{flex-direction:column;gap:13px;display:flex}.timetable-hero{background:linear-gradient(135deg,var(--surface),var(--blue-soft));align-items:center;gap:15px;padding:20px;display:flex}@supports (color:color-mix(in lab, red, red)){.timetable-hero{background:linear-gradient(135deg,var(--surface),color-mix(in srgb,var(--blue-soft) 58%,var(--surface)))}}.timetable-hero-icon{color:#fff;background:linear-gradient(145deg,#245fcf,#4b8ff1);border-radius:17px;place-items:center;width:54px;height:54px;font-size:27px;display:grid;box-shadow:0 10px 24px #245fcf3d}.timetable-hero>div:nth-child(2){flex:1}.timetable-hero span,.timetable-hero h2,.timetable-hero p{display:block}.timetable-hero>div:nth-child(2)>span{color:var(--blue);font-size:10px;font-weight:900}.timetable-hero h2{margin:4px 0;font-size:22px}.timetable-hero p{color:var(--muted);margin:0;font-size:10px;line-height:1.7}.timetable-total{text-align:center;border:1px solid var(--line);background:var(--surface);border-radius:15px;min-width:145px;padding:12px 14px}.timetable-total small,.timetable-total strong,.timetable-total span{display:block}.timetable-total small{color:var(--muted);font-size:8px}.timetable-total strong{margin:2px 0;font-size:27px}.timetable-total span{font-size:8px;font-weight:900}.timetable-total.balanced{border-color:var(--green)}@supports (color:color-mix(in lab, red, red)){.timetable-total.balanced{border-color:color-mix(in srgb,var(--green) 35%,var(--line))}}.timetable-total.balanced{color:var(--green)}.timetable-total.needs-review{border-color:var(--orange)}@supports (color:color-mix(in lab, red, red)){.timetable-total.needs-review{border-color:color-mix(in srgb,var(--orange) 35%,var(--line))}}.timetable-total.needs-review{color:var(--orange)}.timetable-tabs{grid-template-columns:repeat(4,1fr);gap:9px;padding:11px;display:grid}.timetable-tabs button{border:1px solid var(--line);background:var(--surface-2);min-height:60px;color:var(--text);text-align:right;cursor:pointer;border-radius:13px;align-items:center;gap:10px;padding:10px;display:flex}.timetable-tabs button>span{background:var(--surface);width:33px;height:33px;color:var(--muted);border-radius:10px;place-items:center;font-weight:900;display:grid}.timetable-tabs button>div{flex:1}.timetable-tabs strong,.timetable-tabs small{display:block}.timetable-tabs strong{font-size:11px}.timetable-tabs small{color:var(--muted);margin-top:3px;font-size:8px}.timetable-tabs button.selected{border-color:var(--blue);background:var(--blue-soft);box-shadow:0 0 0 3px var(--blue)}@supports (color:color-mix(in lab, red, red)){.timetable-tabs button.selected{box-shadow:0 0 0 3px color-mix(in srgb,var(--blue) 8%,transparent)}}.timetable-tabs button.selected>span{background:var(--blue);color:#fff}.timetable-grade-picker{justify-content:space-between;align-items:center;gap:15px;padding:15px;display:flex}.timetable-grade-picker>div:first-child span,.timetable-grade-picker>div:first-child strong,.timetable-grade-picker>div:first-child small{display:block}.timetable-grade-picker>div:first-child span{color:var(--blue);font-size:8px;font-weight:900}.timetable-grade-picker>div:first-child strong{margin:3px 0;font-size:13px}.timetable-grade-picker>div:first-child small{color:var(--muted);font-size:8px}.timetable-grade-picker>div:last-child{flex-wrap:wrap;gap:7px;display:flex}.timetable-grade-picker button{border:1px solid var(--line);background:var(--surface-2);color:var(--text);cursor:pointer;border-radius:10px;padding:9px 13px;font-size:9px;font-weight:900}.timetable-grade-picker button.selected{background:var(--blue);border-color:var(--blue);color:#fff;box-shadow:0 6px 14px #2563eb38}.timetable-load-panel{padding:0;overflow:hidden}.timetable-panel-heading{border-bottom:1px solid var(--line);background:var(--surface-2);justify-content:space-between;align-items:center;gap:15px;padding:16px 18px;display:flex}.timetable-panel-heading span,.timetable-panel-heading strong,.timetable-panel-heading small{display:block}.timetable-panel-heading span{color:var(--blue);font-size:8px;font-weight:900}.timetable-panel-heading strong{margin:3px 0;font-size:14px}.timetable-panel-heading small{color:var(--muted);font-size:8px}.timetable-reset{border:1px solid var(--line);background:var(--surface);color:var(--blue);cursor:pointer;border-radius:10px;padding:9px 12px;font-size:8px;font-weight:900}.subject-load-grid{grid-template-columns:repeat(3,1fr);gap:10px;padding:14px;display:grid}.subject-load-card{border:1px solid var(--line);background:var(--surface);border-radius:14px;align-items:center;gap:12px;padding:13px;display:flex;position:relative;overflow:hidden}.subject-load-card:before{content:"";background:var(--blue);width:4px;position:absolute;inset:0 auto 0 0}.subject-load-card.tone-2:before{background:var(--green)}.subject-load-card.tone-3:before{background:var(--orange)}.subject-load-card.tone-4:before{background:var(--purple)}.subject-load-card.tone-5:before{background:#e54856}.subject-load-card>div{flex:1;min-width:0}.subject-load-card span,.subject-load-card strong,.subject-load-card small{display:block}.subject-load-card span{color:var(--blue);font-size:7px;font-weight:900}.subject-load-card strong{margin:4px 0;font-size:10px}.subject-load-card small{color:var(--muted);font-size:8px}.subject-load-card.optional{background:var(--purple-soft);border-style:dashed}@supports (color:color-mix(in lab, red, red)){.subject-load-card.optional{background:color-mix(in srgb,var(--purple-soft) 26%,var(--surface))}}.subject-load-card.optional span{color:var(--purple)}.subject-load-card label{border:1px solid var(--line);background:var(--surface-2);border-radius:10px;align-items:center;display:flex;overflow:hidden}.subject-load-card label button{width:30px;height:34px;color:var(--blue);cursor:pointer;background:0 0;border:0;font-size:15px;font-weight:900}.subject-load-card label input{border:0;border-inline:1px solid var(--line);background:var(--surface);width:38px;height:34px;color:var(--text);text-align:center;appearance:textfield;font-size:12px;font-weight:900}.subject-load-card label input::-webkit-inner-spin-button{display:none}.timetable-save-bar{border-top:1px solid var(--line);background:var(--surface-2);justify-content:space-between;align-items:center;gap:15px;padding:14px 18px;display:flex}.timetable-save-bar>div{align-items:center;gap:10px;display:flex}.timetable-save-bar>div>span{color:#fff;border-radius:11px;place-items:center;width:35px;height:35px;font-weight:900;display:grid}.timetable-save-bar>div>span.ok{background:var(--green)}.timetable-save-bar>div>span.warning{background:var(--orange)}.timetable-save-bar strong,.timetable-save-bar small{display:block}.timetable-save-bar strong{font-size:10px}.timetable-save-bar small{color:var(--muted);margin-top:3px;font-size:8px}.timetable-save-bar>button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:10px;padding:11px 17px;font-size:9px;font-weight:900;box-shadow:0 7px 16px #2563eb33}.timetable-save-bar>button:disabled{opacity:.55;cursor:not-allowed}.teacher-rules-layout{grid-template-columns:320px minmax(0,1fr);align-items:start;gap:13px;display:grid}.timetable-teacher-list{padding:16px;position:sticky;top:87px}.timetable-teacher-list>div:first-child span,.timetable-teacher-list>div:first-child strong,.timetable-teacher-list>div:first-child small{display:block}.timetable-teacher-list>div:first-child span{color:var(--green);font-size:8px;font-weight:900}.timetable-teacher-list>div:first-child strong{margin:3px 0;font-size:14px}.timetable-teacher-list>div:first-child small{color:var(--muted);font-size:8px;line-height:1.6}.timetable-teacher-list label{margin-top:14px;display:block}.timetable-teacher-list label>small{color:var(--muted);margin-bottom:5px;font-size:8px;font-weight:900;display:block}.timetable-teacher-list select{width:100%;height:43px;font-size:9px;font-weight:800}.teacher-rule-summary{background:var(--blue-soft);border:1px solid var(--blue);border-radius:11px;align-items:flex-start;gap:8px;margin-top:11px;padding:10px;display:flex}@supports (color:color-mix(in lab, red, red)){.teacher-rule-summary{border:1px solid color-mix(in srgb,var(--blue) 18%,var(--line))}}.teacher-rule-summary>span{background:var(--blue);color:#fff;border-radius:50%;place-items:center;width:22px;height:22px;font-size:9px;font-weight:900;display:grid}.teacher-rule-summary p{color:var(--muted);flex:1;margin:0;font-size:8px;line-height:1.7}.teacher-rules-editor{padding:0;overflow:hidden}.teacher-rule-identity{border-bottom:1px solid var(--line);background:linear-gradient(135deg,var(--surface-2),var(--green-soft));align-items:center;gap:11px;padding:15px 17px;display:flex}.teacher-rule-identity>div:nth-child(2){flex:1}.teacher-rule-identity span,.teacher-rule-identity strong,.teacher-rule-identity small{display:block}.teacher-rule-identity span{color:var(--green);font-size:8px;font-weight:900}.teacher-rule-identity strong{margin:3px 0;font-size:13px}.teacher-rule-identity small{color:var(--muted);font-size:8px}.rule-block{border-bottom:1px solid var(--line);padding:16px 18px}.rule-block>div:first-child>span,.rule-block>div:first-child>strong,.rule-block>div:first-child>small{display:block}.rule-block>div:first-child>span{color:var(--purple);font-size:7px;font-weight:900}.rule-block>div:first-child>strong{margin:3px 0;font-size:11px}.rule-block>div:first-child>small{color:var(--muted);font-size:8px}.day-rule-buttons{grid-template-columns:repeat(5,1fr);gap:7px;margin-top:11px;display:grid}.day-rule-buttons button{border:1px solid var(--line);background:var(--surface-2);height:42px;color:var(--text);cursor:pointer;border-radius:11px;font-size:9px;font-weight:900}.day-rule-buttons button>span{color:var(--muted);margin-left:4px}.day-rule-buttons button.selected{color:#cf3543;background:#fff0f1;border-color:#e54856}.dark .day-rule-buttons button.selected{background:#3b2026}.period-rule-grid{grid-template-columns:1fr 1fr;gap:9px;margin-top:11px;display:grid}.period-rule-grid label{border:1px solid var(--line);background:var(--surface-2);cursor:pointer;border-radius:12px;align-items:center;gap:10px;padding:12px;display:flex}.period-rule-grid label>input{opacity:0;pointer-events:none;position:absolute}.period-rule-grid label>span{background:var(--surface);width:36px;height:36px;color:var(--muted);border-radius:11px;place-items:center;font-size:14px;font-weight:900;display:grid}.period-rule-grid label strong,.period-rule-grid label small{display:block}.period-rule-grid label strong{font-size:10px}.period-rule-grid label small{color:var(--muted);margin-top:3px;font-size:8px}.period-rule-grid label.selected{border-color:var(--green);background:var(--green-soft)}.period-rule-grid label.selected>span{background:var(--green);color:#fff}.lesson-limit-rule{justify-content:space-between;align-items:center;gap:14px;display:flex}.lesson-limit-rule>label{border:1px solid var(--line);background:var(--surface-2);border-radius:11px;align-items:center;display:flex;overflow:hidden}.lesson-limit-rule input{background:var(--surface);width:70px;height:42px;color:var(--text);text-align:center;border:0;font-size:15px;font-weight:900}.lesson-limit-rule label>span{color:var(--muted);padding:0 11px;font-size:8px}.timetable-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:210px;display:flex}.timetable-empty>span{background:var(--blue-soft);width:48px;height:48px;color:var(--blue);border-radius:15px;place-items:center;font-size:22px;display:grid}.timetable-empty strong{margin-top:10px;font-size:13px}.timetable-empty small{color:var(--muted);margin-top:4px;font-size:8px}.timetable-preview-panel{padding:0;overflow:hidden}.timetable-preview-head{border-bottom:1px solid var(--line);background:var(--surface-2);justify-content:space-between;align-items:center;gap:15px;padding:15px 18px;display:flex}.timetable-preview-head>div:first-child span,.timetable-preview-head>div:first-child strong,.timetable-preview-head>div:first-child small{display:block}.timetable-preview-head>div:first-child span{color:var(--purple);font-size:8px;font-weight:900}.timetable-preview-head>div:first-child strong{margin:3px 0;font-size:14px}.timetable-preview-head>div:first-child small{color:var(--muted);font-size:8px}.timetable-preview-head>div:last-child{gap:8px;display:flex}.timetable-preview-head label>small{color:var(--muted);margin-bottom:4px;font-size:7px;font-weight:900;display:block}.timetable-preview-head select{min-width:130px;height:38px}.timetable-conflict{border:1px solid #e54856;align-items:center;gap:9px;margin:12px 14px 0;padding:10px;display:flex}@supports (color:color-mix(in lab, red, red)){.timetable-conflict{border:1px solid color-mix(in srgb,#e54856 35%,var(--line))}}.timetable-conflict{background:#fff0f1;border-radius:11px}.dark .timetable-conflict{background:#3b2026}.timetable-conflict>span{color:#fff;background:#e54856;border-radius:9px;place-items:center;width:28px;height:28px;font-weight:900;display:grid}.timetable-conflict strong,.timetable-conflict small{display:block}.timetable-conflict strong{color:#cf3543;font-size:9px}.timetable-conflict small{color:var(--muted);margin-top:2px;font-size:8px}.timetable-preview-scroll{padding:14px;overflow:auto}.timetable-generated-matrix{border:1px solid var(--line);border-radius:13px;min-width:850px;overflow:hidden}.timetable-preview-footer{border-top:1px solid var(--line);background:var(--surface-2);justify-content:space-between;align-items:center;gap:14px;padding:13px 18px;display:flex}.timetable-preview-footer>div{align-items:center;gap:9px;display:flex}.timetable-preview-footer>div>span{background:var(--green);color:#fff;border-radius:10px;place-items:center;width:34px;height:34px;font-weight:900;display:grid}.timetable-preview-footer strong,.timetable-preview-footer small{display:block}.timetable-preview-footer strong{font-size:10px}.timetable-preview-footer small{color:var(--muted);margin-top:2px;font-size:8px}.timetable-preview-footer>button{background:var(--green);color:#fff;cursor:pointer;border:0;border-radius:10px;padding:10px 16px;font-size:9px;font-weight:900}.app.dark .subject-load-card,.app.dark .timetable-total,.app.dark .timetable-grade-picker button,.app.dark .subject-load-card label input,.app.dark .lesson-limit-rule input{background:#122137;border-color:#2b405c}.app.dark .timetable-tabs button,.app.dark .subject-load-card label,.app.dark .day-rule-buttons button,.app.dark .period-rule-grid label{background:#132238;border-color:#2b405c}@media (max-width:1100px){.subject-load-grid{grid-template-columns:repeat(2,1fr)}.teacher-rules-layout{grid-template-columns:270px minmax(0,1fr)}}@media (max-width:820px){.timetable-hero,.timetable-grade-picker,.timetable-preview-head,.lesson-limit-rule{flex-wrap:wrap;align-items:flex-start}.timetable-total{width:100%}.timetable-tabs,.subject-load-grid,.teacher-rules-layout{grid-template-columns:1fr}.timetable-teacher-list{position:static}.day-rule-buttons{grid-template-columns:repeat(3,1fr)}.period-rule-grid{grid-template-columns:1fr}}@media (max-width:520px){.timetable-preview-head>div:last-child{grid-template-columns:1fr 1fr;width:100%;display:grid}.timetable-preview-head select{width:100%;min-width:0}.timetable-save-bar{flex-direction:column;align-items:flex-start}.timetable-save-bar>button{width:100%}.day-rule-buttons{grid-template-columns:1fr 1fr}}.additional-period-rule{border:1px solid var(--line);background:var(--surface-2);border-radius:12px;grid-column:1/-1;grid-template-columns:36px minmax(0,1fr) minmax(150px,190px);align-items:center;gap:10px;padding:12px;display:grid}.additional-period-rule>span{background:var(--surface);width:36px;height:36px;color:var(--muted);border-radius:11px;place-items:center;font-size:14px;font-weight:900;display:grid}.additional-period-rule strong,.additional-period-rule small{display:block}.additional-period-rule strong{font-size:10px}.additional-period-rule small{color:var(--muted);margin-top:3px;font-size:8px}.additional-period-rule select{width:100%;height:38px;font-size:9px;font-weight:800}.additional-period-rule.selected{border-color:var(--green);background:var(--green-soft)}.additional-period-rule.selected>span{background:var(--green);color:#fff}.app.dark .additional-period-rule{background:#132238;border-color:#2b405c}@media (max-width:520px){.additional-period-rule{grid-template-columns:36px minmax(0,1fr)}.additional-period-rule select{grid-column:1/-1}}.seventh-period-picker{border:1px solid var(--purple);grid-template-columns:minmax(190px,1fr) minmax(380px,2fr) auto;align-items:center;gap:12px;margin:13px 14px 0;padding:13px 15px;display:grid}@supports (color:color-mix(in lab, red, red)){.seventh-period-picker{border:1px solid color-mix(in srgb,var(--purple) 24%,var(--line))}}.seventh-period-picker{background:var(--purple-soft);border-radius:13px}@supports (color:color-mix(in lab, red, red)){.seventh-period-picker{background:color-mix(in srgb,var(--purple-soft) 32%,var(--surface))}}.seventh-period-picker>div:first-child span,.seventh-period-picker>div:first-child strong,.seventh-period-picker>div:first-child small{display:block}.seventh-period-picker>div:first-child span{color:var(--purple);font-size:7px;font-weight:900}.seventh-period-picker>div:first-child strong{margin:3px 0;font-size:11px}.seventh-period-picker>div:first-child small{color:var(--muted);font-size:8px;line-height:1.5}.seventh-day-buttons{grid-template-columns:repeat(5,1fr);gap:6px;display:grid}.seventh-day-buttons button{border:1px solid var(--line);background:var(--surface);height:39px;color:var(--text);cursor:pointer;border-radius:10px;font-size:8px;font-weight:900}.seventh-day-buttons button span{color:var(--purple);margin-left:3px}.seventh-day-buttons button.selected{background:var(--purple);border-color:var(--purple);color:#fff;box-shadow:0 5px 12px var(--purple)}@supports (color:color-mix(in lab, red, red)){.seventh-day-buttons button.selected{box-shadow:0 5px 12px color-mix(in srgb,var(--purple) 24%,transparent)}}.seventh-day-buttons button.selected span{color:#fff}.save-seventh-days{background:var(--purple);color:#fff;cursor:pointer;border:0;border-radius:10px;height:39px;padding:0 14px;font-size:8px;font-weight:900}.save-seventh-days:disabled{opacity:.55;cursor:not-allowed}.seventh-period-row th,.seventh-period-row td{border-top:2px solid var(--purple)}@supports (color:color-mix(in lab, red, red)){.seventh-period-row th,.seventh-period-row td{border-top:2px solid color-mix(in srgb,var(--purple) 35%,var(--line))}}.seventh-period-row .matrix-period{background:var(--purple-soft)}@supports (color:color-mix(in lab, red, red)){.seventh-period-row .matrix-period{background:color-mix(in srgb,var(--purple-soft) 42%,var(--surface-2))}}.matrix-disabled{background:repeating-linear-gradient(135deg,var(--surface-2),var(--surface-2) 7px,var(--line) 7px,var(--line) 8px)!important}@supports (color:color-mix(in lab, red, red)){.matrix-disabled{background:repeating-linear-gradient(135deg,var(--surface-2),var(--surface-2) 7px,color-mix(in srgb,var(--line) 45%,var(--surface-2)) 7px,color-mix(in srgb,var(--line) 45%,var(--surface-2)) 8px)!important}}.matrix-disabled{color:var(--muted)}.matrix-disabled i{opacity:.75;font-size:7px;font-style:normal}.app.dark .seventh-period-picker{background:#171d39;border-color:#3b3d69}.app.dark .seventh-day-buttons button{background:#132238;border-color:#2b405c}@media (max-width:1050px){.seventh-period-picker{grid-template-columns:1fr}.save-seventh-days{justify-self:start}}@media (max-width:620px){.seventh-day-buttons{grid-template-columns:repeat(2,1fr)}.save-seventh-days{width:100%}}.auto-schedule-panel .embedded-seventh-period{margin:0 18px 15px}.teacher-rules-layout>.embedded-seventh-period{grid-column:1/-1;margin:0}.seventh-period-picker.with-context{grid-template-columns:minmax(175px,.85fr) minmax(250px,1.15fr) minmax(350px,1.8fr) auto}.seventh-context-selects{grid-template-columns:1fr 1fr;gap:7px;display:grid}.seventh-context-selects label small{color:var(--muted);margin-bottom:4px;font-size:7px;font-weight:900;display:block}.seventh-context-selects select{width:100%;height:39px;font-size:8px;font-weight:800}.seventh-day-buttons button:disabled{opacity:.45;cursor:not-allowed}@media (max-width:1200px){.seventh-period-picker.with-context{grid-template-columns:1fr 1fr}.seventh-period-picker.with-context .seventh-day-buttons{grid-column:1/-1}}@media (max-width:1050px){.seventh-period-picker.with-context{grid-template-columns:1fr}.seventh-period-picker.with-context .seventh-day-buttons{grid-column:auto}}@media (max-width:620px){.seventh-context-selects{grid-template-columns:1fr}}.mandatory-subject-rules{border:1px solid var(--green);justify-content:space-between;align-items:center;gap:14px;margin:13px 14px 0;padding:13px 15px;display:flex}@supports (color:color-mix(in lab, red, red)){.mandatory-subject-rules{border:1px solid color-mix(in srgb,var(--green) 30%,var(--line))}}.mandatory-subject-rules{background:var(--green-soft);border-radius:13px}@supports (color:color-mix(in lab, red, red)){.mandatory-subject-rules{background:color-mix(in srgb,var(--green-soft) 46%,var(--surface))}}.mandatory-subject-rules>div{align-items:center;gap:10px;display:flex}.mandatory-subject-rules>div>span{background:var(--green);color:#fff;border-radius:11px;place-items:center;width:36px;height:36px;font-size:17px;display:grid}.mandatory-subject-rules strong,.mandatory-subject-rules small{display:block}.mandatory-subject-rules strong{font-size:10px}.mandatory-subject-rules small{color:var(--muted);margin-top:3px;font-size:8px}.mandatory-subject-rules ul{flex-wrap:wrap;gap:7px;margin:0;padding:0;list-style:none;display:flex}.mandatory-subject-rules li{border:1px solid var(--green);padding:8px 10px}@supports (color:color-mix(in lab, red, red)){.mandatory-subject-rules li{border:1px solid color-mix(in srgb,var(--green) 25%,var(--line))}}.mandatory-subject-rules li{background:var(--surface);border-radius:10px;min-width:125px}.mandatory-subject-rules li b,.mandatory-subject-rules li span{display:block}.mandatory-subject-rules li b{color:var(--green);font-size:8px}.mandatory-subject-rules li span{color:var(--muted);margin-top:2px;font-size:7px}.app.dark .mandatory-subject-rules{background:#112a28;border-color:#28534d}.app.dark .mandatory-subject-rules li{background:#132238;border-color:#2b405c}@media (max-width:900px){.mandatory-subject-rules{flex-direction:column;align-items:flex-start}.mandatory-subject-rules ul{width:100%}.mandatory-subject-rules li{flex:1}}@media (max-width:520px){.mandatory-subject-rules ul{grid-template-columns:1fr;width:100%;display:grid}}.additional-period-rule{grid-template-columns:36px minmax(0,1fr) minmax(340px,440px);align-items:start}.additional-period-controls{gap:9px;display:grid}.additional-period-selects{grid-template-columns:1fr 1fr auto;gap:7px;display:grid}.additional-period-selects select{min-width:0}.additional-period-selects select:disabled{opacity:.5;cursor:not-allowed}.save-additional-period{background:var(--green);color:#fff;cursor:pointer;height:38px;box-shadow:0 5px 12px var(--green);border:0;border-radius:9px;padding:0 14px;font-size:9px;font-weight:900}@supports (color:color-mix(in lab, red, red)){.save-additional-period{box-shadow:0 5px 12px color-mix(in srgb,var(--green) 22%,transparent)}}.save-additional-period:disabled{opacity:.5;cursor:not-allowed}.saved-blocked-slots{border-top:1px dashed var(--green);padding-top:8px}@supports (color:color-mix(in lab, red, red)){.saved-blocked-slots{border-top:1px dashed color-mix(in srgb,var(--green) 30%,var(--line))}}.saved-blocked-slots>small{font-weight:900;color:var(--green)!important;margin:0 0 7px!important;display:block!important}.saved-blocked-slots>div{flex-wrap:wrap;gap:6px;display:flex}.saved-blocked-slots>div>span{border:1px solid var(--green);align-items:center;gap:4px;padding:6px 8px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.saved-blocked-slots>div>span{border:1px solid color-mix(in srgb,var(--green) 30%,var(--line))}}.saved-blocked-slots>div>span{background:var(--surface);color:var(--text);border-radius:9px;font-size:8px;font-weight:800}.saved-blocked-slots b{color:var(--green)}.saved-blocked-slots button{color:#fff;cursor:pointer;background:#e54856;border:0;border-radius:6px;width:19px;height:19px;margin-inline-start:3px;font-size:13px;line-height:1}.app.dark .saved-blocked-slots>div>span{background:#122137;border-color:#28534d}@media (max-width:760px){.additional-period-rule{grid-template-columns:36px minmax(0,1fr)}.additional-period-controls{grid-column:1/-1}}@media (max-width:520px){.additional-period-selects{grid-template-columns:1fr 1fr}.save-additional-period{grid-column:1/-1;width:100%}}.constraint-harmony{border:1px solid var(--green);grid-column:1/-1;align-items:center;gap:9px;padding:10px 12px;display:flex}@supports (color:color-mix(in lab, red, red)){.constraint-harmony{border:1px solid color-mix(in srgb,var(--green) 30%,var(--line))}}.constraint-harmony{background:var(--green-soft);border-radius:11px}@supports (color:color-mix(in lab, red, red)){.constraint-harmony{background:color-mix(in srgb,var(--green-soft) 55%,var(--surface))}}.constraint-harmony{margin-top:1px}.constraint-harmony>span{background:var(--green);color:#fff;border-radius:9px;place-items:center;width:28px;height:28px;font-size:12px;font-weight:900;display:grid}.constraint-harmony strong,.constraint-harmony small{display:block}.constraint-harmony strong{color:var(--green);font-size:9px}.constraint-harmony small{color:var(--muted);margin-top:2px;font-size:8px;line-height:1.6}.app.dark .constraint-harmony{background:#112a28;border-color:#28534d}.auto-schedule-panel{padding:0;overflow:hidden}.auto-schedule-head{border-bottom:1px solid var(--line);background:linear-gradient(135deg,var(--blue-soft),var(--purple-soft));align-items:center;gap:12px;padding:17px 19px;display:flex}@supports (color:color-mix(in lab, red, red)){.auto-schedule-head{background:linear-gradient(135deg,color-mix(in srgb,var(--blue-soft) 65%,var(--surface)),color-mix(in srgb,var(--purple-soft) 38%,var(--surface)))}}.auto-schedule-icon{background:linear-gradient(145deg,var(--blue),var(--purple));color:#fff;width:48px;height:48px;box-shadow:0 9px 20px var(--blue);border-radius:15px;place-items:center;font-size:22px;display:grid}@supports (color:color-mix(in lab, red, red)){.auto-schedule-icon{box-shadow:0 9px 20px color-mix(in srgb,var(--blue) 25%,transparent)}}.auto-schedule-head>div:nth-child(2){flex:1}.auto-schedule-head span,.auto-schedule-head strong,.auto-schedule-head small{display:block}.auto-schedule-head span{color:var(--blue);font-size:8px;font-weight:900}.auto-schedule-head strong{margin:3px 0;font-size:15px}.auto-schedule-head small{color:var(--muted);font-size:8px;line-height:1.7}.auto-schedule-head>b{background:var(--surface);border:1px solid var(--line);min-width:72px;color:var(--blue);text-align:center;border-radius:12px;padding:10px;font-size:15px}.auto-schedule-setup{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr 1.15fr;gap:10px;padding:15px 18px;display:grid}.auto-schedule-setup label,.auto-schedule-setup>div{border:1px solid var(--line);background:var(--surface-2);border-radius:12px;padding:11px}.auto-schedule-setup small,.auto-schedule-setup strong,.auto-schedule-setup span{display:block}.auto-schedule-setup small{color:var(--muted);margin-bottom:5px;font-size:8px;font-weight:900}.auto-schedule-setup select{width:100%;height:38px}.auto-schedule-setup strong{color:var(--blue);font-size:13px}.auto-schedule-setup span{color:var(--muted);margin-top:4px;font-size:8px}.auto-rules-heading{justify-content:space-between;align-items:center;gap:12px;padding:15px 18px 8px;display:flex}.auto-rules-heading>div{align-items:center;gap:9px;display:flex}.auto-rules-heading>div>span{background:var(--green);color:#fff;border-radius:11px;place-items:center;width:34px;height:34px;display:grid}.auto-rules-heading strong,.auto-rules-heading small{display:block}.auto-rules-heading strong{font-size:11px}.auto-rules-heading small{color:var(--muted);margin-top:2px;font-size:8px}.auto-rules-heading>b{background:var(--green-soft);color:var(--green);border-radius:9px;padding:7px 10px;font-size:8px}.auto-rule-grid{grid-template-columns:1fr 1fr;gap:9px;padding:6px 18px 16px;display:grid}.auto-rule-grid article{border:1px solid var(--line);background:var(--surface-2);border-radius:13px;align-items:flex-start;gap:10px;padding:13px;display:flex}.auto-rule-grid article>span{background:var(--blue-soft);width:31px;height:31px;color:var(--blue);border-radius:10px;place-items:center;font-size:11px;font-weight:900;display:grid}.auto-rule-grid article:nth-child(2)>span{background:var(--purple-soft);color:var(--purple)}.auto-rule-grid article:nth-child(3)>span{background:var(--orange-soft);color:var(--orange)}.auto-rule-grid article:nth-child(4)>span{background:var(--green-soft);color:var(--green)}.auto-rule-grid strong,.auto-rule-grid small{display:block}.auto-rule-grid strong{font-size:10px}.auto-rule-grid small{color:var(--muted);margin-top:3px;font-size:8px;line-height:1.7}.auto-engine-status{border:1px solid var(--line);background:var(--surface-2);border-radius:13px;align-items:center;gap:10px;margin:0 18px 17px;padding:13px;display:flex}.auto-engine-status>span{color:#fff;border-radius:11px;place-items:center;width:36px;height:36px;font-weight:900;display:grid}.auto-engine-status>div{flex:1}.auto-engine-status strong,.auto-engine-status small{display:block}.auto-engine-status strong{font-size:10px}.auto-engine-status small{color:var(--muted);margin-top:3px;font-size:8px}.auto-engine-status.ready{border-color:var(--green)}@supports (color:color-mix(in lab, red, red)){.auto-engine-status.ready{border-color:color-mix(in srgb,var(--green) 35%,var(--line))}}.auto-engine-status.ready{background:var(--green-soft)}@supports (color:color-mix(in lab, red, red)){.auto-engine-status.ready{background:color-mix(in srgb,var(--green-soft) 42%,var(--surface))}}.auto-engine-status.ready>span{background:var(--green)}.auto-engine-status.needs-review{border-color:var(--orange)}@supports (color:color-mix(in lab, red, red)){.auto-engine-status.needs-review{border-color:color-mix(in srgb,var(--orange) 35%,var(--line))}}.auto-engine-status.needs-review{background:var(--orange-soft)}@supports (color:color-mix(in lab, red, red)){.auto-engine-status.needs-review{background:color-mix(in srgb,var(--orange-soft) 35%,var(--surface))}}.auto-engine-status.needs-review>span{background:var(--orange)}.auto-engine-status button{background:var(--blue);color:#fff;cursor:pointer;white-space:nowrap;border:0;border-radius:10px;padding:11px 15px;font-size:9px;font-weight:900}.auto-engine-status button:disabled{opacity:.5;cursor:not-allowed}.app.dark .auto-schedule-setup label,.app.dark .auto-schedule-setup>div,.app.dark .auto-rule-grid article,.app.dark .auto-schedule-head>b{background:#132238;border-color:#2b405c}.app.dark .auto-engine-status.ready{background:#112a28}.app.dark .auto-engine-status.needs-review{background:#362a19}@media (max-width:900px){.timetable-tabs,.auto-schedule-setup{grid-template-columns:1fr 1fr}.auto-schedule-setup>div{grid-column:1/-1}}@media (max-width:620px){.timetable-tabs{grid-template-columns:1fr}.auto-schedule-head{flex-wrap:wrap;align-items:flex-start}.auto-schedule-head>b{margin-inline-start:auto}.auto-schedule-setup,.auto-rule-grid{grid-template-columns:1fr}.auto-schedule-setup>div{grid-column:auto}.auto-engine-status{flex-wrap:wrap;align-items:flex-start}.auto-engine-status button{width:100%}}.grouped-preview .timetable-preview-head>b{background:var(--blue-soft);color:var(--blue);white-space:nowrap;border-radius:11px;padding:8px 12px;font-size:9px}.preview-mode-tabs{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;gap:10px;padding:14px 16px;display:grid}.preview-mode-tabs button{border:1px solid var(--line);background:var(--surface-2);min-height:62px;color:var(--text);text-align:right;cursor:pointer;border-radius:13px;align-items:center;gap:11px;padding:11px 13px;display:flex}.preview-mode-tabs button>span{background:var(--surface);width:37px;height:37px;color:var(--muted);border-radius:11px;place-items:center;font-size:16px;display:grid}.preview-mode-tabs button>div{flex:1}.preview-mode-tabs strong,.preview-mode-tabs small{display:block}.preview-mode-tabs strong{font-size:11px}.preview-mode-tabs small{color:var(--muted);margin-top:3px;font-size:8px}.preview-mode-tabs button.selected{border-color:var(--blue);background:var(--blue-soft);box-shadow:0 0 0 3px var(--blue)}@supports (color:color-mix(in lab, red, red)){.preview-mode-tabs button.selected{box-shadow:0 0 0 3px color-mix(in srgb,var(--blue) 9%,transparent)}}.preview-mode-tabs button.selected>span{background:var(--blue);color:#fff}.grouped-preview.custom .preview-mode-tabs button.selected{border-color:var(--purple);background:var(--purple-soft);box-shadow:0 0 0 3px var(--purple)}@supports (color:color-mix(in lab, red, red)){.grouped-preview.custom .preview-mode-tabs button.selected{box-shadow:0 0 0 3px color-mix(in srgb,var(--purple) 9%,transparent)}}.grouped-preview.custom .preview-mode-tabs button.selected>span{background:var(--purple)}.preview-scope-bar{border:1px solid var(--line);background:var(--surface-2);border-radius:14px;align-items:end;gap:13px;margin:14px 16px;padding:13px;display:flex}.preview-scope-bar>div{flex:1;align-items:center;gap:9px;display:flex}.preview-scope-bar>div>span{background:var(--green);color:#fff;border-radius:11px;place-items:center;width:38px;height:38px;font-size:15px;display:grid}.preview-scope-bar strong,.preview-scope-bar small{display:block}.preview-scope-bar strong{font-size:11px}.preview-scope-bar small{color:var(--muted);margin-top:3px;font-size:8px}.preview-scope-bar label>small{color:var(--muted);margin-bottom:5px;font-size:8px;font-weight:900;display:block}.preview-scope-bar select{width:290px;height:42px;font-size:9px;font-weight:800}.preview-scope-bar>button{background:var(--green);color:#fff;cursor:pointer;border:0;border-radius:10px;height:42px;padding:0 15px;font-size:9px;font-weight:900}.preview-grade-groups{gap:15px;padding:0 16px 16px;display:grid}.preview-grade-group{border:1px solid var(--line);background:var(--surface-2);border-radius:15px;overflow:hidden}.preview-grade-group>header{border-bottom:1px solid var(--line);background:linear-gradient(135deg,var(--blue-soft),var(--surface));justify-content:space-between;align-items:center;gap:12px;padding:13px 15px;display:flex}.preview-grade-group>header span,.preview-grade-group>header strong,.preview-grade-group>header small{display:block}.preview-grade-group>header span{color:var(--blue);font-size:7px;font-weight:900}.preview-grade-group>header strong{margin:2px 0;font-size:14px}.preview-grade-group>header small{color:var(--muted);font-size:8px}.preview-grade-group>header>b{background:var(--surface);color:var(--blue);border-radius:10px;padding:7px 10px;font-size:9px}.preview-class-list{gap:12px;padding:12px;display:grid}.preview-class-card{border:1px solid var(--line);background:var(--surface);border-radius:14px;overflow:hidden}.preview-class-title{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:11px 13px;display:flex}.preview-class-title span,.preview-class-title strong,.preview-class-title small{display:block}.preview-class-title span{color:var(--purple);font-size:8px;font-weight:900}.preview-class-title strong{margin:2px 0;font-size:12px}.preview-class-title small{color:var(--muted);font-size:7px}.preview-class-title>div:last-child{text-align:center;background:var(--blue-soft);min-width:78px;color:var(--blue);border-radius:10px;padding:7px}.preview-class-title>div:last-child b{font-size:14px;display:block}.preview-class-title>div:last-child small{color:inherit}.preview-class-card .timetable-preview-scroll{padding:11px}.preview-class-card .student-matrix-lesson{min-height:54px}.preview-class-card footer{border-top:1px solid var(--line);background:var(--surface-2);justify-content:space-between;align-items:center;gap:12px;padding:10px 13px;display:flex}.preview-class-card footer>div{align-items:center;gap:8px;display:flex}.preview-class-card footer>div>span{background:var(--green);color:#fff;border-radius:9px;place-items:center;width:30px;height:30px;font-weight:900;display:grid}.preview-class-card footer strong,.preview-class-card footer small{display:block}.preview-class-card footer strong{font-size:9px}.preview-class-card footer small{color:var(--muted);margin-top:2px;font-size:7px}.preview-class-card footer>button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:9px;padding:8px 12px;font-size:8px;font-weight:900}.grouped-preview.custom .preview-class-card footer>button{background:var(--purple)}.preview-inline-warning{color:#cf3543;background:#fff0f1;border-radius:9px;align-items:center;gap:7px;margin:9px 11px 0;padding:7px 9px;display:flex}.preview-inline-warning>span{color:#fff;background:#e54856;border-radius:6px;place-items:center;width:20px;height:20px;font-size:9px;font-weight:900;display:grid}.preview-inline-warning small{font-size:8px;font-weight:800}.app.dark .preview-mode-tabs button,.app.dark .preview-scope-bar,.app.dark .preview-grade-group,.app.dark .preview-class-card,.app.dark .preview-class-card footer{background:#132238;border-color:#2b405c}.app.dark .preview-grade-group>header{background:linear-gradient(135deg,#162b48,#132238)}.app.dark .preview-inline-warning{background:#3b2026}@media (max-width:850px){.preview-scope-bar{flex-wrap:wrap;align-items:stretch}.preview-scope-bar>div{flex-basis:100%;width:100%}.preview-scope-bar label{flex:1}.preview-scope-bar select{width:100%}}@media (max-width:620px){.preview-mode-tabs{grid-template-columns:1fr}.preview-scope-bar>button{width:100%}.preview-class-card footer{flex-direction:column;align-items:flex-start}.preview-class-card footer>button{width:100%}}.academic-classes-page{flex-direction:column;gap:13px;display:flex}.academic-classes-hero{background:linear-gradient(135deg,var(--surface),var(--green-soft));align-items:center;gap:15px;padding:20px;display:flex}@supports (color:color-mix(in lab, red, red)){.academic-classes-hero{background:linear-gradient(135deg,var(--surface),color-mix(in srgb,var(--green-soft) 58%,var(--surface)))}}.academic-classes-icon{color:#fff;background:linear-gradient(145deg,#0d9a69,#24be89);border-radius:17px;place-items:center;width:54px;height:54px;font-size:25px;display:grid;box-shadow:0 10px 24px #0d9a6938}.academic-classes-hero>div:nth-child(2){flex:1}.academic-classes-hero span,.academic-classes-hero h2,.academic-classes-hero p{display:block}.academic-classes-hero>div:nth-child(2)>span{color:var(--green);font-size:9px;font-weight:900}.academic-classes-hero h2{margin:3px 0;font-size:22px}.academic-classes-hero p{color:var(--muted);margin:0;font-size:9px}.academic-classes-summary{border:1px solid var(--green);min-width:175px;padding:11px 14px}@supports (color:color-mix(in lab, red, red)){.academic-classes-summary{border:1px solid color-mix(in srgb,var(--green) 28%,var(--line))}}.academic-classes-summary{background:var(--surface);text-align:center;border-radius:14px}.academic-classes-summary small,.academic-classes-summary strong,.academic-classes-summary span{display:block}.academic-classes-summary small{color:var(--muted);font-size:7px}.academic-classes-summary strong{color:var(--green);margin:3px 0;font-size:13px}.academic-classes-summary span{font-size:8px;font-weight:900}.academic-classes-stats{grid-template-columns:repeat(3,1fr);gap:11px;display:grid}.academic-classes-stats article{padding:15px}.academic-classes-stats span,.academic-classes-stats strong,.academic-classes-stats small{display:block}.academic-classes-stats span{color:var(--muted);font-size:8px;font-weight:900}.academic-classes-stats strong{color:var(--blue);margin:3px 0;font-size:25px}.academic-classes-stats article:nth-child(2) strong{color:var(--purple)}.academic-classes-stats article:nth-child(3) strong{color:var(--green)}.academic-classes-stats small{color:var(--muted);font-size:8px}.academic-grade-grid{gap:13px;display:grid}.academic-grade-card{padding:0;overflow:hidden}.academic-grade-card>header{border-bottom:1px solid var(--line);background:linear-gradient(135deg,var(--blue-soft),var(--surface));align-items:center;gap:12px;padding:15px 17px;display:flex}.academic-grade-card.grade-tone-2>header,.academic-grade-card.grade-tone-5>header{background:linear-gradient(135deg,var(--purple-soft),var(--surface))}.academic-grade-card.grade-tone-3>header,.academic-grade-card.grade-tone-6>header{background:linear-gradient(135deg,var(--green-soft),var(--surface))}.academic-grade-number{background:var(--blue);color:#fff;border-radius:14px;align-content:center;place-items:center;width:48px;height:48px;display:grid}.grade-tone-2 .academic-grade-number,.grade-tone-5 .academic-grade-number{background:var(--purple)}.grade-tone-3 .academic-grade-number,.grade-tone-6 .academic-grade-number{background:var(--green)}.academic-grade-number small,.academic-grade-number strong{text-align:center;display:block}.academic-grade-number small{opacity:.8;font-size:6px}.academic-grade-number strong{font-size:17px}.academic-grade-card>header>div:nth-child(2){flex:1}.academic-grade-card>header span,.academic-grade-card>header h3,.academic-grade-card>header p{display:block}.academic-grade-card>header span{color:var(--blue);font-size:7px;font-weight:900}.academic-grade-card>header h3{margin:2px 0;font-size:15px}.academic-grade-card>header p{color:var(--muted);margin:0;font-size:8px}.academic-grade-card>header>b{background:var(--surface);min-width:82px;color:var(--blue);text-align:center;border-radius:12px;padding:9px;font-size:20px}.academic-grade-card>header>b small{font-size:8px}.academic-section-heading{justify-content:space-between;align-items:center;gap:12px;padding:12px 16px 6px;display:flex}.academic-section-heading strong,.academic-section-heading small{display:block}.academic-section-heading strong{font-size:11px}.academic-section-heading small{color:var(--muted);margin-top:2px;font-size:8px}.academic-section-heading>span{background:var(--green-soft);color:var(--green);border-radius:9px;padding:6px 9px;font-size:8px;font-weight:900}.academic-section-grid{grid-template-columns:repeat(7,1fr);gap:8px;padding:8px 16px 15px;display:grid}.academic-section-grid button{border:1px solid var(--line);background:var(--surface-2);min-height:70px;color:var(--text);text-align:right;cursor:pointer;border-radius:12px;align-items:center;gap:8px;padding:10px;transition:all .18s;display:flex;position:relative}.academic-section-grid button:hover{border-color:var(--blue);box-shadow:0 7px 17px var(--blue);transform:translateY(-2px)}@supports (color:color-mix(in lab, red, red)){.academic-section-grid button:hover{box-shadow:0 7px 17px color-mix(in srgb,var(--blue) 12%,transparent)}}.academic-section-grid button>i{background:var(--blue);color:#fff;border-radius:10px;place-items:center;width:33px;height:33px;font-size:12px;font-style:normal;font-weight:900;display:grid}.academic-section-grid button>div{flex:1;min-width:0}.academic-section-grid strong,.academic-section-grid small{white-space:nowrap;display:block}.academic-section-grid strong{font-size:8px}.academic-section-grid small{color:var(--muted);margin-top:3px;font-size:7px}.academic-section-grid button>b{background:var(--surface);width:18px;height:18px;color:var(--muted);border-radius:6px;place-items:center;font-size:7px;display:grid;position:absolute;top:5px;left:6px}.academic-section-grid button>span{color:var(--blue);font-size:6px;font-weight:900;position:absolute;bottom:5px;left:7px}.academic-section-grid button.empty-section>i{background:var(--muted)}.academic-section-grid button.empty-section{opacity:.72}.academic-grade-card>footer{border-top:1px solid var(--line);background:var(--surface-2);justify-content:space-between;align-items:center;gap:12px;padding:11px 16px;display:flex}.academic-grade-card>footer>div:first-child{align-items:center;gap:8px;display:flex}.academic-grade-card>footer>div:first-child>span{background:var(--green);color:#fff;border-radius:9px;place-items:center;width:30px;height:30px;display:grid}.academic-grade-card>footer strong,.academic-grade-card>footer small{display:block}.academic-grade-card>footer strong{font-size:9px}.academic-grade-card>footer small{color:var(--muted);margin-top:2px;font-size:7px}.academic-section-sequence{flex-wrap:wrap;gap:5px;display:flex}.academic-section-sequence span{border:1px solid var(--line);background:var(--surface);border-radius:8px;align-items:center;gap:3px;padding:5px 7px;font-size:8px;font-weight:900;display:flex}.academic-section-sequence b{color:var(--blue)}.app.dark .academic-classes-summary,.app.dark .academic-classes-stats article,.app.dark .academic-grade-card,.app.dark .academic-section-grid button,.app.dark .academic-grade-card>footer{background:#122137;border-color:#2b405c}.app.dark .academic-grade-card>header{background:linear-gradient(135deg,#162b48,#122137)}@media (max-width:1150px){.academic-section-grid{grid-template-columns:repeat(4,1fr)}}@media (max-width:760px){.academic-classes-hero{flex-wrap:wrap;align-items:flex-start}.academic-classes-summary{width:100%}.academic-classes-stats{grid-template-columns:1fr}.academic-section-grid{grid-template-columns:repeat(2,1fr)}.academic-grade-card>footer{flex-direction:column;align-items:flex-start}.academic-section-sequence{width:100%}}@media (max-width:420px){.academic-section-grid{grid-template-columns:1fr}}.academic-section-config{border:1px solid var(--purple);grid-template-columns:minmax(220px,1fr) minmax(260px,1.2fr) auto;align-items:end;gap:11px;margin:13px 16px 2px;padding:13px;display:grid}@supports (color:color-mix(in lab, red, red)){.academic-section-config{border:1px solid color-mix(in srgb,var(--purple) 24%,var(--line))}}.academic-section-config{background:var(--purple-soft);border-radius:13px}@supports (color:color-mix(in lab, red, red)){.academic-section-config{background:color-mix(in srgb,var(--purple-soft) 30%,var(--surface))}}.academic-section-config>div span,.academic-section-config>div strong,.academic-section-config>div small{display:block}.academic-section-config>div span{color:var(--purple);font-size:7px;font-weight:900}.academic-section-config>div strong{margin:3px 0;font-size:11px}.academic-section-config>div small{color:var(--muted);font-size:8px}.academic-section-config label>small{color:var(--muted);margin-bottom:5px;font-size:7px;font-weight:900;display:block}.academic-section-config select{width:100%;height:42px;font-size:9px;font-weight:800}.academic-section-config>button{background:var(--surface-2);min-width:125px;height:42px;color:var(--muted);cursor:not-allowed;border:0;border-radius:10px;padding:0 14px;font-size:9px;font-weight:900}.academic-section-config>button.has-changes{background:linear-gradient(135deg,var(--green),#20bc83);color:#fff;cursor:pointer;box-shadow:0 7px 17px var(--green)}@supports (color:color-mix(in lab, red, red)){.academic-section-config>button.has-changes{box-shadow:0 7px 17px color-mix(in srgb,var(--green) 24%,transparent)}}.academic-section-config>button:disabled{opacity:.75}.app.dark .academic-section-config{background:#171d39;border-color:#3b3d69}.app.dark .academic-section-config>button{background:#17263b}@media (max-width:850px){.academic-section-config{grid-template-columns:1fr 1fr}.academic-section-config>div{grid-column:1/-1}}@media (max-width:540px){.academic-section-config{grid-template-columns:1fr}.academic-section-config>button{width:100%}}.live-summary.student-totals{grid-template-columns:repeat(4,1fr)}@media (max-width:760px){.live-summary.student-totals{grid-template-columns:repeat(2,1fr)}}.schedule-reference-board{border:1px solid var(--line);background:var(--surface);border-radius:16px;margin:0 16px 16px;overflow:hidden}.schedule-reference-board>header{border-bottom:1px solid var(--line);background:linear-gradient(135deg,var(--purple-soft),var(--surface));justify-content:space-between;align-items:center;gap:16px;padding:16px 18px;display:flex}@supports (color:color-mix(in lab, red, red)){.schedule-reference-board>header{background:linear-gradient(135deg,color-mix(in srgb,var(--purple-soft) 72%,var(--surface)),var(--surface))}}.schedule-reference-board>header>div:first-child{text-align:center;flex:1}.schedule-reference-board>header small,.schedule-reference-board>header strong,.schedule-reference-board>header span{display:block}.schedule-reference-board>header>div:first-child small{color:var(--purple);font-size:9px;font-weight:900}.schedule-reference-board>header>div:first-child strong{margin:4px 0;font-size:17px}.schedule-reference-board>header>div:first-child span{color:var(--muted);font-size:8px}.schedule-reference-board>header>div:last-child{background:var(--surface);border-radius:12px;grid-template-columns:auto auto;align-items:center;gap:3px 7px;min-width:110px;padding:9px 12px;display:grid}.schedule-reference-board>header>div:last-child b{color:var(--blue);font-size:15px}.schedule-reference-board>header>div:last-child small{color:var(--muted);font-size:8px}.schedule-reference-scroll{padding:12px;overflow:auto}.schedule-reference-scroll table{border-collapse:collapse;table-layout:fixed;direction:rtl;width:max-content;min-width:100%}.schedule-reference-scroll th,.schedule-reference-scroll td{border:1px solid var(--text)}@supports (color:color-mix(in lab, red, red)){.schedule-reference-scroll th,.schedule-reference-scroll td{border:1px solid color-mix(in srgb,var(--text) 55%,var(--line))}}.schedule-reference-scroll th,.schedule-reference-scroll td{text-align:center;vertical-align:middle}.board-day-head{background:#d9edf4;width:92px;min-width:92px;font-size:10px}.board-period-head{background:#d9edf4;width:48px;min-width:48px;font-size:10px}.board-grade-head{min-width:260px;height:42px;font-size:11px;font-weight:900;border-bottom-width:2px!important}.board-section-head{height:34px;font-size:9px}.board-field-head{width:74px;min-width:74px;height:27px;color:var(--muted);font-size:7px}.schedule-reference-board .grade-1{background:#eee9f6}.schedule-reference-board .grade-2{background:#f8e8d9}.schedule-reference-board .grade-3{background:#e9f1dc}.board-day-cell{writing-mode:vertical-rl;letter-spacing:1px;background:#d9edf4;width:92px;min-width:92px;padding:7px;font-size:10px;font-weight:900;transform:rotate(180deg)}.board-period-cell{background:#eaf5f8;width:48px;min-width:48px;padding:4px}.board-period-cell b,.board-period-cell small{display:block}.board-period-cell b{font-size:11px}.board-period-cell small{color:var(--muted);margin-top:2px;font-size:6px}.board-lesson-cell,.board-teacher-cell{width:74px;min-width:74px;height:42px;padding:5px}.board-lesson-cell strong{font-size:8px;line-height:1.25;display:block}.board-teacher-cell span{font-size:7px;line-height:1.25;display:block}.board-lesson-cell.filled{font-weight:900}.board-teacher-cell.filled{color:var(--text)}.board-lesson-cell.empty,.board-teacher-cell.empty{opacity:.55}.board-lesson-cell.disabled,.board-teacher-cell.disabled{color:var(--muted);background:repeating-linear-gradient(135deg,var(--surface-2),var(--surface-2) 5px,var(--line) 5px,var(--line) 6px)!important}.schedule-reference-scroll tr.board-day-start>*{border-top-width:4px}.schedule-reference-scroll tr.board-seventh-row>*{border-top-style:dashed}.schedule-reference-board>footer{border-top:1px solid var(--line);background:var(--surface-2);justify-content:space-between;align-items:center;gap:14px;padding:12px 15px;display:flex}.schedule-reference-board>footer>div:first-child{align-items:center;gap:9px;display:flex}.schedule-reference-board>footer>div:first-child>span{color:#fff;border-radius:10px;place-items:center;width:34px;height:34px;font-weight:900;display:grid}.schedule-reference-board>footer>div:first-child>span.ok{background:var(--green)}.schedule-reference-board>footer>div:first-child>span.warning{background:var(--orange)}.schedule-reference-board>footer strong,.schedule-reference-board>footer small{display:block}.schedule-reference-board>footer strong{font-size:9px}.schedule-reference-board>footer small{color:var(--muted);margin-top:2px;font-size:7px}.board-legend{gap:6px;display:flex}.board-legend span{border:1px solid var(--line);border-radius:8px;padding:6px 10px;font-size:7px;font-weight:900}.app.dark .schedule-reference-board,.app.dark .schedule-reference-board>header>div:last-child{background:#122137;border-color:#2b405c}.app.dark .schedule-reference-board>header{background:linear-gradient(135deg,#241d43,#122137)}.app.dark .board-day-head,.app.dark .board-period-head,.app.dark .board-day-cell,.app.dark .board-period-cell{background:#19344b}.app.dark .schedule-reference-board .grade-1{background:#26223d}.app.dark .schedule-reference-board .grade-2{background:#35291f}.app.dark .schedule-reference-board .grade-3{background:#243224}@media (max-width:760px){.schedule-reference-board{margin:0 10px 12px}.schedule-reference-board>header{flex-direction:column;align-items:flex-start}.schedule-reference-board>header>div{width:100%}.schedule-reference-board>footer{flex-direction:column;align-items:flex-start}.board-legend{width:100%}}.preview-mode-tabs button{grid-template-columns:42px minmax(0,1fr);align-items:center;min-height:68px;display:grid}.preview-mode-tabs button>span{width:42px;height:42px}.preview-design-bar{border:1px solid var(--line);background:var(--surface);border-radius:14px;grid-template-columns:minmax(210px,1fr) minmax(420px,2fr) auto;align-items:center;gap:14px;margin:0 16px 14px;padding:13px 14px;display:grid}.preview-design-title{align-items:center;gap:10px;display:flex}.preview-design-title>span{background:var(--purple-soft);width:38px;height:38px;color:var(--purple);border-radius:11px;place-items:center;font-size:15px;display:grid}.preview-design-title strong,.preview-design-title small{display:block}.preview-design-title strong{font-size:10px}.preview-design-title small{color:var(--muted);margin-top:3px;font-size:7px;line-height:1.5}.grade-color-pickers{grid-template-columns:repeat(3,minmax(120px,1fr));gap:8px;display:grid}.grade-color-pickers label{border:1px solid var(--grade-color);grid-template-columns:28px 12px 1fr;align-items:center;gap:7px;min-height:42px;padding:6px 9px;display:grid;position:relative}@supports (color:color-mix(in lab, red, red)){.grade-color-pickers label{border:1px solid color-mix(in srgb,var(--grade-color) 40%,var(--line))}}.grade-color-pickers label{background:var(--grade-color);border-radius:11px}@supports (color:color-mix(in lab, red, red)){.grade-color-pickers label{background:color-mix(in srgb,var(--grade-color) 11%,var(--surface))}}.grade-color-pickers label{cursor:pointer}.grade-color-pickers input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.grade-color-pickers label>span{background:var(--grade-color);border-radius:8px;width:28px;height:28px;box-shadow:inset 0 0 0 2px #fff8}.grade-color-pickers label>b{font-size:8px}.preview-design-bar>button{border:1px solid var(--line);background:var(--surface-2);height:38px;color:var(--text);cursor:pointer;border-radius:10px;padding:0 12px;font-size:8px;font-weight:900}.schedule-reference-scroll th,.schedule-reference-scroll td{box-sizing:border-box}.schedule-reference-board .grade-color{background:var(--grade-color)}@supports (color:color-mix(in lab, red, red)){.schedule-reference-board .grade-color{background:color-mix(in srgb,var(--grade-color) 13%,var(--surface))}}.schedule-reference-board .grade-color{border-color:var(--grade-color)}@supports (color:color-mix(in lab, red, red)){.schedule-reference-board .grade-color{border-color:color-mix(in srgb,var(--grade-color) 52%,var(--line))}}.schedule-reference-board .board-grade-head.grade-color{background:var(--grade-color)}@supports (color:color-mix(in lab, red, red)){.schedule-reference-board .board-grade-head.grade-color{background:color-mix(in srgb,var(--grade-color) 30%,var(--surface))}}.schedule-reference-board .board-grade-head.grade-color{color:var(--grade-color)}@supports (color:color-mix(in lab, red, red)){.schedule-reference-board .board-grade-head.grade-color{color:color-mix(in srgb,var(--grade-color) 70%,var(--text))}.schedule-reference-board .board-section-head.grade-color{background:color-mix(in srgb,var(--grade-color) 22%,var(--surface))}.schedule-reference-board .board-field-head.grade-color{background:color-mix(in srgb,var(--grade-color) 16%,var(--surface))}}.schedule-reference-board .board-legend .grade-color{border-color:var(--grade-color)}@supports (color:color-mix(in lab, red, red)){.schedule-reference-board .board-legend .grade-color{border-color:color-mix(in srgb,var(--grade-color) 45%,var(--line))}}.schedule-reference-board .board-legend .grade-color{font-size:8px}.app.dark .preview-design-bar{background:#132238;border-color:#2b405c}.app.dark .schedule-reference-board .grade-color{background:var(--grade-color)}@supports (color:color-mix(in lab, red, red)){.app.dark .schedule-reference-board .grade-color{background:color-mix(in srgb,var(--grade-color) 18%,#122137)}}.app.dark .schedule-reference-board .board-grade-head.grade-color{background:var(--grade-color)}@supports (color:color-mix(in lab, red, red)){.app.dark .schedule-reference-board .board-grade-head.grade-color{background:color-mix(in srgb,var(--grade-color) 32%,#122137)}}.app.dark .schedule-reference-board .board-grade-head.grade-color{color:#fff}@supports (color:color-mix(in lab, red, red)){.app.dark .schedule-reference-board .board-section-head.grade-color{background:color-mix(in srgb,var(--grade-color) 24%,#122137)}.app.dark .schedule-reference-board .board-field-head.grade-color{background:color-mix(in srgb,var(--grade-color) 17%,#122137)}}@media (max-width:980px){.preview-design-bar{grid-template-columns:1fr}.grade-color-pickers{grid-template-columns:repeat(3,1fr)}.preview-design-bar>button{width:100%}}@media (max-width:620px){.grade-color-pickers{grid-template-columns:1fr}.preview-mode-tabs button{min-height:62px}}.grade-color-pickers label{grid-template-columns:28px 1fr}.preview-design-bar{grid-template-columns:minmax(190px,.9fr) minmax(420px,2fr) minmax(145px,.75fr) auto}.axis-color-picker{border:1px solid var(--axis-color);align-items:center;gap:8px;min-height:42px;padding:6px 9px;display:flex;position:relative}@supports (color:color-mix(in lab, red, red)){.axis-color-picker{border:1px solid color-mix(in srgb,var(--axis-color) 48%,var(--line))}}.axis-color-picker{background:var(--axis-color);border-radius:11px}@supports (color:color-mix(in lab, red, red)){.axis-color-picker{background:color-mix(in srgb,var(--axis-color) 18%,var(--surface))}}.axis-color-picker{cursor:pointer}.axis-color-picker input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.axis-color-picker>span{background:var(--axis-color);border-radius:8px;flex:0 0 28px;width:28px;height:28px;box-shadow:inset 0 0 0 2px #fff8}.axis-color-picker b,.axis-color-picker small{display:block}.axis-color-picker b{font-size:8px}.axis-color-picker small{color:var(--muted);margin-top:2px;font-size:7px}.schedule-reference-board .board-day-head,.schedule-reference-board .board-period-head,.schedule-reference-board .board-day-cell{background:var(--axis-color)}@supports (color:color-mix(in lab, red, red)){.schedule-reference-board .board-day-head,.schedule-reference-board .board-period-head,.schedule-reference-board .board-day-cell{background:color-mix(in srgb,var(--axis-color) 43%,var(--surface))}}.schedule-reference-board .board-day-head,.schedule-reference-board .board-period-head,.schedule-reference-board .board-day-cell{border-color:var(--axis-color)}@supports (color:color-mix(in lab, red, red)){.schedule-reference-board .board-day-head,.schedule-reference-board .board-period-head,.schedule-reference-board .board-day-cell{border-color:color-mix(in srgb,var(--axis-color) 70%,var(--line))}}.schedule-reference-board .board-period-cell{background:var(--axis-color)}@supports (color:color-mix(in lab, red, red)){.schedule-reference-board .board-period-cell{background:color-mix(in srgb,var(--axis-color) 27%,var(--surface))}}.schedule-reference-board .board-period-cell{border-color:var(--axis-color)}@supports (color:color-mix(in lab, red, red)){.schedule-reference-board .board-period-cell{border-color:color-mix(in srgb,var(--axis-color) 62%,var(--line))}}.app.dark .axis-color-picker{background:var(--axis-color)}@supports (color:color-mix(in lab, red, red)){.app.dark .axis-color-picker{background:color-mix(in srgb,var(--axis-color) 18%,#132238)}}.app.dark .schedule-reference-board .board-day-head,.app.dark .schedule-reference-board .board-period-head,.app.dark .schedule-reference-board .board-day-cell{background:var(--axis-color)}@supports (color:color-mix(in lab, red, red)){.app.dark .schedule-reference-board .board-day-head,.app.dark .schedule-reference-board .board-period-head,.app.dark .schedule-reference-board .board-day-cell{background:color-mix(in srgb,var(--axis-color) 38%,#122137)}}.app.dark .schedule-reference-board .board-period-cell{background:var(--axis-color)}@supports (color:color-mix(in lab, red, red)){.app.dark .schedule-reference-board .board-period-cell{background:color-mix(in srgb,var(--axis-color) 25%,#122137)}}@media (max-width:1120px){.preview-design-bar{grid-template-columns:1fr}.grade-color-pickers{grid-template-columns:repeat(3,1fr)}.preview-design-bar>button{width:100%}}@media (max-width:620px){.grade-color-pickers{grid-template-columns:1fr}}.schedule-reference-board .board-grade-head.grade-color,.schedule-reference-board .board-section-head.grade-color,.schedule-reference-board .board-field-head.grade-color{background:var(--axis-color)}@supports (color:color-mix(in lab, red, red)){.schedule-reference-board .board-grade-head.grade-color,.schedule-reference-board .board-section-head.grade-color,.schedule-reference-board .board-field-head.grade-color{background:color-mix(in srgb,var(--axis-color) 32%,var(--surface))}}.schedule-reference-board .board-grade-head.grade-color,.schedule-reference-board .board-section-head.grade-color,.schedule-reference-board .board-field-head.grade-color{border-color:var(--axis-color)}@supports (color:color-mix(in lab, red, red)){.schedule-reference-board .board-grade-head.grade-color,.schedule-reference-board .board-section-head.grade-color,.schedule-reference-board .board-field-head.grade-color{border-color:color-mix(in srgb,var(--axis-color) 70%,var(--line))}}.schedule-reference-board .board-grade-head.grade-color,.schedule-reference-board .board-section-head.grade-color,.schedule-reference-board .board-field-head.grade-color{color:var(--axis-color)}@supports (color:color-mix(in lab, red, red)){.schedule-reference-board .board-grade-head.grade-color,.schedule-reference-board .board-section-head.grade-color,.schedule-reference-board .board-field-head.grade-color{color:color-mix(in srgb,var(--axis-color) 72%,var(--text))}}.schedule-reference-board .board-section-head.grade-color{background:var(--axis-color)}@supports (color:color-mix(in lab, red, red)){.schedule-reference-board .board-section-head.grade-color{background:color-mix(in srgb,var(--axis-color) 25%,var(--surface))}}.schedule-reference-board .board-field-head.grade-color{background:var(--axis-color)}@supports (color:color-mix(in lab, red, red)){.schedule-reference-board .board-field-head.grade-color{background:color-mix(in srgb,var(--axis-color) 18%,var(--surface))}}.app.dark .schedule-reference-board .board-grade-head.grade-color,.app.dark .schedule-reference-board .board-section-head.grade-color,.app.dark .schedule-reference-board .board-field-head.grade-color{background:var(--axis-color)}@supports (color:color-mix(in lab, red, red)){.app.dark .schedule-reference-board .board-grade-head.grade-color,.app.dark .schedule-reference-board .board-section-head.grade-color,.app.dark .schedule-reference-board .board-field-head.grade-color{background:color-mix(in srgb,var(--axis-color) 30%,#122137)}}.app.dark .schedule-reference-board .board-grade-head.grade-color,.app.dark .schedule-reference-board .board-section-head.grade-color,.app.dark .schedule-reference-board .board-field-head.grade-color{color:#fff}.app.dark .schedule-reference-board .board-section-head.grade-color{background:var(--axis-color)}@supports (color:color-mix(in lab, red, red)){.app.dark .schedule-reference-board .board-section-head.grade-color{background:color-mix(in srgb,var(--axis-color) 23%,#122137)}}.app.dark .schedule-reference-board .board-field-head.grade-color{background:var(--axis-color)}@supports (color:color-mix(in lab, red, red)){.app.dark .schedule-reference-board .board-field-head.grade-color{background:color-mix(in srgb,var(--axis-color) 17%,#122137)}}.single-grade-preview .board-day-head,.single-grade-preview .board-day-cell{width:54px;min-width:54px;padding:4px;font-size:8px}.single-grade-preview .board-period-head,.single-grade-preview .board-period-cell{width:36px;min-width:36px}.single-grade-preview .board-period-head{font-size:8px}.single-grade-preview .board-period-cell{padding:2px}.single-grade-preview .board-period-cell b{font-size:9px}.single-grade-preview .board-period-cell small{font-size:5px}.single-grade-preview .board-day-cell{letter-spacing:0}.single-grade-preview .schedule-reference-scroll table{min-width:760px}.paper-size-field select{min-width:125px}.print-action-buttons{gap:7px;display:flex}.print-action-buttons button{cursor:pointer;white-space:nowrap;border:0;border-radius:10px;height:42px;padding:0 13px;font-size:8px;font-weight:900}.preview-print-button{background:var(--blue-soft);color:var(--blue);border:1px solid var(--blue)!important}@supports (color:color-mix(in lab, red, red)){.preview-print-button{border:1px solid color-mix(in srgb,var(--blue) 30%,var(--line))!important}}.direct-print-button{background:var(--green);color:#fff}.print-preview-toolbar{display:none}.print-preview-active{z-index:10000!important;background:#e5e9f0!important;border:0!important;border-radius:18px!important;padding:78px 18px 28px!important;position:fixed!important;inset:10px!important;overflow:auto!important}.print-preview-active>.timetable-preview-head,.print-preview-active>.preview-mode-tabs,.print-preview-active>.preview-scope-bar,.print-preview-active>.preview-design-bar{display:none!important}.print-preview-active .print-preview-toolbar{z-index:10002;color:#142033;background:#fff;border:1px solid #d6dce6;border-radius:14px;align-items:center;gap:10px;min-height:54px;padding:8px 12px;display:flex;position:fixed;top:20px;left:24px;right:24px;box-shadow:0 12px 30px #1b27442e}.print-preview-toolbar>div:first-child{flex:1;align-items:center;gap:9px;display:flex}.print-preview-toolbar>div:first-child>span{background:var(--blue);color:#fff;border-radius:10px;place-items:center;width:35px;height:35px;display:grid}.print-preview-toolbar strong,.print-preview-toolbar small{display:block}.print-preview-toolbar strong{font-size:10px}.print-preview-toolbar small{color:#718096;margin-top:2px;font-size:7px}.print-preview-toolbar label small{color:#718096;margin-bottom:3px;font-size:7px;display:block}.print-preview-toolbar select{background:#f8fafc;border:1px solid #d6dce6;border-radius:9px;min-width:125px;height:35px;padding:0 8px;font-size:8px;font-weight:800}.print-preview-toolbar button{cursor:pointer;border:0;border-radius:9px;height:35px;padding:0 13px;font-size:8px;font-weight:900}.toolbar-print{background:var(--green);color:#fff}.toolbar-close{color:#334155;background:#eef1f5}.print-preview-active .schedule-reference-board{box-shadow:0 22px 60px #18253d38;background:#fff!important;border-radius:2px!important;margin:0 auto!important}.print-a4.print-preview-active .schedule-reference-board{width:1120px;min-height:792px}.print-a3.print-preview-active .schedule-reference-board{width:1380px;min-height:976px}.print-a2.print-preview-active .schedule-reference-board{width:1640px;min-height:1160px}.print-legal.print-preview-active .schedule-reference-board{width:1240px;min-height:742px}.print-a4 .schedule-reference-board{page:timetable-a4}.print-a3 .schedule-reference-board{page:timetable-a3}.print-a2 .schedule-reference-board{page:timetable-a2}.print-legal .schedule-reference-board{page:timetable-legal}@page timetable-a4{size:A4 landscape;margin:7mm}@page timetable-a3{size:A3 landscape;margin:8mm}@page timetable-a2{size:A2 landscape;margin:10mm}@page timetable-legal{size:legal landscape;margin:7mm}@media (max-width:850px){.preview-scope-bar .print-action-buttons{width:100%}.print-action-buttons button{flex:1}.print-preview-active{border-radius:0!important;inset:0!important}.print-preview-active .print-preview-toolbar{flex-wrap:wrap;top:8px;left:8px;right:8px}.print-preview-toolbar>div:first-child{flex-basis:100%;width:100%}}@media print{html,body{background:#fff!important;margin:0!important;padding:0!important}body.printing-timetable *{visibility:hidden!important}body.printing-timetable .schedule-reference-board,body.printing-timetable .schedule-reference-board *{visibility:visible!important}body.printing-timetable .schedule-reference-board{page:auto!important;max-width:none!important;min-height:0!important;box-shadow:none!important;background:#fff!important;border:0!important;border-radius:0!important;margin:0!important;position:absolute!important;inset:0!important;overflow:visible!important}body.printing-timetable.print-scope-all .schedule-reference-board{width:408mm!important}body.printing-timetable.print-scope-single .schedule-reference-board{width:198mm!important}.schedule-reference-board>header{padding:5mm 4mm 3mm!important}.schedule-reference-scroll{padding:0!important;overflow:visible!important}.schedule-reference-scroll table{transform-origin:100% 0;table-layout:fixed!important;width:100%!important;min-width:0!important;transform:none!important}.schedule-reference-board>footer{padding:2mm 4mm!important}.preview-mode-tabs,.preview-scope-bar,.preview-design-bar,.print-preview-toolbar,.timetable-tabs,.timetable-hero{display:none!important}body.printing-timetable .schedule-reference-board{break-inside:avoid-page!important;page-break-inside:avoid!important}body.printing-timetable .schedule-reference-board>header{justify-content:center!important;height:10mm!important;min-height:10mm!important;padding:1mm 2mm!important}body.printing-timetable .schedule-reference-board>header>div:first-child{white-space:nowrap!important;text-align:center!important;justify-content:center!important;align-items:center!important;gap:1.5mm!important;display:flex!important}body.printing-timetable .schedule-reference-board>header>div:first-child small,body.printing-timetable .schedule-reference-board>header>div:first-child strong{margin:0!important;line-height:1.15!important;display:inline!important}body.printing-timetable .schedule-reference-board>header>div:first-child small{color:#111!important;font-size:8pt!important}body.printing-timetable .schedule-reference-board>header>div:first-child small:after{content:" —"}body.printing-timetable .schedule-reference-board>header>div:first-child strong{font-size:10pt!important}body.printing-timetable .schedule-reference-board>header>div:first-child>span,body.printing-timetable .schedule-reference-board>header>div:last-child,body.printing-timetable .schedule-reference-board>footer{display:none!important}body.printing-timetable .schedule-reference-scroll table{break-inside:avoid-page!important;page-break-inside:avoid!important}body.printing-timetable .board-grade-head{height:6mm!important;min-height:6mm!important;font-size:7pt!important}body.printing-timetable .board-section-head{height:5mm!important;min-height:5mm!important;font-size:6pt!important}body.printing-timetable .board-field-head{height:4mm!important;min-height:4mm!important;font-size:5pt!important}body.printing-timetable .board-lesson-cell,body.printing-timetable .board-teacher-cell{height:5.6mm!important;min-height:5.6mm!important;padding:.35mm!important}body.printing-timetable .board-lesson-cell strong{font-size:5.2pt!important;line-height:1.05!important}body.printing-timetable .board-teacher-cell span{font-size:4.6pt!important;line-height:1.05!important}body.printing-timetable .board-day-cell{padding:.5mm!important;font-size:6pt!important}body.printing-timetable .board-period-cell{padding:.3mm!important}body.printing-timetable .board-period-cell b{font-size:6.5pt!important;line-height:1!important}body.printing-timetable .board-period-cell small{margin-top:.2mm!important;font-size:4pt!important;line-height:1!important}body.printing-timetable .schedule-reference-scroll tr.board-day-start>*{border-top-width:2px!important}body.printing-timetable.print-scope-single.print-a4,body.printing-timetable.print-scope-all.print-a3{--timetable-print-height:277mm}body.printing-timetable.print-scope-all.print-a4{--timetable-print-height:190mm}body.printing-timetable.print-scope-single.print-a3,body.printing-timetable.print-scope-all.print-a2{--timetable-print-height:400mm}body.printing-timetable.print-scope-single.print-a2{--timetable-print-height:574mm}body.printing-timetable.print-scope-all.print-legal{--timetable-print-height:196mm}body.printing-timetable.print-scope-single.print-legal{--timetable-print-height:336mm}body.printing-timetable .schedule-reference-board{width:100%!important;height:var(--timetable-print-height)!important;min-height:var(--timetable-print-height)!important;max-height:var(--timetable-print-height)!important;box-sizing:border-box!important;overflow:hidden!important}body.printing-timetable .schedule-reference-board>header{box-sizing:border-box!important;height:10mm!important;min-height:10mm!important;max-height:10mm!important}body.printing-timetable .schedule-reference-scroll{width:100%!important;height:calc(var(--timetable-print-height) - 10mm)!important;min-height:calc(var(--timetable-print-height) - 10mm)!important;max-height:calc(var(--timetable-print-height) - 10mm)!important;box-sizing:border-box!important;overflow:hidden!important}body.printing-timetable .schedule-reference-scroll table{table-layout:fixed!important;width:100%!important;height:100%!important;min-height:100%!important;max-height:100%!important}body.printing-timetable .schedule-reference-board thead tr:first-child,body.printing-timetable .schedule-reference-board .board-grade-head{height:5.5mm!important;min-height:5.5mm!important;max-height:5.5mm!important}body.printing-timetable .schedule-reference-board thead tr:nth-child(2),body.printing-timetable .schedule-reference-board .board-section-head{height:4.5mm!important;min-height:4.5mm!important;max-height:4.5mm!important}body.printing-timetable .schedule-reference-board thead tr:nth-child(3),body.printing-timetable .schedule-reference-board .board-field-head{height:3.6mm!important;min-height:3.6mm!important;max-height:3.6mm!important}body.printing-timetable .schedule-reference-board tbody tr,body.printing-timetable .schedule-reference-board .board-period-cell,body.printing-timetable .schedule-reference-board .board-lesson-cell,body.printing-timetable .schedule-reference-board .board-teacher-cell{height:calc((var(--timetable-print-height) - 23.6mm) / 35)!important;min-height:calc((var(--timetable-print-height) - 23.6mm) / 35)!important;max-height:calc((var(--timetable-print-height) - 23.6mm) / 35)!important;box-sizing:border-box!important}body.printing-timetable .board-day-cell{letter-spacing:1.65mm!important;height:auto!important;font-size:8.5pt!important;line-height:1!important}body.printing-timetable.print-scope-single .board-lesson-cell strong{font-size:7pt!important}body.printing-timetable.print-scope-single .board-teacher-cell span,body.printing-timetable.print-scope-single .board-teacher-button{font-size:6pt!important}}.single-grade-preview.print-a4.print-preview-active .schedule-reference-board{width:794px!important;min-height:1123px!important}@media print{body.printing-timetable,body.printing-timetable .schedule-reference-board,body.printing-timetable .schedule-reference-board *{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;color-adjust:exact!important}body.printing-timetable .schedule-reference-scroll th,body.printing-timetable .schedule-reference-scroll td{color:#111827!important;border-color:#596579!important}body.printing-timetable .schedule-reference-board .grade-color{background:var(--grade-color)!important}@supports (color:color-mix(in lab, red, red)){body.printing-timetable .schedule-reference-board .grade-color{background:color-mix(in srgb,var(--grade-color) 30%,#fff)!important}}body.printing-timetable .schedule-reference-board .grade-color{border-color:var(--grade-color)!important}@supports (color:color-mix(in lab, red, red)){body.printing-timetable .schedule-reference-board .grade-color{border-color:color-mix(in srgb,var(--grade-color) 88%,#374151)!important}}body.printing-timetable .schedule-reference-board .board-grade-head.grade-color{background:var(--axis-color)!important}@supports (color:color-mix(in lab, red, red)){body.printing-timetable .schedule-reference-board .board-grade-head.grade-color{background:color-mix(in srgb,var(--axis-color) 62%,#fff)!important}}body.printing-timetable .schedule-reference-board .board-grade-head.grade-color{border-color:var(--axis-color)!important;color:#111827!important}body.printing-timetable .schedule-reference-board .board-section-head.grade-color{background:var(--axis-color)!important}@supports (color:color-mix(in lab, red, red)){body.printing-timetable .schedule-reference-board .board-section-head.grade-color{background:color-mix(in srgb,var(--axis-color) 48%,#fff)!important}}body.printing-timetable .schedule-reference-board .board-section-head.grade-color{border-color:var(--axis-color)!important;color:#111827!important}body.printing-timetable .schedule-reference-board .board-field-head.grade-color{background:var(--axis-color)!important}@supports (color:color-mix(in lab, red, red)){body.printing-timetable .schedule-reference-board .board-field-head.grade-color{background:color-mix(in srgb,var(--axis-color) 36%,#fff)!important}}body.printing-timetable .schedule-reference-board .board-field-head.grade-color{border-color:var(--axis-color)!important;color:#1f2937!important}body.printing-timetable .schedule-reference-board .board-day-head,body.printing-timetable .schedule-reference-board .board-period-head,body.printing-timetable .schedule-reference-board .board-day-cell{background:var(--axis-color)!important}@supports (color:color-mix(in lab, red, red)){body.printing-timetable .schedule-reference-board .board-day-head,body.printing-timetable .schedule-reference-board .board-period-head,body.printing-timetable .schedule-reference-board .board-day-cell{background:color-mix(in srgb,var(--axis-color) 62%,#fff)!important}}body.printing-timetable .schedule-reference-board .board-day-head,body.printing-timetable .schedule-reference-board .board-period-head,body.printing-timetable .schedule-reference-board .board-day-cell{border-color:var(--axis-color)!important;color:#111827!important}body.printing-timetable .schedule-reference-board .board-period-cell{background:var(--axis-color)!important}@supports (color:color-mix(in lab, red, red)){body.printing-timetable .schedule-reference-board .board-period-cell{background:color-mix(in srgb,var(--axis-color) 42%,#fff)!important}}body.printing-timetable .schedule-reference-board .board-period-cell{border-color:var(--axis-color)!important;color:#111827!important}body.printing-timetable .schedule-reference-scroll tr.board-day-start>*{border-top-color:#1f2937!important}}body.printing-timetable.print-scope-all.print-a4 .schedule-reference-board{page:timetable-a4-landscape}body.printing-timetable.print-scope-single.print-a4 .schedule-reference-board{page:timetable-a4-portrait}body.printing-timetable.print-scope-all.print-a3 .schedule-reference-board{page:timetable-a3-landscape}body.printing-timetable.print-scope-single.print-a3 .schedule-reference-board{page:timetable-a3-portrait}body.printing-timetable.print-scope-all.print-a2 .schedule-reference-board{page:timetable-a2-landscape}body.printing-timetable.print-scope-single.print-a2 .schedule-reference-board{page:timetable-a2-portrait}body.printing-timetable.print-scope-all.print-legal .schedule-reference-board{page:timetable-legal-landscape}body.printing-timetable.print-scope-single.print-legal .schedule-reference-board{page:timetable-legal-portrait}@page timetable-a4-landscape{size:A4 landscape;margin:10mm}@page timetable-a4-portrait{size:A4 portrait;margin:10mm}@page timetable-a3-landscape{size:A3 landscape;margin:10mm}@page timetable-a3-portrait{size:A3 portrait;margin:10mm}@page timetable-a2-landscape{size:A2 landscape;margin:10mm}@page timetable-a2-portrait{size:A2 portrait;margin:10mm}@page timetable-legal-landscape{size:legal landscape;margin:10mm}@page timetable-legal-portrait{size:legal portrait;margin:10mm}@media print{body.printing-timetable.print-scope-all .schedule-reference-board,body.printing-timetable.print-scope-single .schedule-reference-board{box-sizing:border-box!important;width:100%!important;max-width:100%!important;inset:0 auto auto 0!important}body.printing-timetable .schedule-reference-scroll,body.printing-timetable .schedule-reference-scroll table{box-sizing:border-box!important;width:100%!important;max-width:100%!important}body.printing-timetable.print-scope-all .board-grade-head{height:5.5mm!important;min-height:5.5mm!important}body.printing-timetable.print-scope-all .board-section-head{height:4.5mm!important;min-height:4.5mm!important}body.printing-timetable.print-scope-all .board-field-head{height:3.6mm!important;min-height:3.6mm!important}body.printing-timetable.print-scope-all .board-lesson-cell,body.printing-timetable.print-scope-all .board-teacher-cell{height:5mm!important;min-height:5mm!important}}.schedule-reference-board .board-lesson-cell,.schedule-reference-board .board-teacher-cell{height:48px}.schedule-reference-board .board-lesson-cell strong{font-size:clamp(6px,.58vw,9px);line-height:1.3}.schedule-reference-board .board-teacher-cell span,.schedule-reference-board .board-teacher-button{font-size:clamp(5px,.5vw,8px);line-height:1.3}.schedule-reference-board .board-day-cell{letter-spacing:2px;white-space:nowrap;font-size:12px;font-weight:950;line-height:1.15}.schedule-reference-board .board-day-head{font-size:10px;font-weight:950}@media print{body.printing-timetable.print-scope-all .board-lesson-cell,body.printing-timetable.print-scope-all .board-teacher-cell{height:5.6mm!important;min-height:5.6mm!important}body.printing-timetable .board-lesson-cell strong{font-size:5.8pt!important;line-height:1.08!important}body.printing-timetable .board-teacher-cell span,body.printing-timetable .board-teacher-button{font-size:5.1pt!important;font-weight:800!important;line-height:1.08!important}body.printing-timetable .board-day-head,body.printing-timetable .board-day-cell{width:8mm!important;min-width:8mm!important}body.printing-timetable .board-period-head,body.printing-timetable .board-period-cell{width:5.5mm!important;min-width:5.5mm!important}body.printing-timetable .board-day-cell{letter-spacing:1.35mm!important;white-space:nowrap!important;padding:.6mm!important;font-size:8pt!important;font-weight:950!important;line-height:1.1!important}body.printing-timetable .board-day-head{font-size:7pt!important;font-weight:950!important}body.printing-timetable .board-period-cell b{font-size:7pt!important}body.printing-timetable .board-grade-head{font-size:8pt!important}body.printing-timetable .board-section-head{font-size:6.7pt!important}body.printing-timetable .board-field-head{font-size:5.5pt!important}}.content.inner-tab-closed [role=tab][aria-selected=true]{background:var(--surface)!important;color:var(--text)!important;border-color:var(--line)!important;box-shadow:none!important}.content.inner-tab-closed .permissions-page>.role-tabs~*,.content.inner-tab-closed .files-page>.file-template-tabs~*,.content.inner-tab-closed .faculty-page>.faculty-tabs~*,.content.inner-tab-closed .attendance-page>.attendance-mode-tabs~*,.content.inner-tab-closed .live-students>.teacher-view-tabs~*,.content.inner-tab-closed .timetable-builder-page>.timetable-tabs~*,.content.inner-tab-closed .student-class-picker>.grade-tabs~*{display:none!important}.content.inner-tab-closed .live-students:has(>.student-class-picker)>:not(.module-toolbar):not(.student-class-picker){display:none!important}.grade-only-scope .schedule-scope-fields{grid-template-columns:minmax(240px,1fr) minmax(260px,1fr)}.teacher-rules-layout>.grade-only-scope{grid-column:1/-1;margin:0}.seventh-period-picker.grade-only{grid-template-columns:minmax(190px,.9fr) minmax(300px,1.2fr) minmax(350px,1.7fr) auto}.grade-sections-indicator{border:1px solid var(--line);background:var(--surface);border-radius:10px;grid-template-columns:1fr auto;align-items:center;gap:3px 8px;padding:8px 10px;display:grid}.grade-sections-indicator small{color:var(--muted);grid-column:1/-1;font-size:7px;font-weight:900;display:block}.grade-sections-indicator strong{font-size:8px}.grade-sections-indicator>span{color:var(--purple);grid-row:2;font-size:8px;font-weight:900}.grade-sections-indicator.selected-grade{background:var(--purple-soft);border-color:var(--purple)}@supports (color:color-mix(in lab, red, red)){.grade-sections-indicator.selected-grade{border-color:color-mix(in srgb,var(--purple) 28%,var(--line))}}.app.dark .grade-sections-indicator{background:#132238;border-color:#2b405c}@media (max-width:1200px){.seventh-period-picker.grade-only{grid-template-columns:1fr 1fr}.seventh-period-picker.grade-only .seventh-day-buttons{grid-column:1/-1}}@media (max-width:700px){.grade-only-scope .schedule-scope-fields,.seventh-period-picker.grade-only{grid-template-columns:1fr}.seventh-period-picker.grade-only .seventh-day-buttons{grid-column:auto}}.auto-regeneration-picker{border:1px solid var(--line);background:var(--surface);border-radius:14px;padding:13px}.auto-regeneration-picker>div:first-child strong,.auto-regeneration-picker>div:first-child small{display:block}.auto-regeneration-picker>div:first-child strong{font-size:11px}.auto-regeneration-picker>div:first-child small{color:var(--muted);margin-top:3px;font-size:8px}.auto-grade-buttons{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:12px;display:grid}.auto-grade-buttons button{border:1px solid var(--line);background:var(--surface-2);min-height:52px;color:var(--text);cursor:pointer;text-align:right;border-radius:12px;grid-template-columns:25px 1fr auto;align-items:center;gap:7px;padding:8px 10px;font-size:9px;font-weight:900;display:grid}.auto-grade-buttons button>span{border:1px solid var(--line);width:25px;height:25px;color:var(--muted);border-radius:8px;place-items:center;display:grid}.auto-grade-buttons button>small{color:var(--muted);white-space:nowrap;font-size:7px}.auto-grade-buttons button.selected{border-color:var(--green);background:var(--green-soft);color:var(--green);box-shadow:0 0 0 3px var(--green)}@supports (color:color-mix(in lab, red, red)){.auto-grade-buttons button.selected{box-shadow:0 0 0 3px color-mix(in srgb,var(--green) 9%,transparent)}}.auto-grade-buttons button.selected>span{background:var(--green);border-color:var(--green);color:#fff}.auto-grade-picker-actions{gap:7px;margin-top:9px;display:flex}.auto-grade-picker-actions button{border:1px solid var(--line);background:var(--surface-2);color:var(--text);cursor:pointer;border-radius:9px;padding:7px 11px;font-size:8px;font-weight:900}.auto-regeneration-summary{border:1px solid var(--blue);align-items:center;gap:10px;padding:11px 13px;display:flex}@supports (color:color-mix(in lab, red, red)){.auto-regeneration-summary{border:1px solid color-mix(in srgb,var(--blue) 28%,var(--line))}}.auto-regeneration-summary{background:var(--blue-soft);border-radius:12px}.auto-regeneration-summary>span{background:var(--blue);color:#fff;border-radius:11px;place-items:center;width:38px;height:38px;font-size:14px;font-weight:900;display:grid}.auto-regeneration-summary strong,.auto-regeneration-summary small{display:block}.auto-regeneration-summary strong{font-size:10px}.auto-regeneration-summary small{color:var(--muted);margin-top:3px;font-size:8px}.app.dark .auto-regeneration-picker{background:#132238;border-color:#2b405c}@media (max-width:850px){.auto-grade-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:520px){.auto-grade-buttons{grid-template-columns:1fr}}.auto-school-grade-actions{gap:7px;margin-top:8px;display:flex}.auto-school-grade-actions button{border:1px solid var(--line);background:var(--blue-soft);min-height:36px;color:var(--blue);cursor:pointer;border-radius:9px;flex:1;font-size:8px;font-weight:900}.auto-school-grade-actions button:last-child{background:var(--purple-soft);color:var(--purple)}.auto-school-grade-actions button:disabled{opacity:.45;cursor:not-allowed}.auto-school-scope{border:1px solid var(--green);margin:14px 18px;padding:14px}@supports (color:color-mix(in lab, red, red)){.auto-school-scope{border:1px solid color-mix(in srgb,var(--green) 30%,var(--line))}}.auto-school-scope{background:linear-gradient(135deg,var(--surface),var(--green-soft));border-radius:16px}@supports (color:color-mix(in lab, red, red)){.auto-school-scope{background:linear-gradient(135deg,var(--surface),color-mix(in srgb,var(--green-soft) 50%,var(--surface)))}}.auto-school-scope{gap:12px;display:grid}.auto-school-scope-head{align-items:center;gap:12px;display:flex}.auto-school-scope-head>span{background:var(--green);color:#fff;border-radius:13px;flex:0 0 42px;place-items:center;width:42px;height:42px;font-size:18px;font-weight:900;display:grid}.auto-school-scope-head>div{flex:1}.auto-school-scope-head small,.auto-school-scope-head strong,.auto-school-scope-head p{margin:0;display:block}.auto-school-scope-head small{color:var(--green);font-size:8px;font-weight:900}.auto-school-scope-head strong{margin:3px 0;font-size:14px}.auto-school-scope-head p{color:var(--muted);font-size:8px;line-height:1.7}.auto-school-scope-head>b{background:var(--green-soft);color:var(--green);white-space:nowrap;border-radius:11px;padding:9px 12px;font-size:10px}.auto-school-grade-control{grid-template-columns:minmax(230px,1fr) minmax(260px,1fr);gap:10px;display:grid}.auto-school-grade-control>label,.auto-school-grade-control>div{border:1px solid var(--line);background:var(--surface);border-radius:13px;padding:11px}.auto-school-grade-control label small{color:var(--muted);margin-bottom:6px;font-size:8px;font-weight:900;display:block}.auto-school-grade-control select{border:1px solid var(--line);background:var(--surface-2);width:100%;height:44px;color:var(--text);border-radius:11px;padding:0 11px;font-size:10px;font-weight:850}.auto-school-grade-control>div{align-items:center;gap:10px;display:flex}.auto-school-grade-control>div>span{background:var(--blue-soft);width:38px;height:38px;color:var(--blue);border-radius:11px;place-items:center;font-size:13px;font-weight:900;display:grid}.auto-school-grade-control>div strong,.auto-school-grade-control>div small{display:block}.auto-school-grade-control>div strong{font-size:10px}.auto-school-grade-control>div small{color:var(--muted);margin-top:3px;font-size:8px}.auto-school-grade-control>div.needs-review>span{background:var(--orange-soft);color:var(--orange)}.auto-school-scope-note{background:var(--blue-soft);color:var(--blue);border-radius:10px;margin:0;padding:9px 11px;font-size:8px;font-weight:800;line-height:1.7}.app.dark .auto-school-scope,.app.dark .auto-school-grade-control>label,.app.dark .auto-school-grade-control>div{background:#132238;border-color:#2b405c}@media (max-width:700px){.auto-school-scope{margin:12px}.auto-school-grade-control{grid-template-columns:1fr}.auto-school-scope-head{flex-wrap:wrap;align-items:flex-start}.auto-school-scope-head>b{margin-inline-start:auto}}.schedule-section-scope{border:1px solid var(--line);background:linear-gradient(135deg,var(--surface),var(--blue-soft));border-radius:16px;margin:14px 0;padding:14px}@supports (color:color-mix(in lab, red, red)){.schedule-section-scope{background:linear-gradient(135deg,var(--surface),color-mix(in srgb,var(--blue-soft) 35%,var(--surface)))}}.schedule-section-scope{gap:12px;display:grid}.schedule-section-scope.specific{border-color:var(--purple)}@supports (color:color-mix(in lab, red, red)){.schedule-section-scope.specific{border-color:color-mix(in srgb,var(--purple) 38%,var(--line))}}.schedule-section-scope.specific{background:linear-gradient(135deg,var(--surface),var(--purple-soft))}@supports (color:color-mix(in lab, red, red)){.schedule-section-scope.specific{background:linear-gradient(135deg,var(--surface),color-mix(in srgb,var(--purple-soft) 42%,var(--surface)))}}.schedule-scope-fields{grid-template-columns:minmax(190px,.8fr) minmax(280px,1.3fr) minmax(190px,.75fr);align-items:stretch;gap:10px;display:grid}.schedule-scope-fields>label:first-child small{color:var(--muted);margin-bottom:5px;font-size:8px;font-weight:900;display:block}.schedule-scope-fields select{border:1px solid var(--line);background:var(--surface-2);width:100%;height:48px;color:var(--text);border-radius:12px;padding:0 11px;font-size:10px;font-weight:800}.specific-sections-toggle{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:13px;align-items:center;gap:10px;padding:10px 12px;display:flex}.specific-sections-toggle input{opacity:0;pointer-events:none;position:absolute}.specific-sections-toggle>span{border:2px solid var(--blue);flex:0 0 30px;width:30px;height:30px}@supports (color:color-mix(in lab, red, red)){.specific-sections-toggle>span{border:2px solid color-mix(in srgb,var(--blue) 45%,var(--line))}}.specific-sections-toggle>span{color:#fff;background:var(--surface-2);border-radius:9px;place-items:center;font-size:13px;font-weight:900;display:grid}.specific-sections-toggle:has(input:checked)>span{background:var(--purple);border-color:var(--purple)}.specific-sections-toggle:has(input:disabled){opacity:.55;cursor:not-allowed}.specific-sections-toggle strong,.specific-sections-toggle small{display:block}.specific-sections-toggle strong{font-size:10px}.specific-sections-toggle small{color:var(--muted);margin-top:3px;font-size:8px}.schedule-capacity-card{border:1px solid var(--line);background:var(--surface);border-radius:13px;flex-direction:column;justify-content:center;padding:9px 12px;display:flex}.schedule-capacity-card small,.schedule-capacity-card strong,.schedule-capacity-card span{display:block}.schedule-capacity-card small{color:var(--muted);font-size:7px}.schedule-capacity-card strong{color:var(--blue);margin:3px 0;font-size:17px}.schedule-capacity-card span{color:var(--muted);font-size:8px}.schedule-section-choices{border:1px dashed var(--purple);padding:12px}@supports (color:color-mix(in lab, red, red)){.schedule-section-choices{border:1px dashed color-mix(in srgb,var(--purple) 42%,var(--line))}}.schedule-section-choices{background:var(--surface);border-radius:13px}.schedule-section-choices>div:first-child strong,.schedule-section-choices>div:first-child small{display:block}.schedule-section-choices>div:first-child strong{font-size:10px}.schedule-section-choices>div:first-child small{color:var(--muted);margin-top:3px;font-size:8px}.schedule-section-choices>div:last-child{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.schedule-section-choices button{border:1px solid var(--line);background:var(--surface-2);min-width:96px;height:40px;color:var(--text);cursor:pointer;border-radius:11px;font-size:9px;font-weight:900}.schedule-section-choices button>span{border:1px solid var(--line);border-radius:6px;place-items:center;width:19px;height:19px;margin-left:6px;display:inline-grid}.schedule-section-choices button.selected{border-color:var(--purple);background:var(--purple-soft);color:var(--purple);box-shadow:0 0 0 3px var(--purple)}@supports (color:color-mix(in lab, red, red)){.schedule-section-choices button.selected{box-shadow:0 0 0 3px color-mix(in srgb,var(--purple) 8%,transparent)}}.schedule-section-choices button.selected>span{background:var(--purple);border-color:var(--purple);color:#fff}.schedule-generation-summary{flex-wrap:wrap;gap:10px;display:flex}.schedule-generation-summary>div{border-radius:12px;flex:1;align-items:center;gap:9px;min-width:220px;padding:10px 12px;display:flex}.schedule-generation-summary>div>span{color:#fff;border-radius:10px;place-items:center;width:34px;height:34px;font-size:13px;font-weight:900;display:grid}.schedule-generation-summary strong,.schedule-generation-summary small{display:block}.schedule-generation-summary strong{font-size:9px}.schedule-generation-summary small{color:var(--muted);margin-top:2px;font-size:8px}.selected-summary{background:var(--purple-soft);border:1px solid var(--purple)}@supports (color:color-mix(in lab, red, red)){.selected-summary{border:1px solid color-mix(in srgb,var(--purple) 25%,var(--line))}}.selected-summary>span{background:var(--purple)}.automatic-summary{background:var(--green-soft);border:1px solid var(--green)}@supports (color:color-mix(in lab, red, red)){.automatic-summary{border:1px solid color-mix(in srgb,var(--green) 25%,var(--line))}}.automatic-summary>span{background:var(--green)}.generate-scope-button{background:linear-gradient(135deg,var(--purple),#8c62dd);color:#fff;cursor:pointer;min-height:42px;box-shadow:0 8px 18px var(--purple);border:0;border-radius:11px;justify-self:end;padding:0 16px;font-size:9px;font-weight:900}@supports (color:color-mix(in lab, red, red)){.generate-scope-button{box-shadow:0 8px 18px color-mix(in srgb,var(--purple) 25%,transparent)}}.generate-scope-button:disabled{opacity:.45;cursor:not-allowed}.selective-preview-banner{border:1px solid var(--green);align-items:center;gap:10px;margin:0 16px 14px;padding:11px 13px;display:flex}@supports (color:color-mix(in lab, red, red)){.selective-preview-banner{border:1px solid color-mix(in srgb,var(--green) 28%,var(--line))}}.selective-preview-banner{background:var(--green-soft);border-radius:12px}.selective-preview-banner>span{background:var(--green);color:#fff;border-radius:9px;place-items:center;width:31px;height:31px;font-weight:900;display:grid}.selective-preview-banner strong,.selective-preview-banner small{display:block}.selective-preview-banner strong{font-size:10px}.selective-preview-banner small{color:var(--muted);margin-top:3px;font-size:8px}.app.dark .schedule-section-scope,.app.dark .schedule-section-choices,.app.dark .specific-sections-toggle,.app.dark .schedule-capacity-card{background:#132238;border-color:#2b405c}.app.dark .schedule-section-scope.specific{background:linear-gradient(135deg,#132238,#211d3f)}@media (max-width:900px){.schedule-scope-fields{grid-template-columns:1fr 1fr}.schedule-capacity-card{grid-column:1/-1}}@media (max-width:620px){.schedule-scope-fields{grid-template-columns:1fr}.schedule-capacity-card{grid-column:auto}.schedule-section-choices button{flex:1;min-width:82px}.generate-scope-button{width:100%}}.schedule-top-scroll{border:1px solid var(--line);background:var(--surface-2);scrollbar-color:var(--blue) var(--surface-2);scrollbar-width:auto;border-radius:8px;height:19px;margin:10px 12px 0;overflow:auto hidden}.schedule-top-scroll>div{height:1px}.schedule-top-scroll::-webkit-scrollbar{height:13px}.schedule-top-scroll::-webkit-scrollbar-track{background:var(--surface-2);border-radius:8px}.schedule-top-scroll::-webkit-scrollbar-thumb{background:var(--blue);border:3px solid var(--surface-2);border-radius:8px}.board-teacher-button{width:100%;min-height:30px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:3px;font:800 7px/1.3 inherit}.board-teacher-button:hover,.board-teacher-button:focus-visible{background:var(--blue)}@supports (color:color-mix(in lab, red, red)){.board-teacher-button:hover,.board-teacher-button:focus-visible{background:color-mix(in srgb,var(--blue) 17%,transparent)}}.board-teacher-button:hover,.board-teacher-button:focus-visible{outline:1px solid var(--blue)}@supports (color:color-mix(in lab, red, red)){.board-teacher-button:hover,.board-teacher-button:focus-visible{outline:1px solid color-mix(in srgb,var(--blue) 55%,transparent)}}.schedule-reference-board .board-lesson-cell.teacher-highlighted,.schedule-reference-board .board-teacher-cell.teacher-highlighted{position:relative;box-shadow:inset 0 0 0 2px #f2b600,0 0 10px #f2b60055;color:#4a3500!important;background:#ffe58a!important;border-color:#e0a900!important}.schedule-reference-board .board-teacher-cell.teacher-highlighted .board-teacher-button{color:#332400;background:#f2b600;box-shadow:0 2px 7px #a9790040}.highlighted-teacher-summary{color:#4a3500;background:#fff7cf;border:1px solid #e2b100;border-radius:11px;align-items:center;gap:10px;margin:10px 12px 0;padding:10px 12px;display:flex}.highlighted-teacher-summary>span{color:#332400;background:#f2b600;border-radius:9px;flex:0 0 32px;place-items:center;width:32px;height:32px;font-weight:900;display:grid}.highlighted-teacher-summary>div{flex:1}.highlighted-teacher-summary small,.highlighted-teacher-summary strong,.highlighted-teacher-summary b{display:block}.highlighted-teacher-summary small{font-size:7px}.highlighted-teacher-summary strong{margin:2px 0;font-size:11px}.highlighted-teacher-summary b{font-size:8px}.highlighted-teacher-summary button{color:#745600;cursor:pointer;background:#fff;border:1px solid #dfad00;border-radius:8px;padding:7px 10px;font-size:8px;font-weight:900}.app.dark .highlighted-teacher-summary{color:#ffe9a0;background:#3d3212;border-color:#8f7000}.app.dark .highlighted-teacher-summary button{color:#ffe9a0;background:#1b2638;border-color:#8f7000}@media (max-width:620px){.highlighted-teacher-summary{flex-wrap:wrap;align-items:flex-start}.highlighted-teacher-summary button{width:100%}}@media print{.schedule-top-scroll,.highlighted-teacher-summary{display:none!important}.board-teacher-button{padding:0!important;font-size:4.6pt!important;line-height:1.05!important}}.teacher-lesson-loads-page{gap:14px;display:grid}.teacher-lesson-loads-hero{background:linear-gradient(135deg,var(--surface),var(--blue-soft));align-items:center;gap:14px;padding:18px;display:flex}@supports (color:color-mix(in lab, red, red)){.teacher-lesson-loads-hero{background:linear-gradient(135deg,var(--surface),color-mix(in srgb,var(--blue-soft) 55%,var(--surface)))}}.teacher-lesson-loads-icon{background:linear-gradient(135deg,var(--blue),#7057df);color:#fff;width:50px;height:50px;box-shadow:0 10px 24px var(--blue);border-radius:15px;flex:0 0 50px;place-items:center;font-size:20px;display:grid}@supports (color:color-mix(in lab, red, red)){.teacher-lesson-loads-icon{box-shadow:0 10px 24px color-mix(in srgb,var(--blue) 22%,transparent)}}.teacher-lesson-loads-hero>div:nth-child(2){flex:1}.teacher-lesson-loads-hero span,.teacher-lesson-loads-hero h2,.teacher-lesson-loads-hero p{margin:0;display:block}.teacher-lesson-loads-hero>div:nth-child(2)>span{color:var(--blue);font-size:8px;font-weight:900}.teacher-lesson-loads-hero h2{margin:3px 0;font-size:18px}.teacher-lesson-loads-hero p{color:var(--muted);font-size:9px;line-height:1.7}.teacher-lesson-loads-stats{gap:8px;display:flex}.teacher-lesson-loads-stats b{border:1px solid var(--line);background:var(--surface);min-width:84px;color:var(--blue);text-align:center;border-radius:12px;padding:10px;font-size:16px}.teacher-lesson-loads-stats small{color:var(--muted);margin-top:2px;font-size:7px;display:block}.teacher-lesson-loads-card{overflow:hidden}.teacher-lesson-loads-card>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.teacher-lesson-loads-card>header>div{align-items:center;gap:10px;display:flex}.teacher-lesson-loads-card>header>div>span{background:var(--green-soft);width:36px;height:36px;color:var(--green);border-radius:10px;place-items:center;font-weight:900;display:grid}.teacher-lesson-loads-card>header strong,.teacher-lesson-loads-card>header small{display:block}.teacher-lesson-loads-card>header strong{font-size:12px}.teacher-lesson-loads-card>header small{color:var(--muted);margin-top:3px;font-size:8px}.teacher-lesson-loads-card>header>b{background:var(--blue-soft);color:var(--blue);border-radius:9px;padding:7px 10px;font-size:8px}.teacher-lesson-loads-scroll{width:100%;overflow:auto}.teacher-lesson-loads-table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:max-content;min-width:100%}.teacher-lesson-loads-table th,.teacher-lesson-loads-table td{border-inline-start:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center;vertical-align:middle;min-width:74px;padding:9px 7px;font-size:8px}.teacher-lesson-loads-table thead th{background:var(--blue-soft)}@supports (color:color-mix(in lab, red, red)){.teacher-lesson-loads-table thead th{background:color-mix(in srgb,var(--blue-soft) 70%,var(--surface))}}.teacher-lesson-loads-table thead th{color:var(--text);font-weight:950}.teacher-lesson-loads-table thead tr:first-child th{border-bottom-color:var(--blue)}@supports (color:color-mix(in lab, red, red)){.teacher-lesson-loads-table thead tr:first-child th{border-bottom-color:color-mix(in srgb,var(--blue) 35%,var(--line))}}.teacher-lesson-loads-table thead tr:first-child th{font-size:9px}.teacher-lesson-loads-table thead tr:nth-child(2) th{min-width:78px;color:var(--blue)}.teacher-lesson-loads-table thead th small{color:var(--muted);margin-bottom:2px;font-size:6px;display:block}.teacher-lesson-loads-table th:nth-child(2),.teacher-lesson-loads-table td:nth-child(2){text-align:right;min-width:205px}.teacher-lesson-loads-table th:nth-child(3),.teacher-lesson-loads-table td:nth-child(3){min-width:86px}.teacher-lesson-loads-table th:nth-child(4),.teacher-lesson-loads-table td:nth-child(4),.teacher-lesson-loads-table th:nth-child(5),.teacher-lesson-loads-table td:nth-child(5){min-width:125px}.teacher-lesson-loads-table tbody tr:hover{background:var(--blue-soft)}@supports (color:color-mix(in lab, red, red)){.teacher-lesson-loads-table tbody tr:hover{background:color-mix(in srgb,var(--blue-soft) 40%,transparent)}}.teacher-lesson-loads-table tbody tr.leadership-row{background:var(--orange-soft)}@supports (color:color-mix(in lab, red, red)){.teacher-lesson-loads-table tbody tr.leadership-row{background:color-mix(in srgb,var(--orange-soft) 45%,transparent)}}.lesson-load-sequence{background:var(--blue-soft);width:25px;height:25px;color:var(--blue);border-radius:8px;place-items:center;display:inline-grid}.lesson-load-person{align-items:center;gap:8px;display:flex}.lesson-load-person .student-avatar{flex:0 0 30px;width:30px;height:30px}.lesson-load-person strong,.lesson-load-person small{display:block}.lesson-load-person strong{white-space:nowrap;font-size:9px}.lesson-load-person small{color:var(--muted);margin-top:2px;font-size:6px}.lesson-load-position{background:var(--green-soft);color:var(--green);border-radius:8px;padding:5px 8px;font-weight:900;display:inline-block}.lesson-load-position.leadership{background:var(--orange-soft);color:var(--orange)}.lesson-load-subject strong,.lesson-load-subject small{display:block}.lesson-load-subject small{color:var(--muted);margin-top:3px;font-size:6px}.teacher-lesson-loads-table td.assigned-load{background:var(--green-soft)}@supports (color:color-mix(in lab, red, red)){.teacher-lesson-loads-table td.assigned-load{background:color-mix(in srgb,var(--green-soft) 72%,var(--surface))}}.teacher-lesson-loads-table td.assigned-load{color:var(--green);font-size:11px;font-weight:950}.teacher-lesson-loads-table td.empty-load{color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.teacher-lesson-loads-table td.empty-load{color:color-mix(in srgb,var(--muted) 60%,transparent)}}.lesson-load-total{background:var(--surface-2);color:var(--muted);border-radius:9px;align-items:baseline;gap:2px;padding:7px 9px;font-size:13px;display:inline-flex}.lesson-load-total.has-load{background:var(--blue-soft);color:var(--blue)}.lesson-load-total small{font-size:6px}.teacher-lesson-loads-table textarea{resize:vertical;border:1px solid var(--line);background:var(--surface-2);width:150px;min-height:48px;color:var(--text);border-radius:9px;padding:7px;font:700 8px/1.5 inherit}.teacher-lesson-loads-table textarea:focus{outline:2px solid var(--blue)}@supports (color:color-mix(in lab, red, red)){.teacher-lesson-loads-table textarea:focus{outline:2px solid color-mix(in srgb,var(--blue) 25%,transparent)}}.teacher-lesson-loads-table textarea:focus{border-color:var(--blue)}.notes-saved{color:var(--green);margin-top:2px;font-size:6px;display:block}.teacher-lesson-loads-table tfoot th{background:var(--purple-soft)}@supports (color:color-mix(in lab, red, red)){.teacher-lesson-loads-table tfoot th{background:color-mix(in srgb,var(--purple-soft) 65%,var(--surface))}}.teacher-lesson-loads-table tfoot th{color:var(--purple);font-size:9px;font-weight:950}.app.dark .teacher-lesson-loads-hero,.app.dark .teacher-lesson-loads-table tbody tr.leadership-row{background:#132238}.app.dark .teacher-lesson-loads-table thead th{background:#172943}.app.dark .teacher-lesson-loads-table td.assigned-load{color:#56d7ad;background:#12392f}@media (max-width:800px){.teacher-lesson-loads-hero{flex-wrap:wrap;align-items:flex-start}.teacher-lesson-loads-stats{width:100%}.teacher-lesson-loads-stats b{flex:1;min-width:0}.teacher-lesson-loads-card>header{flex-direction:column;align-items:flex-start}}@media print{.teacher-lesson-loads-page{display:block}.teacher-lesson-loads-hero{box-shadow:none}.teacher-lesson-loads-scroll{overflow:visible}.teacher-lesson-loads-table{width:100%;font-size:6pt}.teacher-lesson-loads-table th,.teacher-lesson-loads-table td{min-width:0!important;padding:1.5mm!important}.teacher-lesson-loads-table textarea{resize:none;background:0 0;border:0;width:100%;min-height:8mm}.notes-saved{display:none}}.lesson-load-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px;display:flex!important}.lesson-load-actions>b{background:var(--blue-soft);color:var(--blue);border-radius:9px;padding:7px 9px;font-size:8px}.lesson-load-actions button{border:1px solid var(--line);background:var(--surface-2);min-height:35px;color:var(--text);cursor:pointer;border-radius:9px;padding:0 11px;font-size:8px;font-weight:900}.lesson-load-actions .lesson-load-print-button{border-color:var(--green);background:var(--green);color:#fff}.teacher-lesson-load-pages{background:var(--surface-2);gap:14px;padding:14px;display:grid}.lesson-load-print-page{border:1px solid var(--line);background:var(--surface);border-radius:14px;width:100%;overflow:hidden}.lesson-load-page-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:11px 13px;display:flex}.lesson-load-page-heading small,.lesson-load-page-heading strong{display:block}.lesson-load-page-heading small{color:var(--blue);font-size:7px}.lesson-load-page-heading strong{margin-top:2px;font-size:11px}.lesson-load-page-heading>span{background:var(--purple-soft);color:var(--purple);border-radius:8px;padding:6px 9px;font-size:7px;font-weight:900}.teacher-lesson-loads-table.compact th,.teacher-lesson-loads-table.compact td{padding:7px 6px;min-width:0!important}.teacher-lesson-loads-table.compact th:first-child,.teacher-lesson-loads-table.compact td:first-child{text-align:center;width:4%}.teacher-lesson-loads-table.compact textarea{width:100%;min-height:42px}.lesson-load-assignment-list{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.lesson-load-assignment-list>span{border:1px solid var(--blue);grid-template-columns:auto auto auto;align-items:center;gap:4px;padding:4px 6px;display:grid}@supports (color:color-mix(in lab, red, red)){.lesson-load-assignment-list>span{border:1px solid color-mix(in srgb,var(--blue) 22%,var(--line))}}.lesson-load-assignment-list>span{background:var(--blue-soft);border-radius:8px}@supports (color:color-mix(in lab, red, red)){.lesson-load-assignment-list>span{background:color-mix(in srgb,var(--blue-soft) 56%,var(--surface))}}.lesson-load-assignment-list>span{white-space:nowrap}.lesson-load-assignment-list b{font-size:7px}.lesson-load-assignment-list em{color:var(--muted);font-size:6px;font-style:normal}.lesson-load-assignment-list strong{background:var(--green-soft);color:var(--green);border-radius:5px;padding:2px 4px;font-size:6px}.lesson-load-assignment-list>small{color:var(--muted);font-size:7px}.lesson-load-print-page>footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:10px;padding:7px 11px;font-size:7px;display:flex}.lesson-load-print-page>footer>b{color:var(--blue)}.app.dark .teacher-lesson-load-pages{background:#0d192a}.app.dark .lesson-load-print-page{background:#132238;border-color:#2b405c}@media (max-width:900px){.teacher-lesson-loads-table.compact th:nth-child(4),.teacher-lesson-loads-table.compact td:nth-child(4){width:34%}.teacher-lesson-loads-table.compact th:nth-child(2),.teacher-lesson-loads-table.compact td:nth-child(2){width:21%}.teacher-lesson-loads-table.compact th:nth-child(3),.teacher-lesson-loads-table.compact td:nth-child(3){width:17%}.lesson-load-assignment-list{gap:3px}.lesson-load-assignment-list>span{padding:3px 4px}}@media (max-width:650px){.teacher-lesson-loads-table.compact .student-avatar{display:none}.teacher-lesson-loads-table.compact th,.teacher-lesson-loads-table.compact td{padding:5px 3px;font-size:6px}.lesson-load-assignment-list>span{grid-template-columns:1fr}.lesson-load-actions{justify-content:stretch}.lesson-load-actions button{flex:1}}@page lesson-load-register{size:A4 portrait;margin:10mm}@media print{body.printing-lesson-loads *{visibility:hidden!important}body.printing-lesson-loads .teacher-lesson-loads-page,body.printing-lesson-loads .teacher-lesson-loads-page *{visibility:visible!important}body.printing-lesson-loads .teacher-lesson-loads-page{color:#111!important;background:#fff!important;width:100%!important;margin:0!important;padding:0!important;display:block!important;position:absolute!important;inset:0!important}body.printing-lesson-loads .teacher-lesson-loads-hero,body.printing-lesson-loads .teacher-lesson-loads-card>header{display:none!important}body.printing-lesson-loads .teacher-lesson-loads-card{box-shadow:none!important;background:#fff!important;border:0!important;overflow:visible!important}body.printing-lesson-loads .teacher-lesson-load-pages{background:#fff!important;padding:0!important;display:block!important}body.printing-lesson-loads .lesson-load-print-page{page:lesson-load-register;break-after:page;page-break-after:always;color:#111!important;box-sizing:border-box!important;background:#fff!important;border:0!important;border-radius:0!important;width:100%!important;height:277mm!important;overflow:hidden!important}body.printing-lesson-loads .lesson-load-print-page:last-child{break-after:auto;page-break-after:auto}body.printing-lesson-loads .lesson-load-page-heading{box-sizing:border-box!important;border:1px solid #6f84a5!important;height:13mm!important;padding:2mm 3mm!important}body.printing-lesson-loads .lesson-load-page-heading small{color:#1c4f96!important;font-size:6.5pt!important}body.printing-lesson-loads .lesson-load-page-heading strong{font-size:9pt!important}body.printing-lesson-loads .lesson-load-page-heading>span{color:#333!important;background:#eee!important;font-size:6pt!important}body.printing-lesson-loads .teacher-lesson-loads-table.compact{table-layout:fixed!important;border-collapse:collapse!important;color:#111!important;width:100%!important;height:auto!important}body.printing-lesson-loads .teacher-lesson-loads-table.compact th,body.printing-lesson-loads .teacher-lesson-loads-table.compact td{color:#111!important;box-sizing:border-box!important;background:#fff!important;border:1px solid #6f84a5!important;height:10.7mm!important;min-height:10.7mm!important;max-height:10.7mm!important;padding:1mm!important;font-size:6.3pt!important;overflow:hidden!important}body.printing-lesson-loads .teacher-lesson-loads-table.compact thead th{color:#111!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;background:#dbe9f8!important;height:8mm!important;font-size:7pt!important}body.printing-lesson-loads .teacher-lesson-loads-table.compact tfoot th{color:#35226b!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;background:#e9e3f7!important;height:7mm!important}body.printing-lesson-loads .lesson-load-person .student-avatar{display:none!important}body.printing-lesson-loads .lesson-load-person strong{white-space:normal!important;font-size:6.5pt!important}body.printing-lesson-loads .lesson-load-person small{font-size:5pt!important}body.printing-lesson-loads .lesson-load-position{color:#111!important;background:#eee!important;padding:.5mm 1mm!important;font-size:5pt!important}body.printing-lesson-loads .lesson-load-subject strong{font-size:6.5pt!important}body.printing-lesson-loads .lesson-load-subject small{font-size:5pt!important}body.printing-lesson-loads .lesson-load-assignment-list{gap:.7mm!important}body.printing-lesson-loads .lesson-load-assignment-list>span{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;background:#edf4fc!important;border:1px solid #9eb5d4!important;padding:.5mm .8mm!important}body.printing-lesson-loads .lesson-load-assignment-list b{font-size:5.2pt!important}body.printing-lesson-loads .lesson-load-assignment-list em,body.printing-lesson-loads .lesson-load-assignment-list strong{font-size:4.7pt!important}body.printing-lesson-loads .lesson-load-assignment-list strong{color:#154f3c!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;background:#daf2e8!important}body.printing-lesson-loads .lesson-load-total{color:#174a9a!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;background:#e1ecff!important;padding:1mm!important;font-size:8pt!important}body.printing-lesson-loads .lesson-load-total small{font-size:4.5pt!important}body.printing-lesson-loads .teacher-lesson-loads-table textarea{color:#111!important;resize:none!important;background:0 0!important;border:0!important;width:100%!important;height:8mm!important;min-height:8mm!important;padding:.5mm!important;font-size:5.5pt!important;overflow:hidden!important}body.printing-lesson-loads .notes-saved{display:none!important}body.printing-lesson-loads .lesson-load-print-page>footer{color:#333!important;box-sizing:border-box!important;border:1px solid #6f84a5!important;border-top:0!important;height:7mm!important;padding:1mm 2mm!important;font-size:5.5pt!important}}.teacher-lesson-loads-table.compact tbody tr{height:54px}.teacher-lesson-loads-table.compact tbody td{height:54px;max-height:54px;overflow:hidden}.teacher-lesson-loads-table.compact textarea{resize:none;height:32px;min-height:32px;padding:5px}.teacher-lesson-loads-table.compact .lesson-load-person .student-avatar{flex-basis:26px;width:26px;height:26px;font-size:7px}.teacher-lesson-loads-table.compact .lesson-load-total{padding:5px 7px;font-size:11px}.teacher-lesson-loads-table.compact .lesson-load-assignment-list>span{padding:3px 5px}@media print{body.printing-lesson-loads{background:#fff!important;margin:0!important}body.printing-lesson-loads .app{background:#fff!important;min-height:0!important;display:block!important}body.printing-lesson-loads .sidebar,body.printing-lesson-loads .topbar,body.printing-lesson-loads .mobile-nav,body.printing-lesson-loads .backdrop{display:none!important}body.printing-lesson-loads .workspace,body.printing-lesson-loads .content{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;display:block!important;overflow:visible!important;transform:none!important}body.printing-lesson-loads .content>:not(.teacher-lesson-loads-page){display:none!important}body.printing-lesson-loads .teacher-lesson-loads-page{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;position:static!important;inset:auto!important;overflow:visible!important;transform:none!important}body.printing-lesson-loads .teacher-lesson-loads-card,body.printing-lesson-loads .teacher-lesson-load-pages{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;display:block!important;overflow:visible!important;transform:none!important}body.printing-lesson-loads .lesson-load-print-page{height:277mm!important;min-height:277mm!important;max-height:277mm!important;margin:0!important;padding:0!important;overflow:hidden!important}body.printing-lesson-loads .teacher-lesson-loads-table.compact tbody tr,body.printing-lesson-loads .teacher-lesson-loads-table.compact tbody td{height:9.6mm!important;min-height:9.6mm!important;max-height:9.6mm!important}body.printing-lesson-loads .teacher-lesson-loads-table.compact th,body.printing-lesson-loads .teacher-lesson-loads-table.compact td{padding:.7mm!important;font-size:5.8pt!important}body.printing-lesson-loads .teacher-lesson-loads-table.compact thead th{height:7mm!important;min-height:7mm!important;max-height:7mm!important;font-size:6.6pt!important}body.printing-lesson-loads .teacher-lesson-loads-table.compact tfoot th{height:6mm!important;min-height:6mm!important;max-height:6mm!important}body.printing-lesson-loads .lesson-load-page-heading{height:11mm!important;min-height:11mm!important;max-height:11mm!important}body.printing-lesson-loads .lesson-load-print-page>footer{height:6mm!important;min-height:6mm!important;max-height:6mm!important}body.printing-lesson-loads .teacher-lesson-loads-table textarea{height:6.5mm!important;min-height:6.5mm!important;font-size:5pt!important}}.schedule-reference-board .schedule-reference-scroll table{table-layout:fixed;width:100%;min-width:0}.schedule-reference-board .board-day-head,.schedule-reference-board .board-day-cell{width:42px}.schedule-reference-board .board-period-head,.schedule-reference-board .board-period-cell{width:30px}.schedule-reference-board .board-grade-head,.schedule-reference-board .board-section-head,.schedule-reference-board .board-field-head,.schedule-reference-board .board-lesson-cell,.schedule-reference-board .board-teacher-cell{width:auto;min-width:0}.schedule-reference-board thead tr:first-child{height:38px}.schedule-reference-board thead tr:nth-child(2){height:32px}.schedule-reference-board thead tr:nth-child(3){height:28px}.schedule-reference-board .board-grade-head{height:38px}.schedule-reference-board .board-section-head{height:32px}.schedule-reference-board .board-field-head{height:28px}.schedule-reference-board tbody tr{height:44px}.schedule-reference-board .board-period-cell,.schedule-reference-board .board-lesson-cell,.schedule-reference-board .board-teacher-cell{height:44px;min-height:44px;max-height:44px;padding:3px 2px;overflow:hidden}.schedule-reference-board .board-lesson-cell strong,.schedule-reference-board .board-teacher-cell span,.schedule-reference-board .board-teacher-button{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;max-height:2.5em;display:-webkit-box;overflow:hidden}.schedule-reference-board .board-teacher-button{min-height:0;margin:auto}@media print{body.printing-timetable .schedule-reference-board thead tr:first-child,body.printing-timetable .schedule-reference-board .board-grade-head{height:5.5mm!important;min-height:5.5mm!important;max-height:5.5mm!important}body.printing-timetable .schedule-reference-board thead tr:nth-child(2),body.printing-timetable .schedule-reference-board .board-section-head{height:4.5mm!important;min-height:4.5mm!important;max-height:4.5mm!important}body.printing-timetable .schedule-reference-board thead tr:nth-child(3),body.printing-timetable .schedule-reference-board .board-field-head{height:3.6mm!important;min-height:3.6mm!important;max-height:3.6mm!important}body.printing-timetable .schedule-reference-board tbody tr,body.printing-timetable .schedule-reference-board .board-period-cell,body.printing-timetable .schedule-reference-board .board-lesson-cell,body.printing-timetable .schedule-reference-board .board-teacher-cell{height:5.6mm!important;min-height:5.6mm!important;max-height:5.6mm!important;overflow:hidden!important}}.teacher-lesson-loads-table.compact{table-layout:fixed;width:100%;min-width:0}.teacher-lesson-loads-table.compact col.lesson-load-col-sequence{width:3%}.teacher-lesson-loads-table.compact col.lesson-load-col-name{width:13%}.teacher-lesson-loads-table.compact col.lesson-load-col-specialty{width:10%}.teacher-lesson-loads-table.compact col.lesson-load-col-assignments{width:54%}.teacher-lesson-loads-table.compact col.lesson-load-col-total{width:7%}.teacher-lesson-loads-table.compact col.lesson-load-col-notes{width:13%}.teacher-lesson-loads-table.compact th:first-child,.teacher-lesson-loads-table.compact td:first-child{text-align:center!important;vertical-align:middle!important;width:3%!important;min-width:0!important;padding:0!important}.teacher-lesson-loads-table.compact th:nth-child(2),.teacher-lesson-loads-table.compact td:nth-child(2){text-align:right;width:13%!important}.teacher-lesson-loads-table.compact th:nth-child(3),.teacher-lesson-loads-table.compact td:nth-child(3){text-align:right;width:10%!important}.teacher-lesson-loads-table.compact th:nth-child(4),.teacher-lesson-loads-table.compact td:nth-child(4){text-align:right;width:54%!important}.teacher-lesson-loads-table.compact th:nth-child(5),.teacher-lesson-loads-table.compact td:nth-child(5){text-align:center;width:7%!important}.teacher-lesson-loads-table.compact th:nth-child(6),.teacher-lesson-loads-table.compact td:nth-child(6){text-align:center;width:13%!important}.teacher-lesson-loads-table.compact thead tr,.teacher-lesson-loads-table.compact thead th{height:36px;min-height:36px;max-height:36px}.teacher-lesson-loads-table.compact tbody tr,.teacher-lesson-loads-table.compact tbody td{height:42px;min-height:42px;max-height:42px}.teacher-lesson-loads-table.compact th,.teacher-lesson-loads-table.compact td{vertical-align:middle;padding:3px;overflow:hidden}.teacher-lesson-loads-table.compact td:first-child{text-align:center!important;direction:ltr!important}.teacher-lesson-loads-table.compact .lesson-load-sequence-cell{text-align:left!important;vertical-align:middle!important;color:var(--blue)!important;padding:0!important;font-size:9px!important;font-weight:950!important;line-height:1!important;position:relative!important}.teacher-lesson-loads-table.compact .lesson-load-sequence-cell>span{position:absolute!important;top:50%!important;left:1px!important;transform:translateY(-50%)!important}.teacher-lesson-loads-table.compact .lesson-load-person{gap:4px;min-width:0}.teacher-lesson-loads-table.compact .lesson-load-person>div:last-child{min-width:0}.teacher-lesson-loads-table.compact .lesson-load-person .student-avatar{border-radius:6px;flex-basis:20px;width:20px;height:20px;font-size:6px}.teacher-lesson-loads-table.compact .lesson-load-person strong{text-overflow:ellipsis;white-space:nowrap;font-size:7px;overflow:hidden}.teacher-lesson-loads-table.compact .lesson-load-person small{font-size:5px}.teacher-lesson-loads-table.compact .lesson-load-position{margin-top:1px;padding:1px 4px;font-size:5px}.teacher-lesson-loads-table.compact .lesson-load-subject{max-height:34px;overflow:hidden}.teacher-lesson-loads-table.compact .lesson-load-subject strong{white-space:nowrap;text-overflow:ellipsis;font-size:7px;overflow:hidden}.teacher-lesson-loads-table.compact .lesson-load-subject small{white-space:nowrap;text-overflow:ellipsis;font-size:5px;overflow:hidden}.teacher-lesson-loads-table.compact .lesson-load-assignment-list{grid-template-columns:repeat(4,minmax(0,1fr));align-content:center;gap:3px;max-height:36px;display:grid;overflow:hidden}.teacher-lesson-loads-table.compact .lesson-load-assignment-list>span{grid-template-columns:minmax(0,1fr) auto auto;width:100%;min-width:0;height:18px;padding:2px 3px;overflow:hidden}.teacher-lesson-loads-table.compact .lesson-load-assignment-list b{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.teacher-lesson-loads-table.compact textarea{resize:none;height:26px;min-height:26px;max-height:26px;padding:3px;font-size:6px;overflow:hidden}.teacher-lesson-loads-table.compact .notes-saved{margin-top:0}@media (max-width:900px){.teacher-lesson-loads-table.compact .lesson-load-assignment-list{grid-template-columns:repeat(3,minmax(0,1fr))}}.lesson-load-grid{width:100%;min-width:0;color:var(--text);direction:rtl}.lesson-load-grid-row{grid-template-columns:38px minmax(120px,13%) minmax(105px,10%) minmax(340px,1fr) 72px minmax(125px,13%);align-items:stretch;display:grid}.lesson-load-grid-row>div{border-inline-start:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center;justify-content:center;align-items:center;min-width:0;min-height:42px;padding:4px 6px;font-size:8px;display:flex;overflow:hidden}.lesson-load-grid-header>div{background:var(--blue-soft);min-height:38px}@supports (color:color-mix(in lab, red, red)){.lesson-load-grid-header>div{background:color-mix(in srgb,var(--blue-soft) 70%,var(--surface))}}.lesson-load-grid-header>div{border-bottom-color:var(--blue)}@supports (color:color-mix(in lab, red, red)){.lesson-load-grid-header>div{border-bottom-color:color-mix(in srgb,var(--blue) 35%,var(--line))}}.lesson-load-grid-header>div{font-size:8px;font-weight:950}.lesson-load-grid-body.leadership-row{background:var(--orange-soft)}@supports (color:color-mix(in lab, red, red)){.lesson-load-grid-body.leadership-row{background:color-mix(in srgb,var(--orange-soft) 45%,transparent)}}.lesson-load-grid-body:hover{background:var(--blue-soft)}@supports (color:color-mix(in lab, red, red)){.lesson-load-grid-body:hover{background:color-mix(in srgb,var(--blue-soft) 40%,transparent)}}.lesson-load-grid-body>div:nth-child(2),.lesson-load-grid-body>div:nth-child(3),.lesson-load-grid-body>div:nth-child(4){text-align:right;justify-content:flex-start}.lesson-load-grid-sequence{background:0 0;padding:0!important;overflow:visible!important}.lesson-load-grid-sequence b{color:var(--text);box-shadow:none;background:0 0;font-size:8px;font-weight:800;line-height:1;display:inline-block}.lesson-load-grid .lesson-load-person{gap:4px;width:100%;min-width:0}.lesson-load-grid .lesson-load-person>div:last-child{min-width:0}.lesson-load-grid .lesson-load-person .student-avatar{border-radius:7px;flex:0 0 22px;width:22px;height:22px;font-size:6px}.lesson-load-grid .lesson-load-person strong{text-overflow:ellipsis;white-space:nowrap;font-size:7px;overflow:hidden}.lesson-load-grid .lesson-load-person small{font-size:5px}.lesson-load-grid .lesson-load-position{margin-top:1px;padding:1px 4px;font-size:5px}.lesson-load-grid .lesson-load-subject{width:100%;min-width:0;overflow:hidden}.lesson-load-grid .lesson-load-subject strong{white-space:nowrap;text-overflow:ellipsis;font-size:7px;overflow:hidden}.lesson-load-grid .lesson-load-subject small{white-space:nowrap;text-overflow:ellipsis;font-size:5px;overflow:hidden}.lesson-load-grid .lesson-load-assignment-list{grid-template-columns:repeat(4,minmax(0,1fr));align-content:center;gap:3px;width:100%;max-height:36px;display:grid;overflow:hidden}.lesson-load-grid .lesson-load-assignment-list>span{grid-template-columns:minmax(0,1fr) auto auto;width:100%;min-width:0;height:18px;padding:2px 3px;overflow:hidden}.lesson-load-grid .lesson-load-assignment-list:has(.lesson-load-grade-group){grid-template-columns:repeat(3,minmax(0,1fr));max-height:none}.lesson-load-grade-group{border:1px solid var(--blue);min-width:0;min-height:30px;padding:3px 5px}@supports (color:color-mix(in lab, red, red)){.lesson-load-grade-group{border:1px solid color-mix(in srgb,var(--blue) 20%,var(--line))}}.lesson-load-grade-group{background:var(--blue-soft);border-radius:7px}@supports (color:color-mix(in lab, red, red)){.lesson-load-grade-group{background:color-mix(in srgb,var(--blue-soft) 34%,var(--surface))}}.lesson-load-grade-group{align-items:center;gap:5px;display:flex;overflow:hidden}.lesson-load-grade-group>b{color:var(--text);white-space:nowrap;flex:none;font-size:6.5px}.lesson-load-grade-group>div{flex-wrap:wrap;align-items:center;gap:3px;min-width:0;display:flex}.lesson-load-grade-group span{white-space:nowrap;color:var(--muted);align-items:center;gap:2px;font-size:5.5px;display:inline-flex}.lesson-load-grade-group span i{color:var(--muted);font-style:normal}@supports (color:color-mix(in lab, red, red)){.lesson-load-grade-group span i{color:color-mix(in srgb,var(--muted) 55%,transparent)}}.lesson-load-grade-group span em{font-style:normal}.lesson-load-grade-group span strong{background:var(--green-soft);color:var(--green);border-radius:4px;padding:1px 3px;font-size:5.5px}.app.dark .lesson-load-grade-group{background:#172943;border-color:#304b70}.app.dark .lesson-load-grade-group span strong{color:#8ef0c9;background:#12362f}.lesson-load-grid textarea{border:1px solid var(--line);background:var(--surface-2);width:100%;height:27px;min-height:27px;max-height:27px;color:var(--text);resize:none;border-radius:7px;padding:3px;font:700 6px/1.4 inherit;overflow:hidden}.lesson-load-grid-summary>div{background:var(--purple-soft);min-height:34px}@supports (color:color-mix(in lab, red, red)){.lesson-load-grid-summary>div{background:color-mix(in srgb,var(--purple-soft) 65%,var(--surface))}}.lesson-load-grid-summary>div{color:var(--purple);font-size:8px;font-weight:950}.lesson-load-grid-summary>div:nth-child(2){text-align:right;grid-column:auto;justify-content:flex-start}.app.dark .lesson-load-grid-header>div{background:#172943}.app.dark .lesson-load-grid-body.leadership-row{background:#132238}@media (max-width:900px){.lesson-load-grid-row{grid-template-columns:34px minmax(100px,14%) minmax(88px,11%) minmax(260px,1fr) 60px minmax(105px,13%)}.lesson-load-grid .lesson-load-assignment-list{grid-template-columns:repeat(3,minmax(0,1fr))}}@media print{body.printing-lesson-loads .lesson-load-grid-row{break-inside:avoid!important;page-break-inside:avoid!important;grid-template-columns:8mm 34mm 27mm minmax(0,1fr) 15mm 32mm!important}body.printing-lesson-loads .lesson-load-grid-row>div{color:#111!important;box-sizing:border-box!important;background:#fff!important;border:1px solid #6f84a5!important;height:9.6mm!important;min-height:9.6mm!important;max-height:9.6mm!important;padding:.7mm!important;font-size:5.8pt!important}body.printing-lesson-loads .lesson-load-grid-header>div{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;background:#dbe9f8!important;height:7mm!important;min-height:7mm!important;max-height:7mm!important;font-size:6.6pt!important}body.printing-lesson-loads .lesson-load-grid-summary>div{color:#35226b!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;background:#e9e3f7!important;height:6mm!important;min-height:6mm!important;max-height:6mm!important}body.printing-lesson-loads .lesson-load-grid-sequence{overflow:visible!important}body.printing-lesson-loads .lesson-load-grid-sequence b{color:#111!important;box-shadow:none!important;background:0 0!important;border:0!important;font-size:6pt!important;font-weight:800!important}body.printing-lesson-loads .lesson-load-grid textarea{color:#111!important;resize:none!important;background:0 0!important;border:0!important;width:100%!important;height:6.5mm!important;min-height:6.5mm!important;padding:.5mm!important;font-size:5pt!important;overflow:hidden!important}body.printing-lesson-loads .lesson-load-grade-group{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;background:#f5f8fc!important;border:.2mm solid #8fa4c2!important;min-height:6.5mm!important;padding:.35mm .6mm!important}body.printing-lesson-loads .lesson-load-grade-group>b{font-size:5pt!important}body.printing-lesson-loads .lesson-load-grade-group span,body.printing-lesson-loads .lesson-load-grade-group span strong{font-size:4.4pt!important}}.account-settings-page{gap:18px;display:grid}.account-settings-hero{align-items:center;gap:16px;padding:24px;display:flex}.account-settings-icon{color:#fff;background:linear-gradient(145deg,#2563eb,#4f46e5);border-radius:18px;flex:none;place-items:center;width:58px;height:58px;font-size:25px;display:grid;box-shadow:0 12px 28px #2563eb33}.account-settings-hero>div:nth-child(2){flex:1}.account-settings-hero span{color:#2563eb;font-size:13px;font-weight:800}.account-settings-hero h2{color:#172033;margin:4px 0 5px;font-size:25px}.account-settings-hero p{color:#78849a;margin:0}.account-security-status{white-space:nowrap;background:#ecfdf6;border:1px solid #b8ead6;border-radius:12px;align-items:center;gap:8px;padding:10px 14px;font-weight:800;display:flex;color:#078356!important;font-size:12px!important}.account-security-status i{background:#10b981;border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 4px #10b98120}.account-settings-layout{grid-template-columns:minmax(0,1.35fr) minmax(270px,.65fr);align-items:start;gap:18px;display:grid}.password-change-card{gap:17px;padding:24px;display:grid}.password-card-heading{border-bottom:1px solid #e4eaf3;align-items:center;gap:12px;padding-bottom:17px;display:flex}.password-card-heading>span{color:#2563eb;background:#edf3ff;border-radius:12px;place-items:center;width:42px;height:42px;font-size:20px;font-weight:900;display:grid}.password-card-heading div{gap:3px;display:grid}.password-card-heading strong{color:#172033;font-size:17px}.password-card-heading small{color:#8b96aa}.password-change-card>label{color:#263248;gap:8px;font-size:13px;font-weight:800;display:grid}.password-field{background:#f8fafc;border:1px solid #dce4ef;border-radius:12px;align-items:center;height:48px;transition:all .2s;display:flex;overflow:hidden}.password-field:focus-within{background:#fff;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb14}.password-field input{color:#172033;min-width:0;height:100%;font:inherit;direction:rtl;background:0 0;border:0;outline:0;flex:1;padding:0 14px}.password-field button{color:#2563eb;cursor:pointer;background:#e9f0ff;border:0;border-radius:8px;height:32px;margin-inline-end:8px;padding:0 12px;font-weight:800}.password-message{border-radius:11px;align-items:center;gap:9px;padding:12px 14px;font-size:13px;font-weight:750;display:flex}.password-message b{border-radius:50%;place-items:center;width:24px;height:24px;display:grid}.password-message.error{color:#be123c;background:#fff1f2;border:1px solid #fecdd3}.password-message.error b{color:#fff;background:#e11d48}.password-message.success{color:#047857;background:#ecfdf5;border:1px solid #a7f3d0}.password-message.success b{color:#fff;background:#10b981}.change-password-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#2563eb,#4f46e5);border:0;border-radius:12px;height:48px;font-size:14px;font-weight:900;box-shadow:0 10px 22px #2563eb2b}.change-password-button:disabled{opacity:.6;cursor:wait}.password-security-guide{background:linear-gradient(145deg,#f4f7ff,#f8f6ff);border-color:#dfe5ff;padding:24px}.password-security-guide>span{color:#08956b;background:#dff8ee;border-radius:15px;place-items:center;width:48px;height:48px;font-size:22px;font-weight:900;display:grid}.password-security-guide h3{color:#172033;margin:16px 0 7px;font-size:18px}.password-security-guide p{color:#78849a;margin:0;line-height:1.8}.password-security-guide ul{gap:11px;margin:18px 0 0;padding:0;list-style:none;display:grid}.password-security-guide li{color:#536178;padding-inline-start:20px;font-size:13px;line-height:1.6;position:relative}.password-security-guide li:before{content:"✓";color:#10b981;font-weight:900;position:absolute;inset-inline-start:0}.dark .account-settings-hero h2,.dark .password-card-heading strong,.dark .password-change-card>label,.dark .password-security-guide h3{color:#eaf0fb}.dark .password-field{background:#101b2d;border-color:#2b3a51}.dark .password-field input{color:#f4f7fb}.dark .password-card-heading{border-color:#2b3a51}.dark .password-security-guide{background:linear-gradient(145deg,#111d30,#172039);border-color:#2d3d5c}@media (max-width:900px){.account-settings-hero{flex-wrap:wrap;align-items:flex-start}.account-security-status{justify-content:center;width:100%}.account-settings-layout{grid-template-columns:1fr}}.login-notice{color:#047857;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:9px;margin-top:13px;padding:11px 12px;font-size:12px;line-height:1.7}.forgot-password-link{color:#2563eb;cursor:pointer;background:0 0;border:0;margin:9px 0 0 auto;padding:3px;font-size:12px;font-weight:800;display:block}.forgot-password-link:hover{text-decoration:underline}.app{--fixed-sidebar-width:252px;--content-divider-gap:14px}html,body{height:100%;overflow:hidden}.app{height:100dvh;min-height:100dvh;overflow:hidden}.sidebar{width:var(--fixed-sidebar-width);min-width:var(--fixed-sidebar-width);max-width:var(--fixed-sidebar-width);scrollbar-gutter:auto;height:100dvh;box-shadow:-1px 0 0 var(--line);contain:layout paint;direction:rtl;border-left:0;left:auto;right:0;overflow:hidden auto}.sidebar>*{direction:rtl}.sidebar{scrollbar-width:none}.sidebar::-webkit-scrollbar{width:0;height:0;display:none}.sidebar nav,.sidebar .nav-item,.sidebar .brand,.sidebar .help-card,.sidebar .sidebar-user{min-width:0;max-width:100%}.sidebar .nav-item span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.workspace{margin-right:var(--fixed-sidebar-width);width:calc(100% - var(--fixed-sidebar-width));scrollbar-gutter:auto;direction:ltr;min-width:0;height:100dvh;overflow:hidden auto}.workspace>*{direction:rtl}.workspace::-webkit-scrollbar{width:5px}.workspace::-webkit-scrollbar-track{background:var(--line)}.workspace::-webkit-scrollbar-thumb{background:var(--muted)}@supports (color:color-mix(in lab, red, red)){.workspace::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--muted) 48%,transparent)}}.workspace::-webkit-scrollbar-thumb{border-radius:999px}.workspace::-webkit-scrollbar-thumb:hover{background:var(--muted)}@supports (color:color-mix(in lab, red, red)){.workspace::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--muted) 72%,transparent)}}.workspace{scrollbar-width:thin;scrollbar-color:var(--muted) var(--line)}@supports (color:color-mix(in lab, red, red)){.workspace{scrollbar-color:color-mix(in srgb,var(--muted) 48%,transparent) var(--line)}}.content{max-width:none;padding-right:var(--content-divider-gap);margin:0}.topbar{padding-right:var(--content-divider-gap)}@media (max-width:1100px) and (min-width:761px){.app{--fixed-sidebar-width:220px;--content-divider-gap:12px}}@media (max-width:760px){.app{--fixed-sidebar-width:270px;--content-divider-gap:15px}.sidebar{width:var(--fixed-sidebar-width);min-width:var(--fixed-sidebar-width);max-width:var(--fixed-sidebar-width)}.workspace{scrollbar-width:none;width:100%;margin:0}.workspace::-webkit-scrollbar{width:0;height:0;display:none}.content,.topbar{padding-right:var(--content-divider-gap)}}.app.theme-purple{--blue:#7c3aed;--blue-soft:#f0e8ff;--purple:#a855f7;--purple-soft:#f5eaff;--theme-start:#6d28d9;--theme-end:#a855f7}.app.theme-sky{--blue:#0284c7;--blue-soft:#e0f2fe;--purple:#0ea5e9;--purple-soft:#e0f7ff;--theme-start:#0369a1;--theme-end:#38bdf8}.app.theme-gray{--blue:#526071;--blue-soft:#e9edf2;--purple:#788596;--purple-soft:#eef1f5;--theme-start:#374151;--theme-end:#8793a2}.app.theme-pink{--blue:#db2777;--blue-soft:#fce7f3;--purple:#ec4899;--purple-soft:#fce7f3;--theme-start:#be185d;--theme-end:#f472b6}.app .brand-mark{background:linear-gradient(145deg,var(--theme-start),var(--theme-end))}.app .primary-button,.app .change-password-button{background:linear-gradient(135deg,var(--theme-start),var(--theme-end))}.theme-switcher{border:1px solid var(--line);background:var(--surface);border-radius:11px;align-items:center;gap:5px;height:39px;padding:0 7px;display:flex}.theme-swatch{border:2px solid var(--surface);cursor:pointer;width:18px;height:18px;box-shadow:0 0 0 1px var(--line);border-radius:5px;padding:0;transition:transform .18s,box-shadow .18s}.theme-swatch:hover{transform:translateY(-1px)scale(1.08)}.theme-swatch.selected{box-shadow:0 0 0 2px var(--text);transform:scale(1.08)}.theme-swatch.purple{background:linear-gradient(135deg,#6d28d9,#c084fc)}.theme-swatch.sky{background:linear-gradient(135deg,#0369a1,#7dd3fc)}.theme-swatch.gray{background:linear-gradient(135deg,#374151,#aeb7c2)}.theme-swatch.pink{background:linear-gradient(135deg,#be185d,#f9a8d4)}.app.dark{--bg:#08111f;--surface:#101c2e;--surface-2:#17263b;--text:#f8faff;--muted:#c3cddd;--line:#344862;--blue-soft:var(--blue)}@supports (color:color-mix(in lab, red, red)){.app.dark{--blue-soft:color-mix(in srgb,var(--blue) 27%,#101c2e)}}.app.dark{--purple-soft:var(--purple)}@supports (color:color-mix(in lab, red, red)){.app.dark{--purple-soft:color-mix(in srgb,var(--purple) 27%,#101c2e)}}.app.dark.theme-purple{--blue:#b794f6;--purple:#d6bcfa;--theme-start:#7c3aed;--theme-end:#c084fc}.app.dark.theme-sky{--blue:#67d2ff;--purple:#7dd3fc;--theme-start:#0284c7;--theme-end:#38bdf8}.app.dark.theme-gray{--blue:#d4dae3;--purple:#aeb8c7;--theme-start:#596579;--theme-end:#9ca7b6}.app.dark.theme-pink{--blue:#ff8fc5;--purple:#f9a8d4;--theme-start:#db2777;--theme-end:#f472b6}.app.dark,.app.dark :where(h1,h2,h3,h4,h5,h6,p,strong,label,legend,td,th,li,summary){color:var(--text)}.app.dark :where(small,.muted,.nav-label,.nav-item,.search-hint,.staff-position,.leave-note){color:var(--muted)}.app.dark :where(input,textarea,select,button){color:var(--text)}.app.dark :where(input,textarea,select){background-color:var(--surface-2);border-color:var(--line)}.app.dark :where(input,textarea)::placeholder{color:#aab6c8;opacity:1}.app.dark .theme-switcher{background:#14243a;border-color:#304761}.app.dark .theme-swatch{border-color:#14243a;box-shadow:0 0 0 1px #60728a}.app.dark .theme-swatch.selected{box-shadow:0 0 0 2px #fff}.app.dark .subscription-plan-picker legend,.app.dark .subscription-plan-picker label>span>strong,.app.dark .password-card-heading strong,.app.dark .password-change-card>label,.app.dark .password-security-guide h3,.app.dark .highlighted-teacher-summary,.app.dark .highlighted-teacher-summary strong,.app.dark .highlighted-teacher-summary b{color:var(--text)}.app.dark .subscription-plan-picker label>span{background:var(--surface-2);border-color:var(--line)}.app.dark .subscription-plan-picker label>span>small,.app.dark .password-security-guide p,.app.dark .password-security-guide li{color:var(--muted)}.app.dark .school-level-preview-banner button{color:#fff}@media (max-width:760px){.theme-switcher{gap:4px;padding:0 5px}.theme-swatch{width:16px;height:16px}}.app.theme-purple{--topbar-tone-1:#eadcff;--topbar-tone-2:#f6efff;--topbar-edge:#c9a8ff}.app.theme-sky{--topbar-tone-1:#c9efff;--topbar-tone-2:#edfaff;--topbar-edge:#83d7fa}.app.theme-gray{--topbar-tone-1:#dce2e9;--topbar-tone-2:#f1f3f6;--topbar-edge:#aeb8c5}.app.theme-pink{--topbar-tone-1:#ffd8eb;--topbar-tone-2:#fff0f7;--topbar-edge:#f7a3ca}.app .topbar{background:linear-gradient(110deg,var(--topbar-tone-1),var(--topbar-tone-2) 58%,var(--surface));border-bottom-color:var(--topbar-edge);box-shadow:0 5px 18px var(--topbar-edge)}@supports (color:color-mix(in lab, red, red)){.app .topbar{box-shadow:0 5px 18px color-mix(in srgb,var(--topbar-edge) 24%,transparent)}}.app.dark.theme-purple{--topbar-tone-1:#39245f;--topbar-tone-2:#241b3d;--topbar-edge:#7048ad}.app.dark.theme-sky{--topbar-tone-1:#123e59;--topbar-tone-2:#122c40;--topbar-edge:#267fa8}.app.dark.theme-gray{--topbar-tone-1:#303a48;--topbar-tone-2:#202a37;--topbar-edge:#5d6a7b}.app.dark.theme-pink{--topbar-tone-1:#54203c;--topbar-tone-2:#391a2d;--topbar-edge:#9b3e6d}.app.dark .topbar{background:linear-gradient(110deg,var(--topbar-tone-1),var(--topbar-tone-2) 58%,var(--surface));border-bottom-color:var(--topbar-edge)}.global-home-button{border:1px solid var(--line);background:var(--surface);height:38px;color:var(--text);cursor:pointer;border-radius:10px;align-items:center;gap:7px;margin-inline-start:7px;padding:0 12px;font-size:11px;font-weight:900;display:flex}.global-home-button .icon{color:var(--blue);font-size:18px}.global-home-button:hover{border-color:var(--blue);background:var(--blue-soft)}.content.inner-tab-closed>section:has(>[role=tablist])>[role=tablist]~*{display:none!important}@media (max-width:760px){.global-home-button strong{display:none}.global-home-button{justify-content:center;width:38px;margin-inline-start:5px;padding:0}}.academic-grade-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.academic-grade-tab{border:1px solid var(--line);background:linear-gradient(135deg,var(--surface),var(--blue-soft));min-height:92px;color:var(--text);text-align:right;cursor:pointer;box-shadow:var(--shadow);border-radius:16px;grid-template-rows:auto auto;grid-template-columns:44px 1fr auto;align-items:center;gap:4px 12px;padding:15px;transition:all .18s;display:grid;position:relative}.academic-grade-tab:hover,.academic-grade-tab[aria-selected=true]{border-color:var(--blue);box-shadow:0 10px 24px var(--blue);transform:translateY(-2px)}@supports (color:color-mix(in lab, red, red)){.academic-grade-tab:hover,.academic-grade-tab[aria-selected=true]{box-shadow:0 10px 24px color-mix(in srgb,var(--blue) 18%,transparent)}}.academic-grade-tab>span{background:var(--blue);color:#fff;border-radius:13px;grid-row:1/3;place-items:center;width:44px;height:44px;font-size:16px;font-weight:950;display:grid}.academic-grade-tab>strong{font-size:14px}.academic-grade-tab>small{color:var(--muted);font-size:8px}.academic-grade-tab>b{color:var(--blue);grid-area:1/3/3;font-size:20px}.academic-grade-tab.grade-tone-2,.academic-grade-tab.grade-tone-5{background:linear-gradient(135deg,var(--surface),var(--purple-soft))}.academic-grade-tab.grade-tone-2>span,.academic-grade-tab.grade-tone-5>span{background:var(--purple)}.academic-grade-tab.grade-tone-3,.academic-grade-tab.grade-tone-6{background:linear-gradient(135deg,var(--surface),var(--green-soft))}.academic-grade-tab.grade-tone-3>span,.academic-grade-tab.grade-tone-6>span{background:var(--green)}.academic-grade-modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#040a14a8;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.academic-grade-modal{width:min(1180px,96vw);max-height:90vh;padding:0;overflow:auto;box-shadow:0 28px 80px #0000004d}.academic-grade-modal>header{z-index:2;padding-left:62px;position:sticky;top:0}.academic-grade-modal-close{border:1px solid var(--line);background:var(--surface);width:36px;height:36px;color:var(--text);cursor:pointer;border-radius:10px;font-size:21px;position:absolute;top:50%;left:16px;transform:translateY(-50%)}.academic-grade-modal-close:hover{color:#fff;background:#dc3545;border-color:#dc3545}.app.dark .academic-grade-tab{background:linear-gradient(135deg,#122137,#172b48);border-color:#2b405c}.app.dark .academic-grade-modal{background:#122137;border-color:#2b405c}@media (max-width:900px){.academic-grade-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.academic-grade-tabs{grid-template-columns:1fr}.academic-grade-modal-backdrop{padding:10px}.academic-grade-modal{max-height:94vh}.academic-grade-modal>header{padding-left:54px}}@media screen{.lesson-load-page-heading{padding:15px 17px}.lesson-load-page-heading small{font-size:10px}.lesson-load-page-heading strong{margin-top:4px;font-size:15px}.lesson-load-page-heading>span{padding:8px 11px;font-size:10px}.lesson-load-grid-row{grid-template-columns:44px minmax(155px,14%) minmax(130px,12%) minmax(430px,1fr) 82px minmax(155px,14%)}.lesson-load-grid-row>div{min-height:64px;padding:7px 9px;font-size:11px;overflow:visible}.lesson-load-grid-header>div{min-height:48px;font-size:11px;line-height:1.5}.lesson-load-grid-sequence b{font-size:11px}.lesson-load-grid .lesson-load-person{gap:8px}.lesson-load-grid .lesson-load-person .student-avatar{border-radius:9px;flex-basis:32px;width:32px;height:32px;font-size:9px}.lesson-load-grid .lesson-load-person strong{font-size:11px;line-height:1.5}.lesson-load-grid .lesson-load-person small{font-size:8px}.lesson-load-grid .lesson-load-position{margin-top:3px;padding:3px 6px;font-size:8px}.lesson-load-grid .lesson-load-subject strong{font-size:11px;line-height:1.5}.lesson-load-grid .lesson-load-subject small{margin-top:3px;font-size:8px;line-height:1.5}.lesson-load-grid .lesson-load-assignment-list{gap:6px;max-height:none}.lesson-load-grid .lesson-load-assignment-list:has(.lesson-load-grade-group){grid-template-columns:repeat(3,minmax(0,1fr))}.lesson-load-grade-group{border-radius:9px;gap:8px;min-height:44px;padding:6px 8px}.lesson-load-grade-group>b{font-size:10px}.lesson-load-grade-group>div{gap:5px}.lesson-load-grade-group span{gap:3px;font-size:8px}.lesson-load-grade-group span strong{border-radius:5px;padding:3px 5px;font-size:9px}.lesson-load-grid .lesson-load-total{padding:8px 10px;font-size:15px}.lesson-load-grid .lesson-load-total small{font-size:8px}.lesson-load-grid textarea{height:42px;min-height:42px;max-height:42px;padding:7px;font-size:9px;line-height:1.5}.lesson-load-grid .notes-saved{margin-top:3px;font-size:8px}.lesson-load-grid-summary>div{min-height:43px;font-size:10px}}@media screen and (max-width:1100px){.lesson-load-grid-row{grid-template-columns:40px minmax(135px,15%) minmax(110px,12%) minmax(390px,1fr) 72px minmax(135px,14%)}.lesson-load-grade-group{flex-direction:column;align-items:flex-start;gap:3px}}.font-settings-trigger{letter-spacing:-1px;font-weight:950}.font-settings-trigger.active{border-color:var(--blue);background:var(--blue-soft);color:var(--blue)}.font-settings-panel{z-index:70;border:1px solid var(--line);background:var(--surface);width:min(430px,100vw - 30px);color:var(--text);border-radius:17px;position:absolute;top:62px;left:28px;overflow:hidden;box-shadow:0 22px 65px #0f1d373d}.setup-page{height:100dvh;min-height:0;overflow:hidden}.setup-aside{height:100dvh;min-height:0}.setup-workspace{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable;scrollbar-color:#9eb0ca #e9eef6;scrollbar-width:auto;height:100dvh;min-height:0;overflow:hidden scroll}.setup-workspace::-webkit-scrollbar{width:11px}.setup-workspace::-webkit-scrollbar-track{background:#e9eef6}.setup-workspace::-webkit-scrollbar-thumb{background:#9eb0ca;border:3px solid #e9eef6;border-radius:20px}.setup-workspace::-webkit-scrollbar-thumb:hover{background:#7389a8}@media (max-width:900px){.setup-page{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable;scrollbar-color:#9eb0ca #e9eef6;height:100dvh;display:block;overflow:hidden scroll}.setup-page::-webkit-scrollbar{width:10px}.setup-page::-webkit-scrollbar-track{background:#e9eef6}.setup-page::-webkit-scrollbar-thumb{background:#9eb0ca;border:3px solid #e9eef6;border-radius:20px}.setup-aside{height:auto;min-height:auto}.setup-workspace{height:auto;min-height:auto;overflow:visible}}.font-settings-panel>header{border-bottom:1px solid var(--line);background:linear-gradient(135deg,var(--blue-soft),var(--surface));justify-content:space-between;align-items:center;padding:15px 16px;display:flex}.font-settings-panel>header>div{align-items:center;gap:10px;display:flex}.font-settings-panel>header>div>span{background:var(--blue);color:#fff;border-radius:11px;place-items:center;width:38px;height:38px;font-weight:950;display:grid}.font-settings-panel>header strong,.font-settings-panel>header small{display:block}.font-settings-panel>header strong{font-size:14px}.font-settings-panel>header small{color:var(--muted);margin-top:3px;font-size:10px}.font-settings-panel>header>button{background:var(--surface);width:30px;height:30px;color:var(--muted);cursor:pointer;border:0;border-radius:8px;font-size:20px}.font-setting-list{padding:8px 15px}.font-setting-list label{border-bottom:1px solid var(--line);grid-template-columns:minmax(135px,1fr) minmax(100px,1.2fr) 52px 18px;align-items:center;gap:8px;min-height:48px;display:grid}.font-setting-list label:last-child{border-bottom:0}.font-setting-list label>span{font-size:11px;font-weight:800}.font-setting-list input[type=range]{width:100%;accent-color:var(--blue);cursor:pointer}.font-setting-list input[type=number]{border:1px solid var(--line);background:var(--surface-2);width:52px;height:31px;color:var(--text);text-align:center;border-radius:8px;font-size:12px;font-weight:900}.font-setting-list label>b{color:var(--muted);direction:ltr;font-size:9px}.font-settings-panel>footer{border-top:1px solid var(--line);background:var(--surface-2);justify-content:space-between;align-items:center;gap:10px;padding:12px 15px;display:flex}.font-settings-panel>footer button{border:1px solid var(--line);background:var(--surface);min-height:34px;color:var(--blue);cursor:pointer;border-radius:9px;padding:0 10px;font-size:9px;font-weight:900}.font-settings-panel>footer strong{color:var(--muted);font-size:8px}.font-managed .nav-item,.font-managed .primary-button,.font-managed .outline-button,.font-managed .global-back-button,.font-managed .global-home-button,.font-managed .content button,.font-managed .content input,.font-managed .content select,.font-managed .content textarea{font-size:var(--font-ui)}.font-managed .content h1,.font-managed .content h2{font-size:var(--font-heading)}@media screen{.font-managed .lesson-load-grid .lesson-load-person strong{font-size:var(--font-teacher)}.font-managed .lesson-load-grade-group>b{font-size:var(--font-grade)}.font-managed .lesson-load-grade-group span em{font-size:var(--font-section)}.font-managed .lesson-load-grade-group span strong,.font-managed .lesson-load-grid .lesson-load-total,.font-managed .lesson-load-grid-sequence b{font-size:var(--font-lesson)}.font-managed .lesson-load-grade-group{min-height:calc(var(--font-lesson) + 34px)}.font-managed .lesson-load-grid-row>div{min-height:calc(max(var(--font-teacher),var(--font-section),var(--font-lesson)) + 50px)}}@media (max-width:620px){.font-settings-panel{width:auto;position:fixed;top:72px;left:10px;right:10px}.font-setting-list label{grid-template-columns:1fr 90px 48px 16px}.font-settings-panel>footer{flex-direction:column;align-items:stretch}.font-settings-panel>footer button{width:100%}}@media (hover:none) and (pointer:coarse){.specialty-glass-card,.specialty-teachers-panel,.secure-badge,.login-stats,.modal-backdrop,.academic-grade-modal-backdrop{-webkit-backdrop-filter:none!important}.panel,.stat-card,.specialty-glass-card,.academic-grade-tab{box-shadow:0 4px 14px #162a4a12}.nav-item,.academic-section-grid button,.specialty-glass-card,.quick-grid button{transition-duration:80ms}}
