.dash{display:grid;grid-gap:var(--space-5);gap:var(--space-5)}.dash>*{min-width:0}.kpi-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:var(--space-3);gap:var(--space-3)}.dash-charts{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);grid-gap:var(--space-4);gap:var(--space-4)}.dash-chart-card{min-width:0;border-top:3px solid var(--area)}.dash-donut{display:grid;justify-items:center;grid-gap:var(--space-2);gap:var(--space-2)}.dash-fees{display:grid;grid-template-columns:minmax(0,1fr) 240px;grid-gap:var(--space-5);gap:var(--space-5);align-items:start}.dash-fees-side{display:grid;grid-gap:var(--space-2);gap:var(--space-2);align-content:start}.dash-fees-side .ui-legend{display:grid;grid-gap:6px;gap:6px;margin:0}.dash-fees-side .ui-legend li{justify-content:flex-start}.dash-fees-side .ui-legend li b{margin-left:auto}.dash-fees-label{margin:var(--space-2) 0 0;color:var(--area-text);font-size:var(--text-xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.04em}.dash-fees-none,.dash-fees-year{margin:0;color:var(--color-muted);font-size:var(--text-caption)}.dash-fees-year b{color:var(--color-ink)}.dash-fees-side .ui-btn{justify-self:start}.kpi2{position:relative;display:grid;grid-gap:2px;gap:2px;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:inherit;text-decoration:none;transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.kpi2:hover{border-color:var(--color-border-strong);box-shadow:var(--elev-1)}.kpi2-label{font-size:13px;color:var(--color-muted);font-weight:var(--weight-medium)}.kpi2 b{font-size:28px;font-weight:var(--weight-bold);letter-spacing:-.02em;line-height:1.15;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.kpi2-sub{font-size:var(--text-xs);color:var(--color-muted)}.kpi2-split{font-size:var(--text-sm);color:var(--color-ink);font-weight:var(--weight-semibold);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.kpi2-up{color:var(--color-success)}.kpi2-down,.kpi2-up{font-weight:var(--weight-semibold)}.kpi2-down{color:var(--color-danger)}.kpi2 .spark{position:absolute;right:var(--space-4);top:calc(var(--space-4) + 22px)}.spark polyline{stroke:var(--color-brand-3)}.spark circle{fill:var(--color-brand)}.dash-jobs{min-width:0}.dash-job-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:var(--space-2);gap:var(--space-2);list-style:none;margin:0;padding:0}.dash-job{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;grid-gap:var(--space-3);gap:var(--space-3);height:100%;padding:10px 12px;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:inherit;text-decoration:none;transition:background var(--dur-fast) var(--ease)}.dash-job:hover{background:color-mix(in srgb,var(--area-tint,var(--color-surface-2)) 50%,var(--color-surface))}.dash-job:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.dash-job-ico{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:var(--color-primary-bg);color:var(--color-primary)}.dash-job-ico .nav-ico{width:20px;height:20px}.dash-job-copy{display:grid;grid-gap:1px;gap:1px;min-width:0}.dash-job-copy b{font-size:15px;font-weight:var(--weight-semibold)}.dash-job-sub{color:var(--color-muted);font-size:var(--text-caption)}.dash-job>.nav-ico{width:16px;height:16px;color:var(--color-muted);transition:transform var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.dash-job:hover>.nav-ico{transform:translateX(3px);color:var(--color-ink)}@media (prefers-reduced-motion:reduce){.dash-job:hover>.nav-ico{transform:none}}@media (min-width:641px){.dash-job{grid-template-columns:auto minmax(0,1fr)}.dash-job>.nav-ico{display:none}}.dash-classes .ui-split{margin-bottom:var(--space-4)}.heat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));grid-gap:var(--space-2);gap:var(--space-2);list-style:none;margin:0;padding:0}.heat-cell{--tone:var(--color-border-strong);display:grid;grid-gap:6px;gap:6px;min-height:84px;padding:10px 12px;border:1px solid var(--color-border);border-top:3px solid var(--tone);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-ink);text-decoration:none;transition:box-shadow var(--dur-fast) var(--ease),transform var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease)}.heat-cell:hover{transform:translateY(-1px);box-shadow:var(--elev-1);border-color:color-mix(in srgb,var(--tone) 55%,var(--color-border))}.heat-cell:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.heat-top{display:flex;align-items:baseline;justify-content:space-between;gap:6px}.heat-top b{font-size:15px;font-weight:var(--weight-semibold)}.heat-pct{font-size:13px;font-weight:var(--weight-bold);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--tone-text,var(--color-ink))}.heat-bar{position:relative;height:6px;border-radius:999px;background:var(--color-surface-3);overflow:hidden}.heat-bar i{position:absolute;inset:0 auto 0 0;border-radius:inherit;background:var(--tone)}.heat-cell small{color:var(--color-muted);font-size:12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.heat-cell.is-good{--tone:var(--color-success);--tone-text:var(--color-success);background:color-mix(in srgb,var(--color-success-bg) 35%,var(--color-surface))}.heat-cell.is-fair{--tone:var(--color-warning);--tone-text:var(--color-warning-text);background:color-mix(in srgb,var(--color-warning-bg) 35%,var(--color-surface))}.heat-cell.is-low{--tone:var(--color-danger);--tone-text:var(--color-danger);background:color-mix(in srgb,var(--color-danger-bg) 35%,var(--color-surface))}.heat-cell.is-none{--tone:var(--color-border-strong);background:var(--color-surface-2)}@media (prefers-reduced-motion:reduce){.heat-cell:hover{transform:none}}.dash-teachers{scroll-margin-top:calc(var(--topbar-h) + var(--space-3))}.dash-teachers-head{display:flex;align-items:baseline;gap:var(--space-3);margin-bottom:var(--space-2)}.dash-teachers-head h2{margin:0;font-size:var(--text-md)}.dash-teachers-head p{margin:0;flex:1 1;color:var(--color-muted);font-size:13px}.dash-more{display:flex;justify-content:center;margin-top:var(--space-2)}@media (max-width:1280px){.kpi-row{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:1100px){.kpi-row{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi-row>:last-child:nth-child(odd){grid-column:1/-1}.dash-charts,.dash-fees{grid-template-columns:1fr}}@media (max-width:640px){.kpi-row{grid-template-columns:1fr 1fr}.dash-teachers-head p,.kpi2 .spark{display:none}.heat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.heat-cell{min-height:76px}}.grid-stats{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-2) var(--space-6);margin:0 0 var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.grid-stats>div{display:grid;grid-gap:0;gap:0}.grid-stats dt{font-size:var(--text-xs);color:var(--color-muted)}.grid-stats dd{margin:0;font-size:var(--text-lg);font-weight:var(--weight-bold);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.grid-stats dd small{font-weight:var(--weight-medium)}.grid-keys,.grid-stats dd small{font-size:var(--text-xs);color:var(--color-muted)}.grid-keys{margin:0 0 0 auto}.form-foot .grid-keys{margin-left:var(--space-2)}.att-month,.att-register{margin-top:var(--space-4)}.att-month{margin-bottom:var(--space-4)}.office table.att-grid td,.office table.marks-grid td{height:var(--row-h);padding-top:4px;padding-bottom:4px;overflow:visible}.office table.marks-grid td:has(.field-error){height:auto;white-space:normal}.office table.marks-grid .score-input{width:92px;height:32px;min-height:32px;padding:0 8px;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);font:inherit;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right;background:var(--color-surface)}.office table.marks-grid .score-input:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--focus-ring)}.office table.marks-grid .score-input.over{border-color:var(--color-danger);background:var(--color-danger-bg)}.office table.marks-grid td.pct{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:var(--weight-semibold)}.office table.marks-grid td.pct.is-good{color:var(--color-success)}.office table.marks-grid td.pct.is-fair{color:var(--color-warning-text)}.office table.marks-grid td.pct.is-low{color:var(--color-danger)}.office table.marks-grid tr.is-absent td{background:var(--color-danger-bg)}.absent-toggle{min-width:40px;height:32px;padding:0 8px;border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-muted);font:inherit;font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:.04em}.absent-toggle:hover:not(:disabled){border-color:var(--color-danger);color:var(--color-danger)}.absent-toggle.is-on{background:var(--color-danger);border-color:var(--color-danger);color:#fff}.absent-toggle:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.att-keys{border-radius:var(--radius-sm);padding:2px;flex-wrap:nowrap}.att-keys:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;background:var(--color-surface-2)}.office table.att-grid .status-chip{min-width:36px;min-height:32px;padding:0 6px;border-radius:var(--radius-sm);border-width:1px;font-weight:var(--weight-semibold);font-size:13px;transform:none}.office table.att-grid .status-chip:hover{transform:none}.office table.att-grid .status-chip.leave{color:var(--color-info)}.office table.att-grid .status-chip.leave.on{background:var(--color-info);color:#fff}.office table.att-grid .note-input{width:100%;height:32px;min-height:32px;padding:0 8px;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);font:inherit;font-size:13px;background:var(--color-surface)}.office table.att-grid .note-input:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--focus-ring)}.office table.att-grid tr.is-dirty td:first-child,.office table.marks-grid tr.is-dirty td:first-child{box-shadow:inset 3px 0 0 var(--color-primary)}.foot-ok{color:var(--color-success)}.foot-warn{color:var(--color-warning-text)}.ui-action-bar .grid-keys{margin-left:var(--space-2)}.ui-card .facts+.ui-btn{margin-top:var(--space-3)}.office .filter-bar .ui-tabs,.office .ui-table-toolbar .ui-tabs{flex-shrink:0}.ui-table-toolbar .date-stepper{margin-left:auto}@media (max-width:900px){.grid-keys{display:none}}.field label .req{color:var(--color-danger);font-weight:var(--weight-bold)}.field.invalid .select-trigger,.field.invalid input,.field.invalid select,.field.invalid textarea{border-color:var(--color-danger)}.import-steps{display:flex;gap:var(--space-2);margin:0;padding:var(--space-3) var(--space-4);list-style:none;border-bottom:1px solid var(--color-border);background:var(--color-surface-2);counter-reset:none}.import-steps li{display:flex;align-items:center;gap:8px;flex:1 1;font-size:13px;font-weight:var(--weight-semibold);color:var(--color-muted)}.import-steps li+li:before{content:"";flex:0 0 18px;height:1px;background:var(--color-border-strong);margin-right:4px}.import-step-dot{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;border:1.5px solid var(--color-border-strong);background:var(--color-surface);font-size:12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.import-steps li.is-current{color:var(--color-ink)}.import-steps li.is-current .import-step-dot{border-color:var(--color-brand-fill);background:var(--color-brand-fill);color:#fff}.import-steps li.is-done{color:var(--color-success)}.import-steps li.is-done .import-step-dot{border-color:var(--color-success);background:var(--color-success-bg);color:var(--color-success)}.import-steps li.is-failed{color:var(--color-danger)}.import-steps li.is-failed .import-step-dot{border-color:var(--color-danger);background:var(--color-danger-bg);color:var(--color-danger)}@media (max-width:640px){.import-steps{flex-direction:column}.import-steps li+li:before{display:none}}.office .platform-split:has(table.marks-grid){grid-template-columns:minmax(0,1fr) 260px;align-items:start}@media (max-width:1280px){.office .platform-split:has(table.marks-grid){grid-template-columns:minmax(0,1fr)}}.office table.att-grid td:first-child,.office table.att-grid th:first-child,.office table.marks-grid td:first-child,.office table.marks-grid th:first-child{width:56px}.score-spread{border-top:3px solid var(--area)}.score-bands{display:grid;grid-gap:8px;gap:8px;margin:0;padding:0;list-style:none}.score-bands li{display:grid;grid-template-columns:72px 1fr 28px;align-items:center;grid-gap:8px;gap:8px;font-size:var(--text-caption)}.score-band-label{color:var(--color-muted)}.score-band-track{height:12px;border-radius:999px;background:var(--color-surface-2);overflow:hidden}.score-band-track i{display:block;height:100%;min-width:0;border-radius:inherit;transition:width var(--dur-fast) var(--ease)}.score-bands b{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.marks-overview{margin-bottom:var(--space-4);border-top:3px solid var(--area)}.subject-dot{display:inline-block;width:8px;height:8px;margin-right:6px;border-radius:50%;background:var(--dot);vertical-align:middle}.marks-chips{display:grid;grid-gap:var(--space-2);gap:var(--space-2);margin-bottom:var(--space-3)}.marks-chips .ui-fchip .subject-dot{margin-right:0}.perf-charts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--space-4);gap:var(--space-4);margin-bottom:var(--space-4)}.perf-chart-card{min-width:0;border-top:3px solid var(--area)}@media (max-width:1100px){.perf-charts{grid-template-columns:1fr}}.fees-page{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.grid-stats dd.is-bad{color:var(--color-danger)}.fees-finder-row .ui-cell-mark{align-self:center}.fees-child .grid-stats,.fees-preview .grid-stats,.fees-send .grid-stats,.fees-tab .grid-stats{margin-bottom:0}.fees-child .grid-stats{margin-top:var(--space-3)}.fees-tab .grid-stats{margin-top:0}.fees-tab .fees-actions{margin-top:var(--space-3)}.fees-preview .grid-stats,.fees-send .grid-stats{margin-top:0;background:var(--color-surface)}.fees-counter-grid>*,.fees-counter>*,.fees-page>*,.fees-stack>*{min-width:0}.fees-history-wrap{overflow-x:auto}.fees-stack{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.fees-stack-sm{display:grid;grid-gap:var(--space-3);gap:var(--space-3);padding:0 var(--space-4) var(--space-4)}.fees-actions,.fees-chips,.fees-presets,.fees-suggest,.fees-under{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.fees-under{padding:var(--space-3) var(--space-4)}.fees-note{margin:0;padding:0 var(--space-4) var(--space-4)}.fees-bad{color:var(--color-danger)}.fees-head-form{display:grid;grid-template-columns:minmax(12rem,2fr) minmax(8rem,1fr) auto auto;align-items:end;grid-gap:var(--space-3);gap:var(--space-3);padding:0 var(--space-4) var(--space-4)}.fees-head-name{display:inline-flex;align-items:baseline;gap:var(--space-2)}.fees-code{font-size:var(--text-xs);color:var(--color-subtle);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:0 6px;letter-spacing:.04em}.fees-suggest{padding:0 var(--space-4) var(--space-4)}.fees-suggest-chip{font:inherit;font-size:var(--text-sm);color:var(--color-primary-text);background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-pill);padding:4px 12px;cursor:pointer}.fees-suggest-chip:hover{border-color:var(--color-border-strong);background:var(--color-surface-3)}.fees-suggest-chip:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.fees-grid-2{grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--space-3);padding:0 var(--space-4) var(--space-4)}.fees-grid-2,.fees-grid-4{display:grid;gap:var(--space-3)}.fees-grid-4{grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:var(--space-3)}.fees-rows{grid-gap:var(--space-2);padding:0 var(--space-4)}.fees-row,.fees-rows{display:grid;gap:var(--space-2)}.fees-row{grid-template-columns:minmax(10rem,2fr) minmax(7rem,1fr) minmax(12rem,2fr) 2.5rem;align-items:center;grid-gap:var(--space-2)}.fees-row-inst{grid-template-columns:minmax(8rem,1.5fr) minmax(9rem,1.2fr) 6rem minmax(7rem,1fr) 2.5rem}.fees-row-head{font-size:var(--text-xs);font-weight:600;color:var(--color-subtle);text-transform:uppercase;letter-spacing:.04em}.fees-preview-table .num,.fees-row .num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fees-amount{font-weight:600}.fees-late{grid-gap:var(--space-3);padding:0 var(--space-4) var(--space-4)}.fees-late,.fees-who{display:grid;gap:var(--space-3)}.fees-who{grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--space-3)}.fees-who-option{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer}.fees-who-option.on{border-color:var(--color-primary);box-shadow:inset 0 0 0 1px var(--color-primary)}.fees-who-option>span{display:grid;grid-gap:2px;gap:2px}.fees-who-option input{margin-top:4px}.fees-skip{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}.fees-pick{display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.fees-pick-bar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.fees-pick-list{list-style:none;margin:0;padding:var(--space-2);max-height:18rem;overflow-y:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));grid-gap:2px var(--space-3);gap:2px var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.fees-pick-row{display:inline-grid;line-height:1.25}.fees-preview{display:grid;grid-gap:var(--space-3);gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-surface-2)}.fees-preview-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:var(--space-3);gap:var(--space-3)}.fees-preview-kpis>div{display:grid;grid-gap:2px;gap:2px}.fees-preview-kpis b{font-size:var(--text-lg);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fees-preview-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.fees-preview-table td,.fees-preview-table th{text-align:left;padding:6px 8px;border-bottom:1px solid var(--color-border)}.fees-preview-table th{font-size:var(--text-xs);color:var(--color-subtle);font-weight:600}.fees-skipped td{color:var(--color-subtle);text-decoration:line-through}.fees-warnings{margin:0;padding:var(--space-2) var(--space-3) var(--space-2) var(--space-5);color:var(--color-warning-text);background:var(--color-warning-bg);border-radius:var(--radius-sm);font-size:var(--text-sm)}.fees-page .linkish,.fees-stack .linkish{font:inherit;color:var(--color-primary-text);text-decoration:underline;background:none;border:0;padding:0;cursor:pointer}@media (max-width:760px){.fees-grid-2,.fees-grid-4,.fees-head-form,.fees-preview-kpis,.fees-who{grid-template-columns:1fr}.fees-row,.fees-row-inst{grid-template-columns:1fr 1fr;padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md)}.fees-preview-table td:nth-child(3),.fees-preview-table th:nth-child(3),.fees-row-head{display:none}}.fees-finder{display:grid;grid-gap:var(--space-3);gap:var(--space-3)}.fees-finder-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:2px;gap:2px}.fees-finder-row{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;grid-gap:var(--space-2);gap:var(--space-2);padding:var(--space-2) var(--space-3);font:inherit;text-align:left;color:var(--color-ink);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer}.fees-finder-row:focus-visible,.fees-finder-row:hover{border-color:var(--color-primary);background:var(--color-surface-2)}.fees-finder-row:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.fees-finder-enter{justify-self:end;border:1px solid var(--color-border);border-radius:4px;padding:0 6px}.fees-counter{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.fees-child-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-4)}.fees-child-head h2{margin:0;font-size:var(--text-lg)}.fees-child-head p{margin:2px 0 0}.fees-kpis{display:flex;flex-wrap:wrap;gap:var(--space-3)}.fees-kpi{display:grid;grid-gap:2px;gap:2px;min-width:7.5rem;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--color-surface-2)}.fees-kpi b{font-size:var(--text-lg);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fees-kpi.strong b{color:var(--color-ink)}.fees-kpi.bad b{color:var(--color-danger)}.fees-counter-grid{display:grid;grid-template-columns:minmax(0,3fr) minmax(18rem,2fr);grid-gap:var(--space-4);gap:var(--space-4);align-items:start}.fees-inst-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.fees-inst{padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.fees-inst.settled{opacity:.7}.fees-inst-top{flex-wrap:wrap;justify-content:space-between}.fees-inst-right,.fees-inst-top{display:flex;align-items:center;gap:var(--space-2)}.fees-money{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;min-width:5.5rem;text-align:right}.fees-inst-heads{margin:var(--space-1) 0 0}.fees-pay{display:grid;grid-gap:var(--space-3);gap:var(--space-3)}.fees-pay-pick{margin:0;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);display:grid;grid-gap:var(--space-1);gap:var(--space-1)}.fees-pay-pick legend{padding:0 4px;color:var(--color-subtle)}.fees-pay-pick-row b{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fees-pay-row{padding:0}.fees-amount-input{font-size:var(--text-lg);font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fees-modes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:var(--space-2);gap:var(--space-2)}.fees-mode{display:flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:0 var(--space-2);border:1px solid var(--color-border-control);border-radius:var(--radius-sm);background:var(--color-surface);font-size:var(--text-sm);cursor:pointer}.fees-mode input{position:absolute;opacity:0;pointer-events:none}.fees-mode.on{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-on-primary);font-weight:600}.fees-mode:has(input:focus-visible){outline:2px solid var(--color-primary);outline-offset:2px}.fees-receipt-card{border-left:4px solid var(--color-success)}.fees-receipt-body ul{list-style:none;margin:0 0 var(--space-2);padding:0;display:grid;grid-gap:4px;gap:4px;font-size:var(--text-sm)}.fees-receipt-body li{display:flex;justify-content:space-between;gap:var(--space-3)}.fees-receipt-body p{margin:0}.fees-history{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.fees-history td,.fees-history th{text-align:left;padding:8px;border-bottom:1px solid var(--color-border)}.fees-history th{font-size:var(--text-xs);color:var(--color-subtle);font-weight:600}.fees-history .num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fees-history-off td{color:var(--color-subtle)}.fees-history-off td:nth-child(4){text-decoration:line-through}@media (max-width:960px){.fees-counter-grid{grid-template-columns:1fr}}@media (max-width:560px){.fees-modes{grid-template-columns:repeat(2,minmax(0,1fr))}.fees-history td:nth-child(2),.fees-history td:nth-child(3),.fees-history th:nth-child(2),.fees-history th:nth-child(3){display:none}}.fees-cell-stack{display:inline-grid;line-height:1.3}.fees-kpi-strip{display:flex;flex-wrap:wrap;gap:var(--space-3)}.fees-kpi-strip .fees-kpi{background:var(--color-surface);border:1px solid var(--color-border);min-width:10rem}.fees-filters{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3)}.fees-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--space-4);gap:var(--space-4);align-items:start}.fees-two>*{min-width:0}.fees-range{display:flex;flex-wrap:wrap}.fees-range,.fees-range-dates{align-items:center;gap:var(--space-2)}.fees-range-dates{display:inline-flex}.fees-suggest-chip.on{color:var(--color-on-primary);background:var(--color-primary);border-color:var(--color-primary)}.fees-form-grid{display:grid;grid-gap:var(--space-3);gap:var(--space-3)}.fees-schedule{margin-top:var(--space-4);padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-surface-2)}.fees-schedule ul{margin:var(--space-2) 0 0;padding-left:var(--space-5);font-size:var(--text-sm)}.fees-plan-list{list-style:none;margin:var(--space-3) 0 0;padding:0;display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.fees-plan-list>li{padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md)}.fees-plan-body{margin:var(--space-2) 0 0;color:var(--color-muted)}.fees-send{width:min(520px,100%)}.fees-send-kpis{display:flex;flex-wrap:wrap;gap:var(--space-3)}.fees-send-kpis>div{display:grid;grid-gap:2px;gap:2px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--color-surface-2)}.fees-send-kpis b{font-size:var(--text-lg)}.fees-send-notes{margin:0;padding-left:var(--space-5)}.fees-send-sample{margin:0}.fees-send-sample blockquote{margin:var(--space-1) 0 0;padding:var(--space-3);border-left:3px solid var(--color-success);border-radius:var(--radius-sm);background:var(--color-success-bg);color:var(--color-ink);font-size:var(--text-sm)}.fees-conc-list{list-style:none;margin:0 0 var(--space-3);padding:0;display:grid;grid-gap:var(--space-1);gap:var(--space-1)}.fees-conc-list li{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--color-surface-2)}.fees-conc-form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-2)}.fees-conc-form>.ui-input{flex:1 1 8rem;min-width:6rem}.fees-pause-on{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2)}.fees-pause-on p{margin:0}@media (max-width:960px){.fees-two{grid-template-columns:1fr}}.fees-actions .select,.fees-conc-form .select,.fees-filters .select{width:auto;min-width:9rem}.fees-tab{container-type:inline-size}@container (max-width: 760px){.fees-tab .fees-two{grid-template-columns:1fr}}.fees-age-head h2{margin:0;font-size:var(--text-md)}.fees-age-head p{margin:2px 0 var(--space-3);color:var(--color-muted);font-size:var(--text-caption)}.fees-age-bar{display:flex;gap:3px;height:34px;border-radius:var(--radius-sm);overflow:hidden}.fees-age-bar span{display:grid;place-items:center;min-width:6px;color:#fff;font-size:var(--text-xs);font-weight:var(--weight-semibold);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.fees-age-keys{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:var(--space-2);gap:var(--space-2);margin:var(--space-3) 0 0;padding:0;list-style:none}.fees-age-keys button{display:grid;grid-template-columns:auto 1fr;grid-gap:0 8px;gap:0 8px;width:100%;padding:8px 10px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-ink);font:inherit;text-align:left;cursor:pointer}.fees-age-keys button:hover:not(:disabled){border-color:var(--color-border-strong);background:var(--color-surface-2)}.fees-age-keys button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.fees-age-keys button:disabled{cursor:default;opacity:.6}.fees-age-keys i{grid-row:1/span 3;width:10px;height:10px;margin-top:5px;border-radius:3px}.fees-age-keys span{color:var(--color-muted);font-size:var(--text-caption)}.fees-age-keys b{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fees-age-keys small{color:var(--color-muted);font-size:var(--text-xs)}.fees-age-none{margin:0;color:var(--color-success);font-weight:var(--weight-semibold)}.fees-quick{margin-bottom:var(--space-2)}.fees-quick-classes .ui-fchip{min-width:40px;justify-content:center}.fees-quick-note{margin:0 0 var(--space-2);color:var(--color-muted);font-size:var(--text-xs)}.fees-quick+.fees-filters,.fees-quick-note+.fees-filters{padding-top:var(--space-3);border-top:1px solid var(--color-border)}.fees-chart-block{margin-bottom:var(--space-3)}.fees-year-bar{display:flex;height:14px;margin:var(--space-2) 0;border-radius:999px;overflow:hidden;background:var(--chart-empty)}.fees-year-bar i{display:block;height:100%}@media (max-width:760px){.fees-age-keys{grid-template-columns:1fr 1fr}}.fees-mode-chart{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4)}.fees-mode-chart .ui-legend{display:grid;grid-gap:6px;gap:6px;margin:0}.fees-range .ui-fchips{flex:0 1 auto}.fees-today{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3) var(--space-5);margin-bottom:var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid color-mix(in srgb,var(--area) 25%,var(--color-border));border-radius:var(--radius-md);background:linear-gradient(100deg,var(--area-tint) 0,var(--color-surface) 70%)}.fees-today-main{display:grid;grid-gap:0;gap:0}.fees-today-main small{color:var(--area-text);font-size:var(--text-xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.04em}.fees-today-main b{font-size:24px;line-height:1.2;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fees-today-main span{color:var(--color-muted);font-size:var(--text-xs)}.fees-today-modes{display:flex;flex:1 1;flex-wrap:wrap;gap:6px}.fees-today-mode{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:var(--color-surface);border:1px solid var(--color-border);font-size:var(--text-caption)}.fees-today-mode i{width:8px;height:8px;border-radius:50%;background:var(--dot)}.fees-today-mode b{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fees-today-none{color:var(--color-muted);font-size:var(--text-caption)}.btn{min-height:var(--control-h);border-radius:var(--radius-sm);background:var(--color-primary);box-shadow:none;font-size:var(--text-sm)}.btn:hover:not(:disabled){background:var(--color-primary-hover);filter:none}.btn:active:not(:disabled),.btn:hover:not(:disabled){transform:none;box-shadow:none}.btn.sm{min-height:32px}.btn.secondary{background:var(--color-surface)}.btn.secondary,.btn.secondary:hover:not(:disabled){color:var(--color-ink);border-color:var(--color-border-strong);box-shadow:none}.btn.secondary:hover:not(:disabled){background:var(--color-surface-2)}.btn.navy{background:var(--color-brand-fill);box-shadow:none}.btn.navy:hover:not(:disabled){background:var(--color-brand-fill-2);box-shadow:none}.btn.ok{background:var(--color-success);box-shadow:none}.btn.ok:hover:not(:disabled){filter:brightness(.92);box-shadow:none}.btn.danger{background:var(--color-danger);box-shadow:none}.btn.danger:hover:not(:disabled){filter:brightness(.92);box-shadow:none}.btn.ok-soft{background:var(--color-success-bg);color:var(--color-success);border-color:transparent}.btn.ok-soft:hover:not(:disabled){background:var(--color-success);color:#fff;box-shadow:none}.btn.danger-soft{background:var(--color-surface);color:var(--color-danger);border-color:var(--color-border-strong)}.btn.danger-soft:hover:not(:disabled){background:var(--color-danger-bg);color:var(--color-danger);border-color:var(--color-danger);box-shadow:none}.btn.icon-only{width:32px;min-height:32px;border-radius:var(--radius-sm)}.office .seg-tabs,.seg-tabs{gap:2px;padding:3px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-surface-2)}.seg-tabs a,.seg-tabs button{min-height:32px;padding:0 var(--space-3);border-radius:7px;font-size:13px}.seg-tabs a:hover,.seg-tabs button:hover{background:transparent;color:var(--color-ink)}.seg-tabs a.on,.seg-tabs button.on{background:var(--color-surface);color:var(--color-ink);box-shadow:var(--elev-1)}.kpi-mini,.kpi-mini.bad,.kpi-mini.navy,.kpi-mini.ok,.kpi-mini.warn,.office .kpi,.office .kpi.accent,.office .kpi.bad,.office .kpi.navy,.office .kpi.ok,.office .kpi.warn{background:var(--color-surface);border-color:var(--color-border);box-shadow:none}.kpi-mini:hover,.office .kpi:hover{transform:none;box-shadow:var(--elev-1);border-color:var(--color-border-strong)}.kpi-mini span{text-transform:none;letter-spacing:0;font-weight:var(--weight-medium)}.kpi-mini .kpi-ico,.office .kpi .kpi-ico{width:34px;height:34px;border-radius:9px}.kpi-mini.navy .kpi-ico,.office .kpi.navy .kpi-ico{background:rgba(27,42,74,.08);color:var(--color-brand)}.kpi-mini.ok .kpi-ico,.office .kpi.ok .kpi-ico{background:var(--color-success-bg);color:var(--color-success)}.kpi-mini.warn .kpi-ico,.office .kpi.warn .kpi-ico{background:var(--color-warning-bg);color:var(--color-warning-text)}.kpi-mini.bad .kpi-ico,.office .kpi.bad .kpi-ico{background:var(--color-danger-bg);color:var(--color-danger)}.office .kpi.accent .kpi-ico{background:var(--color-primary-bg);color:var(--color-primary)}.kpi-mini.bad.on,.kpi-mini.navy.on,.kpi-mini.ok.on,.kpi-mini.on,.kpi-mini.warn.on{background:var(--color-surface);border-color:var(--color-brand-fill);box-shadow:0 0 0 1px var(--color-brand-fill) inset;color:inherit}.kpi-mini.on b{color:var(--color-ink)}.kpi-mini.on span{color:var(--color-muted)}.kpi-mini.on .kpi-ico{background:var(--color-brand-fill);color:#fff}.office .shortcut,.office .shortcut.accent,.office .shortcut.navy,.office .shortcut.ok,.office .shortcut.warn{background:var(--color-surface);border-color:var(--color-border)}.office .shortcut:hover{transform:none;box-shadow:var(--elev-1)}.office .shortcut .shortcut-ico{background:var(--color-surface-2);color:var(--color-brand)}.office .card{box-shadow:none}.office .card.empty,.office .empty{background:var(--color-surface)}.office .empty-icon{background:var(--color-surface-2);color:var(--color-muted)}:root[data-theme=dark]{color-scheme:dark;--color-bg:#0f172a;--color-surface:#1e293b;--color-surface-2:#243044;--color-surface-3:#334155;--color-border:#334155;--color-border-strong:#475569;--color-border-control:#94a3b8;--color-ink:#f8fafc;--color-muted:#b0bccb;--color-subtle:#dbe3ec;--color-placeholder:#94a3b8;--color-disabled:#64748b;--color-on-dark:#f8fafc;--color-brand:#93c5fd;--color-brand-2:#bfdbfe;--color-brand-3:#93c5fd;--color-brand-fill:#020617;--color-brand-fill-2:#0f172a;--color-brand-fill-3:#1e293b;--color-brand-bg:#1e293b;--color-primary:#2563eb;--color-primary-hover:#1d4ed8;--color-primary-text:#93c5fd;--color-primary-bg:#1e3a8a;--color-on-primary:#ffffff;--color-secondary:#2dd4bf;--color-secondary-hover:#5eead4;--color-on-secondary:#0f172a;--color-success:#4ade80;--color-success-bg:#052e16;--color-danger:#f87171;--color-danger-bg:#450a0a;--color-warning:#fbbf24;--color-warning-text:#fbbf24;--color-warning-bg:#422006;--color-info:#38bdf8;--color-info-bg:#082f49;--color-neutral:#94a3b8;--color-neutral-bg:#1e293b;--hue-teal-tint:#042f2e;--hue-teal-text:#5eead4;--hue-indigo-tint:#1e3a8a;--hue-indigo-text:#93c5fd;--hue-violet-tint:#2a1a4d;--hue-violet-text:#d0b4fb;--hue-amber-tint:#422006;--hue-amber-text:#fbbf24;--hue-rose-tint:#450a0a;--hue-rose-text:#fca5a5;--hue-sky-tint:#082f49;--hue-sky-text:#7dd3fc;--hue-green-tint:#052e16;--hue-green-text:#86efac;--hue-orange-tint:#431407;--hue-orange-text:#fdba8c;--bg:var(--color-bg);--paper:var(--color-surface);--line:var(--color-border);--ink:var(--color-ink);--muted:var(--color-muted);--navy:var(--color-brand);--navy-2:var(--color-brand-2);--navy-3:var(--color-brand-3);--accent:var(--color-primary);--accent-2:var(--color-primary-hover);--elev-1:0 1px 2px rgba(0,0,0,0.4);--elev-2:0 4px 14px rgba(0,0,0,0.45);--elev-3:0 12px 32px rgba(0,0,0,0.55);--focus-ring:0 0 0 3px rgba(59,130,246,0.35);--shadow:var(--elev-2)}[data-theme=dark] .side{background:var(--color-brand-fill)}[data-theme=dark] .top{background:rgba(15,23,42,.92)}[data-theme=dark] .legal-card,[data-theme=dark] .office .card,[data-theme=dark] .ui-card{box-shadow:none}[data-theme=dark] .office table.data th,[data-theme=dark] .ui-table thead th,[data-theme=dark] table.data th{border-bottom-color:var(--color-border-strong)}[data-theme=dark] .office table.data tbody tr:hover>td,[data-theme=dark] .ui-table tbody tr:hover>td{background:var(--color-surface-2)}[data-theme=dark] input,[data-theme=dark] select,[data-theme=dark] textarea{background-color:var(--color-surface);color:var(--color-ink)}[data-theme=dark] .field input:disabled,[data-theme=dark] .field select:disabled{background:var(--color-surface-2);color:var(--color-subtle)}[data-theme=dark] .lb-row.place-1{background:linear-gradient(90deg,var(--color-warning-bg) 0,var(--color-surface) 85%)}[data-theme=dark] .lb-row.place-2{background:linear-gradient(90deg,var(--color-surface-2) 0,var(--color-surface) 85%)}[data-theme=dark] .lb-row.place-3{background:linear-gradient(90deg,var(--hue-orange-tint) 0,var(--color-surface) 85%)}[data-theme=dark] .login-card{box-shadow:0 10px 30px rgba(0,0,0,.5)}[data-theme=dark] ::selection{background:#1e3a8a;color:#fff}[data-theme=dark] .status-chip.present.on{background:var(--hue-green-dark)}[data-theme=dark] .status-chip.absent.on{background:var(--hue-rose)}[data-theme=dark] .status-chip.late.on{background:var(--hue-amber)}[data-theme=dark] .status-chip.leave.on{background:var(--hue-sky)}[data-theme=dark] .pf-foot,[data-theme=dark] .ui-action-bar{background:rgba(15,23,42,.94)}[data-theme=dark] .seg-tabs a:hover{background:var(--color-surface-2)}[data-theme=dark] .skip-link,[data-theme=dark] .top-avatar{background:var(--color-primary);color:var(--color-on-primary)}[data-theme=dark] .ui-btn-danger,[data-theme=dark] .ui-count.ui-tone-danger{background:#b91c1c}:root{--chart-grid:var(--color-border);--chart-axis:var(--color-muted);--chart-empty:var(--color-surface-3,#e2e8f0)}.area-home{--area:#2563eb;--area-tint:#dbeafe;--area-text:#1d4ed8;--area-glow:#93c5fd}.area-attendance{--area:#0f766e;--area-tint:#ccfbf1;--area-text:#115e59;--area-glow:#5eead4}.area-marks{--area:#7c3aed;--area-tint:#ede9fe;--area-text:#5b21b6;--area-glow:#c4b5fd}.area-insights{--area:#9333ea;--area-tint:#f3e8ff;--area-text:#7e22ce;--area-glow:#d8b4fe}.area-homework{--area:#0284c7;--area-tint:#e0f2fe;--area-text:#0369a1;--area-glow:#7dd3fc}.area-fees{--area:#ea580c;--area-tint:#ffedd5;--area-text:#9a3412;--area-glow:#fdba74}.area-notices{--area:#db2777;--area-tint:#fce7f3;--area-text:#9d174d;--area-glow:#f9a8d4}.area-people{--area:#4f46e5;--area-tint:#e0e7ff;--area-text:#3730a3;--area-glow:#a5b4fc}.area-reports{--area:#059669;--area-tint:#d1fae5;--area-text:#047857;--area-glow:#6ee7b7}.area-school{--area:#475569;--area-tint:#f1f5f9;--area-text:#334155;--area-glow:#cbd5e1}.ui-page-header[class*=area-]{position:relative;padding:var(--space-4) var(--space-4) var(--space-4) var(--space-4);border-radius:var(--radius-lg);background:linear-gradient(100deg,var(--area-tint) 0,color-mix(in srgb,var(--area-tint) 45%,transparent) 45%,transparent 85%)}.ui-page-header .ui-page-icon{background:var(--area,var(--color-primary));color:#fff;box-shadow:0 6px 14px color-mix(in srgb,var(--area,var(--color-primary)) 30%,transparent)}.side-link[class*=area-] .nav-ico{color:var(--area-glow);opacity:1}.kpi2[class*=area-]{background:linear-gradient(160deg,var(--area-tint) 0,var(--color-surface) 75%);border-color:color-mix(in srgb,var(--area) 22%,var(--color-border))}.kpi2[class*=area-]:hover{border-color:var(--area)}.kpi2-ico{display:grid;place-items:center;width:32px;height:32px;margin-bottom:6px;border-radius:9px;background:var(--area);color:#fff}.kpi2-ico .nav-ico{width:17px;height:17px}.kpi2[class*=area-] .kpi2-label{color:var(--area-text)}.kpi2[class*=area-] .spark polyline{stroke:var(--area)}.kpi2[class*=area-] .spark circle{fill:var(--area)}.kpi2-meter{display:block;height:6px;margin-top:6px;border-radius:999px;background:color-mix(in srgb,var(--area) 15%,transparent);overflow:hidden}.kpi2-meter i{display:block;height:100%;border-radius:inherit;background:var(--area)}.dash-job-ico[class*=area-]{background:var(--area-tint);color:var(--area-text)}.ui-fchips{display:flex;flex-wrap:wrap;gap:6px}.ui-fchip{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:0 12px;border:1px solid var(--color-border-strong);border-radius:999px;background:var(--color-surface);color:var(--color-ink);font:inherit;font-size:var(--text-caption);font-weight:var(--weight-medium);cursor:pointer;transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease)}.ui-fchip:hover{border-color:var(--area,var(--color-primary))}.ui-fchip:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.ui-fchip[aria-pressed=true]{background:var(--area-text,var(--color-primary-text));border-color:var(--area-text,var(--color-primary-text));color:#fff}.ui-fchip-count{min-width:20px;padding:0 6px;border-radius:999px;background:var(--color-surface-2);color:var(--color-muted);font-size:var(--text-xs);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:center}.ui-fchip[aria-pressed=true] .ui-fchip-count{background:rgba(255,255,255,.25);color:#fff}.ui-chart{position:relative;width:100%;min-width:0}.ui-chart .recharts-cartesian-axis-tick-value{fill:var(--chart-axis);font-size:12px}.ui-chart .recharts-tooltip-wrapper{outline:none}.ui-chart-tip{padding:8px 10px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);box-shadow:var(--elev-2);font-size:var(--text-caption)}.ui-chart-tip b{display:block;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ui-chart-tip span{color:var(--color-muted)}.ui-chart-empty{display:grid;place-items:center;min-height:160px;border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);color:var(--color-muted);font-size:var(--text-sm);text-align:center;padding:var(--space-4)}.ui-donut-wrap{position:relative;display:grid;place-items:center}.ui-donut-centre{position:absolute;inset:0;display:grid;place-content:center;text-align:center;pointer-events:none}.ui-donut-centre b{font-size:26px;font-weight:var(--weight-bold);line-height:1.1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ui-donut-centre span{color:var(--color-muted);font-size:var(--text-xs)}.ui-legend{display:flex;flex-wrap:wrap;gap:6px 14px;margin:var(--space-2) 0 0;padding:0;list-style:none;font-size:var(--text-caption)}.ui-legend li{display:inline-flex;align-items:center;gap:6px;color:var(--color-muted)}.ui-legend li b{color:var(--color-ink);font-weight:var(--weight-semibold);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ui-legend i{width:10px;height:10px;border-radius:3px;background:var(--dot)}:root[data-theme=dark]{--chart-empty:#334155}:root[data-theme=dark] .area-home{--area:#60a5fa;--area-text:#93c5fd}:root[data-theme=dark] .area-attendance{--area:#2dd4bf;--area-text:#5eead4}:root[data-theme=dark] .area-marks{--area:#a78bfa;--area-text:#c4b5fd}:root[data-theme=dark] .area-insights{--area:#c084fc;--area-text:#d8b4fe}:root[data-theme=dark] .area-homework{--area:#38bdf8;--area-text:#7dd3fc}:root[data-theme=dark] .area-fees{--area:#fb923c;--area-text:#fdba74}:root[data-theme=dark] .area-notices{--area:#f472b6;--area-text:#f9a8d4}:root[data-theme=dark] .area-people{--area:#818cf8;--area-text:#a5b4fc}:root[data-theme=dark] .area-reports{--area:#34d399;--area-text:#6ee7b7}:root[data-theme=dark] .area-school{--area:#94a3b8;--area-text:#cbd5e1}:root[data-theme=dark] [class*=area-]{--area-tint:color-mix(in srgb,var(--area) 16%,transparent)}:root[data-theme=dark] .kpi2-ico,:root[data-theme=dark] .ui-fchip[aria-pressed=true],:root[data-theme=dark] .ui-page-header .ui-page-icon{color:#0f172a}:root[data-theme=dark] .ui-fchip[aria-pressed=true] .ui-fchip-count{background:rgba(15,23,42,.2);color:#0f172a}.ui-split{display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.ui-split-bar{display:flex;gap:3px;height:14px;border-radius:999px;overflow:hidden}.ui-split-bar span{display:block;min-width:4px}.ui-split-empty{flex:1 1;background:var(--chart-empty)}.ui-split-keys{margin:0}.ui-split-keys button{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;border:1px solid transparent;border-radius:999px;background:none;color:var(--color-muted);font:inherit;cursor:pointer}.ui-split-keys button:hover{border-color:var(--color-border-strong)}.ui-split-keys button[aria-pressed=true]{border-color:var(--dot);background:var(--color-surface-2);color:var(--color-ink)}.ui-split-keys button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.ui-summary-card{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;grid-gap:var(--space-4);gap:var(--space-4);margin-bottom:var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid color-mix(in srgb,var(--area) 25%,var(--color-border));border-radius:var(--radius-md);background:linear-gradient(100deg,var(--area-tint) 0,var(--color-surface) 60%)}.ui-summary-big{display:grid;grid-gap:0;gap:0;min-width:96px}.ui-summary-big b{font-size:28px;line-height:1.1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--area-text)}.ui-summary-big span{color:var(--color-muted);font-size:var(--text-xs)}@media (max-width:640px){.ui-summary-card{grid-template-columns:1fr}}tbody tr:nth-child(6n+1) :is(.ui-cell-mark,.avatar){background:var(--hue-violet-tint);color:var(--hue-violet-text)}tbody tr:nth-child(6n+2) :is(.ui-cell-mark,.avatar){background:var(--hue-teal-tint);color:var(--hue-teal-text)}tbody tr:nth-child(6n+3) :is(.ui-cell-mark,.avatar){background:var(--hue-sky-tint);color:var(--hue-sky-text)}tbody tr:nth-child(6n+4) :is(.ui-cell-mark,.avatar){background:var(--hue-orange-tint);color:var(--hue-orange-text)}tbody tr:nth-child(6n+5) :is(.ui-cell-mark,.avatar){background:var(--hue-green-tint);color:var(--hue-green-text)}tbody tr:nth-child(6n+6) :is(.ui-cell-mark,.avatar){background:var(--hue-indigo-tint);color:var(--hue-indigo-text)}.people-chips{display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.hw-chips,.people-chips{margin-bottom:var(--space-3)}.notice-chips{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4)}.rec-charts{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:var(--space-4);gap:var(--space-4);margin-bottom:var(--space-4)}.rec-chart{min-width:0;border-top:3px solid var(--area)}.rec-chart-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4)}.rec-chart-row .ui-legend{display:grid;grid-gap:4px;gap:4px;margin:0}.rec-chart-note{margin:var(--space-2) 0 0;color:var(--color-muted);font-size:var(--text-caption)}.rec-chart-note b{color:var(--color-ink)}.ui-empty-icon[class*=area-]{width:52px;height:52px;border-radius:16px;background:var(--area-tint);color:var(--area-text);box-shadow:0 0 0 6px color-mix(in srgb,var(--area-tint) 45%,transparent)}.ui-empty-icon[class*=area-] .nav-ico{width:24px;height:24px}:root{--form-arrow:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M5 7.5L10 12.5L15 7.5' stroke='%23475569' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}:root[data-theme=dark]{--form-arrow:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M5 7.5L10 12.5L15 7.5' stroke='%23cbd5e1' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}.date-trigger,.field input:not([type=checkbox]):not([type=radio]):not([type=file]),.field select,.field textarea,.select-trigger,.ui-input{border:1px solid var(--color-border-control);border-radius:var(--radius-sm);background-color:var(--color-surface);color:var(--color-ink);font-family:inherit;font-size:var(--text-sm);font-weight:var(--weight-medium);transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.date-trigger:not(.filter-select),.field input:not([type=checkbox]):not([type=radio]):not([type=file]),.field select,.select-trigger:not(.filter-select),.ui-input{min-height:var(--control-h)}.field select,.select-trigger:not(.filter-select){padding:0 40px 0 var(--space-3)}.date-trigger:not(.filter-select){padding:0 42px 0 var(--space-3)}.field input:not([type=checkbox]):not([type=radio]):not([type=file]){padding:0 var(--space-3)}.field textarea{padding:var(--space-2) var(--space-3);line-height:1.5}.field select,.select-trigger{background-image:var(--form-arrow);background-repeat:no-repeat;background-position:right 12px center;background-size:18px}.date-trigger-ico{color:var(--color-muted)}.date-trigger:hover,.field input:hover,.field select:hover,.field textarea:hover,.select-trigger:hover,.ui-input:hover{border-color:var(--color-muted)}.date-picker.open .date-trigger,.date-trigger:focus-visible,.field input:focus,.field select:focus,.field textarea:focus,.select-trigger:focus-visible,.select.open .select-trigger{outline:none;border-color:var(--color-primary);box-shadow:var(--focus-ring)}.date-placeholder,.select-placeholder{color:var(--color-placeholder);font-weight:var(--weight-regular)}.date-picker.disabled .date-trigger,.field input:disabled,.field select:disabled,.field textarea:disabled,.select.disabled .select-trigger,.ui-input:disabled{background-color:var(--color-surface-2);border-color:var(--color-border-strong);color:var(--color-muted);cursor:not-allowed}.field.invalid .date-trigger,.field.invalid .select-trigger,.field.invalid input:not([type=checkbox]):not([type=radio]):not([type=file]),.field.invalid select,.field.invalid textarea,.ui-field.has-error .date-trigger,.ui-field.has-error .select-trigger,[aria-invalid=true].date-trigger,[aria-invalid=true].select-trigger,[aria-invalid=true].ui-input{border-color:var(--color-danger)}.ui-field.has-error .ui-input:focus,[aria-invalid=true].date-trigger:focus-visible,[aria-invalid=true].select-trigger:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-danger) 22%,transparent)}.select-menu{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--elev-3,0 18px 40px rgba(15,23,42,.18))}.select-option{font-weight:var(--weight-medium);color:var(--color-ink);border-radius:var(--radius-sm)}.select-option.active{background:var(--color-surface-2)}.select-option.selected{background:var(--color-primary-bg);color:var(--color-primary-text)}.select-option.selected:after{border-color:var(--color-primary-text)}@media (max-width:767px){.date-trigger:not(.filter-select),.field input:not([type=checkbox]):not([type=radio]):not([type=file]),.field select,.select-trigger:not(.filter-select),.ui-input{min-height:44px;font-size:16px}}.ui-optional{margin-left:6px;color:var(--color-muted);font-size:var(--text-xs);font-weight:var(--weight-regular)}.ui-field-error{display:flex;align-items:flex-start;gap:6px}.ui-field-error .nav-ico{width:14px;height:14px;margin-top:2px;flex-shrink:0}.ui-addon{display:flex;align-items:stretch;min-height:var(--control-h);border:1px solid var(--color-border-control);border-radius:var(--radius-sm);background:var(--color-surface);overflow:hidden;transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.ui-addon:hover{border-color:var(--color-muted)}.ui-addon:focus-within{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.ui-addon.is-invalid{border-color:var(--color-danger)}.ui-addon .ui-input{flex:1 1;min-width:0;min-height:0;border:0;border-radius:0;box-shadow:none;background:transparent}.ui-addon .ui-input:focus{box-shadow:none}.ui-addon-part{display:grid;place-items:center;padding:0 var(--space-3);background:var(--color-surface-2);color:var(--color-muted);font-size:var(--text-sm);font-weight:var(--weight-semibold);white-space:nowrap}.ui-addon-part:first-child{border-right:1px solid var(--color-border)}.ui-addon-part:last-child{border-left:1px solid var(--color-border)}@media (max-width:767px){.ui-addon{min-height:44px}.ui-addon .ui-input{min-height:0}}.ui-fsec{padding:var(--space-4) var(--space-5) var(--space-5);border:1px solid var(--color-border);border-top:3px solid var(--area);border-radius:var(--radius-md);background:var(--color-surface);scroll-margin-top:calc(var(--topbar-h) + var(--space-3))}.ui-fsec,.ui-fsec-head{margin-bottom:var(--space-4)}.ui-fsec-head{display:flex;align-items:flex-start;gap:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border)}.ui-fsec-badge{display:grid;place-items:center;width:34px;height:34px;flex-shrink:0;border-radius:10px;background:var(--area-tint);color:var(--area-text);font-weight:var(--weight-bold);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ui-fsec-badge .nav-ico{width:18px;height:18px}.ui-fsec-text{flex:1 1;min-width:0}.ui-fsec-text h2{margin:0;font-size:var(--text-md);line-height:1.3}.ui-fsec-text p{margin:2px 0 0;color:var(--color-muted);font-size:var(--text-caption)}.ui-fsec-status{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:999px;background:var(--color-warning-bg);color:var(--color-warning-text);font-size:var(--text-xs);font-weight:var(--weight-semibold);white-space:nowrap}.ui-fsec-status.is-done{background:var(--color-success-bg);color:var(--color-success)}.ui-fsec-status .nav-ico{width:13px;height:13px}.ui-fsec-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-gap:var(--space-4) var(--space-4);gap:var(--space-4) var(--space-4)}.ui-fsec-grid>*{grid-column:span 12;min-width:0}.ui-fsec-grid>.ui-span-half{grid-column:span 6}.ui-fsec-grid>.ui-span-third{grid-column:span 4}.ui-fsec-grid>.ui-span-two-thirds{grid-column:span 8}.ui-fsec-grid>.ui-span-quarter{grid-column:span 3}@media (max-width:767px){.ui-fsec{padding:var(--space-3) var(--space-4) var(--space-4)}.ui-fsec-grid>[class*=ui-span-]{grid-column:span 12}}.ui-choice{display:inline-flex;flex-wrap:wrap;gap:4px;padding:4px;border:1px solid var(--color-border-control);border-radius:var(--radius-sm);background:var(--color-surface-2)}.ui-choice.is-invalid{border-color:var(--color-danger)}.ui-choice-opt{display:inline-flex;align-items:center;gap:6px;min-height:calc(var(--control-h) - 10px);padding:0 14px;border:0;border-radius:6px;background:transparent;color:var(--color-ink);font:inherit;font-size:var(--text-sm);font-weight:var(--weight-medium);cursor:pointer}.ui-choice-opt:hover:not(:disabled){background:var(--color-surface)}.ui-choice-opt:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.ui-choice-opt[aria-checked=true]{background:var(--area-text,var(--color-primary-text));color:#fff;box-shadow:0 1px 2px rgba(15,23,42,.12)}:root[data-theme=dark] .ui-choice-opt[aria-checked=true]{color:#0f172a}.ui-choice-opt:disabled{cursor:not-allowed;opacity:.6}.ui-choice-opt .nav-ico{width:16px;height:16px}@media (max-width:767px){.ui-choice-opt{min-height:36px}}.ui-choice-pills{margin-top:var(--space-2)}.ui-switch-row{position:relative;display:grid;grid-template-columns:auto 1fr;align-items:start;grid-gap:var(--space-3);gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);cursor:pointer}.ui-switch-row:hover{border-color:var(--color-border-strong)}.ui-switch-row input{position:absolute;opacity:0;width:1px;height:1px}.ui-switch-row .ui-switch-track{margin-top:2px}.ui-switch-row input:checked+.ui-switch-track{background:var(--area-text,var(--color-primary-text))}.ui-switch-row input:checked+.ui-switch-track .ui-switch-thumb{transform:translateX(14px)}.ui-switch-row input:focus-visible+.ui-switch-track{outline:2px solid var(--color-primary);outline-offset:2px}.ui-switch-row-text{display:grid;grid-gap:2px;gap:2px}.ui-switch-row-text b{font-size:var(--text-sm);font-weight:var(--weight-semibold)}.ui-switch-row-text span{color:var(--color-muted);font-size:var(--text-caption)}.ui-switch-row.is-disabled{cursor:not-allowed;opacity:.6}.ui-action-bar-status{display:inline-flex;align-items:center;gap:8px}.ui-action-dot{width:9px;height:9px;border-radius:50%;background:var(--color-neutral);flex-shrink:0}.ui-action-bar.is-dirty .ui-action-dot{background:var(--color-warning)}.ui-action-bar.is-saving .ui-action-dot{background:var(--color-primary);animation:ui-pulse 1s ease-in-out infinite}.ui-action-bar.is-saved .ui-action-dot{background:var(--color-success)}.ui-action-bar.is-error .ui-action-dot{background:var(--color-danger)}.ui-action-bar.is-dirty .ui-action-bar-status{color:var(--color-warning-text);font-weight:var(--weight-semibold)}.ui-action-bar.is-error .ui-action-bar-status{color:var(--color-danger);font-weight:var(--weight-semibold)}@keyframes ui-pulse{50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.ui-action-bar.is-saving .ui-action-dot{animation:none}}.ui-error-summary{margin-bottom:var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid color-mix(in srgb,var(--color-danger) 35%,var(--color-border));border-left:4px solid var(--color-danger);border-radius:var(--radius-sm);background:var(--color-danger-bg);color:var(--color-ink)}.ui-error-summary:focus{outline:2px solid var(--color-danger);outline-offset:2px}.ui-error-summary b{display:inline-flex;align-items:center;gap:6px;color:var(--color-danger)}.ui-error-summary b .nav-ico{width:16px;height:16px}.ui-error-summary ul{margin:var(--space-2) 0 0;padding-left:22px}.ui-error-summary a{color:var(--color-danger);font-weight:var(--weight-medium)}.field>.ui-choice,.ui-field>.ui-choice{align-self:flex-start;max-width:100%}.role-chip{border:1px solid var(--color-border-strong);border-radius:999px;background:var(--color-surface);color:var(--color-ink);font-weight:var(--weight-medium)}.role-chip:hover{border-color:var(--area,var(--color-primary));color:var(--color-ink)}.role-chip.on{background:var(--area-text,var(--color-primary-text));border-color:var(--area-text,var(--color-primary-text));color:#fff}:root[data-theme=dark] .role-chip.on{color:#0f172a}.ui-form-page{display:grid;grid-template-columns:minmax(0,1fr) 300px;grid-gap:var(--space-4);gap:var(--space-4);align-items:start}.ui-form-side{position:-webkit-sticky;position:sticky;top:calc(var(--topbar-h) + var(--space-3));display:grid;grid-gap:var(--space-3);gap:var(--space-3);min-width:0}@media (max-width:1100px){.ui-form-page{grid-template-columns:minmax(0,1fr)}.ui-form-side{position:static}.ui-form-side .ui-fnav{display:none}}.ui-fnav{padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.ui-fnav-label{margin:0 0 var(--space-2);color:var(--color-muted);font-size:var(--text-xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.04em}.ui-fnav ol{display:grid;grid-gap:2px;gap:2px;margin:0;padding:0;list-style:none}.ui-fnav a{display:flex;align-items:center;gap:10px;min-height:36px;padding:4px 8px;border-radius:var(--radius-sm);color:var(--color-ink);font-size:var(--text-sm);text-decoration:none}.ui-fnav a:hover{background:var(--color-surface-2)}.ui-fnav a:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.ui-fnav a[aria-current=step]{background:var(--area-tint,var(--color-primary-bg));color:var(--area-text,var(--color-primary-text));font-weight:var(--weight-semibold)}.ui-fnav-num{display:grid;place-items:center;width:22px;height:22px;flex-shrink:0;border-radius:50%;background:var(--color-surface-2);color:var(--color-muted);font-size:var(--text-xs);font-weight:var(--weight-bold)}.ui-fnav a[aria-current=step] .ui-fnav-num{background:var(--area-text,var(--color-primary-text));color:#fff}:root[data-theme=dark] .ui-fnav a[aria-current=step] .ui-fnav-num{color:#0f172a}.ui-fnav-title{flex:1 1;min-width:0}.ui-fnav-done{display:grid;place-items:center;color:var(--color-success)}.ui-fnav-done .nav-ico{width:15px;height:15px}.ui-fnav-todo{min-width:20px;padding:0 6px;border-radius:999px;background:var(--color-warning-bg);color:var(--color-warning-text);font-size:var(--text-xs);font-weight:var(--weight-bold);text-align:center}.ui-danger-zone{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4);padding:var(--space-4) var(--space-5);border:1px solid color-mix(in srgb,var(--color-danger) 40%,var(--color-border));border-radius:var(--radius-md);background:color-mix(in srgb,var(--color-danger-bg) 45%,var(--color-surface))}.ui-danger-zone h2{display:inline-flex;align-items:center;gap:6px;margin:0;color:var(--color-danger);font-size:var(--text-md)}.ui-danger-zone h2 .nav-ico{width:17px;height:17px}.ui-danger-zone p{margin:2px 0 0;color:var(--color-muted);font-size:var(--text-caption);max-width:60ch}.ui-danger-zone-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.ui-preview{padding:var(--space-4);border:1px solid var(--color-border);border-top:3px solid var(--area,var(--color-primary));border-radius:var(--radius-md);background:var(--color-surface)}.ui-preview-label{margin:0 0 var(--space-3);color:var(--color-muted);font-size:var(--text-xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.04em}.ui-preview-head{display:flex;align-items:center;gap:var(--space-3);min-width:0}.ui-preview-head>div{min-width:0}.ui-preview-mark{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;border-radius:12px;background:var(--area-tint,var(--color-primary-bg));color:var(--area-text,var(--color-primary-text));font-weight:var(--weight-bold)}.ui-preview-head b{display:block;font-size:var(--text-md);overflow-wrap:anywhere}.ui-preview-head>div>span{display:block;color:var(--color-muted);font-size:var(--text-caption)}.ui-preview dl{display:grid;grid-gap:6px;gap:6px;margin:var(--space-3) 0 0;padding-top:var(--space-3);border-top:1px solid var(--color-border);font-size:var(--text-caption)}.ui-preview dl div{display:flex;justify-content:space-between;gap:var(--space-3)}.ui-preview dt{color:var(--color-muted)}.ui-preview dd{margin:0;font-weight:var(--weight-semibold);text-align:right;overflow-wrap:anywhere}.ui-preview-note{margin:var(--space-3) 0 0;color:var(--color-muted);font-size:var(--text-xs)}.ui-fsec .field{min-width:0}.ui-fsec .field label{color:var(--color-ink)}.field-error{display:inline-flex;align-items:flex-start;gap:6px}.field-error .nav-ico{width:14px;height:14px;margin-top:2px;flex-shrink:0}.ui-fsec .subform{grid-column:span 12}.teacher-reset{display:grid;align-content:end;grid-gap:4px;gap:4px;justify-items:start}.field .ui-addon .ui-input:not([type=checkbox]):not([type=radio]):not([type=file]){min-height:0;border:0;border-radius:0;box-shadow:none;background:transparent}.field.invalid .ui-addon{border-color:var(--color-danger)}@media (max-width:640px){.ui-action-bar{flex-wrap:wrap}.ui-action-bar-status{flex:1 1 100%}.ui-action-bar-buttons{flex:1 1 100%;flex-shrink:1;flex-wrap:wrap}.ui-action-bar-buttons>*{flex:1 1 auto}}.class-chip,.class-chip.lead{background:var(--color-primary-bg);color:var(--color-primary-text)}.class-chip.lead{box-shadow:inset 0 0 0 1px var(--color-primary-text)}.test-details{border-top:3px solid var(--area)}.test-details .side-form{display:grid;grid-gap:var(--space-3);gap:var(--space-3)}.ui-phone{padding:var(--space-4);border:1px solid var(--color-border);border-top:3px solid var(--area,var(--color-primary));border-radius:var(--radius-md);background:var(--color-surface)}.ui-phone-frame{max-width:260px;margin:0 auto;padding:10px 10px 14px;border:6px solid #0f172a;border-radius:26px;background:var(--color-bg)}.ui-phone-bar{display:flex;justify-content:space-between;padding:0 6px 8px;color:var(--color-muted);font-size:11px;font-weight:var(--weight-semibold)}.ui-phone-card{display:grid;grid-gap:4px;gap:4px;padding:12px;border:1px solid color-mix(in srgb,var(--area,var(--color-primary)) 25%,var(--color-border));border-radius:14px;background:linear-gradient(160deg,var(--area-tint,var(--color-primary-bg)) 0,var(--color-surface) 70%)}.ui-phone-head{display:flex;align-items:center;gap:8px;margin-bottom:4px}.ui-phone-ico{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:var(--area-text,var(--color-primary-text));color:#fff}:root[data-theme=dark] .ui-phone-ico{color:#0f172a}.ui-phone-ico .nav-ico{width:15px;height:15px}.ui-phone-kicker{flex:1 1;min-width:0;color:var(--area-text,var(--color-primary-text));font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em}.ui-phone-chip,.ui-phone-kicker{font-weight:var(--weight-semibold)}.ui-phone-chip{padding:1px 8px;border-radius:999px;background:var(--color-surface);color:var(--color-ink);font-size:11px;white-space:nowrap}.ui-phone-title{font-size:15px;line-height:1.3;overflow-wrap:anywhere}.ui-phone-meta{color:var(--color-muted);font-size:var(--text-xs)}.ui-phone-body{margin:4px 0 0;color:var(--color-ink);font-size:13px;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden}.ui-phone-file{display:inline-flex;align-items:center;gap:6px;margin-top:6px;padding:4px 8px;border-radius:8px;background:var(--color-surface);color:var(--color-ink);font-size:var(--text-xs);overflow-wrap:anywhere}.ui-phone-file .nav-ico{width:13px;height:13px}.ui-field-label{font-size:var(--text-caption);font-weight:var(--weight-semibold);color:var(--color-ink)}.dropzone{border:2px dashed var(--color-border-control);border-radius:var(--radius-md);background:var(--color-surface-2)}.dropzone.drag,.dropzone:focus-within,.dropzone:hover{border-color:var(--area,var(--color-primary));background:var(--area-tint,var(--color-primary-bg))}.dropzone:focus-within{outline:2px solid var(--color-primary);outline-offset:2px}.dropzone-ico{color:var(--area-text,var(--color-primary-text))}.dropzone.has-file{border-style:solid;border-color:var(--color-success);background:var(--color-success-bg)}.dropzone.has-file .dropzone-ico{color:var(--color-success)}.fees-editor{min-width:0}.fees-error-line{margin:6px 0 0}.ui-fsec .fees-inst-list,.ui-fsec .fees-rows{display:grid;grid-gap:var(--space-2);gap:var(--space-2);padding:0}.ui-fsec .fees-note,.ui-fsec .fees-under{padding:0}.ui-fsec .fees-row{grid-template-columns:minmax(10rem,2fr) minmax(8rem,1.2fr) minmax(12rem,2fr) 2.5rem}.ui-fsec .fees-row-inst{grid-template-columns:minmax(8rem,1.5fr) minmax(9rem,1.2fr) 7.5rem minmax(7rem,1fr) 2.5rem}.fees-inst-card{padding:8px 8px 8px 12px;border:1px solid var(--color-border);border-left:4px solid var(--inst,var(--area));border-radius:var(--radius-sm);background:var(--color-surface)}.fees-inst-list .fees-row-head{padding:0 8px 0 16px}.fees-presets{margin-top:6px}.fees-total-pill{display:inline-flex;align-items:center;gap:6px;margin-left:auto;padding:4px 12px;border-radius:999px;background:var(--area-tint);color:var(--area-text);font-size:var(--text-caption);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fees-total-pill.is-ok{background:var(--color-success-bg);color:var(--color-success)}.fees-total-pill.is-bad{background:var(--color-danger-bg);color:var(--color-danger)}.fees-summary{display:grid;grid-gap:4px;gap:4px}.fees-summary-total{font-size:28px;line-height:1.1;color:var(--area-text);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fees-summary-bar{display:flex;gap:2px;height:12px;margin:var(--space-2) 0;border-radius:999px;overflow:hidden}.fees-summary-bar span{display:block;min-width:4px}.fees-summary-list{display:grid;grid-gap:8px;gap:8px;margin:0;padding:0;list-style:none;font-size:var(--text-caption)}.fees-summary-list li{display:grid;grid-template-columns:10px 1fr auto;align-items:start;grid-gap:8px;gap:8px}.fees-summary-list i{width:10px;height:10px;margin-top:4px;border-radius:3px}.fees-summary-list span{display:grid;min-width:0}.fees-summary-list small{color:var(--color-muted);font-size:var(--text-xs)}.fees-summary-list b{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fees-summary-check{display:inline-flex;align-items:center;gap:6px;margin:var(--space-2) 0 0;font-size:var(--text-caption);font-weight:var(--weight-semibold)}.fees-summary-check.is-ok{color:var(--color-success)}.fees-summary-check.is-bad{color:var(--color-danger)}.fees-summary-check .nav-ico{width:14px;height:14px}@media (max-width:760px){.ui-fsec .fees-row,.ui-fsec .fees-row-inst{grid-template-columns:1fr 1fr}.fees-total-pill{margin-left:0}}.fees-head-form{grid-template-columns:minmax(12rem,2fr) minmax(8rem,1fr) auto}.fees-head-form .ui-switch-row{grid-column:1/-1;grid-row:2}@media (max-width:760px){.fees-head-form{grid-template-columns:1fr}.fees-head-form .ui-switch-row{grid-row:auto}}.fees-suggest-chip{border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-ink);font-weight:var(--weight-medium);min-height:32px}.fees-suggest-chip:hover{border-color:var(--area,var(--color-primary));background:var(--area-tint,var(--color-surface-2))}.ui-addon:has(input:disabled){background:var(--color-surface-2);border-color:var(--color-border-strong)}.ui-addon:has(input:disabled) .ui-input{color:var(--color-muted)}.side-form.area-school{border-top:3px solid var(--area)}.side-form.area-school>h3{display:flex;align-items:center;gap:8px;color:var(--color-ink);font-size:var(--text-md);text-transform:none;letter-spacing:0}.side-form.area-school>h3:before{content:"+";display:grid;place-items:center;width:26px;height:26px;border-radius:8px;background:var(--area-tint);color:var(--area-text);font-size:18px;font-weight:var(--weight-bold);line-height:1}.rc-settings .rc-settings-grid{gap:var(--space-4);padding:var(--space-4)}.rc-settings .rc-settings-grid .pf-section:nth-child(n){padding:var(--space-4) var(--space-5);border:1px solid var(--color-border);border-top:3px solid var(--area);border-radius:var(--radius-md);background:var(--color-surface)}.rcs-sec-ico{background:var(--area-tint,var(--hue-green-tint));color:var(--area-text,var(--hue-green-text));box-shadow:none}.rcf-form{border-top:3px solid var(--area)}.rcf-form>section+section{border-top:1px solid var(--color-border)}@media (max-width:900px){.rc-settings .rc-settings-grid{grid-template-columns:1fr}}.link-btn:not(.danger){color:var(--color-primary-text)}.link-btn.danger{color:var(--color-danger)}.fees-master{margin-bottom:var(--space-4)}.fees-master .ui-switch-row{border-top:3px solid var(--area);padding:var(--space-4)}.fees-master .ui-switch-row-text b{font-size:var(--text-md)}.fees-channels{display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.fees-schedule-list{display:grid;grid-gap:8px;gap:8px;margin:0;padding:0;list-style:none;font-size:var(--text-caption)}.fees-schedule-list li{display:flex;gap:8px;align-items:flex-start}.fees-schedule-list .nav-ico{width:14px;height:14px;margin-top:2px;flex-shrink:0;color:var(--area-text)}.notif-rows{display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.plat-form-main.area-home>.ui-card{border-top:3px solid var(--area)}.plat-section .ui-fsec-head{margin-bottom:var(--space-3)}.plat-section .ui-fsec-text h2{font-size:var(--text-md);margin:0}.login-card .login-control input:not([type=checkbox]):not([type=radio]):not([type=file]),.login-card .login-control input:not([type=checkbox]):not([type=radio]):not([type=file]):focus,.login-card .login-control input:not([type=checkbox]):not([type=radio]):not([type=file]):hover{min-height:46px;border:0;border-radius:0;box-shadow:none;outline:none;background:transparent}.rcf-live{color:var(--color-muted);opacity:1}.fees-billing,.fees-payform{border-top:3px solid var(--area)}.fees-pay-pick{gap:6px;border:0;padding:0}.fees-pay-pick legend{margin-bottom:6px;padding:0;color:var(--color-ink);font-size:var(--text-caption);font-weight:var(--weight-semibold)}.fees-pay-pick .ui-check,.fees-pick-list .ui-check{width:100%;padding:8px 10px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);cursor:pointer}.fees-pay-pick .ui-check:hover,.fees-pick-list .ui-check:hover{border-color:var(--color-border-strong)}.fees-pay-pick .ui-check:has(input:checked),.fees-pick-list .ui-check:has(input:checked){border-color:var(--area);background:var(--area-tint)}.fees-pay-pick .ui-check input,.fees-pick-list .ui-check input{accent-color:var(--area-text)}.fees-pay-pick-row{display:flex;flex-wrap:wrap;gap:4px 8px;align-items:baseline;width:100%}.fees-pay-pick-row b{margin-left:auto}.fees-pick-list{gap:6px var(--space-2);padding:6px}.fees-payform .ui-addon{min-height:48px}.fees-payform .ui-addon .ui-addon-part{font-size:var(--text-lg)}.fees-who-option:hover{border-color:var(--color-border-strong)}.fees-who-option.on{border-color:var(--area);box-shadow:inset 0 0 0 1px var(--area);background:var(--area-tint)}.fees-who-option input{accent-color:var(--area-text)}.fees-who-option:has(input:focus-visible){outline:2px solid var(--color-primary);outline-offset:2px}.fees-skip{display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.fees-skip .date-picker{max-width:16rem}.date-trigger,.field input:not([type=checkbox]):not([type=radio]):not([type=file]),.field select,.field textarea,.select-trigger,.ui-addon-part,.ui-choice-opt,.ui-input,.ui-search input,.ui-switch-row-text b{font-size:15px}