/* EDUM visual identity. Presentation only; existing data and role boundaries remain intact. */
:root{--edum-navy:#10283f;--edum-green:#07866b;--edum-ink:#12233c;--edum-line:#e3e9ef}
@media screen{
html.minimal body{background:#f8fafb;color:var(--edum-ink);font-family:Inter,"Avenir Next","Segoe UI",Arial,sans-serif}
html.minimal body>aside{width:260px;background:linear-gradient(160deg,#10283f,#0d2135);color:#fff;padding:28px 16px;border:0;z-index:10}
html.minimal body>aside h2.afrik-wordmark{text-align:left;font-size:36px;font-weight:750;letter-spacing:.06em;color:#fff;margin:0 14px 0}
.edum-brand-subtitle{color:#e1e9f1;font-size:13px;margin:0 14px 32px;white-space:nowrap}
html.minimal nav button{display:flex;align-items:center;gap:13px;color:#e4edf5;background:transparent;border:0;font-size:14px;padding:13px 12px;line-height:1.45;min-height:48px;border-radius:8px;margin:5px 0}
html.minimal nav button:hover{background:#ffffff12;color:white}
html.minimal nav button.on{background:var(--edum-green);color:white;font-weight:600}
html.minimal nav .general-report-button{border-top:1px solid #ffffff20;border-radius:8px;color:#e4edf5;background:transparent;margin-top:15px;padding:14px 12px}
.edum-icon{width:22px;height:22px;flex:0 0 22px;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
html.minimal aside .bottom{border-color:#ffffff25;color:#afc0d0;padding:16px 12px;margin-top:24px}
html.minimal main{margin-left:260px;padding:30px 32px;max-width:none;min-height:100vh}
html.minimal main>header{background:transparent;border:0;border-radius:0;box-shadow:none;padding:0 0 18px;margin:0;border-bottom:1px solid var(--edum-line)}
html.minimal h1{font-size:32px;font-weight:700;letter-spacing:-.03em;color:#10243e}
html.minimal h3{color:#132b44;font-weight:650}
html.minimal header .sub{color:#76859a;letter-spacing:.04em;font-size:12px;margin-bottom:8px}
html.minimal button{background:var(--edum-green);color:#fff;border-radius:8px;font-weight:550;transition:background .15s}
html.minimal button:hover{filter:brightness(.96)}
html.minimal button.secondary{background:#f0f4f7;color:#304862;border:1px solid #e1e8ef}
html.minimal :is(input,select,textarea){border-color:#dce4ec;border-radius:8px;background:#fff;color:#243b52;min-height:42px}
html.minimal :is(button,summary,input,select,textarea):focus-visible{outline:3px solid #53bba8;outline-offset:3px}
html.minimal .panel{background:#fff;border:1px solid var(--edum-line);border-radius:10px;box-shadow:0 3px 14px #142f4810;padding:22px}
html.minimal .stats{background:transparent;border:0;border-radius:0;overflow:visible;gap:16px;margin:24px 0}
html.minimal .stat,html.minimal .stat:nth-child(2){position:relative;background:#fff;border:1px solid var(--edum-line);border-radius:9px;padding:20px 18px 20px 72px;box-shadow:0 2px 8px #142f4806}
html.minimal .stat strong{font-size:30px;font-weight:700;margin-top:6px;color:#10243e}
html.minimal .stat .sub{font-size:13px;color:#63768c}
.edum-stat-icon{position:absolute;left:16px;top:24px;display:grid;place-items:center;width:42px;height:46px;background:#eaf6f2;border-radius:8px;color:#08775f}
html.minimal .notice{border:1px solid #deebe6;border-left:3px solid var(--edum-green);background:#f1f8f5;color:#48685e}
html.minimal .session-bar{justify-content:flex-end;font-size:13px;margin:12px 0}
html.minimal .session-bar button{background:#fff;color:#52677b;border:1px solid var(--edum-line);text-decoration:none;padding:7px 12px}
html.minimal .filters,html.minimal body.managed-filters .filters{background:#fff;border:1px solid var(--edum-line);border-radius:10px;padding:16px;gap:12px}
html.minimal th{background:#f5f7fa;color:#53677d;font-size:13px;padding:15px 12px}
html.minimal td{padding:16px 12px;border-color:#edf1f5}
html.minimal tbody tr:hover{background:#f7fbf9}
html.minimal .pill{border-radius:20px;background:#e5f6e9;color:#257139;padding:5px 11px}
html.minimal .pill.red{background:#ffeded;color:#a62c36}html.minimal .pill.amber{background:#fff3d7;color:#8a6414}html.minimal .pill.muted{background:#edf1f6;color:#66758a}
html.minimal .roster-view-tabs{gap:5px;border:0}
html.minimal .roster-view-tabs button{background:#f1f4f8;color:#52677b;padding:12px 18px;border-radius:7px}
html.minimal .roster-view-tabs button[aria-pressed=true]{background:var(--edum-green);color:#fff}
html.minimal .minimal-actions>summary{border-color:#dce5ec;color:#34516a}
html.minimal dialog{border-radius:14px;border:1px solid var(--edum-line);box-shadow:0 24px 80px #10283f30}
html.minimal dialog::backdrop{background:#10283f70}
.edum-footer{font-size:12px;color:#8593a5;margin:32px 0 0}
.edum-quick-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.edum-quick-actions h3{flex-basis:100%;margin-bottom:3px}
.edum-quick-actions button{display:flex;align-items:center;gap:10px}
html.minimal #loginGate{min-height:100dvh;padding:40px 24px;background:#f6f8fa}
.edum-login-shell{display:grid;grid-template-columns:1fr 1.05fr;max-width:1050px;width:100%;min-height:550px;border:1px solid #dfe5ec;border-radius:18px;overflow:hidden;box-shadow:0 20px 65px #10283f16}
.edum-login-brand{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(140deg,#132e49,#091e32);color:#fff;padding:64px}
.edum-login-brand:after{content:"";position:absolute;width:640px;height:640px;border:80px solid #ffffff04;border-radius:50%;left:-250px;top:-140px;pointer-events:none}
.edum-login-wordmark{font-size:64px;font-weight:750;letter-spacing:.08em;line-height:1.2}
.edum-login-brand p{font-size:17px;letter-spacing:.08em;margin:2px 0 34px;white-space:nowrap}
.edum-brand-line{width:60px;height:4px;border-radius:4px;background:#09a786}
html.minimal #loginGate .login-card{max-width:none;border:0;border-radius:0;padding:60px 48px;box-shadow:none;background:#fff}
html.minimal #loginGate .login-card h1{font-size:36px;margin:0 0 10px;letter-spacing:-.025em}
html.minimal .login-card>p{color:#718095;font-size:14px;margin:0 0 28px}
.login-card label{font-size:14px;color:#263b50;margin-top:20px}
html.minimal .login-card input{height:48px;width:100%}
html.minimal .login-card #loginButton{width:100%;min-height:48px}
html.minimal .login-card>button.secondary{font-size:12px;background:transparent;border:0;color:#708097;padding:4px;margin:16px auto}
.edum-login-footer{text-align:center;border-top:1px solid var(--edum-line);padding-top:20px;margin-top:32px;color:#8290a2;font-size:11px}
@media(min-width:1450px){.edum-overview .edum-home-grid{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:20px;align-items:start}.edum-home-grid>.roster-panel{min-width:0}.edum-home-grid>.edum-quick-actions{display:flex;flex-direction:column;align-items:stretch}.edum-home-grid>.edum-quick-actions h3{flex-basis:auto}}
@media(max-width:1100px) and (min-width:801px){html.minimal .stats{grid-template-columns:repeat(2,minmax(0,1fr))}html.minimal main{padding:24px}}
@media(max-width:800px){html.minimal body>aside{position:static;width:100%;height:auto;padding:20px 16px}html.minimal body>aside h2.afrik-wordmark{font-size:30px;margin-left:4px}.edum-brand-subtitle{margin:0 4px 20px}html.minimal nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}html.minimal nav button{margin:0;padding:11px 10px;font-size:13px;gap:10px;min-width:0}html.minimal main{margin:0;padding:20px 16px;width:100%}html.minimal h1{font-size:27px}html.minimal .stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}html.minimal .stat{padding:15px 12px 15px 54px}.edum-stat-icon{width:32px;height:38px;left:12px;top:17px}html.minimal .stat strong{font-size:26px}html.minimal .panel{padding:16px}.edum-login-shell{grid-template-columns:1fr;max-width:480px;min-height:0}.edum-login-brand{padding:32px}.edum-login-wordmark{font-size:42px}.edum-login-brand p{font-size:13px;margin-bottom:18px}html.minimal #loginGate .login-card{padding:32px 26px}html.minimal #loginGate .login-card h1{font-size:29px}html.minimal #loginGate{padding:20px 14px}.edum-quick-actions button{width:100%}}
@media(max-width:360px){html.minimal nav,html.minimal .stats{grid-template-columns:1fr}}
}
@media print{.edum-quick-actions,.edum-footer{display:none}}
