/* SIDE A approved brand tokens; integration is a separate implementation step. */
@font-face {font-family:Manrope;src:url('./fonts/Manrope-Variable.woff2') format('woff2');font-weight:200 800;font-style:normal;font-display:swap;}
@font-face {font-family:'IBM Plex Mono';src:url('./fonts/IBMPlexMono-Regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap;}
:root {
  --sa-ink: #191B18;
  --sa-ivory: #F3EEDF;
  --sa-orange: #F36A3D;
  --sa-sage: #B6C6AF;
  --sa-butter: #E7CB78;
  --sa-deck: #242722;
  --sa-groove: #41463D;
  --sa-dust: #A9AA9F;
  --sa-stone: #65695C;
  --sa-orange-text: #A33717;
  --sa-error-dark: #FF9E96;
  --sa-error-light: #A6332B;
  --sa-success-light: #3F6144;
  --sa-font-sans: Manrope, Arial, sans-serif;
  --sa-font-mono: "IBM Plex Mono", monospace;
  --sa-spacing-xs: 4px;
  --sa-spacing-sm: 8px;
  --sa-spacing-md: 16px;
  --sa-spacing-lg: 24px;
  --sa-spacing-xl: 32px;
  --sa-spacing-xxl: 48px;
  --sa-spacing-section: 64px;
  --sa-radius-artwork: 8px;
  --sa-radius-card: 16px;
  --sa-radius-panel: 24px;
  --sa-radius-pill: 999px;
  --sa-motion-ms-feedback: 120ms;
  --sa-motion-ms-transition: 180ms;
  --sa-motion-ms-expansion: 240ms;
}
:root, [data-sa-theme="dark"] {
  --sa-background: #191B18;
  --sa-surface: #242722;
  --sa-text: #F3EEDF;
  --sa-text-secondary: #A9AA9F;
  --sa-accent: #F36A3D;
  --sa-on-accent: #191B18;
  --sa-accent-text: #F36A3D;
  --sa-border-decorative: #41463D;
  --sa-border-control: #A9AA9F;
  --sa-focus: #E7CB78;
  --sa-success: #B6C6AF;
  --sa-error: #FF9E96;
  --sa-progress-track: #A9AA9F;
  --sa-progress-fill: #F36A3D;
}
[data-sa-theme="light"] {
  --sa-background: #F3EEDF;
  --sa-surface: #FFFFFF;
  --sa-text: #191B18;
  --sa-text-secondary: #65695C;
  --sa-accent: #F36A3D;
  --sa-on-accent: #191B18;
  --sa-accent-text: #A33717;
  --sa-border-decorative: #D8D4C8;
  --sa-border-control: #65695C;
  --sa-focus: #191B18;
  --sa-success: #3F6144;
  --sa-error: #A6332B;
  --sa-progress-track: #65695C;
  --sa-progress-fill: #191B18;
}
@media (prefers-reduced-motion: reduce) { :root { --sa-motion-ms-feedback: 0ms; --sa-motion-ms-transition: 0ms; --sa-motion-ms-expansion: 0ms; } }
