:root{color:#18283f;background:#f2f6fa;font-family:system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline-offset:3px;outline:3px solid #15a4a0}.skip{z-index:10;background:#fff;padding:.7rem;position:absolute;top:-6rem;left:1rem}.skip:focus{top:.5rem}.root-layout{grid-template-columns:256px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{color:#fff;background:#142540;flex-direction:column;gap:1.8rem;padding:1.6rem 1rem;display:flex}.brand{align-items:center;gap:.85rem;display:flex}.brand-mark{background:#0b9f9a;border-radius:12px;place-items:center;width:44px;height:44px;font-size:1.3rem;font-weight:900;display:grid}.brand small,.brand strong{display:block}.brand small{color:#bcd1e3;margin-top:.15rem;font-size:.75rem}.nav-label{letter-spacing:.16em;color:#bed3df;text-transform:uppercase;font-size:.66rem}.sidebar nav{gap:.5rem;display:grid}.sidebar button{text-align:left;color:#cfe0ea;background:0 0;border:1px solid #0000;border-radius:10px;padding:.88rem 1rem}.sidebar button.active,.sidebar button:hover{color:#fff;background:#254661}.sidebar button.active{border-color:#52758e;font-weight:700}.sidebar-foot{color:#c6d4e0;border-top:1px solid #38516a;margin-top:auto;padding-top:1rem;font-size:.8rem}.sidebar-foot p{line-height:1.6}.topbar{background:#fff;border-bottom:1px solid #e3eaf1;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 2rem;font-size:.83rem;display:flex}.topbar span{color:#60778a}.mode{background:#e5f6f0;border-radius:99px;padding:.5rem .75rem;font-size:.69rem;font-weight:750;color:#176660!important}.main{max-width:1260px;margin:auto;padding:2.3rem clamp(1rem,3vw,2.8rem)}.eyebrow{color:#087b7b;letter-spacing:.15em;font-size:.7rem;font-weight:800}h1{margin:.4rem 0;font-size:clamp(1.8rem,3vw,2.5rem)}.intro{color:#5d7588;max-width:70ch;line-height:1.65}.notice{color:#664915;background:#fffbf2;border:1px solid #d8e6eb;border-left:4px solid #c98e29;border-radius:12px;margin:1.4rem 0;padding:1rem 1.2rem}.notice p{margin:.4rem 0;font-size:.82rem;line-height:1.6}.notice.subtle{color:#49687c;background:#f1f7fa;border-left-color:#168a88}.stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:1.2rem 0;display:grid}.panel,.stats article{background:#fff;border:1px solid #e0e9f1;border-radius:16px;padding:1.4rem;box-shadow:0 4px 22px #12344b08}.stats article{gap:.7rem;display:grid}.stats strong{font-size:1.7rem}.stats small,.stats span{color:#60778c;font-size:.76rem}.panel{margin-top:1.2rem}.panel h2{margin:.1rem 0 .65rem;font-size:1.15rem}.panel>p{color:#5a7286;font-size:.9rem;line-height:1.7}.gates{margin-top:1.2rem;display:grid}.gate{border-top:1px solid #e9eff4;align-items:center;gap:1rem;padding:1rem 0;display:flex}.gate>div{flex:1}.gate small,.gate strong{display:block}.gate strong{font-size:.9rem}.gate small{color:#6b8293;margin-top:.4rem;font-size:.77rem;line-height:1.5}.dot{background:#b18b38;border-radius:50%;flex-shrink:0;width:11px;height:11px}.dot.blocked{background:#cb6f48}.dot.ready{background:#268b81}.pill{color:#8a4929;white-space:nowrap;background:#f4e8df;border-radius:8px;padding:.4rem .65rem;font-size:.72rem;font-weight:700}.pill.pending{color:#826725;background:#f6f0df}.pill.ready{color:#176e66;background:#e1f4ef}.school-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.school-grid article{border:1px solid #e2eaf1;border-radius:12px;padding:1rem}.school-grid h3{margin:0 0 1rem}.school-grid dt{color:#647a8f;font-size:.7rem}.school-grid dd{overflow-wrap:anywhere;margin:.2rem 0 .85rem;font-size:.82rem;font-weight:700}.steps{color:#4d6578;padding-left:1.5rem;line-height:2.3}footer{text-align:center;color:#8194a5;margin:2rem 0;font-size:.74rem}@media (width<=850px){.root-layout{grid-template-columns:1fr}.sidebar{gap:.7rem}.sidebar nav{flex-wrap:wrap;display:flex}.nav-label,.sidebar-foot{display:none}.school-grid,.stats{grid-template-columns:1fr}.main{padding:1.5rem}.topbar{padding:1rem}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}.selector{flex-wrap:wrap;gap:.7rem;margin-top:1rem;display:flex}.selector button{color:#2b5069;background:#f5f9fb;border:1px solid #cbdce7;border-radius:10px;padding:.75rem 1rem}.selector button.selected,.selector button:hover{color:#116860;background:#e3f4f0;border-color:#15978f}.panel dl{overflow-wrap:anywhere}@media (width<=520px){.selector{grid-template-columns:1fr;display:grid}.selector button{text-align:left}}
