/* =============================================================
   VOIC-AI — Colors & Type
   Source of truth for shared design tokens.
   ============================================================= */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');

:root {
  /* Brand palette from VOIC brandbook */
  --voic-black: #0D1821;
  --voic-tan: #EBE5DD;
  --voic-orange: #EF7B45;
  --voic-orange-base: #E85830;
  --voic-orange-hot: #FB180D;
  --voic-white: #FFFFFF;

  /* Extended palette */
  --voic-black-900: #0D1821;
  --voic-black-800: #152333;
  --voic-black-700: #243244;
  --voic-tan-050: #FBF8F4;
  --voic-tan-100: #F6F1EA;
  --voic-tan-200: #EBE5DD;
  --voic-tan-300: #D8CEC1;
  --voic-orange-050: #FFF1EA;
  --voic-orange-100: #FFE0D1;
  --voic-orange-200: #FBC0A2;
  --voic-orange-400: #EF7B45;
  --voic-orange-500: #E85830;
  --voic-orange-600: #C84223;
  --voic-orange-700: #9D2E19;

  /* Semantic roles */
  --fg-1: var(--voic-black);
  --fg-2: #485566;
  --fg-3: #788291;
  --fg-on-dark: var(--voic-white);
  --fg-on-orange: var(--voic-white);

  --bg-1: var(--voic-white);
  --bg-2: var(--voic-tan-050);
  --bg-3: var(--voic-tan-100);
  --bg-inverted: var(--voic-black);
  --bg-accent: var(--voic-orange-base);

  --border-1: rgba(13,24,33,0.10);
  --border-2: rgba(13,24,33,0.16);
  --border-accent: rgba(232,88,48,0.34);

  --success: #16805A;
  --warning: #B7791F;
  --danger: #B42318;

  /* Typography */
  --font-display: 'Inter', ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  --font-body: 'Inter', ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  --font-mono: ui-monospace, 'SF Mono', Menlo, Consolas, monospace;

  --fs-xs: 12px;
  --fs-sm: 14px;
  --fs-base: 16px;
  --fs-md: 18px;
  --fs-lg: 20px;
  --fs-xl: 24px;
  --fs-2xl: 32px;
  --fs-3xl: 40px;
  --fs-4xl: 56px;
  --fs-5xl: 72px;

  --lh-tight: 1.05;
  --lh-snug: 1.25;
  --lh-normal: 1.5;
  --lh-loose: 1.7;

  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 14px;
  --radius-xl: 20px;
  --radius-full: 9999px;

  --shadow-1: 0 1px 2px rgba(13,24,33,.07), 0 1px 1px rgba(13,24,33,.05);
  --shadow-2: 0 8px 22px rgba(13,24,33,.08), 0 2px 6px rgba(13,24,33,.05);
  --shadow-3: 0 22px 60px rgba(13,24,33,.14), 0 8px 18px rgba(13,24,33,.06);
  --shadow-orange: 0 16px 34px rgba(232,88,48,.28);
  --ring-focus: 0 0 0 4px rgba(239,123,69,.28);

  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-10: 40px;
  --space-12: 48px;
  --space-16: 64px;
  --space-20: 80px;
  --space-24: 96px;

  --ease-standard: cubic-bezier(.2,.7,.2,1);
  --ease-entry: cubic-bezier(0,.6,.3,1);
  --dur-fast: 120ms;
  --dur-base: 200ms;
  --dur-slow: 360ms;
}

.voic-typography,
.voic-typography * { box-sizing: border-box; }

.voic-typography {
  font-family: var(--font-body);
  color: var(--fg-1);
  font-size: var(--fs-base);
  line-height: var(--lh-normal);
}

h1.voic,
h2.voic,
h3.voic {
  margin: 0;
  font-family: var(--font-display);
  color: var(--fg-1);
  line-height: var(--lh-tight);
  letter-spacing: 0;
}

p.voic {
  color: var(--fg-2);
  line-height: var(--lh-loose);
}
