.mobile-menu-button,.mobile-menu-close{display:none}
.mobile-menu-backdrop{position:fixed;inset:0;z-index:90;border:0;background:#102d2580}
@media screen and (max-width:760px){
 .mobile-menu-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:44px;min-height:42px;padding:8px 10px;border:1px solid #d7e0d7;border-radius:6px;background:white;color:#125a4d;font-size:12px;flex-shrink:0}
 .topbar{gap:7px;padding:0 10px}.topbar .mobile-brand{font-size:11px}.topbar>.secondary{font-size:10px;padding:7px 8px}
 .sidebar{display:flex!important;z-index:100;width:290px;max-width:calc(100vw - 36px);height:100vh;height:100dvh;overflow-y:auto;overscroll-behavior:contain;padding:28px 22px 22px;visibility:hidden;transform:translateX(105%);pointer-events:none;transition:transform .2s ease,visibility .2s}
 .mobile-menu-open .sidebar{visibility:visible;transform:translateX(0);pointer-events:auto}
 .mobile-menu-open{overflow:hidden}
 .mobile-menu-close{display:flex;align-items:center;justify-content:center;position:absolute;left:8px;top:5px;min-width:40px;min-height:40px;background:transparent;color:#d6e8dc;font-size:25px}
 .sidebar .brand{font-size:18px;padding-left:8px;flex-shrink:0}.sidebar nav,.sidebar .school-summary,.sidebar .sidebar-bottom{flex-shrink:0}
 .sidebar .nav-label{margin-top:28px}.sidebar .school-summary{margin-top:24px}.sidebar .sidebar-bottom{padding-top:28px}
}
@media(prefers-reduced-motion:reduce){.sidebar{transition:none}}
@media print{.mobile-menu-button,.mobile-menu-close,.mobile-menu-backdrop{display:none!important}}
