.st-stage { display: grid; gap: 16px; justify-items: center; padding: 18px 8px; border-radius: var(--r-lg); }
#st-display { cursor: pointer; user-select: none; }
.st-running #st-display { color: var(--accent-ink); }
#st-current { min-height: 1.4em; margin: -6px 0 0; font-variant-numeric: tabular-nums; font-weight: 600; color: var(--muted); }
.st-controls { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; }
.st-controls .btn { min-width: 110px; }
.st-stage:fullscreen { background: var(--bg); align-content: center; padding: 30px; }
.st-stage:fullscreen #st-display { font-size: min(20vw, 34vh); }
.st-stage:-webkit-full-screen { background: var(--bg); align-content: center; }
.st-best td { color: var(--ok); font-weight: 700; }
.st-worst td { color: var(--err); font-weight: 700; }
.st-tag { margin-left: 6px; vertical-align: middle; }
.st-best .st-tag { background: var(--ok-soft); color: var(--ok); }
.st-worst .st-tag { background: var(--err-soft); color: var(--err); }
.st-keys { display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; color: var(--muted); font-size: 0.85rem; }
@media (hover: none) and (pointer: coarse) { .st-keys { display: none; } }
