/* The page keeps its full width; navigation floats above it on every screen. */
html{scrollbar-gutter:stable}html.navigation-is-open{overflow:hidden}
.shell>.main{margin-left:0}
.topbar .mobile-menu{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;min-height:42px;padding:10px;flex:none;border-radius:50%;border:1px solid #ffffffd9;background:linear-gradient(145deg,#ffffffb3,#e5edf44d);box-shadow:inset 0 1px 1px #fff,0 3px 10px #233c5410;color:#455d78;transition:background .2s,transform .2s}
.topbar .mobile-menu:hover{background:#ffffffd9;transform:scale(1.04)}
.topbar .mobile-menu:active{transform:scale(.94)}
.shell>.sidebar,.client-mode .shell>.sidebar{display:flex;position:fixed;inset:12px auto 12px 12px;width:min(300px,calc(100vw - 28px));height:calc(100dvh - 24px);padding:24px 16px 16px;z-index:181;border-radius:28px;border:1px solid #ffffffdf;background:radial-gradient(ellipse at 0% 0%,#ffffffad,transparent 65%),linear-gradient(135deg,#f8fbffb5,#e9f0faa8);box-shadow:inset 1px 1px 1px #fff,inset -1px -1px 1px #a7bbd263,0 24px 70px #20364f29,0 4px 14px #263d5912;backdrop-filter:blur(26px) saturate(1.65);-webkit-backdrop-filter:blur(26px) saturate(1.65);transform:translateX(calc(-100% - 28px)) scale(.97);transform-origin:left center;opacity:0;visibility:hidden;pointer-events:none;transition:transform .38s cubic-bezier(.2,.8,.2,1),opacity .24s ease,visibility 0s .38s;overflow:hidden;isolation:isolate}
.shell>.sidebar.open{transform:translateX(0) scale(1);opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}
.shell>.sidebar::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;pointer-events:none;box-shadow:inset 2px 0 3px #ffffffab,inset -2px 0 4px #ffffff80;background:linear-gradient(120deg,#ffffff24,transparent 22%,transparent 80%,#ffffff40)}
.sidebar .mobile-nav-close{display:grid;place-items:center;position:absolute;top:15px;right:13px;width:36px;height:36px;min-height:36px;margin:0;padding:8px;border:1px solid #ffffffbd;border-radius:50%;background:#ffffff59;color:#50627a;box-shadow:inset 0 1px #fff}
.sidebar .mobile-nav-close .icon{width:17px;height:17px}
.shell>.sidebar .brand{padding:0 8px;margin:0 38px 20px 0;min-height:38px}
.shell>.sidebar .sidebar-navigation{min-height:0;flex:1;overflow-y:auto;overscroll-behavior:contain}
.shell>.sidebar .nav{min-height:42px}.shell>.sidebar .nav-section+.nav-section{margin-top:17px}
.shell>.mobile-nav-backdrop{display:block;position:fixed;inset:0;border:0;padding:0;z-index:180;background:#273f5b12;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s ease,visibility 0s .38s}
.shell:has(>.sidebar.open)>.mobile-nav-backdrop{display:block;opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}
@supports (backdrop-filter:url("#workroom-glass-lens")) and (not (-webkit-touch-callout:none)){.shell>.sidebar,.client-mode .shell>.sidebar{backdrop-filter:url("#workroom-glass-lens") blur(18px) saturate(1.65)}}
@media(max-width:760px){.shell>.sidebar,.client-mode .shell>.sidebar{inset:9px auto 9px 9px;height:calc(100dvh - 18px);padding-top:max(24px,env(safe-area-inset-top));padding-bottom:max(16px,env(safe-area-inset-bottom))}.shell>.sidebar .nav{min-height:46px}.topbar .mobile-menu{width:38px;height:38px;min-height:38px;padding:9px}}
@media(max-height:750px){.shell>.sidebar .brand{margin-bottom:12px}.shell>.sidebar .nav-section+.nav-section{margin-top:12px}}
@media(prefers-reduced-motion:reduce){.shell>.sidebar,.shell>.mobile-nav-backdrop,.topbar .mobile-menu{transition:none;transform:none}.shell>.sidebar:not(.open){transform:translateX(-110%)}}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){.shell>.sidebar,.client-mode .shell>.sidebar{background:#f3f6fc!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.shell>.sidebar::before{display:none}}

/* Solid full-panel navigation. */
.shell>.sidebar,.client-mode .shell>.sidebar{background:#f5f7fb!important;border-color:#dce2eb;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;box-shadow:0 24px 80px #172b4533,0 2px 8px #172b4514}
.shell>.sidebar::before{display:none}
.shell>.sidebar .workspace-pill{background:#e9edf5;color:#556378;border-color:#dce3ed}
.shell>.sidebar .mobile-nav-close{background:#e8edf4;border-color:#dbe2ec;color:#45516a;box-shadow:none}
.shell>.sidebar .nav,.client-mode .shell>.sidebar .nav{color:#455169;border:1px solid transparent;box-shadow:none;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.shell>.sidebar .nav:hover{background:#e9eef6;color:#243653}
.shell>.sidebar .nav.active,.client-mode .shell>.sidebar .nav.active{background:#e0eafb;border-color:#ccdcf4;color:#215eb9;box-shadow:none}
.sidebar .navigation-icon{width:20px;height:20px;flex-shrink:0}
.shell>.mobile-nav-backdrop{background:#18283d33}

/* Explicit, reachable controls in both desktop and mobile headers. */
.topbar .mobile-menu{width:auto;height:44px;min-height:44px;padding:0 13px;gap:8px;border-radius:14px;background:#f5f7fb;border-color:#dce2eb;color:#35465e;font-size:13px;font-weight:600;white-space:nowrap}
.topbar .mobile-menu .icon{width:19px;height:19px;flex:none}
.topbar .mobile-menu:hover{background:#e9eef6;transform:none}
.shell>.sidebar .sidebar-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:20px;flex:none}
.shell>.sidebar .brand{margin:0;padding:0;min-width:0;gap:8px}
.shell>.sidebar .brandmark,.shell>.sidebar .brandmark img{width:34px;height:34px;min-width:34px}
.shell>.sidebar .brandword strong{font-size:16px;letter-spacing:-.6px}
.shell>.sidebar .brandword small{font-size:8px}
.shell>.sidebar .mobile-nav-close{position:static;display:inline-flex;align-items:center;justify-content:center;gap:5px;width:auto;height:44px;min-height:44px;padding:0 9px;flex:none;border-radius:13px;font-size:11px;font-weight:600;white-space:nowrap}
.shell>.sidebar .mobile-nav-close:hover{background:#dce5f0;color:#233958}
.topbar .mobile-menu:focus-visible,.sidebar .mobile-nav-close:focus-visible{outline:2px solid #3478ce;outline-offset:3px}
@media(max-width:760px){.topbar .breadcrumbs{min-width:0}.topbar .breadcrumbs>strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar .mobile-menu{padding-inline:10px;gap:6px}}
@media(max-height:750px){.shell>.sidebar .sidebar-header{margin-bottom:12px}}
