.site-sidebar{position:fixed;top:var(--header-h);left:0;width:var(--sidebar-w);height:calc(100vh - var(--header-h));background:var(--bg-card);border-right:1px solid var(--border);overflow-y:auto;overflow-x:hidden;z-index:var(--z-sidebar);transform:translateX(-100%);transition:transform var(--t-mid);padding:var(--sp-4)0 var(--sp-8);scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent;will-change:transform}.site-sidebar::-webkit-scrollbar{width:2px}.site-sidebar::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb)}.sidebar-open .site-sidebar{transform:translateX(0);box-shadow:6px 0 40px rgba(0,0,0,.6)}.sidebar-overlay{position:fixed;inset:0;background:rgba(0,0,0,.75);z-index:var(--z-overlay);opacity:0;pointer-events:none;transition:opacity var(--t-mid)}.sidebar-open .sidebar-overlay{opacity:1;pointer-events:all}.sidebar-heading{font-family:var(--font-heading);font-size:.6rem;letter-spacing:.2em;color:var(--text-muted);padding:0 var(--sp-4) 10px;text-transform:uppercase;border-bottom:1px solid var(--border);margin-bottom:6px}.sidebar-nav{list-style:none}.cat-icon,.sidebar-nav li a{display:flex;align-items:center}.sidebar-nav li a{gap:10px;padding:9px var(--sp-4);font-family:var(--font-ui);font-size:.82rem;font-weight:600;letter-spacing:.06em;color:var(--text-sub);text-transform:uppercase;transition:color var(--t-fast),background var(--t-fast),border-color var(--t-fast);border-left:2px solid transparent}.sidebar-nav li a.active,.sidebar-nav li a:hover{color:var(--text);background:var(--red-dim);border-left-color:var(--red)}.cat-icon{width:22px;height:22px;justify-content:center;background:var(--bg-elevated);border-radius:var(--radius-sm);font-size:.8rem;flex-shrink:0}.cat-icon-img{width:40px;height:40px;object-fit:contain;flex-shrink:0;filter:drop-shadow(0 0 4px rgba(255,255,255,.37))}@media (max-width:768px){.cat-icon-img{width:30px;height:30px;margin-right:8px}.sidebar-nav li a{display:flex;align-items:center;gap:8px;padding:10px 12px}}@media (min-width:1024px){.sidebar-open .sidebar-overlay{opacity:1;pointer-events:all}.sidebar-open .main-content{margin-left:0!important}}@media (max-width:1023px){:root{--sidebar-w:260px}.sidebar-open .sidebar-overlay{opacity:1;pointer-events:all}.sidebar-open .main-content{margin-left:0!important}.sidebar-nav li a{padding:11px var(--sp-4);font-size:.84rem}.cat-icon{width:24px;height:24px;font-size:.85rem}}