.site-rail{--rail-p:0;--rail-track:color-mix(in srgb,var(--color-foreground) 12%,transparent);--rail-ink:var(--color-primary);pointer-events:none}html[data-theme=dark] .site-rail{--rail-track:rgba(255,255,255,0.14)}.site-rail-bar{position:fixed;inset-inline:0;top:0;z-index:1100;height:2.5px;transform-origin:left;transform:scaleX(var(--rail-p));background:linear-gradient(to right,var(--color-primary),var(--color-secondary) 60%,var(--color-accent))}.site-rail-line{display:none;position:fixed;left:15px;top:5.5rem;bottom:2.5rem;z-index:1100;width:2px}.site-rail-fill,.site-rail-track{position:absolute;inset:0;border-radius:2px}.site-rail-track{background:var(--rail-track)}.site-rail-fill{background:linear-gradient(to bottom,var(--color-primary),var(--color-secondary));transform-origin:top;transform:scaleY(var(--rail-p))}.site-rail-bead{top:calc(var(--rail-p) * 100%);width:10px;height:10px;background:var(--rail-ink);box-shadow:0 0 0 4px color-mix(in srgb,var(--rail-ink) 22%,transparent),0 6px 14px -4px color-mix(in srgb,var(--rail-ink) 55%,transparent)}.site-rail-bead,.site-rail-tick{position:absolute;left:50%;translate:-50% -50%;border-radius:9999px}.site-rail-tick{top:calc(var(--at) * 100%);width:7px;height:7px;border:1.5px solid color-mix(in srgb,var(--color-foreground) 30%,transparent);background:var(--color-background);pointer-events:auto;cursor:pointer;transition:background-color .25s ease-out,border-color .25s ease-out,scale .25s ease-out}.site-rail-tick[data-on="1"]{background:var(--rail-ink);border-color:var(--rail-ink)}.site-rail-tick:hover{scale:1.35}.site-rail-label{position:absolute;left:16px;top:50%;translate:0 -50%;white-space:nowrap;font-family:var(--font-ui);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:lowercase;color:var(--color-foreground);padding:5px 9px;border-radius:999px;border:1px solid var(--color-border);background:color-mix(in srgb,var(--color-surface) 92%,transparent);box-shadow:0 8px 20px -10px rgba(10,16,24,.4);opacity:0;translate:-6px -50%;transition:opacity .22s ease-out,translate .22s ease-out;pointer-events:none}.site-rail-tick:hover .site-rail-label,.site-rail-tick[data-current="1"] .site-rail-label{opacity:1;translate:0 -50%}@media (max-width:1599.98px){.site-rail-tick[data-current="1"]:not(:hover) .site-rail-label{opacity:0;translate:-6px -50%}}@media (min-width:1024px){.site-rail-bar{display:none}.site-rail-line{display:block}}.rail-origin{display:flex;align-items:center;gap:10px;height:12px}.rail-origin-node{width:12px;height:12px;border-radius:9999px;background:var(--color-primary);box-shadow:0 0 0 5px color-mix(in srgb,var(--color-primary) 22%,transparent)}@keyframes rail-draw{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.rail-origin-line{width:72px;height:2px;border-radius:2px;background:linear-gradient(to right,var(--color-primary),color-mix(in srgb,var(--color-primary) 0%,transparent));transform-origin:left;animation:rail-draw .9s cubic-bezier(.2,.7,.3,1) .2s both}.rail-list{--rail-x:11px;--rail-pad:calc(var(--rail-x) * 2 + 14px);position:relative;padding-left:var(--rail-pad)}.rail-list:before{content:"";position:absolute;left:var(--rail-x);top:12px;bottom:12px;width:2px;border-radius:2px;background:color-mix(in srgb,var(--color-foreground) 12%,transparent)}.rail-dark .rail-list:before,html[data-theme=dark] .rail-list:before{background:rgba(255,255,255,.14)}.rail-fill{position:absolute;left:var(--rail-x);top:12px;bottom:12px;width:2px;border-radius:2px;background:linear-gradient(to bottom,var(--color-primary),var(--color-secondary));transform-origin:top;transform:scaleY(var(--rail-p,0))}.rail-node{position:absolute;left:calc(var(--rail-x) - 5px - var(--rail-pad));top:8px;width:12px;height:12px;border-radius:9999px;border:2px solid color-mix(in srgb,var(--color-foreground) 28%,transparent);background:var(--color-background);transition:background-color .3s ease-out,border-color .3s ease-out,box-shadow .3s ease-out}.rail-dark .rail-node{border-color:rgba(255,255,255,.3);background:var(--deep-3)}.rail-node[data-on="1"],[data-on="1"]>.rail-node{background:var(--color-primary);border-color:var(--color-primary);box-shadow:0 0 0 5px color-mix(in srgb,var(--color-primary) 22%,transparent)}