.app{display:grid;grid-template-columns:var(--sidebar-w) 1fr;min-height:100vh;}
.sidebar{background:var(--panel);display:flex;flex-direction:column;padding:1.5rem 0;}
.sidebar-logo{display:flex;align-items:center;gap:8px;padding:0 1.25rem 1.5rem;border-bottom:0.5px solid var(--side-hairline);}
.sidebar-logo img{width:var(--logo-size-sidebar);height:var(--logo-size-sidebar);object-fit:contain;}
.sidebar-logo-text{font-family:var(--font-display);font-size:16px;font-weight:700;letter-spacing:0.08em;font-variant:small-caps;color:var(--side-text);}
.sidebar-logo-text span{color:var(--red);}
.nav-section{padding:1.25rem 1rem 0.5rem;font-family:var(--font-label);font-size:9px;color:var(--side-eyebrow);letter-spacing:0.1em;text-transform:uppercase;}
.nav-item{display:flex;align-items:center;gap:10px;padding:0.6rem 1.25rem;font-size:13px;color:var(--text-muted);cursor:pointer;border-left:2px solid transparent;text-decoration:none;}
@media(hover:hover){.nav-item:hover{color:var(--side-text);background:var(--side-hover);}}
.nav-item.active{color:var(--side-text);border-left-color:var(--red);background:var(--side-hover);}
.nav-icon{width:14px;height:14px;opacity:0.6;flex-shrink:0;}
.nav-item.active .nav-icon{opacity:1;}
.sidebar-bottom{margin-top:auto;padding:1rem 1.25rem;border-top:0.5px solid var(--side-hairline);}
.user-pill{display:flex;align-items:center;gap:8px;}
.logout-link{display:flex;align-items:center;gap:8px;width:100%;background:none;font-family:var(--font-body);margin-top:0.85rem;padding:0;padding-top:0.85rem;border:none;border-top:0.5px solid var(--side-divider);color:var(--side-muted);font-size:12px;cursor:pointer;text-decoration:none;}
.logout-link svg{width:14px;height:14px;flex:none;}
@media(hover:hover){.logout-link:hover{color:var(--side-logout-hover);}}
.user-avatar{width:28px;height:28px;border-radius:50%;background:var(--red);color:#fff;font-family:var(--font-display);font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.user-name{font-size:12px;color:var(--side-text);font-weight:500;}
.user-plan{font-family:var(--font-label);font-size:9px;color:var(--side-muted);letter-spacing:0.05em;text-transform:uppercase;}
.sidebar-logo:focus-visible,.nav-item:focus-visible,.logout-link:focus-visible{
  outline:2px solid var(--side-text);outline-offset:-2px;}
.page-title .red{color:var(--red);}

@media(max-width:768px){.app{grid-template-columns:1fr;}.sidebar{display:none;}}
