/**
 * MP-GEO Chrome V3 Trust · tokens.css
 * Working subtitle (brief only): Newsroom Local
 *
 * Editorial local-publication canvas. Warm-newsprint / clean white.
 * Condensed display + readable body sans. Distinct from V2 cool stone + DM Sans.
 *
 * Skins override --accent / --primary only. Do not fork chrome.
 */

:root {
  /* —— Newsprint / ink canvas (NOT V2 cool stone) —— */
  --paper-0: #FAFAF8;
  --paper-1: #F3F2EE;
  --paper-2: #E8E6E0;
  --ink: #111111;
  --ink-muted: #3D3D3A;
  --ink-subtle: #6B6B66;
  --line: #D9D7D0;
  --line-strong: #B8B5AC;
  --surface: #FFFFFF;
  --surface-2: #FAFAF8;

  /* —— Base accent (overridden by skins) —— */
  --accent: #B00020;
  --accent-hover: #8A0019;
  --accent-soft: #F7E8EB;
  --accent-bar: #B00020;
  --on-accent: #FFFFFF;
  --focus: #1A2B4A;
  --primary: var(--accent);
  --primary-hover: var(--accent-hover);

  /* —— Type: condensed display + Source Sans 3 body (NOT V2 DM Sans-only) —— */
  --font-display: "Roboto Condensed", "Barlow Condensed", "Arial Narrow", "Helvetica Neue", Arial, sans-serif;
  --font-sans: "Source Sans 3", "Source Sans Pro", "Helvetica Neue", Helvetica, Arial, system-ui, sans-serif;
  --font-masthead: "Roboto Condensed", "Barlow Condensed", "Arial Narrow", sans-serif;
  --font-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;

  --fs-h1: clamp(1.875rem, 4.2vw, 2.75rem);
  --fs-h2: clamp(1.375rem, 2.6vw, 1.75rem);
  --fs-h3: 1.125rem;
  --fs-body: 1.0625rem;
  --fs-lede: 1.125rem;
  --fs-small: 0.8125rem;
  --fs-xs: 0.75rem;
  --fs-eyebrow: 0.6875rem;
  --fs-masthead: clamp(1.375rem, 2.5vw, 1.75rem);

  --fw-regular: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;

  --lh-tight: 1.15;
  --lh-snug: 1.3;
  --lh-body: 1.65;
  --lh-relaxed: 1.75;

  --ls-display: -0.01em;
  --ls-snug: 0;
  --ls-label: 0.08em;
  --ls-eyebrow: 0.1em;

  /* —— Radius: editorial, quieter than V2 geometric pills —— */
  --radius-xs: 2px;
  --radius-sm: 3px;
  --radius-md: 4px;
  --radius-lg: 6px;
  --radius-pill: 999px;
  --radius-photo: 2px;

  /* —— Shadows: almost flat (newspaper page, not UI dock) —— */
  --shadow-flat: none;
  --shadow-card: none;
  --shadow-dock: none;

  /* —— Wraps —— */
  --wrap-max: 1100px;
  --wrap-wide: 1240px;
  --wrap-article: 680px;
  --wrap-gutter: 1.25rem;

  /* —— Spacing —— */
  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.5rem;
  --space-6: 2rem;
  --space-7: 2.75rem;
  --space-8: 3.75rem;
  --section-gap: clamp(2.25rem, 5vw, 3.75rem);
  --section-gap-tight: 1.5rem;
  --header-h: auto;
  --touch-min: 44px;

  /* —— Breakpoints (document; used in media queries) —— */
  /* 320 / 768 / 1024 / 1280+ */

  /* —— Semantic aliases —— */
  --bg: var(--paper-0);
  --text: var(--ink);
  --text-2: var(--ink-muted);
  --text-muted: var(--ink-subtle);
  --border: var(--line);
}

/* Utility: thin editorial rule */
.v3-rule {
  border: 0;
  border-top: 1px solid var(--line);
  margin: 0;
}

.v3-rule--strong {
  border-top-color: var(--ink);
  border-top-width: 2px;
}

.v3-display {
  font-family: var(--font-display);
  font-weight: var(--fw-bold);
  letter-spacing: var(--ls-display);
  line-height: var(--lh-tight);
}

.v3-body {
  font-family: var(--font-sans);
}
