
.stsm{display:block;width:100%;height:auto;}
.stsm text{text-anchor:middle;}

.stsm-track{fill:none;stroke:var(--hairline-soft);stroke-width:15;stroke-linecap:round;}
.stsm-zone-action{fill:none;stroke:rgba(208,52,44,.10);stroke-width:15;}
.stsm-zone-retreat{fill:none;stroke:rgba(139,149,165,.10);stroke-width:15;}
.stsm-rim{fill:none;stroke:var(--text-faint);stroke-width:.9;}
.stsm-reach{fill:none;stroke:var(--red-border);stroke-width:15;}
.stsm-hash{stroke:var(--text-faint);stroke-width:1;}
.stsm-ext{stroke:var(--text-muted);stroke-width:1.4;}
.stsm-wash{fill:none;stroke:var(--meter-live-band);stroke-width:15;}
.stsm-wash.closest{stroke:rgba(139,149,165,.20);}

.stsm-gate-post{stroke:var(--red);stroke-width:3.2;stroke-linecap:round;}
.stsm-medal{fill:var(--toggle-on);stroke:#fff;stroke-width:2.5;}
.stsm-medal-check{fill:#fff;font-family:var(--font-data);font-size:7.5px;font-weight:800;}
.stsm-gate-lbl{fill:var(--red);font-family:var(--font-data);font-size:8.5px;font-weight:700;font-variant-numeric:tabular-nums;}
.stsm-gate-lbl.fired{fill:var(--toggle-on);}

.stsm-crown-locked{fill:var(--text-primary);stroke:#fff;stroke-width:2.5;}
.stsm-crown-current{fill:#fff;stroke:var(--text-primary);stroke-width:2.8;}
.stsm-crown-notional{fill:#fff;stroke:var(--text-faint);stroke-width:1.8;stroke-dasharray:3 2.2;}
.stsm-pg-lbl{fill:var(--text-primary);font-family:var(--font-data);font-size:9px;font-weight:700;font-variant-numeric:tabular-nums;}
.stsm-pg-odds{fill:var(--text-muted);font-weight:400;}

.stsm-needle{fill:var(--meter-live);}
.stsm-needle-pre{fill:var(--text-faint);}
.stsm-needle-closest{fill:#8b95a5;}
.stsm-ghost{stroke:var(--meter-live);stroke-width:1.5;stroke-dasharray:4 3;opacity:.55;}
.stsm-hub{fill:var(--text-primary);stroke:#fff;stroke-width:2.2;}

.stsm-hero-eyebrow{fill:var(--text-faint);font-family:var(--font-data);font-size:7.5px;font-weight:600;letter-spacing:1px;text-transform:uppercase;}
.stsm-hero-val{fill:var(--meter-live);font-family:var(--font-display);font-size:17px;font-weight:600;font-variant-numeric:tabular-nums;}
.stsm-hero-val.closest{fill:#8b95a5;}
.stsm-hero-odds{fill:var(--text-muted);font-size:11px;font-weight:400;}
.stsm-pre-val{fill:var(--text-secondary);font-family:var(--font-data);font-size:15px;font-weight:600;font-variant-numeric:tabular-nums;}

.stsm-pulse{animation:stsm-pulse 1.8s ease-in-out infinite;}
@keyframes stsm-pulse{0%,100%{opacity:1;}50%{opacity:.35;}}
@media (prefers-reduced-motion:reduce){.stsm-pulse{animation:none;}}
