/**
 * Generated from Substack — DESIGN.md
 * https://www.webdesignhot.com/design.md/
 */
:root {
  /* role tokens (resolved) */
  --bg: #ffffff;
  --surface: #fafaf7;
  --surface-alt: #fafaf7;
  --text: #363737;
  --text-dim: #363737;
  --text-faint: #a8a8a8;
  --brand: #ff6719;
  --on-brand: #ffffff;
  --border: rgba(0, 0, 0, 0.10);
  --border-strong: rgba(0, 0, 0, 0.20);
  --success: #0d8050;
  --warning: #d97706;
  --danger: #dc2626;

  /* full color palette */
  --color-bg: #ffffff;
  --color-bg-elev: #fafaf7;
  --color-bg-cream: #fbf9f4;
  --color-bg-soft: #f6f6f3;
  --color-surface: #ffffff;
  --color-surface-warm: #fafaf7;
  --color-text: #363737;
  --color-text-strong: #1a1a1a;
  --color-text-soft: #666c70;
  --color-text-faint: #a8a8a8;
  --color-text-muted: #878787;
  --color-text-link: #363737;
  --color-brand: #ff6719;
  --color-brand-hover: #e85412;
  --color-brand-deep: #cc4a0e;
  --color-brand-tint: rgba(255, 103, 25, 0.10);
  --color-brand-tint-strong: rgba(255, 103, 25, 0.18);
  --color-on-brand: #ffffff;
  --color-border: rgba(0, 0, 0, 0.10);
  --color-border-strong: rgba(0, 0, 0, 0.20);
  --color-border-soft: rgba(0, 0, 0, 0.06);
  --color-border-warm: rgba(0, 0, 0, 0.08);
  --color-selection-bg: rgba(255, 103, 25, 0.20);
  --color-success: #0d8050;
  --color-warning: #d97706;
  --color-danger: #dc2626;
  --color-info: #2563eb;
  --color-shadow-soft: rgba(0, 0, 0, 0.06);
  --color-shadow-medium: rgba(0, 0, 0, 0.10);
  --color-reading-rule: rgba(0, 0, 0, 0.08);

  /* type */
  --display-size: 56px;
  --h1-size: 40px;
  --h2-size: 32px;
  --body-size: 19px;
  --label-size: 13px;
  --body-line-height: 1.55;
  --display-tracking: -0.02em;

  /* shape */
  --radius-button: 6px;
  --radius-card: 12px;
  --radius-pill: 9999px;

  /* spacing */
  --space-xs: 4px;
  --space-sm: 8px;
  --space-md: 16px;
  --space-lg: 32px;
  --space-xl: 48px;

  /* fonts */
  --font-display: 'Cahuenga', ui-sans-serif, system-ui, sans-serif;
  --font-body:    'Spectral', ui-sans-serif, system-ui, sans-serif;
  --font-mono:    'Monaco', ui-monospace, monospace;
}
