.rail-shell{display:grid;grid-template-columns:230px minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);height:100vh;min-height:0;background:var(--canvas)}.rail-shell .rail{grid-row:1/3;grid-column:1;display:flex;flex-direction:column;width:230px;border-right:1px solid var(--line);background:var(--paper);padding:16px 12px;gap:2px;overflow-y:auto}.rail-shell .appbar{grid-row:1;grid-column:2;position:-webkit-sticky;position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:18px;height:58px;padding:0 22px;background:var(--paper);border-bottom:1px solid var(--line)}.rail-shell .appbar .right{margin-left:auto;display:flex;align-items:center;gap:10px}.rail-shell .shell{grid-row:2;grid-column:2;display:flex;min-height:0}.rail-shell .scroll{flex:1 1;overflow-y:auto;min-height:0}.rail .rgroup{font-size:10.5px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);padding:14px 12px 6px}.railitem{display:flex;align-items:center;gap:11px;padding:9px 12px;border-radius:10px;border:none;background:none;font-family:inherit;font-size:13.5px;font-weight:500;color:var(--ink-soft);cursor:pointer;text-align:left;width:100%;transition:.13s;text-decoration:none}.railitem svg{width:18px;height:18px;flex:none}.railitem:hover{background:var(--canvas);color:var(--ink)}.railitem.active{background:var(--accent-tint,rgba(0,191,243,.12));color:var(--brand-ink);font-weight:600}.railitem .rbadge{margin-left:auto;font-size:11px;font-weight:700;background:var(--accent,#00bff3);color:#03222b;border-radius:99px;padding:1px 8px}.railitem.active .rbadge{background:var(--brand-ink);color:#fff}.railitem .rspin{margin-left:auto;flex:none;width:13px;height:13px;border-radius:50%;border:2px solid var(--line-2,rgba(11,14,17,.16));border-top-color:var(--accent,#00bff3);animation:rspin .6s linear infinite}.railitem.active .rspin{border-top-color:var(--brand-ink)}@keyframes rspin{to{transform:rotate(1turn)}}@media(prefers-reduced-motion:reduce){.railitem .rspin{animation-duration:2s}}@media(max-width:820px){.rail-shell{grid-template-columns:1fr;grid-template-rows:auto auto minmax(0,1fr);height:auto;min-height:100vh}.rail-shell .rail{grid-row:1;grid-column:1;flex-direction:row;width:auto;overflow-x:auto;border-right:none;border-bottom:1px solid var(--line);gap:4px;padding:10px}.rail-shell .rail .rgroup{display:none}.rail-shell .appbar{grid-row:2;grid-column:1}.rail-shell .shell{grid-row:3;grid-column:1}.railitem{white-space:nowrap;width:auto}.railitem .rbadge{margin-left:8px}}