:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}body{margin:0}#root{text-align:left;box-sizing:border-box;flex-direction:column;width:100%;min-width:100%;min-height:100svh;margin:0;display:flex}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}*{box-sizing:border-box}:root{--font-family-base:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--text-xs:12px;--text-sm:13px;--text-base:14px;--text-md:16px;--text-lg:18px;--text-xl:22px;--text-2xl:28px;--text-hero:32px}body{color:#111827;min-width:320px;font-family:var(--font-family-base);font-size:var(--text-base);line-height:1.5;font-weight:var(--font-weight-regular);text-rendering:optimizelegibility;background:#f4f7fb;margin:0;overflow-x:hidden}button,input{font:inherit}button{cursor:pointer}.login-page{color:#0b1b3d;background:linear-gradient(135deg,#eff7ff 0%,#f8fbff 50%,#eef6ff 100%);grid-template-columns:minmax(460px,.9fr) minmax(560px,1.1fr);height:100svh;min-height:0;display:grid;position:relative;overflow:hidden}.login-brand-panel{background:linear-gradient(#ffffff80,#d1e5ffb8);align-items:stretch;height:100svh;min-height:0;padding:24px 42px 76px;display:grid;overflow:hidden}.login-brand-content{grid-template-rows:auto auto auto minmax(275px,1fr);align-content:stretch;width:min(560px,100%);height:100%;margin:0 auto;display:grid}.login-brand-mark{align-items:center;margin-bottom:20px;display:flex}.product-logo-crop{flex:none;display:block;position:relative;overflow:hidden}.product-logo-crop img{height:auto;display:block;position:absolute;left:0}.login-product-logo{width:320px;height:76px}.login-product-logo img{width:320px;top:-34px}.login-copy h1{color:#0d1b42;max-width:455px;margin:0;font-size:29px;font-weight:950;line-height:1.15}.login-copy h1 span{color:#126df1}.login-copy p{color:#253449;max-width:450px;margin:12px 0 0;font-size:14px;font-weight:650;line-height:1.55}.login-feature-list{gap:9px;margin-top:18px;display:grid}.login-feature-list article{grid-template-columns:42px minmax(0,1fr);align-items:center;gap:12px;display:grid}.login-feature-list article>span,.login-security-card>span,.login-trust-card>span{color:#126df1;background:#fff;border-radius:12px;place-items:center;width:42px;height:42px;display:grid;box-shadow:0 10px 24px #23528e1a}.login-feature-list svg,.login-security-card svg,.login-trust-card svg,.login-input svg,.login-secure-divider svg,.login-submit svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.login-feature-list strong{color:#0d1b42;font-size:13px;font-weight:950;display:block}.login-feature-list p{color:#344767;margin:3px 0 0;font-size:11.5px;font-weight:650;line-height:1.45}.school-illustration{place-items:end center;height:100%;min-height:275px;margin-top:8px;display:grid;position:relative;overflow:visible}.school-illustration img{object-fit:contain;object-position:center bottom;filter:drop-shadow(0 20px 34px #23528e29);width:min(620px,126%);height:calc(100% - 18px);display:block}.login-security-card{z-index:2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0d;border:1px solid #ffffff38;border-radius:12px;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;margin-top:0;padding:8px 12px;display:grid;position:absolute;bottom:8px;left:clamp(6px,4%,22px);right:clamp(6px,4%,22px);box-shadow:0 18px 42px #23528e1f}.login-security-card strong,.login-trust-card strong{color:#0d1b42;font-size:14px;font-weight:950}.login-security-card p,.login-trust-card p{color:#344767;margin:3px 0 0;font-size:11px;font-weight:650;line-height:1.35}.login-security-card>span{border-radius:10px;width:34px;height:34px}.login-security-card svg{width:17px;height:17px}.login-form-panel{grid-template-columns:minmax(0,1fr);place-items:center;min-width:0;height:100svh;min-height:0;padding:28px 64px 76px;display:grid}.login-mobile-brand{display:none}.login-card{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffeb;border:1px solid #e1e9f5;border-radius:16px;gap:16px;width:min(620px,100%);min-width:0;max-height:calc(100svh - 96px);padding:38px 48px 32px;display:grid;box-shadow:0 28px 76px #0f172a24}.login-card-head{text-align:center;margin-bottom:8px}.login-card-head h2{color:#0d1b42;margin:0;font-size:29px;font-weight:950}.login-card-head p{color:#52617a;margin:7px 0 0;font-size:15px;font-weight:700}.login-card label{color:#172033;gap:9px;font-size:14px;font-weight:900;display:grid}.login-input{color:#5d6d86;background:#fff;border:1px solid #d6e0ed;border-radius:8px;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:14px;height:50px;padding:0 16px;display:grid}.login-input:focus-within{border-color:#1478f2;box-shadow:0 0 0 3px #1478f21f}.login-input input{color:#0f172a;background:0 0;border:0;outline:0;min-width:0;font-size:15px;font-weight:650}.password-visibility-button{color:#7b8797;background:0 0;border:0;border-radius:8px;flex:none;place-items:center;width:30px;height:30px;display:inline-grid}.password-visibility-button:hover,.password-visibility-button:focus-visible{color:#1478f2;background:#eef5ff}.login-options{justify-content:space-between;align-items:center;gap:16px;display:flex}.auth-error{color:#c81e3a;font-size:var(--text-sm);font-weight:var(--font-weight-semibold);background:#fff0f1;border:1px solid #ffc9d1;border-radius:8px;padding:11px 12px;line-height:1.4}.auth-success{color:#116c3d;font-size:var(--text-sm);font-weight:var(--font-weight-semibold);background:#eefaf2;border:1px solid #b9e7c9;border-radius:8px;padding:11px 12px;line-height:1.4}.login-options label{color:#253449;align-items:center;gap:9px;font-size:14px;font-weight:750;display:flex}.login-options input{accent-color:#1478f2;width:16px;height:16px}.login-options button,.login-help button{color:#0f61c8;font-size:inherit;background:0 0;border:0;font-weight:900}.login-submit{color:#fff;background:linear-gradient(135deg,#1677ff,#0f61df);border:0;border-radius:8px;justify-content:center;align-items:center;gap:14px;height:54px;font-size:17px;font-weight:900;display:inline-flex;box-shadow:0 16px 34px #1478f242}.login-submit:hover{filter:brightness(1.03)}.login-secure-divider{color:#52617a;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;font-size:13px;font-weight:750;display:grid}.login-secure-divider>span{background:#dce5f0;height:1px}.login-secure-divider p{white-space:nowrap;align-items:center;gap:8px;margin:0;display:inline-flex}.login-trust-card{background:#f2f7ff;border-radius:12px;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:14px;padding:14px;display:grid}.login-help{color:#52617a;text-align:center;margin:0;font-size:14px;font-weight:700}.login-footer{color:#40506a;text-align:center;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:8px;font-size:12px;font-weight:700;display:flex;position:absolute;bottom:12px;left:0;right:0}.login-footer nav{flex-wrap:wrap;justify-content:center;gap:18px;display:flex}.login-footer button{color:#40506a;pointer-events:auto;background:0 0;border:0;align-items:center;gap:7px;font-size:12px;font-weight:800;display:inline-flex}.login-footer button svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.login-footer button:hover{color:#126df1}.global-loader{z-index:9999;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f4f7fbc7;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.global-loader-panel{color:#0d1b42;background:#fffffff5;border:1px solid #d6e0edf2;border-radius:14px;justify-items:center;gap:18px;width:min(430px,100%);padding:24px;display:grid;box-shadow:0 28px 76px #0f172a2e}.global-loader-mark{justify-content:center;align-items:center;width:100%;display:flex}.global-loader-core,.loader-node{place-items:center;display:grid}.loader-product-logo{width:230px;height:55px}.loader-product-logo img{width:230px;top:-24px}.global-loader-core svg,.loader-node svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.global-loader-orbit{background:#f6f9fd;border-radius:12px;grid-template-columns:repeat(4,48px);justify-content:center;align-items:center;gap:10px;width:min(275px,100%);padding:12px;display:grid}.global-loader-core{color:#fff;background:#0d1b42;border-radius:14px;grid-column:1/-1;justify-self:center;width:64px;height:64px;animation:1.45s ease-in-out infinite loaderCorePulse;box-shadow:0 16px 34px #0d1b422e}.global-loader-core svg{width:29px;height:29px}.loader-node{background:#fff;border-radius:12px;width:48px;height:48px;animation:1.15s ease-in-out infinite loaderTileLift;box-shadow:0 10px 24px #23528e1c}.loader-node.students{color:#126df1}.loader-node.fees{color:#16875a;animation-delay:.12s}.loader-node.attendance{color:#7153df;animation-delay:.24s}.loader-node.reports{color:#c0560c;animation-delay:.36s}.global-loader-copy{text-align:center;gap:6px;display:grid}.global-loader-copy h2{color:#0d1b42;margin:0;font-size:18px;font-weight:950;line-height:1.25}.global-loader-copy p{color:#52617a;margin:0;font-size:13px;font-weight:700}.global-loader-progress{background:#e8eef7;border-radius:999px;width:100%;height:7px;overflow:hidden}.global-loader-progress span{border-radius:inherit;background:linear-gradient(90deg,#126df1,#18a66a,#ff8a17);width:42%;height:100%;animation:1s ease-in-out infinite loaderProgress;display:block}.password-reset-backdrop{z-index:9000}.password-reset-modal{background:#fff;border:1px solid #dfe8f4;border-radius:14px;gap:18px;width:min(560px,100vw - 32px);max-height:calc(100svh - 40px);padding:24px;display:grid;overflow:auto;box-shadow:0 28px 76px #0f172a33}.password-reset-form{gap:14px;display:grid}.password-reset-form label{color:#172033;gap:8px;font-size:13px;font-weight:900;display:grid}.password-reset-form input,.password-reset-form textarea{color:#0f172a;width:100%;font:inherit;background:#fff;border:1px solid #d6e0ed;border-radius:8px;outline:0;font-size:14px;font-weight:650}.password-reset-form input{height:46px;padding:0 13px}.password-reset-form textarea{resize:vertical;min-height:84px;padding:12px 13px;line-height:1.45}.password-reset-form input:focus,.password-reset-form textarea:focus{border-color:#1478f2;box-shadow:0 0 0 3px #1478f21f}.password-standard-list{background:#f6f9fd;border-radius:10px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px;display:grid}.password-standard-list span{color:#68778d;align-items:center;gap:7px;font-size:12px;font-weight:800;display:flex}.password-standard-list span.valid{color:#16875a}.password-standard-list svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:15px;height:15px}.password-reset-actions{justify-content:flex-end;gap:10px;padding-top:4px;display:flex}.password-reset-actions button:disabled{cursor:not-allowed;opacity:.62}@keyframes loaderCorePulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes loaderTileLift{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes loaderProgress{0%{transform:translate(-110%)}to{transform:translate(245%)}}.legal-page{color:#0d1b42;background:radial-gradient(circle at 12% 18%,#1478f21f,#0000 25%),radial-gradient(circle at 88% 80%,#ff8a171a,#0000 24%),linear-gradient(135deg,#eff7ff 0%,#f8fbff 50%,#eef6ff 100%);min-height:100vh;padding:42px 22px}.legal-shell{gap:18px;width:min(980px,100%);margin:0 auto;display:grid}.legal-hero{background:linear-gradient(135deg,#102b4ef0,#1478f2c7),#102b4e;border-radius:14px;align-content:end;gap:10px;min-height:250px;padding:28px;display:grid;box-shadow:0 20px 54px #0f172a24}.legal-hero.terms{background:linear-gradient(135deg,#102b4ef2,#ff8a17c7),#102b4e}.legal-hero.support{background:linear-gradient(135deg,#102b4ef2,#21a85ebd),#102b4e}.legal-hero .eyebrow,.legal-hero h1,.legal-hero p{margin:0}.legal-hero .eyebrow{color:#dbeafe}.legal-hero h1{color:#fff;font-size:38px;font-weight:950;line-height:1.05}.legal-hero p{color:#eef5ff;max-width:620px;font-size:15px;font-weight:650;line-height:1.55}.legal-back{color:#fff;background:#ffffff1f;border:1px solid #ffffff3d;border-radius:999px;align-items:center;gap:8px;width:fit-content;min-height:34px;margin-bottom:36px;padding:0 13px;font-size:13px;font-weight:850;display:inline-flex}.legal-content{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.legal-content article{background:#ffffffeb;border:1px solid #e1e9f5;border-radius:10px;min-height:146px;padding:22px;box-shadow:0 12px 30px #0f172a0f}.legal-content article:first-child{grid-column:1/-1}.legal-content h2{color:#111827;margin:0;font-size:18px;font-weight:950}.legal-content p{color:#536174;margin:9px 0 0;font-size:14px;font-weight:650;line-height:1.58}.support-contact-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.support-contact-grid article{background:#fffffff0;border:1px solid #e1e9f5;border-radius:10px;align-content:start;gap:9px;min-height:180px;padding:22px;display:grid;box-shadow:0 12px 30px #0f172a0f}.support-contact-icon{border-radius:12px;place-items:center;width:44px;height:44px;font-size:14px;font-weight:950;display:grid}.support-contact-icon.blue{color:#126df1;background:#eef5ff}.support-contact-icon.green{color:#16875a;background:#eaf8ee}.support-contact-grid h2,.support-contact-grid p{margin:0}.support-contact-grid h2{color:#111827;font-size:18px;font-weight:950}.support-contact-grid p{color:#536174;font-size:14px;font-weight:650;line-height:1.55}.support-contact-grid strong{color:#0d1b42;font-size:14px;font-weight:900}.mfa-page{color:#0d1b42;background:#f6f8fb;place-items:center;height:100svh;min-height:0;padding:24px;display:grid;overflow:auto}.mfa-card{background:#fff;border:1px solid #e1e9f5;border-radius:8px;justify-items:center;width:min(440px,100%);padding:32px;display:grid;box-shadow:0 16px 38px #0f172a14}.mfa-logo{width:min(250px,100%);height:60px}.mfa-logo img{width:250px;top:-26px}.mfa-shield{background:#eef5ff;border:1px solid #1478f229;border-radius:8px;place-items:center;width:64px;height:64px;margin-top:20px;display:grid;position:relative}.mfa-shield>svg{fill:#126df1;stroke:#fff;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 14px 22px #1478f238);width:34px;height:34px}.mfa-shield>span{color:#fff;background:#23c270;border:3px solid #fff;border-radius:50%;place-items:center;width:24px;height:24px;display:grid;position:absolute;bottom:-7px;right:-7px}.mfa-shield span svg{fill:none;stroke:currentColor;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;width:13px;height:13px}.mfa-head{text-align:center;margin-top:22px}.mfa-head h1{color:#0d1b42;margin:0;font-size:24px;font-weight:950;line-height:1.18}.mfa-head p{color:#52617a;max-width:340px;margin:10px auto 0;font-size:14px;font-weight:650;line-height:1.5}.mfa-head strong{color:#0d1b42;margin-top:2px;font-weight:950;display:block}.mfa-form{justify-items:center;width:100%;margin-top:24px;display:grid}.mfa-code-group{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;width:100%;display:grid}.mfa-code-group input{color:#0d1b42;text-align:center;background:#fff;border:2px solid #d4deec;border-radius:8px;outline:0;width:100%;height:50px;font-size:22px;font-weight:900;box-shadow:0 8px 18px #23528e0f}.mfa-code-group input:focus{border-color:#1677ff;box-shadow:0 0 0 4px #1478f21f}.mfa-resend{text-align:center;margin-top:18px}.mfa-resend p,.mfa-resend span{color:#52617a;margin:0;font-size:14px;font-weight:700}.mfa-resend span{margin-top:4px;display:block}.mfa-resend strong{color:#126df1}.mfa-secondary{color:#126df1;background:0 0;border:0;justify-content:center;align-items:center;gap:8px;min-height:40px;margin-top:8px;padding:0 12px;font-size:14px;font-weight:850;display:inline-flex}.mfa-secondary:hover{background:#eef5ff}.mfa-secondary:disabled{cursor:not-allowed;color:#94a3b8;box-shadow:none;background:0 0}.mfa-secondary:disabled:hover{background:0 0}.mfa-secondary svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.mfa-submit{color:#fff;background:#126df1;border:0;border-radius:8px;width:100%;height:44px;margin-top:16px;font-size:15px;font-weight:900;box-shadow:0 10px 22px #1478f238}.mfa-back{color:#52617a;background:0 0;border:0;align-items:center;gap:8px;min-height:36px;margin-top:8px;font-size:14px;font-weight:850;display:inline-flex}.app-shell{background:#f4f7fb;grid-template-columns:260px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{color:#e8f1fb;background:linear-gradient(#102b4e 0%,#071d36 100%);height:100vh;padding:18px 14px;position:sticky;top:0;overflow-y:auto;box-shadow:8px 0 24px #071d362e}.brand{align-items:center;gap:5px;height:48px;padding:0 2px 18px;display:flex}.sidebar-product-logo{background:#fff;border-radius:7px;width:218px;height:50px}.sidebar-product-logo img{width:218px;top:-22px}.sidebar-nav{gap:8px;display:grid}.nav-item{color:#e4eefb;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:14px;width:100%;height:48px;padding:0 14px;font-weight:650;transition:background .16s,color .16s,transform .16s;display:flex}.nav-item svg,.icon-button svg,.profile svg,.upgrade-button svg,.workspace-card svg,.primary-button svg,.secondary-button svg,.metric-pill svg,.stat-icon svg,.activity-icon svg,.action-button svg,.event svg,.search-box svg,.select-button svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:20px;height:20px}.workspace-card{color:#fff;text-align:left;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:8px;grid-template-columns:42px minmax(0,1fr) 18px;align-items:center;gap:12px;width:100%;min-height:72px;margin:4px 0 18px;padding:12px;display:grid}.workspace-card:hover{background:#ffffff1a}.workspace-card:disabled{cursor:default}.workspace-logo{color:#102b4e;background:#fff;border-radius:8px;place-items:center;width:42px;height:42px;font-size:13px;font-weight:900;display:grid}.workspace-card strong,.workspace-card small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.workspace-card strong{font-size:13px}.workspace-card small{color:#b9c9dc;margin-top:3px;font-size:11px;font-weight:650}.nav-item:hover{background:#ffffff14}.nav-item.active{color:#fff;background:#1877f2;box-shadow:0 12px 24px #1877f247}.main{min-width:0}.topbar{z-index:10;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff0;border-bottom:1px solid #e8edf5;grid-template-columns:minmax(220px,1fr) minmax(280px,540px) minmax(360px,1fr);align-items:center;gap:24px;min-height:76px;padding:16px 26px;display:grid;position:sticky;top:0;box-shadow:0 8px 28px #0f172a0f}.topbar-left,.topbar-actions{align-items:center;gap:18px;min-width:0;display:flex}.topbar h1{color:#121827;margin:0;font-size:22px;font-weight:800;line-height:1.2}.icon-button{color:#1f2937;background:0 0;border:0;border-radius:8px;place-items:center;width:40px;height:40px;display:grid;position:relative}.icon-button:hover{background:#eef4fb}.has-badge span{color:#fff;background:#ff4d4f;border:2px solid #fff;border-radius:999px;place-items:center;min-width:17px;height:17px;font-size:10px;line-height:1;display:grid;position:absolute;top:2px;right:3px}.search-menu{min-width:0;position:relative}.search-box{color:#8a96a8;background:#fff;border:1px solid #edf1f7;border-radius:999px;align-items:center;gap:12px;height:50px;padding:0 22px;display:flex;box-shadow:inset 0 1px #ffffffb3}.search-box input{color:#1f2937;background:0 0;border:0;outline:0;width:100%;min-width:0;font-size:14px;font-weight:600}.search-box input::placeholder{color:#7d8798}.search-dropdown{z-index:35;background:#fff;border:1px solid #e7edf5;border-radius:8px;position:absolute;top:calc(100% + 10px);left:0;right:0;overflow:hidden;box-shadow:0 18px 42px #0f172a29}.search-dropdown button{text-align:left;background:#fff;border:0;gap:4px;width:100%;min-height:58px;padding:12px 16px;display:grid}.search-dropdown button+button{border-top:1px solid #edf2f7}.search-dropdown button:hover,.search-dropdown button:focus-visible{background:#f8fbff;outline:0}.search-dropdown strong{color:#172033;font-size:14px;font-weight:900}.search-dropdown span,.search-empty{color:#536174;font-size:12px;font-weight:700}.search-empty{padding:16px}.topbar-actions{justify-content:flex-end}.school-context-menu{min-width:240px;position:relative}.school-context-button{color:#111827;text-align:left;background:#fff;border:1px solid #e6edf6;border-radius:8px;grid-template-columns:38px minmax(0,1fr) 18px;align-items:center;gap:10px;width:100%;min-height:46px;padding:6px 10px;display:grid;box-shadow:0 8px 20px #0f172a0d}.school-context-button.locked{color:#334155;cursor:default;background:#f8fbff;grid-template-columns:38px minmax(0,1fr)}.school-context-button:not(:disabled):hover,.school-context-button:not(:disabled):focus-visible{border-color:#cfe0f6;outline:0;box-shadow:0 12px 28px #0f172a1a}.school-context-button .workspace-logo,.school-context-dropdown .workspace-logo{color:#fff;background:#102b4e;border-radius:8px;width:38px;height:38px}.school-context-button strong,.school-context-button small,.school-context-dropdown strong,.school-context-dropdown small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.school-context-button strong,.school-context-dropdown strong{color:#111827;font-size:13px;font-weight:700}.school-context-button small,.school-context-dropdown small{color:#64748b;margin-top:2px;font-size:11px;font-weight:500}.school-context-button svg,.school-context-dropdown svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.school-context-dropdown{z-index:36;background:#fff;border:1px solid #e7edf5;border-radius:8px;width:min(320px,86vw);max-height:340px;position:absolute;top:calc(100% + 10px);right:0;overflow-y:auto;box-shadow:0 18px 42px #0f172a29}.school-context-dropdown button{text-align:left;background:#fff;border:0;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:10px;width:100%;min-height:62px;padding:10px 12px;display:grid}.school-context-dropdown button+button{border-top:1px solid #edf2f7}.school-context-dropdown button:hover,.school-context-dropdown button:focus-visible,.school-context-dropdown button.active{background:#f3f8ff;outline:0}.school-context-empty{color:#536174;padding:16px;font-size:12px;font-weight:600}.upgrade-button,.primary-button,.secondary-button{white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:9px;height:40px;padding:0 14px;font-size:13px;font-weight:850;display:inline-flex}.upgrade-button{color:#0f61c8;background:#eff6ff;border:1px solid #dbeafe}.upgrade-button:hover{background:#dbeafe}.topbar-divider{background:#d8e0ea;width:1px;height:24px}.profile-menu{position:relative}.profile{color:#111827;text-align:left;background:0 0;border:0;align-items:center;gap:12px;min-width:170px;padding:0;display:flex}.profile:hover{color:#0f61c8}.avatar{color:#fff;background:linear-gradient(135deg,#173b61,#f59e0b);border:3px solid #edf3fb;border-radius:50%;place-items:center;width:44px;height:44px;font-weight:900;display:grid}.profile strong,.profile small{display:block}.profile strong{font-size:14px}.profile small{color:#536174;margin-top:2px;font-size:12px}.profile-dropdown{z-index:30;background:#fff;border:1px solid #e7edf5;border-radius:8px;width:240px;position:absolute;top:calc(100% + 12px);right:0;overflow:hidden;box-shadow:0 18px 42px #0f172a29}.profile-dropdown:before{content:"";background:#fff;border-top:1px solid #e7edf5;border-left:1px solid #e7edf5;width:12px;height:12px;position:absolute;top:-6px;right:28px;transform:rotate(45deg)}.profile-dropdown-head{border-bottom:1px solid #edf2f7;align-items:center;gap:12px;padding:16px;display:flex}.profile-dropdown-head .avatar{border-width:2px;width:40px;height:40px}.profile-dropdown-head strong,.profile-dropdown-head small{display:block}.profile-dropdown-head strong{color:#111827;font-size:14px;font-weight:900}.profile-dropdown-head small{color:#536174;margin-top:2px;font-size:12px;font-weight:700}.profile-dropdown-item{color:#ef3f52;text-align:left;background:#fff;border:0;align-items:center;gap:10px;width:100%;min-height:46px;padding:0 16px;font-size:14px;font-weight:850;display:flex}.profile-dropdown-item:hover{background:#fff0f1}.profile-dropdown-item svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.dashboard{padding:22px 26px 28px}.saas-hero{color:#fff;background:linear-gradient(135deg,#102b4ef5,#1477f2db),#102b4e;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:28px;min-height:132px;margin-bottom:16px;padding:24px 26px;display:grid;box-shadow:0 16px 36px #0f172a1f}.eyebrow{color:#bfdbfe;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px;font-size:12px;font-weight:900;display:inline-flex}.saas-hero h2{color:#fff;max-width:760px;margin:0;font-size:28px;font-weight:900;line-height:1.15}.saas-hero p{color:#dbeafe;max-width:720px;margin:10px 0 0;font-size:14px;font-weight:650}.dashboard-loading-state{place-items:center;min-height:420px;padding:48px 16px;display:grid}.dashboard-loading-card{background:#fff;border:1px solid #e7edf5;border-radius:8px;grid-template-columns:56px minmax(0,1fr);align-items:center;gap:18px;width:min(520px,100%);padding:24px;display:grid;box-shadow:0 12px 28px #0f172a14}.dashboard-loading-icon{color:#1478f2;background:#eef5ff;border-radius:8px;place-items:center;width:56px;height:56px;display:grid}.dashboard-loading-icon svg{width:26px;height:26px}.dashboard-loading-card .eyebrow{color:#1478f2}.dashboard-loading-card h2{color:#111827;margin:0;font-size:22px;line-height:1.2}.dashboard-loading-card p{color:#536174;margin:8px 0 0;font-size:14px;font-weight:700}.hero-actions{align-items:center;gap:12px;display:flex}.primary-button{color:#0f61c8;background:#fff;border:0}.secondary-button{color:#fff;background:#ffffff1a;border:1px solid #ffffff52}.primary-button:hover{background:#eff6ff}.secondary-button:hover{background:#ffffff2e}.saas-strip{grid-template-columns:repeat(4,minmax(170px,1fr));gap:16px;margin-bottom:16px;display:grid}.metric-pill{background:#fff;border:1px solid #e7edf5;border-radius:8px;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:14px;min-height:86px;padding:16px;display:grid;box-shadow:0 8px 24px #0f172a0d}.metric-pill>span{color:#1478f2;background:#eef5ff;border-radius:8px;place-items:center;width:44px;height:44px;display:grid}.metric-pill p{color:#536174;margin:0;font-size:12px;font-weight:800}.metric-pill strong{color:#111827;margin-top:5px;font-size:20px;font-weight:900;line-height:1.1;display:block}.mini-progress{background:#e8eef7;border-radius:999px;height:5px;margin-top:10px;overflow:hidden}.mini-progress i{width:var(--progress);border-radius:inherit;background:#1478f2;height:100%;display:block}.stats-grid{grid-template-columns:repeat(5,minmax(180px,1fr));gap:16px;margin-bottom:16px;display:grid}.stat-card,.panel{background:#fff;border:1px solid #e7edf5;border-radius:8px;box-shadow:0 8px 24px #0f172a0d}.stat-card{align-items:center;gap:18px;min-width:0;min-height:124px;padding:22px 20px;display:flex}.stat-icon{color:#fff;border-radius:10px;flex:none;place-items:center;width:74px;height:74px;display:grid}.stat-icon svg{stroke-width:2.2px;width:34px;height:34px}.stat-icon.blue{background:linear-gradient(135deg,#0f8cff,#1368df)}.stat-icon.green{background:linear-gradient(135deg,#34ca7a,#17a966)}.stat-icon.purple{background:linear-gradient(135deg,#8067f1,#6544d8)}.stat-icon.orange{background:linear-gradient(135deg,#ff9f1c,#ff7b14)}.stat-icon.red{background:linear-gradient(135deg,#fb6470,#ef3f52)}.stat-copy{min-width:0}.stat-copy p,.panel-head h2,.activity strong,.event strong,.notice strong{margin:0}.stat-copy p{color:#40506a;font-size:14px;font-weight:700}.stat-copy strong{color:#070c18;margin-top:6px;font-size:28px;font-weight:900;line-height:1;display:block}.stat-copy span{color:#253449;margin-top:10px;font-size:13px;font-weight:700;display:block}.stat-copy .up:before{content:"↑ ";color:#159b67}.stat-link{color:#1478f2;background:0 0;border:0;align-items:center;margin-top:10px;padding:0;font-size:13px;font-weight:850;display:inline-flex}.stat-link:hover,.stat-link:focus-visible{color:#0f61c8;outline:0;text-decoration:underline}.dashboard-grid{grid-template-columns:minmax(400px,1.35fr) minmax(320px,1fr) minmax(300px,.9fr);align-items:stretch;gap:16px;display:grid}.panel{min-width:0;padding:22px 24px}.panel-head{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.panel-head h2{color:#111827;font-size:18px;font-weight:850;line-height:1.2}.select-button,.outline-button{color:#2b405d;background:#fff;border:1px solid #dce5f0;border-radius:8px;align-items:center;gap:10px;height:36px;padding:0 14px;font-size:13px;font-weight:750;display:inline-flex}.select-button{background:#f8fbff;min-width:148px;max-width:190px;padding:0;position:relative;overflow:hidden;box-shadow:inset 0 1px #fffc}.select-button select{appearance:none;border-radius:inherit;width:100%;min-width:0;height:100%;color:inherit;font:inherit;text-overflow:ellipsis;cursor:pointer;background:0 0;border:0;outline:0;padding:0 38px 0 14px;font-size:13px;line-height:36px;position:relative}.select-button:hover{background:#fff;border-color:#b9c8dc}.select-button:focus-within{border-color:#1478f2;box-shadow:0 0 0 3px #1478f21f}.select-button svg{color:#64748b;pointer-events:none;width:16px;height:16px;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.fee-panel{min-height:320px}.line-chart{grid-template-rows:230px 28px;grid-template-columns:42px minmax(0,1fr);gap:0 10px;display:grid}.chart-y{color:#536174;text-align:right;flex-direction:column;justify-content:space-between;padding-bottom:2px;font-size:13px;font-weight:650;display:flex}.chart-stage{min-width:0;position:relative}.chart-stage svg{width:100%;height:100%;overflow:visible}.grid-lines{stroke:#dfe6ef;stroke-width:1px}.chart-fill{fill:url(#chartFill)}.chart-line{fill:none;stroke:#1478f2;stroke-width:4px;stroke-linecap:round;stroke-linejoin:round}.chart-hover-points{position:absolute;inset:0}.chart-hover-point{z-index:3;background:#fff;border:3px solid #1478f2;border-radius:999px;width:18px;height:18px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 6px 14px #1478f238}.chart-hover-point:hover,.chart-hover-point:focus-visible{background:#1478f2;outline:0}.chart-hover-point span{color:#fff;text-align:left;white-space:nowrap;opacity:0;pointer-events:none;background:#0b1b31;border-radius:7px;min-width:112px;padding:8px 10px;font-size:12px;font-weight:800;line-height:1.35;transition:opacity .15s,transform .15s;position:absolute;bottom:calc(100% + 12px);left:50%;transform:translate(-50%)translateY(6px);box-shadow:0 10px 20px #0b1b3138}.chart-hover-point span:after{content:"";background:#0b1b31;width:10px;height:10px;position:absolute;bottom:-5px;left:50%;transform:translate(-50%)rotate(45deg)}.chart-hover-point strong{color:#bfdbfe;display:block}.chart-hover-point:hover span,.chart-hover-point:focus-visible span{opacity:1;transform:translate(-50%)translateY(0)}.chart-x{color:#39475d;grid-column:2;justify-content:space-between;padding-top:10px;font-size:13px;font-weight:700;display:flex}.attendance-wrap{grid-template-columns:210px 1fr;align-items:center;gap:28px;min-height:220px;display:grid}.donut{border-radius:50%;place-items:center;width:200px;height:200px;display:grid;position:relative}.donut:hover{filter:drop-shadow(0 12px 20px #0f172a1f)}.donut-svg{width:100%;height:100%;position:absolute;inset:0;overflow:visible;transform:rotate(-90deg)}.donut-track,.donut-segment{fill:none;stroke-width:23px}.donut-track{stroke:#eef3f8}.donut-segment{cursor:pointer;transition:stroke-width .16s,filter .16s,opacity .16s}.donut-segment.green{stroke:#29ba75}.donut-segment.orange{stroke:#ff8a17}.donut-segment.purple{stroke:#7656df}.donut-segment:hover,.donut-segment:focus-visible{stroke-width:28px;filter:drop-shadow(0 4px 8px #0f172a38);outline:0}:is(.donut:has(.donut-segment:hover) .donut-segment:not(:hover),.donut:has(.donut-segment:focus-visible) .donut-segment:not(:focus-visible)){opacity:.38}.donut>div:first-of-type{z-index:1;text-align:center;pointer-events:none;background:#fff;border-radius:50%;place-content:center;width:108px;height:108px;display:grid;position:relative;box-shadow:inset 0 0 0 1px #edf2f7}.donut strong{color:#0b1020;font-size:30px;font-weight:900;line-height:1;display:block}.donut span{color:#34506d;margin-top:8px;font-size:13px;font-weight:800;display:block}.donut-tooltips{pointer-events:none;z-index:4;position:absolute;inset:0}.donut-tooltip{color:#fff;text-align:left;white-space:nowrap;opacity:0;background:#0b1b31;border-radius:7px;min-width:112px;padding:8px 10px;font-size:12px;font-weight:800;line-height:1.35;transition:opacity .15s,transform .15s;position:absolute;transform:translate(-50%,6px);box-shadow:0 10px 20px #0b1b3138}.donut-tooltip:after{content:"";background:#0b1b31;width:10px;height:10px;position:absolute;bottom:-5px;left:50%;transform:translate(-50%)rotate(45deg)}.donut-tooltip.green{top:2%;left:68%}.donut-tooltip.orange{top:4%;left:28%}.donut-tooltip.purple{top:-9%;left:42%}.donut-tooltip.green strong{color:#86efac}.donut-tooltip.orange strong{color:#fdba74}.donut-tooltip.purple strong{color:#c4b5fd}.donut-tooltip strong{display:block}:is(.donut:has(.donut-segment.green:hover) .donut-tooltip.green,.donut:has(.donut-segment.green:focus-visible) .donut-tooltip.green,.donut:has(.donut-segment.orange:hover) .donut-tooltip.orange,.donut:has(.donut-segment.orange:focus-visible) .donut-tooltip.orange,.donut:has(.donut-segment.purple:hover) .donut-tooltip.purple,.donut:has(.donut-segment.purple:focus-visible) .donut-tooltip.purple){opacity:1;transform:translate(-50%)}.attendance-legend{gap:22px;display:grid}.legend{color:#111827;grid-template-columns:16px 1fr auto;align-items:center;gap:12px;display:grid}.legend span{border-radius:4px;width:14px;height:14px}.legend .green{background:#29ba75}.legend .orange{background:#ff8a17}.legend .purple{background:#7656df}.legend strong{font-size:14px}.legend p{color:#40506a;margin:0;font-size:14px;font-weight:750}.activities-panel,.quick-panel,.events-panel,.notice-panel,.pipeline-panel,.health-panel{min-height:0}.activity-list{gap:18px;display:grid}.activity{grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.activity-icon,.event span{border-radius:8px;place-items:center;width:36px;height:36px;display:grid}.activity-icon.teal{color:#0eb3a0;background:#e7fbf8}.activity-icon.green{color:#21a85e;background:#eaf8ee}.activity-icon.red{color:#ee5260;background:#fff0f1}.activity-icon.purple{color:#7153df;background:#f1ecff}.activity strong{color:#172033;font-size:14px;display:block}.activity p,.event p,.notice p{color:#536174;margin:4px 0 0;font-size:13px;font-weight:650}.activity time{color:#738196;white-space:nowrap;font-size:12px;font-weight:700}.text-button{color:#1478f2;background:0 0;border:0;padding:0;font-size:13px;font-weight:850}.activities-panel .text-button,.notice-panel .text-button{margin:18px 0 0 auto;display:block}.quick-panel{grid-column:span 1}.quick-actions{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;display:grid}.action-button{color:#182235;text-align:left;background:linear-gradient(#fff 0%,#f9fbff 100%);border:1px solid #dfe7f1;border-radius:8px;grid-template-columns:44px minmax(0,1fr) 22px;align-items:center;gap:12px;min-height:88px;padding:14px;transition:transform .16s,border-color .16s,box-shadow .16s,background .16s;display:grid;box-shadow:0 8px 20px #0f172a0a}.action-button:hover{background:#fff;border-color:#b9c8dc;transform:translateY(-2px);box-shadow:0 14px 28px #0f172a14}.action-button:focus-visible{border-color:#1478f2;outline:0;box-shadow:0 0 0 3px #1478f21f}.action-icon{border-radius:8px;place-items:center;width:44px;height:44px;display:grid}.action-icon svg{stroke-width:2.2px;width:23px;height:23px}.action-icon.blue{color:#1478f2;background:#eaf3ff}.action-icon.green{color:#22a76a;background:#eaf8ee}.action-icon.purple{color:#7656df;background:#f1ecff}.action-icon.orange{color:#ff8a17;background:#fff2df}.action-copy{min-width:0;overflow:hidden}.action-copy strong,.action-copy small{display:block}.action-copy strong{color:#172033;overflow-wrap:normal;word-break:normal;font-size:14px;font-weight:900;line-height:1.2}.action-copy small{color:#6b778c;overflow-wrap:normal;word-break:normal;margin-top:5px;font-size:12px;font-weight:700;line-height:1.2}.action-button>svg{color:#9aa8ba;flex:none;justify-self:end;width:18px;height:18px;transition:color .16s,transform .16s}.action-button:hover>svg{color:#1478f2;transform:translate(2px)}.event-list{gap:18px;display:grid}.event{align-items:center;gap:12px;display:flex}.event span{color:#1478f2;background:#eef5ff}.event strong,.notice strong{color:#172033;font-size:14px;display:block}.event p{color:#1478f2}.events-panel{position:relative}.events-panel .outline-button{color:#1478f2;position:absolute;bottom:20px;right:24px}.notice{background:#fff1cc;border-radius:8px;align-items:flex-start;gap:12px;min-height:68px;padding:16px;display:flex}.notice>span{background:#ff9f1c;border-radius:999px;flex:none;width:3px;height:18px}.notice p{color:#536174}.pipeline-list{gap:16px;display:grid}.pipeline-row{gap:8px;display:grid}.pipeline-row>div:first-child{justify-content:space-between;align-items:center;gap:14px;display:flex}.pipeline-label,.pipeline-value{font-size:13px;font-weight:400}.pipeline-label{color:#172033}.pipeline-value{color:#536174}.pipeline-track{background:#e9eff7;border-radius:999px;height:9px;overflow:hidden}.pipeline-track span{width:var(--progress);border-radius:inherit;height:100%;display:block}.pipeline-track .blue{background:#1478f2}.pipeline-track .purple{background:#7656df}.pipeline-track .green{background:#29ba75}.pipeline-track .orange{background:#ff8a17}.pipeline-track .red{background:#e2384f}.health-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.health-item{background:#f8fbff;border:1px solid #e7edf5;border-radius:8px;align-items:center;gap:12px;min-height:76px;padding:14px;display:flex}.health-item>span{border-radius:999px;flex:none;width:10px;height:10px;box-shadow:0 0 0 5px #29ba7524}.health-item>span.green{background:#20ad68;box-shadow:0 0 0 5px #20ad6829}.health-item>span.green-strong{background:#078b48;width:13px;height:13px;box-shadow:0 0 0 6px #078b4833}.health-item>span.light-green{background:#83c94b;box-shadow:0 0 0 5px #83c94b2b}.health-item>span.orange{background:#f28a14;box-shadow:0 0 0 5px #f28a142b}.health-item>span.red{background:#e2384f;box-shadow:0 0 0 5px #e2384f2b}.health-item p{color:#536174;margin:0;font-size:12px;font-weight:800}.health-item strong{color:#172033;margin-top:5px;font-size:14px;font-weight:900;display:block}.modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0912207a;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.attendance-modal{background:#fff;border:1px solid #dce5f0;border-radius:8px;width:min(920px,100%);max-height:min(760px,100vh - 48px);overflow:auto;box-shadow:0 28px 70px #0f172a47}.modal-head{border-bottom:1px solid #edf2f7;justify-content:space-between;align-items:flex-start;gap:18px;padding:24px 26px 18px;display:flex}.modal-eyebrow{color:#1478f2}.modal-head h2{color:#111827;margin:0;font-size:24px;font-weight:900;line-height:1.15}.modal-head p{color:#536174;margin:8px 0 0;font-size:14px;font-weight:650}.close-button{background:#f3f7fb;flex:none}.attendance-detail-summary{grid-template-columns:repeat(3,minmax(150px,1fr));gap:14px;padding:20px 26px;display:grid}.summary-tile{background:#f8fbff;border:1px solid #e7edf5;border-radius:8px;grid-template-columns:12px 1fr;align-content:center;gap:8px 12px;min-height:92px;padding:16px;display:grid}.summary-tile>span{border-radius:999px;grid-row:1/span 2;width:10px;height:10px;margin-top:5px}.summary-tile.green>span{background:#29ba75}.summary-tile.orange>span{background:#ff8a17}.summary-tile.purple>span{background:#7656df}.summary-tile p,.summary-tile strong{margin:0}.summary-tile p{color:#536174;font-size:13px;font-weight:800}.summary-tile strong{color:#111827;font-size:22px;font-weight:900}.attendance-table{border:1px solid #e7edf5;border-radius:8px;margin:0 26px 22px;overflow:hidden}.attendance-table-head,.attendance-table-row{grid-template-columns:1.1fr 1.3fr repeat(4,minmax(70px,.6fr));align-items:center;gap:12px;padding:14px 16px;display:grid}.attendance-table-head{color:#536174;text-transform:uppercase;background:#f3f7fb;font-size:12px;font-weight:900}.attendance-table-row{color:#253449;border-top:1px solid #edf2f7;font-size:14px;font-weight:700}.attendance-table-row strong{color:#111827}.rate{text-align:center;border-radius:999px;width:fit-content;min-width:48px;padding:5px 8px;font-size:12px;font-weight:900}.rate.good{color:#16875a;background:#eaf8ee}.rate.watch{color:#b46009;background:#fff1cc}.modal-actions{border-top:1px solid #edf2f7;justify-content:flex-end;gap:12px;padding:18px 26px 24px;display:flex}.primary-panel-button,.secondary-panel-button{border-radius:8px;justify-content:center;align-items:center;gap:9px;min-height:40px;padding:0 14px;font-size:13px;font-weight:850;display:inline-flex}.primary-panel-button svg,.secondary-panel-button svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.primary-panel-button{color:#fff;background:#1478f2;border:0}.secondary-panel-button{color:#2b405d;background:#fff;border:1px solid #dce5f0}.admission-page{gap:16px;display:grid}.admission-hero{color:#fff;background:linear-gradient(135deg,#102b4ef5,#1477f2d1),#102b4e;border-radius:8px;grid-template-columns:minmax(0,1fr) 230px;align-items:end;gap:24px;padding:24px 26px;display:grid;box-shadow:0 16px 36px #0f172a1f}.back-button{color:#fff;vertical-align:middle;background:#ffffff1a;border:1px solid #ffffff42;border-radius:8px;align-items:center;gap:8px;width:fit-content;height:34px;margin-bottom:16px;margin-right:16px;padding:0 12px;font-size:13px;font-weight:850;display:inline-flex}.back-button+.eyebrow{vertical-align:middle}.back-button:hover{background:#ffffff2e}.admission-hero h2,.admission-hero p{margin:0}.admission-hero h2{color:#fff;font-size:32px;font-weight:900;line-height:1.1}.admission-hero p{color:#dbeafe;max-width:720px;margin-top:10px;font-size:14px;font-weight:650}.admission-status-card{background:#ffffff1f;border:1px solid #ffffff38;border-radius:8px;min-height:118px;padding:18px}.admission-status-card span,.admission-status-card p{color:#dbeafe;font-size:12px;font-weight:800}.admission-status-card strong{color:#fff;margin-top:8px;font-size:22px;font-weight:900;display:block}.admission-status-card p{margin:12px 0 0}.admission-layout{grid-template-columns:280px minmax(0,1fr);align-items:start;gap:16px;display:grid}.admission-steps,.form-panel,.admission-actions{background:#fff;border:1px solid #e7edf5;border-radius:8px;box-shadow:0 8px 24px #0f172a0d}.admission-steps{gap:10px;padding:16px;display:grid;position:sticky;top:98px}.admission-step{color:#536174;border-radius:8px;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:12px;min-height:66px;padding:10px;display:grid}.admission-step.active{color:#1478f2;background:#eef5ff}.admission-step>span{color:#536174;background:#f3f7fb;border-radius:8px;place-items:center;width:36px;height:36px;font-size:13px;font-weight:900;display:grid}.admission-step.active>span{color:#fff;background:#1478f2}.admission-step strong,.admission-step small{display:block}.admission-step strong{color:#172033;font-size:14px;font-weight:900}.admission-step small{margin-top:3px;font-size:12px;font-weight:800}.admission-form{gap:16px;display:grid}.form-panel{padding:22px 24px}.form-panel-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.form-panel-head h3,.form-panel-head p{margin:0}.form-panel-head h3{color:#111827;font-size:18px;font-weight:900}.form-panel-head p{color:#536174;margin-top:6px;font-size:13px;font-weight:650}.form-badge{color:#b46009;background:#fff1cc;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:900}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.form-grid label{color:#2b405d;gap:8px;font-size:13px;font-weight:850;display:grid}.required-label:after{content:"*";color:#ef3f52;margin-left:4px;font-weight:900}.form-grid input,.form-grid select,.form-grid textarea{color:#111827;background:#f8fbff;border:1px solid #dce5f0;border-radius:8px;outline:0;width:100%;padding:0 13px;font-size:14px;font-weight:650}.form-grid input,.form-grid select{height:42px}.form-grid textarea{resize:vertical;min-height:86px;padding-top:11px;font-family:inherit}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{background:#fff;border-color:#1478f2;box-shadow:0 0 0 3px #1478f21f}.form-grid select:disabled,.form-grid input:disabled{color:#8a96a8;cursor:not-allowed;background:#eef3f8}.pin-field-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.secondary-panel-button.compact{min-height:42px;padding:0 14px}.field-help{color:#64748b;font-size:12px;font-weight:750}.field-help.success{color:#15803d}.wide-field{grid-column:1/-1}.document-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.document-upload{color:#172033;cursor:pointer;background:#f8fbff;border:1px solid #dfe7f1;border-radius:8px;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:82px;padding:14px;transition:border-color .16s,background .16s,box-shadow .16s;display:grid;position:relative}.document-upload:hover,.document-upload:focus-within{background:#fff;border-color:#1478f2;box-shadow:0 0 0 3px #1478f21a}.document-upload input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.upload-icon{color:#1478f2;background:#eef5ff;border-radius:8px;place-items:center;width:42px;height:42px;display:grid}.upload-icon svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:21px;height:21px}.upload-copy{min-width:0}.upload-copy strong,.upload-copy small{display:block}.upload-copy strong{color:#172033;font-size:14px;font-weight:900;line-height:1.2}.upload-copy small{color:#6b778c;margin-top:5px;font-size:12px;font-weight:700;line-height:1.2}.upload-action{color:#1478f2;background:#fff;border:1px solid #dbeafe;border-radius:999px;align-items:center;height:30px;padding:0 12px;font-size:12px;font-weight:900;display:inline-flex}.admission-actions{justify-content:flex-end;gap:12px;padding:18px 24px;display:flex}.school-onboarding-page{gap:16px;display:grid}.onboarding-hero{color:#fff;background:linear-gradient(135deg,#0c2d4df5,#1477f2d1),#102b4e;border-radius:8px;grid-template-columns:minmax(0,1fr) 220px;align-items:end;gap:24px;padding:24px 26px;display:grid;box-shadow:0 16px 36px #0f172a1f}.onboarding-hero h2,.onboarding-hero p{margin:0}.onboarding-hero h2{color:#fff;font-size:32px;font-weight:900;line-height:1.1}.onboarding-hero p{color:#dbeafe;max-width:760px;margin-top:10px;font-size:14px;font-weight:650}.onboarding-summary-card{background:#ffffff1f;border:1px solid #ffffff38;border-radius:8px;min-height:118px;padding:18px}.onboarding-summary-card span,.onboarding-summary-card p{color:#dbeafe;margin:0;font-size:12px;font-weight:800}.onboarding-summary-card strong{color:#fff;margin-top:8px;font-size:30px;font-weight:900;display:block}.onboarding-summary-card p{margin-top:10px}.onboarding-layout{grid-template-columns:minmax(0,1.3fr) minmax(320px,.7fr);align-items:start;gap:16px;display:grid}.onboarding-form{gap:16px;display:grid}.onboarding-step-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.onboarding-step-tabs button{color:#536174;background:#fff;border:1px solid #e7edf5;border-radius:8px;align-items:center;gap:10px;min-height:54px;padding:10px 12px;font-size:13px;font-weight:900;display:inline-flex;box-shadow:0 8px 24px #0f172a0a}.onboarding-step-tabs button.active{color:#1478f2;background:#eef5ff;border-color:#1478f2}.onboarding-step-tabs span{width:28px;height:28px;color:inherit;background:#f3f7fb;border-radius:8px;place-items:center;display:grid}.onboarding-step-tabs button.active span{color:#fff;background:#1478f2}.onboarding-panel{min-height:396px}.onboarding-actions{background:#fff;border:1px solid #e7edf5;border-radius:8px;justify-content:flex-end;gap:12px;padding:18px 24px;display:flex;box-shadow:0 8px 24px #0f172a0d}.onboarding-list-panel{background:#fff;border:1px solid #e7edf5;border-radius:8px;box-shadow:0 8px 24px #0f172a0d}.onboarding-school-list{gap:12px;padding:16px;display:grid}.onboarding-school-card{background:#f8fbff;border:1px solid #e7edf5;border-radius:8px;gap:8px;padding:14px;display:grid}.onboarding-school-card strong,.onboarding-school-card p{margin:0}.onboarding-school-card strong{color:#111827;font-size:14px;font-weight:900}.onboarding-school-card p,.onboarding-school-card small{color:#536174;font-size:12px;font-weight:700}.onboarding-school-card>span{color:#fff;text-transform:uppercase;border-radius:999px;width:fit-content;padding:5px 9px;font-size:11px;font-weight:900}.onboarding-school-card>span.green{background:#16a34a}.onboarding-school-card>span.orange{background:#f59e0b}.activities-page{gap:16px;display:grid}.activities-hero{color:#fff;background:linear-gradient(135deg,#102b4ef5,#0f766ec7),#102b4e;border-radius:8px;grid-template-columns:minmax(0,1fr) 220px;align-items:end;gap:24px;padding:24px 26px;display:grid;box-shadow:0 16px 36px #0f172a1f}.activities-hero h2,.activities-hero p{margin:0}.activities-hero h2{color:#fff;font-size:32px;font-weight:900;line-height:1.1}.activities-hero p{color:#d7f7f1;max-width:720px;margin-top:10px;font-size:14px;font-weight:650}.activity-insight-card{background:#ffffff1f;border:1px solid #ffffff38;border-radius:8px;min-height:118px;padding:18px}.activity-insight-card span,.activity-insight-card p{color:#d7f7f1;font-size:12px;font-weight:800}.activity-insight-card strong{color:#fff;margin-top:8px;font-size:24px;font-weight:900;display:block}.activity-insight-card p{margin:12px 0 0}.activity-filter-bar{background:#fff;border:1px solid #e7edf5;border-radius:8px;gap:10px;padding:14px;display:flex;overflow-x:auto;box-shadow:0 8px 24px #0f172a0d}.activity-filter-bar button{color:#536174;white-space:nowrap;background:#fff;border:1px solid #dce5f0;border-radius:999px;height:34px;padding:0 14px;font-size:13px;font-weight:850}.activity-filter-bar button.active,.activity-filter-bar button:hover{color:#1478f2;background:#eef5ff;border-color:#1478f2}.activities-layout{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:16px;display:grid}.activity-timeline,.activity-side-panel{background:#fff;border:1px solid #e7edf5;border-radius:8px;box-shadow:0 8px 24px #0f172a0d}.activity-timeline{overflow:hidden}.activity-row-card{border-bottom:1px solid #edf2f7;grid-template-columns:14px minmax(0,1fr) auto;align-items:start;gap:16px;padding:18px 20px;display:grid}.activity-row-card:last-child{border-bottom:0}.activity-dot{opacity:.22;border-radius:999px;width:12px;height:12px;margin-top:4px;box-shadow:0 0 0 5px}.activity-dot.teal{color:#0eb3a0;background:#0eb3a0}.activity-dot.green{color:#21a85e;background:#21a85e}.activity-dot.red{color:#ee5260;background:#ee5260}.activity-dot.purple{color:#7153df;background:#7153df}.activity-dot.orange{color:#ff8a17;background:#ff8a17}.activity-row-main>div{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.activity-row-main strong{color:#172033;font-size:15px;font-weight:900}.activity-row-main span{color:#536174;background:#f3f7fb;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:900}.activity-row-main p{color:#40506a;margin:8px 0 0;font-size:14px;font-weight:650}.activity-row-main small{color:#7a8798;margin-top:8px;font-size:12px;font-weight:800;display:block}.activity-row-card time{color:#738196;white-space:nowrap;font-size:12px;font-weight:800}.activity-side-panel{gap:14px;padding:20px;display:grid}.activity-side-panel h3{color:#111827;margin:0;font-size:18px;font-weight:900}.review-item{background:#f8fbff;border:1px solid #e7edf5;border-radius:8px;gap:12px;padding:14px;display:flex}.review-item>span{border-radius:999px;width:10px;height:10px;margin-top:5px}.review-item>span.orange{background:#ff8a17}.review-item>span.blue{background:#1478f2}.review-item strong,.review-item p{margin:0}.review-item strong{color:#172033;font-size:14px;font-weight:900}.review-item p{color:#536174;margin-top:5px;font-size:12px;font-weight:700}.calendar-page,.add-staff-page,.collect-fee-page,.create-event-page,.create-notice-page,.notices-page{gap:16px;display:grid}.calendar-hero,.add-staff-hero,.collect-fee-hero,.create-event-hero,.create-notice-hero,.notices-hero{color:#fff;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:24px;padding:24px 26px;display:grid;box-shadow:0 16px 36px #0f172a1f}.calendar-hero{background:linear-gradient(135deg,#102b4ef5,#7c3aedc7),#102b4e}.notices-hero{background:linear-gradient(135deg,#102b4ef5,#ea580cc7),#102b4e}.create-event-hero{background:linear-gradient(135deg,#102b4ef5,#1478f2c7),#102b4e}.create-notice-hero{background:linear-gradient(135deg,#102b4ef5,#ea580cd1),#102b4e}.collect-fee-hero{background:linear-gradient(135deg,#102b4ef5,#16a34ac7),#102b4e}.add-staff-hero{background:linear-gradient(135deg,#102b4ef5,#7c3aedc7),#102b4e}.calendar-hero h2,.calendar-hero p,.add-staff-hero h2,.add-staff-hero p,.collect-fee-hero h2,.collect-fee-hero p,.create-event-hero h2,.create-event-hero p,.create-notice-hero h2,.create-notice-hero p,.notices-hero h2,.notices-hero p{margin:0}.calendar-hero h2,.add-staff-hero h2,.collect-fee-hero h2,.create-event-hero h2,.create-notice-hero h2,.notices-hero h2{color:#fff;font-size:32px;font-weight:900;line-height:1.1}.calendar-hero p,.add-staff-hero p,.collect-fee-hero p,.create-event-hero p,.create-notice-hero p,.notices-hero p{color:#eef2ff;max-width:720px;margin-top:10px;font-size:14px;font-weight:650}.event-draft-card{background:#ffffff1f;border:1px solid #ffffff38;border-radius:8px;min-width:210px;min-height:118px;padding:18px}.event-draft-card span,.event-draft-card p{color:#dbeafe;font-size:12px;font-weight:800}.event-draft-card strong{color:#fff;margin-top:8px;font-size:24px;font-weight:900;display:block}.event-draft-card p{margin:12px 0 0}.notice-draft-card{background:#ffffff1f;border:1px solid #ffffff38;border-radius:8px;min-width:210px;min-height:118px;padding:18px}.notice-draft-card span,.notice-draft-card p{color:#ffedd5;font-size:12px;font-weight:800}.notice-draft-card strong{color:#fff;margin-top:8px;font-size:24px;font-weight:900;display:block}.notice-draft-card p{margin:12px 0 0}.fee-draft-card,.staff-draft-card{background:#ffffff1f;border:1px solid #ffffff38;border-radius:8px;min-width:210px;min-height:118px;padding:18px}.fee-draft-card span,.fee-draft-card p,.staff-draft-card span,.staff-draft-card p{color:#dcfce7;font-size:12px;font-weight:800}.staff-draft-card span,.staff-draft-card p{color:#ede9fe}.fee-draft-card strong,.staff-draft-card strong{color:#fff;margin-top:8px;font-size:24px;font-weight:900;display:block}.fee-draft-card p,.staff-draft-card p{margin:12px 0 0}.collect-fee-layout,.add-staff-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:16px;display:grid}.fee-form,.staff-form{gap:16px;display:grid}.create-event-layout,.create-notice-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:16px;display:grid}.event-form,.notice-form{gap:16px;display:grid}.event-toggle-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.event-toggle-grid label{color:#172033;background:#f8fbff;border:1px solid #dfe7f1;border-radius:8px;align-items:center;gap:10px;min-height:58px;padding:14px;font-size:13px;font-weight:850;display:flex}.event-toggle-grid input{accent-color:#1478f2;width:16px;height:16px}.event-preview-panel,.notice-preview-panel,.fee-preview-panel,.staff-preview-panel{background:#fff;border:1px solid #e7edf5;border-radius:8px;gap:14px;padding:20px;display:grid;box-shadow:0 8px 24px #0f172a0d}.fee-preview-panel h3,.staff-preview-panel h3{color:#111827;margin:0;font-size:18px;font-weight:900}.fee-summary-card,.staff-preview-card{border-radius:8px;align-content:center;gap:7px;min-height:122px;padding:18px;display:grid}.fee-summary-card{color:#16875a;background:#eaf8ee}.staff-preview-card{color:#7153df;background:#f1ecff}.fee-summary-card span,.staff-preview-card span{text-transform:uppercase;font-size:12px;font-weight:900}.staff-preview-card>span{background:#fff;border-radius:999px;place-items:center;width:44px;height:44px;display:grid}.fee-summary-card strong,.staff-preview-card strong{color:#172033;font-size:22px;font-weight:900}.fee-summary-card p,.staff-preview-card p{color:#536174;margin:0;font-size:13px;font-weight:750}.notice-preview-panel h3{color:#111827;margin:0;font-size:18px;font-weight:900}.notice-preview-card{color:#c0560c;background:#fff2df;border-radius:8px;align-content:center;gap:7px;min-height:122px;padding:18px;display:grid}.notice-preview-card span{text-transform:uppercase;font-size:12px;font-weight:900}.notice-preview-card strong{color:#172033;font-size:18px;font-weight:900}.notice-preview-card p{color:#536174;margin:0;font-size:13px;font-weight:750}.event-preview-panel h3{color:#111827;margin:0;font-size:18px;font-weight:900}.event-preview-card{color:#1478f2;background:#eef5ff;border-radius:8px;align-content:center;gap:7px;min-height:122px;padding:18px;display:grid}.event-preview-card span{text-transform:uppercase;font-size:12px;font-weight:900}.event-preview-card strong{color:#172033;font-size:18px;font-weight:900}.event-preview-card p{color:#536174;margin:0;font-size:13px;font-weight:750}.hero-create-button{color:#0f61c8;white-space:nowrap;background:#fff;border:0;border-radius:8px;justify-content:center;align-items:center;height:42px;padding:0 16px;font-size:13px;font-weight:900;display:inline-flex}.calendar-layout{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:16px;display:grid}.calendar-board,.calendar-events-panel,.notices-list-panel,.notice-summary-grid article{background:#fff;border:1px solid #e7edf5;border-radius:8px;box-shadow:0 8px 24px #0f172a0d}.calendar-board,.calendar-events-panel,.notices-list-panel{padding:22px 24px}.calendar-board-head,.notices-list-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.calendar-board-head h3,.calendar-board-head p,.calendar-events-panel h3,.notices-list-head h3{margin:0}.calendar-board-head h3,.calendar-events-panel h3,.notices-list-head h3{color:#111827;font-size:18px;font-weight:900}.calendar-board-head p{color:#536174;margin-top:5px;font-size:13px;font-weight:700}.calendar-switch,.notices-list-head div{gap:8px;display:flex}.calendar-switch button,.notices-list-head button{color:#536174;background:#fff;border:1px solid #dce5f0;border-radius:999px;height:32px;padding:0 12px;font-size:12px;font-weight:850}.calendar-switch button:first-child,.notices-list-head button.active{color:#1478f2;background:#eef5ff;border-color:#1478f2}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;display:grid}.calendar-grid>strong{color:#738196;text-align:center;font-size:12px;font-weight:900}.calendar-day{aspect-ratio:1;color:#172033;background:#f8fbff;border:1px solid #e7edf5;border-radius:8px;font-size:13px;font-weight:850}.calendar-day.has-event{color:#1478f2;background:#eef5ff;border-color:#1478f2;box-shadow:inset 0 -4px #1478f22e}.calendar-event-list{gap:12px;margin-top:18px;display:grid}.calendar-event-card{background:#f8fbff;border:1px solid #e7edf5;border-radius:8px;grid-template-columns:52px minmax(0,1fr);gap:12px;padding:14px;display:grid}.event-date{border-radius:8px;align-content:center;place-items:center;width:52px;height:52px;font-size:11px;font-weight:900;display:grid}.event-date strong{font-size:18px;line-height:1;display:block}.event-date.blue{color:#1478f2;background:#eef5ff}.event-date.orange{color:#c0560c;background:#fff2df}.event-date.green{color:#16875a;background:#eaf8ee}.event-date.purple{color:#7153df;background:#f1ecff}.calendar-event-card strong,.calendar-event-card p,.calendar-event-card small{display:block}.calendar-event-card strong{color:#172033;font-size:14px;font-weight:900}.calendar-event-card p,.calendar-event-card small{color:#536174;margin:5px 0 0;font-size:12px;font-weight:750}.notice-summary-grid{grid-template-columns:repeat(3,minmax(160px,1fr));gap:16px;display:grid}.notice-summary-grid article{min-height:94px;padding:18px}.notice-summary-grid span{color:#536174;font-size:13px;font-weight:850}.notice-summary-grid strong{color:#111827;margin-top:8px;font-size:28px;font-weight:900;display:block}.notices-list{gap:12px;display:grid}.notice-row-card{background:#f8fbff;border:1px solid #e7edf5;border-radius:8px;grid-template-columns:12px minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px;display:grid}.notice-status-dot{border-radius:999px;width:10px;height:10px}.notice-status-dot.orange{background:#ff8a17}.notice-status-dot.green{background:#21a85e}.notice-status-dot.blue{background:#1478f2}.notice-status-dot.purple{background:#7153df}.notice-row-card strong,.notice-row-card p{margin:0}.notice-row-card strong{color:#172033;font-size:14px;font-weight:900}.notice-row-card p{color:#536174;margin-top:5px;font-size:13px;font-weight:700}.notice-status{border-radius:999px;padding:6px 10px;font-size:12px;font-weight:900}.notice-status.orange{color:#c0560c;background:#fff2df}.notice-status.green{color:#16875a;background:#eaf8ee}.notice-status.blue{color:#1478f2;background:#eef5ff}.notice-status.purple{color:#7153df;background:#f1ecff}.students-page{gap:16px;display:grid}.students-hero{color:#fff;background:linear-gradient(135deg,#102b4ef5,#1478f2c7),#102b4e;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:24px;padding:24px 26px;display:grid;box-shadow:0 16px 36px #0f172a1f}.students-hero h2,.students-hero p{margin:0}.students-hero h2{color:#fff;font-size:var(--text-hero);line-height:1.1;font-weight:var(--font-weight-bold)}.students-hero p{color:#eef2ff;max-width:760px;margin-top:10px}.student-summary-grid{grid-template-columns:repeat(4,minmax(180px,1fr));gap:16px;display:grid}.student-metric,.student-directory-panel,.student-profile-panel{background:#fff;border:1px solid #e7edf5;border-radius:8px;box-shadow:0 8px 24px #0f172a0d}.student-metric{grid-template-columns:12px minmax(0,1fr);align-items:center;gap:14px;min-height:104px;padding:18px;display:grid}.student-metric>span{border-radius:999px;width:10px;height:58px}.student-metric>span.blue{background:#1478f2}.student-metric>span.green{background:#21a85e}.student-metric>span.orange{background:#ff8a17}.student-metric>span.red{background:#ef3f52}.student-metric p,.student-metric strong,.student-metric small{margin:0;display:block}.student-metric p{color:#536174;font-size:var(--text-sm);font-weight:var(--font-weight-medium)}.student-metric strong{color:#111827;font-size:26px;line-height:1;font-weight:var(--font-weight-bold);margin-top:5px}.student-metric small{color:#738196;margin-top:6px}.student-workspace{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:16px;display:grid}.student-directory-panel,.student-profile-panel{min-width:0;padding:20px}.student-toolbar{grid-template-columns:minmax(240px,1fr) 170px 170px;gap:12px;margin-bottom:14px;display:grid}.student-search,.student-select{color:#64748b;background:#f8fbff;border:1px solid #dce5f0;border-radius:8px;align-items:center;height:42px;display:flex}.student-search{gap:10px;padding:0 13px}.student-search svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.student-search input,.student-select select{color:#172033;width:100%;min-width:0;font:inherit;background:0 0;border:0;outline:0}.student-select select{height:100%;padding:0 13px}.student-bulk-bar{color:#536174;background:#f3f7fb;border-radius:8px;flex-wrap:wrap;align-items:center;gap:12px;min-height:42px;margin-bottom:14px;padding:10px 12px;display:flex}.student-bulk-bar label{color:#172033;align-items:center;gap:8px;display:inline-flex}.student-bulk-bar span{margin-right:auto}.student-bulk-bar button{color:#1478f2;background:#fff;border:1px solid #dce5f0;border-radius:999px;height:30px;padding:0 12px}.student-bulk-bar button:disabled{cursor:not-allowed;color:#94a3b8;background:#eef2f7}.student-table{border:1px solid #e7edf5;border-radius:8px;overflow:hidden}.student-table-head,.student-row{grid-template-columns:34px minmax(190px,1.4fr) minmax(90px,.8fr) minmax(92px,.7fr) minmax(70px,.6fr) minmax(110px,.8fr);align-items:center;gap:12px;padding:13px 14px;display:grid}.student-table-head{color:#536174;font-size:var(--text-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;background:#f3f7fb}.student-row{color:#253449;text-align:left;background:#fff;border:0;border-top:1px solid #edf2f7;width:100%}.student-row:hover,.student-row.active{background:#f8fbff}.student-row.active{box-shadow:inset 3px 0 #1478f2}.student-row strong,.student-row small{display:block}.student-row strong{color:#111827;font-weight:var(--font-weight-semibold)}.student-row small{color:#738196;margin-top:3px}.student-rate,.student-status{width:fit-content;min-height:26px;font-style:normal;font-size:var(--text-xs);font-weight:var(--font-weight-semibold);border-radius:999px;align-items:center;padding:0 9px;display:inline-flex}.student-rate.good,.student-status.green{color:#16875a;background:#eaf8ee}.student-rate.watch,.student-status.orange{color:#c0560c;background:#fff2df}.student-status.red{color:#ef3f52;background:#fff0f1}.student-empty-state{color:#536174;text-align:center;place-items:center;gap:6px;min-height:160px;display:grid}.student-empty-state strong,.student-empty-state p{margin:0}.student-empty-state strong{color:#172033;font-weight:var(--font-weight-semibold)}.student-profile-panel{gap:16px;display:grid;position:sticky;top:98px}.student-profile-head{grid-template-columns:56px minmax(0,1fr);align-items:center;gap:14px;display:grid}.student-profile-head>span{color:#fff;width:56px;height:56px;font-size:var(--text-md);font-weight:var(--font-weight-bold);background:linear-gradient(135deg,#1478f2,#7153df);border-radius:14px;place-items:center;display:grid}.student-profile-head h3,.student-profile-head p{margin:0}.student-profile-head h3{color:#111827;font-size:var(--text-lg);font-weight:var(--font-weight-bold)}.student-profile-head p{color:#536174;margin-top:4px}.student-profile-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.student-profile-grid div,.student-progress-card,.student-timeline-card{background:#f8fbff;border:1px solid #e7edf5;border-radius:8px;padding:14px}.student-profile-grid span,.student-progress-card span,.student-timeline-card small{color:#738196;font-size:var(--text-xs);display:block}.student-profile-grid strong{color:#172033;font-weight:var(--font-weight-semibold);margin-top:5px;display:block}.student-progress-card{gap:12px;display:grid}.student-progress-card>div:first-child{justify-content:space-between;gap:12px;display:flex}.student-progress-card strong{color:#111827;font-size:var(--text-xl);line-height:1}.student-progress-track{background:#e3ebf6;border-radius:999px;height:8px;overflow:hidden}.student-progress-track i{width:var(--progress);border-radius:inherit;background:#1478f2;height:100%;display:block}.student-timeline-card h3,.student-timeline-card p{margin:0}.student-timeline-card h3{color:#111827;font-size:var(--text-base);font-weight:var(--font-weight-bold)}.student-timeline-card p{color:#40506a;margin-top:8px}.student-timeline-card small{margin-top:8px}.student-profile-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.timetable-page{gap:16px;display:grid}.timetable-hero{color:#fff;background:linear-gradient(135deg,#102b4ef5,#7c3aedc7),#102b4e;border-radius:8px;grid-template-columns:minmax(0,1fr) 230px;align-items:end;gap:24px;padding:24px 26px;display:grid;box-shadow:0 16px 36px #0f172a1f}.timetable-hero h2,.timetable-hero p{margin:0}.timetable-hero h2{color:#fff;font-size:var(--text-hero);line-height:1.1;font-weight:var(--font-weight-bold)}.timetable-hero p{color:#eef2ff;max-width:760px;margin-top:10px}.timetable-live-card{background:#ffffff1f;border:1px solid #ffffff38;border-radius:8px;min-height:118px;padding:18px}.timetable-live-card span,.timetable-live-card p{color:#ede9fe}.timetable-live-card strong{color:#fff;font-size:var(--text-xl);font-weight:var(--font-weight-bold);margin-top:8px;display:block}.timetable-live-card p{margin:12px 0 0}.timetable-controls,.timetable-board,.timetable-detail-panel{background:#fff;border:1px solid #e7edf5;border-radius:8px;box-shadow:0 8px 24px #0f172a0d}.timetable-controls{justify-content:space-between;align-items:center;gap:14px;padding:14px;display:flex}.timetable-day-select select,.timetable-board-head button{color:#536174;height:34px;font-size:var(--text-sm);font-weight:var(--font-weight-semibold);white-space:nowrap;background:#fff;border:1px solid #dce5f0;border-radius:999px;padding:0 13px}.timetable-day-select{color:#536174;font-size:var(--text-sm);font-weight:var(--font-weight-medium);align-items:center;gap:10px;display:inline-flex}.timetable-day-select select{color:#172033;border-radius:8px;min-width:170px}.timetable-layout{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:16px;display:grid}.timetable-board,.timetable-detail-panel{min-width:0;padding:20px}.timetable-board-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.timetable-board-head h3,.timetable-board-head p{margin:0}.timetable-board-head h3{color:#111827;font-size:var(--text-lg);font-weight:var(--font-weight-bold)}.timetable-board-head p{color:#536174;margin-top:5px}.timetable-board-head button{color:#fff;background:#1478f2;border-color:#1478f2;border-radius:8px}.timetable-grid{border:1px solid #e7edf5;border-radius:8px;overflow-x:auto}.timetable-grid-head,.timetable-grid-row{background:#e7edf5;grid-template-columns:104px repeat(6,minmax(120px,1fr));gap:1px;min-width:920px;display:grid}.timetable-grid-head>span,.timetable-grid-row>strong,.timetable-grid-row>button{background:#fff;align-content:center;gap:4px;min-height:74px;padding:12px;display:grid}.timetable-grid-head>span{color:#536174;font-size:var(--text-xs)}.timetable-grid-head strong{color:#172033;font-size:var(--text-sm);font-weight:var(--font-weight-bold);display:block}.timetable-grid-row>strong{color:#172033;font-weight:var(--font-weight-bold)}.timetable-grid-row.active>strong{color:#1478f2;background:#eef5ff}.timetable-grid-row>button{text-align:left;color:#172033;border:0}.timetable-grid-row>button:hover,.timetable-grid-row>button.active{outline-offset:-2px;outline:2px solid}.timetable-grid-row button span,.timetable-grid-row button small{display:block}.timetable-grid-row button span{font-weight:var(--font-weight-semibold)}.timetable-grid-row button small{color:#64748b}.timetable-grid-row button.blue{color:#1478f2;background:#eef5ff}.timetable-grid-row button.green{color:#16875a;background:#eaf8ee}.timetable-grid-row button.purple{color:#7153df;background:#f1ecff}.timetable-grid-row button.orange{color:#c0560c;background:#fff2df}.timetable-grid-row button.red{color:#ef3f52;background:#fff0f1}.timetable-grid-row button.teal{color:#0eb3a0;background:#e7fbf8}.timetable-grid-row button.amber{color:#a26300;background:#fff7d6}.timetable-grid-row button.slate{color:#536174;background:#f3f7fb}.timetable-detail-panel{gap:16px;display:grid;position:sticky;top:98px}.period-detail-card{background:#f8fbff;border:1px solid #e7edf5;border-radius:8px;grid-template-columns:12px minmax(0,1fr);gap:14px;padding:16px;display:grid}.period-detail-card>span{border-radius:999px;width:10px}.period-detail-card>span.blue,.teacher-load-row span.blue{background:#1478f2}.period-detail-card>span.green,.teacher-load-row span.green{background:#16875a}.period-detail-card>span.purple,.teacher-load-row span.purple{background:#7153df}.period-detail-card>span.orange,.teacher-load-row span.orange{background:#c0560c}.period-detail-card>span.red,.teacher-load-row span.red{background:#ef3f52}.period-detail-card>span.teal,.teacher-load-row span.teal{background:#0eb3a0}.period-detail-card>span.amber,.teacher-load-row span.amber{background:#a26300}.period-detail-card>span.slate,.teacher-load-row span.slate{background:#64748b}.period-detail-card p,.period-detail-card h3{margin:0}.period-detail-card p{color:#536174}.period-detail-card h3{color:#111827;font-size:var(--text-xl);font-weight:var(--font-weight-bold);margin-top:5px}.period-detail-card strong{color:#172033;margin-top:8px;display:block}.period-meta-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.period-meta-grid div,.teacher-load-card{background:#fff;border:1px solid #e7edf5;border-radius:8px;padding:14px}.period-meta-grid span{color:#738196;font-size:var(--text-xs);display:block}.period-meta-grid strong{color:#172033;font-weight:var(--font-weight-semibold);margin-top:5px;display:block}.teacher-load-card{gap:10px;display:grid}.teacher-load-card h3{color:#111827;font-size:var(--text-base);font-weight:var(--font-weight-bold);margin:0}.teacher-load-row{grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.teacher-load-row span{border-radius:999px;width:9px;height:9px}.teacher-load-row strong{color:#172033;font-weight:var(--font-weight-semibold)}.teacher-load-row p{color:#536174;font-size:var(--text-xs);margin:0}.timetable-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.timetable-edit-modal{background:#fff;border:1px solid #dce5f0;border-radius:10px;gap:18px;width:min(520px,100%);padding:22px;display:grid;box-shadow:0 28px 70px #0f172a47}.timetable-edit-modal header,.timetable-edit-modal footer{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.timetable-edit-modal header h3,.timetable-edit-modal header p{margin:0}.timetable-edit-modal header h3{color:#111827;font-size:var(--text-lg);font-weight:var(--font-weight-bold)}.timetable-edit-modal header p{color:#536174;margin-top:5px}.timetable-edit-modal .close-button svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.timetable-edit-modal label{color:#2b405d;font-size:var(--text-sm);font-weight:var(--font-weight-medium);gap:8px;display:grid}.timetable-edit-modal select{color:#111827;width:100%;height:42px;font:inherit;background:#f8fbff;border:1px solid #dce5f0;border-radius:8px;outline:0;padding:0 13px}.timetable-edit-modal select:focus{background:#fff;border-color:#1478f2;box-shadow:0 0 0 3px #1478f21f}.period-edit-preview{background:#f8fbff;border:1px solid #e7edf5;border-radius:8px;grid-template-columns:12px minmax(0,1fr);gap:14px;padding:14px;display:grid}.period-edit-preview>span{border-radius:999px;width:10px}.period-edit-preview>span.blue{background:#1478f2}.period-edit-preview>span.green{background:#16875a}.period-edit-preview>span.purple{background:#7153df}.period-edit-preview>span.orange{background:#c0560c}.period-edit-preview>span.red{background:#ef3f52}.period-edit-preview>span.teal{background:#0eb3a0}.period-edit-preview>span.amber{background:#a26300}.period-edit-preview>span.slate{background:#64748b}.period-edit-preview strong,.period-edit-preview p{margin:0}.period-edit-preview strong{color:#111827;font-weight:var(--font-weight-bold)}.period-edit-preview p{color:#536174;margin-top:4px}.attendance-page,.fees-page{gap:16px;display:grid}.notice-row-card small{color:#718096;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:7px;font-size:12px;line-height:1.45;display:-webkit-box;overflow:hidden}.notices-list>.table-loader{border:1px solid #e7edf5;border-radius:8px}.onboarding-school-identity{align-items:center;gap:10px;display:flex}.onboarding-school-logo{color:#086fd6;background:#e9f4ff;border:1px solid #d7e4f2;border-radius:9px;flex:none;place-items:center;width:42px;height:42px;font-size:12px;font-weight:850;display:grid;overflow:hidden}.onboarding-school-logo img{object-fit:contain;background:#fff;width:100%;height:100%}.onboarding-edit-profile{color:#086fd6;cursor:pointer;background:0 0;border:0;width:fit-content;padding:4px 0;font-size:12px;font-weight:750}.school-logo-upload{color:#334155;background:#f8fbff;border:1px dashed #bed2e8;border-radius:9px;align-items:center;gap:16px;padding:14px;display:flex}.school-logo-preview{color:#718096;background:#fff;border:1px solid #d9e4ef;border-radius:12px;flex:none;place-items:center;width:78px;height:78px;font-size:11px;font-weight:850;display:grid;overflow:hidden}.school-logo-preview img{object-fit:contain;width:100%;height:100%}.school-logo-upload strong,.school-logo-upload p,.school-logo-upload small{margin:0;display:block}.school-logo-upload p{color:#667386;margin-top:5px;font-size:12px;font-weight:500}.school-logo-upload small{color:#087443;margin-top:5px}.school-logo-actions{gap:12px;margin-top:10px;display:flex}.school-logo-actions label,.school-logo-actions button{color:#086fd6;cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;font-weight:750}.school-logo-actions input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.school-logo-actions button{color:#c81e36}.school-profile-editor-modal{background:#fff;border:1px solid #dce5ef;border-radius:12px;width:min(820px,100%);max-height:calc(100vh - 40px);overflow:auto;box-shadow:0 30px 80px #0f172a52}.school-profile-editor-modal>header,.school-profile-editor-modal>footer{justify-content:space-between;align-items:center;gap:20px;padding:20px 22px;display:flex}.school-profile-editor-modal>header{border-bottom:1px solid #e7edf5;align-items:flex-start}.school-profile-editor-modal>header h3,.school-profile-editor-modal>header p{margin:0}.school-profile-editor-modal>header h3{color:#172033;font-size:21px}.school-profile-editor-modal>header p{color:#667386;margin-top:6px;font-size:13px}.school-profile-editor-modal>header .eyebrow{color:#086fd6}.school-profile-editor-modal .close-button{color:#667386;cursor:pointer;background:0 0;border:0;font-size:26px}.school-profile-editor-body{gap:20px;padding:22px;display:grid}.school-profile-editor-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.school-profile-editor-grid label{color:#334155;gap:7px;font-size:12px;font-weight:700;display:grid}.school-profile-editor-grid .wide-field{grid-column:1/-1}.school-profile-editor-grid input,.school-profile-editor-grid textarea{color:#172033;width:100%;font:inherit;background:#fff;border:1px solid #d8e2ee;border-radius:8px;outline:none;padding:10px 12px}.school-profile-editor-grid input:disabled{color:#718096;background:#f2f5f8}.school-profile-editor-modal>footer{background:#f8fbff;border-top:1px solid #e7edf5;justify-content:flex-end}.attendance-mode-notice{color:#244266;font-size:var(--text-sm);background:#f3f7fc;border:1px solid #c7d7ee;border-radius:8px;padding:13px 16px;line-height:1.5}.attendance-empty{color:#64748b;text-align:center;padding:30px 18px}.attendance-hero-page,.fees-hero-page{color:#fff;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:24px;padding:24px 26px;display:grid;box-shadow:0 16px 36px #0f172a1f}.attendance-hero-page{background:linear-gradient(135deg,#102b4ef5,#16a34ac7),#102b4e}.fees-hero-page{background:linear-gradient(135deg,#102b4ef5,#ea580ccc),#102b4e}.attendance-hero-page h2,.attendance-hero-page p,.fees-hero-page h2,.fees-hero-page p{margin:0}.attendance-hero-page h2,.fees-hero-page h2{color:#fff;font-size:var(--text-hero);line-height:1.1;font-weight:var(--font-weight-bold)}.attendance-hero-page p,.fees-hero-page p{color:#eef2ff;max-width:760px;margin-top:10px}.attendance-live-card{background:#ffffff1f;border:1px solid #ffffff38;border-radius:8px;min-width:230px;min-height:118px;padding:18px}.attendance-live-card span,.attendance-live-card p{color:#dcfce7}.attendance-live-card strong{color:#fff;font-size:var(--text-xl);font-weight:var(--font-weight-bold);margin-top:8px;display:block}.attendance-live-card p{margin:12px 0 0}.attendance-summary-grid,.fees-summary-grid{grid-template-columns:repeat(4,minmax(170px,1fr));gap:16px;display:grid}.attendance-metric-card,.fee-metric-card,.attendance-register-panel,.attendance-insight-panel,.fees-ledger-panel,.fee-detail-panel{background:#fff;border:1px solid #e7edf5;border-radius:8px;box-shadow:0 8px 24px #0f172a0d}.attendance-metric-card,.fee-metric-card{min-height:94px;padding:18px}.attendance-metric-card>span,.fee-metric-card>span{border-radius:999px;width:10px;height:10px;display:block}.attendance-metric-card>span.green,.fee-metric-card>span.green{background:#16875a}.attendance-metric-card>span.red,.fee-metric-card>span.red{background:#ef3f52}.attendance-metric-card>span.purple{background:#7153df}.attendance-metric-card>span.blue,.fee-metric-card>span.blue{background:#1478f2}.fee-metric-card>span.orange{background:#c0560c}.attendance-metric-card p,.attendance-metric-card strong,.fee-metric-card p,.fee-metric-card strong{margin:0}.attendance-metric-card p,.fee-metric-card p{color:#536174;font-weight:var(--font-weight-medium);margin-top:10px}.attendance-metric-card strong,.fee-metric-card strong{color:#111827;font-size:var(--text-2xl);line-height:1;font-weight:var(--font-weight-bold);margin-top:6px;display:block}.attendance-module-layout,.fees-layout{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:16px;display:grid}.attendance-register-panel,.attendance-insight-panel,.fees-ledger-panel,.fee-detail-panel{min-width:0;padding:20px}.module-toolbar{grid-template-columns:minmax(240px,1fr) 170px 170px;gap:12px;margin-bottom:14px;display:grid}.module-search,.module-select{color:#64748b;background:#f8fbff;border:1px solid #dce5f0;border-radius:8px;align-items:center;height:42px;display:flex}.module-search{gap:10px;padding:0 13px}.module-search svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.module-search input,.module-select select,.module-select input{color:#172033;width:100%;min-width:0;font:inherit;background:0 0;border:0;outline:0}.module-select select,.module-select input{height:100%;padding:0 13px}.attendance-bulk-bar{color:#536174;background:#f3f7fb;border-radius:8px;flex-wrap:wrap;align-items:center;gap:12px;min-height:42px;margin-bottom:14px;padding:10px 12px;display:flex}.attendance-bulk-bar span{margin-right:auto}.attendance-bulk-bar button{color:#1478f2;background:#fff;border:1px solid #dce5f0;border-radius:999px;height:30px;padding:0 12px}.attendance-bulk-bar button:disabled{cursor:not-allowed;opacity:.5}.attendance-register-table,.fees-table{border:1px solid #e7edf5;border-radius:8px;overflow:hidden}.fees-table{overflow-x:auto}.fees-table>.table-loader{min-width:850px}.attendance-register-head,.attendance-register-row{grid-template-columns:minmax(190px,1.4fr) minmax(90px,.8fr) 70px 110px minmax(230px,1fr);align-items:center;gap:12px;padding:13px 14px;display:grid}.fees-table-head,.fees-table-row{grid-template-columns:128px minmax(180px,1.3fr) 90px 90px 90px 92px 60px;align-items:center;gap:12px;min-width:850px;padding:13px 14px;display:grid}.attendance-register-head,.fees-table-head{color:#536174;font-size:var(--text-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;background:#f3f7fb}.attendance-register-row,.fees-table-row{color:#253449;text-align:left;background:#fff;border:0;border-top:1px solid #edf2f7;width:100%}.attendance-register-row:hover,.attendance-register-row.active,.fees-table-row:hover,.fees-table-row.active{background:#f8fbff}.attendance-register-row.active,.fees-table-row.active{box-shadow:inset 3px 0 #1478f2}.attendance-register-row strong,.attendance-register-row small,.fees-table-row strong,.fees-table-row small{display:block}.attendance-register-row strong,.fees-table-row strong{color:#111827;font-weight:var(--font-weight-semibold)}.attendance-register-row small,.fees-table-row small{color:#738196;margin-top:3px}.status-buttons{flex-wrap:wrap;gap:6px;display:flex}.status-buttons i,.fee-status,.fee-pay-action{min-height:26px;font-style:normal;font-size:var(--text-xs);font-weight:var(--font-weight-semibold);border-radius:999px;align-items:center;padding:0 9px;display:inline-flex}.status-buttons i{color:#64748b;cursor:pointer;background:#f3f7fb;transition:color .16s,background .16s,box-shadow .16s,transform .16s}.status-buttons i:hover{color:#172033;background:#e4ebf5}.status-buttons i[aria-disabled=true]{cursor:default}.status-buttons i.active{color:#fff;transform:translateY(-1px);box-shadow:0 5px 12px #0f172a33}.status-buttons i.active.green{background:#087443}.status-buttons i.active.red{background:#c81e36}.status-buttons i.active.purple{background:#6040c8}.status-buttons i.active.blue{background:#075fbd}.fee-status.green{color:#16875a;background:#eaf8ee}.fee-status.red{color:#ef3f52;background:#fff0f1}.fee-status.orange{color:#c0560c;background:#fff2df}.attendance-save-state{color:#7b8798;font-size:var(--text-xs);font-weight:var(--font-weight-semibold)}.attendance-save-state.saved{color:#087443}.attendance-save-state.pending{color:#9a4d05}.attendance-success-popup{text-align:center;background:#fff;border:1px solid #d9e5df;border-radius:14px;width:min(420px,100%);padding:30px;box-shadow:0 30px 80px #0f172a4d}.attendance-success-icon{background:#087443;border-radius:50%;place-items:center;width:52px;height:52px;margin:0 auto 16px;display:grid;box-shadow:0 12px 24px #0874433d}.attendance-success-icon svg{fill:none;stroke:#fff;stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round;width:27px;height:27px}.attendance-success-popup h3{color:#122033;font-size:var(--text-xl);margin:8px 0 0}.attendance-success-popup p{color:#5b687a;margin:10px 0 22px;line-height:1.55}.payment-result-popup.error .attendance-success-icon{background:#c81e36;box-shadow:0 12px 24px #c81e363d}.payment-result-popup.error .eyebrow{color:#c81e36}.payment-result-popup>.eyebrow{color:#0868c9;letter-spacing:.08em;margin-bottom:4px;font-size:11px;font-weight:800;line-height:1.4;display:block}.payment-result-details{text-align:left;grid-template-columns:1fr 1fr;gap:9px;margin:0 0 22px;display:grid}.payment-result-details div{background:#f8fbff;border:1px solid #e4ebf4;border-radius:8px;padding:10px 12px}.payment-result-details span,.payment-result-details strong{display:block}.payment-result-details span{color:#718096;font-size:var(--text-xs)}.payment-result-details strong{color:#172033;overflow-wrap:anywhere;margin-top:4px}.payment-result-actions{justify-content:center;gap:10px;display:flex}.printable-receipt-modal{background:#eef3f9;border-radius:14px;width:min(920px,100%);max-height:calc(100vh - 40px);overflow:auto;box-shadow:0 30px 80px #0f172a52}.receipt-screen-actions{z-index:2;background:#fffffff5;border-bottom:1px solid #dce5ef;justify-content:space-between;align-items:center;gap:20px;padding:16px 22px;display:flex;position:sticky;top:0}.receipt-screen-actions strong,.receipt-screen-actions span{display:block}.receipt-screen-actions span{color:#637083;font-size:var(--text-sm);margin-top:3px}.receipt-screen-actions>div:last-child{gap:10px;display:flex}.fee-payment-receipt{color:#172033;background:#fff;width:min(794px,100% - 40px);min-height:820px;margin:28px auto;padding:46px;box-shadow:0 10px 35px #23344b1f}.receipt-document-header{border-bottom:2px solid #1473e6;grid-template-columns:auto 1fr auto;align-items:start;gap:16px;padding-bottom:26px;display:grid}.receipt-school-mark{color:#fff;background:#1473e6;border-radius:12px;place-items:center;width:54px;height:54px;font-size:18px;font-weight:800;display:grid}.receipt-school-mark.has-logo{box-shadow:none;background:#fff;border:1px solid #dce5ef}.receipt-school-mark img{object-fit:contain;width:100%;height:100%}.receipt-document-header h2,.receipt-document-header p{margin:0}.receipt-document-header h2{font-size:22px}.receipt-document-header p{color:#667386;margin-top:5px;font-size:12px}.receipt-title-block{text-align:right}.receipt-title-block span,.receipt-title-block strong,.receipt-title-block small{display:block}.receipt-title-block span{color:#1473e6;letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:700}.receipt-title-block strong{margin:4px 0 7px;font-size:17px}.receipt-title-block small{color:#5f6d80;font-weight:700}.receipt-meta-grid{grid-template-columns:repeat(3,1fr);gap:18px 24px;padding:28px 0;display:grid}.receipt-meta-grid span,.receipt-meta-grid strong{display:block}.receipt-meta-grid span{color:#718096;text-transform:uppercase;margin-bottom:5px;font-size:11px}.receipt-meta-grid strong{font-size:14px}.receipt-fee-table{border-collapse:collapse;width:100%}.receipt-fee-table th,.receipt-fee-table td{text-align:left;border:1px solid #dce5ef;padding:14px 16px}.receipt-fee-table th{color:#516176;text-transform:uppercase;background:#f3f7fc;font-size:11px}.receipt-fee-table th:not(:first-child),.receipt-fee-table td:not(:first-child){text-align:right}.receipt-total-section{grid-template-columns:1fr 300px;gap:30px;margin-top:28px;display:grid}.receipt-total-section p{margin:0 0 12px}.receipt-total-section span,.receipt-total-section strong{display:block}.receipt-total-section span{color:#718096;text-transform:uppercase;font-size:11px}.receipt-total-section strong{margin-top:4px;font-size:13px}.receipt-totals p{border-bottom:1px solid #e4ebf3;justify-content:space-between;gap:20px;padding-bottom:10px;display:flex}.receipt-totals p span,.receipt-totals p strong{margin:0;font-size:13px}.receipt-totals .balance{color:#0c5fba;background:#eaf4ff;border:0;border-radius:8px;padding:12px}.receipt-totals .balance span{color:inherit}.receipt-document-footer{color:#718096;border-top:1px solid #dce5ef;justify-content:space-between;gap:20px;margin-top:70px;padding-top:18px;font-size:11px;display:flex}.receipt-document-footer p{margin:0}.fee-invoice-link{color:#086fd6;white-space:nowrap;text-underline-offset:3px;cursor:pointer;font-weight:750;-webkit-text-decoration:underline #a9cff5;text-decoration:underline #a9cff5;display:inline-block}.fee-invoice-link:hover,.fee-invoice-link:focus-visible{color:#064f9b;text-decoration-color:currentColor}.fee-print-invoice-button{width:100%;margin-top:16px}.invoice-payment-history{margin-top:32px}.invoice-payment-history h3{margin:0 0 12px;font-size:15px}.invoice-payment-history .receipt-fee-table{font-size:12px}.invoice-no-payments{color:#718096;text-align:center;background:#f8fbff;border:1px dashed #cfdbea;border-radius:8px;margin:0;padding:18px}.invoice-document-totals{margin-top:24px}.table-loader{background:#fff;border-top:1px solid #e7edf5;padding:14px}.table-loader-label{color:#536174;justify-content:center;align-items:center;gap:9px;min-height:32px;font-size:12px;display:flex}.table-loader-spinner{border:2px solid #d8e7f7;border-top-color:#1478f2;border-radius:50%;width:17px;height:17px;animation:.75s linear infinite table-loader-spin}.table-loader-skeleton{margin-top:8px}.table-loader-row{grid-template-columns:repeat(var(--table-loader-columns), minmax(0, 1fr));border-top:1px solid #f0f3f7;gap:14px;padding:11px 2px;display:grid}.table-loader-row span{background:linear-gradient(90deg,#eef3f8 25%,#dfe9f4 50%,#eef3f8 75%) 0 0/220% 100%;border-radius:999px;height:10px;animation:1.25s ease-in-out infinite table-loader-shimmer}.table-loader-row span:nth-child(2n){width:72%}.table-loader-row span:nth-child(3n){width:55%}.holiday-page{gap:18px;display:grid}.holiday-hero{color:#fff;background:linear-gradient(135deg,#123964,#1478f2);border-radius:10px;justify-content:space-between;align-items:flex-end;gap:24px;padding:26px;display:flex;box-shadow:0 16px 36px #0f172a1f}.holiday-hero h2,.holiday-hero p{margin:0}.holiday-hero h2{font-size:28px}.holiday-hero p{color:#dbeafe;margin-top:8px}.holiday-summary-grid{grid-template-columns:repeat(4,minmax(150px,1fr));gap:14px;display:grid}.holiday-metric,.holiday-table-panel{background:#fff;border:1px solid #e3eaf3;border-radius:9px;box-shadow:0 8px 24px #0f172a0d}.holiday-metric{padding:18px}.holiday-metric>span{border-radius:50%;width:10px;height:10px;display:block}.holiday-metric>span.blue{background:#1478f2}.holiday-metric>span.purple{background:#7153df}.holiday-metric>span.green{background:#16875a}.holiday-metric>span.orange{background:#c0560c}.holiday-metric p,.holiday-metric strong{margin:0}.holiday-metric p{color:#5c6b7e;margin-top:10px;font-size:13px}.holiday-metric strong{color:#111827;margin-top:5px;font-size:24px;display:block}.holiday-table-panel{min-width:0;padding:20px}.holiday-toolbar{grid-template-columns:minmax(240px,1fr) 180px}.holiday-table{border:1px solid #e3eaf3;border-radius:8px;overflow-x:auto}.holiday-table-head,.holiday-table-row{grid-template-columns:minmax(220px,1.4fr) 125px 125px 60px 100px 140px;align-items:center;gap:14px;min-width:820px;padding:13px 15px;display:grid}.holiday-table-head{color:#536174;text-transform:uppercase;background:#f3f7fb;font-size:11px;font-weight:750}.holiday-table-row{color:#334155;border-top:1px solid #edf2f7}.holiday-table-row strong,.holiday-table-row small{display:block}.holiday-table-row strong{color:#172033}.holiday-table-row small{color:#718096;text-overflow:ellipsis;white-space:nowrap;max-width:330px;margin-top:4px;overflow:hidden}.holiday-status{border-radius:999px;padding:5px 9px;font-size:11px;font-style:normal;font-weight:750;display:inline-flex}.holiday-status.upcoming{color:#0c65bd;background:#e9f4ff}.holiday-status.ongoing{color:#087443;background:#e7f8ef}.holiday-status.past{color:#667386;background:#eef2f6}.holiday-row-actions{gap:7px;display:flex}.holiday-row-actions button{color:#086fd6;cursor:pointer;background:0 0;border:0;padding:6px 8px;font-weight:700}.holiday-row-actions button.danger{color:#c81e36}.holiday-editor-modal{background:#fff;border:1px solid #dce5ef;border-radius:12px;width:min(620px,100%);overflow:hidden;box-shadow:0 30px 80px #0f172a52}.holiday-editor-modal header,.holiday-editor-modal footer{justify-content:space-between;align-items:center;gap:20px;padding:20px 22px;display:flex}.holiday-editor-modal header{border-bottom:1px solid #e7edf5;align-items:flex-start}.holiday-editor-modal header h3,.holiday-editor-modal header p{margin:0}.holiday-editor-modal header h3{color:#172033;font-size:21px}.holiday-editor-modal header p{color:#667386;margin-top:7px;font-size:13px}.holiday-editor-modal header .eyebrow{color:#086fd6}.holiday-editor-modal .close-button{color:#667386;cursor:pointer;background:0 0;border:0;font-size:26px}.holiday-editor-grid{grid-template-columns:1fr 1fr;gap:16px;padding:22px;display:grid}.holiday-editor-grid label{color:#334155;gap:7px;font-size:12px;font-weight:700;display:grid}.holiday-editor-grid .wide-field{grid-column:1/-1}.holiday-editor-grid input,.holiday-editor-grid textarea{color:#172033;width:100%;font:inherit;background:#fff;border:1px solid #d8e2ee;border-radius:8px;outline:none;padding:10px 12px}.holiday-editor-grid input:focus,.holiday-editor-grid textarea:focus{border-color:#1478f2;box-shadow:0 0 0 3px #1478f21f}.holiday-editor-modal footer{background:#f8fbff;border-top:1px solid #e7edf5;justify-content:flex-end}.attendance-holiday-notice{color:#744508;background:#fff8e7;border:1px solid #f2d28c;border-radius:8px;align-items:center;gap:13px;padding:14px 16px;display:flex}.attendance-holiday-notice>span{color:#fff;background:#d4810b;border-radius:50%;flex:none;place-items:center;width:38px;height:38px;font-weight:850;display:grid}.attendance-holiday-notice strong,.attendance-holiday-notice p{margin:0}.attendance-holiday-notice p{margin-top:3px;font-size:13px}@keyframes table-loader-spin{to{transform:rotate(360deg)}}@keyframes table-loader-shimmer{to{background-position:-220% 0}}@media (prefers-reduced-motion:reduce){.table-loader-spinner,.table-loader-row span{animation:none}}@media (width<=720px){.holiday-hero{flex-direction:column;align-items:stretch;padding:20px}.holiday-summary-grid,.holiday-toolbar,.holiday-editor-grid{grid-template-columns:1fr}.holiday-editor-grid .wide-field{grid-column:auto}.holiday-table-panel{padding:14px}.school-logo-upload{flex-direction:column;align-items:flex-start}.school-profile-editor-grid{grid-template-columns:1fr}.school-profile-editor-grid .wide-field{grid-column:auto}}@media print{@page{size:A4;margin:12mm}body *{visibility:hidden!important}.fee-payment-receipt,.fee-payment-receipt *{visibility:visible!important}.receipt-modal-backdrop,.printable-receipt-modal{width:100%;max-height:none;box-shadow:none;background:0 0;padding:0;display:block;position:static;overflow:visible}.fee-payment-receipt{width:100%;min-height:0;box-shadow:none;margin:0;padding:0;position:static}}.fee-pay-action{color:#1478f2;background:#eef5ff}.attendance-insight-panel,.fee-detail-panel{gap:16px;display:grid;position:sticky;top:98px}.attendance-student-card,.fee-detail-card{grid-template-columns:56px minmax(0,1fr);align-items:center;gap:14px;display:grid}.attendance-student-card>span{color:#fff;width:56px;height:56px;font-weight:var(--font-weight-bold);background:linear-gradient(135deg,#16875a,#1478f2);border-radius:14px;place-items:center;display:grid}.attendance-student-card h3,.attendance-student-card p,.fee-detail-card h3,.fee-detail-card p{margin:0}.attendance-student-card h3,.fee-detail-card h3{color:#111827;font-size:var(--text-lg);font-weight:var(--font-weight-bold)}.attendance-student-card p,.fee-detail-card p{color:#536174;margin-top:4px}.attendance-detail-list,.fee-breakdown-list{grid-template-columns:1fr 1fr;gap:10px;display:grid}.attendance-detail-list div,.fee-breakdown-list div,.attendance-action-card,.fee-progress-card{background:#f8fbff;border:1px solid #e7edf5;border-radius:8px;padding:14px}.attendance-detail-list span,.fee-breakdown-list span,.fee-progress-card span{color:#738196;font-size:var(--text-xs);display:block}.attendance-detail-list strong,.fee-breakdown-list strong{color:#172033;font-weight:var(--font-weight-semibold);margin-top:5px;display:block}.attendance-action-card{gap:10px;display:grid}.attendance-action-card h3,.attendance-action-card p{margin:0}.attendance-action-card h3{color:#111827;font-size:var(--text-base);font-weight:var(--font-weight-bold)}.attendance-action-card p{color:#536174}.fee-detail-card{background:#f8fbff;border:1px solid #e7edf5;border-radius:8px;grid-template-columns:12px minmax(0,1fr);padding:16px}.fee-detail-card>span{border-radius:999px;width:10px}.fee-detail-card>span.green{background:#16875a}.fee-detail-card>span.orange{background:#c0560c}.fee-detail-card>span.red{background:#ef3f52}.fee-progress-card{gap:12px;display:grid}.fee-progress-card>div:first-child{justify-content:space-between;display:flex}.fee-progress-card strong{color:#111827;font-size:var(--text-xl)}.fee-progress-card>div:last-child{background:#e3ebf6;border-radius:999px;height:8px;overflow:hidden}.fee-progress-card i{width:var(--progress);border-radius:inherit;background:#1478f2;height:100%;display:block}.fee-payment-modal{background:#fff;border:1px solid #dce5f0;border-radius:10px;gap:18px;width:min(520px,100%);padding:22px;display:grid;box-shadow:0 28px 70px #0f172a47}.fee-payment-modal header,.fee-payment-modal footer{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.fee-payment-modal header h3,.fee-payment-modal header p{margin:0}.fee-payment-modal header h3{color:#111827;font-size:var(--text-lg);font-weight:var(--font-weight-bold)}.fee-payment-modal header p{color:#536174;margin-top:5px}.fee-payment-modal .close-button svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.fee-payment-modal label{color:#2b405d;font-size:var(--text-sm);font-weight:var(--font-weight-medium);gap:8px;display:grid}.fee-payment-modal input{color:#111827;width:100%;height:42px;font:inherit;background:#f8fbff;border:1px solid #dce5f0;border-radius:8px;outline:0;padding:0 13px}.staff-page,.examinations-page{gap:16px;display:grid}.staff-hero,.examinations-hero{color:#fff;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:24px;padding:24px 26px;display:grid;box-shadow:0 16px 36px #0f172a1f}.staff-hero{background:linear-gradient(135deg,#102b4ef5,#7c3aedc7),#102b4e}.examinations-hero{background:linear-gradient(135deg,#102b4ef5,#ef3f52c7),#102b4e}.staff-hero h2,.staff-hero p,.examinations-hero h2,.examinations-hero p{margin:0}.staff-hero h2,.examinations-hero h2{color:#fff;font-size:var(--text-hero);line-height:1.1;font-weight:var(--font-weight-bold)}.staff-hero p,.examinations-hero p{color:#eef2ff;max-width:760px;margin-top:10px}.exam-live-card{background:#ffffff1f;border:1px solid #ffffff38;border-radius:8px;min-width:230px;min-height:118px;padding:18px}.exam-live-card span,.exam-live-card p{color:#ffe4e6}.exam-live-card strong{color:#fff;font-size:var(--text-xl);font-weight:var(--font-weight-bold);margin-top:8px;display:block}.exam-live-card p{margin:12px 0 0}.exam-live-card button{color:#c81e3a;height:34px;font-weight:var(--font-weight-semibold);background:#fff;border:0;border-radius:8px;margin-top:14px;padding:0 13px}.staff-summary-grid,.exam-summary-grid{grid-template-columns:repeat(4,minmax(170px,1fr));gap:16px;display:grid}.exam-view-tabs{flex-wrap:wrap;gap:10px;display:flex}.exam-view-tabs button{color:#536174;min-height:40px;font-weight:var(--font-weight-semibold);background:#fff;border:1px solid #dce5f0;border-radius:8px;padding:0 16px}.exam-view-tabs button.active,.exam-view-tabs button:hover{color:#1478f2;background:#eef5ff;border-color:#1478f2}.staff-metric-card,.exam-metric-card,.staff-directory-panel,.staff-profile-panel,.exam-list-panel,.exam-detail-panel{background:#fff;border:1px solid #e7edf5;border-radius:8px;box-shadow:0 8px 24px #0f172a0d}.staff-metric-card,.exam-metric-card{min-height:94px;padding:18px}.staff-metric-card>span,.exam-metric-card>span{border-radius:999px;width:10px;height:10px;display:block}.staff-metric-card>span.blue,.exam-metric-card>span.blue{background:#1478f2}.staff-metric-card>span.green,.exam-metric-card>span.green{background:#16875a}.staff-metric-card>span.teal{background:#0eb3a0}.staff-metric-card>span.orange,.exam-metric-card>span.orange{background:#c0560c}.exam-metric-card>span.purple{background:#7153df}.staff-metric-card p,.staff-metric-card strong,.exam-metric-card p,.exam-metric-card strong{margin:0}.staff-metric-card p,.exam-metric-card p{color:#536174;font-weight:var(--font-weight-medium);margin-top:10px}.staff-metric-card strong,.exam-metric-card strong{color:#111827;font-size:var(--text-2xl);line-height:1;font-weight:var(--font-weight-bold);margin-top:6px;display:block}.staff-layout,.exam-layout{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:16px;display:grid}.staff-directory-panel,.staff-profile-panel,.exam-list-panel,.exam-detail-panel{min-width:0;padding:20px}.staff-table,.exam-table{border:1px solid #e7edf5;border-radius:8px;overflow:hidden}.staff-table-head,.staff-table-row{grid-template-columns:minmax(190px,1.3fr) minmax(120px,.8fr) minmax(120px,.9fr) 90px 120px 70px;align-items:center;gap:12px;padding:13px 14px;display:grid}.exam-table-head,.exam-table-row{grid-template-columns:minmax(210px,1.4fr) minmax(100px,.7fr) 120px 70px 100px 70px;align-items:center;gap:12px;padding:13px 14px;display:grid}.result-table-head,.result-table-row{grid-template-columns:minmax(190px,1.2fr) minmax(160px,1fr) minmax(120px,.8fr) 80px 70px 100px}.staff-table-head,.exam-table-head{color:#536174;font-size:var(--text-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;background:#f3f7fb}.staff-table-row,.exam-table-row{color:#253449;text-align:left;background:#fff;border:0;border-top:1px solid #edf2f7;width:100%}.staff-table-row:hover,.staff-table-row.active,.exam-table-row:hover,.exam-table-row.active{background:#f8fbff}.staff-table-row.active,.exam-table-row.active{box-shadow:inset 3px 0 #1478f2}.staff-table-row strong,.staff-table-row small,.exam-table-row strong,.exam-table-row small{display:block}.staff-table-row strong,.exam-table-row strong{color:#111827;font-weight:var(--font-weight-semibold)}.staff-table-row small,.exam-table-row small{color:#738196;margin-top:3px}.staff-status,.staff-action,.exam-status,.exam-action{min-height:26px;font-style:normal;font-size:var(--text-xs);font-weight:var(--font-weight-semibold);border-radius:999px;align-items:center;padding:0 9px;display:inline-flex}.staff-status.green,.exam-status.green{color:#16875a;background:#eaf8ee}.staff-status.orange,.exam-status.orange{color:#c0560c;background:#fff2df}.staff-status.purple,.exam-status.purple{color:#7153df;background:#f1ecff}.staff-status.blue,.exam-status.blue,.staff-action,.exam-action{color:#1478f2;background:#eef5ff}.staff-profile-panel,.exam-detail-panel{gap:16px;display:grid;position:sticky;top:98px}.staff-profile-head{grid-template-columns:56px minmax(0,1fr);align-items:center;gap:14px;display:grid}.staff-profile-head>span{color:#fff;width:56px;height:56px;font-weight:var(--font-weight-bold);background:linear-gradient(135deg,#7153df,#1478f2);border-radius:14px;place-items:center;display:grid}.staff-profile-head h3,.staff-profile-head p,.exam-detail-card h3,.exam-detail-card p{margin:0}.staff-profile-head h3,.exam-detail-card h3{color:#111827;font-size:var(--text-lg);font-weight:var(--font-weight-bold)}.staff-profile-head p,.exam-detail-card p{color:#536174;margin-top:4px}.staff-detail-grid,.exam-detail-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.staff-detail-grid div,.staff-workload-card,.exam-detail-grid div,.exam-readiness-card{background:#f8fbff;border:1px solid #e7edf5;border-radius:8px;padding:14px}.staff-detail-grid span,.staff-workload-card span,.exam-detail-grid span{color:#738196;font-size:var(--text-xs);display:block}.staff-detail-grid strong,.exam-detail-grid strong{color:#172033;font-weight:var(--font-weight-semibold);margin-top:5px;display:block}.staff-workload-card{gap:12px;display:grid}.staff-workload-card>div:first-child{justify-content:space-between;gap:12px;display:flex}.staff-workload-card strong{color:#111827;font-size:var(--text-xl)}.staff-workload-card>div:last-child{background:#e3ebf6;border-radius:999px;height:8px;overflow:hidden}.staff-workload-card i{width:var(--progress);border-radius:inherit;background:#7153df;height:100%;display:block}.staff-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.exam-detail-card{background:#f8fbff;border:1px solid #e7edf5;border-radius:8px;grid-template-columns:12px minmax(0,1fr);gap:14px;padding:16px;display:grid}.exam-detail-card>span{border-radius:999px;width:10px}.exam-detail-card>span.green{background:#16875a}.exam-detail-card>span.orange{background:#c0560c}.exam-detail-card>span.blue{background:#1478f2}.exam-readiness-card{gap:10px;display:grid}.exam-readiness-card h3,.exam-readiness-card p{margin:0}.exam-readiness-card h3{color:#111827;font-size:var(--text-base);font-weight:var(--font-weight-bold)}.exam-readiness-card p{color:#536174}.result-detail-actions{flex-wrap:wrap;gap:10px;display:flex}.staff-status-modal,.exam-status-modal{background:#fff;border:1px solid #dce5f0;border-radius:10px;gap:18px;width:min(520px,100%);max-height:calc(100vh - 48px);padding:22px;display:grid;overflow:auto;box-shadow:0 28px 70px #0f172a47}.staff-status-modal header,.staff-status-modal footer,.exam-status-modal header,.exam-status-modal footer{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.staff-status-modal header h3,.staff-status-modal header p,.exam-status-modal header h3,.exam-status-modal header p{margin:0}.staff-status-modal header h3,.exam-status-modal header h3{color:#111827;font-size:var(--text-lg);font-weight:var(--font-weight-bold)}.staff-status-modal header p,.exam-status-modal header p{color:#536174;margin-top:5px}.staff-status-modal .close-button svg,.exam-status-modal .close-button svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.staff-status-modal label,.exam-status-modal label{color:#2b405d;font-size:var(--text-sm);font-weight:var(--font-weight-medium);gap:8px;display:grid}.staff-status-modal select,.exam-status-modal select,.exam-status-modal input{color:#111827;width:100%;height:42px;font:inherit;background:#f8fbff;border:1px solid #dce5f0;border-radius:8px;outline:0;padding:0 13px}.exam-modal-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.report-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.report-card-tile{background:#fff;border:1px solid #e7edf5;border-radius:8px;gap:14px;padding:16px;display:grid}.report-card-tile h3,.report-card-tile p{margin:0}.report-card-tile h3{color:#111827;font-size:var(--text-lg);margin-top:5px}.report-card-tile p,.report-card-tile span{color:#536174}.report-card-score{background:#f8fbff;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:12px;display:flex}.report-card-score strong{color:#1478f2;font-size:var(--text-2xl)}.report-card-score span{color:#16875a;min-width:42px;min-height:30px;font-weight:var(--font-weight-bold);background:#eaf8ee;border-radius:999px;place-items:center;display:inline-grid}.report-card-meta{grid-template-columns:1fr 1fr;gap:10px;display:grid}.report-card-meta div{background:#f8fbff;border:1px solid #edf2f7;border-radius:8px;padding:10px}.report-card-meta span,.report-card-meta strong{display:block}.report-card-meta span{color:#738196;font-size:var(--text-xs)}.report-card-meta strong{color:#172033;margin-top:5px}.report-card-tile footer,.report-card-modal footer{justify-content:flex-end;gap:10px;display:flex}.report-card-modal{background:#fff;border:1px solid #dce5f0;border-radius:10px;gap:18px;width:min(760px,100%);max-height:calc(100vh - 48px);padding:22px;display:grid;overflow:auto;box-shadow:0 28px 70px #0f172a47}.report-card-modal header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.report-card-modal h3,.report-card-modal p{margin:0}.report-card-modal h3{color:#111827;font-size:var(--text-xl);font-weight:var(--font-weight-bold)}.report-card-modal p{color:#536174;margin-top:5px}.report-card-modal .close-button svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.report-card-modal-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.report-card-creator{background:#f5f9ff;border:1px solid #dce8f6;border-radius:8px;gap:3px;padding:12px 14px;display:grid}.report-card-creator span,.report-card-creator small{color:#66758a}.report-card-creator span{font-size:var(--text-xs);text-transform:uppercase}.report-card-creator strong{color:#172033}.report-card-subjects{gap:12px;display:grid}.report-card-subjects div{background:#f8fbff;border-radius:8px;grid-template-columns:minmax(130px,1fr) 80px minmax(150px,1.2fr);align-items:center;gap:14px;min-height:50px;padding:10px 12px;display:grid}.report-card-subjects span{color:#536174;font-weight:var(--font-weight-semibold)}.report-card-subjects strong{color:#111827}.report-card-subjects i{background:#dce5f0;border-radius:999px;height:8px;overflow:hidden}.report-card-subjects b{border-radius:inherit;background:linear-gradient(90deg,#1478f2,#16875a);height:100%;display:block}.settings-page{gap:16px;display:grid}.settings-hero{color:#fff;background:linear-gradient(135deg,#102b4ef5,#1478f2c2),#102b4e;border-radius:8px;grid-template-columns:minmax(0,1fr) 260px;align-items:end;gap:24px;padding:24px 26px;display:grid;box-shadow:0 16px 36px #0f172a1f}.settings-hero h2,.settings-hero p{margin:0}.settings-hero h2{color:#fff;font-size:var(--text-hero);line-height:1.1;font-weight:var(--font-weight-bold)}.settings-hero p{color:#eef2ff;max-width:760px;margin-top:10px}.settings-live-card{background:#ffffff1f;border:1px solid #ffffff38;border-radius:8px;min-height:118px;padding:18px}.settings-live-card span,.settings-live-card p{color:#dbeafe}.settings-live-card strong{color:#fff;font-size:var(--text-xl);font-weight:var(--font-weight-bold);margin-top:8px;display:block}.settings-live-card p{margin:12px 0 0}.settings-save-toast{color:#176b4b;min-height:44px;font-weight:var(--font-weight-semibold);background:#f0fff7;border:1px solid #bbebd2;border-radius:8px;align-items:center;padding:0 16px;display:flex}.settings-layout{grid-template-columns:260px minmax(0,1fr);align-items:start;gap:16px;display:grid}.settings-tabs,.settings-panel{background:#fff;border:1px solid #e7edf5;border-radius:8px;box-shadow:0 8px 24px #0f172a0d}.settings-tabs{gap:8px;padding:14px;display:grid;position:sticky;top:98px}.settings-tabs button{color:#536174;text-align:left;background:0 0;border:0;border-radius:8px;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;min-height:48px;padding:0 12px;display:grid}.settings-tabs button:hover,.settings-tabs button.active{color:#1478f2;background:#eef5ff}.settings-tabs button span{color:#1478f2;width:34px;height:34px;font-size:var(--text-xs);font-weight:var(--font-weight-bold);background:#f3f7fb;border-radius:8px;place-items:center;display:grid}.settings-panel{min-width:0;padding:22px 24px}.settings-panel-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.settings-panel-head h3,.settings-panel-head p{margin:0}.settings-panel-head h3{color:#111827;font-size:var(--text-lg);font-weight:var(--font-weight-bold)}.settings-panel-head p{color:#536174;margin-top:6px}.settings-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.settings-form-grid label{color:#2b405d;font-size:var(--text-sm);font-weight:var(--font-weight-medium);gap:8px;display:grid}.settings-form-grid input,.settings-form-grid select{color:#111827;width:100%;height:42px;font:inherit;background:#f8fbff;border:1px solid #dce5f0;border-radius:8px;outline:0;padding:0 13px}.settings-form-grid input:focus,.settings-form-grid select:focus{background:#fff;border-color:#1478f2;box-shadow:0 0 0 3px #1478f21f}.settings-wide{grid-column:1/-1}.settings-panel input[readonly],.settings-panel input:disabled,.settings-panel select:disabled,.settings-panel button:disabled{cursor:not-allowed;opacity:.68}.settings-panel input[readonly],.settings-panel input:disabled,.settings-panel select:disabled{background:#eef2f7}.settings-toggle-list{gap:12px;display:grid}.fee-structure-settings{gap:18px;display:grid}.fee-structure-context{background:#f5f9ff;border:1px solid #dce8f6;border-radius:8px;padding:14px 16px}.fee-structure-context span,.fee-structure-context strong{display:block}.fee-structure-context span{color:#66758a;font-size:var(--text-xs);text-transform:uppercase}.fee-structure-context strong{color:#172033;font-size:var(--text-lg);margin-top:4px}.fee-structure-context p{color:#5b687a;margin:5px 0 0}.fee-cancel-edit{justify-self:start}.fee-structure-table{border:1px solid #e3eaf3;border-radius:8px;overflow:hidden}.fee-structure-table-head,.fee-structure-row{grid-template-columns:minmax(100px,.8fr) minmax(150px,1.3fr) 110px 90px 140px;align-items:center;gap:12px;padding:12px 14px;display:grid}.fee-structure-table-head{color:#607086;font-size:var(--text-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;background:#f3f7fb}.fee-structure-row{color:#334155;border-top:1px solid #edf2f7}.fee-structure-row strong{color:#172033}.fee-structure-row small{color:#728096;margin-top:3px;display:block}.fee-structure-actions{gap:7px;display:flex}.fee-structure-actions button{color:#1269cc;font-size:var(--text-xs);font-weight:var(--font-weight-semibold);background:#eaf3ff;border:0;border-radius:999px;padding:6px 10px}.fee-structure-actions button.danger{color:#c81e36;background:#fff0f1}.fee-manager-modal{background:#fff;border:1px solid #dce5f0;border-radius:12px;gap:18px;width:min(900px,100%);max-height:calc(100vh - 48px);padding:22px;display:grid;overflow:auto;box-shadow:0 28px 70px #0f172a4d}.fee-manager-modal>header,.fee-manager-editor-head,.fee-manager-editor>footer{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.fee-manager-modal h3,.fee-manager-modal h4,.fee-manager-modal p{margin:0}.fee-manager-modal h3{color:#172033;font-size:var(--text-xl)}.fee-manager-modal h4{color:#172033;font-size:var(--text-base)}.fee-manager-modal p{color:#607086;margin-top:5px}.fee-manager-existing{gap:8px;display:grid}.fee-manager-existing article{background:#f8fbff;border:1px solid #e6edf5;border-radius:8px;grid-template-columns:minmax(220px,1fr) 120px auto;align-items:center;gap:14px;padding:12px 14px;display:grid}.fee-manager-existing article span,.fee-manager-existing article small{color:#68778b;margin-top:3px;display:block}.fee-manager-editor{border-top:1px solid #e6edf5;gap:16px;padding-top:18px;display:grid}.fee-discount-editor{background:#f5f9ff;border:1px solid #dce8f6;border-radius:8px;gap:10px;padding:14px;display:grid}.fee-discount-row{grid-template-columns:minmax(130px,1fr) 120px 130px 110px 34px;align-items:end;gap:9px;display:grid}.fee-discount-row label{color:#536174;font-size:var(--text-xs);gap:4px;display:grid}.fee-discount-row input,.fee-discount-row select{color:#172033;background:#fff;border:1px solid #d6e1ee;border-radius:7px;width:100%;height:40px;padding:0 10px}.danger-icon-button{color:#c81e36;background:#fff0f1;border:0;border-radius:50%;width:34px;height:34px;font-size:20px}@media (width<=760px){.fee-structure-table{overflow-x:auto}.fee-structure-table-head,.fee-structure-row{min-width:700px}.fee-manager-existing article,.fee-discount-row{grid-template-columns:1fr}}.settings-toggle{background:#f8fbff;border:1px solid #e7edf5;border-radius:8px;grid-template-columns:minmax(0,1fr) 48px;align-items:center;gap:16px;min-height:72px;padding:14px 16px;display:grid;position:relative}.settings-toggle>span strong,.settings-toggle>span small{display:block}.settings-toggle>span strong{color:#172033;font-weight:var(--font-weight-semibold)}.settings-toggle>span small{color:#64748b;margin-top:5px}.settings-toggle input{opacity:0;pointer-events:none;position:absolute}.settings-toggle i{background:#cbd5e1;border-radius:999px;width:48px;height:28px;transition:background .16s;display:block;position:relative}.settings-toggle i:after{content:"";background:#fff;border-radius:999px;width:20px;height:20px;transition:transform .16s;position:absolute;top:4px;left:4px;box-shadow:0 2px 8px #0f172a2e}.settings-toggle input:checked+i{background:#1478f2}.settings-toggle input:checked+i:after{transform:translate(20px)}.reports-page{gap:16px;display:grid}.reports-hero{color:#fff;background:linear-gradient(135deg,#111827f5,#1478f2c7),#111827;border-radius:8px;grid-template-columns:minmax(0,1fr) 260px;align-items:end;gap:24px;padding:24px 26px;display:grid;box-shadow:0 16px 36px #0f172a1f}.reports-hero h2,.reports-hero p{margin:0}.reports-hero h2{color:#fff;font-size:var(--text-hero);line-height:1.1;font-weight:var(--font-weight-bold)}.reports-hero p{color:#eef2ff;max-width:760px;margin-top:10px}.reports-live-card{background:#ffffff1f;border:1px solid #ffffff38;border-radius:8px;min-height:126px;padding:18px}.audit-page{gap:16px;display:grid}.audit-hero{color:#fff;background:linear-gradient(135deg,#111827f5,#16a34abd),#111827;border-radius:8px;grid-template-columns:minmax(0,1fr) 230px;align-items:end;gap:24px;padding:24px 26px;display:grid;box-shadow:0 16px 36px #0f172a1f}.audit-hero h2,.audit-hero p{margin:0}.audit-hero h2{color:#fff;font-size:var(--text-hero);line-height:1.1;font-weight:var(--font-weight-bold)}.audit-hero p{color:#eef2ff;max-width:760px;margin-top:10px}.audit-live-card{background:#ffffff1f;border:1px solid #ffffff38;border-radius:8px;min-height:118px;padding:18px}.audit-live-card span,.audit-live-card p{color:#dcfce7}.audit-live-card span{font-size:12px;font-weight:800}.audit-live-card strong{color:#fff;margin-top:12px;font-size:32px;line-height:1;display:block}.audit-live-card p{margin:8px 0 0;font-size:12px}.audit-filter-panel,.audit-table-panel{background:#fff;border:1px solid #e7edf5;border-radius:8px;box-shadow:0 8px 24px #0f172a0d}.audit-filter-panel{grid-template-columns:minmax(220px,1.4fr) repeat(4,minmax(140px,1fr));gap:12px;padding:16px;display:grid}.audit-filter-panel label{color:#2b405d;gap:7px;font-size:12px;font-weight:850;display:grid}.audit-filter-panel input,.audit-filter-panel select{color:#111827;height:42px;font:inherit;background:#fff;border:1px solid #dce5f0;border-radius:8px;outline:0;padding:0 12px}.audit-filter-panel input:focus,.audit-filter-panel select:focus{border-color:#1478f2;box-shadow:0 0 0 3px #1478f21f}.audit-table-panel{overflow:hidden}.audit-table-head,.audit-row{grid-template-columns:150px minmax(170px,.85fr) 130px minmax(260px,1.3fr) 150px;align-items:center;gap:14px;display:grid}.audit-table-head{color:#536174;text-transform:uppercase;background:#f6f9fd;padding:13px 16px;font-size:12px;font-weight:900}.audit-row{color:#2b405d;border-top:1px solid #eef3f8;min-height:74px;padding:14px 16px}.audit-row strong,.audit-row small{display:block}.audit-row strong{color:#172033;font-size:13px;font-weight:850}.audit-row small,.audit-row time{color:#68778d;font-size:12px}.audit-event{text-transform:capitalize;border-radius:999px;width:fit-content;padding:6px 10px;font-size:12px;font-weight:900}.audit-event.blue{color:#1478f2;background:#eef5ff}.audit-event.green{color:#16875a;background:#eaf8ee}.audit-event.purple{color:#7153df;background:#f1ecff}.audit-event.red{color:#ef3f52;background:#fff0f1}.audit-empty{color:#68778d;text-align:center;border-top:1px solid #eef3f8;padding:24px 16px;font-weight:750}.audit-pagination{color:#536174;border-top:1px solid #eef3f8;justify-content:flex-end;align-items:center;gap:12px;padding:14px 16px;font-size:13px;font-weight:800;display:flex}.audit-pagination button:disabled{cursor:not-allowed;opacity:.58}.reports-live-card span,.reports-live-card p{color:#dbeafe}.reports-live-card strong{color:#fff;font-size:var(--text-2xl);font-weight:var(--font-weight-bold);margin-top:8px;display:block}.reports-live-card p{margin:8px 0 14px}.reports-live-card button{color:#1478f2;height:36px;font:inherit;font-weight:var(--font-weight-semibold);background:#fff;border:0;border-radius:8px;padding:0 14px}.reports-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.report-metric-card{background:#fff;border:1px solid #e7edf5;border-radius:8px;align-content:center;gap:8px;min-height:112px;padding:18px;display:grid;box-shadow:0 8px 24px #0f172a0d}.report-metric-card>span{border-radius:999px;width:34px;height:5px}.report-metric-card .blue{background:#1478f2}.report-metric-card .green{background:#28b779}.report-metric-card .orange{background:#ff8a1f}.report-metric-card .purple{background:#7d5cf6}.report-metric-card p,.report-metric-card strong{margin:0}.report-metric-card p{color:#536174;font-weight:var(--font-weight-medium)}.report-metric-card strong{color:#111827;font-size:var(--text-xl);font-weight:var(--font-weight-bold)}.reports-layout{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:16px;display:grid}.reports-main-panel,.reports-detail-panel{background:#fff;border:1px solid #e7edf5;border-radius:8px;padding:18px;box-shadow:0 8px 24px #0f172a0d}.reports-snapshot{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:14px;display:grid}.reports-snapshot article{background:#f8fbff;border:1px solid #e7edf5;border-radius:8px;grid-template-columns:64px minmax(0,1fr);align-items:center;gap:12px;min-height:106px;padding:14px;display:grid}.reports-ring{background:conic-gradient(#1478f2 var(--ring-value), #e6eef9 0), #e6eef9;border-radius:999px;place-items:center;width:58px;height:58px;display:grid}.reports-ring span{color:#172033;width:42px;height:42px;font-size:var(--text-xs);font-weight:var(--font-weight-bold);background:#fff;border-radius:999px;place-items:center;display:grid}.reports-snapshot strong,.reports-snapshot p{margin:0}.reports-snapshot strong{color:#172033;font-weight:var(--font-weight-semibold)}.reports-snapshot p{color:#64748b;font-size:var(--text-sm);margin-top:4px}.reports-table{margin-top:16px;overflow:hidden}.reports-table-head,.reports-table-row{grid-template-columns:minmax(220px,1.4fr) 120px 140px 120px 96px 86px;align-items:center;gap:14px;display:grid}.reports-table-head{color:#64748b;min-height:42px;font-size:var(--text-sm);font-weight:var(--font-weight-semibold);background:#f3f7fb;border-radius:8px;padding:0 14px}.reports-table-row{color:#334155;text-align:left;width:100%;min-height:72px;font:inherit;background:0 0;border:1px solid #0000;border-bottom-color:#edf2f7;padding:0 14px}.reports-table-row:hover,.reports-table-row.active{background:#f8fbff;border-color:#cfe0f7;border-radius:8px}.reports-table-row strong,.reports-table-row small{display:block}.reports-table-row strong{color:#172033;font-weight:var(--font-weight-semibold)}.reports-table-row small{color:#64748b;font-size:var(--text-sm);margin-top:4px}.report-status{min-height:28px;font-style:normal;font-size:var(--text-xs);font-weight:var(--font-weight-semibold);border-radius:999px;align-items:center;padding:0 10px;display:inline-flex}.report-status.green{color:#16865b;background:#e7f8ef}.report-status.orange{color:#b45b05;background:#fff3df}.report-status.blue{color:#1478f2;background:#eef5ff}.reports-row-actions i{color:#1478f2;min-height:30px;font-style:normal;font-weight:var(--font-weight-semibold);background:#eef5ff;border-radius:8px;align-items:center;padding:0 10px;display:inline-flex}.reports-detail-panel{gap:14px;display:grid;position:sticky;top:98px}.reports-detail-card{border-bottom:1px solid #edf2f7;grid-template-columns:12px minmax(0,1fr);gap:12px;padding-bottom:14px;display:grid}.reports-detail-card>span{border-radius:999px;width:12px;min-height:86px}.reports-detail-card>span.green{background:#28b779}.reports-detail-card>span.orange{background:#ff8a1f}.reports-detail-card>span.blue{background:#1478f2}.reports-detail-card p,.reports-detail-card h3,.reports-detail-card strong{margin:0}.reports-detail-card p{color:#64748b}.reports-detail-card h3{color:#111827;font-size:var(--text-lg);font-weight:var(--font-weight-bold);margin-top:4px}.reports-detail-card strong{color:#1478f2;font-weight:var(--font-weight-semibold);margin-top:8px;display:block}.reports-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.reports-detail-grid div{background:#f8fbff;border:1px solid #e7edf5;border-radius:8px;align-content:center;gap:5px;min-height:70px;padding:12px;display:grid}.reports-detail-grid span{color:#64748b;font-size:var(--text-sm)}.reports-detail-grid strong{color:#172033;font-weight:var(--font-weight-semibold)}.reports-progress-card{background:#f3f8ff;border:1px solid #d7e8ff;border-radius:8px;padding:16px}.reports-progress-card>div:first-child{justify-content:space-between;align-items:center;gap:12px;display:flex}.reports-progress-card h3,.reports-progress-card p,.reports-progress-card strong{margin:0}.reports-progress-card h3{color:#172033;font-size:var(--text-base);font-weight:var(--font-weight-bold)}.reports-progress-card strong{color:#1478f2;font-size:var(--text-lg);font-weight:var(--font-weight-bold)}.reports-progress-track{background:#dbeafe;border-radius:999px;height:9px;margin-top:14px;overflow:hidden}.reports-progress-track span{border-radius:inherit;background:linear-gradient(90deg,#1478f2,#28b779);height:100%;display:block}.reports-progress-card p{color:#536174;margin-top:12px}.reports-action-stack{gap:10px;display:grid}.reports-preview-modal{background:#fff;border-radius:8px;width:min(760px,100%);max-height:calc(100vh - 32px);overflow:auto;box-shadow:0 24px 80px #0f172a3d}.reports-preview-modal header,.reports-preview-modal footer{justify-content:space-between;align-items:flex-start;gap:16px;padding:22px 24px;display:flex}.reports-preview-modal header{border-bottom:1px solid #edf2f7}.reports-preview-modal footer{border-top:1px solid #edf2f7;justify-content:flex-end}.reports-preview-modal h3,.reports-preview-modal p{margin:0}.reports-preview-modal h3{color:#111827;font-size:var(--text-xl);font-weight:var(--font-weight-bold)}.reports-preview-modal header p{color:#64748b;margin-top:6px}.reports-preview-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:20px 24px 0;display:grid}.reports-preview-body{padding:20px 24px 24px}.reports-preview-body h4{color:#172033;font-size:var(--text-base);font-weight:var(--font-weight-bold);margin:0 0 8px}.reports-preview-body p{color:#536174}.reports-preview-bars{gap:12px;margin-top:18px;display:grid}.reports-preview-bars div{color:#536174;grid-template-columns:110px minmax(0,1fr) 48px;align-items:center;gap:12px;display:grid}.reports-preview-bars i{background:#e6eef9;border-radius:999px;height:8px;overflow:hidden}.reports-preview-bars b{border-radius:inherit;background:#1478f2;height:100%;display:block}.reports-preview-bars strong{color:#172033;font-weight:var(--font-weight-semibold)}.empty-page{text-align:center;background:#fff;border:1px solid #e7edf5;border-radius:8px;place-content:center;gap:8px;min-height:calc(100vh - 130px);display:grid}.empty-page h2{color:#111827;margin:0}.empty-page p{color:#536174;margin:0}.app-shell{font-family:var(--font-family-base);font-size:var(--text-base);line-height:1.5;font-weight:var(--font-weight-regular)}.login-page,.mfa-page,.legal-page,.app-shell{letter-spacing:0}.login-page p,.mfa-page p,.legal-page p,.app-shell p,.app-shell small,.app-shell time,.app-shell label,.app-shell input,.app-shell select,.app-shell textarea{font-weight:var(--font-weight-regular)}.login-page button,.mfa-page button,.legal-page button,.app-shell button{font-weight:var(--font-weight-semibold)}.login-card-head h2,.mfa-head h1,.legal-hero h1,.topbar h1,.saas-hero h2,.admission-hero h2,.activities-hero h2,.calendar-hero h2,.add-staff-hero h2,.collect-fee-hero h2,.create-event-hero h2,.create-notice-hero h2,.notices-hero h2{font-weight:var(--font-weight-bold);letter-spacing:0}.login-card-head h2,.mfa-head h1{font-size:var(--text-2xl)}.admission-hero h2,.activities-hero h2,.calendar-hero h2,.add-staff-hero h2,.collect-fee-hero h2,.create-event-hero h2,.create-notice-hero h2,.notices-hero h2{font-size:var(--text-hero)}.form-panel-head h3,.activity-side-panel h3,.calendar-board-head h3,.calendar-events-panel h3,.notices-list-head h3,.event-preview-panel h3,.notice-preview-panel h3,.fee-preview-panel h3,.staff-preview-panel h3,.panel-head h2{font-size:var(--text-lg);font-weight:var(--font-weight-bold)}.admission-status-card span,.admission-status-card p,.activity-insight-card span,.activity-insight-card p,.event-draft-card span,.event-draft-card p,.notice-draft-card span,.notice-draft-card p,.fee-draft-card span,.fee-draft-card p,.staff-draft-card span,.staff-draft-card p,.fee-summary-card span,.staff-preview-card span,.notice-preview-card span,.event-preview-card span,.notice-summary-grid span,.calendar-grid>strong,.attendance-table-head,.form-badge{font-weight:var(--font-weight-semibold)}.admission-status-card strong,.activity-insight-card strong,.event-draft-card strong,.notice-draft-card strong,.fee-draft-card strong,.staff-draft-card strong,.fee-summary-card strong,.staff-preview-card strong,.notice-summary-grid strong,.summary-tile strong{font-weight:var(--font-weight-bold)}.admission-step strong,.upload-copy strong,.activity-row-main strong,.review-item strong,.notice-preview-card strong,.event-preview-card strong{font-weight:var(--font-weight-semibold)}.admission-step small,.upload-copy small,.activity-row-main p,.activity-row-main small,.activity-row-card time,.review-item p,.form-panel-head p,.calendar-board-head p,.fee-summary-card p,.staff-preview-card p,.notice-preview-card p,.event-preview-card p,.calendar-event-card p,.calendar-event-card small,.notice-row-card p,.modal-head p{font-weight:var(--font-weight-regular)}.form-grid label{font-weight:var(--font-weight-medium)}.form-grid input,.form-grid select,.form-grid textarea{font-weight:var(--font-weight-regular)}.back-button,.hero-create-button,.primary-panel-button,.secondary-panel-button,.upload-action,.activity-filter-bar button,.calendar-switch button,.notices-list-head button,.notice-status,.rate{font-weight:var(--font-weight-semibold)}.brand{font-size:21px;font-weight:var(--font-weight-bold)}.nav-item{font-size:var(--text-base);font-weight:var(--font-weight-medium)}.workspace-card strong,.profile strong,.profile-dropdown-head strong,.search-dropdown strong,.activity strong,.event strong,.notice strong,.action-copy strong,.calendar-event-card strong,.notice-row-card strong{font-weight:600}.workspace-card small,.profile small,.profile-dropdown-head small,.search-dropdown span,.search-empty,.activity p,.event p,.notice p,.activity time,.action-copy small,.calendar-event-card p,.calendar-event-card small,.notice-row-card p{font-weight:400}.topbar h1{font-size:20px;font-weight:700}.search-box input{font-weight:400}.upgrade-button,.primary-button,.secondary-button,.select-button,.outline-button,.text-button,.stat-link,.profile-dropdown-item{font-weight:600}.eyebrow{letter-spacing:.06em;font-size:11px;font-weight:700}.saas-hero h2{font-size:26px;font-weight:700}.saas-hero p{font-weight:400}.metric-pill p,.stat-copy p{font-weight:500}.metric-pill strong{font-size:20px;font-weight:700}.stat-copy strong{font-weight:700}.stat-copy span{font-weight:500}.panel-head h2,.form-panel-head h3,.calendar-events-panel h3,.notices-list-head h3,.activity-side-panel h3,.fee-preview-panel h3,.staff-preview-panel h3,.notice-preview-panel h3,.event-preview-panel h3{font-weight:700}.legend p,.event-toggle-grid label,.activity-filter-bar button,.notices-list-head button,.notice-status{font-weight:600}.sidebar-collapsed{grid-template-columns:86px minmax(0,1fr)}.sidebar-collapsed .sidebar{padding-inline:12px}.sidebar-collapsed .sidebar-product-logo,.sidebar-collapsed .workspace-card,.sidebar-collapsed .nav-item span{display:none}.sidebar-collapsed .brand:before{content:"";background-color:#fff;background-image:url(/schoolconnect360-logo.png);background-position:-8px -23px;background-repeat:no-repeat;background-size:225px;border-radius:10px;place-items:center;width:48px;height:48px;display:grid}.sidebar-collapsed .brand,.sidebar-collapsed .nav-item{justify-content:center;padding-inline:0}@media (width<=1500px){.stats-grid{grid-template-columns:repeat(3,minmax(210px,1fr))}.saas-strip{grid-template-columns:repeat(2,minmax(220px,1fr))}.dashboard-grid{grid-template-columns:minmax(420px,1.2fr) minmax(320px,1fr)}.activities-panel{grid-row:span 2}.quick-panel{grid-column:1/-1}}@media (width<=1100px){.login-page{grid-template-columns:1fr;height:auto;min-height:100vh;padding-bottom:110px;overflow:visible}.login-brand-panel,.login-form-panel{height:auto;min-height:auto;padding:34px 22px}.login-form-panel{order:-1;align-content:center;gap:20px}.login-mobile-brand{width:min(620px,100%);margin:0 auto;display:block}.login-mobile-brand .login-brand-mark{justify-content:center;margin:0}.login-brand-panel .login-brand-mark{display:none}.login-brand-panel,.login-brand-content,.school-illustration{min-width:0}.login-brand-content{grid-template-rows:auto auto auto minmax(340px,1fr);max-width:720px}.school-illustration{height:340px;min-height:340px}.login-footer{flex-direction:column;gap:12px}.app-shell,.sidebar-collapsed{grid-template-columns:1fr}.sidebar{height:auto;padding:14px;position:relative}.brand{padding-bottom:12px}.sidebar-nav{grid-template-columns:repeat(4,minmax(120px,1fr))}.sidebar-collapsed .sidebar{display:none}.topbar{grid-template-columns:1fr;gap:14px}.topbar-actions{flex-wrap:wrap;justify-content:flex-start}.saas-hero{grid-template-columns:1fr}.dashboard-grid,.stats-grid{grid-template-columns:1fr 1fr}.quick-panel{grid-column:auto}.quick-actions{grid-template-columns:1fr 1fr}.health-grid,.add-staff-hero,.add-staff-layout,.admission-hero,.admission-layout,.onboarding-hero,.onboarding-layout,.calendar-hero,.calendar-layout,.collect-fee-hero,.collect-fee-layout,.create-event-hero,.create-event-layout,.create-notice-hero,.create-notice-layout,.activities-hero,.activities-layout,.notices-hero,.students-hero,.student-workspace,.timetable-hero,.timetable-layout,.attendance-hero-page,.attendance-module-layout,.fees-hero-page,.fees-layout,.staff-hero,.staff-layout,.examinations-hero,.exam-layout,.reports-hero,.reports-layout,.audit-hero,.settings-hero,.settings-layout,.onboarding-step-tabs{grid-template-columns:1fr}.student-summary-grid{grid-template-columns:repeat(2,minmax(180px,1fr))}.attendance-summary-grid,.fees-summary-grid,.staff-summary-grid,.exam-summary-grid,.reports-summary-grid,.reports-snapshot{grid-template-columns:repeat(2,minmax(170px,1fr))}.student-profile-panel,.timetable-detail-panel,.attendance-insight-panel,.fee-detail-panel,.staff-profile-panel,.exam-detail-panel,.reports-detail-panel,.settings-tabs{position:static}.admission-steps{grid-template-columns:repeat(4,minmax(120px,1fr));position:static;overflow-x:auto}.attendance-wrap{grid-template-columns:1fr;justify-items:center}}@media (width<=720px){.mfa-page{height:auto;min-height:100vh;padding:18px 14px;overflow:visible}.mfa-card{padding:28px 18px}.mfa-logo{width:min(220px,100%);height:53px}.mfa-logo img{width:220px;top:-23px}.mfa-shield{width:60px;height:60px}.mfa-head h1{font-size:22px}.mfa-head p{font-size:14px}.mfa-code-group{gap:7px}.mfa-code-group input{border-radius:8px;height:46px;font-size:20px}.mfa-secondary{width:100%;padding-inline:14px;font-size:14px}.login-brand-panel{padding:28px 18px 32px}.login-form-panel{padding:24px 16px 34px}.login-mobile-brand .login-product-logo{width:min(270px,100%);height:65px}.login-mobile-brand .login-product-logo img{width:270px;top:-29px}.login-brand-mark{margin-bottom:28px}.login-product-logo{width:min(280px,100%);height:67px}.login-product-logo img{width:280px;top:-30px}.login-copy h1{font-size:26px}.login-copy p{font-size:14px}.school-illustration{height:300px;min-height:300px;margin-top:24px}.school-illustration img{width:100%;height:calc(100% - 14px)}.login-feature-list{gap:12px}.login-feature-list article{grid-template-columns:44px minmax(0,1fr)}.login-feature-list article>span,.login-security-card>span,.login-trust-card>span{width:44px;height:44px}.login-card{padding:34px 20px}.login-options{flex-direction:column;align-items:flex-start}.login-secure-divider{text-align:center;grid-template-columns:1fr}.login-secure-divider p{white-space:normal;justify-content:center}.login-secure-divider>span{display:none}.login-trust-card,.login-security-card{text-align:center;grid-template-columns:1fr;justify-items:center}.login-footer nav{flex-wrap:wrap;justify-content:center}.legal-page{padding:18px}.legal-hero{min-height:220px;padding:22px}.legal-hero h1{font-size:30px}.legal-back{margin-bottom:20px}.legal-content,.support-contact-grid{grid-template-columns:1fr}.legal-content article:first-child{grid-column:auto}.topbar,.dashboard{padding-inline:16px}.sidebar-nav,.dashboard-grid,.stats-grid,.saas-strip,.quick-actions,.onboarding-step-tabs,.form-grid,.reports-summary-grid,.audit-filter-panel,.reports-snapshot{grid-template-columns:1fr}.hero-actions{flex-direction:column;align-items:stretch}.stat-card{min-height:106px}.stat-icon{width:60px;height:60px}.panel{padding:18px}.panel-head{flex-direction:column;align-items:flex-start}.select-button{width:100%;max-width:none}.line-chart{grid-template-rows:190px 34px;grid-template-columns:36px minmax(0,1fr)}.chart-y,.chart-x{font-size:11px}.tooltip-card{top:20px;left:58%}.activity{grid-template-columns:38px minmax(0,1fr)}.activity time{grid-column:2}.events-panel .outline-button{margin-top:18px;position:static}.profile{min-width:0}.modal-backdrop{padding:12px}.attendance-modal{max-height:calc(100vh - 24px)}.modal-head,.attendance-detail-summary,.modal-actions{padding-inline:18px}.attendance-detail-summary{grid-template-columns:1fr}.attendance-table{margin-inline:18px;overflow-x:auto}.attendance-table-head,.attendance-table-row{min-width:720px}.modal-actions{flex-direction:column;align-items:stretch}.form-grid,.document-grid{grid-template-columns:1fr}.form-panel-head,.admission-actions{flex-direction:column;align-items:stretch}.add-staff-hero,.admission-hero,.activities-hero,.calendar-hero,.collect-fee-hero,.create-event-hero,.create-notice-hero,.notices-hero,.students-hero,.timetable-hero,.attendance-hero-page,.fees-hero-page,.staff-hero,.examinations-hero,.reports-hero,.audit-hero,.settings-hero,.form-panel,.admission-actions{padding-inline:18px}.student-summary-grid,.student-toolbar,.student-profile-grid,.student-profile-actions,.attendance-summary-grid,.fees-summary-grid,.staff-summary-grid,.exam-summary-grid,.module-toolbar,.attendance-detail-list,.fee-breakdown-list,.staff-detail-grid,.staff-actions,.exam-detail-grid,.exam-modal-grid,.reports-detail-grid,.reports-preview-grid,.settings-form-grid{grid-template-columns:1fr}.settings-wide{grid-column:auto}.settings-panel-head,.timetable-controls,.timetable-board-head{flex-direction:column;align-items:stretch}.timetable-day-select{justify-content:space-between;width:100%}.timetable-day-select select{min-width:160px}.period-meta-grid,.timetable-actions{grid-template-columns:1fr}.student-directory-panel,.student-profile-panel,.timetable-board,.timetable-detail-panel,.attendance-register-panel,.attendance-insight-panel,.fees-ledger-panel,.fee-detail-panel,.staff-directory-panel,.staff-profile-panel,.exam-list-panel,.exam-detail-panel,.reports-main-panel,.reports-detail-panel,.audit-table-panel,.settings-tabs,.settings-panel{padding:16px}.attendance-register-table,.fees-table,.staff-table,.exam-table,.reports-table,.audit-table-panel{overflow-x:auto}.attendance-register-head,.attendance-register-row{min-width:760px}.fees-table-head,.fees-table-row{min-width:820px}.staff-table-head,.staff-table-row{min-width:860px}.exam-table-head,.exam-table-row{min-width:760px}.reports-table-head,.reports-table-row{min-width:880px}.audit-table-head,.audit-row{min-width:920px}.student-table{overflow-x:auto}.student-table-head,.student-row{min-width:780px}.notice-summary-grid{grid-template-columns:1fr}.calendar-board-head,.notices-list-head,.reports-preview-modal header,.reports-preview-modal footer{flex-direction:column;align-items:stretch}.notice-row-card{grid-template-columns:12px minmax(0,1fr)}.notice-status{grid-column:2;width:fit-content}.event-toggle-grid{grid-template-columns:1fr}.activity-row-card{grid-template-columns:14px minmax(0,1fr)}.activity-row-card time{grid-column:2}}.sidebar-close-button,.mobile-sidebar-backdrop{display:none}@media (width<=1100px){.app-shell,.sidebar-collapsed{min-height:100dvh;display:block}.sidebar,.sidebar-collapsed .sidebar{z-index:70;width:min(340px,88vw);height:100dvh;padding:18px 16px;transition:transform .18s,box-shadow .18s;display:block;position:fixed;inset:0 auto 0 0;overflow-y:auto;transform:translate(0);box-shadow:20px 0 50px #09122040}.sidebar-collapsed .sidebar{box-shadow:none;transform:translate(-105%)}.sidebar .brand{justify-content:flex-start;align-items:center;display:flex}.sidebar-close-button{color:#fff;background:#ffffff1a;border:0;border-radius:8px;place-items:center;width:40px;height:40px;margin-left:auto;font-size:26px;display:grid}.sidebar-nav{grid-template-columns:1fr}.mobile-sidebar-backdrop{z-index:65;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);opacity:1;background:#09122085;border:0;width:100%;height:100%;transition:opacity .18s;display:block;position:fixed;inset:0}.sidebar-collapsed .mobile-sidebar-backdrop{visibility:hidden;opacity:0;pointer-events:none}.app-shell:not(.sidebar-collapsed){height:100dvh;overflow:hidden}.topbar{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"title actions""search search";gap:12px 16px;padding:12px 20px}.topbar-left{grid-area:title}.search-menu{grid-area:search}.topbar-actions{flex-wrap:nowrap;grid-area:actions}.dashboard{width:100%;padding:20px}.settings-tabs{overscroll-behavior-inline:contain;scrollbar-width:thin;gap:8px;display:flex;overflow-x:auto}.settings-tabs button{flex:none;min-width:170px}.attendance-register-table,.fees-table,.staff-table,.exam-table,.reports-table,.student-table,.audit-table-panel,.fee-structure-table,.holiday-table,.timetable-grid{overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;overflow-x:auto}.attendance-register-head,.attendance-register-row{min-width:760px}.staff-table-head,.staff-table-row{min-width:860px}.exam-table-head,.exam-table-row{min-width:760px}.reports-table-head,.reports-table-row{min-width:880px}.audit-table-head,.audit-row{min-width:920px}.student-table-head,.student-row{min-width:780px}.fee-structure-table-head,.fee-structure-row{min-width:700px}.attendance-modal,.password-reset-modal,.timetable-edit-modal,.school-profile-editor-modal,.holiday-editor-modal,.printable-receipt-modal,.staff-status-modal,.exam-status-modal,.report-card-modal,.fee-manager-modal,.reports-preview-modal{max-width:100%;max-height:calc(100dvh - 32px);overflow-y:auto}}@media (width<=720px){.topbar{gap:10px;padding:10px 12px}.topbar h1{text-overflow:ellipsis;white-space:nowrap;max-width:38vw;font-size:17px;overflow:hidden}.topbar-left,.topbar-actions{gap:7px}.topbar-actions>.icon-button:not(.has-badge),.topbar-divider{display:none}.school-context-menu{min-width:0}.school-context-button{grid-template-columns:1fr;width:44px;min-height:44px;padding:3px}.school-context-button>span:nth-child(2),.school-context-button>svg{display:none}.school-context-button .workspace-logo{width:36px;height:36px}.school-context-dropdown{width:auto;max-height:min(420px,100dvh - 84px);position:fixed;top:66px;left:12px;right:12px}.profile{min-width:42px}.profile>span:nth-child(2),.profile>svg{display:none}.profile .avatar{width:40px;height:40px}.profile-dropdown{width:min(260px,100vw - 24px);position:fixed;top:66px;right:12px}.search-box{height:44px;padding-inline:14px}.dashboard{padding:14px 12px 24px}.saas-hero,.add-staff-hero,.admission-hero,.onboarding-hero,.calendar-hero,.collect-fee-hero,.create-event-hero,.create-notice-hero,.activities-hero,.notices-hero,.students-hero,.timetable-hero,.attendance-hero-page,.fees-hero-page,.staff-hero,.examinations-hero,.reports-hero,.audit-hero,.settings-hero,.holiday-hero{padding:20px 16px}.saas-hero h2,.add-staff-hero h2,.admission-hero h2,.onboarding-hero h2,.calendar-hero h2,.collect-fee-hero h2,.create-event-hero h2,.create-notice-hero h2,.activities-hero h2,.notices-hero h2,.students-hero h2,.timetable-hero h2,.attendance-hero-page h2,.fees-hero-page h2,.staff-hero h2,.examinations-hero h2,.reports-hero h2,.audit-hero h2,.settings-hero h2,.holiday-hero h2{font-size:23px}.hero-create-button,.hero-actions,.hero-actions>button{width:100%}.form-grid input,.form-grid select,.form-grid textarea,.settings-form-grid input,.settings-form-grid select,.module-toolbar input,.module-toolbar select,.search-box input{font-size:16px}.primary-panel-button,.secondary-panel-button,.hero-create-button{min-height:44px}.admission-actions>button,.modal-actions>button,.receipt-screen-actions button{width:100%}.receipt-screen-actions,.receipt-screen-actions>div:last-child{flex-direction:column;align-items:stretch}.fee-payment-receipt{width:calc(100% - 20px);min-height:0;margin:10px;padding:22px 18px}.receipt-document-header{grid-template-columns:auto minmax(0,1fr)}.receipt-title-block{text-align:left;border-top:1px solid #dce5ef;grid-column:1/-1;padding-top:14px}.receipt-meta-grid{grid-template-columns:1fr 1fr;gap:14px}.receipt-fee-table{white-space:nowrap;display:block;overflow-x:auto}.receipt-total-section{grid-template-columns:1fr}.receipt-document-footer{flex-direction:column;align-items:flex-start;margin-top:38px}.payment-result-details{grid-template-columns:1fr}.payment-result-actions{flex-direction:column;align-items:stretch}.notices-list-head>div,.calendar-switch{width:100%;display:flex;overflow-x:auto}.notices-list-head button,.calendar-switch button{flex:none}.modal-backdrop{align-items:end;padding:8px}.attendance-success-popup,.password-reset-modal,.timetable-edit-modal,.school-profile-editor-modal,.holiday-editor-modal,.staff-status-modal,.exam-status-modal,.report-card-modal,.fee-manager-modal,.reports-preview-modal{border-radius:12px 12px 8px 8px;width:100%;max-height:calc(100dvh - 16px)}}@media (width<=420px){.topbar-actions>.has-badge{display:none}.topbar h1{max-width:44vw}.receipt-meta-grid,.stats-grid,.student-summary-grid,.attendance-summary-grid,.fees-summary-grid,.staff-summary-grid,.exam-summary-grid,.reports-summary-grid,.holiday-summary-grid{grid-template-columns:1fr}}.homework-page{gap:20px;display:grid}.homework-hero{isolation:isolate;background:radial-gradient(circle at 83% 14%,#ffc9596b,#0000 22%),linear-gradient(125deg,#075fbd 0%,#1478f2 43%,#7153df 100%);border:1px solid #7153df73;border-radius:18px;justify-content:space-between;align-items:flex-end;gap:24px;min-height:210px;padding:32px;display:flex;position:relative;overflow:hidden;box-shadow:0 16px 36px #1e5bb433}.homework-hero:before,.homework-hero:after{z-index:-1;content:"";background:#ffffff14;border:1px solid #fff3;border-radius:50%;position:absolute}.homework-hero:before{width:205px;height:205px;top:-82px;right:16%}.homework-hero:after{width:245px;height:245px;bottom:-102px;right:-58px}.homework-hero>*{z-index:1;position:relative}.homework-hero .back-button{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff1f;border-color:#ffffff47}.homework-hero .back-button:hover{background:#fff3;border-color:#ffffff80}.homework-hero .eyebrow{color:#dcecff;letter-spacing:.12em;margin-top:20px;display:block}.homework-hero h2{color:#fff;text-shadow:0 2px 12px #052d6933;margin:5px 0 8px;font-size:clamp(27px,3vw,36px)}.homework-hero p{color:#ffffffe0;max-width:680px;margin:0;line-height:1.6}.homework-hero .hero-create-button{color:#075fbd;background:#fff;border:1px solid #ffffffb3;box-shadow:0 10px 24px #052d6938}.homework-hero .hero-create-button:hover{color:#6040c8;background:#f7f4ff;transform:translateY(-2px)}.homework-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.homework-metric{background:#fff;border:1px solid #e0e8f3;border-radius:14px;min-width:0;padding:18px 20px 18px 32px;position:relative;overflow:hidden}.homework-metric>span{width:6px;position:absolute;inset:0 auto 0 0}.homework-metric>span.blue{background:#1478f2}.homework-metric>span.purple{background:#7656df}.homework-metric>span.orange{background:#ff8a17}.homework-metric>span.green{background:#21a85e}.homework-metric p{color:#667790;margin:0 0 7px;font-size:13px}.homework-metric strong{color:#13213a;font-size:25px}.homework-panel{background:#fff;border:1px solid #dfe8f3;border-radius:16px;overflow:hidden}.homework-toolbar{border-bottom:1px solid #e6edf6;grid-template-columns:minmax(260px,1fr) 190px 160px;padding:16px}.homework-list{gap:12px;padding:16px;display:grid}.homework-card{background:#fff;border:1px solid #e0e8f3;border-radius:14px;grid-template-columns:52px minmax(0,1fr);gap:16px;padding:17px;transition:border-color .16s,box-shadow .16s;display:grid}.homework-card:hover{border-color:#bad2f2;box-shadow:0 8px 22px #1d4e9114}.homework-type-icon{border-radius:13px;place-items:center;width:52px;height:52px;font-size:13px;font-style:normal;font-weight:800;display:grid}.homework-type-icon.blue{color:#1267ce;background:#eaf3ff}.homework-type-icon.purple{color:#6743cc;background:#f0ebff}.homework-card-content{min-width:0}.homework-card-title{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.homework-card-title span{color:#60718c;text-transform:uppercase;letter-spacing:.03em;margin-bottom:4px;font-size:12px;font-weight:700;display:block}.homework-card h3{color:#13213a;margin:0;font-size:17px}.homework-card-content>p{color:#52637d;white-space:pre-wrap;margin:10px 0 14px;line-height:1.55}.homework-badges{flex-wrap:wrap;flex:none;justify-content:flex-end;gap:7px;display:flex}.homework-due,.homework-publish{white-space:nowrap;border-radius:999px;padding:6px 9px;font-size:11px;font-style:normal;font-weight:800;display:inline-flex}.homework-due.green,.homework-publish.published{color:#147d4c;background:#e9f8ef}.homework-due.orange{color:#b85b0c;background:#fff2df}.homework-due.red{color:#cf2f42;background:#fff0f1}.homework-publish.draft{color:#6743cc;background:#f0ebff}.homework-card footer{color:#718199;flex-wrap:wrap;align-items:center;gap:8px 22px;font-size:12px;display:flex}.homework-card footer strong{color:#44546c}.homework-actions{gap:8px;margin-left:auto;display:flex}.homework-actions button{color:#1267ce;font:inherit;cursor:pointer;background:#eaf3ff;border:0;border-radius:8px;padding:6px 10px;font-weight:700}.homework-actions button.danger{color:#cf2f42;background:#fff0f1}.homework-editor-modal{background:#fff;border-radius:18px;width:min(780px,100vw - 32px);max-height:calc(100vh - 40px);overflow:auto;box-shadow:0 28px 80px #1629483d}.homework-editor-modal>header,.homework-editor-modal>footer{justify-content:space-between;align-items:center;gap:18px;padding:20px 24px;display:flex}.homework-editor-modal>header{border-bottom:1px solid #e4ebf4;align-items:flex-start}.homework-editor-modal>header h3{color:#13213a;margin:4px 0 6px;font-size:22px}.homework-editor-modal>header p{color:#667790;max-width:610px;margin:0;line-height:1.45}.homework-editor-modal .close-button{color:#6d7c91;cursor:pointer;background:0 0;border:0;font-size:28px}.homework-editor-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:22px 24px;display:grid}.homework-editor-grid label{color:#3c4c64;gap:7px;font-size:13px;font-weight:700;display:grid}.homework-editor-grid .wide-field{grid-column:1/-1}.homework-editor-grid input,.homework-editor-grid select,.homework-editor-grid textarea{color:#17253d;width:100%;font:inherit;background:#fff;border:1px solid #cad7e7;border-radius:9px;outline:none;padding:11px 12px;font-weight:500}.homework-editor-grid input:focus,.homework-editor-grid select:focus,.homework-editor-grid textarea:focus{border-color:#1478f2;box-shadow:0 0 0 3px #1478f21a}.homework-editor-grid textarea{resize:vertical}.homework-editor-modal>footer{border-top:1px solid #e4ebf4;justify-content:flex-end}@media (width<=900px){.homework-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.homework-toolbar{grid-template-columns:1fr 1fr}.homework-toolbar .module-search{grid-column:1/-1}}@media (width<=680px){.homework-hero{flex-direction:column;align-items:stretch;min-height:0;padding:22px 20px}.homework-hero .hero-create-button{width:100%}.homework-summary-grid,.homework-toolbar,.homework-editor-grid{grid-template-columns:1fr}.homework-toolbar .module-search,.homework-editor-grid .wide-field{grid-column:auto}.homework-card{grid-template-columns:42px minmax(0,1fr);gap:11px;padding:13px}.homework-type-icon{border-radius:10px;width:42px;height:42px;font-size:11px}.homework-card-title{flex-direction:column;align-items:stretch}.homework-badges{justify-content:flex-start}.homework-actions{width:100%;margin:4px 0 0}.homework-actions button{flex:1}.homework-editor-modal{width:calc(100vw - 20px);max-height:calc(100vh - 20px)}.homework-editor-modal>header,.homework-editor-modal>footer,.homework-editor-grid{padding:17px}}.demo-requests-page{gap:22px;display:grid}.demo-requests-hero{color:#fff;background:radial-gradient(circle at 88% 16%,#ffffff2e,#0000 24%),linear-gradient(125deg,#102653,#1267d7 70%,#2187ed);border-radius:22px;justify-content:space-between;align-items:center;gap:32px;min-height:190px;padding:34px 38px;display:flex;overflow:hidden;box-shadow:0 18px 44px #1247912e}.demo-requests-hero .eyebrow{color:#a9d1ff}.demo-requests-hero h2{margin:8px 0;font-size:clamp(29px,3vw,42px)}.demo-requests-hero p{color:#d3e4fa;max-width:680px;margin:0;line-height:1.6}.demo-request-total{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff1a;border:1px solid #ffffff2e;border-radius:16px;min-width:180px;padding:21px 24px}.demo-request-total span,.demo-request-total small{color:#c8ddf7;font-size:12px;display:block}.demo-request-total strong{margin:4px 0;font-size:34px;display:block}.demo-summary-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;display:grid}.demo-summary-grid button{color:#5e6e84;text-align:left;cursor:pointer;background:#fff;border:1px solid #e0e8f3;border-radius:14px;min-width:0;padding:17px 16px;transition:transform .2s,border-color .2s,box-shadow .2s}.demo-summary-grid button:hover,.demo-summary-grid button.active{border-color:#8ebcff;transform:translateY(-2px);box-shadow:0 10px 26px #20559a1a}.demo-summary-grid button.active{background:#f1f7ff}.demo-summary-grid span{text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:700;display:block;overflow:hidden}.demo-summary-grid strong{color:#172a47;margin-top:7px;font-size:24px;display:block}.demo-request-panel{background:#fff;border:1px solid #e1e8f2;border-radius:18px;overflow:hidden;box-shadow:0 12px 34px #1f447612}.demo-request-toolbar{background:#fbfcfe;border-bottom:1px solid #e8edf4;grid-template-columns:minmax(280px,1fr) 220px;gap:15px;padding:20px 22px;display:grid}.demo-request-toolbar label,.demo-followup-body label{color:#46566f;gap:7px;font-size:12px;font-weight:750;display:grid}.demo-request-toolbar input,.demo-request-toolbar select,.demo-followup-body select,.demo-followup-body textarea{color:#1c2c45;width:100%;font:inherit;background:#fff;border:1px solid #cad6e5;border-radius:9px;outline:none;padding:11px 12px}.demo-request-toolbar input:focus,.demo-request-toolbar select:focus,.demo-followup-body select:focus,.demo-followup-body textarea:focus{border-color:#1478f2;box-shadow:0 0 0 3px #1478f21a}.demo-request-table-head,.demo-request-row{grid-template-columns:minmax(190px,1.35fr) minmax(165px,1.1fr) minmax(90px,.75fr) minmax(145px,1fr) minmax(125px,.85fr) 82px;align-items:center;gap:15px;display:grid}.demo-request-table-head{color:#7b899c;letter-spacing:.45px;text-transform:uppercase;background:#f5f8fc;padding:13px 22px;font-size:10px;font-weight:800}.demo-request-row{color:#526179;border-top:1px solid #edf1f6;padding:19px 22px;font-size:12px;position:relative}.demo-request-row>div{gap:4px;min-width:0;display:grid}.demo-request-row strong{color:#20304a;font-size:13px}.demo-request-row small,.demo-request-row time{color:#8490a2;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.demo-request-row a{color:#1767cb;text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.demo-request-row a:not([href]){color:#8b96a7;pointer-events:none;font-weight:500}.demo-status{color:#1764bb;white-space:nowrap;background:#e9f3ff;border-radius:999px;width:fit-content;padding:6px 9px;font-size:9px;font-weight:800;display:inline-flex}.demo-status.contacted{color:#7a55c8;background:#f1ebff}.demo-status.demo_scheduled{color:#a85d08;background:#fff1dc}.demo-status.completed{color:#13794b;background:#e4f7ed}.demo-status.not_interested{color:#9a4050;background:#fff0f2}.demo-manage-button{color:#fff;font:inherit;cursor:pointer;background:#126de0;border:0;border-radius:8px;padding:8px 10px;font-size:10px;font-weight:800}.demo-row-remark{color:#64748a;background:#f7f9fc;border-radius:8px;grid-column:1/-1;margin:2px 0 0;padding:10px 12px;font-size:11px;line-height:1.5}.demo-row-remark b{color:#43536b}.demo-request-empty{color:#8290a4;text-align:center;place-items:center;gap:6px;min-height:230px;display:grid}.demo-request-empty strong{color:#35465f;font-size:16px}.demo-pagination{color:#718097;border-top:1px solid #e7edf5;justify-content:flex-end;align-items:center;gap:14px;padding:17px 22px;font-size:11px;display:flex}.demo-pagination button{color:#40526c;font:inherit;cursor:pointer;background:#fff;border:1px solid #d5deea;border-radius:8px;padding:8px 12px;font-weight:700}.demo-pagination button:disabled{cursor:not-allowed;opacity:.45}.demo-followup-modal{background:#fff;border-radius:18px;width:min(640px,100vw - 32px);max-height:calc(100vh - 40px);overflow:auto;box-shadow:0 28px 80px #122a4e47}.demo-followup-modal>header,.demo-followup-modal>footer{justify-content:space-between;align-items:center;gap:20px;padding:21px 24px;display:flex}.demo-followup-modal>header{border-bottom:1px solid #e4eaf2;align-items:flex-start}.demo-followup-modal>header h3{color:#172944;margin:5px 0;font-size:22px}.demo-followup-modal>header p{color:#738197;margin:0;font-size:12px}.demo-followup-modal>header button{color:#77859a;cursor:pointer;background:0 0;border:0;font-size:28px}.demo-followup-body{gap:18px;padding:22px 24px;display:grid}.demo-followup-body textarea{resize:vertical}.demo-lead-context{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.demo-lead-context span{color:#65748a;background:#f4f7fb;border-radius:9px;gap:4px;padding:12px;font-size:11px;display:grid}.demo-lead-context b{color:#34455f;text-transform:uppercase;font-size:10px}.demo-followup-modal>footer{border-top:1px solid #e4eaf2;justify-content:flex-end}@media (width<=1120px){.demo-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.demo-request-table-head{display:none}.demo-request-row{grid-template-columns:repeat(3,minmax(0,1fr))}.demo-request-row>div:first-child{grid-column:span 2}}@media (width<=680px){.demo-requests-hero{flex-direction:column;align-items:stretch;padding:25px 20px}.demo-request-total{min-width:0}.demo-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.demo-request-toolbar{grid-template-columns:1fr}.demo-request-row{grid-template-columns:1fr 1fr;padding:17px}.demo-request-row>div:first-child,.demo-row-remark{grid-column:1/-1}.demo-manage-button{min-height:38px}.demo-lead-context{grid-template-columns:1fr}.demo-followup-modal>header,.demo-followup-modal>footer,.demo-followup-body{padding:17px}}.communication-page{gap:22px;display:grid}.communication-hero{color:#fff;background:radial-gradient(circle at 88% 20%,#ffffff2e,#0000 24%),linear-gradient(125deg,#0b3756,#087b87 68%,#15a27f);border-radius:22px;justify-content:space-between;align-items:center;gap:30px;min-height:190px;padding:34px 38px;display:flex;overflow:hidden;box-shadow:0 18px 44px #115b672e}.communication-hero .back-button{color:#d9f6f3}.communication-hero .eyebrow{color:#92e7da}.communication-hero h2{margin:8px 0;font-size:clamp(29px,3vw,42px)}.communication-hero p{color:#d5f0ee;max-width:720px;margin:0;line-height:1.6}.communication-hero .hero-create-button{color:#087768;background:#fff;box-shadow:0 12px 28px #033b4638}.communication-provider-note{color:#715519;background:#fff9e8;border:1px solid #f1d598;border-radius:11px;padding:13px 16px;font-size:12px}.communication-provider-note span{margin-right:8px;font-weight:800}.communication-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.communication-summary-grid article{background:#fff;border:1px solid #e0e8f2;border-radius:14px;padding:19px 20px;box-shadow:0 8px 22px #1f44760f}.communication-summary-grid span,.communication-summary-grid small{color:#718096;font-size:11px;display:block}.communication-summary-grid strong{color:#17314c;margin:5px 0 2px;font-size:26px;display:block}.communication-list-panel{background:#fff;border:1px solid #e0e8f2;border-radius:18px;overflow:hidden;box-shadow:0 12px 34px #1f447612}.communication-list-panel>header{border-bottom:1px solid #e8edf4;justify-content:space-between;align-items:center;gap:20px;padding:21px 23px;display:flex}.communication-list-panel h3,.communication-list-panel header p{margin:0}.communication-list-panel h3{color:#1c2c45;font-size:17px}.communication-list-panel header p{color:#7a889c;margin-top:3px;font-size:11px}.provider-ready,.provider-pending{border-radius:999px;padding:7px 10px;font-size:9px;font-weight:800}.provider-ready{color:#11744c;background:#e5f7ed}.provider-pending{color:#8b5a0b;background:#fff1d9}.communication-table-head,.communication-row{grid-template-columns:minmax(220px,1.5fr) minmax(145px,.85fr) 85px minmax(140px,.85fr) 100px 88px;align-items:center;gap:15px;display:grid}.communication-table-head{color:#7a889b;letter-spacing:.4px;text-transform:uppercase;background:#f5f8fc;padding:13px 22px;font-size:10px;font-weight:800}.communication-row{color:#53627a;border-top:1px solid #edf1f6;padding:18px 22px;font-size:11px}.communication-row>div{gap:4px;min-width:0;display:grid}.communication-row strong{color:#273952;font-size:12px}.communication-row small{color:#8793a5;font-size:9px}.communication-row p{color:#6d7c91;text-overflow:ellipsis;white-space:nowrap;margin:2px 0 0;font-size:10px;overflow:hidden}.channel-badge,.communication-status{white-space:nowrap;border-radius:999px;width:fit-content;padding:6px 9px;font-size:9px;font-weight:800;display:inline-flex}.channel-badge.sms{color:#1767c8;background:#e7f2ff}.channel-badge.whatsapp{color:#087848;background:#def7ea}.communication-status{color:#7a55c7;background:#f0eaff}.communication-status.sent{color:#126f48;background:#e2f6eb}.communication-status.scheduled{color:#1767c8;background:#e7f2ff}.communication-status.failed{color:#b43345;background:#fff0f2}.communication-status.partial{color:#9c5e0b;background:#fff0d8}.communication-retry{color:#fff;font:inherit;cursor:pointer;background:#087b87;border:0;border-radius:8px;padding:8px 10px;font-size:9px;font-weight:800}.communication-retry:disabled{cursor:wait;opacity:.55}.communication-no-action{color:#9aa5b4;text-align:center}.communication-empty{color:#7e8da2;text-align:center;place-items:center;min-height:230px;display:grid}.communication-empty strong{color:#35475f;font-size:16px}.communication-empty p{margin:5px 0 0;font-size:12px}.communication-composer{background:#fff;border-radius:18px;width:min(780px,100vw - 32px);max-height:calc(100vh - 36px);overflow:auto;box-shadow:0 28px 80px #112a4747}.communication-composer>header,.communication-composer>footer{justify-content:space-between;align-items:center;gap:20px;padding:20px 24px;display:flex}.communication-composer>header{border-bottom:1px solid #e4eaf2;align-items:flex-start}.communication-composer>header h3{color:#172944;margin:5px 0;font-size:23px}.communication-composer>header p{color:#738197;margin:0;font-size:11px}.communication-composer>header>button{color:#77859a;cursor:pointer;background:0 0;border:0;font-size:28px}.communication-composer-body{gap:19px;padding:21px 24px;display:grid}.communication-template-row{justify-content:space-between;align-items:center;gap:14px;display:flex}.communication-template-row>span{color:#46576e;font-size:11px;font-weight:800}.communication-template-row>div{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.communication-template-row button{color:#4d5f77;cursor:pointer;background:#f8fafc;border:1px solid #d6e1ed;border-radius:7px;padding:6px 9px;font-size:9px;font-weight:700}.communication-form-grid{grid-template-columns:1fr 1fr;gap:15px;display:grid}.communication-form-grid label{color:#42536b;gap:7px;font-size:11px;font-weight:750;display:grid}.communication-form-grid .wide-field{grid-column:1/-1}.communication-form-grid input,.communication-form-grid select,.communication-form-grid textarea{color:#1c2c45;width:100%;font:inherit;background:#fff;border:1px solid #cbd7e5;border-radius:9px;outline:none;padding:11px 12px}.communication-form-grid input:focus,.communication-form-grid select:focus,.communication-form-grid textarea:focus{border-color:#0b8f91;box-shadow:0 0 0 3px #0b8f911a}.communication-form-grid textarea{resize:vertical}.communication-form-grid label>small{color:#8592a4;font-size:9px;font-weight:500}.communication-consent{grid-template-columns:17px 1fr;align-items:flex-start;line-height:1.5;display:flex!important}.communication-consent input{width:16px;margin-top:2px}.communication-composer>footer{border-top:1px solid #e4eaf2}.communication-composer>footer>div:last-child{gap:9px;display:flex}.communication-composer>footer>div:first-child{color:#718097;font-size:10px}.communication-composer>footer>div:first-child b{color:#17304b;font-size:14px}@media (width<=1120px){.communication-table-head{display:none}.communication-row{grid-template-columns:repeat(3,minmax(0,1fr))}.communication-row>div:first-child{grid-column:span 2}}@media (width<=760px){.communication-hero{flex-direction:column;align-items:stretch;min-height:0;padding:25px 20px}.communication-hero .hero-create-button{width:100%}.communication-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.communication-row{grid-template-columns:1fr 1fr;padding:17px}.communication-row>div:first-child{grid-column:1/-1}.communication-form-grid{grid-template-columns:1fr}.communication-form-grid .wide-field{grid-column:auto}.communication-template-row{flex-direction:column;align-items:flex-start}.communication-template-row>div{justify-content:flex-start}.communication-composer>footer{flex-direction:column;align-items:stretch}.communication-composer>footer>div:last-child{grid-template-columns:1fr 1fr;display:grid}}@media (width<=480px){.communication-summary-grid{grid-template-columns:1fr}.communication-list-panel>header{flex-direction:column;align-items:flex-start}.communication-composer>header,.communication-composer>footer,.communication-composer-body{padding:17px}}
