.brand-copy{opacity:0;transform:translateX(-7px);transition:var(--fast) var(--ease);white-space:nowrap}
.rail.expanded .brand-copy,.rail:hover .brand-copy{opacity:1;transform:none}
.brand-name{font-size:12px;font-weight:900;letter-spacing:.07em}
.brand-sub{font-size:9px;color:var(--text-faint);margin-top:3px;text-transform:uppercase;letter-spacing:.12em}
.rail-nav{display:grid;gap:7px;min-width:218px}
.nav-btn{
  height:48px;border-radius:15px;border:1px solid transparent;background:transparent;color:var(--text-faint);
  display:flex;align-items:center;gap:13px;padding:0 13px;position:relative;transition:var(--fast) var(--ease)
}
.nav-btn:hover{background:var(--panel-soft);color:var(--text);transform:translateX(2px)}
.nav-btn.active{background:var(--panel-soft);border-color:var(--line);color:var(--text);box-shadow:0 12px 30px rgba(0,0,0,.08)}
.nav-btn.active::before{content:"";position:absolute;left:-13px;width:3px;height:24px;border-radius:999px;background:var(--accent);box-shadow:0 0 18px var(--glow)}
.nav-btn svg{width:20px;height:20px;flex:0 0 20px}
.nav-copy{opacity:0;transform:translateX(-7px);transition:var(--fast) var(--ease);white-space:nowrap;font-size:11px;font-weight:800}
.rail.expanded .nav-copy,.rail:hover .nav-copy{opacity:1;transform:none}
.nav-count{margin-left:auto;opacity:0;transition:var(--fast) var(--ease);font-size:9px;font-weight:900;color:var(--accent);background:rgba(249,64,6,.12);padding:5px 7px;border-radius:999px}
.rail.expanded .nav-count,.rail:hover .nav-count{opacity:1}
.rail-bottom{margin-top:auto;display:grid;gap:8px;min-width:218px}
