.app-shell{--side-panel-width:248px;min-height:100vh}.app-shell--collapsed,html[data-side-panel-collapsed="1"] .app-shell{--side-panel-width:50px}.side-panel{z-index:20;width:var(--side-panel-width);border-right:1px solid var(--line);background:var(--paper);flex-direction:column;padding:18px 12px;display:flex;position:fixed;inset:0 auto 0 0}.app-shell--ready .side-panel{transition:width .18s}.side-panel__header{justify-content:space-between;align-items:center;gap:8px;min-height:42px;margin-bottom:12px;display:flex}.side-panel__header-expanded{flex:1;justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.side-panel__brand{min-width:0;padding:4px 8px 0}.side-panel__close,.side-panel__brand-toggle{width:36px;height:36px;color:var(--muted);background:0 0;border:0;border-radius:11px;flex-shrink:0;place-items:center;padding:0;display:grid}.side-panel__close:hover,.side-panel__brand-toggle:hover{background:var(--canvas);color:var(--ink)}.side-panel__brand-toggle{width:100%;height:44px;display:none;position:relative}.side-panel__logo,.side-panel__expand-icon{grid-area:1/1;transition:opacity .14s,transform .14s}.side-panel__expand-icon{opacity:0;place-items:center;display:grid;transform:scale(.92)}.side-panel__brand-toggle:hover .side-panel__logo,.side-panel__brand-toggle:focus-visible .side-panel__logo{opacity:0;transform:scale(.92)}.side-panel__brand-toggle:hover .side-panel__expand-icon,.side-panel__brand-toggle:focus-visible .side-panel__expand-icon{opacity:1;transform:scale(1)}.nav-group{gap:5px;margin-bottom:22px;display:grid}.nav-label{color:#96949a;letter-spacing:.1em;text-transform:uppercase;padding:8px 11px;font-size:.68rem;font-weight:700}.nav-link{color:#55545a;border-radius:11px;align-items:center;gap:11px;min-height:42px;padding:11px;font-size:.92rem;font-weight:550;display:flex;position:relative}.nav-link:hover{background:var(--canvas);color:var(--ink)}.nav-link__icon{flex-shrink:0;place-items:center;width:18px;height:18px;display:grid}.nav-link__label{white-space:nowrap}.side-footer{margin-top:auto}.app-content{min-height:100vh;margin-left:var(--side-panel-width)}.app-shell--ready .app-content{transition:margin-left .18s}.mobile-bar{display:none}.side-panel--collapsed,html[data-side-panel-collapsed="1"] .side-panel{align-items:stretch;padding:14px 5px}.side-panel--collapsed .side-panel__header,html[data-side-panel-collapsed="1"] .side-panel__header{justify-content:center;margin-bottom:18px}.side-panel--collapsed .side-panel__brand-toggle,html[data-side-panel-collapsed="1"] .side-panel__brand-toggle{display:grid}.side-panel--collapsed .side-panel__header-expanded,html[data-side-panel-collapsed="1"] .side-panel__header-expanded{display:none}.side-panel--collapsed .nav-group,html[data-side-panel-collapsed="1"] .side-panel .nav-group{margin-bottom:10px}.side-panel--collapsed .nav-label,html[data-side-panel-collapsed="1"] .side-panel .nav-label{display:none}.side-panel--collapsed .nav-link,html[data-side-panel-collapsed="1"] .side-panel .nav-link{justify-content:center;gap:0;padding:11px 0}.side-panel--collapsed .nav-link__label,html[data-side-panel-collapsed="1"] .side-panel .nav-link__label{z-index:30;border:1px solid var(--line);background:var(--paper);box-shadow:var(--shadow);color:var(--ink);opacity:0;pointer-events:none;border-radius:10px;padding:8px 12px;font-size:.82rem;font-weight:600;transition:opacity .14s;position:absolute;top:50%;left:calc(100% + 10px);transform:translateY(-50%)}.side-panel--collapsed .nav-link:hover .nav-link__label,.side-panel--collapsed .nav-link:focus-visible .nav-link__label,html[data-side-panel-collapsed="1"] .side-panel .nav-link:hover .nav-link__label,html[data-side-panel-collapsed="1"] .side-panel .nav-link:focus-visible .nav-link__label{opacity:1}@media (max-width:920px){.side-panel{display:none}.app-content{margin:0 0 64px}.mobile-bar{z-index:30;border:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:var(--shadow);background:#fffefcf0;border-radius:18px;justify-content:space-around;padding:9px;display:flex;position:fixed;inset:auto 10px 10px}.mobile-bar a{min-width:64px;color:var(--muted);justify-items:center;gap:3px;font-size:.65rem;display:grid}}
