/* Copia di 01_Branding/Design System/ARVA/arva.tokens.css: si rigenera con tools/sync-design-system.py. */
/* ARVA - generado desde tokens.json por tools/build_tokens.py. No editar a mano. */

@font-face { font-family: 'Cabin'; font-style: normal; font-weight: 400 700; font-display: swap; src: url('../fonts/cabin-variable.woff2') format('woff2'); }
@font-face { font-family: 'Cabin'; font-style: italic; font-weight: 400 700; font-display: swap; src: url('../fonts/cabin-italic-variable.woff2') format('woff2'); }
@font-face { font-family: 'Open Sans'; font-style: normal; font-weight: 400 700; font-display: swap; src: url('../fonts/opensans-variable.woff2') format('woff2'); }

:root {
  --brand-wine: #7d1f31;
  --brand-beige: #e8d8c8;
  --brand-green: #5e6b32;
  --surface-page: #fbf8f4;
  --surface: #ffffff;
  --surface-sunken: #f4ece3;
  --surface-beige: #e8d8c8;
  --surface-wine: #7d1f31;
  --surface-green: #5e6b32;
  --ink: #3a2226;
  --ink-muted: #6a5753;
  --on-brand: #e8d8c8;
  --on-brand-green: #b3bd7f;
  --on-green: #e8d8c8;
  --accent: #7d1f31;
  --accent-fill: #7d1f31;
  --accent-fill-hover: #64182a;
  --on-accent: #e8d8c8;
  --accent-soft: #f2e3e5;
  --green-ink: #4f5a2a;
  --green-fill: #4a5427;
  --green-fill-hover: #3a421e;
  --green-soft: #eceedf;
  --border: #e2d5c6;
  --border-control: #8f7b72;
  --focus-ring: #7d1f31;
  --success: #4a6327;
  --success-soft: #e9eedd;
  --warning: #a3530b;
  --warning-soft: #f8ead9;
  --danger: #b42318;
  --danger-soft: #f9e2df;
  --info: #2b5f8a;
  --info-soft: #e1ebf4;
  --shadow-raised: 0 1px 2px rgba(58,34,38,0.08), 0 2px 8px rgba(58,34,38,0.06);
  --shadow-overlay: 0 8px 32px rgba(58,34,38,0.18);
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 24px;
  --space-6: 32px;
  --space-7: 48px;
  --space-8: 64px;
  --space-9: 96px;
  --radius-0: 0px;
  --radius-sm: 2px;
  --radius-md: 4px;
  --radius-pill: 999px;
  --cut-sm: 12px;
  --cut-md: 24px;
  --cut-lg: 48px;
  --font-text: Cabin, "Gill Sans", "Gill Sans MT", Calibri, sans-serif;
  --font-num: "Open Sans", "Segoe UI", Arial, sans-serif;
  color-scheme: light;
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --surface-page: #1c1416;
    --surface: #271c1f;
    --surface-sunken: #33262a;
    --surface-beige: #3a2c30;
    --surface-green: #46502a;
    --ink: #ede2d6;
    --ink-muted: #b9a79d;
    --accent: #e0899a;
    --accent-fill: #9a2b40;
    --accent-fill-hover: #8a2a3d;
    --accent-soft: #3d2229;
    --green-ink: #b3bd7f;
    --green-soft: #2a2e1c;
    --border: #3d2e32;
    --border-control: #8a7670;
    --focus-ring: #e0899a;
    --success: #a9c37f;
    --success-soft: #263019;
    --warning: #e6a35c;
    --warning-soft: #3a2a17;
    --danger: #f0857a;
    --danger-soft: #3d1f1d;
    --info: #8ab8de;
    --info-soft: #1c2b38;
    --shadow-raised: 0 1px 2px rgba(0,0,0,0.4), 0 2px 8px rgba(0,0,0,0.3);
    --shadow-overlay: 0 8px 32px rgba(0,0,0,0.55);
    color-scheme: dark;
  }
}

:root[data-theme="dark"] {
  --surface-page: #1c1416;
  --surface: #271c1f;
  --surface-sunken: #33262a;
  --surface-beige: #3a2c30;
  --surface-green: #46502a;
  --ink: #ede2d6;
  --ink-muted: #b9a79d;
  --accent: #e0899a;
  --accent-fill: #9a2b40;
  --accent-fill-hover: #8a2a3d;
  --accent-soft: #3d2229;
  --green-ink: #b3bd7f;
  --green-soft: #2a2e1c;
  --border: #3d2e32;
  --border-control: #8a7670;
  --focus-ring: #e0899a;
  --success: #a9c37f;
  --success-soft: #263019;
  --warning: #e6a35c;
  --warning-soft: #3a2a17;
  --danger: #f0857a;
  --danger-soft: #3d1f1d;
  --info: #8ab8de;
  --info-soft: #1c2b38;
  --shadow-raised: 0 1px 2px rgba(0,0,0,0.4), 0 2px 8px rgba(0,0,0,0.3);
  --shadow-overlay: 0 8px 32px rgba(0,0,0,0.55);
  color-scheme: dark;
}

/* Estilos de texto. Las cifras van siempre con tabular-nums. */
.arva-display { font-family: var(--font-text); font-size: 48px; line-height: 52px; font-weight: 700; letter-spacing: -0.01em; }
.arva-h1 { font-family: var(--font-text); font-size: 36px; line-height: 42px; font-weight: 700; }
.arva-h2 { font-family: var(--font-text); font-size: 28px; line-height: 34px; font-weight: 700; }
.arva-h3 { font-family: var(--font-text); font-size: 22px; line-height: 28px; font-weight: 600; }
.arva-h4 { font-family: var(--font-text); font-size: 18px; line-height: 24px; font-weight: 600; }
.arva-body-lg { font-family: var(--font-text); font-size: 18px; line-height: 28px; font-weight: 400; }
.arva-body { font-family: var(--font-text); font-size: 16px; line-height: 24px; font-weight: 400; }
.arva-body-sm { font-family: var(--font-text); font-size: 14px; line-height: 20px; font-weight: 400; }
.arva-label { font-family: var(--font-text); font-size: 12px; line-height: 16px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; }
.arva-caption { font-family: var(--font-text); font-size: 12px; line-height: 16px; font-weight: 400; }
.arva-num-xl { font-family: var(--font-num); font-size: 40px; line-height: 44px; font-weight: 600; letter-spacing: -0.01em; font-variant-numeric: tabular-nums; }
.arva-num-lg { font-family: var(--font-num); font-size: 28px; line-height: 32px; font-weight: 600; font-variant-numeric: tabular-nums; }
.arva-num { font-family: var(--font-num); font-size: 16px; line-height: 24px; font-weight: 600; font-variant-numeric: tabular-nums; }
.arva-num-sm { font-family: var(--font-num); font-size: 14px; line-height: 20px; font-weight: 400; font-variant-numeric: tabular-nums; }
