/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,: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,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-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:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.static{position:static}.col-1{grid-column:1}.row-1{grid-row:1}.block{display:block}.flex{display:flex}.hidden{display:none}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.border{border-style:var(--tw-border-style);border-width:1px}.italic{font-style:italic}.underline{text-decoration-line:underline}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{color:#14213d;font-synthesis:none;background:#f4f7fb;font-family:Noto Sans Arabic,Tahoma,Arial,sans-serif}.exam-card-badges{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.invigilation-preflight{border-inline-start:5px solid #dc2626}.invigilation-preflight.is-ready{border-inline-start-color:#059669}.preflight-metrics,.fairness-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.preflight-metrics article,.fairness-summary article{background:#f8fafc;border:1px solid #dbe5ee;border-radius:13px;align-content:center;gap:5px;min-height:76px;padding:12px 14px;display:grid}.preflight-metrics article b,.fairness-summary article b{font-size:1.35rem}.preflight-metrics .metric-ready{color:#047857;background:#ecfdf5;border-color:#a7f3d0}.preflight-metrics .metric-danger{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.absence-replacement-list,.invigilation-snapshot-list{gap:9px;margin-top:12px;display:grid}.absence-replacement-list article,.invigilation-snapshot-list article{background:#fff;border:1px solid #dbe5ee;border-radius:12px;justify-content:space-between;align-items:center;gap:14px;padding:11px 13px;display:flex}.absence-replacement-list article>div:first-child,.invigilation-snapshot-list article>div:first-child{gap:4px;display:grid}.absence-replacement-list small,.invigilation-snapshot-list small{color:#64748b}.invigilation-snapshot-list article>span{color:#475569;font-size:.83rem}.fairness-table-wrap{border:1px solid #dbe5ee;border-radius:12px;max-height:430px;margin-top:14px;overflow:auto}.fairness-table-wrap table{margin:0}.fairness-table-wrap thead{z-index:1;position:sticky;top:0}.fairness-final-report{width:210mm;min-height:297mm}.fairness-report-header{border-bottom:2px solid #0f172a;grid-template-columns:1fr 2fr;align-items:center;gap:16px;margin-bottom:12px;padding-bottom:10px;display:grid}.fairness-report-header>div{gap:4px;display:grid}.fairness-report-header h2{margin:0}.report-fairness-summary{margin-bottom:12px}.fairness-final-report .over-average{color:#b91c1c;font-weight:700}.fairness-final-report .under-average{color:#047857;font-weight:700}.report-principal-signature{text-align:center;gap:4px;width:190px;margin:18px 0 0 auto;display:grid}@media (width<=900px){.preflight-metrics,.fairness-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.absence-replacement-list article,.invigilation-snapshot-list article{flex-direction:column;align-items:stretch}}@media print{.fairness-final-report{border:0;width:100%;min-height:0;padding:0}.fairness-final-report table{font-size:8pt}.fairness-final-report th,.fairness-final-report td{padding:1.2mm}.report-fairness-summary article{min-height:13mm;padding:1mm 2mm}}*{box-sizing:border-box}body{background:#f4f7fb;min-width:320px;margin:0}button,input,select{font:inherit}button{cursor:pointer;border:0}button:disabled{opacity:.55;cursor:wait}svg{width:19px;height:19px}.app{min-height:100vh;display:flex}.app[dir=rtl]{direction:rtl}.app aside{color:#fff;z-index:20;background:linear-gradient(#0c2c48,#102a43);flex-direction:column;flex:0 0 260px;width:260px;height:100vh;padding:20px 14px;display:flex;position:sticky;top:0}.brand{border-bottom:1px solid #ffffff17;align-items:center;gap:11px;padding:2px 9px 18px;display:flex}.brand>span{background:linear-gradient(145deg,#27b3b0,#2571ae);border-radius:11px;place-items:center;width:41px;height:41px;display:grid}.brand>div{display:grid}.brand b{font-size:20px}.brand small{opacity:.55;font-size:10px}.side-close{color:#fff;background:0 0;margin-inline-start:auto;display:none}.school-mini{background:#ffffff0c;border-radius:11px;align-items:center;gap:10px;margin:17px 5px;padding:11px;display:flex}.school-mini>div{background:#1e5b86;border-radius:50%;place-items:center;width:37px;height:37px;font-weight:700;display:grid}.school-mini>span{font-size:12px;line-height:1.5}.school-mini small{color:#9fb6c9;display:block}nav{gap:3px;display:grid;overflow:auto}nav button,.aside-foot button{color:#b9ccdc;text-align:start;background:0 0;border-radius:9px;align-items:center;gap:12px;height:44px;padding:0 13px;display:flex}nav button svg{width:18px}nav button:hover,nav button.active{color:#fff;background:#1f5c88}nav button.active{box-shadow:inset 3px 0 #32c2b8}.app[dir=rtl] nav button.active{box-shadow:inset -3px 0 #32c2b8}.aside-foot{border-top:1px solid #ffffff17;margin-top:auto;padding-top:10px}.app main{flex:1;min-width:0}.app header{z-index:10;background:#fff;border-bottom:1px solid #e1e8ef;align-items:center;gap:14px;height:84px;padding:0 28px;display:flex;position:sticky;top:0}.app header h1{margin:0;font-size:22px}.app header p{color:#75879a;margin:5px 0 0;font-size:12px}.menu-btn{background:#eef4f8;border-radius:8px;padding:9px;display:none}.header-actions{align-items:center;gap:9px;margin-inline-start:auto;display:flex}.header-actions>button{background:#eef4f8;border-radius:9px;align-items:center;gap:7px;padding:9px 12px;display:flex}.search input{background:#f8fafc;border:1px solid #dce5ed;border-radius:9px;width:210px;padding:10px 13px}.avatar{color:#fff;background:#1a638f;border-radius:50%;place-items:center;width:39px;height:39px;font-size:12px;font-weight:700;display:grid}.content{max-width:1540px;margin:auto;padding:26px}.page-title{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:22px;display:flex}.page-title h2{margin:0;font-size:22px}.page-title p{color:#718397;margin:7px 0 0;font-size:13px}.page-title button,.button-row button,.panel-head button{color:#153e63;background:#e9f1f7;border-radius:9px;align-items:center;gap:7px;padding:10px 14px;display:inline-flex}.primary{box-shadow:0 5px 14px #1769aa26;color:#fff!important;background:#1769aa!important}.button-row{flex-wrap:wrap;gap:8px;display:flex}.stats{grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:18px;display:grid}.stats article,.panel{background:#fff;border:1px solid #dfe7ef;border-radius:14px;box-shadow:0 4px 18px #102a4309}.stats article{align-items:center;gap:13px;padding:18px;display:flex}.stat-icon{border-radius:13px;place-items:center;width:49px;height:49px;display:grid}.stat-icon.blue{color:#2876d2;background:#e8f2ff}.stat-icon.purple{color:#7f56d9;background:#f1ebff}.stat-icon.green{color:#139c69;background:#e8f8f1}.stat-icon.orange{color:#d97720;background:#fff1e6}.stats small,.stats strong,.stats em{display:block}.stats small{color:#73869a;font-size:12px}.stats strong{margin-top:2px;font-size:25px}.stats em{color:#17a673;font-size:10px;font-style:normal}.dashboard-grid{grid-template-columns:2fr 1fr;gap:18px;display:grid}.panel{padding:18px}.panel-head{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.panel-head h3{margin:0;font-size:16px}.mini-grid{grid-template-columns:repeat(5,1fr);gap:10px;display:grid}.mini-grid>div{background:#f7fafc;border:1px solid #e3eaf0;border-radius:10px;gap:7px;padding:10px;display:grid}.mini-grid b{font-size:12px}.mini-grid span{color:#fff;border-radius:7px;padding:9px;font-size:11px;background:#3578c3!important}.check-row{border-bottom:1px solid #edf1f5;grid-template-columns:36px 1fr auto;align-items:center;gap:8px;padding:11px 0;display:grid}.check-row:last-child{border:0}.check-row>span{color:#dd7a30;background:#fff0e7;border-radius:50%;place-items:center;width:29px;height:29px;display:grid}.check-row>span.done{color:#139c69;background:#e6f8f0}.check-row svg{width:15px}.check-row b{font-size:13px}.check-row small{color:#7b8da0;font-size:10px}.table-wrap{padding:0;overflow:auto}table{border-collapse:collapse;width:100%;min-width:720px}th,td{text-align:start;border-bottom:1px solid #e8eef3;padding:14px 16px;font-size:13px}th{color:#5d7185;background:#f3f7fa;font-size:11px}td small{color:#8393a4;margin-top:3px;display:block}tbody tr:hover{background:#fafcfe}.badge{color:#2567a4;white-space:nowrap;background:#e8f2ff;border-radius:99px;align-items:center;gap:4px;padding:5px 9px;font-size:11px;display:inline-flex}.badge svg{width:13px}.badge.red{color:#c23d50;background:#ffebee}.badge.green{color:#10845b;background:#e6f8f0}.badge.gray{color:#66788a;background:#edf1f4}.badge.blue{color:#286ca8;background:#e7f2ff}.icon{border-radius:8px;place-items:center;width:35px;height:35px;background:0 0!important;padding:0!important;display:inline-grid!important}.icon svg{width:17px}.danger{color:#d94b60!important}.dot{border-radius:50%;width:8px;height:8px;margin-inline-end:7px;display:inline-block}.card-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.stage-grid{gap:14px;display:grid}.stage-card{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:17px;display:grid}.stage-card>span{color:#18755f;background:#e8f7f2;border-radius:12px;place-items:center;width:48px;height:48px;display:grid}.stage-card>span svg{width:23px}.stage-card h3{margin:0 0 3px;font-size:15px}.stage-card small,.stage-card em{color:#718596;font-size:11px}.stage-card em{font-style:normal}.stage-class-chips{flex-wrap:wrap;align-items:center;gap:6px;margin-top:9px;display:flex}.stage-card-actions{align-items:center;gap:6px;display:flex}.stage-card-actions>button:not(.icon){color:#246693;white-space:nowrap;background:#e8f2f8;border-radius:8px;align-items:center;gap:6px;padding:9px 11px;font-size:11px;display:inline-flex}.stage-card-actions>button svg{width:15px}.stage-card-actions button:disabled{cursor:not-allowed;opacity:.45}.subject-card,.class-card{background:#fff;border:1px solid #dfe7ef;border-radius:13px;align-items:center;gap:12px;padding:17px;display:flex;position:relative}.subject-card>i{border-radius:7px;width:10px;height:48px}.subject-card>div,.class-card>div{display:grid}.subject-card b,.class-card b{font-size:14px}.subject-card small,.class-card small{color:#7b8da0;margin-top:4px;font-size:11px}.subject-card>strong{margin-inline-start:auto}.subject-card>strong small{display:inline}.subject-load-panel{background:linear-gradient(135deg,#fff 0%,#f7fbff 100%);margin-bottom:16px}.subject-load-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.subject-load-card{background:#fff;border:1px solid #dfe8ef;border-radius:11px;grid-template-columns:7px minmax(0,1fr) 72px;align-items:center;gap:10px;padding:13px;display:grid}.subject-load-card>i{border-radius:6px;align-self:stretch;min-height:44px}.subject-load-card>span{min-width:0;display:grid}.subject-load-card>span b{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.subject-load-card>span small{color:#8495a5;margin-top:3px}.subject-load-card input{text-align:center;color:#1769aa;border:1px solid #cddbe6;border-radius:8px;width:72px;padding:9px 7px;font-weight:800}.subject-load-card>em{color:#7b8da0;grid-column:2/-1;font-size:10px;font-style:normal}.calculated-load-note{color:#397261;background:#eefaf6;border:1px solid #cae9dd;border-radius:10px;align-items:center;gap:10px;margin-top:12px;padding:11px 13px;font-size:12px;display:flex}.calculated-load-note svg{color:#168367;width:19px}.load-total{border-radius:10px;align-items:center;gap:9px;margin-top:8px;padding:10px 13px;font-size:11px;display:flex}.load-total svg{flex:none;width:17px}.load-total.warning{color:#865f25;background:#fff8eb;border:1px solid #f1d8ab}.load-total.complete{color:#2c755f;background:#effaf6;border:1px solid #c9e8db}.calculated-teacher-load,.automatic-load-field{background:#f6fafc;border:1px solid #dce8ef;border-radius:10px;align-content:center;padding:11px 12px}.calculated-teacher-load strong,.automatic-load-field strong{color:#1769aa;font-size:18px}.calculated-teacher-load small,.automatic-load-field small{color:#788c9d;font-size:10px}.class-card>span{color:#2572bd;background:#e9f2ff;border-radius:11px;place-items:center;width:45px;height:45px;display:grid}.class-card>.icon{margin-inline-start:auto}.timetable-panel{overflow:auto}.filters{align-items:center;gap:16px;min-width:850px;margin-bottom:15px;display:flex}.filters label{font-size:12px;font-weight:700}.filters select{border:1px solid #dce5ed;border-radius:8px;margin-inline-start:7px;padding:8px 12px}.filters>span:last-child{color:#7a8c9e;font-size:11px}.timetable{grid-template-columns:125px repeat(var(--period-count,7), minmax(105px, 1fr));border:1px solid #dce5ee;border-radius:10px;min-width:900px;display:grid;overflow:hidden}.tt-head,.tt-day,.tt-cell{border-inline-end:1px solid #e3eaf1;border-bottom:1px solid #e3eaf1;min-height:78px;padding:8px}.tt-head{text-align:center;background:#eaf2f8;min-height:45px;font-weight:700}.tt-day{background:#f7fafc;place-items:center;font-weight:700;display:grid}.tt-cell{background:#fff}.tt-cell.drop-ready:hover{background:#e9f7f5}.lesson{cursor:grab;border-inline-start:4px solid;border-radius:8px;height:62px;padding:9px;position:relative}.lesson:active{cursor:grabbing}.lesson b,.lesson small{display:block}.lesson b{font-size:12px}.lesson small{color:#6f8192;margin-top:5px;font-size:10px}.lesson svg{color:#738496;inset-inline-end:6px;width:12px;position:absolute;top:6px}.split{grid-template-columns:2fr 1fr;gap:16px;margin-bottom:16px;display:grid}.hall{border-bottom:1px solid #e9eef3;align-items:center;gap:10px;padding:12px 0;display:flex}.hall>svg{color:#2a76b5}.hall>div{flex:1;display:grid}.hall b{font-size:13px}.hall small{color:#8393a3}.empty{text-align:center;color:#8495a6;padding:50px}.empty svg{opacity:.4;width:44px;height:44px}.activity-grid,.rules,.report-grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.activity-card{align-items:center;gap:14px;display:flex}.activity-icon,.report-card>span{color:#159c91;background:#e7f7f5;border-radius:12px;place-items:center;width:48px;height:48px;display:grid}.activity-card h3,.report-card h3,.rule h3{margin:0;font-size:15px}.activity-card p,.report-card p,.rule p{color:#74879a;margin:5px 0;font-size:12px}.activity-card>.icon{margin-inline-start:auto}.avatars{margin-top:9px;display:flex}.avatars span{color:#fff;background:#1f6591;border:2px solid #fff;border-radius:50%;place-items:center;width:30px;height:30px;margin-inline-start:-5px;font-size:9px;display:grid}.rule{align-items:center;gap:13px;display:flex}.rule>span{border-radius:11px;place-items:center;width:43px;height:43px;display:grid}.rule>span.hard{color:#c93b50;background:#ffebee}.rule>span.soft{color:#2a71b7;background:#e9f2ff}.rule>div{flex:1}.rule small{color:#8192a3;font-size:10px}.rule-controls{grid-template-columns:minmax(190px,1fr) minmax(120px,.65fr);gap:10px;margin-top:10px;display:grid}.rule-controls label{color:#5f7284;gap:4px;font-size:10px;display:grid}.rule-controls select{color:#355064;background:#fff;border:1px solid #d7e2ea;border-radius:8px;width:100%;padding:7px;font-size:11px}.rule-controls input[type=range]{accent-color:#168e85;width:100%}.rule-controls :disabled{opacity:.65;cursor:not-allowed}.switch input{display:none}.switch i{background:#bdc9d4;border-radius:20px;width:42px;height:23px;transition:all .2s;display:block;position:relative}.switch i:after{content:"";background:#fff;border-radius:50%;width:17px;height:17px;transition:all .2s;position:absolute;top:3px;left:3px}.switch input:checked+i{background:#18a47a}.switch input:checked+i:after{left:22px}.report-card{border:1px solid #0000;align-items:center;gap:13px;display:flex}.report-card-active{background:#f2fbf8;border-color:#36a58d;box-shadow:0 0 0 3px #36a58d18}.report-card>div{flex:1}.report-card button{color:#276a9e;background:#e8f2f8;border-radius:8px;align-items:center;gap:5px;padding:8px 11px;font-size:11px;display:flex}.report-workspace{margin-top:18px;padding:0;overflow:hidden}.report-toolbar{background:#f5f8fb;border-bottom:1px solid #dfe7ee;flex-wrap:wrap;align-items:center;gap:12px;padding:14px 16px;display:flex}.report-toolbar>div:first-child{flex:1;gap:3px;min-width:240px;display:grid}.report-toolbar small{color:#6f8293;font-size:11px}.report-toolbar label{align-items:center;gap:7px;font-size:11px;font-weight:800;display:flex}.report-toolbar select{background:#fff;border:1px solid #d4e0e9;border-radius:8px;min-width:150px;padding:8px 10px}.report-actions{flex-wrap:wrap;gap:7px;display:flex}.report-actions button{color:#246693;background:#e8f1f8;border-radius:8px;align-items:center;gap:6px;padding:8px 11px;font-size:11px;display:inline-flex}.report-actions button.primary{color:#fff;background:#176da8}.report-actions button:disabled{opacity:.65}.report-status{color:#176f58;background:#eef9f5;border-bottom:1px solid #d7e7e1;padding:9px 16px;font-size:11px;font-weight:800}.report-output{direction:rtl;background:#eef2f5;padding:18px;overflow:auto}.schedule-report,.simple-report{color:#152536;background:#fff;border:1px solid #cfd9e2;border-radius:6px;padding:15px}.report-stack{gap:18px;display:grid}.report-document-head{text-align:center;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;margin-bottom:12px;display:grid}.report-document-head>div{gap:3px;font-size:11px;display:grid}.report-document-head>div:first-child{text-align:start}.report-document-head>div:last-child{text-align:end}.report-document-head h2,.simple-report h2{margin:0;font-size:17px}.report-document-head small{color:#63788a}.schedule-report-table,.simple-report table{border-collapse:collapse;table-layout:fixed;width:100%}.schedule-report-table th,.schedule-report-table td,.simple-report th,.simple-report td{text-align:center;vertical-align:middle;border:1px solid #445565;padding:5px}.schedule-report-table thead th,.schedule-report-table tbody>tr>th,.simple-report thead th{background:#e5edf3;font-size:10px;font-weight:900}.schedule-report-table td{height:58px}.report-lesson{background:#f7fafc;border-top:4px solid;border-radius:5px;gap:4px;padding:6px 3px 3px;display:grid}.report-lesson b{font-size:11px}.report-lesson small{color:#5f7284;font-size:9px}.report-empty{color:#9aa9b5}.report-rights{color:#687b8c;text-align:center;border-top:1px solid #d9e2e9;margin-top:10px;padding-top:7px;font-size:9px}.department-report-stack .schedule-report{border-top:4px solid #1b8065}.master-grid-report,.master-report-day{color:#152536;direction:rtl;background:#fff;border:1px solid #cfd9e2;border-radius:6px;padding:15px}.master-report-week-table,.master-report-day-table{border-collapse:collapse;table-layout:fixed;direction:rtl}.master-report-week-table{width:max-content;min-width:1450px}.master-report-day-table{width:100%}.master-report-week-table th,.master-report-week-table td,.master-report-day-table th,.master-report-day-table td{text-align:center;white-space:nowrap;border:1px solid #344b5b;height:27px;padding:3px;font-size:9px;overflow:hidden}.master-report-week-table th,.master-report-day-table th{color:#16384f;background:#dfe9f0;font-weight:900}.master-report-week-table .mr-no{width:28px}.master-report-week-table .mr-department{width:44px}.master-report-week-table .mr-teacher{width:132px}.master-report-week-table .mr-period{width:31px}.master-report-week-table .mr-load{width:44px}.master-report-week-table .mr-notes{width:70px}.master-report-week-table .mr-day,.master-report-week-table .mr-day-start{border-inline-start-width:2px}.master-report-week-table .mr-teacher,.master-report-day-table .mr-teacher{text-align:right;padding-inline:6px}.master-report-week-table .mr-department,.master-report-day-table .mr-department{background:#f0f4f7}.master-report-week-table .mr-department span,.master-report-day-table .mr-department span{writing-mode:vertical-rl;border-inline-start:3px solid;padding:4px 1px;font-weight:900;display:inline-block;transform:rotate(180deg)}.master-report-department{break-inside:avoid;page-break-inside:avoid}.master-report-day-head{border-bottom:2px solid #29495d;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin-bottom:10px;padding-bottom:8px;display:grid}.master-report-day-head>div{gap:3px;display:grid}.master-report-day-head small,.master-report-day-head>span{color:#647b8b;font-size:10px}.master-report-day-head h2{color:#173f5a;background:#dceaf3;border-radius:7px;margin:0;padding:7px 22px}.master-report-day-head>span{text-align:left}.master-report-day-table .mr-no{width:4%}.master-report-day-table .mr-department{width:7%}.master-report-day-table .mr-teacher{width:22%}.master-report-day-table .mr-period{width:7.5%;font-weight:900}.master-report-day-table .mr-load{width:6%}.master-report-day-table .mr-notes{width:8.5%}.simple-report h2{text-align:center;margin-bottom:14px}.simple-report th,.simple-report td{font-size:11px}.class-print-only{display:none}.print-note{color:#167a59;background:#e8f8f1;border:1px solid #c8eddd;border-radius:12px;gap:12px;margin-top:18px;padding:16px;display:flex}.print-note p{color:#4b7768;margin:4px 0 0;font-size:12px}.settings-form{max-width:900px}.settings-form h3{border-bottom:1px solid #e8edf2;padding-bottom:10px}.feature-status-card{background:#f7f9f8;border:1px solid #dbe5e1;border-radius:12px;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;margin:16px 0 22px;padding:15px;display:grid}.feature-status-card.enabled{color:#166b54;background:#effaf6;border-color:#bfe2d6}.feature-status-card.disabled{color:#6d7874}.feature-status-card>svg{width:24px}.feature-status-card>div{gap:3px;display:grid}.feature-status-card small{color:#657b73;font-size:11px}.form-grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.field{gap:6px;display:grid}.field span{color:#4f6478;font-size:12px;font-weight:700}.field input,.field select{background:#fff;border:1px solid #d8e2eb;border-radius:9px;min-width:0;padding:10px 12px}.field.wide{grid-column:1/-1}.check{align-items:center;gap:8px;font-size:12px;display:flex}.actions{justify-content:flex-end;gap:9px;margin-top:20px;display:flex}.actions button{background:#e9f1f7;border-radius:9px;align-items:center;gap:6px;padding:10px 16px;display:flex}.row-actions{align-items:center;gap:6px;display:inline-flex}.row-actions .icon svg{width:15px;height:15px}.snapshot-panel{margin-top:16px;padding:18px}.panel-head>div>small{color:#7b8da0;margin-top:4px;display:block}.snapshot-list{gap:8px;display:grid}.snapshot-list article{background:#fbfdff;border:1px solid #e2eaf1;border-radius:10px;align-items:center;gap:10px;padding:11px 12px;display:flex}.snapshot-list article>svg{color:#2b75ae}.snapshot-list article>div{flex:1;display:grid}.snapshot-list article small{color:#7d8ea0;margin-top:3px}.snapshot-list article>button:not(.icon){color:#145b91;background:#e9f2f9;border-radius:8px;align-items:center;gap:5px;padding:8px 11px;display:inline-flex}.snapshot-list article button svg{width:14px;height:14px}.class-choice-grid{background:#f8fbfd;border:1px solid #e1e8ee;border-radius:9px;flex-wrap:wrap;gap:8px 18px;padding:10px;display:flex}.automatic-stage-classes{gap:7px}.automatic-stage-classes .badge{align-items:center;gap:4px;padding:7px 9px;display:inline-flex}.automatic-stage-classes .badge svg{width:13px;height:13px}.stage-modal-note{color:#286e5c;background:#f1faf7;border:1px solid #cfe5dc;border-radius:10px;align-items:center;gap:10px;margin-top:14px;padding:12px;font-size:11px;display:flex}.stage-modal-note svg{flex:none;width:20px}.exam-selector-panel,.invigilation-settings-panel,.invigilation-board,.exemption-panel,.conflict-panel{margin-bottom:16px;padding:18px}.exam-choice-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;display:grid}.exam-choice-grid>button{text-align:start;background:#fbfdff;border:1px solid #dce6ee;border-radius:11px;align-items:center;gap:10px;padding:12px;display:flex}.exam-choice-grid>button.selected{background:#edf9f6;border-color:#16856f;box-shadow:0 0 0 2px #16856f18}.exam-choice-grid>button>svg{color:#2375ad}.exam-choice-grid>button>span{flex:1;display:grid}.exam-choice-grid small{color:#718397;margin-top:3px}.invigilation-switches{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:9px;display:grid}.invigilation-switch{cursor:pointer;background:#fbfdff;border:1px solid #e0e8ef;border-radius:10px;align-items:flex-start;gap:10px;padding:12px;display:flex}.invigilation-switch input{accent-color:#1876ac;margin-top:3px}.invigilation-switch span{display:grid}.invigilation-switch small{color:#7c8da0;margin-top:3px;line-height:1.5}.invigilation-prep-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.invigilation-status-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.invigilation-status-grid .panel{min-width:0}.invigilation-status-grid .panel-head{align-items:flex-start}.invigilation-status-grid .panel-head button{flex:none}.workflow-note{color:#315f50;background:#f0faf6;border:1px solid #b8ddcf;border-radius:9px;gap:3px;margin-top:10px;padding:10px;font-size:11px;line-height:1.55;display:grid}.teacher-picker-results>button:disabled{cursor:not-allowed;opacity:.45;background:#f2f5f7}.special-committee-setup{border-color:#d7e2e9;margin-bottom:16px;padding:18px}.special-committee-setup.needs-setup{border-color:#e7c5ba;box-shadow:inset 4px 0 #c76f55}.special-committee-setup.is-ready{border-color:#a9d8c8;box-shadow:inset 4px 0 #16856f}.special-committee-controls{grid-template-columns:minmax(210px,.8fr) minmax(210px,.8fr) minmax(280px,1.2fr);gap:10px;margin-bottom:12px;display:grid}.special-committee-controls .field,.special-readiness{background:#f8fbfd;border:1px solid #dce7ee;border-radius:10px;margin:0;padding:12px}.special-readiness{align-content:center;justify-items:start;gap:5px;display:grid}.special-readiness small{color:#6c8193;line-height:1.55}.special-committee-groups{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:9px;margin-top:12px;display:grid}.special-committee-groups article{background:#fbfdff;border:1px solid #d8e5eb;border-radius:10px;overflow:hidden}.special-committee-groups article>header{background:#edf7f4;justify-content:space-between;align-items:center;padding:9px 11px;display:flex}.special-committee-groups article>span{border-top:1px solid #e8eef2;align-items:center;gap:8px;min-height:38px;padding:7px 11px;display:flex}.special-committee-groups article>span>b{color:#48677c;background:#e5edf2;border-radius:50%;place-items:center;width:22px;height:22px;display:grid}.exemption-panel .teacher-picker-results,.conflict-panel .teacher-picker-results{max-height:230px}.conflict-fields{grid-template-columns:1fr 1fr auto;align-items:end;gap:8px;margin-top:10px;display:grid}.conflict-fields>button{border-radius:9px;justify-content:center;align-items:center;gap:5px;padding:10px 12px;display:inline-flex}.conflict-chips{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.conflict-chips>span{color:#89501c;background:#fff2e7;border-radius:999px;align-items:center;gap:6px;padding:6px 9px;font-size:11px;display:inline-flex}.conflict-chips button,.assigned-teachers button{place-items:center;display:grid}.conflict-chips svg,.assigned-teachers button svg{width:13px;height:13px}.invigilation-workspace{grid-template-columns:minmax(420px,1.2fr) minmax(320px,1fr);gap:16px;display:grid}.teacher-search.compact{min-width:300px;margin:0}.teacher-pools{gap:12px;min-width:0;display:grid}.teacher-pools.two{grid-template-columns:1fr 1fr}.invigilator-pool{border:1px solid #dfe7ee;border-radius:12px;min-width:0;overflow:hidden}.pool-title{background:#f3f7fa;justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.pool-a .pool-title{background:#fff1f1}.pool-b .pool-title{background:#eef6fc}.pool-list{max-height:475px;padding:7px;overflow:auto}.pool-list>button{text-align:start;border:1px solid #0000;border-radius:9px;align-items:center;gap:8px;width:100%;padding:9px;display:flex}.pool-list>button:hover,.pool-list>button.selected{background:#eef8fd;border-color:#2382b9}.pool-list>button>span{color:#2a719f;background:#edf3f7;border-radius:50%;place-items:center;width:27px;height:27px;display:grid}.pool-list>button>span svg{width:14px;height:14px}.pool-list>button>.pool-badges{background:0 0;border-radius:0;flex-wrap:wrap;justify-content:flex-end;gap:4px;width:auto;height:auto;display:flex}.pool-badges .badge{white-space:nowrap}.pool-list>button>div{flex:1;min-width:0;display:grid}.pool-list small{color:#7b8da0;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pool-list em{color:#bd5e43;margin-top:2px;font-size:10px;font-style:normal}.pool-empty{text-align:center;padding:25px 8px;display:block}.assignment-halls{align-content:start;gap:10px;display:grid}.assignment-hall{background:#fbfdff;border:1px solid #dfe8ef;border-radius:12px;padding:12px}.assignment-hall>header{align-items:center;gap:9px;margin-bottom:9px;display:flex}.assignment-hall>header>svg{color:#2378ad}.assignment-hall>header>div{flex:1;display:grid}.assignment-hall>header small{color:#8190a0}.assigned-teachers{gap:6px;display:grid}.assigned-teachers>div{background:#edf8f4;border-radius:8px;align-items:center;gap:8px;padding:8px;display:flex}.assigned-teachers>div>span{color:#158269}.assigned-teachers>div>span svg{width:15px;height:15px}.assigned-teachers>div>div{flex:1;display:grid}.assigned-teachers small{color:#6d837c}.assigned-teachers .empty-assignment{color:#8b9aa8;background:#f7fafc;border:1px dashed #ccd9e2;justify-content:center}.assign-button{color:#fff;background:#1769aa;border-radius:8px;width:100%;margin-top:9px;padding:9px}.assign-button:disabled{color:#8696a4;cursor:not-allowed;background:#dce5eb}.invigilation-result{margin-top:16px}.invigilation-count-settings{grid-template-columns:repeat(2,minmax(220px,1fr));gap:12px;margin-bottom:14px;display:grid}@media (width<=1050px){.special-committee-controls{grid-template-columns:1fr 1fr}.special-readiness{grid-column:1/-1}}.invigilation-count-settings .field{background:#f8fbfd;border:1px solid #dce7ee;border-radius:10px;margin:0;padding:12px}.committee-source-note{color:#245f50;background:#f1faf7;border:1px solid #cfe4dc;border-radius:10px;align-items:center;gap:12px;padding:12px;display:flex}.committee-source-note>svg{flex:none;width:24px;height:24px}.committee-source-note>div{gap:4px;display:grid}.committee-source-note small{color:#5f7c72;line-height:1.55}.invigilation-count-settings input{text-align:center;font-size:18px;font-weight:900}.invigilation-count-settings small,.settings-subtitle small{color:#738698}.settings-subtitle{gap:2px;margin:4px 0 9px;display:grid}.category-manager{margin-bottom:16px;padding:18px}.category-summary{flex-wrap:wrap;gap:6px;display:flex}.category-search{max-width:520px;margin-bottom:10px!important}.category-teacher-list{grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:7px;max-height:330px;padding-inline-end:4px;display:grid;overflow:auto}.category-teacher-list article{background:#fbfdff;border:1px solid #dfe8ee;border-radius:9px;align-items:center;gap:10px;padding:9px 10px;display:flex}.category-teacher-list article>div:first-child{flex:1;min-width:0;display:grid}.category-teacher-list small{color:#738698;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.category-buttons{gap:4px;display:flex}.category-buttons button{color:#657789;background:#fff;border:1px solid #d8e2e9;border-radius:7px;min-width:32px;padding:6px 8px;font-size:10px;font-weight:900}.category-buttons button.active.category-a{color:#9d2929;background:#fff0f0;border-color:#c74b4b}.category-buttons button.active.category-b{color:#176493;background:#edf7fd;border-color:#2c82b7}.category-buttons button.active.category-n{color:#46535f;background:#eef1f3;border-color:#7c8b98}.daily-reserve-preview{background:#f4faf7;border:1px solid #d9e6df;border-radius:10px;grid-template-columns:minmax(220px,.65fr) 1fr;align-items:center;gap:12px;margin-top:14px;padding:12px;display:grid}.daily-reserve-preview>div{flex-wrap:wrap;gap:7px;display:flex}.daily-reserve-preview>div:first-child{gap:3px;display:grid}.daily-reserve-preview small{color:#637c70}.daily-reserve-preview span{color:#315f50;background:#fff;border-radius:8px;align-items:center;gap:7px;padding:7px 10px;display:inline-flex}.daily-reserve-preview span b{background:#dcefe7;border-radius:50%;place-items:center;width:20px;height:20px;display:grid}.daily-invigilation-sheet{box-sizing:border-box;color:#111;background:#fff;border:1px solid #aeb8c0;border-radius:2px;width:190mm;height:277mm;max-height:277mm;margin:0 auto;padding:6mm 6mm 4mm;font-family:Arial,Tahoma,sans-serif;overflow:hidden}.daily-report-head{grid-template-columns:1fr 1.25fr 1fr;align-items:center;gap:3mm;margin-bottom:3mm;display:grid}.daily-report-head>div{gap:1mm;font-size:9pt;display:grid}.daily-report-head>div:nth-child(2){text-align:center;justify-items:center}.daily-report-head>div:last-child{justify-items:end}.daily-report-head h2{margin:0;font-size:14pt;text-decoration:underline}.school-mark{border:1.5px solid #111;border-radius:50%;place-items:center;width:11mm;height:11mm;display:grid}.school-mark svg{width:6mm;height:6mm}.daily-invigilation-columns{direction:rtl;align-items:flex-start;gap:2mm;width:100%;min-width:0;display:flex}.daily-invigilation-table{box-sizing:border-box;border-collapse:collapse;table-layout:fixed;direction:rtl;border:2px solid #111;flex:0 0 calc(50% - 1mm);width:calc(50% - 1mm);min-width:0;max-width:calc(50% - 1mm)}.daily-invigilation-table col.subject-column,.daily-invigilation-table col.leader-column,.daily-invigilation-table col.assistant-column{width:8mm}.daily-invigilation-table col.committee-column{width:11mm}.daily-invigilation-table col.observer-column{width:30mm}.daily-invigilation-table col.signature-column{width:18mm}.daily-invigilation-table th,.daily-invigilation-table td{text-align:center;vertical-align:middle;border:1px solid #111;padding:.7mm .6mm;font-size:7.4pt}.daily-invigilation-table thead th{background:#eef0f2;height:18mm;font-weight:900}.daily-invigilation-table .vertical-heading{writing-mode:vertical-rl;width:8mm;transform:rotate(180deg)}.daily-invigilation-table .observer-name,.daily-invigilation-table .signature{width:auto}.daily-invigilation-table tbody tr{height:var(--daily-row-height,7.1mm)}.daily-invigilation-table .vertical-value{width:8mm;padding:.5mm;font-weight:800}.daily-invigilation-table .vertical-value span{writing-mode:vertical-rl;white-space:nowrap;display:inline-block;transform:rotate(180deg)}.daily-invigilation-table .committee-cell{width:9mm;font-weight:900}.daily-invigilation-table .observer-cell{font-size:8pt;font-weight:700}.daily-invigilation-table .exam-block-start td{border-top-width:2px}.daily-report-bottom{direction:rtl;align-items:end;gap:3mm;width:100%;min-width:0;margin-top:4mm;display:flex}.auxiliary-report-table{border-collapse:collapse;table-layout:fixed;flex:1 1 0;width:auto;min-width:0}.auxiliary-report-table caption{border:1.5px solid #111;border-bottom:0;padding:1.5mm;font-weight:900}.auxiliary-report-table th,.auxiliary-report-table td{text-align:center;border:1px solid #111;height:7mm;padding:1mm;font-size:8pt}.auxiliary-report-table th:first-child{width:9mm}.auxiliary-report-table th:last-child{width:18mm}.daily-approval{flex:0 0 44mm;justify-items:center;gap:1.4mm;font-size:8.5pt;display:grid}.daily-approval .principal-name{text-align:center;font-size:9pt;font-weight:900}.daily-density-compact{padding:4mm 4mm 3mm}.daily-density-compact .daily-report-head{margin-bottom:2mm}.daily-density-compact .daily-report-head>div{gap:.5mm;font-size:8pt}.daily-density-compact .daily-report-head h2{font-size:12pt}.daily-density-compact .school-mark{width:9mm;height:9mm}.daily-density-compact .daily-invigilation-table thead th{height:14mm}.daily-density-compact .daily-invigilation-table th,.daily-density-compact .daily-invigilation-table td{padding:.35mm;font-size:6.8pt}.daily-density-compact .daily-report-bottom{margin-top:2mm}.daily-density-compact .auxiliary-report-table caption{padding:.8mm;font-size:7.5pt}.daily-density-compact .auxiliary-report-table th,.daily-density-compact .auxiliary-report-table td{height:5.3mm;padding:.5mm;font-size:7pt}.daily-density-ultra{padding:3mm 3mm 2mm}.daily-density-ultra .daily-report-head{gap:1.5mm;margin-bottom:1.5mm}.daily-density-ultra .daily-report-head>div{gap:.3mm;font-size:7pt}.daily-density-ultra .daily-report-head h2{font-size:10.5pt}.daily-density-ultra .school-mark{width:8mm;height:8mm}.daily-density-ultra .daily-invigilation-table thead th{height:11mm}.daily-density-ultra .daily-invigilation-table th,.daily-density-ultra .daily-invigilation-table td{padding:.2mm;font-size:6.1pt}.daily-density-ultra .daily-invigilation-table .observer-cell{font-size:6.5pt}.daily-density-ultra .daily-report-bottom{gap:2mm;margin-top:1.5mm}.daily-density-ultra .auxiliary-report-table caption{padding:.5mm;font-size:6.8pt}.daily-density-ultra .auxiliary-report-table th,.daily-density-ultra .auxiliary-report-table td{height:4.5mm;padding:.25mm;font-size:6.4pt}.daily-density-ultra .daily-approval{flex-basis:40mm;gap:.8mm;font-size:7pt}.daily-density-ultra .daily-approval .principal-name{font-size:7.5pt}@media (width<=1050px){.invigilation-workspace,.invigilation-prep-grid,.invigilation-status-grid,.special-committee-controls{grid-template-columns:1fr}.special-readiness{grid-column:auto}}@media (width<=700px){.teacher-pools.two,.conflict-fields{grid-template-columns:1fr}.teacher-search.compact{width:100%;min-width:0}.invigilation-count-settings,.daily-reserve-preview{grid-template-columns:1fr}.snapshot-list article{flex-wrap:wrap}}.modal-bg{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:50;background:#102a4388;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:15px;width:min(650px,100%);max-height:90vh;padding:20px;overflow:auto;box-shadow:0 20px 60px #102a4366}.modal-head{border-bottom:1px solid #e7edf2;justify-content:space-between;align-items:center;margin-bottom:18px;padding-bottom:12px;display:flex}.modal-head h3{margin:0}.multi{background:#f7fafc;border-radius:9px;grid-template-columns:repeat(2,1fr);gap:8px;padding:10px;display:grid}.multi label{gap:6px;font-size:12px;display:flex}.toast{z-index:80;color:#fff;background:#133a55;border-radius:10px;align-items:center;gap:8px;padding:12px 18px;display:flex;position:fixed;bottom:22px;left:50%;transform:translate(-50%);box-shadow:0 9px 30px #102a4355}.viewer-notice{color:#475569;background:#f8fafc;border:1px solid #cbd5e1;border-radius:10px;align-items:center;gap:9px;margin-bottom:14px;padding:11px 14px;font-size:13px;display:flex}.viewer-notice svg{width:17px}.viewer-mode .row-actions,.viewer-mode .activity-card>.icon,.viewer-mode .settings-form>.actions,.viewer-mode .rule .switch,.viewer-mode .availability-actions,.viewer-mode .availability-grid button,.viewer-mode .account-row-actions{display:none!important}.viewer-mode .teacher-picker-selected button,.viewer-mode .teacher-picker-results button,.viewer-mode .teacher-picker-change,.viewer-mode .exams-page button,.viewer-mode .exams-page input,.viewer-mode .exams-page select{pointer-events:none;opacity:.68}.viewer-mode .exams-page .exam-choice-grid button{pointer-events:auto;opacity:1}.viewer-mode .teacher-constraints input,.viewer-mode .teacher-constraints select,.viewer-mode .settings-form input,.viewer-mode .settings-form select,.viewer-mode .settings-form textarea,.viewer-mode .rule-controls select,.viewer-mode .rule-controls input{pointer-events:none;opacity:.72}.settings-form.readonly input,.settings-form.readonly select,.settings-form.readonly textarea{cursor:not-allowed}.stage-load-section,.data-management-section{border-top:1px solid #e5ecef;margin-top:22px;padding-top:20px}.stage-load-section table input{text-align:center;border:1px solid #d8e3ea;border-radius:8px;width:72px;padding:8px}.button-like{color:#34546b;cursor:pointer;background:#fff;border:1px solid #cfdae3;border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:40px;padding:8px 13px;font-size:12px;font-weight:800;display:inline-flex}.button-like input{display:none}.button-like.disabled{opacity:.55;cursor:wait}.audit-log-table{max-height:360px;margin-top:14px}.platform-school-identity{background:#f8fbfc;border:1px solid #e1e9ed;border-radius:10px;grid-column:1/-1;margin:10px 0;padding:12px}@media (width<=700px){.rule-controls,.platform-school-identity{grid-template-columns:1fr}.rule{align-items:flex-start}}.generate-overlay{z-index:70;color:#fff;text-align:center;background:#0b263dd9;place-items:center;display:grid;position:fixed;inset:0}.generate-overlay>div{width:min(430px,90%)}.generate-overlay>div>svg{color:#43d1c5;width:58px;height:58px}.generate-overlay h2{margin-bottom:5px}.generate-overlay p{color:#bcd0df;font-size:13px}.progress{background:#ffffff25;border-radius:10px;height:10px;margin:22px 0 8px;overflow:hidden}.progress i{background:linear-gradient(90deg,#27b3b0,#4fdacb);height:100%;transition:all .1s;display:block}.install{direction:rtl;background:linear-gradient(135deg,#e8f2f8,#f7fafc);place-items:center;min-height:100vh;padding:22px;display:grid}.install-card{background:#fff;border:1px solid #dce5ed;border-radius:19px;width:min(680px,100%);padding:30px;box-shadow:0 20px 60px #102a4317}.install-card>.logo{border:0;justify-content:center}.install-card h1{text-align:center;font-size:23px}.steps{justify-content:center;align-items:center;margin:24px;display:flex}.steps span{background:#dce5ed;border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.steps span.on{color:#fff;background:#1970ab}.steps i{background:#dce5ed;width:75px;height:3px}.review{background:#f7fafc;border-radius:11px;padding:14px}.success{text-align:center;padding:25px}.success>svg{color:#19a574;width:65px;height:65px}.success a{color:#fff;background:#1769aa;border-radius:9px;padding:11px 18px;text-decoration:none;display:inline-block}.install-card .actions{justify-content:center}@media (width<=1100px){.stats{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.split{grid-template-columns:1fr}.card-grid{grid-template-columns:repeat(2,1fr)}.subject-load-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=800px){.app aside{transition:all .25s;position:fixed;inset-block:0;inset-inline-start:-270px}.app aside.open{inset-inline-start:0}.side-close,.menu-btn{display:grid}.app header{padding:0 15px}.header-actions .search{display:none}.content{padding:18px}.page-title{flex-direction:column;align-items:flex-start}.stats,.card-grid,.activity-grid,.rules,.report-grid,.form-grid,.subject-load-grid{grid-template-columns:1fr}.stage-card{grid-template-columns:auto minmax(0,1fr)}.stage-card-actions{grid-column:1/-1;justify-content:flex-end}.mini-grid{grid-template-columns:1fr}.field.wide{grid-column:auto}.school-mini{display:none}}@media print{aside,.app header,.page-title button,.filters,.menu-btn,.button-row,.panel-head button{display:none!important}.content{padding:0}.panel{box-shadow:none;border:0}.timetable{min-width:0;font-size:8px}.tt-head,.tt-day,.tt-cell{min-height:55px}.lesson{height:43px;padding:4px}.lesson small{display:none}@page{size:A4 landscape;margin:8mm}}.login{direction:rtl;background:#f4f7fb;grid-template-columns:1.1fr .9fr;min-height:100vh;display:grid}.login-side{color:#fff;background:linear-gradient(145deg,#0c2c48,#15527b);flex-direction:column;justify-content:space-between;padding:48px;display:flex;position:relative;overflow:hidden}.login-side:after{content:"";border:70px solid #2ab7ae22;border-radius:50%;width:420px;height:420px;position:absolute;bottom:-180px;left:-150px}.login-side .logo{color:#fff;border:0;justify-content:flex-start}.login-side>div:last-child{z-index:1;max-width:500px;margin:auto;position:relative}.login-side>div:last-child>svg{color:#45d1c6;width:62px;height:62px}.login-side h1{margin:14px 0;font-size:38px;line-height:1.4}.login-side p{color:#bfd2df;font-size:16px}.login-card{background:#fff;border:1px solid #dfe7ef;border-radius:18px;gap:16px;width:min(430px,86%);margin:auto;padding:32px;display:grid;box-shadow:0 18px 50px #102a4314}.login-card h2{margin:0;font-size:26px}.login-card>p{color:#7a8c9f;margin:-8px 0 5px;font-size:13px}.login-submit,.demo-button{border-radius:9px;padding:12px}.demo-button{color:#1a5c87;background:#e9f1f7}.login-card>a{text-align:center;color:#2772a8;font-size:12px}.login-error{color:#b93649;background:#ffedf0;border-radius:8px;align-items:center;gap:8px;padding:10px;font-size:12px;display:flex}@media (width<=800px){.login{grid-template-columns:1fr}.login-side{display:none}.login-card{margin-block:60px}}.step-help{text-align:center;color:#6d8093;max-width:560px;margin:-4px auto 18px;font-size:13px;line-height:1.7}.steps.four i{width:58px}.install-error{color:#b83249;background:#ffedf0;border:1px solid #f5cbd2;border-radius:9px;align-items:center;gap:8px;margin-top:15px;padding:11px 13px;font-size:12px;display:flex}.install-error svg{flex:none}.connection-ok{color:#12865d;align-items:center;gap:4px;display:inline-flex}.connection-ok svg{width:15px}.install-card.loading{text-align:center;color:#6e8295}.install-card.loading svg{animation:1s linear infinite spin}.success.update{justify-items:center;display:grid}.success.update button{border-radius:9px;padding:11px 18px}.success.update a{color:#1769aa;background:0 0;padding:6px}@keyframes spin{to{transform:rotate(360deg)}}.master-panel{padding:0;overflow:hidden}.master-tools{background:#f8fafc;border-bottom:1px solid #dfe7ef;flex-wrap:wrap;align-items:center;gap:12px;padding:14px 16px;display:flex}.master-tools label{font-size:11px;font-weight:700}.master-tools select{background:#fff;border:1px solid #d7e1e9;border-radius:7px;margin-inline-start:7px;padding:7px 9px}.master-table-wrap{direction:rtl;background:#fff;max-height:calc(100vh - 245px);padding:8px;overflow:auto}.master-print-title{text-align:center;grid-template-columns:1fr auto 1fr;align-items:center;margin:2px 0 8px;font-size:13px;display:grid}.master-print-title b{text-align:start}.master-print-title strong{text-align:end}.master-print-title span{font-size:11px}.master-class-key{color:#52697c;background:#f6f9fb;border:1px solid #dce6ed;border-radius:7px;justify-content:flex-start;align-items:center;gap:12px;margin:0 0 7px;padding:6px 9px;font-size:10px;display:flex}.master-class-key span{white-space:nowrap}.master-class-key span b{color:#164f78;background:#dceaf4;border-radius:5px;place-items:center;width:20px;height:20px;margin-inline-end:3px;display:inline-grid}.master-class-key small{color:#758899;margin-inline-start:auto}.master-table{border-collapse:separate;border-spacing:0;table-layout:fixed;direction:rtl;width:max-content;min-width:1405px}.master-table th,.master-table td{text-align:center;white-space:nowrap;border-inline-start:1px solid #344554;background:#fff;border-top:1px solid #344554;height:29px;padding:2px 3px;font-size:9.5px}.master-table tr:last-child td{border-bottom:1px solid #344554}.master-table th:last-child,.master-table td:last-child{border-inline-end:1px solid #344554}.master-table thead th{color:#17283a;z-index:6;background:#e8eef3;font-weight:800;position:sticky;top:0}.master-table thead tr:nth-child(2) th{top:29px}.master-table .m-no{z-index:5;width:28px;min-width:28px;position:sticky;right:0}.master-table .m-dept{z-index:5;width:44px;min-width:44px;position:sticky;right:28px}.master-table .m-teacher{z-index:5;text-align:right;width:132px;min-width:132px;padding-inline:7px;position:sticky;right:72px}.master-table thead .m-no,.master-table thead .m-dept,.master-table thead .m-teacher{z-index:9;background:#dde7ef}.master-table .period,.master-table .schedule-cell{width:31px;min-width:31px}.master-table .m-load{width:44px;min-width:44px}.master-table .m-notes{width:72px;min-width:72px}.master-table .day-group{background:#dbe7f0;border-inline-start:2px solid #101c28}.master-table thead .day-tone-0{background:#d8e6f0}.master-table thead .day-tone-1{background:#e5edf3}.master-table tbody .schedule-cell.day-tone-0{background:#fbfdff}.master-table tbody .schedule-cell.day-tone-1{background:#f7fafc}.master-table .day-start{border-inline-start:2px solid #101c28}.master-department-group{break-inside:avoid;page-break-inside:avoid}.master-table .department-start td{border-top:2px solid #101c28}.department-cell{background:#f0f4f7!important}.department-cell span{writing-mode:vertical-rl;border-inline-start:4px solid;padding:7px 2px;font-weight:700;display:inline-block;transform:rotate(180deg)}.master-table .schedule-cell:not(:empty){color:#102a43;background:#f1f5f8;font-weight:700}.master-table .m-load small{color:#728497}.master-table-wrap.compact .master-table th,.master-table-wrap.compact .master-table td{height:23px;padding:1px 2px;font-size:8.5px}.master-table-wrap.compact .master-table thead tr:nth-child(2) th{top:23px}.master-portrait-layout{display:none}.portrait-day-section{direction:rtl}.portrait-day-head{border-bottom:1.5px solid #29485d;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;margin-bottom:3mm;padding-bottom:2mm;display:grid}.portrait-day-head>div{gap:2px;display:grid}.portrait-day-head small{color:#506b7c}.portrait-day-head strong{color:#153f5c;background:#dceaf3;border-radius:2mm;padding:2mm 7mm;font-size:13pt}.portrait-day-head>span{text-align:left;color:#526b7c;font-size:7.5pt}.portrait-master-table{table-layout:fixed;border-collapse:collapse;direction:rtl;width:100%}.portrait-master-table th,.portrait-master-table td{text-align:center;white-space:nowrap;border:1px solid #334b5b;overflow:hidden}.portrait-master-table th{color:#17384f;background:#dfe9f0;font-weight:800}.portrait-master-table .p-no{width:4%}.portrait-master-table .p-dept{width:7%}.portrait-master-table .p-teacher{text-align:right;width:22%;padding-inline:2mm}.portrait-master-table .p-period{width:7.5%;font-weight:800}.portrait-master-table .p-load{width:6%}.portrait-master-table .p-notes{width:8.5%}.portrait-department-cell{background:#f0f4f7}.portrait-department-cell span{writing-mode:vertical-rl;border-inline-start:3px solid;padding:2mm 1mm;font-weight:800;display:inline-block;transform:rotate(180deg)}.portrait-department-start td{border-top-width:2px}.portrait-department-group{break-inside:avoid;page-break-inside:avoid}.portrait-day-section footer{color:#657988;justify-content:space-between;gap:10px;margin-top:2mm;font-size:6.5pt;display:flex}@media print{.master-tools{display:none}.master-panel{overflow:visible}.master-table-wrap{max-height:none;padding:0;overflow:visible}.master-print-title{margin-bottom:2mm;font-size:8pt}.master-class-key{border-radius:0;margin-bottom:1.5mm;padding:1mm 1.5mm;font-size:6.5pt}.master-class-key span b{background:0 0;width:auto;height:auto;margin-inline-end:1mm}.master-class-key small{display:none}.master-table{width:100%;min-width:0}.master-table th,.master-table td,.master-table-wrap.compact .master-table th,.master-table-wrap.compact .master-table td{height:auto;padding:.5mm .25mm;font-size:5.7pt;line-height:1.1;position:static!important}.master-table .m-no{width:4mm;min-width:4mm}.master-table .m-dept{width:6mm;min-width:6mm}.master-table .m-teacher{width:22mm;min-width:22mm}.master-table .period,.master-table .schedule-cell{width:auto;min-width:0}.master-table .m-load{width:7mm;min-width:7mm}.master-table .m-notes{width:12mm;min-width:12mm}.department-cell span{writing-mode:vertical-rl;transform:rotate(180deg)}.master-table thead{display:table-header-group}.master-table tr{break-inside:avoid;page-break-inside:avoid}.print-paper-a3-landscape .master-table th,.print-paper-a3-landscape .master-table td,.print-paper-a3-landscape .master-table-wrap.compact .master-table th,.print-paper-a3-landscape .master-table-wrap.compact .master-table td{padding:.7mm .3mm;font-size:6.6pt}.print-paper-a4-landscape .master-table th,.print-paper-a4-landscape .master-table td,.print-paper-a4-landscape .master-table-wrap.compact .master-table th,.print-paper-a4-landscape .master-table-wrap.compact .master-table td{padding:.45mm .2mm;font-size:5.5pt}.print-paper-a3-portrait .master-print-title,.print-paper-a3-portrait .master-class-key,.print-paper-a3-portrait .master-landscape-layout,.print-paper-a4-portrait .master-print-title,.print-paper-a4-portrait .master-class-key,.print-paper-a4-portrait .master-landscape-layout{display:none!important}.print-paper-a3-portrait .master-portrait-layout,.print-paper-a4-portrait .master-portrait-layout{display:block}.print-paper-a3-portrait .portrait-day-section,.print-paper-a4-portrait .portrait-day-section{break-inside:avoid;page-break-inside:avoid;margin-bottom:6mm}.print-paper-a3-portrait .portrait-master-table th,.print-paper-a3-portrait .portrait-master-table td{height:5.2mm;padding:.7mm .5mm;font-size:7.4pt}.print-paper-a4-portrait .portrait-day-section{break-after:page;page-break-after:always;margin-bottom:0}.print-paper-a4-portrait .portrait-day-section:last-child{break-after:auto;page-break-after:auto}.print-paper-a4-portrait .portrait-master-table th,.print-paper-a4-portrait .portrait-master-table td{height:5mm;padding:.55mm .35mm;font-size:7pt}}.department-action{color:#205f91;background:#e7f0f8;border-radius:8px;align-items:center;gap:6px;padding:8px 11px;font-size:11px;display:inline-flex}.department-action.print{color:#fff;background:#1769aa}.department-preview-bar{background:#edfaf7;border:1px solid #b9dfd8;border-radius:11px;align-items:center;gap:12px;margin:12px 14px 0;padding:12px 14px;display:flex}.department-preview-bar>span{color:#fff;border-radius:10px;place-items:center;width:42px;height:42px;display:grid}.department-preview-bar>div{flex:1;gap:3px;display:grid}.department-preview-bar b{font-size:14px}.department-preview-bar small{color:#55766f;font-size:11px}.department-preview-bar>button:not(.icon){color:#fff;background:#1769aa;border-radius:8px;align-items:center;gap:6px;padding:9px 12px;display:inline-flex}.department-preview-active{outline:3px solid #36aa9b33}@media print{.department-preview-bar,.department-action{display:none!important}}.teacher-picker{background:#f8fbfd;border:1px solid #d9e4ec;border-radius:11px;gap:8px;padding:10px;display:grid}.teacher-picker-selected{flex-wrap:wrap;gap:6px;display:flex}.teacher-picker-selected:empty{display:none}.teacher-picker-selected button{color:#166c57;background:#dff4ee;border-radius:999px;align-items:center;gap:5px;padding:5px 9px;font-size:11px;display:inline-flex}.teacher-picker-selected .teacher-picker-change{color:#245f83;background:#e8f1f7}.teacher-picker-selected svg{width:13px;height:13px}.teacher-search{background:#fff;border:1px solid #cbd9e3;border-radius:9px;align-items:center;gap:8px;padding:8px 10px;display:flex}.teacher-search svg{color:#4d7087;width:17px}.teacher-search input{background:0 0;border:0;outline:0;flex:1;min-width:100px}.teacher-search small{color:#718596;white-space:nowrap}.teacher-picker-results{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;max-height:230px;display:grid;overflow:auto}.teacher-picker-results>button{text-align:start;background:#fff;border:1px solid #e0e9ef;border-radius:8px;align-items:center;gap:8px;padding:8px;display:flex}.teacher-picker-results>button:hover,.teacher-picker-results>button.selected{background:#eefaf7;border-color:#39a78d}.teacher-picker-results>button>span{color:#2a799f}.teacher-picker-results>button.selected>span{color:#17866b}.teacher-picker-results svg{width:16px}.teacher-picker-results div{gap:2px;min-width:0;display:grid}.teacher-picker-results b,.teacher-picker-results small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.teacher-picker-results b{font-size:12px}.teacher-picker-results small,.picker-hint{color:#718596;font-size:10px}.teacher-picker-results>p{text-align:center;color:#7a8b99;grid-column:1/-1}.availability-panel{overflow-anchor:none;gap:14px;display:grid}.availability-current{background:#f1faf7;border:1px solid #b9ded3;border-radius:10px;align-items:center;gap:11px;padding:11px 13px;display:flex}.availability-current>span{color:#18785d;background:#d9f2ea;border-radius:10px;flex:none;place-items:center;width:38px;height:38px;display:grid}.availability-current>span svg{width:19px}.availability-current>div{flex:1;gap:3px;display:grid}.availability-current small{color:#607d73}.availability-actions{flex-wrap:wrap;gap:7px;display:flex}.availability-actions button{color:#245f83;background:#e8f1f7;border-radius:8px;padding:8px 11px;font-size:11px}.availability-actions .danger-soft{color:#b04444;background:#fff0f0}.availability-grid{grid-template-columns:105px repeat(var(--period-count,7), minmax(70px, 1fr));background:#d8e2e9;border:1px solid #d8e2e9;border-radius:9px;gap:1px;display:grid;overflow:auto}.availability-grid>*{background:#fff;min-height:42px}.availability-head,.availability-day{background:#eef3f7;place-items:center;font-size:11px;font-weight:700;display:grid}.availability-grid button{cursor:pointer;justify-content:center;align-items:center;gap:4px;font-size:10px;transition:background .15s,box-shadow .15s;display:flex}.availability-grid button:hover,.availability-grid button:focus-visible{z-index:1;outline-offset:-2px;outline:2px solid #258f73;position:relative}.availability-grid button svg{width:13px}.availability-grid .available{color:#28745f;background:#f2fbf8}.availability-grid .unavailable{color:#a64141;background:#fff1f1}.inline-teacher-search{background:#fff;border:1px solid #d7e2ea;border-radius:8px;align-items:center;gap:7px;padding:7px 9px;display:flex}.inline-teacher-search svg{color:#607c90;width:15px}.inline-teacher-search input{border:0;outline:0;min-width:220px}.canteen-settings{border-top:1px solid #e1e8ed;gap:14px;margin-top:22px;padding-top:19px;display:grid}.canteen-title{align-items:center;gap:11px;display:flex}.canteen-title>span{color:#a66a08;background:#fff1d8;border-radius:11px;place-items:center;width:43px;height:43px;display:grid}.canteen-title h3,.canteen-title p{margin:0}.canteen-title p{color:#718397;margin-top:4px;font-size:11px}.opportunity-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.opportunity-card{background:#f9fbfc;border:1px solid #dce6ed;border-radius:10px;gap:10px;padding:12px;display:grid}.opportunity-card .field{margin:0}.canteen-note{color:#356982;background:#eef7fc;border-radius:9px;align-items:center;gap:8px;padding:10px 12px;font-size:11px;display:flex}.canteen-note svg{flex:none;width:17px}.master-lesson{cursor:pointer;white-space:nowrap;text-overflow:clip;background:#edf5fa;justify-content:center;align-items:center;min-height:22px;margin:-2px -3px;padding:2px;font-weight:800;line-height:1;display:flex;overflow:hidden}.master-lesson:hover{color:#126b55;background:#dff2ec}@media (width<=850px){.teacher-picker-results,.opportunity-grid{grid-template-columns:1fr}.availability-grid{grid-template-columns:90px repeat(var(--period-count,7), 68px)}}.boot-loading{color:#176f58;background:#f2f7f5;justify-content:center;align-items:center;gap:12px;min-height:100vh;font-weight:800;display:flex}.boot-loading svg{animation:1s linear infinite spin}.platform-shell{color:#18352d;background:#f2f6f4;min-height:100vh}.platform-header{z-index:20;background:#fff;border-bottom:1px solid #dbe8e3;justify-content:space-between;align-items:center;height:76px;padding:0 5vw;display:flex;position:sticky;top:0}.platform-header .brand{align-items:center;gap:10px;display:flex}.platform-header .brand>span,.platform-section-title>span{color:#17745a;background:#e4f5ef;border-radius:12px;place-items:center;width:42px;height:42px;display:grid}.platform-header .brand>div,.platform-owner span{gap:2px;display:grid}.platform-header .brand b{font-size:18px}.platform-header small,.platform-owner small{color:#71867f;font-size:11px}.platform-owner{align-items:center;gap:18px;display:flex}.platform-owner button,.platform-school-actions button,.platform-accounts td button{align-items:center;gap:6px;display:inline-flex}.platform-owner button svg,.platform-school-actions button svg,.platform-accounts td button svg{width:15px}.platform-main{width:min(1500px,94vw);margin:0 auto;padding:28px 0 60px}.platform-title{color:#fff;background:linear-gradient(125deg,#0e5846,#168067 65%,#2a9a7c);border-radius:20px;justify-content:space-between;align-items:center;min-height:160px;padding:28px 34px;display:flex;box-shadow:0 18px 50px #0d58462b}.platform-title span{color:#bcebdd;font-size:12px;font-weight:800}.platform-title h1{margin:7px 0;font-size:clamp(24px,3vw,36px)}.platform-title p{color:#d9f4ec;margin:0}.platform-title>svg{opacity:.25;width:78px;height:78px}.platform-stats{grid-template-columns:repeat(4,1fr);gap:14px;margin:18px 0;display:grid}.platform-stats article{background:#fff;border:1px solid #dbe8e3;border-radius:14px;align-items:center;gap:13px;padding:17px;display:flex}.platform-stats article>svg{color:#1b8065;background:#eaf7f2;border-radius:10px;width:34px;padding:7px}.platform-stats article div{display:grid}.platform-stats b{font-size:22px}.platform-stats span{color:#74877f;font-size:11px}.platform-message{color:#176f58;background:#eaf8f3;border:1px solid #bfe3d7;border-radius:10px;margin:0 0 18px;padding:11px 15px;font-weight:800}.platform-retention-note{color:#1c5f89;background:#eef7fd;border:1px solid #c9dff0;border-radius:11px;align-items:center;gap:11px;margin:0 0 18px;padding:12px 15px;display:flex}.platform-retention-note>svg{flex:none;width:24px}.platform-retention-note>div{gap:3px;display:grid}.platform-retention-note small{color:#55758b}.platform-grid{grid-template-columns:minmax(360px,.85fr) minmax(520px,1.35fr);align-items:start;gap:18px;display:grid}.platform-grid>.panel,.platform-accounts{padding:20px}.platform-section-title{align-items:center;gap:11px;margin-bottom:18px;display:flex}.platform-section-title h2{margin:0;font-size:17px}.platform-section-title p{color:#71867f;margin:3px 0 0;font-size:11px}.platform-create .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-plan-card{cursor:pointer;background:#f1fbf7;border:1px solid #bfe2d6;border-radius:11px;grid-column:1/-1;align-items:center;gap:12px;padding:13px 14px;display:flex}.feature-plan-card input,.school-feature-toggle input{accent-color:#1c8065;width:17px;height:17px}.feature-plan-card span,.school-feature-toggle span{gap:2px;display:grid}.feature-plan-card small,.school-feature-toggle small{color:#6d8179;font-size:10px}.platform-submit{justify-content:center;width:100%;margin-top:10px}.platform-school-list{gap:10px;max-height:660px;display:grid;overflow:auto}.platform-school{background:#fbfdfc;border:1px solid #d9e7e2;border-radius:12px;grid-template-columns:minmax(210px,1fr) 155px 130px auto;align-items:center;gap:12px;padding:12px;display:grid}.school-feature-toggle{cursor:pointer;background:#f6f8f7;border:1px solid #e4e9e7;border-radius:9px;align-items:center;gap:8px;padding:8px;display:flex}.school-feature-toggle.enabled{background:#effaf6;border-color:#bfe2d6}.school-feature-toggle b{font-size:10px}.platform-school.inactive{background:#fffaf8;border-color:#f0d4ca}.platform-school-main{align-items:center;gap:10px;min-width:0;display:flex}.platform-school-main>span{color:#fff;background:#1c8065;border-radius:11px;flex:none;place-items:center;width:39px;height:39px;font-weight:900;display:grid}.platform-school-main div,.platform-school-expiry{gap:3px;display:grid}.platform-school-main b,.platform-school-main small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.platform-school-main small,.platform-school-expiry small{color:#768a82;font-size:10px}.platform-school-expiry b{font-size:12px}.platform-school-expiry input{background:#fff;border:1px solid #d6e4df;border-radius:7px;width:126px;padding:5px 6px;font-size:10px}.platform-school-expiry label{color:#74877f;align-items:center;gap:5px;font-size:9px;display:flex}.platform-school-expiry label input{width:52px}.platform-school-expiry em{color:#147057;background:#dff4ec;border-radius:10px;width:max-content;padding:2px 7px;font-size:9px;font-style:normal;font-weight:800}.platform-school.inactive .platform-school-expiry em{color:#a54328;background:#fee8e1}.platform-school-actions{flex-wrap:wrap;justify-content:flex-end;gap:5px;display:flex}.platform-school-actions button{padding:7px 9px;font-size:10px}.platform-school-actions .danger{color:#a53d2b;background:#fff1ec;border-color:#f3d3ca}.platform-school-actions .success{color:#126c53;background:#e8f7f1}.platform-school-actions .permanent-delete{color:#8d1f27;background:#fff0f1;border-color:#edc8cc}.global-copyright{z-index:20;color:#60766e;pointer-events:none;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);inset-inline-start:12px;background:#ffffffe0;border-radius:7px;padding:4px 8px;font-size:9px;position:fixed;bottom:7px}.platform-accounts{margin-top:18px}.platform-add-user{background:#f3f8f6;border-radius:12px;margin-bottom:15px;padding:14px}.platform-add-user .primary{align-self:end;min-height:39px}.platform-accounts select,.platform-accounts input[type=date]{background:#fff;border:1px solid #d4e2dd;border-radius:8px;min-width:125px;padding:7px}.account-row-actions{gap:5px;min-width:190px;display:flex}.block{color:#74877f;margin-top:3px;display:block}@media (width<=1050px){.platform-grid{grid-template-columns:1fr}.platform-stats{grid-template-columns:repeat(2,1fr)}}@media (width<=680px){.platform-header{height:auto;padding:12px 4vw}.platform-owner span{display:none}.platform-main{width:94vw;padding-top:16px}.platform-title{min-height:130px;padding:22px}.platform-title>svg{display:none}.platform-stats{grid-template-columns:1fr 1fr}.platform-create .form-grid,.platform-school{grid-template-columns:1fr}.platform-school-actions{justify-content:flex-start}}@media print{.global-copyright{display:none!important}.master-lesson{background:0 0;min-height:0;margin:0;padding:0;display:block}.canteen-settings{break-inside:avoid}}.generation-warnings{color:#955a16;background:#fff4e6;border:1px solid #f4d29f;border-radius:10px;align-items:flex-start;gap:10px;margin-bottom:13px;padding:11px 13px;display:flex}.generation-warnings>svg{color:#d97b19;flex:none}.generation-warnings>div{gap:3px;display:grid}.generation-warnings small{display:block}.constraint-section-head{justify-content:space-between;align-items:end;gap:12px;margin:24px 0 12px;display:flex}.constraint-section-head h3{margin:0;font-size:17px}.constraint-section-head p{color:#718397;margin:5px 0 0;font-size:12px}.constraint-section-head>button{color:#1d6396;background:#e5f0f8;border-radius:9px;align-items:center;gap:6px;padding:9px 13px;display:inline-flex}.teacher-constraints .badge{margin:2px}.constraint-check{align-items:center;gap:7px;font-size:11px;display:inline-flex}.constraint-check input{accent-color:#1873ad;width:16px;height:16px}.constraint-check input:disabled{opacity:.7}.muted{color:#8797a7;font-size:11px}.wing-grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.wing-card{gap:14px;display:grid}.wing-head{align-items:center;gap:10px;display:flex}.wing-head>span{color:#15946f;background:#e5f7f2;border-radius:11px;place-items:center;width:42px;height:42px;display:grid}.wing-head>div{flex:1;gap:3px;display:grid}.wing-head h3{margin:0;font-size:15px}.wing-head small{color:#748697}.wing-block{gap:7px;display:grid}.wing-block>b{color:#506679;font-size:11px}.wing-block>div{flex-wrap:wrap;gap:5px;display:flex}.coverage-note{color:#157357;background:#edf9f5;border-radius:8px;align-items:center;gap:7px;padding:9px 11px;font-size:11px;display:flex}.coverage-note svg{width:15px}.modal-help{color:#45687f;background:#eef6fb;border-radius:9px;padding:10px 12px;font-size:12px;line-height:1.7}.click-cell{text-align:start;cursor:pointer;border:0;border-radius:0;min-width:0;padding:8px}.click-cell.click-target:hover,.schedule-cell.click-target:hover{outline-offset:-3px;outline:2px dashed #22a17d;background:#eefaf6!important}.selected-edit{outline-offset:-3px;box-shadow:inset 0 0 0 2px #fff;background:#ddf7ef!important;outline:3px solid #16a085!important}.lesson,.master-lesson,.master-table .schedule-cell{cursor:pointer}.edit-mode-bar{color:#126b55;background:#eaf9f4;border:1px solid #90d8c4;border-radius:10px;align-items:center;gap:11px;margin:0 0 12px;padding:10px 12px;display:flex}.edit-mode-bar>span{color:#fff;background:#1a9b78;border-radius:9px;flex:none;place-items:center;width:34px;height:34px;display:grid}.edit-mode-bar>span svg{width:18px}.edit-mode-bar>div{flex:1;gap:2px;display:grid}.edit-mode-bar small{color:#477f70}.edit-mode-bar button{color:#176d58;background:#fff;border:1px solid #aedfd1;border-radius:8px;align-items:center;gap:5px;padding:7px 10px;display:inline-flex}.edit-mode-bar button svg{width:15px}.master-edit-bar{margin:0 12px 12px}.last-settings{border-top:1px solid #e1e8ed;gap:14px;margin-top:22px;padding-top:19px;display:grid}.department-limit-section{background:#f8fcfa;border:1px solid #dce7e3;border-radius:11px;gap:10px;padding:13px;display:grid}.department-limit-section>div:first-child{gap:4px;display:grid}.department-limit-section small{color:#698078}.department-limit-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.department-limit-row{background:#fff;border:1px solid #e0e9e5;border-radius:9px;justify-content:space-between;align-items:center;gap:9px;padding:8px 10px;display:flex}.department-limit-row>span{align-items:center;gap:7px;font-size:11px;font-weight:800;display:flex}.department-limit-row i{border-radius:50%;width:9px;height:9px}.department-limit-row select{background:#fff;border:1px solid #d8e3de;border-radius:7px;padding:6px 8px;font-size:11px}.last-capacity{color:#187258;background:#edf9f5;border-radius:10px;align-items:center;gap:10px;padding:11px 13px;display:flex}.last-capacity.insufficient{color:#a44a2e;background:#fff1ec}.last-capacity>svg{flex:none;width:22px}.last-capacity>div{gap:3px;display:grid}.last-capacity small{color:inherit;opacity:.78}.teacher-last-custom{background:#f8fcfa;border:1px solid #dbe8e3;border-radius:10px;grid-template-columns:1fr minmax(230px,.7fr);align-items:end;gap:14px;padding:12px;display:grid}.teacher-last-custom>div{gap:4px;display:grid}.teacher-last-custom small{color:#688275}.teacher-last-custom .field{margin:0}@media (width<=850px){.wing-grid{grid-template-columns:1fr}.constraint-section-head{flex-direction:column;align-items:flex-start}.teacher-last-custom,.department-limit-grid{grid-template-columns:1fr}.report-toolbar{align-items:stretch}.report-actions{width:100%}}@media print{.edit-mode-bar{display:none!important}.selected-edit,.click-target{box-shadow:none!important;outline:0!important}body[data-print-scope] .content>*{display:none!important}body[data-print-scope=class] .content>.class-print-only,body[data-print-scope=report] .content>.report-workspace{display:block!important}body[data-print-scope=report] .report-toolbar,body[data-print-scope=report] .report-status{display:none!important}.class-print-only,.report-output{background:#fff!important;padding:0!important;overflow:visible!important}.schedule-report,.simple-report{break-inside:avoid;border:0;border-radius:0;padding:0}.report-stack .schedule-report{break-after:page}.report-stack .schedule-report:last-child{break-after:auto}.invigilation-report-stack{display:block}.daily-invigilation-sheet{break-after:page;page-break-after:always;border:0;width:100%;min-height:0;padding:0}.daily-invigilation-sheet:last-child{break-after:auto;page-break-after:auto}.daily-invigilation-table thead th{-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#eef0f2!important}.master-grid-report,.master-report-day{border:0;border-radius:0;padding:0}.master-report-week-table{width:100%;min-width:0}.master-grid-a3-landscape .master-report-week-table th,.master-grid-a3-landscape .master-report-week-table td{height:4.4mm;padding:.55mm .25mm;font-size:6.6pt}.master-grid-a4-landscape .master-report-week-table th,.master-grid-a4-landscape .master-report-week-table td{height:4mm;padding:.4mm .15mm;font-size:5.5pt}.master-report-day{break-after:page;page-break-after:always}.master-report-day:last-child{break-after:auto;page-break-after:auto}.master-grid-a3-portrait .master-report-day-table th,.master-grid-a3-portrait .master-report-day-table td{height:5.2mm;padding:.7mm .5mm;font-size:7.4pt}.master-grid-a4-portrait .master-report-day-table th,.master-grid-a4-portrait .master-report-day-table td{height:5mm;padding:.55mm .35mm;font-size:7pt}.schedule-report-table td{height:21mm}.report-lesson{min-height:15mm}.report-lesson b{font-size:9pt}.report-lesson small{font-size:7pt;display:block!important}}html,body,#root{width:100%;max-width:100%}body{overflow-x:hidden}body.mobile-menu-open{overflow:hidden}.side-backdrop{display:none}.app main,.app header>div,.page-title>div,.panel-head>div,.platform-main,.platform-grid>*,.report-workspace,.invigilation-workspace>*{min-width:0}.table-wrap,.timetable-panel,.master-table-wrap,.report-output,.availability-grid,.teacher-picker-results,.pool-list,.platform-school-list{overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable}input,select,textarea,button{max-width:100%}@media screen and (width<=960px){.app aside{visibility:hidden;flex-basis:auto;width:min(286px,86vw);height:100dvh;transition:transform .22s;position:fixed;inset-block:0;inset-inline-start:0;transform:translate(110%);box-shadow:-18px 0 45px #091d2d3d}.app[dir=ltr] aside{transform:translate(-110%);box-shadow:18px 0 45px #091d2d3d}.app aside.open,.app[dir=ltr] aside.open{visibility:visible;inset-inline-start:0;transform:translate(0)}.side-close,.menu-btn{display:grid}.side-backdrop{z-index:19;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#081b2a7a;width:100%;height:100%;display:block;position:fixed;inset:0}.app header{height:auto;min-height:70px;padding:10px 16px}.app header h1,.app header p{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.app header h1{font-size:clamp(17px,3vw,21px)}.app header p{max-width:42vw}.content{padding:18px}.dashboard-grid,.split,.invigilation-workspace,.invigilation-prep-grid,.invigilation-status-grid,.platform-grid{grid-template-columns:minmax(0,1fr)}.card-grid,.subject-load-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-toolbar{align-items:stretch}.report-toolbar label{flex:260px}.master-table-wrap{max-height:calc(100dvh - 190px)}}@media screen and (width<=640px){.app header{gap:9px;min-height:64px;padding:8px 12px}.app header p{max-width:34vw}.menu-btn,.side-close,.header-actions>button,.icon{min-width:42px;min-height:42px}.header-actions{gap:5px}.header-actions>button{justify-content:center;padding:8px}.language-label{display:none}.avatar{width:36px;height:36px}.content{padding:12px}.page-title{align-items:stretch;gap:12px;margin-bottom:15px}.page-title h2{font-size:19px}.page-title p{font-size:12px;line-height:1.65}.page-title>button{justify-content:center;width:100%;min-height:44px}.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.stats article{gap:8px;min-width:0;padding:12px 10px}.stats strong{font-size:21px}.stat-icon{flex:none;width:41px;height:41px}.panel{border-radius:12px;padding:14px}.panel-head{flex-wrap:wrap;align-items:flex-start;gap:10px}.panel-head>button,.button-row button,.actions button,.availability-actions button{min-height:42px}.card-grid,.activity-grid,.rules,.report-grid,.form-grid,.subject-load-grid,.teacher-picker-results,.teacher-pools.two,.invigilation-count-settings,.daily-reserve-preview,.conflict-fields,.special-committee-controls,.category-teacher-list,.opportunity-grid,.multi{grid-template-columns:minmax(0,1fr)}.stage-card{grid-template-columns:auto minmax(0,1fr);padding:13px}.stage-card-actions{grid-column:1/-1;justify-content:stretch;width:100%}.stage-card-actions>button:not(.icon){flex:1;justify-content:center}.filters{z-index:3;background:#fff;flex-direction:column;align-items:stretch;gap:8px;width:min(100%,100vw - 52px);min-width:0;padding-bottom:4px;position:sticky;inset-inline-start:0}.filters label{gap:5px;display:grid}.filters select{width:100%;min-height:42px;margin-inline-start:0}.timetable-panel{padding:10px}.timetable{grid-template-columns:96px repeat(var(--period-count,7), 98px);min-width:max-content}.tt-head,.tt-day,.tt-cell{min-height:70px;padding:6px}.lesson{height:56px;padding:7px}.master-tools{align-items:stretch;padding:10px}.master-tools label{flex:100%;gap:5px;display:grid}.master-tools select{width:100%;min-height:42px;margin-inline-start:0}.master-table-wrap{padding:4px}.master-print-title,.master-class-key{min-width:620px}.master-table .m-no{width:24px;min-width:24px;right:0}.master-table .m-dept{width:34px;min-width:34px;right:24px}.master-table .m-teacher{width:105px;min-width:105px;right:58px}.report-card{flex-wrap:wrap;align-items:flex-start}.report-card>div{min-width:calc(100% - 64px)}.report-card>button{justify-content:center;width:100%;min-height:42px}.report-toolbar{padding:12px}.report-toolbar>div:first-child,.report-toolbar label,.report-toolbar select,.report-actions{width:100%;min-width:0}.report-toolbar label{flex-direction:column;align-items:stretch}.report-actions button{flex:125px;justify-content:center;min-height:42px}.report-output{padding:8px}.report-output .schedule-report,.report-output .simple-report{min-width:760px}.teacher-search,.teacher-search.compact,.inline-teacher-search{width:100%;min-width:0}.teacher-search input,.inline-teacher-search input{min-width:0}.availability-actions button{flex:130px}.category-buttons button{min-width:42px;min-height:38px}.special-committee-groups{grid-template-columns:minmax(0,1fr)}.pool-list>button{min-height:48px}.modal-bg{align-items:end;padding:0}.modal{border-radius:18px 18px 0 0;width:100%;max-height:94dvh;padding:16px}.modal-head{z-index:5;background:#fff;padding:14px 0 10px;position:sticky;top:-16px}.modal .actions{z-index:5;padding:12px 16px max(12px, env(safe-area-inset-bottom));background:#fff;border-top:1px solid #e3eaf0;margin-inline:-16px;position:sticky;bottom:-16px}.login{align-items:center;padding:16px}.login-card{width:100%;margin-block:20px;padding:22px}.install{align-items:start;padding:12px}.install-card{border-radius:15px;padding:18px}.install-card h1{font-size:20px}.steps,.steps.four{width:100%;margin:18px 0}.steps span{flex:0 0 31px;width:31px;height:31px}.steps i,.steps.four i{flex:auto;width:auto}.platform-header{gap:8px;padding:10px 12px}.platform-header .brand{border:0;min-width:0;padding:0}.platform-owner{gap:6px}.platform-owner button{min-width:42px;min-height:42px;padding:8px}.platform-main{width:calc(100% - 24px);padding-top:14px}.platform-title{border-radius:15px;min-height:0;padding:20px}.platform-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.platform-stats article{min-width:0;padding:12px 10px}.platform-grid>.panel,.platform-accounts{padding:14px}.platform-school{grid-template-columns:minmax(0,1fr)}.platform-school-expiry input{width:100%;min-height:40px}.platform-school-expiry label input{width:80px}.platform-school-actions{justify-content:stretch}.platform-school-actions button{flex:120px;justify-content:center;min-height:42px}.table-wrap>table th:first-child,.table-wrap>table td:first-child{z-index:2;background:#fff;position:sticky;inset-inline-start:0;box-shadow:1px 0 #dfe7ef}.table-wrap>table th:first-child{z-index:3;background:#f3f7fa}.toast{right:12px;bottom:max(12px, env(safe-area-inset-bottom));text-align:center;justify-content:center;width:auto;left:12px;transform:none}}@media screen and (width<=360px){.stats,.platform-stats{grid-template-columns:minmax(0,1fr)}.app header p,.platform-header small{display:none}.content{padding:9px}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
