:root{
  --st-ink:#0a0a0a;
  --st-ink-2:#141414;
  --st-paper:#f4f1ea;
  --st-paper-dim:#cfc8b8;
  --st-bone:#a8a194;
  --st-accent:#b85c2c;
  --st-accent-2:#5fae6e;
  --st-line: rgba(244,241,234,.18);
  --st-glyphs:"ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789§/+#";
  --st-mono-font: 'Space Mono', monospace;
  --st-tick-fast: 40ms;
  --st-tick-mid: 90ms;
  --st-hold-short: 300ms;
}
.stillroom-theme, [data-st-theme="stillroom"]{
  --st-ink:#0a0a0a; --st-ink-2:#141414;
  --st-paper:#f4f1ea; --st-paper-dim:#cfc8b8; --st-bone:#a8a194;
  --st-accent:#b85c2c; --st-accent-2:#5fae6e;
  --st-line: rgba(244,241,234,.18);
  --st-mono-font: var(--f-mono, 'Space Mono', monospace);
}
[data-st]:not([data-st="off"]){ position:relative; }
[data-st] .st-a11y{
  position:absolute !important; width:1px; height:1px; overflow:hidden;
  clip:rect(0 0 0 0); clip-path:inset(50%); white-space:nowrap; border:0; padding:0; margin:-1px;
}
[data-st][data-st-applied] {  }
.st-chars{ display:inline-flex !important; flex-wrap:wrap; max-width:100%; }
.st-char{ display:inline-block; white-space:pre; font-variant-numeric:tabular-nums; }
.st-reel{ display:inline-block; overflow:hidden; height:1em; vertical-align:-0.08em; line-height:1; }
.st-reel .st-reel-strip{ display:block; will-change:transform; }
.st-reel .st-reel-strip span{ display:block; height:1em; line-height:1; }
.st-cell{ color:var(--st-bone); white-space:pre; display:inline-block; font-variant-numeric:tabular-nums; }
.st-cell.st-cell--cycling{ color:var(--st-accent); text-shadow:0 0 6px color-mix(in srgb, var(--st-accent) 55%, transparent); font-weight:700; }
.st-cell.st-cell--locked{ color:inherit; font-weight:inherit; }
.st-cell.st-cell--just-locked{ color:var(--st-paper); text-shadow:0 0 3px var(--st-paper), 0 0 12px color-mix(in srgb, var(--st-accent) 80%, transparent), 0 0 26px color-mix(in srgb, var(--st-accent) 45%, transparent); transition:text-shadow 450ms ease-out, color 450ms ease-out; }
.st-pass{ position:relative; }
.st-pass .st-char{ color:inherit; transition:none; }
.st-pass.st-pass--washing .st-char.st-char--lit{ color:var(--st-accent); text-shadow:0 0 6px color-mix(in srgb, var(--st-accent) 70%, transparent); }
.st-typeon .st-bracket{ color:var(--st-accent); }
.st-typeon .st-cursor{ display:inline-block; width:.5em; background:var(--st-accent); margin-left:1px; animation:st-blink 0.5s steps(1) 6; }
.st-typeon .st-cursor.st-cursor--done{ animation:none; opacity:0; }
@keyframes st-blink{ 50%{ opacity:0; } }
.st-bgrow .st-bracket{ color:var(--st-accent); }
.st-bgrow .st-gap{ opacity:.18; }
.st-shimmer-hit{ color:var(--st-accent); }
.st-canvas-host{ position:relative; overflow:hidden; }
.st-canvas-host canvas{ display:block; width:100%; height:100%; }
.st-canvas-host[data-st="field"]{ min-height:64px; }
.st-canvas-host[data-st="rain"], .st-canvas-host[data-st="rain-lock"]{ background:var(--st-ink); min-height:120px; }
.st-rainlock-label{ position:absolute; inset:0; display:flex !important; align-items:center; justify-content:center;
  font-family:var(--st-mono-font); font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--st-paper);
  opacity:0; text-shadow:0 0 10px rgba(10,10,10,.9), 0 0 3px rgba(10,10,10,1); z-index:1; pointer-events:none; }
.st-rainlock-label.st-rainlock-label--on{ opacity:1; }
.st-flipcut-host{ position:relative; }
.st-flipcut-flash{ position:absolute; inset:0; background:var(--st-accent); opacity:0; pointer-events:none; transition:none; }
.st-gridpop{ position:relative; display:grid !important; align-items:stretch !important; justify-items:stretch !important; }
.st-gridpop-cell{ position:relative; border:1px solid var(--st-line); }
.st-gridpop-cell::after{ content:"+"; position:absolute; inset:0; display:flex; align-items:center; justify-content:center;
  font-size:8px; color:var(--st-line); }
.st-gridpop-cell.st-gridpop-cell--fill{ background:var(--st-accent); }
.st-gridpop-cell.st-gridpop-cell--fill::after{ content:""; }
.st-gridpop-cell.st-gridpop-cell--fill2{ background:var(--st-ink-2); }
.st-gridpop-cell.st-gridpop-cell--fill2::after{ content:""; }
.st-blockwipe{ position:relative; overflow:hidden; }
.st-blockwipe .st-bw-a, .st-blockwipe .st-bw-b{ position:absolute; inset:0; background-size:cover; background-position:center; }
.st-blockwipe .st-bw-b{ display:grid !important; }
.st-blockwipe-cell{ position:relative; overflow:hidden; }
.st-blockwipe-cell::before{ content:""; position:absolute; inset:0; background-image:var(--bw-cell-a); background-size:inherit; background-position:inherit; background-repeat:no-repeat; }
.st-blockwipe-cell.st-bw-revealed::before{ opacity:0; }
.st-blockwipe-cell.st-bw-edge{ outline:2px solid var(--st-accent); outline-offset:-2px; }
.st-canvas-host[data-st="dial"]{ aspect-ratio:1/1; max-width:320px; }
.st-canvas-host[data-st="crt-print"]{ min-height:180px; background:var(--st-ink); }
.st-canvas-host[data-st="block-build"]{ min-height:110px; background:var(--st-ink); display:flex; align-items:center; justify-content:center; }
.st-canvas-host[data-st="block-build"][data-st-mode="bleed"]{ min-height:220px; }
.st-ring{ display:block; }
.st-ring .st-ring-track{ fill:none; stroke:var(--st-line); stroke-width:1; }
.st-ring .st-ring-chase{ fill:none; stroke:var(--st-accent); stroke-linecap:round; }
@media (prefers-reduced-motion: reduce){
  .st-typeon .st-cursor{ animation:none; opacity:0; }
  .st-flipcut-flash{ opacity:0 !important; }
}
