/* School screen design system. Official document and print typography is separate. */
@font-face{font-family:'IBM Plex Sans Thai';src:url('fonts/ibm-plex-sans-thai-400.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:'IBM Plex Sans Thai';src:url('fonts/ibm-plex-sans-thai-500.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:'IBM Plex Sans Thai';src:url('fonts/ibm-plex-sans-thai-600.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:'IBM Plex Sans Thai';src:url('fonts/ibm-plex-sans-thai-700.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
:root{--school-purple:#8236b5;--school-purple-dark:#6d289b;--school-sidebar:#342047;--school-ink:#241b2d;--school-muted:#736a7d;--school-line:#e8e1ee;--school-soft:#f0e6f8;--school-canvas:#f7f5fa;--school-radius:16px;--school-font:'IBM Plex Sans Thai',Tahoma,sans-serif}
@media screen{
html[data-school-ui]{color-scheme:light;--purple:var(--school-purple);--purple-deep:var(--school-sidebar);--purple-light:var(--school-soft);--primary:var(--school-purple);--pri:var(--school-purple);--pri2:var(--school-purple-dark);--ink:var(--school-ink);--text:var(--school-ink);--muted:var(--school-muted);--line:var(--school-line);--border:var(--school-line);--soft:var(--school-soft);--surface:#fff;--card:#fff;--bg:var(--school-canvas);--radius:var(--school-radius);--rad:var(--school-radius)}
html[data-school-ui] body{margin:0;color:var(--school-ink);background:var(--school-canvas);font:400 16px/1.6 var(--school-font);font-family:var(--school-font)!important}
html[data-school-ui] body *,html[data-school-ui] body *::before,html[data-school-ui] body *::after{box-sizing:border-box}
html[data-school-ui] [hidden]{display:none!important}
html[data-school-ui] :where(button,input,select,textarea):not(:where(.word-a4,.word-page,.word-content,.budget-sheet,.pay-paper,.ledger-sheet,.print-page) *){font-family:var(--school-font)!important}
html[data-school-ui] :is(h1,.forms-heading h1,.pay-heading h1,.ph-left h1,.welcome-row h1):not(:where(.word-a4,.word-page,.word-content,.budget-sheet,.pay-paper,.ledger-sheet,.print-page) *){font-family:var(--school-font);font-size:28px;font-weight:700;line-height:1.3;color:var(--school-ink)}
html[data-school-ui] :is(h2,.panel-heading h2,.panel-title h2,.card-title):not(:where(.word-a4,.word-page,.word-content,.budget-sheet,.pay-paper,.ledger-sheet,.print-page) *){font-family:var(--school-font);font-size:20px;font-weight:600;line-height:1.4}
html[data-school-ui] :is(h3,.group h3):not(:where(.word-a4,.word-page,.word-content,.budget-sheet,.pay-paper,.ledger-sheet,.print-page) *){font-family:var(--school-font);font-size:16px;font-weight:600}
html[data-school-ui] :is(.panel,.card,.card-sm,.forms-panel,.pay-panel,.fields,.summary-card,.system-card,.stat,.stat-card){border-radius:16px;border-color:var(--school-line);box-shadow:0 3px 14px #34204705}
html[data-school-ui] :is(.sidebar,.app-shell>.sidebar,#budgetSidebar){background:var(--school-sidebar);color:#fff}
html[data-school-ui] :is(.sidebar nav a,.sidebar .nav-link,.sidebar .sb-item,#budgetSidebar nav a){font:500 14px/1.6 var(--school-font);border-radius:10px;color:#fff;min-height:42px}
html[data-school-ui] :is(.sidebar nav a.active,.sidebar .nav-link.active,.sidebar .sb-item.active,#budgetSidebar nav a.active){background:var(--school-purple);color:#fff;box-shadow:none}
html[data-school-ui] :is(.sidebar small,.sidebar .nav-label,.sidebar .sb-label){color:#dfd0ec;font-family:'IBM Plex Sans Thai',Tahoma,sans-serif;font-size:13px}
html[data-school-ui] :is(.muted,.fine-print,.forms-note,.pay-note,.notice,.eyebrow,.page-field-count,.history-status,.history-empty,.table-help){font-family:'IBM Plex Sans Thai',Tahoma,sans-serif;font-size:13px;line-height:1.7}
html[data-school-ui] :is(.topbar,.school-topbar,.embedded-toolbar){background:#fff;border-color:var(--school-line);box-shadow:none}
html[data-school-ui] :is(.button,.btn,.icon-button,.back-to-overview,.school-portal-link,.page-back-btn){font-family:'IBM Plex Sans Thai',Tahoma,sans-serif;font-size:14px;min-height:42px;border-radius:10px;box-shadow:none}
html[data-school-ui] :is(.button.primary,.btn-pri,.btn-gold,.history-primary,.primary):not(:where(.word-a4,.word-page,.budget-sheet,.pay-paper,.ledger-sheet) *){background:var(--school-purple);border-color:var(--school-purple);color:#fff}
html[data-school-ui] :is(input,select,textarea):not([type=checkbox]):not([type=radio]):not([type=color]):not(:where(.sched-tbl,.teacher-builder-table,.auto-result-tbl,.word-a4,.word-page,.budget-sheet,.pay-paper,.ledger-sheet) *){font-size:16px;line-height:1.5;min-height:42px;border-radius:9px;border-color:#d9cfdf;color:var(--school-ink);background:#fff}
html[data-school-ui] :is(label,.field label,.fg label,.fields label):not(:where(.word-a4,.word-page,.budget-sheet,.pay-paper,.ledger-sheet) *){font-family:var(--school-font);font-size:14px;line-height:1.6}
html[data-school-ui] table:not(:where(.sched-tbl,.teacher-builder-table,.auto-result-tbl)):not(:where(.word-a4,.word-page,.word-content,.budget-sheet,.pay-paper,.ledger-sheet,.print-page) *){font-family:var(--school-font);font-size:14px}
html[data-school-ui] table:not(:where(.sched-tbl,.teacher-builder-table,.auto-result-tbl)):not(:where(.word-a4,.word-page,.word-content,.budget-sheet,.pay-paper,.ledger-sheet,.print-page) *) :is(th,td){font-family:var(--school-font);font-size:14px}
html[data-school-ui] :is(.student-name strong,.person strong,.teacher-name,.stat-label,.summary-top,.system-card h3,.quick-action strong,.history-name,.staff-systems .system-card-description){font-size:14px;line-height:1.6}
html[data-school-ui] :is(.student-name small,.system-card p,.quick-action small,.summary-card small,.date-chip small,.account-copy small,.topbar-title,.footer,.page-footer){font-size:13px;line-height:1.6}
html[data-school-ui] .auth-gate{background:var(--school-canvas)}
html[data-school-ui] :is(button,a,input,select,textarea,summary,[role=button]):focus-visible{outline:3px solid #be94db;outline-offset:3px}
@media(max-width:760px){html[data-school-ui] :is(h1,.forms-heading h1,.pay-heading h1,.ph-left h1,.welcome-row h1):not(:where(.word-a4,.word-page,.word-content,.budget-sheet,.pay-paper,.ledger-sheet,.print-page) *){font-size:24px}html[data-school-ui] :is(.button,.btn,.icon-button){min-height:44px}html[data-school-ui] .sidebar nav a{font-size:14px}html[data-school-ui] .embedded-toolbar small{font-size:13px}html[data-school-ui] .embedded-toolbar strong{font-size:14px}}
}

@media screen{html[data-school-ui] button:not(:where(.sidebar,#budgetSidebar,.sched-tbl,.teacher-builder-table,.auto-result-tbl,.status-buttons,.word-a4,.word-page,.budget-sheet,.pay-paper,.ledger-sheet) *):not([aria-pressed]){font-family:var(--school-font);border-radius:9px;min-height:42px}html[data-school-ui] :is(.box,.login-card){border-color:var(--school-line);border-radius:16px}html[data-school-ui] :is(.breadcrumbs,.today-heading,.school-account,.brand small,.sidebar-date,.sub-nav a){font-family:var(--school-font);font-size:13px}html[data-school-ui] :is(.quick-action strong,.system-card h3,.status-button,.student-name strong){font-size:14px}html[data-school-ui] .embedded-toolbar{min-height:52px;height:auto}html[data-school-ui] .auth-gate h1{font-size:28px}@media(min-width:761px){html[data-school-ui] :is(.sidebar,#budgetSidebar){width:260px}html[data-school-ui] :is(.workspace,.main-area){margin-left:260px}html[data-school-ui] .embedded-view{left:260px}}@media(max-width:760px){html[data-school-ui] :is(.workspace,.main-area){margin-left:0}html[data-school-ui] .embedded-view{left:0}html[data-school-ui] .breadcrumbs{font-size:12px}html[data-school-ui] .auth-gate h1{font-size:24px}}}

@media screen{html[data-school-ui] :is(.brand img,.sidebar-brand img,.budget-sidebar-brand img){animation:none;transform:none}html[data-school-ui] .portal-home-link{font-family:var(--school-font);color:var(--school-purple)}}
