/*
 * Tokens WePeople para web.
 * Base: design-system/design-system.md. Blocos marcados "WEB" são adaptações para o site
 * (tipografia fluida, container, espaço de seção, superfície escura, movimento de entrada).
 */
:root {
  /* Marca */
  --wp-teal-light: #63C19E;
  --wp-teal: #5B9E8B;
  --wp-teal-dark: #2D6966;
  --wp-orange-light: #E3A346;
  --wp-orange: #E0843C;
  --wp-orange-dark: #DD6E38;
  --wp-purple-light: #8C3E90;
  --wp-purple: #5B3E90;
  --wp-purple-dark: #3F277A;

  /* Neutros */
  --wp-ink: #2A2342;
  --wp-ink-muted: #6B6B7A;
  --wp-ink-faint: #9A93A8;
  --wp-border: #E0DCE8;
  --wp-border-soft: #ECEAF1;
  --wp-white: #FFFFFF;
  --wp-surface-tint: #F7F5FA;
  --wp-night: #260A48; /* WEB: cor do wordmark do logo, fundo das seções escuras */

  /* Semânticos */
  --text-heading: var(--wp-ink);
  --text-body: var(--wp-ink);
  --text-secondary: var(--wp-ink-muted);
  --text-faint: var(--wp-ink-faint);
  --text-on-color: var(--wp-white);
  --surface-page: var(--wp-white);
  --surface-card: var(--wp-white);
  --surface-subtle: var(--wp-surface-tint);
  --border-default: var(--wp-border);
  --border-subtle: var(--wp-border-soft);

  /* Acento (troca com data-wp-theme). WEB: --on-accent é o texto sobre preenchimento de acento */
  --accent: var(--wp-purple);
  --accent-light: var(--wp-purple-light);
  --accent-dark: var(--wp-purple-dark);
  --on-accent: var(--wp-white);
  --accent-press: color-mix(in srgb, var(--accent) 80%, var(--wp-ink));
  --accent-text: var(--wp-purple); /* WEB: cor do acento quando é TEXTO sobre claro (contraste >= 4,5:1) */

  /* Fontes */
  --font-display: 'Lexend', system-ui, sans-serif;
  --font-body: 'Reddit Sans', system-ui, sans-serif;
  --fw-regular: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;

  /* WEB: escala fluida. Mínimo em 390px, máximo em 1440px. O sistema original (slides) parava em 44px. */
  --fs-hero: clamp(2.5rem, 1.35rem + 3.9vw, 4.5rem);     /* 40 → 72 */
  --fs-display: clamp(2rem, 1.3rem + 3.6vw, 3.5rem);  /* 32 → 56 */
  --fs-h1: clamp(2rem, 1.45rem + 2.35vw, 2.75rem);       /* 32 → 44 */
  --fs-h2: clamp(1.625rem, 1.25rem + 1.6vw, 2.25rem);    /* 26 → 36 */
  --fs-h3: clamp(1.25rem, 1.1rem + 0.65vw, 1.5rem);      /* 20 → 24 */
  --fs-h4: 1.125rem;                                     /* 18 */
  --fs-lead: clamp(1.0625rem, 1rem + 0.3vw, 1.25rem);    /* 17 → 20 */
  --fs-body: 1rem;
  --fs-body-sm: 0.875rem;
  --fs-label: 0.75rem;
  --fs-eyebrow: 0.75rem;
  --fs-caption: 0.6875rem;

  --lh-tight: 1.08;
  --lh-heading: 1.2;
  --lh-body: 1.6;

  --ls-display: -0.025em;
  --ls-heading: -0.015em;
  --ls-eyebrow: 0.16em;
  --ls-label: 0.08em;
  --measure-text: 68ch;

  /* Espaço */
  --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;

  /* WEB: layout. Breakpoints (não aceitam var em media query): 768px tablet, 1024px, 1280px desktop. */
  --container: 1200px;
  --container-narrow: 860px;
  --gutter: clamp(20px, 5vw, 48px);
  --section-y: clamp(64px, 4vw + 40px, 120px);

  /* Raio, borda */
  --radius-sm: 6px;
  --radius-md: 12px;
  --radius-lg: 20px;
  --radius-xl: 28px;
  --radius-pill: 999px;
  --border-width: 1px;
  --rule-height: 4px;

  /* Sombra (sempre roxo translúcido) */
  --shadow-sm: 0 1px 2px rgba(42, 35, 66, 0.06);
  --shadow-card: 0 2px 10px rgba(42, 35, 66, 0.07);
  --shadow-raised: 0 10px 30px rgba(42, 35, 66, 0.12);
  --shadow-focus: 0 0 0 3px rgba(91, 62, 144, 0.22);

  /* Movimento */
  --ease-standard: cubic-bezier(0.2, 0.8, 0.2, 1);
  --duration-fast: 120ms;
  --duration-base: 200ms;
  --duration-slow: 320ms;
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1); /* WEB: entrada de seções */
  --duration-reveal: 720ms;                  /* WEB */

  /* Degradê de assinatura */
  --wp-gradient: linear-gradient(100deg, var(--wp-teal-light) 0%, var(--wp-teal) 18%, var(--wp-orange-light) 45%, var(--wp-orange-dark) 58%, var(--wp-purple-light) 82%, var(--wp-purple-dark) 100%);
  --wp-gradient-vertical: linear-gradient(180deg, var(--wp-teal-light) 0%, var(--wp-orange-light) 50%, var(--wp-purple-dark) 100%);
}

/* Tema por container. WEB: sobre teal e laranja o texto do preenchimento é tinta (contraste), não branco. */
[data-wp-theme="teal"]   { --accent-text: var(--wp-teal-dark); --accent: var(--wp-teal);   --accent-light: var(--wp-teal-light);   --accent-dark: var(--wp-teal-dark);   --on-accent: var(--wp-ink); --shadow-focus: 0 0 0 3px rgba(91, 158, 139, 0.32); }
[data-wp-theme="orange"] { --accent-text: #B4501F; --accent: var(--wp-orange); --accent-light: var(--wp-orange-light); --accent-dark: var(--wp-orange-dark); --on-accent: var(--wp-ink); --shadow-focus: 0 0 0 3px rgba(224, 132, 60, 0.32); }
[data-wp-theme="purple"] { --accent-text: var(--wp-purple); --accent: var(--wp-purple); --accent-light: var(--wp-purple-light); --accent-dark: var(--wp-purple-dark); --on-accent: var(--wp-white); }

/* WEB: superfície escura. Os componentes leem estes tokens, então se adaptam sozinhos. */
.section--dark, [data-surface="dark"] {
  --text-heading: var(--wp-white);
  --text-body: rgba(255, 255, 255, 0.86);
  --text-secondary: rgba(255, 255, 255, 0.68);
  --text-faint: rgba(255, 255, 255, 0.5);
  --surface-page: var(--wp-night);
  --surface-card: rgba(255, 255, 255, 0.06);
  --surface-subtle: rgba(255, 255, 255, 0.04);
  --border-default: rgba(255, 255, 255, 0.2);
  --border-subtle: rgba(255, 255, 255, 0.12);
  --accent: var(--wp-white);
  --accent-light: var(--wp-teal-light);
  --accent-dark: var(--wp-white);
  --on-accent: var(--wp-night);
  --accent-text: var(--wp-white);
  --accent-press: color-mix(in srgb, var(--wp-white) 86%, var(--wp-night));
  --shadow-focus: 0 0 0 3px rgba(255, 255, 255, 0.35);
  background: var(--wp-night);
  color: var(--text-body);
}
