/* StudentHub · Signal & Ledger visual system */
:root{--ink:#122129;--ink-soft:#476067;--muted:#7f9091;--line:#e6ece8;--surface:#fff;--canvas:#f7f9f7;--teal:#0f766e;--teal-dark:#075e59;--teal-soft:#dff3ef;--orange:#e68c3a;--orange-soft:#fff0dd;--violet:#7561c9;--violet-soft:#ebe8fb;--blue:#4477b8;--blue-soft:#e6effa;--pink:#ca6f95;--pink-soft:#fae6ee;--danger:#c75c56;--shadow:0 18px 48px rgba(24,53,51,.08);--radius:18px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--canvas);color:var(--ink);font-family:'Plus Jakarta Sans',system-ui,sans-serif;font-size:13px;line-height:1.5}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid rgba(15,118,110,.2);outline-offset:2px}.app-shell{display:flex;min-height:100vh}.sidebar{width:258px;background:#10272b;color:#d9e7e3;display:flex;flex-direction:column;padding:27px 16px 18px;position:sticky;top:0;height:100vh;flex-shrink:0}.brand-lockup{display:flex;align-items:center;gap:11px;padding:0 10px 30px}.brand-mark{width:34px;height:34px;border-radius:11px;background:var(--teal);position:relative;overflow:hidden;transform:rotate(-7deg);box-shadow:0 8px 18px rgba(15,118,110,.28)}.brand-mark span{display:block;position:absolute;width:25px;height:7px;border-radius:99px;background:#e4f8f3;transform:rotate(-38deg);left:5px}.brand-mark span:first-child{top:9px}.brand-mark span:last-child{top:18px;left:8px}.brand-name{font-size:17px;letter-spacing:-.7px;font-weight:800;color:#f7fbfa}.brand-name span{color:#8ae0d3}.brand-caption{font:10px 'DM Mono',monospace;color:#82aaa4;text-transform:uppercase;letter-spacing:.11em;margin-top:1px}.school-switcher{border:1px solid rgba(209,239,233,.13);background:rgba(255,255,255,.055);border-radius:13px;padding:10px;display:flex;align-items:center;gap:9px;margin:0 2px 28px}.school-avatar{width:30px;height:30px;background:#d9f0eb;color:var(--teal-dark);border-radius:10px;display:grid;place-items:center;font-weight:800}.school-copy{min-width:0;display:flex;flex-direction:column;flex:1}.school-copy strong,.profile-copy strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.school-copy span,.profile-copy span{font:10px 'DM Mono',monospace;color:#86aaa5;margin-top:2px}.icon-button{border:0;background:transparent;color:inherit;border-radius:9px;width:31px;height:31px;display:grid;place-items:center;transition:.2s}.icon-button:hover{background:rgba(255,255,255,.1)}.icon-button.subtle{color:#88aaa5;font-size:12px}.nav-label{font:10px 'DM Mono',monospace;color:#70948f;letter-spacing:.12em;text-transform:uppercase;padding:0 12px 9px}.utility-label{margin-top:29px}.nav-list{display:flex;flex-direction:column;gap:3px}.nav-item{border:0;background:transparent;color:#a9c3bf;display:flex;align-items:center;gap:11px;width:100%;text-align:left;border-radius:11px;padding:10px 11px;transition:background .18s,color .18s;position:relative}.nav-item:hover{background:rgba(255,255,255,.06);color:#f8fffd}.nav-item.active{background:#e3f4ef;color:var(--teal-dark);font-weight:700;box-shadow:0 8px 20px rgba(0,0,0,.08)}.nav-icon{font-size:16px;line-height:1;width:18px;text-align:center;font-family:Georgia,serif}.nav-count{font:10px 'DM Mono',monospace;margin-left:auto;color:#789995}.nav-item.active .nav-count{color:#4e8b84}.nav-dot{width:6px;height:6px;background:#efb467;border-radius:50%;margin-left:auto}.sidebar-footer{margin-top:auto}.help-card{border:1px solid rgba(209,239,233,.12);border-radius:13px;padding:12px 10px;display:flex;align-items:center;gap:9px;margin:0 2px 18px;background:linear-gradient(135deg,rgba(40,107,101,.45),rgba(20,57,61,.35))}.help-orb{width:27px;height:27px;border-radius:9px;background:#f6c56e;color:#234c4a;display:grid;place-items:center;font-weight:800}.help-card div:nth-child(2){display:flex;flex-direction:column;flex:1}.help-card strong{font-size:10px;color:#e8f6f2}.help-card span:not(.arrow){font:9px 'DM Mono',monospace;color:#88b2ab;margin-top:3px}.arrow{font-size:14px;color:#93cdc3}.account-row{border-top:1px solid rgba(209,239,233,.1);padding:17px 6px 0;display:flex;align-items:center;gap:9px}.profile-avatar{width:32px;height:32px;border-radius:10px;background:#ffd6b3;color:#75451d;border:0;display:grid;place-items:center;font-weight:800;font-size:10px}.profile-copy{display:flex;flex-direction:column;flex:1;min-width:0}.top-avatar{background:#ffcfaa;color:#75451d}.main-content{min-width:0;flex:1}.topbar{height:73px;background:rgba(255,255,255,.72);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(25px,4vw,58px);backdrop-filter:blur(14px);position:sticky;top:0;z-index:10}.breadcrumbs{display:flex;align-items:center;gap:10px;font-size:12px;color:#8a9b9a}.breadcrumbs b{font-weight:400;color:#c1ceca}.breadcrumbs strong{color:var(--ink);font-weight:700}.topbar-actions{display:flex;align-items:center;gap:12px}.global-search{height:35px;border:1px solid var(--line);background:#fff;border-radius:9px;display:flex;align-items:center;gap:7px;padding:0 9px;color:#91a2a0;width:210px}.global-search input{border:0;outline:0;background:transparent;min-width:0;width:100%;font-size:11px;color:var(--ink)}.global-search kbd{font:9px 'DM Mono',monospace;color:#9ba9a6;background:#f1f4f2;padding:3px 5px;border-radius:4px;white-space:nowrap}.notification-button{position:relative;color:#69827e;border:1px solid var(--line);background:#fff}.notification-button i{position:absolute;right:6px;top:5px;width:5px;height:5px;background:#e58b47;border-radius:50%;border:1px solid #fff}.page-wrap{max-width:1480px;margin:auto;padding:36px clamp(25px,4vw,58px) 60px}.page-section{display:none;animation:fadeUp .35s ease both}.page-section.active{display:block}@keyframes fadeUp{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.welcome-row,.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:30px}.eyebrow{font:10px 'DM Mono',monospace;text-transform:uppercase;letter-spacing:.12em;color:#829491;margin:0 0 9px}.welcome-row h1,.section-heading h1{font-size:36px;line-height:1.11;letter-spacing:-1.8px;margin:0;font-weight:800}.welcome-row h1 em{font-style:normal;color:var(--teal)}.lede,.section-lede{color:#83908f;margin:14px 0 0;font-size:13px}.hero-actions{display:flex;gap:9px;align-items:center}.button{border:0;border-radius:10px;padding:10px 14px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-weight:700;font-size:11px;transition:transform .18s,box-shadow .18s,background .18s}.button:hover{transform:translateY(-1px)}.button-primary{color:#fff;background:var(--teal);box-shadow:0 9px 17px rgba(15,118,110,.18)}.button-primary:hover{background:var(--teal-dark);box-shadow:0 11px 20px rgba(15,118,110,.25)}.button-ghost{color:#536764;background:#fff;border:1px solid var(--line)}.button-small{padding:8px 10px;font-size:10px}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:17px}.metric-card{border-radius:var(--radius);padding:18px 18px 15px;min-height:177px;position:relative;overflow:hidden;background:#fff;border:1px solid rgba(225,234,230,.95);box-shadow:0 4px 12px rgba(38,67,63,.02)}.metric-top,.metric-bottom{display:flex;align-items:center;justify-content:space-between}.metric-label{font-size:11px;font-weight:600;color:#738380}.metric-icon{width:27px;height:27px;border-radius:8px;display:grid;place-items:center;font-family:Georgia,serif;font-size:15px}.students-metric .metric-icon{background:var(--teal-soft);color:var(--teal)}.courses-metric .metric-icon{background:var(--orange-soft);color:var(--orange)}.attendance-metric .metric-icon{background:var(--violet-soft);color:var(--violet)}.fees-metric .metric-icon{background:var(--pink-soft);color:var(--pink)}.metric-value{display:block;font-size:30px;line-height:1;margin-top:18px;letter-spacing:-1px}.metric-bottom{justify-content:flex-start;gap:8px;margin-top:12px;color:#9aa8a5;font-size:10px}.trend{font-family:'DM Mono',monospace;font-size:10px}.trend.positive{color:#198578}.trend.warning{color:#d28c44}.sparkline{height:29px;display:flex;gap:4px;align-items:end;position:absolute;right:15px;bottom:16px;width:71px;opacity:.65}.sparkline i{display:block;flex:1;border-radius:4px 4px 1px 1px;background:var(--teal)}.metric-bars{position:absolute;right:17px;bottom:16px;height:30px;display:flex;gap:4px;align-items:end;width:62px}.metric-bars i{display:block;flex:1;background:#efbd80;border-radius:3px 3px 0 0;opacity:.75}.line-progress{height:6px;background:#eeebf6;border-radius:8px;margin-top:25px;overflow:hidden}.line-progress span{display:block;height:100%;background:#7f70cc;border-radius:8px}.progress-labels{display:flex;justify-content:space-between;color:#9ba6a3;font:9px 'DM Mono',monospace;margin-top:7px}.fee-visual{display:flex;align-items:center;gap:9px;margin-top:13px}.fee-circle{width:39px;height:39px;border-radius:50%;background:#fdecef;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#ba647e}.fee-circle b{font-size:12px;line-height:1}.fee-circle small{font:7px 'DM Mono',monospace;margin-top:2px}.fee-copy{font-size:10px;color:#909e9a;line-height:1.35}.fee-copy b{color:var(--pink);margin-left:3px}.content-grid{display:grid;gap:17px}.two-up{grid-template-columns:1.05fr .95fr;margin-bottom:17px}.panel{background:var(--surface);border:1px solid rgba(225,234,230,.95);border-radius:var(--radius);box-shadow:0 4px 12px rgba(38,67,63,.02)}.attendance-panel,.activity-panel{min-height:286px;padding:21px}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.panel-heading h2{font-size:16px;letter-spacing:-.5px;margin:0}.text-button{background:transparent;border:0;color:var(--teal);font-size:10px;font-weight:700;padding:4px}.text-button span{font-size:14px;margin-left:3px}.attendance-body{display:flex;align-items:center;gap:36px;padding:22px 10px 18px}.donut-chart{width:145px;height:145px;border-radius:50%;background:conic-gradient(var(--teal) 0 92.6%,#edbf82 92.6% 97%,#edf0ed 97% 100%);display:grid;place-items:center;position:relative;flex:none}.donut-chart:after{content:'';position:absolute;inset:13px;border-radius:50%;background:#fff}.donut-hole{z-index:1;text-align:center;display:flex;flex-direction:column}.donut-hole strong{font-size:25px;letter-spacing:-1px}.donut-hole strong small{font-size:12px}.donut-hole span{font:9px 'DM Mono',monospace;color:#93a19d;text-transform:uppercase;margin-top:1px}.attendance-legend{flex:1}.attendance-legend>div{display:grid;grid-template-columns:10px 1fr auto 40px;gap:7px;align-items:center;border-bottom:1px solid #f0f3f1;padding:8px 0;font-size:11px;color:#72817e}.attendance-legend>div:last-child{border:0}.attendance-legend b{font-size:11px;color:#344a47}.attendance-legend small{font:9px 'DM Mono',monospace;color:#9ba7a5;text-align:right}.legend-dot{width:7px;height:7px;border-radius:50%}.teal-dot{background:var(--teal)}.amber-dot{background:#edbf82}.pale-dot{background:#dfe6e2}.attendance-footer{border-top:1px solid var(--line);padding-top:13px;display:flex;justify-content:space-between;color:#98a4a1;font-size:10px}.attendance-footer i,.sync-line i{margin-right:5px}.mono{font-family:'DM Mono',monospace}.mono b{color:#4f6f68;font-weight:500}.activity-list{display:flex;flex-direction:column;margin-top:17px}.activity-row{display:flex;gap:10px;padding:12px 0;border-bottom:1px solid #f0f3f1}.activity-row:last-child{border-bottom:0}.activity-symbol{width:29px;height:29px;border-radius:9px;display:grid;place-items:center;font-family:Georgia,serif;font-size:14px;flex:none}.activity-symbol.teal{background:var(--teal-soft);color:var(--teal)}.activity-symbol.orange{background:var(--orange-soft);color:var(--orange)}.activity-symbol.violet{background:var(--violet-soft);color:var(--violet)}.activity-symbol.blue{background:var(--blue-soft);color:var(--blue)}.activity-content{min-width:0;flex:1}.activity-content strong{display:block;font-size:10px;color:#41534f;font-weight:700}.activity-content span{display:block;font-size:10px;color:#96a29f;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.activity-time{font:9px 'DM Mono',monospace;color:#a1aba8;white-space:nowrap}.table-panel{padding:21px}.preview-table-panel .panel-heading{margin-bottom:13px}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;min-width:670px}th{font:9px 'DM Mono',monospace;text-transform:uppercase;letter-spacing:.08em;color:#9aa6a3;text-align:left;padding:10px 10px;border-bottom:1px solid var(--line);font-weight:500}td{padding:13px 10px;border-bottom:1px solid #f0f3f1;font-size:11px;color:#60716d}tbody tr:last-child td{border-bottom:0}tbody tr:hover td{background:#fbfdfc}.student-cell{display:flex;align-items:center;gap:9px}.student-avatar{width:29px;height:29px;border-radius:9px;display:grid;place-items:center;font-size:9px;font-weight:800;flex:none}.student-avatar.teal{background:var(--teal-soft);color:var(--teal)}.student-avatar.orange{background:var(--orange-soft);color:#b36b25}.student-avatar.violet{background:var(--violet-soft);color:#6350b8}.student-avatar.pink{background:var(--pink-soft);color:#ad577d}.student-avatar.blue{background:var(--blue-soft);color:#3c6ca8}.student-name{font-weight:700;color:#344a47}.student-id{display:block;font:9px 'DM Mono',monospace;color:#9ba8a5;margin-top:1px}.status-pill{display:inline-flex;align-items:center;gap:5px;border-radius:99px;padding:4px 8px;font:9px 'DM Mono',monospace;white-space:nowrap}.status-pill:before{content:'';width:5px;height:5px;border-radius:50%;background:currentColor}.status-active{color:#198578;background:var(--teal-soft)}.status-due{color:#be7830;background:var(--orange-soft)}.status-leave{color:#b35a7c;background:var(--pink-soft)}.status-paid{color:#198578;background:var(--teal-soft)}.status-live{color:#198578;background:var(--teal-soft)}.status-live i{width:5px;height:5px;background:currentColor;border-radius:50%;animation:pulse 1.8s infinite}@keyframes pulse{50%{opacity:.3;transform:scale(.7)}}.attendance-cell{display:flex;align-items:center;gap:7px;font:10px 'DM Mono',monospace}.attendance-cell div{width:50px;height:4px;border-radius:8px;background:#eaf0ed;overflow:hidden}.attendance-cell i{display:block;height:100%;background:var(--teal);border-radius:8px}.row-menu{border:0;background:transparent;color:#97a6a1;letter-spacing:2px}.section-heading{align-items:center}.heading-count{font:10px 'DM Mono',monospace;vertical-align:middle;letter-spacing:0;color:#98a5a1;background:#edf2ef;border-radius:99px;padding:6px 8px;margin-left:7px;font-weight:500}.toolbar{display:flex;align-items:center;gap:8px;margin-bottom:16px;flex-wrap:wrap}.search-field{height:39px;background:#fff;border:1px solid var(--line);border-radius:10px;display:flex;align-items:center;gap:8px;padding:0 11px;flex:1;min-width:230px;color:#8ca09b}.search-field input{border:0;outline:0;width:100%;font-size:11px;background:transparent}.filter-button{background:#fff;border:1px solid var(--line);border-radius:9px;padding:10px 12px;color:#647672;font-size:10px;display:inline-flex;gap:8px;align-items:center}.filter-button span{color:#9aa8a4;font:9px 'DM Mono',monospace}.filter-button.active{border-color:var(--teal);color:var(--teal);background:#eff9f6}.more-filter{margin-left:auto}.table-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:15px;margin-top:4px;font:10px 'DM Mono',monospace;color:#9aa6a3}.pagination{display:flex;align-items:center;gap:4px}.page-button{width:27px;height:27px;border:0;background:transparent;border-radius:7px;color:#879692;font:10px 'DM Mono',monospace}.page-button.active,.page-button:hover{background:var(--teal-soft);color:var(--teal);font-weight:700}.course-overview{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-bottom:17px}.mini-stat{background:#fff;border:1px solid var(--line);border-radius:15px;padding:17px 18px}.mini-stat span,.fee-summary-card>span{font-size:10px;color:#84928f}.mini-stat strong{font-size:26px;letter-spacing:-1px;display:block;margin:7px 0 3px}.mini-stat small,.fee-summary-card small{font:10px 'DM Mono',monospace;color:#9ca8a5}.mini-stat small b,.fee-summary-card small b{color:var(--teal);font-weight:500}.course-list{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.course-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;min-height:190px;position:relative;overflow:hidden}.course-card:after{content:'';width:100px;height:100px;position:absolute;right:-30px;bottom:-38px;border-radius:50%;border:18px solid rgba(15,118,110,.07)}.course-top{display:flex;justify-content:space-between;align-items:flex-start}.course-code{font:10px 'DM Mono',monospace;color:var(--teal)}.course-icon{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;font-family:Georgia,serif}.course-icon.teal{background:var(--teal-soft);color:var(--teal)}.course-icon.orange{background:var(--orange-soft);color:var(--orange)}.course-icon.violet{background:var(--violet-soft);color:var(--violet)}.course-card h3{font-size:15px;letter-spacing:-.5px;margin:17px 0 4px;max-width:215px}.course-instructor{font-size:10px;color:#84928f}.course-meta{display:flex;gap:12px;margin-top:18px;font:9px 'DM Mono',monospace;color:#8a9995}.course-meta span{display:flex;gap:5px}.course-progress{margin-top:17px;height:4px;background:#edf1ef;border-radius:5px}.course-progress i{display:block;height:100%;background:var(--teal);border-radius:5px}.attendance-controls{display:flex;align-items:end;gap:12px;background:#eef7f4;border:1px solid #dcece7;border-radius:16px;padding:16px;margin-bottom:17px;flex-wrap:wrap}.attendance-controls label{display:flex;flex-direction:column;gap:6px;color:#78908a;font:9px 'DM Mono',monospace;text-transform:uppercase}.attendance-controls select,.attendance-controls input{border:1px solid #d5e7e1;background:#fff;border-radius:8px;padding:10px;color:#435b56;font-size:11px;min-width:220px}.attendance-controls input{min-width:auto}.register-summary{margin-left:auto;display:flex;flex-direction:column;text-align:right}.register-summary strong{font-size:22px;letter-spacing:-1px;color:var(--teal)}.register-summary strong span{font-size:13px;color:#93aaa5}.register-summary small{font:9px 'DM Mono',monospace;color:#7e9790}.register-panel{padding:21px}.register-list{margin-top:13px}.register-row{display:flex;align-items:center;gap:12px;padding:11px 4px;border-top:1px solid #eff3f1}.register-row .student-cell{flex:1}.register-status{display:flex;gap:5px}.attendance-toggle{border:1px solid var(--line);background:#fff;border-radius:8px;padding:7px 10px;font:9px 'DM Mono',monospace;color:#8c9b97}.attendance-toggle.selected{background:var(--teal-soft);border-color:#c5e8df;color:var(--teal);font-weight:600}.attendance-toggle.absent.selected{background:var(--pink-soft);border-color:#f0d2dd;color:#b35578}.register-footer{border-top:1px solid var(--line);margin-top:10px;padding-top:15px;display:flex;justify-content:space-between;align-items:center;font:10px 'DM Mono',monospace;color:#9ba7a4}.fee-summary{display:grid;grid-template-columns:1.2fr 1.1fr .8fr;gap:13px;margin-bottom:17px}.fee-summary-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;min-height:162px;position:relative;overflow:hidden}.fee-summary-card.accent{background:#143d40;color:#ebfbf6;border-color:#143d40}.fee-summary-card.accent>span{color:#9bc6be}.fee-summary-card strong{display:block;font-size:27px;letter-spacing:-1.3px;margin:9px 0 4px}.fee-summary-card small{color:#9ca8a5}.accent small{color:#9bc6be}.fee-summary-card small b{color:#259b8d}.fee-summary-card small b.negative{color:#d48378}.mini-bars{height:37px;display:flex;align-items:end;gap:5px;position:absolute;bottom:18px;right:18px;width:77px}.mini-bars i{flex:1;background:#62bbb0;opacity:.75;border-radius:4px 4px 0 0}.segmented{display:flex;height:7px;background:#edf0ed;border-radius:8px;overflow:hidden;margin-top:23px}.segmented i:first-child{background:var(--teal)}.segmented i:nth-child(2){background:#f0bc7b}.segmented i:nth-child(3){background:#ce7890}.segment-labels{display:flex;justify-content:space-between;font:8px 'DM Mono',monospace;color:#a0aba8;margin-top:7px}.circular-progress{position:absolute;right:20px;bottom:19px;width:54px;height:54px;border-radius:50%;background:conic-gradient(var(--violet) 0 94.9%,#eeebf7 94.9%);display:grid;place-items:center}.circular-progress:after{content:'';position:absolute;inset:7px;background:#fff;border-radius:50%}.circular-progress span{z-index:1;font:9px 'DM Mono',monospace;color:#6858b5}.activity-layout{display:grid;grid-template-columns:1.4fr .6fr;gap:17px}.activity-full-panel{padding:21px}.activity-full .activity-row{padding:17px 2px}.activity-full .activity-symbol{width:35px;height:35px}.audit-card{padding:22px;height:max-content;background:#143d40;color:#eaf9f4;border-color:#143d40}.audit-card .eyebrow{color:#8ebbb3}.audit-card h2{font-size:19px;letter-spacing:-.8px;margin:0 0 8px}.audit-card>p{color:#9bc1ba;font-size:11px;line-height:1.7}.sync-line{border-top:1px solid rgba(225,249,243,.14);border-bottom:1px solid rgba(225,249,243,.14);padding:14px 0;margin:19px 0 7px;display:flex;justify-content:space-between;font-size:10px}.audit-list>div{display:flex;align-items:center;gap:9px;padding:11px 0;border-bottom:1px solid rgba(225,249,243,.1);font-size:10px;color:#a6c7c1}.audit-list>div b{margin-left:auto;color:#e1f6ef;font:9px 'DM Mono',monospace}.audit-icon{width:22px;height:22px;border-radius:7px;display:grid;place-items:center;font-size:11px;background:rgba(255,255,255,.08)}.audit-icon.teal{color:#86ded2}.audit-icon.orange{color:#f2bf7b}.audit-icon.violet{color:#baaef1}.modal{border:0;padding:0;background:transparent}.modal::backdrop{background:rgba(12,35,37,.45);backdrop-filter:blur(3px)}.modal-card{border:0;border-radius:20px;background:#fff;box-shadow:0 28px 80px rgba(7,42,42,.22);padding:28px;width:min(520px,calc(100vw - 30px));position:relative}.modal-close{position:absolute;right:14px;top:13px;border:0;background:#f2f5f3;border-radius:8px;width:27px;height:27px;font-size:18px;color:#71837f}.modal-kicker{font:10px 'DM Mono',monospace;color:var(--teal);text-transform:uppercase;letter-spacing:.12em}.modal-card h2{font-size:24px;letter-spacing:-1px;margin:8px 0 4px}.modal-copy{margin:0 0 22px;color:#889792;font-size:11px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.form-grid label{font:10px 'DM Mono',monospace;color:#7e908a;display:flex;flex-direction:column;gap:6px}.form-grid input,.form-grid select{border:1px solid var(--line);border-radius:9px;padding:10px;background:#fbfcfb;color:var(--ink);font:11px 'Plus Jakarta Sans',sans-serif}.full-field{grid-column:1/-1}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:23px}.toast{position:fixed;right:25px;bottom:25px;background:#143d40;color:#ecfaf6;padding:11px 14px;border-radius:11px;box-shadow:0 15px 35px rgba(16,55,54,.22);display:flex;align-items:center;gap:9px;font-size:11px;transform:translateY(30px);opacity:0;pointer-events:none;transition:.25s;z-index:20}.toast.show{transform:none;opacity:1}.toast-check{width:20px;height:20px;border-radius:7px;background:#68c2b5;color:#103d3a;display:grid;place-items:center;font-weight:800}.live-pulse{display:inline-block;width:6px;height:6px;border-radius:50%;background:#28a391;vertical-align:middle;margin-left:4px;box-shadow:0 0 0 3px rgba(40,163,145,.1)}
@media(max-width:1180px){.metric-grid{grid-template-columns:repeat(2,1fr)}.course-list{grid-template-columns:repeat(2,1fr)}.activity-layout{grid-template-columns:1fr}.fee-summary{grid-template-columns:1fr 1fr}.fee-summary-card:last-child{grid-column:1/-1}.circular-progress{right:25%}}
@media(max-width:820px){.sidebar{width:72px;padding:22px 10px}.brand-lockup{padding:0 9px 30px}.brand-lockup>div:last-child,.school-copy,.school-switcher .icon-button,.nav-label,.nav-item>span:not(.nav-icon),.sidebar-footer{display:none}.school-switcher{justify-content:center;border:0;background:transparent;margin-bottom:25px;padding:0}.nav-item{justify-content:center;padding:12px 0}.nav-count,.nav-dot{display:none}.topbar{padding:0 20px}.global-search{width:38px;padding:0 10px}.global-search input,.global-search kbd{display:none}.page-wrap{padding:28px 20px 50px}.welcome-row,.section-heading{align-items:flex-start;flex-direction:column}.hero-actions{width:100%}.hero-actions .button{flex:1}.two-up{grid-template-columns:1fr}.course-list{grid-template-columns:1fr}.fee-summary{grid-template-columns:1fr}.fee-summary-card:last-child{grid-column:auto}.circular-progress{right:20px}.attendance-body{gap:18px}}
@media(max-width:540px){.topbar{height:62px}.breadcrumbs{font-size:11px}.topbar-actions{gap:6px}.welcome-row h1,.section-heading h1{font-size:31px}.metric-grid{grid-template-columns:1fr}.attendance-body{flex-direction:column;align-items:flex-start}.attendance-legend{width:100%}.attendance-footer{flex-direction:column;gap:7px}.toolbar .filter-button{flex:1;justify-content:center}.more-filter{margin-left:0}.section-heading .button{width:100%}.form-grid{grid-template-columns:1fr}.full-field{grid-column:auto}.register-row{align-items:flex-start;flex-wrap:wrap}.register-status{width:100%;padding-left:41px}.register-footer{align-items:flex-start;gap:12px;flex-direction:column}.heading-count{display:inline-block;margin:7px 0 0}.toast{left:15px;right:15px;bottom:15px}}
