/* Website and school workspace share the same blue, navy and slate palette. */
:root{--primary-color:#2563eb;--blue:#2563eb;--blue2:#1d4ed8;--surface:#fff;--surface-raised:#f8fafc;--focus:#2563eb;--scroll-thumb:#94a3b8;--scroll-track:#edf2f7;color-scheme:light}
.theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;min-height:46px;border:1px solid #ffffff70;border-radius:12px;color:#fff;background:#ffffff12;font:inherit;font-weight:700;cursor:pointer;white-space:nowrap;transition:background .2s}
.theme-toggle:hover{background:#ffffff25}.theme-toggle svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.theme-sun{display:none}
:root[data-theme=dark] .theme-moon{display:none}:root[data-theme=dark] .theme-sun{display:block}
.theme-toggle:focus-visible{outline:3px solid #93c5fd;outline-offset:4px}
.btn-navy{background:var(--primary-color);color:#fff}.btn-navy:hover{background:#1d4ed8}
.portal-card :focus-visible{outline-color:var(--focus)}
:root[data-theme=dark]{color-scheme:dark;--navy:#e2e8f0;--navy2:#0f172a;--blue:#93c5fd;--blue2:#bfdbfe;--sky:#bfdbfe;--gold:#fbbf24;--ink:#f1f5f9;--ink2:#cbd5e1;--ink3:#94a3b8;--line:#334155;--line2:#243247;--panel:#1e293b;--panel2:#0f172a;--surface:#111d30;--surface-raised:#1e293b;--focus:#93c5fd;--scroll-thumb:#64748b;--scroll-track:#111d30;--ok:#86efac;--warn:#fdba74}
[data-theme=dark] body{background:#0b1220;color:var(--ink)}
[data-theme=dark] .hero{background:linear-gradient(115deg,#0f172a,#15335e,#1e3a5f)}
[data-theme=dark] .hero::after{background:linear-gradient(90deg,#60a5fa,#93c5fd,transparent)}
[data-theme=dark] .school-logo,[data-theme=dark] .app-brand-logo{box-shadow:0 8px 28px #0004}
[data-theme=dark] .btn-navy{background:#2563eb;color:#fff;box-shadow:0 5px 16px #2563eb22}
[data-theme=dark] .btn-navy:hover{background:#1d4ed8}
[data-theme=dark] .btn-gold{background:#fbbf24;color:#332200;box-shadow:none}[data-theme=dark] .btn-gold:hover{background:#fcd34d}
[data-theme=dark] .btn-ghost,[data-theme=dark] .btn-line{background:var(--surface-raised);color:var(--ink);border-color:var(--line);box-shadow:none}
[data-theme=dark] .btn-ghost:hover,[data-theme=dark] .btn-line:hover{background:#26374e;border-color:#64748b}
[data-theme=dark] #parentPortal,[data-theme=dark] #parentPortal:has(#loginArea:not([hidden])){background:#0b1220;border:0}
[data-theme=dark] .login-form>p{color:var(--ink2)}
[data-theme=dark] .portal-card,[data-theme=dark] .card,[data-theme=dark] .dl,[data-theme=dark] .dl.primary,[data-theme=dark] .admission-card{background:var(--surface);border-color:var(--line);box-shadow:0 12px 32px #0002}
[data-theme=dark] #parentPortal .portal-card:has(#loginArea:not([hidden])){background:transparent;border:0;box-shadow:none}
[data-theme=dark] .portal-card input,[data-theme=dark] .portal-card select,[data-theme=dark] .portal-card textarea,[data-theme=dark] .admission-field input,[data-theme=dark] .admission-field select,[data-theme=dark] .admission-track-row input{background:var(--surface-raised);border-color:var(--line);color:var(--ink);box-shadow:none}
[data-theme=dark] input::placeholder{color:var(--ink3);opacity:1}[data-theme=dark] input:focus,[data-theme=dark] select:focus{border-color:var(--focus)}
[data-theme=dark] input:-webkit-autofill{-webkit-text-fill-color:#f1f5f9;box-shadow:0 0 0 1000px #1e293b inset}
[data-theme=dark] .portal-tabs button[aria-pressed=true],[data-theme=dark] .children button[aria-pressed=true]{background:#2563eb;color:#fff;border-color:#3b82f6;box-shadow:none}
[data-theme=dark] .portal-error{background:#451f25;color:#fecaca}[data-theme=dark] .ios-logo{color:#e2e8f0}[data-theme=dark] .android-logo{color:#86efac}
[data-theme=dark] #admissionSection,[data-theme=dark] #schoolInfo{background:#0f172a}
[data-theme=dark] .admission-tracking{background:var(--surface-raised);border-color:var(--line)}[data-theme=dark] .school-gallery figcaption{color:var(--ink3)}
[data-theme=dark] footer{background:#0b1220;border-top:1px solid var(--line2);color:var(--ink3)}[data-theme=dark] .qrBox{background:#fff;border-color:#fff}
[data-theme=dark] .sp-reader-dialog{background:#0b1220;color:var(--ink)}
[data-theme=dark] .sp-reader-tools,[data-theme=dark] .sp-reader-viewport,[data-theme=dark] .sp-file-preview .sp-readable-text{background:var(--surface);color:var(--ink);border-color:var(--line)}
[data-theme=dark] .sp-reader-tools .sp-button,[data-theme=dark] .sp-reader-width select,[data-theme=dark] .sp-reader-dialog .sp-button{background:var(--surface-raised);color:var(--ink);border-color:var(--line)}
[data-theme=dark] .sp-reader-dialog .sp-reader-top>.sp-button:first-child{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}
[data-theme=dark] .sp-readable-text h1,[data-theme=dark] .sp-readable-text h4{color:var(--ink)}
[data-theme=dark] .sp-reader-resource{border-color:var(--line)}[data-theme=dark] .sp-reader-resource>a{color:var(--blue)}[data-theme=dark] .sp-reader-dialog .sp-note{color:var(--ink2)}
.sp-reader-dialog,.sp-reader-dialog *,#platformArea .sp-learning-workspace,#platformArea .sp-learning-workspace *{scrollbar-color:var(--scroll-thumb) var(--scroll-track)}
.sp-reader-dialog ::-webkit-scrollbar-track,#platformArea ::-webkit-scrollbar-track{background:var(--scroll-track)}
.sp-reader-dialog ::-webkit-scrollbar-thumb,#platformArea ::-webkit-scrollbar-thumb{background:var(--scroll-thumb);border-color:var(--scroll-track)}
@media(max-width:560px){.theme-toggle{width:100%;min-height:44px}}
@media(prefers-reduced-motion:reduce){.theme-toggle{transition:none}}
