/* Compact desktop typography; retain comfortable touch controls. */
:root{font-size:14px;--muted:#566b80;--accent:#24689e}body{font-size:1rem;line-height:1.55;color:#253e55}.shell{grid-template-columns:280px minmax(0,1fr)}.sidebar{width:280px;padding:24px 18px}.brand small{font-size:.75rem;letter-spacing:1px}.school-card p,.school-card h3{font-size:.875rem}.school-card select{font-size:1rem;min-height:48px}.nav-group{font-size:.75rem;font-weight:700;letter-spacing:1px;color:#5f7183;margin-top:24px}.nav a{font-size:1rem;min-height:48px;padding:11px 13px;gap:12px;color:#445e74}.nav a.active{background:#e6f0fc;color:#1e5c94;border-left:3px solid #286da6}.nav-count{font-size:.875rem}.sidebar-foot,.sidebar-foot small{font-size:.875rem;color:#5a7184}.topbar{height:88px;padding:0 30px}.breadcrumbs{font-size:.9375rem}.content{padding:30px;max-width:1800px}.heading h1{font-size:1.875rem;line-height:1.3}.heading p,.body-copy{font-size:1rem;line-height:1.65;color:#526b80}.eyebrow{font-size:.75rem;letter-spacing:1px}.card{border-color:#dce5ed;border-radius:13px}.card h2{font-size:1.25rem;line-height:1.4}.card h3{font-size:1.0625rem}.card-pad{padding:26px}.metric .tag,.metric .foot,.todo small,.chart-caption,.date-chip,.footer,.workspace-strip,.hint,.storage-note,.subline{font-size:.875rem;line-height:1.6;color:#566d81}.metric .value{font-size:2rem}.todo{font-size:1rem;min-height:76px}.workspace-strip{align-items:center;gap:16px;flex-wrap:wrap}.workspace-strip>span{max-width:none}.btn{font-size:1rem;min-height:46px;padding:11px 17px;border-radius:8px;justify-content:center;border-color:#b6c9d9;color:#2d526e}.btn.primary{background:#286da6;border-color:#286da6;color:#fff;font-weight:700}.btn.soft{background:#e7f0f9;color:#205d90;border-color:#c1d6e9}.btn.danger{color:#a52936;border-color:#d1a1a7}.text-btn,.name-link{font-size:1rem!important;min-height:44px}.btn:disabled{opacity:.55}.input,.status-select,.pagination select{font-size:1rem;line-height:1.5;min-height:48px;border-color:#b9cbd9;padding:11px 13px;border-radius:8px;color:#2c475c}.form-grid label,.filter-grid label,.filter-row label,.operation-filter label,.settings-preference,#schoolSettings label,#permissionPreferences label{font-size:.9375rem;line-height:1.5;font-weight:600;color:#405d72}.form-grid,.filter-grid{gap:20px}.form-section-title{font-size:1.0625rem;margin-top:24px}.filters{padding:24px}.filters .label{font-size:.8125rem;color:#526c80}.filter-actions{margin-top:20px;gap:12px}.tabs{gap:8px;scrollbar-width:thin}.tabs button,.profile-tabs a{font-size:1rem;min-height:52px;padding:14px 16px}.tabs button.selected,.profile-tabs a.selected{color:#1c5f97;border-color:#246da6;font-weight:700}.table-toolbar{font-size:1rem;padding:20px 24px;gap:15px}.table-wrap{overflow:auto;max-width:100%}th{font-size:.9375rem;color:#405a70;padding:15px 18px;line-height:1.5}td{font-size:1rem;padding:16px 18px;line-height:1.5;color:#304b60}th button{font-size:inherit;min-height:32px}.pill{font-size:.8125rem;padding:7px 10px;line-height:1.4}.pill.blue{color:#245c90}.pill.red{color:#9b3038}.pill.amber{color:#7b5716}.pagination{font-size:.9375rem;gap:18px;padding:20px 24px}.page-buttons button{font-size:1rem;min-width:44px;min-height:44px}.pagination select{min-height:44px;font-size:1rem}.profile-field span,.finance-summary small{font-size:.875rem}.profile-field strong{font-size:1.0625rem}.profile-grid{gap:22px}.notice,.error,.price-preview{font-size:1rem;line-height:1.65}.header-control{font-size:.9375rem;min-height:46px;padding:9px}.icon-control{width:46px}.header-control svg{width:25px;height:25px}.language-control svg{width:14px;height:14px}.profile-control .avatar{width:44px;height:44px;font-size:.9375rem}.user-name{font-size:1rem}.user-name small,.profile-control .user-name small{font-size:.8125rem}.header-dropdown>button,.header-dropdown>p{font-size:1rem;min-height:48px}.notification-title{font-size:1rem}.notification-title .btn{font-size:.875rem;min-height:40px}.notification-item b{font-size:.9375rem}.notification-item small{font-size:.875rem;color:#5c7184}.notification-count{font-size:.75rem;min-width:22px}.notification-menu{width:390px}.header-dropdown.profile-menu{width:280px}dialog{width:min(920px,calc(100vw - 32px));border-radius:15px;max-height:calc(100dvh - 36px)}.modal-header{padding:22px 26px}.modal-header h2{font-size:1.375rem}.modal-header [data-close]{font-size:1.75rem;min-width:44px;min-height:44px}.modal-body{padding:26px}.modal-footer{padding:20px 26px;gap:12px}.invoice-editor-row label{display:flex;flex-direction:column;gap:6px;font-size:.875rem}.invoice-editor-row .input{font-size:1rem}.invoice-editor-labels{display:none}.invoice-editor-row{grid-template-columns:minmax(180px,1fr) 85px 130px 100px 44px;gap:12px;align-items:end;margin-bottom:18px}.remove-item{min-height:48px;font-size:1.5rem}.simple-search .input{min-height:48px}.operation-details dt{font-size:.875rem}.operation-details dd{font-size:1rem}#schoolSettings .ss-layout{grid-template-columns:235px minmax(0,1fr);gap:24px}#schoolSettings .ss-nav button{font-size:1rem;min-height:52px;padding:14px 16px}#schoolSettings .ss-panel{padding:26px}#schoolSettings .ss-panel h2{font-size:1.25rem}#schoolSettings .ss-panel h3{font-size:1.0625rem}#schoolSettings .ss-note,#schoolSettings .ss-empty{font-size:.9375rem}#schoolSettings input[type=checkbox],#permissionPreferences input[type=checkbox]{width:22px;height:22px}#schoolSettings .ss-check{min-height:48px}#schoolSettings .ss-row{gap:16px;align-items:end}#schoolSettings .ss-row .ss-buttons{flex-wrap:wrap}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #af6a12;outline-offset:3px}input[type=checkbox]{accent-color:#286da6}html[data-theme=dark] .hint,html[data-theme=dark] .footer,html[data-theme=dark] .subline,html[data-theme=dark] .form-grid label,html[data-theme=dark] #schoolSettings label{color:#b5c8d7}html[data-theme=dark] .ss-nav button.selected{background:#31485e;color:#d6e8f6}
@media(max-width:1200px){.shell{grid-template-columns:250px minmax(0,1fr)}.sidebar{width:250px}.content{padding:24px}#schoolSettings .ss-layout{grid-template-columns:205px minmax(0,1fr);gap:20px}.finance-summary{flex-wrap:wrap}.invoice-editor-row{grid-template-columns:minmax(140px,1fr) 75px 110px 90px 44px}}
@media(max-width:900px){.shell{display:block}.sidebar{display:none;width:280px;z-index:25;box-shadow:0 0 0 100vw #23395177}.sidebar.open{display:block}.main{width:100%}.mobile-menu{display:block;font-size:1.5rem;min-width:44px;min-height:44px}.topbar{height:76px;padding:0 14px}.breadcrumbs,.user-name{display:none}.userbar{gap:4px}.language-control{font-size:.875rem}.icon-control{width:44px}.header-control{min-height:44px;padding:7px}.header-control svg{width:23px;height:23px}.language-control svg{display:none}.content{padding:22px 16px}.heading{flex-wrap:wrap}.heading h1{font-size:1.65rem}.heading .actions{width:100%;gap:10px}.heading .actions .btn{white-space:normal}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.metric{padding:18px}.metric .value{font-size:1.6rem}.filter-grid,.form-grid,.settings-grid{grid-template-columns:1fr}.filter-grid{gap:18px}.card-pad,.filters{padding:20px}.tabs{padding:0 10px}.tabs button{padding:14px 12px}.ss-nav{position:static!important}#schoolSettings .ss-layout{display:block}#schoolSettings .ss-nav{display:flex;overflow:auto;gap:8px;margin-bottom:20px}#schoolSettings .ss-nav button{white-space:nowrap}#schoolSettings .ss-row{display:grid;grid-template-columns:1fr}#schoolSettings label{min-width:0!important}.modal-body{padding:20px}.invoice-editor-row{grid-template-columns:1fr 1fr;gap:12px;border:1px solid #d4e0e8;padding:16px;border-radius:10px}.invoice-editor-row label:first-child{grid-column:1/-1}.invoice-editor-row .remove-item{justify-self:end;width:48px}.invoice-editor-row .input{font-size:1rem;padding:11px}.schedule-editor{grid-template-columns:1fr}.notification-menu{width:min(390px,calc(100vw - 24px));top:76px}.workspace-strip{font-size:.875rem}.workspace-strip>span{max-width:100%}.finance-summary{display:grid;grid-template-columns:1fr 1fr}.finance-summary b{font-size:1.25rem}.ss-panel{overflow:visible}.table-toolbar{flex-wrap:wrap}.footer{flex-wrap:wrap;font-size:.875rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

.nav-search{display:flex;flex-direction:column;gap:8px;margin:18px 5px 10px;font-size:.875rem;font-weight:600;color:#49637a}.nav-search .input{width:100%;font-size:1rem}.nav a[hidden],.nav-group[hidden]{display:none}#toast{font-size:1rem;line-height:1.6;max-width:min(520px,calc(100vw - 32px));padding:16px 22px}html[data-theme=dark] .nav-search{color:#bfd2df}

:root{--brand-purple:#271d52;--brand-gold:#ffa70f}.school-welcome{display:flex;align-items:center;justify-content:space-between;background:#271d52;border-radius:16px;color:white;margin:0 0 24px;overflow:hidden;min-height:170px}.school-welcome>div{padding:28px}.school-welcome h2{font-size:24px;color:white;margin:8px 0}.school-welcome .eyebrow{color:#ffd078}.school-welcome p{font-size:16px;color:#e3def5;margin:0}.school-welcome>img{width:240px;height:180px;object-fit:cover}.brand-mark{display:block;width:52px;height:52px;object-fit:contain;border-radius:10px;flex-shrink:0}.brand{color:#271d52!important}.btn.primary{background:#493478;border-color:#493478}.nav a.active{background:#f0eafa;border-left-color:#73549e;color:#493478}html[data-theme=dark] .brand{color:#e3d6fa!important}@media(max-width:650px){.school-welcome>div{padding:22px}.school-welcome h2{font-size:21px}.school-welcome>img{width:110px;height:190px}.school-welcome p{font-size:15px}.brand-mark{width:48px;height:48px}}

/* Keep mobile form fields readable without browser focus zoom. */
@media(max-width:900px){:root{font-size:15px}.input,.status-select,.pagination select,.invoice-editor-row .input,.nav-search .input,.school-card select{font-size:16px}}
