:root{color:#172321;font-synthesis:none;text-rendering:optimizelegibility;background:#f3f6f5;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{min-width:320px;min-height:100%}body{min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:default}svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:100%;height:100%}.app-shell{grid-template-columns:260px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{color:#eaf4f1;background:radial-gradient(circle at 20% 0,#33978940,#0000 35%),linear-gradient(#103f3a 0%,#092c29 100%);flex-direction:column;height:100vh;padding:30px 22px 24px;display:flex;position:sticky;top:0}.brand{border-bottom:1px solid #ffffff1a;align-items:center;gap:12px;padding:0 8px 28px;display:flex}.brand-mark{color:#103f3a;background:#d9f28d;border-radius:13px;flex:0 0 42px;place-items:center;width:42px;height:42px;font-size:22px;font-weight:850;display:grid;box-shadow:0 8px 20px #00000029}.brand strong,.brand span{display:block}.brand strong{letter-spacing:.01em;font-size:18px}.brand span{color:#a9c7c1;letter-spacing:.12em;text-transform:uppercase;margin-top:2px;font-size:12px}.navigation{margin-top:30px}.navigation__label{color:#82aaa3;letter-spacing:.14em;text-transform:uppercase;margin:0 12px 10px;font-size:11px;font-weight:700}.navigation__item{color:#bcd2ce;border-radius:10px;align-items:center;gap:12px;min-height:46px;padding:0 12px;font-size:14px;font-weight:650;text-decoration:none;display:flex}.navigation__item+.navigation__item{margin-top:6px}.navigation__item--active{color:#fff;background:#ffffff1a;box-shadow:inset 3px 0 #d9f28d}.navigation__item--disabled{opacity:.62}.navigation__icon{width:19px;height:19px}.soon{color:#d9f28d;letter-spacing:.08em;text-transform:uppercase;background:#d9f28d1a;border-radius:999px;margin-left:auto;padding:3px 7px;font-size:9px}.sidebar__school{background:#ffffff12;border:1px solid #ffffff17;border-radius:12px;align-items:center;gap:11px;margin-top:auto;padding:14px;display:flex}.sidebar__school-icon{color:#d9f28d;background:#d9f28d1a;border-radius:9px;width:31px;height:31px;padding:6px}.sidebar__school small,.sidebar__school strong{display:block}.sidebar__school small{color:#90b3ad;letter-spacing:.08em;text-transform:uppercase;margin-bottom:3px;font-size:10px}.sidebar__school strong{text-overflow:ellipsis;white-space:nowrap;max-width:155px;font-size:12px;overflow:hidden}.main-content{min-width:0;padding:32px clamp(28px,5vw,72px) 24px}.topbar{border-bottom:1px solid #dae3e1;justify-content:space-between;align-items:center;gap:24px;padding-bottom:26px;display:flex}.eyebrow{color:#4d7972;letter-spacing:.13em;text-transform:uppercase;margin:0 0 7px;font-size:11px;font-weight:750}h1,h2,h3,p{overflow-wrap:anywhere}h1{color:#142725;letter-spacing:-.035em;margin:0;font-size:clamp(24px,3vw,34px);line-height:1.15}h2{color:#142725;letter-spacing:-.025em;margin:0;font-size:23px}.user-menu{align-items:center;gap:11px;display:flex}.avatar{color:#f1fff9;letter-spacing:.04em;background:#28796e;border-radius:50%;place-items:center;width:40px;height:40px;font-size:12px;font-weight:800;display:grid}.user-menu__identity strong,.user-menu__identity span{display:block}.user-menu__identity strong{color:#1b312e;font-size:13px}.user-menu__identity span{color:#6f8581;margin-top:3px;font-size:11px}.button{border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;min-height:40px;padding:0 16px;font-size:12px;font-weight:750;transition:all .15s;display:inline-flex}.button--primary{color:#fff;background:#17695f}.button--primary:hover{background:#0e554d}.button--quiet{color:#536d68;background:0 0;border-color:#d6e0de}.button--quiet:hover,.button--secondary:hover{color:#145b53;background:#f2faf7;border-color:#7fb1a9}.button--secondary{color:#245f57;background:#fff;border-color:#c8d9d5;width:100%}.button--selected{color:#57726d;background:#eef4f2;border-color:#e0e9e7;width:100%}.stats-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:28px;display:grid}.stat-card{background:#fff;border:1px solid #dce5e3;border-radius:14px;min-height:132px;padding:21px;box-shadow:0 8px 30px #12332e0a}.stat-card p,.stat-card strong,.stat-card span{display:block}.stat-card p{color:#69817d;letter-spacing:.08em;text-transform:uppercase;margin:0 0 12px;font-size:11px;font-weight:700}.stat-card strong{color:#18302d;min-height:30px;font-size:20px;line-height:1.2}.stat-card span{color:#849692;margin-top:10px;font-size:11px;line-height:1.4}.stat-card--success{border-top:3px solid #58a995}.stat-card--success strong:before{content:"";background:#3dad89;border-radius:50%;width:8px;height:8px;margin:0 9px 2px 0;display:inline-block;box-shadow:0 0 0 5px #3dad891f}.section-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin:38px 0 18px;display:flex}.section-heading>div>p:last-child{color:#6a807c;max-width:670px;margin:8px 0 0;font-size:13px;line-height:1.55}.security-badge{color:#3c7169;white-space:nowrap;background:#e9f5f1;border:1px solid #cfe7e0;border-radius:999px;align-items:center;gap:7px;padding:7px 10px;font-size:10px;font-weight:700;display:inline-flex}.security-badge svg{width:14px;height:14px}.school-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px;display:grid}.school-card{background:#fff;border:1px solid #dce5e3;border-radius:14px;padding:22px;transition:transform .15s,border-color .15s;box-shadow:0 8px 30px #12332e0a}.school-card:hover{border-color:#b4d1cb;transform:translateY(-2px)}.school-card--selected{border-color:#4e9f91;box-shadow:0 10px 32px #1f70631a}.school-card__topline{justify-content:space-between;align-items:center;display:flex}.school-card__icon{color:#21766b;background:#eaf6f2;border-radius:11px;width:40px;height:40px;padding:9px}.selected-badge{color:#1c6d62;letter-spacing:.07em;text-transform:uppercase;background:#e8f5f1;border-radius:999px;padding:5px 8px;font-size:9px;font-weight:800}.school-card__code{color:#6c8984;letter-spacing:.12em;text-transform:uppercase;margin:20px 0 5px;font-size:10px;font-weight:750}.school-card h3{color:#17322e;min-height:27px;margin:0;font-size:18px;line-height:1.4}.role-list{flex-wrap:wrap;align-content:flex-start;gap:6px;min-height:60px;padding:14px 0 17px;display:flex}.role-list span{color:#596f6b;background:#f1f5f4;border-radius:6px;align-self:flex-start;padding:5px 8px;font-size:10px;font-weight:650}.empty-state,.error-panel,.loading-state{text-align:center;background:#fff;border:1px dashed #c9d8d5;border-radius:14px;justify-content:center;align-items:center;min-height:230px;padding:32px;display:flex}.empty-state{flex-direction:column}.empty-state__icon{color:#4d8d83;background:#edf7f4;border-radius:15px;width:52px;height:52px;padding:12px}.empty-state h3{margin:15px 0 6px}.empty-state p,.loading-state p,.error-panel p{color:#718681;margin:0;font-size:13px}.loading-state{text-align:left;gap:14px}.loading-state strong{margin-bottom:5px;display:block}.spinner{border:3px solid #d7e6e2;border-top-color:#267b70;border-radius:50%;width:28px;height:28px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.error-panel{text-align:left;border-style:solid;border-color:#ead2ce;justify-content:space-between;gap:20px;margin-top:28px}.error-panel h2{margin-bottom:7px}.workspace-footer{color:#849792;letter-spacing:.03em;border-top:1px solid #dce5e3;justify-content:space-between;gap:16px;margin-top:42px;padding-top:18px;font-size:10px;display:flex}.auth-failure{background:#edf3f1;place-items:center;min-height:100vh;padding:24px;display:grid}.auth-failure__card{background:#fff;border:1px solid #d9e4e1;border-radius:18px;width:min(100%,440px);padding:38px;box-shadow:0 22px 60px #0d38321f}.auth-failure__card .brand-mark{margin-bottom:24px}.auth-failure__card h1{font-size:28px}.auth-failure__card p:not(.eyebrow){color:#667d79;margin:12px 0 24px;line-height:1.6}@media (max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{height:auto;padding:18px 22px;position:static}.brand{padding-bottom:16px}.navigation,.sidebar__school{display:none}.stats-grid{grid-template-columns:1fr}}@media (max-width:680px){.main-content{padding:24px 18px}.topbar,.section-heading,.workspace-footer{flex-direction:column;align-items:flex-start}.user-menu{width:100%}.user-menu .button{margin-left:auto}.user-menu__identity{display:none}.security-badge{white-space:normal}}
