/* owt — a tea room in the Dales. Cream, brick red and slate; Bricolage Grotesque for headings,
   Onest for prose, JetBrains Mono for code. Requests are logged like a ledger: green for 200,
   brick for everything else. */

:root {
  --page-bg: #f7f3ea; --page-text: #2b2a28; --page-muted: #67635b; --page-line: #e0d9c9;
  --page-accent: #a63d2a; --strong: #191817; --surface: #fffcf5; --raise: #eee7d8;
  --code-bg: #2d3135; --code-text: #eef0f1;
  --page-ui: "Onest", system-ui, sans-serif;
  --display: "Bricolage Grotesque", "Onest", sans-serif;
  --mono: "JetBrains Mono", ui-monospace, monospace;
  --k-ink: #2b2a28; --k-accent: #a63d2a; --k-b: #3d6a8a; --k-ok: #2f7a47; --k-err: #b4321f; --k-muted: #8b867b;
}

header.intro h1 { font-size: clamp(64px, 10vw, 128px); font-weight: 800; letter-spacing: -0.05em; color: var(--page-accent); line-height: 0.95; }
h2 { font-weight: 750; letter-spacing: -0.02em; }
:not(pre) > code { background: var(--raise); color: var(--strong); }
pre { background: var(--code-bg); color: var(--code-text); }
pre .p { color: #ffd6a8; }
pre .o { color: #a8e0b8; }
pre .c { color: #a3abb3; }
.warn { padding: 14px 16px; background: #fbe9e2; border-left: 4px solid var(--page-accent); border-radius: 0 8px 8px 0; max-width: 72ch; }
.fig { padding: 16px 12px; background: var(--surface); border: 1px solid var(--page-line); border-radius: 8px; }
.dg .lab-bg { fill: var(--surface); }
.dg .halo { stroke: var(--surface); }
table.req { min-width: 860px; font-size: 14px; }
table.req td { vertical-align: top; }
table.req pre.cell { margin: 0; padding: 6px 8px; font-size: 12.5px; background: var(--raise); color: var(--strong); border-radius: 4px; }
table.req td code { white-space: pre-wrap; overflow-wrap: anywhere; }
table.req td.st { font: 600 14px/1.5 var(--mono); }
table.req tr.ok td.st { color: #2f7a47; }
table.req tr.bad td.st { color: var(--page-accent); }
ul.findings li { margin-bottom: 10px; }
p.note { color: var(--page-muted); font-size: 14.5px; }
