/* for/deck.css — the decks' sheet (zero JS: the document is the scroll container, each slide a full-height snap point the browser's
   own keys walk — up, down, PageUp, PageDown, Space, Home, End; the slide links are the focusable doors). The house variables of styles.css
   and its light twin alone — no colour of its own. Rendered by apps/www/src/decks-render.ts: never hand-edited. */
:root:has(body.deck) { scroll-snap-type: y mandatory; }
body.deck { max-width: none; padding: 0; }
body.deck > header { padding: 1rem clamp(1.25rem, 6vw, 5rem); scroll-snap-align: start; }
body.deck > footer { margin: 0; padding: 1rem clamp(1.25rem, 6vw, 5rem) 2rem; scroll-snap-align: end; }
main.deck { margin: 0; }
main.deck > section.slide { margin: 0; min-height: 100svh; scroll-snap-align: start; scroll-snap-stop: always; display: grid; grid-template-rows: 1fr auto; padding: 0 clamp(1.25rem, 6vw, 5rem); border-top: 1px solid var(--line); }
main.deck > section.slide.title { border-top: 0; }
.slide-body { align-self: center; width: 100%; max-width: 60rem; margin: 0 auto; padding: 2rem 0; }
.slide h1 { font-size: clamp(2rem, 5vw, 3.2rem); line-height: 1.1; margin: 0 0 1rem; font-weight: 800; letter-spacing: -0.02em; }
.slide h2 { font-size: clamp(1.6rem, 4vw, 2.6rem); line-height: 1.15; margin: 0 0 1rem; }
.slide p, .slide li { font-size: clamp(1.05rem, 1.8vw, 1.35rem); }
.slide p.lead { font-size: clamp(1.15rem, 2.2vw, 1.6rem); }
.slide p.usd-note { font-size: 0.95rem; }
.slide ul { padding-left: 1.4rem; }
.slide li { margin: 0.5rem 0; }
.slide table { width: 100%; border-collapse: collapse; margin: 1rem 0; }
.slide th, .slide td { text-align: left; vertical-align: top; padding: 0.6rem 0.6rem; border-top: 1px solid var(--line); font-size: clamp(0.95rem, 1.5vw, 1.15rem); }
.slide thead th { color: var(--soft); font-weight: 600; border-top: 0; }
.slide tbody th { color: var(--ink); font-weight: 600; }
.slide td { color: var(--soft); }
.slide-nav { width: 100%; max-width: 60rem; margin: 0 auto; padding: 0.75rem 0 1.25rem; color: var(--soft); font-size: 0.9rem; display: flex; justify-content: space-between; align-items: center; gap: 1rem; }
.slide-nav a { color: var(--soft); text-decoration: none; }
.slide-nav a:hover { color: var(--ink); }
.slide-nav .count { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 0.8rem; letter-spacing: 0.08em; }
@media print {
  :root:has(body.deck) { scroll-snap-type: none; }
  main.deck > section.slide { min-height: auto; height: auto; break-after: page; border-top: 0; }
  .slide-nav, body.deck > header form.theme { display: none; }
}
