.app-shell{grid-template-columns:260px minmax(0,1fr)}
.sidebar{height:100vh;height:100dvh;min-height:0;align-self:start;padding:18px 12px;gap:0;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start}
.sidebar-brand{flex-shrink:0;padding:4px 8px;margin:0 0 16px;gap:10px}
.sidebar-brand img{width:46px;height:46px;flex-shrink:0}
.sidebar-brand strong{font-size:16px;letter-spacing:-.3px}
.sidebar-brand small{font-size:9px;letter-spacing:1.3px}
.sidebar nav{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#58719a transparent;display:block;flex-wrap:nowrap;margin:0;padding:0 4px 14px 0}
.sidebar nav::-webkit-scrollbar{width:5px}
.sidebar nav::-webkit-scrollbar-thumb{background:#58719a;border-radius:8px}
.sidebar-label{display:block;font-size:9px;letter-spacing:1.5px;margin:22px 12px 8px;padding:0}
.sidebar-label:first-child{margin-top:4px}
.sidebar-link{display:flex;align-items:center;gap:11px;min-height:42px;margin:3px 0;padding:10px 12px;font-size:12px;line-height:1.45;border-radius:9px;white-space:normal;background:transparent;border:1px solid transparent;color:#d4e0f3}
.sidebar-link svg{width:19px;height:19px;flex:0 0 19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;color:#89b8db}
.sidebar-link-label{flex:1;min-width:0}
.sidebar-link:hover{color:#fff;background:#ffffff0e}
.sidebar-link[aria-current=page]{background:linear-gradient(100deg,#2563eb4d,#0891b233);border-color:#7dd3fc44;color:#fff;box-shadow:inset 3px 0 #67e8f9}
.sidebar-link[aria-current=page] svg{color:#67e8f9}
.sidebar-link:focus-visible,.sidebar-toggle:focus-visible,.sidebar-close:focus-visible{outline:2px solid #67e8f9;outline-offset:2px}
.sidebar-bottom{display:block;flex-shrink:0;margin-top:10px;padding:14px 10px 0}
.sidebar-bottom strong{font-size:11px}.sidebar-bottom p{margin:6px 0 0;font-size:10px;line-height:1.5}
.sidebar-toggle,.sidebar-close,.sidebar-backdrop{display:none}
.topbar-title{flex:1;min-width:0}
body.navigation-open{overflow:hidden}
@media(max-width:900px){
 .app-shell{display:block}
 .sidebar{position:static;max-height:65vh;width:100%;height:auto;padding:16px;display:flex}
 .sidebar nav{max-height:45vh}
 .sidebar-bottom{display:none}
 .navigation-ready .sidebar{position:fixed;inset:0 auto 0 0;width:min(290px,calc(100vw - 48px));height:100vh;height:100dvh;max-height:none;z-index:60;transform:translateX(-105%);visibility:hidden;transition:transform .18s ease,visibility .18s;box-shadow:12px 0 35px #02061733}
 .navigation-ready .sidebar nav{max-height:none}
 .navigation-ready.navigation-open .sidebar{transform:translateX(0);visibility:visible}
 .navigation-ready .sidebar-brand{padding-right:30px;margin-bottom:20px}
 .navigation-ready .sidebar-brand strong{font-size:14px}
 .navigation-ready .sidebar-brand small{font-size:8px}
 .navigation-ready .sidebar-close{display:grid;place-items:center;position:absolute;right:10px;top:18px;width:32px;height:32px;border:1px solid #ffffff33;border-radius:8px;color:white;background:#ffffff0c;font-size:24px;line-height:1;cursor:pointer}
 .navigation-ready .sidebar-toggle{display:inline-flex;align-items:center;justify-content:center;gap:6px;flex-shrink:0;background:#f1f6fc;color:#123a82;border:1px solid #d4dfef;border-radius:9px;padding:9px;font-size:12px;font-weight:650;cursor:pointer}
 .sidebar-toggle svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
 .sidebar-backdrop:not([hidden]){display:block;position:fixed;inset:0;border:0;border-radius:0;background:#02061799;z-index:55;padding:0;cursor:pointer}
 .topbar{gap:12px;padding:0 18px}
 .topbar-actions{gap:7px}
 .account-email{display:none}
}
@media(max-width:420px){.sidebar-toggle span{display:none}.topbar-title{font-size:11px}.environment{font-size:8px;padding:5px 6px}.topbar{gap:9px;padding:0 12px}}
@media(prefers-reduced-motion:reduce){.navigation-ready .sidebar{transition:none}}
@media print{.app-shell{display:block}.sidebar,.sidebar-toggle,.sidebar-close,.sidebar-backdrop{display:none!important}}

