:root{color-scheme:dark;--site-accent: #ff343d;--font-display: "Archivo Black", Impact, sans-serif;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#07080a;color:#f7f8fa;font-synthesis:none;text-rendering:geometricPrecision;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html,body,#root{width:100%;min-width:320px;height:100%;margin:0}button{display:inline-flex;min-height:1.9rem;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:#0a0c108f;color:#ffffffeb;cursor:pointer;font:inherit;font-size:.76rem;font-weight:650;line-height:1;padding:.58rem .74rem}button:hover,button:focus-visible{border-color:#ffffff70;background:#ffffff1a;outline:none}button:disabled,input:disabled{cursor:default}.app-shell{width:100%;height:100%;overflow:hidden;background:#07080a}.visual-stage{position:relative;width:100%;height:100%;min-height:100svh;overflow:hidden}.train-canvas{display:block;width:100%;height:100%;min-height:100svh;cursor:grab;image-rendering:pixelated;touch-action:none;-webkit-user-select:none;user-select:none}.chrome-reveal-zone{position:absolute;z-index:3;top:0;right:0;left:0;height:4.75rem;background:#0000}.top-rail{position:absolute;z-index:4;top:.82rem;right:.82rem;left:.82rem;display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;opacity:0;pointer-events:none;transform:translateY(-.35rem);transition:opacity .16s ease,transform .16s ease}.chrome-reveal-zone:hover~.top-rail,.top-rail:hover,.top-rail:focus-within,.visual-stage:focus-within .top-rail{opacity:1;pointer-events:auto;transform:translateY(0)}.top-rail h1{margin:0;color:#ffffffeb;font-size:.98rem;font-weight:760;letter-spacing:0;line-height:1}.top-rail p{margin:.16rem 0 0;color:#ffffff8c;font-size:.72rem;font-weight:520}.rail-title{display:grid;justify-items:start;gap:0;min-width:0}.site-home-link{color:#ffffffeb;font-family:var(--font-display);font-size:clamp(1.08rem,2vw,1.45rem);letter-spacing:.02em;line-height:1;text-decoration:none;text-transform:uppercase;white-space:nowrap}.site-home-link:hover,.site-home-link:focus-visible{color:var(--site-accent);outline:none}.tracker-summary{min-width:0}.rail-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:.4rem;pointer-events:auto}.status-pill{display:inline-flex;min-height:1.9rem;align-items:center;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:#0a0c108f;color:#ffffffd9;font-size:.72rem;font-weight:650;padding:0 .72rem}.status-pill:before{width:.42rem;height:.42rem;margin-right:.42rem;border-radius:999px;background:#00a65a;content:""}.status-stale:before{background:#f9461c}.status-sample:before,.status-cached:before{background:#f9e300}.settings-panel{position:absolute;z-index:7;top:0;bottom:0;right:0;width:min(22rem,88vw);border-left:1px solid rgba(255,255,255,.14);background:#080a0de6;box-shadow:-18px 0 48px #0000005c;color:#ffffffe6;opacity:0;padding:max(1.05rem,env(safe-area-inset-top)) 1rem max(1rem,env(safe-area-inset-bottom));pointer-events:none;transform:translate(100%);transition:opacity .18s ease,transform .22s ease}.settings-panel.is-open{opacity:1;pointer-events:auto;transform:translate(0)}.settings-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.1rem}.settings-head h2{margin:0;color:#ffffffeb;font-size:1rem;font-weight:760;letter-spacing:0}.settings-close{display:grid;width:2rem;height:2rem;place-items:center;padding:0}.settings-stack{display:grid;gap:.85rem}.mode-toggle-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.42rem}.toggle-chip{min-width:0;border-color:#ffffff24;border-radius:8px;background:#ffffff09;color:#ffffff9e;overflow:hidden;padding:.6rem .42rem;text-overflow:ellipsis;white-space:nowrap}.toggle-chip.is-on{border-color:#ffffff75;background:#ffffff24;color:#fffffff2}.slider-row{color:#ffffffd1;font-size:.84rem;font-weight:620;display:grid;grid-template-columns:1fr;gap:.55rem}.slider-row input{width:100%;accent-color:#f7f8fa}.color-controls{margin:1.05rem 0 0;border:0;padding:0}.color-controls legend{margin-bottom:.72rem;color:#ffffff80;font-size:.68rem;font-weight:750;text-transform:uppercase}.color-mode-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.42rem}.mono-color-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:.7rem;max-height:0;margin-top:0;overflow:hidden;padding-top:0;padding-bottom:0;color:#ffffff75;font-size:.78rem;font-weight:700;opacity:0;pointer-events:none;transform:translateY(-.35rem);visibility:hidden;transition:max-height .24s ease,margin-top .24s ease,padding-top .24s ease,padding-bottom .24s ease,opacity .18s ease,transform .24s ease,visibility 0s linear .24s}.mono-color-row.is-active{max-height:3rem;margin-top:.72rem;padding-top:.02rem;padding-bottom:.02rem;color:#ffffffd1;opacity:1;pointer-events:auto;transform:translateY(0);visibility:visible;transition:max-height .28s ease,margin-top .28s ease,padding-top .28s ease,padding-bottom .28s ease,opacity .2s ease .04s,transform .28s ease,visibility 0s}.mono-color-row input{width:2.25rem;height:2rem;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:#ffffff09;cursor:pointer;padding:.18rem}.mono-color-row input:disabled{cursor:default;opacity:.34}.line-filter{margin:1.25rem 0 0;border:0;padding:0}.line-filter legend{margin-bottom:.72rem;color:#ffffff80;font-size:.68rem;font-weight:750;text-transform:uppercase}.line-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.58rem .72rem}.line-toggle{display:flex;align-items:center;gap:.48rem;min-width:0;justify-content:flex-start;border-color:#ffffff1f;border-radius:8px;background:#ffffff06;color:#ffffff80;font-size:.8rem;font-weight:620;padding:.54rem .58rem}.line-toggle.is-on{border-color:var(--line-color);background:color-mix(in srgb,var(--line-color) 18%,rgba(10,12,16,.72));color:#ffffffeb}.line-toggle span{width:.68rem;height:.68rem;border:1px solid var(--line-color);background:#ffffff0a;flex:0 0 auto}.line-toggle.is-on span{background:var(--line-color)}.system-note{position:absolute;z-index:5;bottom:1rem;left:1rem;max-width:min(26rem,calc(100% - 2rem));border:1px solid rgba(255,255,255,.16);border-radius:8px;background:#0a0c10c7;color:#ffffffdb;font-size:.84rem;line-height:1.35;opacity:0;padding:.75rem .85rem;pointer-events:none;transform:translateY(.35rem);transition:opacity .16s ease,transform .16s ease}.chrome-reveal-zone:hover~.system-note,.top-rail:hover~.system-note,.visual-stage:focus-within .system-note{opacity:1;pointer-events:auto;transform:translateY(0)}@media(max-width:720px){.top-rail{top:.68rem;right:.68rem;left:.68rem;gap:.5rem}.top-rail h1{font-size:.92rem}.top-rail p{max-width:9rem;font-size:.68rem}.rail-actions{max-width:12.5rem;gap:.32rem}.rail-actions button{padding:.54rem .62rem}.status-pill{min-height:1.78rem;padding:0 .6rem}.system-note{right:.7rem;bottom:4.2rem;left:.7rem}}.visual-stage.is-paused .train-canvas{filter:grayscale(1);opacity:.34;transition:filter .24s ease,opacity .24s ease}.status-paused:before{background:#8a8f98}.pause-banner{position:absolute;z-index:6;top:max(.72rem,env(safe-area-inset-top));left:50%;display:flex;width:min(38rem,calc(100% - 1.4rem));align-items:center;justify-content:center;gap:.72rem;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:#0a0c10e8;box-shadow:0 18px 48px #0000005c;color:#ffffffe8;font-size:.84rem;font-weight:650;line-height:1.25;padding:.68rem .76rem;transform:translate(-50%)}.pause-banner span{min-width:0;overflow-wrap:anywhere}.pause-banner button{flex:0 0 auto;background:#ffffff17}@media(max-width:720px){.pause-banner{top:max(.58rem,env(safe-area-inset-top));align-items:stretch;gap:.5rem;font-size:.76rem;padding:.56rem}.pause-banner button{min-height:1.74rem;padding:.48rem .58rem}}
