/* Plate identity for downloads.torad.ai. Values come from the website's torad-tokens.css; only
   the roles this page uses are copied, so the page stays its own small thing.
   Ground: rag (daylight) / leather (candlelight), following the OS. Ink: iron-gall.
   Vermilion: the one download action. Verdigris: the live release. Prussian: measured facts. */
@font-face{font-family:'Fraunces';font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/fraunces-400.woff2) format('woff2')}
@font-face{font-family:'Source Serif 4';font-style:normal;font-weight:200 900;font-display:swap;src:url(/fonts/source-serif-4-400.woff2) format('woff2')}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-400.woff2) format('woff2')}

:root{
  color-scheme:light dark;
  --surface:light-dark(#efe6d2,#1c1610);
  --surface-raised:light-dark(#e7dcc2,#241a12);
  --surface-sunk:light-dark(#e0d4b8,#150f09);
  --ink-strong:light-dark(#241d14,#efe2c6);
  --ink-body:light-dark(#5d5240,#b6a888);
  --ink-mute:light-dark(#635741,#968969);
  --accent:light-dark(#a62815,#e2563b);
  --accent-bright:light-dark(#8f2412,#f06a4c);
  --on-accent:light-dark(#fbf3df,#1c1610);
  --live:light-dark(#2c6555,#5bb59c);
  --measured:light-dark(#1c3c5c,#6fa8cf);
  --line:light-dark(rgba(36,29,20,.14),rgba(239,226,198,.16));
  --line-strong:light-dark(rgba(36,29,20,.30),rgba(239,226,198,.32));
  --rim:light-dark(rgba(251,243,223,.9),rgba(231,192,105,.18));
  --focus:light-dark(#a62815,#e2563b);
  --display:'Fraunces',serif;
  --body:'Source Serif 4',serif;
  --mono:'IBM Plex Mono',ui-monospace,monospace;
}
*{box-sizing:border-box}
html{background:var(--surface);color:var(--ink-body);font:1.0625rem/1.6 var(--body);-webkit-text-size-adjust:100%}
body{margin:0}
::selection{background:light-dark(rgba(197,51,29,.2),rgba(226,86,59,.26))}
main{max-width:40rem;margin:0 auto;padding:4rem 1.5rem 5rem}
h1,h2{font-family:var(--display);color:var(--ink-strong);font-weight:500;line-height:1.1;margin:0}
h1{font-size:clamp(2.6rem,7vw,3.6rem);letter-spacing:-.01em}
h2{font-size:1.5rem;margin:3rem 0 .75rem}
.channel{font-style:italic;color:var(--accent)}
.mark{font:.8rem/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-mute);margin:0 0 1.25rem}
.lede{font-size:1.2rem;color:var(--ink-strong);margin:1.25rem 0 0}
code,pre{font-family:var(--mono);font-size:.9rem}
pre{background:var(--surface-sunk);border:1px solid var(--line);padding:1rem 1.25rem;overflow-x:auto;color:var(--ink-strong)}

.plate{margin-top:2.5rem;padding:1.75rem;background:var(--surface-raised);border:1px solid var(--line-strong);
  box-shadow:inset 0 1px 0 var(--rim),0 1px 2px light-dark(rgba(36,29,20,.12),rgba(0,0,0,.5))}
.status{display:flex;align-items:center;gap:.6rem;margin:0 0 1.25rem;font:.9rem/1.4 var(--mono);color:var(--ink-mute)}
.dot{width:.55rem;height:.55rem;border-radius:50%;border:1px solid var(--ink-mute);flex:none}
.status[data-state=live]{color:var(--live)}
.status[data-state=live] .dot{background:var(--live);border-color:var(--live)}
.downloads{display:flex;flex-wrap:wrap;gap:.75rem}
.download{display:inline-block;padding:.85rem 1.5rem;background:var(--accent);color:var(--on-accent);font:500 1.05rem/1 var(--body);
  text-decoration:none;border:1px solid var(--accent-bright);transition:background .18s cubic-bezier(.16,.84,.18,1)}
.download:hover{background:var(--accent-bright)}
[hidden]{display:none!important}
.download[aria-disabled=true]{background:transparent;color:var(--ink-mute);border-color:var(--line-strong);pointer-events:none}
.download:focus-visible,a:focus-visible{outline:2px solid var(--focus);outline-offset:3px}
.facts{margin:1.5rem 0 0;display:grid;gap:.4rem}
.facts div{display:grid;grid-template-columns:7rem 1fr;gap:1rem;border-top:1px solid var(--line);padding-top:.4rem}
.facts dt{font:.8rem/1.6 var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-mute)}
.facts dd{margin:0;font:.85rem/1.6 var(--mono);color:var(--measured);overflow-wrap:anywhere}
.notes{padding-left:1.1rem;margin:0}
.notes li{margin:.35rem 0}
.notes li::marker{color:var(--accent)}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
