.sidebar{background:var(--surface-1,#18181b);width:272px;border-right:1px solid var(--border,#27272a);padding:var(--sp-6) var(--sp-4);gap:var(--sp-5);z-index:200;transition:width .26s cubic-bezier(.16,1,.3,1);flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:0;overflow:hidden}
.sidebar-glow{pointer-events:none;filter:blur(40px);width:320px;height:320px;background:radial-gradient(circle,rgba(37,99,235,.12) 0%,transparent 70%);border-radius:50%;position:absolute;top:-120px;left:-120px}
.sidebar-brand{align-items:center;gap:var(--sp-3);padding:0 var(--sp-2);display:flex}
.sidebar-logo{border-radius:var(--r-lg);background:linear-gradient(135deg,var(--primary,#2563eb),#3b82f6);color:#fff;width:42px;height:42px;transition:transform .15s cubic-bezier(.34,1.56,.64,1),box-shadow .15s;flex-shrink:0;justify-content:center;align-items:center;display:flex;position:relative;box-shadow:0 8px 20px rgba(37,99,235,.3),inset 0 1px rgba(255,255,255,.15)}
.sidebar-logo-ping{border-radius:calc(var(--r-lg) + 3px);border:1.5px solid rgba(37,99,235,.3);animation:3s ease-in-out infinite pulseRing;position:absolute;inset:-3px}
@keyframes pulseRing{0%,100%{opacity:.6}50%{opacity:0}}
.sidebar-brand-text{flex-direction:column;line-height:1.1;display:flex}
.sidebar-brand-name{font-family:var(--font-title);color:var(--txt-primary,#fff);letter-spacing:-.03em;font-size:1.25rem;font-weight:800}
.sidebar-brand-sub{font-family:var(--font-title);letter-spacing:.08em;text-transform:uppercase;opacity:.8;font-size:.75rem;font-weight:800;color:var(--txt-muted,#71717a)}
.sidebar-nav{flex-direction:column;flex:1;gap:4px;display:flex;overflow-y:auto;margin:0 calc(var(--sp-4)*-1);padding:var(--sp-4) var(--sp-4) 0}
.sidebar-footer{padding-top:var(--sp-4);border-top:1px solid var(--border,#27272a);flex-direction:column;gap:8px;display:flex;margin-top:auto}
.nav-btn{align-items:center;gap:var(--sp-3);padding:var(--sp-3);color:var(--txt-secondary,#a1a1aa);border-radius:var(--r-xl);cursor:pointer;transition:all .12s;text-align:left;width:100%;background:0 0;border:none;display:flex;position:relative;font-weight:600;font-size:.82rem;text-decoration:none}
.nav-btn:hover{background:var(--surface-2,#1f1f23);color:var(--txt-primary,#fff)}
.nav-btn--active{background:var(--primary-subtle,#1e3a5f);color:var(--primary,#2563eb)}
.nav-active-bar{background:var(--primary,#2563eb);width:4px;box-shadow:2px 0 8px rgba(37,99,235,.4);border-radius:0 4px 4px 0;position:absolute;top:25%;bottom:25%;left:0}
.nav-icon-wrap{border-radius:var(--r-md);width:36px;height:36px;background:var(--surface-2,#1f1f23);flex-shrink:0;justify-content:center;align-items:center;display:flex}
.nav-icon-wrap svg{width:16px;height:16px}
.nav-btn--active .nav-icon-wrap{background:var(--primary,#2563eb);color:#fff;box-shadow:0 4px 12px rgba(37,99,235,.35)}
.nav-label{flex:1;font-size:.85rem;font-weight:600}
@media(max-width:768px){
  .sidebar{width:64px;padding:var(--sp-4) var(--sp-2)}
  .sidebar-brand-text,.nav-label,.sidebar-footer .nav-label{display:none}
  .sidebar-brand{padding:0;justify-content:center}
  .sidebar-nav{gap:4px;margin:0 calc(var(--sp-2)*-1);padding:var(--sp-2)}
  .nav-btn{padding:var(--sp-2);justify-content:center}
  .nav-icon-wrap{width:30px;height:30px}
  .nav-icon-wrap svg{width:14px;height:14px}
}
