/* Self-hosted official fonts; OFL licenses accompany each file. */
@font-face{font-family:Sora;src:url('../fonts/Sora.woff2') format('woff2');font-weight:100 800;font-display:swap}
@font-face{font-family:'Plus Jakarta Sans';src:url('../fonts/PlusJakartaSans.woff2') format('woff2');font-weight:200 800;font-display:swap}
@font-face{font-family:'IBM Plex Mono';src:url('../fonts/IBMPlexMono-Regular.woff2') format('woff2');font-weight:400;font-display:swap}
/* ==========================================================================
   GLIFO · Design tokens oficiais (v1.0 · 2026-10-20)
   Fonte de verdade: DESIGN-SYSTEM-OFICIAL-GLIFO.md (mesma pasta).
   Camadas: 1) primitivos de marca  2) apoio  3) semânticos  4) tipografia,
   espaço, forma, sombra e movimento. Componentes só leem a camada semântica.
   ========================================================================== */


:root {
  /* ---------- 1. Primitivos de marca ---------- */
  --glifo-ink: #121212;            /* tinta: texto, traço, seções escuras */
  --glifo-creme: #F3ECD2;          /* papiro: fundo base da marca */
  --glifo-laranja: #F97028;        /* primária: CTA, pupila, foco */
  --glifo-laranja-hover: #E56010;
  --glifo-laranja-pressed: #C24F08;
  --glifo-laranja-tint: #FDE4D4;
  --glifo-laranja-texto: #8A3A04;  /* texto sobre o tint */
  --glifo-branco-quente: #FFFEFB;  /* cards, inputs, superfícies elevadas */
  --glifo-neutro: #EFEEEC;         /* campos, acordeões, áreas internas */
  --glifo-divisor: #C4C4CA;
  --glifo-preto: #000000;          /* rodapé */
  --glifo-branco: #FFFFFF;

  /* ---------- 2. Apoio (ilustração, dados, demos de clientes; nunca na assinatura) ---------- */
  --apoio-rosa: #F489A3;
  --apoio-manga: #F3A20F;
  --apoio-amarelo: #F0BB0D;
  --apoio-azul: #3185F5;
  --estado-sucesso: #2C7A5A;
  --estado-erro: #811933;
  --estado-alerta: #F0BB0D;
  --estado-info: #3185F5;

  /* ---------- 3. Semânticos (tema claro / papiro) ---------- */
  --bg-pagina: var(--glifo-creme);
  --bg-superficie: var(--glifo-branco-quente);
  --bg-campo: var(--glifo-neutro);
  --bg-invertido: var(--glifo-ink);
  --bg-marca: var(--glifo-laranja);
  --bg-marca-hover: var(--glifo-laranja-hover);
  --bg-marca-pressed: var(--glifo-laranja-pressed);
  --bg-marca-suave: var(--glifo-laranja-tint);
  --texto: var(--glifo-ink);
  --texto-secundario: rgba(18, 18, 18, 0.65);
  --texto-terciario: rgba(18, 18, 18, 0.5);
  --texto-sobre-marca: var(--glifo-ink);      /* branco sobre o laranja não passa em contraste */
  --texto-invertido: var(--glifo-creme);
  --texto-invertido-secundario: rgba(243, 236, 210, 0.7);
  --texto-marca: var(--glifo-laranja-pressed);
  --borda: var(--glifo-divisor);
  --borda-suave: rgba(18, 18, 18, 0.16);
  --borda-forte: var(--glifo-ink);
  --borda-invertida: rgba(243, 236, 210, 0.16);
  --foco: var(--glifo-ink);

  /* ---------- 4a. Tipografia ---------- */
  --fonte-titulo: 'Sora', ui-sans-serif, system-ui, sans-serif;
  --fonte-texto: 'Plus Jakarta Sans', ui-sans-serif, system-ui, sans-serif;
  --fonte-mono: 'IBM Plex Mono', ui-monospace, Menlo, monospace;
  --fonte-produto: 'Inter', ui-sans-serif, system-ui, sans-serif;  /* app logado (DS interno) */

  --t-display: clamp(2.75rem, 1.6rem + 4.6vw, 6rem);   /* H1 44 → 96 */
  --t-h2: clamp(2.25rem, 1.7rem + 2.2vw, 4rem);        /* 36 → 64 */
  --t-h3: clamp(1.375rem, 1.1rem + 1.1vw, 2.5rem);     /* 22 → 40 */
  --t-h4: clamp(1rem, 0.95rem + 0.25vw, 1.25rem);      /* 16 → 20 */
  --t-corpo-g: clamp(1.125rem, 1.08rem + 0.2vw, 1.25rem); /* 18 → 20 */
  --t-corpo: 1rem;
  --t-pequeno: 0.875rem;
  --t-legenda: 0.8125rem;
  --peso-titulo: 400;
  --peso-texto: 330;
  --tracking-display: -0.045em;
  --tracking-titulo: -0.03em;
  --tracking-mono: 0.04em;

  /* ---------- 4b. Espaço · escala Wedjat (as frações do Olho de Hórus dobram: 2·4·8·16·32·64) ---------- */
  --e-2: 0.125rem;  --e-4: 0.25rem;  --e-6: 0.375rem; --e-8: 0.5rem;   --e-12: 0.75rem;
  --e-16: 1rem;     --e-20: 1.25rem; --e-24: 1.5rem;  --e-32: 2rem;    --e-40: 2.5rem;
  --e-48: 3rem;     --e-64: 4rem;    --e-80: 5rem;    --e-120: 7.5rem; --e-160: 10rem;
  --secao: clamp(4.5rem, 3rem + 6vw, 8.5rem);
  --gutter: clamp(1.5rem, 1rem + 2vw, 3rem);
  --largura-max: 1240px;

  /* ---------- 4c. Forma ---------- */
  --raio-inline: 2px;
  --raio-produto: 5px;      /* app logado */
  --raio-controle: 8px;     /* CTA, input, chip */
  --raio-card: 12px;
  --raio-bloco: 24px;
  --raio-pilula: 80px;      /* cartucho */
  --traco: 1px;

  /* ---------- 4d. Sombra ---------- */
  --sombra-contorno: inset 0 0 0 1px rgba(18, 18, 18, 0.16);
  --sombra-contorno-forte: inset 0 0 0 2px rgba(18, 18, 18, 0.9);
  --sombra-erro: inset 0 0 0 1px var(--estado-erro);
  --sombra-erro-forte: inset 0 0 0 2px var(--estado-erro);
  --sombra-linha: 0 1px 0 rgba(196, 196, 202, 0.7);
  --sombra-flutuante: 0 1.5rem 4.375rem 0 rgba(18, 18, 18, 0.12);
  --sombra-flutuante-forte: 0 2rem 5rem -1rem rgba(18, 18, 18, 0.35);

  /* ---------- 4e. Movimento ---------- */
  --dur-rapida: 160ms;      /* CTA: raio, seta, deslocamento */
  --dur-media: 250ms;       /* nav, acordeão */
  --dur-lenta: 400ms;       /* links editoriais, chips */
  --dur-cena: 900ms;        /* revelações de seção, desenho do olho */
  --curva-saida: cubic-bezier(0.16, 1, 0.3, 1);
  --curva-editorial: cubic-bezier(0.8, 0, 0.2, 1);
}

/* Seções escuras (tinta): troca os semânticos, mantém o laranja */
.tema-tinta {
  --bg-pagina: var(--glifo-ink);
  --bg-superficie: #1C1C1B;
  --bg-campo: #242423;
  --texto: var(--glifo-creme);
  --texto-secundario: rgba(243, 236, 210, 0.7);
  --texto-terciario: rgba(243, 236, 210, 0.5);
  --borda: rgba(243, 236, 210, 0.16);
  --borda-suave: rgba(243, 236, 210, 0.12);
  --borda-forte: var(--glifo-creme);
  --foco: var(--glifo-creme);
}
