/* tokens.css: the world's custom properties and the one font, shared by every page under
   public/ (styles.css lays out the chat shell, pages.css the standalone pages, partner.html
   carries its own layout inline). Light is the default; :root[data-theme="dark"] is the same
   structure on the curing-chamber palette. The inline script in each <head> sets data-theme
   before first paint from the stored appearance choice (auto / light / dark). */
/* Geist, self-hosted: the one variable file Google Fonts serves for the latin subset (wght 100 to
   900, so 400/500/600/700 all come from it), under /fonts/ so no visitor request leaves the
   domain. Variable fonts synthesise nothing: every weight the CSS asks for is a real instance. */
@font-face { font-family: "Geist"; font-style: normal; font-weight: 100 900; font-display: swap; src: url("/fonts/geist-variable-latin.woff2") format("woff2"); }
:root {
  color-scheme: light;
  --paper: #ffffff;        /* the page */
  --band: #ffffff;         /* the top and bottom bands */
  --well: #ffffff;         /* inputs, rows, cards */
  --soft: #fafaf9;         /* notices, the sign-in note */
  --ink: #18181b;
  --ink-2: #52525b;
  --ink-3: #71717a;        /* placeholder and framing; 4.8:1 on paper */
  --rule: #e4e4e7;         /* hairlines */
  --rule-soft: #f0f0f2;
  --line: #e4e4e7;         /* input and row borders */
  --accent: #1f6f6b;       /* teal: every control and link, nothing decorative */
  --accent-hover: #165552;
  --accent-tint: #e6f1f0;
  --on-accent: #ffffff;
  --danger: #b3261e;
  --muted-fill: #e7e5e4;   /* the disabled send key */
  --play: rgba(24, 24, 27, .78);
  --play-ink: #ffffff;
  /* the paywall: a raised white card in light, the one light sheet on the page in dark */
  --sheet: #ffffff;
  --sheet-ink: #18181b;
  --sheet-ink-2: #52525b;
  --sheet-link: #1f6f6b;
  --sheet-line: #e4e4e7;
  --sheet-shadow: 0 12px 32px -16px rgba(24, 24, 27, .22);
  --tier-bg: #ffffff;
  --tier-shadow: 0 10px 24px -14px rgba(31, 111, 107, .35);
  --plan-bg: #ffffff;
  --plan-ink: #18181b;
  --plan-line: #e4e4e7;
  --plan-hover-bg: #e6f1f0;
  --plan-hover-ink: #165552;
  --plan-hover-line: #1f6f6b;
  --font: "Geist", system-ui, -apple-system, "Segoe UI", sans-serif;
  --col: 760px;
  --r: 10px;
  --r-sm: 6px;
  --r-card: 14px;
  --ease: cubic-bezier(.2, .8, .2, 1);
}
:root[data-theme="dark"] {
  color-scheme: dark;
  --paper: #141618;
  --band: #0e1011;
  --well: #1b1e21;
  --soft: #1b1e21;
  --ink: #efece4;
  --ink-2: #b5b0a4;
  --ink-3: #8f8b81;        /* 5.3:1 on the ground, 4.9:1 in a well */
  --rule: #2c2f33;
  --rule-soft: #222528;
  --line: #3a3e43;
  --accent: #e0603f;
  --accent-hover: #f07a58;
  --accent-tint: #3a2119;
  --on-accent: #141618;
  --danger: #ff8a70;
  --muted-fill: #24272b;
  --play: #e0603f;
  --play-ink: #141618;
  --sheet: #1b1e21;
  --sheet-ink: #efece4;
  --sheet-ink-2: #b5b0a4;
  --sheet-link: #e0603f;
  --sheet-line: #3a3e43;
  --sheet-shadow: none;
  --tier-bg: #141618;
  --tier-shadow: 0 10px 24px -14px rgba(224, 96, 63, .35);
  --plan-bg: #141618;
  --plan-ink: #efece4;
  --plan-line: #3a3e43;
  --plan-hover-bg: #e0603f;
  --plan-hover-ink: #141618;
  --plan-hover-line: #e0603f;
}
