@font-face { font-family: "Rubik Dirt"; src: url(/font/rubik-dirt.woff2) format("woff2"); font-weight: 400; font-display: swap; }
@font-face { font-family: "Big Shoulders"; src: url(/font/big-shoulders.woff2) format("woff2"); font-weight: 100 900; font-display: swap; }
@font-face { font-family: "Archivo"; src: url(/font/archivo.woff2) format("woff2"); font-weight: 100 900; font-stretch: 62% 125%; font-style: normal; font-display: swap; }
@font-face { font-family: "Archivo"; src: url(/font/archivo-italic.woff2) format("woff2"); font-weight: 100 900; font-stretch: 62% 125%; font-style: italic; font-display: swap; }
@font-face { font-family: "Fragment Mono"; src: url(/font/fragment-mono.woff2) format("woff2"); font-weight: 400; font-display: swap; }

/* Type roles (research 2026-10-06, specimen in art/_drafts): one voice per job, all from the mine.
   title (Rubik Dirt, capitals) : names of places: window titles, mine levels, level titles. The same distressed
                                  block as the HASHRATRR mark on the X banner, and the same xerox grit as the page.
   fig   (Big Shoulders 800)    : every figure. Tall condensed industrial numerals, the gauge plates of a mine.
   body  (Archivo)              : reading text and every button; at 118% width with tracking it is the labels,
                                  echoing the banner's RUN THE WHEEL. FIND THE BLOCK.
   mono  (Fragment Mono)        : hashes, addresses, code. */
:root {
  --ink: #141518;
  --coal: #1b1c20;
  --paper-text: #17181b;
  --muted: #474a52;
  --light: #ecebe4;
  --light-muted: #b9b8b2;
  --cobalt: #2b3cb8;
  --cobalt-text: #f1f2ff;
  --lamp: #ece2b0;
  --btc: #f7931a;          /* figures on dark */
  --btc-ink: #9c4c06;      /* figures on paper */
  --good: #1f6b12;
  --bad: #a0170b;
  --title: "Rubik Dirt", Impact, "Arial Black", sans-serif;
  --led: "Big Shoulders", "Arial Narrow", sans-serif;
  --body: "Archivo", system-ui, sans-serif;
  --mono: "Fragment Mono", ui-monospace, monospace;
  --gap: 22px;
  color-scheme: dark;
}

* { box-sizing: border-box; }
[hidden] { display: none !important; }
html { -webkit-text-size-adjust: 100%; scroll-padding-top: 24px; }
body {
  margin: 0; min-height: 100vh;
  background: var(--coal) url(/img/collage.webp) center / cover fixed no-repeat;
  color: var(--light);
  font: 400 17px/1.55 var(--body);
  font-synthesis: none;
  cursor: url(/img/cursor-arrow.png) 0 0, default;
  display: grid; grid-template-columns: 262px minmax(0, 1fr);
}
body::before {
  content: ""; position: fixed; inset: 0; z-index: -1; pointer-events: none;
  background: radial-gradient(ellipse at 55% 45%, rgba(12, 12, 16, .55), rgba(12, 12, 16, .8) 70%);
}
body::after {
  content: ""; position: fixed; inset: 0; z-index: 50; pointer-events: none;
  background: url(/img/grain.png); opacity: .14; mix-blend-mode: screen;
}
a, button, summary, label[for], input[type=range] { cursor: url(/img/cursor-hand.png) 10 0, pointer; }
input:not([type=range]), textarea { cursor: text; }
.key:disabled, .key[aria-disabled="true"] { cursor: url(/img/cursor-arrow.png) 0 0, default; }
img { max-width: 100%; }
code, kbd { font-family: var(--mono); font-size: .88em; }
kbd { padding: 0 5px; border: 1px solid currentColor; border-bottom-width: 2px; }
b { font-weight: 650; }
.sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.skip { position: absolute; left: 12px; top: -60px; z-index: 60; padding: 10px 16px; background: var(--lamp); color: var(--ink); font-weight: 600; }
.skip:focus { top: 12px; }
:focus-visible { outline: 3px solid var(--lamp); outline-offset: 3px; }
.win:not(.win--dark):not(.win--note) :focus-visible { outline-color: var(--cobalt); }

/* ---------- shared text roles ---------- */
.label { margin: 0 0 4px; font: 650 13px/1.3 var(--body); letter-spacing: .07em; text-transform: uppercase; color: var(--muted); }
.win--dark .label, .win--note .label { color: var(--light-muted); }
.note { margin: 8px 0 0; font-size: 15px; line-height: 1.5; color: var(--muted); }
.win--dark .note { color: var(--light-muted); }
.figure { margin: 0; font: 800 34px/1 var(--led); color: var(--btc-ink); font-variant-numeric: tabular-nums; }
.win--dark .figure { color: var(--btc); }
.figure--xl { font-size: clamp(40px, 3.7vw, 60px); line-height: .95; white-space: nowrap; }
.figure--count { font-size: 56px; line-height: 1; white-space: nowrap; }
.u { font: 600 .56em/1 var(--body); letter-spacing: .02em; margin: 0 .18em; vertical-align: .08em; }
.facts dd .u { font-size: .62em; }
.win--dark .figure--count.is-idle { color: var(--light-muted); }
.figure--block { font: 400 clamp(26px, 2.5vw, 38px)/1.1 var(--title); text-transform: uppercase; letter-spacing: .03em; }
.win--dark .figure--block { color: var(--lamp); }
.badge {
  flex: none; display: inline-flex; align-items: center; height: 22px; padding: 0 8px; font: 700 12px/1 var(--body); letter-spacing: .1em; text-transform: uppercase;
  background: var(--ink); color: var(--lamp); border: 1px solid var(--lamp);
}
.badge.is-live { background: #1f6b12; color: #fff; border-color: #9fe08a; }
.badge.is-preview { background: var(--lamp); color: var(--ink); }
.badge.is-alarm { background: #b3170b; color: #fff; border-color: #ffb3a8; }

/* ---------- the shaft: level plaques ---------- */
.shaft {
  position: sticky; top: 0; align-self: start; height: 100vh;
  padding: 24px 14px 20px 20px; display: flex; flex-direction: column; gap: 8px; overflow-y: auto;
}
.shaft__title { margin: 0 0 2px 4px; font: 650 13px/1.3 var(--body); letter-spacing: .1em; text-transform: uppercase; color: var(--lamp); }
.shaft__levels { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.plaque {
  display: flex; align-items: center; gap: 12px; min-height: 60px; padding: 5px 12px 9px 10px;
  border-style: solid; border-width: 8px 10px 10px 8px;
  border-image: url(/img/plate-plaque.png) 8 10 10 8 fill stretch;
  color: var(--light); text-decoration: none; transition: transform .12s ease;
}
.plaque:hover { transform: translateX(4px); }
.plaque:active { transform: translate(5px, 2px); }
.plaque[aria-current="page"] { border-image-source: url(/img/plate-plaque-on.png); color: var(--ink); }
.plaque__n { flex: none; width: 28px; height: 28px; display: grid; place-items: center; font: 800 21px/1 var(--led); background: rgba(0, 0, 0, .38); color: var(--light); }
.plaque[aria-current="page"] .plaque__n { background: var(--ink); color: var(--lamp); }
.plaque__t { display: flex; flex-direction: column; font: 18px/1 var(--title); text-transform: uppercase; letter-spacing: .03em; white-space: nowrap; }
.plaque__t small { font: 500 12.5px/1.2 var(--body); text-transform: none; letter-spacing: .02em; margin-top: 4px; opacity: .85; }
.shaft__keys { margin: 8px 0 0 4px; font-size: 13px; line-height: 1.6; color: var(--light-muted); }

/* ---------- desk + levels ---------- */
.desk { padding: 24px 32px 64px 10px; outline: none; min-width: 0; }
.level { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--gap); align-items: start; position: relative; }
.level__title { grid-column: 1 / -1; margin: 0; font: 54px/1 var(--title); text-transform: uppercase; letter-spacing: .02em; color: var(--light); text-shadow: 3px 3px 0 var(--ink); }
.level__title span { display: block; font: 650 14px/1.2 var(--body); letter-spacing: .12em; text-transform: uppercase; color: var(--lamp); text-shadow: none; margin-bottom: 6px; }
.level__lead { grid-column: 1 / 10; margin: -8px 0 4px; font-size: 18px; color: var(--light); text-shadow: 0 1px 2px #000; max-width: 60ch; }

/* ---------- windows ---------- */
.win {
  position: relative; min-width: 0;
  border-style: solid; border-width: 12px 20px 20px 12px;
  border-image: url(/img/plate-window.png) 12 20 20 12 fill stretch;
  color: var(--paper-text);
}
.win::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: url(/img/dots.png); opacity: .07; }
.win > * { position: relative; z-index: 1; }
.win--dark { border-image-source: url(/img/plate-window-dark.png); color: var(--light); }
.win--dark::after { filter: invert(1); opacity: .05; }
.win--note { border-image-source: url(/img/plate-note.png); color: var(--cobalt-text); }
.win--note::after { opacity: .14; }
.win__bar {
  display: flex; align-items: center; gap: 10px; margin: -6px -6px 0;
  min-height: 44px; padding: 4px 12px 6px 10px;
  border-style: solid; border-width: 6px; border-image: url(/img/plate-bar.png) 6 fill stretch;
  color: var(--light);
}
.win__bar--cobalt { border-image-source: url(/img/plate-bar-cobalt.png); }
.win__bar h2 { margin: 0; font: 21px/1.1 var(--title); text-transform: uppercase; letter-spacing: .04em; flex: 1; min-width: 0; }
.win__ico { width: 24px; height: 24px; image-rendering: pixelated; flex: none; }
.win__meta { font: 650 12px/1 var(--body); letter-spacing: .1em; text-transform: uppercase; color: var(--lamp); white-space: nowrap; font-variant-numeric: tabular-nums; }
.win__body { padding: 16px 16px 14px; }
.win__body > p { margin: 0 0 12px; }
.win__body > :last-child { margin-bottom: 0; }
.win a:not(.key):not(.plaque) { color: var(--cobalt); text-decoration-thickness: 2px; text-underline-offset: 2px; }
.win--dark a:not(.key):not(.plaque), .win--note a:not(.key):not(.plaque) { color: var(--lamp); }

/* ---------- level 0 layout ---------- */
.lockup { grid-column: 1 / 8; grid-row: 1; align-self: end; }
.lockup__mark { margin: 0; line-height: 0; }
.lockup__mark img { width: min(100%, 640px); height: auto; transform: rotate(-2deg); filter: drop-shadow(5px 5px 0 #0b0b0d); }
.lockup__chips { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 10px 0 0; }
.chip { display: inline-flex; align-items: center; justify-content: center; height: 28px; padding: 0 11px; font: 650 13px/1 var(--body); letter-spacing: .06em; text-transform: uppercase; background: rgba(12, 12, 16, .75); border: 1px solid rgba(236, 235, 228, .35); color: var(--light); }
.chip--ticker { font: 800 18px/1 var(--led); padding-top: 1px; letter-spacing: .02em; text-transform: none; color: var(--lamp); border-color: var(--lamp); }
.chip--state { background: var(--lamp); color: var(--ink); border-color: var(--lamp); }
.chip--state.is-live { background: #1f6b12; color: #fff; border-color: #9fe08a; }
.lockup__line { margin: 12px 0 0; max-width: 46ch; font-size: 20px; line-height: 1.45; color: var(--light); text-shadow: 0 1px 2px #000; }
.win--cam { grid-column: 1 / 8; grid-row: 2; }
.side { grid-column: 8 / 13; grid-row: 1 / 3; display: grid; gap: var(--gap); align-self: start; }
.sticker--foreman { grid-column: 1 / 8; grid-row: 3; justify-self: end; margin: -48px 18px 0 0; z-index: 4; }
.win--lamp { grid-column: 1 / 7; align-self: stretch; }
.win--calc { grid-column: 7 / 13; align-self: stretch; }
.win--how { grid-column: 1 / 13; }

.cam { position: relative; background: #08080a; line-height: 0; }
.cam canvas { cursor: url(/img/cursor-hand.png) 10 0, pointer; width: 100%; height: auto; aspect-ratio: 16 / 9; image-rendering: pixelated; display: block; }
.cam__siren { position: absolute; right: 10px; top: 10px; width: 48px; height: 48px; image-rendering: pixelated; display: none; }
.cam__status { margin: 12px 0 0 !important; font-weight: 650; }
.cam__status small { display: block; font-weight: 400; color: var(--muted); font-size: 15px; }

.draw__row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.win--dark .figure--time { color: var(--lamp); }
.draw__rule { margin: 14px 0 0 !important; font-size: 16px; }
.draw__last { margin: 10px 0 0 !important; font-size: 15px; color: var(--light-muted); }
.draw__last a { white-space: nowrap; }

.facts { margin: 14px 0 0; display: grid; gap: 8px; }
.facts > div { display: flex; justify-content: space-between; align-items: baseline; gap: 14px; border-bottom: 1px dashed rgba(127, 127, 127, .45); padding-bottom: 6px; }
.facts dt { font-size: 15px; }
.facts dd { margin: 0; font: 800 25px/1 var(--led); color: var(--btc-ink); text-align: right; font-variant-numeric: tabular-nums; }
.win--dark .facts dd { color: var(--btc); }
.facts dd.is-none { color: inherit !important; opacity: .72; font: 400 15px/1.2 var(--body); }

.rigs { display: flex; align-items: center; gap: 18px; margin: 14px 0 0; padding: 12px 14px; border: 1px dashed rgba(127, 127, 127, .5); }
.rigs__n { display: flex; flex-direction: column; align-items: center; min-width: 84px; }
.figure--rigs { font-size: 50px; line-height: .9; }
.rigs__n .label { margin: 4px 0 0; font-size: 11px; white-space: nowrap; }
.rigs__hs { flex: 1; margin: 0; display: grid; gap: 6px; }
.rigs__hs > div { display: flex; justify-content: space-between; align-items: baseline; gap: 10px; }
.rigs__hs dt { font-size: 14px; color: var(--light-muted); }
.rigs__hs dd { margin: 0; font: 800 22px/1 var(--led); color: var(--btc); white-space: nowrap; }
.meter { margin: 14px 0 0; }
.meter__bar { height: 12px; background: rgba(20, 21, 24, .15); border: 1px solid rgba(20, 21, 24, .4); }
.meter__bar span { display: block; height: 100%; width: 0; background: var(--btc-ink); }
.rig-list li { display: grid; grid-template-columns: 1fr 7.5em 9em; align-items: baseline; gap: 10px; }
.rig-list li > :nth-child(2) { text-align: right; }
.rig-list li > :nth-child(3) { text-align: right; color: var(--muted); font-size: 14px; }
.rig-list li.log__empty { display: flex; }
.rig-list .num { font: 800 18px/1 var(--led); color: var(--btc-ink); }
.gauge { margin-top: 14px; }
.gauge canvas { width: 100%; height: 22px; image-rendering: pixelated; display: block; }
.gauge__marks { display: flex; justify-content: space-between; font-size: 12px; color: var(--light-muted); margin-top: 4px; }
.net {
  margin: 18px 0 0 !important; padding: 12px 14px 14px; display: grid; gap: 4px;
  border-style: solid; border-width: 6px; border-image: url(/img/plate-well.png) 6 fill stretch;
}
.net p { margin: 0; min-width: 0; }
.net .label { color: var(--lamp) !important; display: flex; align-items: center; gap: 8px; }
.net .label img { width: 20px; height: 20px; image-rendering: pixelated; }
.net__n { font: 800 26px/1.1 var(--led); color: var(--light); white-space: nowrap; font-variant-numeric: tabular-nums; }
.net__vs { font-size: 14px; color: var(--light-muted); }
.net__vs b { color: var(--btc); font: 800 19px/1 var(--led); }
.net .note { font-size: 13px; }

/* lamp room */
.lamp__lead { font-size: 16px; }
.tag { position: relative; margin: 6px 0 14px; line-height: 0; }
.tag__plate { width: 100%; height: auto; display: block; filter: drop-shadow(5px 6px 0 rgba(12, 12, 14, .55)); }
.tag__face { position: absolute; left: 30%; right: 7%; top: 16%; bottom: 12%; display: flex; flex-direction: column; justify-content: center; line-height: 1.3; }
.tag__label { padding-right: 13%; margin: 0 0 8px; font: 650 13px/1 var(--body); letter-spacing: .14em; text-transform: uppercase; color: var(--cobalt); }
.tag__ca { margin: 0; font: 400 clamp(12px, 1.05vw, 16px)/1.35 var(--mono); color: var(--ink); overflow-wrap: anywhere; user-select: all; }
.tag__ca.is-empty { font: 400 22px/1 var(--title); text-transform: uppercase; letter-spacing: .04em; color: var(--muted); user-select: none; }
.lamp__keys { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.lamp__keys .key { width: 100%; }
.lamp__state { margin-top: 12px !important; font-size: 15px; color: var(--muted); min-height: 1.5em; }

/* keys: set in the body face, they are actions */
.key {
  display: inline-flex; align-items: center; justify-content: center; gap: 10px;
  min-height: 50px; padding: 7px 16px 8px;
  border-style: solid; border-width: 8px 9px 9px 8px;
  border-image: url(/img/plate-key.png) 8 9 9 8 fill stretch;
  background: none; color: var(--paper-text); text-decoration: none;
  font: 650 17px/1.15 var(--body); letter-spacing: .005em; text-align: center;
}
.key img { width: 24px; height: 24px; flex: none; }
.key:hover:not([aria-disabled="true"]):not(:disabled) { filter: brightness(1.07); }
.key:active:not([aria-disabled="true"]):not(:disabled) { border-image-source: url(/img/plate-key-down.png); transform: translateY(2px); }
.key:disabled, .key[aria-disabled="true"] { opacity: .55; filter: grayscale(1); }
.key--buy { grid-column: 1 / -1; order: -1; font-size: 18px; min-height: 56px; }
.key--dex { grid-column: 1 / -1; }
.key--small { min-height: 44px; font-size: 15px; padding: 5px 12px 6px; }
.key.is-done::after { content: " ✓"; }
.links-row { display: flex; flex-wrap: wrap; gap: 10px; margin: 14px 0 0; }

/* calc */
.calc__lead { font-size: 16px; }
.calc__label { display: flex; justify-content: space-between; align-items: baseline; font-weight: 650; }
.calc__label output { font: 800 30px/1 var(--led); color: var(--btc-ink); }
.calc__range { width: 100%; margin: 10px 0 2px; accent-color: var(--cobalt); height: 30px; }
.facts--calc dd { font-size: 23px; }

/* how it works */
.how { list-style: none; margin: 4px 0 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); grid-template-rows: auto auto auto; column-gap: 0; row-gap: 8px; counter-reset: how; }
.how li { display: grid; grid-row: span 3; grid-template-rows: subgrid; justify-items: center; text-align: center; padding: 4px 18px 6px; counter-increment: how; }
.how li + li { border-left: 1px dashed rgba(241, 242, 255, .35); }
.how img { width: 56px; height: 56px; image-rendering: pixelated; }
.how b { font: 19px/1.15 var(--title); text-transform: uppercase; letter-spacing: .03em; color: #fff; }
.how b::before { content: counter(how) ". "; }
.how span { font-size: 16px; line-height: 1.5; max-width: 30ch; }
.win--how .links-row { justify-content: center; margin-top: 20px; }

/* stickers */
.sticker {
  display: flex; align-items: center; gap: 10px; padding: 10px 16px 14px 12px;
  border-style: solid; border-width: 8px 10px 10px 8px;
  border-image: url(/img/plate-plaque-on.png) 8 10 10 8 fill stretch;
  color: var(--ink); transform: rotate(3deg);
}
.sticker img { width: 40px; height: 40px; image-rendering: pixelated; }
.sticker p { margin: 0; display: flex; flex-direction: column; font: 650 13px/1.3 var(--body); letter-spacing: .08em; text-transform: uppercase; }
.sticker b { font: 18px/1.15 var(--title); text-transform: uppercase; letter-spacing: .03em; }
.sticker b .mono { font: 600 15px/1.2 var(--mono); text-transform: none; letter-spacing: 0; }

/* ---------- level 1 ---------- */
.level--today, .level--block { align-items: stretch; }
.level--today > .level__title, .level--today > .level__lead, .level--block > .level__title, .level--block > .level__lead { align-self: start; }
.win--pot { grid-column: 1 / 6; }
.win--check { grid-column: 6 / 13; }
.win--rig { grid-column: 1 / 7; }
.win--best { grid-column: 7 / 13; }
.win--boost { grid-column: 1 / 13; }
.well {
  margin: 4px 0 0 !important; padding: 10px 12px 12px;
  border-style: solid; border-width: 6px; border-image: url(/img/plate-well.png) 6 fill stretch;
  font: 15px/1.4 var(--mono); color: var(--btc); overflow-wrap: anywhere;
}
.well--light { border-image-source: url(/img/plate-well-light.png); color: var(--btc-ink); }
.check label { display: block; margin-bottom: 8px; font-weight: 600; }
.check__row { display: flex; gap: 10px; }
.field {
  width: 100%; min-height: 48px; padding: 8px 12px; font: 16px/1.3 var(--body); color: var(--light);
  border-style: solid; border-width: 6px; border-image: url(/img/plate-well.png) 6 fill stretch; background: none;
}
.field::placeholder { color: #8d8c87; }
.field--mono { font-family: var(--mono); font-size: 14px; }
textarea.field { resize: vertical; display: block; }
.log { list-style: none; margin: 10px 0; padding: 0; display: grid; gap: 6px; }
.log li { display: flex; justify-content: space-between; gap: 12px; font-size: 15px; border-bottom: 1px dashed rgba(127, 127, 127, .45); padding-bottom: 4px; }
.log__empty { color: var(--muted); justify-content: flex-start !important; }
.win--dark .log__empty, .win--note .log__empty { color: inherit; opacity: .75; }
.mono { font-family: var(--mono); font-size: 14px; overflow-wrap: anywhere; }

/* ---------- level 2 ---------- */
.win--log, .win--recount { grid-column: 1 / 13; }
.table-wrap { overflow-x: auto; position: relative; }
.table { width: 100%; border-collapse: collapse; font-size: 15px; }
.table th { text-align: left; font: 650 12.5px/1.25 var(--body); letter-spacing: .07em; text-transform: uppercase; padding: 6px 8px; border-bottom: 2px solid var(--ink); vertical-align: bottom; }
.table td { padding: 8px; border-bottom: 1px dashed rgba(20, 21, 24, .35); vertical-align: middle; }
.table td.num { font: 800 21px/1 var(--led); color: var(--btc-ink); white-space: nowrap; }
.table:not(.table--docs) td:first-child, .table:not(.table--docs) td:nth-child(2) { white-space: nowrap; }
.recount__lead { font-size: 16px; }
.verdict:empty { display: none; }
.verdict {
  display: grid; gap: 4px; margin: 0 0 14px; padding: 12px 14px 14px;
  border-style: solid; border-width: 6px; border-image: url(/img/plate-well-light.png) 6 fill stretch;
}
.verdict__k { font: 650 13px/1.3 var(--body); letter-spacing: .07em; text-transform: uppercase; color: var(--muted); }
.verdict__w { font: 700 18px/1.3 var(--mono); color: var(--cobalt); overflow-wrap: anywhere; }
.verdict .ok, .steps .ok { color: var(--good); font-weight: 650; }
.verdict .no, .steps .no { color: var(--bad); font-weight: 650; }
.recount__inputs { margin-top: 16px; border-top: 1px dashed rgba(20, 21, 24, .35); padding-top: 12px; }
.recount__inputs summary { font-weight: 650; padding: 6px 0; }
.recount { display: grid; gap: 8px; margin-top: 10px; }
.recount label { font-weight: 600; font-size: 15px; }
.recount__row { display: grid; grid-template-columns: 1fr 2fr; gap: 12px; }
.recount__row > div { display: grid; gap: 6px; }
.steps { margin: 0; padding-left: 1.5em; display: grid; gap: 12px; min-width: 0; }
.steps li { min-width: 0; overflow-wrap: anywhere; }
.steps .winner { font: 600 16px/1.35 var(--mono); color: var(--cobalt); }
.steps:empty { display: none; }
.steps .step__t { font-weight: 650; }
.steps .step__v { display: block; font: 13.5px/1.4 var(--mono); overflow-wrap: anywhere; margin-top: 2px; }
.steps .walk { width: 100%; table-layout: fixed; border-collapse: collapse; margin-top: 6px; font: 13px/1.3 var(--mono); }
.steps .walk td:first-child { width: 2.6em; }
.steps .walk td:nth-child(2) { word-break: break-all; }
.steps .walk td:nth-child(3) { width: 42%; }
.steps .walk td { padding: 3px 6px; border-bottom: 1px dashed rgba(20, 21, 24, .3); overflow-wrap: anywhere; }
.steps .walk tr.is-win td { background: rgba(43, 60, 184, .16); font-weight: 700; }

/* ---------- level 3, 4 ---------- */
.win--fame { grid-column: 1 / 9; }
.win--zeros { grid-column: 9 / 13; }
.win--found { grid-column: 1 / 8; }
.win--split { grid-column: 8 / 13; }
.win--btc { grid-column: 1 / 13; }
.split { list-style: none; margin: 0; padding: 0; display: grid; gap: 14px; }
.split li { display: grid; grid-template-columns: 48px 76px 1fr; gap: 12px; align-items: center; font-size: 16px; }
.split img { image-rendering: pixelated; }
.split b { font: 800 40px/1 var(--led); color: var(--btc-ink); }

/* ---------- level 5: docs ---------- */
.win--toc { grid-column: 1 / 4; position: sticky; top: 20px; }
.toc { margin: 0; padding-left: 1.6em; display: grid; gap: 6px; font-size: 15.5px; }
.toc a { text-decoration: none !important; }
.toc a:hover { text-decoration: underline !important; }
.win--docs { grid-column: 4 / 13; }
.docs { max-width: 72ch; padding: 22px 26px 26px; }
.docs section + section { margin-top: 30px; padding-top: 24px; border-top: 1px dashed rgba(20, 21, 24, .3); }
.docs h3 { margin: 0 0 12px; font: 26px/1.1 var(--title); text-transform: uppercase; letter-spacing: .03em; color: var(--ink); display: flex; align-items: baseline; gap: 12px; }
.docs h3 span { font: 800 26px/1 var(--led); color: var(--btc-ink); min-width: 1.4em; }
.docs p, .docs li { font-size: 17px; line-height: 1.65; }
.docs p { margin: 0 0 12px; }
.docs ul, .docs ol { margin: 0 0 12px; padding-left: 1.3em; display: grid; gap: 6px; }
.docs code { background: rgba(20, 21, 24, .08); padding: 1px 4px; }
.formula { font: 400 19px/1.4 var(--mono); padding: 10px 14px; background: rgba(20, 21, 24, .07); border-left: 4px solid var(--cobalt); }
.formula--inline { display: inline; padding: 1px 6px; font-size: 16px; border: 0; }
.code {
  margin: 0 0 12px; padding: 14px 16px; overflow-x: auto;
  border-style: solid; border-width: 6px; border-image: url(/img/plate-well.png) 6 fill stretch;
  font: 13.5px/1.6 var(--mono); color: var(--light); white-space: pre;
}
.code code { background: none; padding: 0; font-size: inherit; }
.table--docs td.num { font-size: 24px; width: 5em; }
.risk { margin-top: 18px !important; font-size: 13.5px !important; color: var(--muted); }

/* ---------- siren ---------- */
.rain { position: fixed; inset: 0; width: 100%; height: 100%; pointer-events: none; z-index: 40; display: none; image-rendering: pixelated; }
body.is-siren .rain { display: block; }
body.is-siren .cam__siren { display: block; animation: blink 1s steps(2) infinite; }
body.is-siren::before { animation: siren 1.6s ease-in-out infinite; }
@keyframes blink { 50% { opacity: .25; } }
@keyframes siren { 0%, 100% { box-shadow: inset 0 0 0 0 rgba(220, 30, 30, 0); } 50% { box-shadow: inset 0 0 160px 30px rgba(220, 30, 30, .55); } }

/* ---------- narrower screens ---------- */
@media (max-width: 1180px) {
  .lockup, .win--cam, .side { grid-column: 1 / 13; grid-row: auto; }
  .side { grid-template-columns: 1fr 1fr; }
  .sticker--foreman { grid-column: 1 / -1; grid-row: auto; margin: -36px 12px 0 0; }
  .how { grid-template-columns: 1fr 1fr; grid-template-rows: none; row-gap: 22px; }
  .how li { grid-row: auto; grid-template-rows: none; }
  .how li:nth-child(3) { border-left: 0; }
  .win--fame, .win--zeros, .win--found, .win--split, .win--btc, .win--rig, .win--best { grid-column: 1 / 13; }
  .win--toc { grid-column: 1 / 13; position: static; }
  .toc { grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: 24px; }
  .win--docs { grid-column: 1 / 13; }
  .level__lead { grid-column: 1 / 13; }
}
@media (max-width: 820px) {
  body { display: block; font-size: 16px; }
  .shaft {
    position: sticky; top: 0; z-index: 30; height: auto; padding: 8px 0 10px 10px; overflow: visible;
    background: rgba(18, 18, 22, .94); flex-direction: row; align-items: center; border-bottom: 2px solid var(--ink);
  }
  .shaft::after { content: ""; position: absolute; right: 0; top: 0; bottom: 0; width: 36px; pointer-events: none; background: linear-gradient(90deg, transparent, rgba(18, 18, 22, .95)); }
  .shaft__title, .shaft__keys { display: none; }
  .shaft__levels { flex-direction: row; overflow-x: auto; gap: 8px; scrollbar-width: none; padding: 0 36px 2px 0; scroll-snap-type: x proximity; }
  .shaft__levels::-webkit-scrollbar { display: none; }
  .shaft__levels li { scroll-snap-align: start; }
  .plaque { min-height: 46px; padding: 4px 10px 8px 8px; gap: 8px; }
  .plaque:hover { transform: none; }
  .plaque__t { font-size: 17px; }
  .plaque__t small { display: none; }
  .plaque__n { width: 24px; height: 24px; font-size: 18px; }
  html { scroll-padding-top: 80px; }
  .desk { padding: 16px 12px 48px; }
  .level { gap: 18px; }
  .level__title { font-size: 40px; }
  .level__lead { font-size: 16px; margin: -6px 0 0; }
  .lockup__line { font-size: 17px; }
  .side { grid-template-columns: 1fr; }
  .win--lamp, .win--calc, .win--pot, .win--check, .win--boost { grid-column: 1 / 13; }
  .sticker--foreman { justify-self: start; margin: 0; transform: rotate(-1.5deg); }
  .win { border-width: 10px 16px 16px 10px; }
  .win__body { padding: 14px 10px 10px; }
  .win__bar h2 { font-size: 18px; }
  .facts dd { font-size: 22px; }
  .how { grid-template-columns: 1fr; gap: 14px; }
  .how li { grid-template-columns: 48px 1fr; column-gap: 12px; justify-items: start; text-align: left; padding: 0; border-left: 0 !important; }
  .how img { grid-row: span 2; width: 48px; height: 48px; }
  .lamp__keys { grid-template-columns: 1fr; }
  .tag__face { left: 30%; right: 6%; top: 16%; bottom: 10%; }
  .tag__ca.is-empty { font-size: 16px; }
  .tag__ca { font-size: clamp(12px, 3.2vw, 14px); line-height: 1.25; }
  .tag__label { font-size: 10px; letter-spacing: .08em; margin-bottom: 4px; white-space: nowrap; }
  .recount__row { grid-template-columns: 1fr; }
  .links-row .key { flex: 1 1 auto; }
  .steps .walk td:nth-child(3) { width: 38%; font-size: 11.5px; }
  .check__row { flex-direction: column; }
  .split li { grid-template-columns: 40px 64px 1fr; }
  .split b { font-size: 32px; }
  .table { font-size: 14px; }
  .toc { grid-template-columns: 1fr 1fr; }
  .docs { padding: 16px 12px 18px; }
  .docs h3 { font-size: 22px; }
  .docs p, .docs li { font-size: 16px; }
  .formula { font-size: 16px; }
}
@media (max-width: 400px) {
  .win__bar { flex-wrap: wrap; row-gap: 2px; }
  .win__bar h2 { flex: 1 0 auto; }
  .facts > div { flex-wrap: wrap; column-gap: 10px; }
  .facts dd { white-space: nowrap; margin-left: auto; font-size: 20px; }
  .draw__row { gap: 8px; }
  .figure--xl { font-size: 40px; }
  .toc { grid-template-columns: 1fr; }
}
@media (max-width: 360px) {
  .tag__ca { font-size: 12px; }
  .level__title { font-size: 34px; }
  .key { font-size: 15.5px; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before { animation: none !important; transition: none !important; }
  .rain { display: none !important; }
}

/* labels: Archivo widened and tracked, the voice of the banner's tagline */
.label, .chip:not(.chip--ticker), .level__title span, .shaft__title, .verdict__k, .table th, .tag__label, .badge, .sticker p, .win__meta {
  font-stretch: 118%;
}
.label, .chip:not(.chip--ticker), .level__title span, .shaft__title, .verdict__k, .table th, .tag__label, .sticker p { letter-spacing: .12em; }
/* a ticking figure keeps its width: every digit gets the same cell */
.dg { display: inline-block; width: .47em; text-align: center; }
.lockup__mark img { filter: drop-shadow(4px 4px 0 #0b0b0d); transform: none; }
