/* One navigation geometry across the generation and Agent workspaces. */
body:has(.workspace-rail) { --rail: 184px; }
body .rail.workspace-rail { display:flex; flex-direction:column; position:fixed; inset:0 auto 0 0; width:var(--rail); height:100dvh; padding:25px 12px 16px; z-index:60; background:var(--bg); border-right:1px solid var(--border); }
body.dark .rail.workspace-rail { background:linear-gradient(165deg,#202329,#14171b 48%,#121518); }
body:not(.dark) .rail.workspace-rail { background:var(--bg); }
body .rail.workspace-rail .brand-mark { width:100%; margin:0; padding-left:9px; height:43px; flex-shrink:0; }
body .rail.workspace-rail .rail-wordmark { display:block; }
body .rail.workspace-rail .brand-mark, body .rail.workspace-rail .rail-wordmark { color:var(--text); }
body .rail.workspace-rail nav { display:flex; flex-direction:column; flex:1; width:100%; min-height:0; overflow-y:auto; scrollbar-width:thin; margin:30px 0 16px; gap:7px; }
body .rail.workspace-rail .rail-item { display:flex; flex-direction:row; align-items:center; justify-content:flex-start; flex-shrink:0; gap:12px; width:100%; height:44px; padding:0 14px; border:0; border-radius:6px; font-size:13px; color:var(--muted); text-decoration:none; }
body .rail.workspace-rail .rail-item span { display:inline; white-space:nowrap; }
body .rail.workspace-rail .rail-item svg { width:19px; height:19px; flex-shrink:0; }
body .rail.workspace-rail .rail-item.active { border-left:0; background:var(--accent-soft); color:var(--accent); }
body.dark .rail.workspace-rail .rail-item.active { background:linear-gradient(110deg,#3a3e57,#292f40); color:#d6dfff; }
body .rail.workspace-rail .rail-bottom { display:flex; flex-direction:column; flex-shrink:0; width:100%; gap:4px; margin:0; }
body .rail.workspace-rail .rail-divider { display:block; min-height:1px; margin:8px 12px; background:var(--border); }
body .rail.workspace-rail ~ .app-shell { margin-left:var(--rail); }
@media (max-width:1280px) and (min-width:901px) { body:has(.workspace-rail) { --rail:164px; } body .rail.workspace-rail .rail-item { padding:0 12px; gap:10px; } }
@media (min-width:641px) and (max-width:900px) {
  body:has(.workspace-rail) { --rail:72px; }
  body .rail.workspace-rail { padding:20px 9px 12px; }
  body .rail.workspace-rail .rail-wordmark, body .rail.workspace-rail .rail-item span { display:none; }
  body .rail.workspace-rail .brand-mark { padding:0; justify-content:center; }
  body .rail.workspace-rail .rail-item { padding:0; justify-content:center; }
}
@media (max-width:640px) {
  body:has(.workspace-rail) { --rail:0px; }
  body .rail.workspace-rail { inset:auto 0 0; width:100%; height:calc(66px + env(safe-area-inset-bottom)); padding:4px 6px max(4px,env(safe-area-inset-bottom)); flex-direction:row; overflow-x:auto; scrollbar-width:none; border-right:0; border-top:1px solid var(--border); }
  body .rail.workspace-rail::-webkit-scrollbar { display:none; }
  body .rail.workspace-rail .brand-mark, body .rail.workspace-rail .rail-divider { display:none; }
  body .rail.workspace-rail nav, body .rail.workspace-rail .rail-bottom { display:flex; flex-direction:row; flex:0 0 auto; width:auto; min-height:0; gap:3px; margin:0; overflow:visible; }
  body .rail.workspace-rail .rail-item { flex:0 0 68px; width:68px; height:54px; padding:6px 2px; flex-direction:column; justify-content:center; gap:5px; font-size:10px; }
  body .rail.workspace-rail .rail-item span { display:inline; }
  body .rail.workspace-rail .rail-item.active:before { display:none; }
  body .rail.workspace-rail ~ .app-shell { margin-left:0; padding-bottom:calc(76px + env(safe-area-inset-bottom)); }
}
@media print { body .rail.workspace-rail { display:none !important; } }
