/* =====================================================================
   public-tokens.css — fonte unica de verdade visual das paginas de cliente.

   Antes deste arquivo cada pagina trazia a propria paleta: seis laranjas
   diferentes (#c96442, #e36f45, #ef7547, #e57547), dois fundos incompativeis
   (quase-preto frio x marrom quente) e o afiliado inteiro em verde-agua.

   Regra: nenhuma pagina define cor propria. Cada folha declara os seus nomes
   locais apontando para os tokens daqui, e a marca inteira muda num lugar so.

   Carregue SEMPRE antes do CSS especifico da pagina.
   ===================================================================== */

:root {
  /* ---- Marca ---- */
  --ct-accent:        #c96442;
  --ct-accent-hover:  #b45735;
  --ct-accent-quiet:  #d98a6b;
  --ct-accent-soft:   rgba(201, 100, 66, .12);
  --ct-accent-mid:    rgba(201, 100, 66, .22);
  --ct-accent-ring:   rgba(201, 100, 66, .45);
  /* Texto sobre o laranja cheio. Escuro de proposito: branco sobre #c96442
     da 3.9:1 e reprova no AA; este par da 4.8:1. */
  --ct-on-accent:     #1c1206;

  /* ---- Superficies (neutro quente) ---- */
  --ct-bg:         #131210;
  --ct-bg-2:       #171614;
  --ct-surface:    #1c1a17;
  --ct-surface-2:  #23201c;
  --ct-surface-3:  #2a2621;
  --ct-line:        rgba(245, 240, 232, .10);
  --ct-line-strong: rgba(245, 240, 232, .19);
  --ct-line-on-light: rgba(19, 18, 16, .24);
  --ct-muted-on-light: rgba(19, 18, 16, .66);
  --ct-accent-on-light: #7b351f;
  --ct-code-bg: #0b0d10;
  --ct-code-deep: #07080b;
  --ct-code-line: rgba(245, 240, 232, .09);

  /* ---- Texto ---- */
  --ct-ink:    #f5f0e8;
  --ct-muted:  #b3aa9c;
  --ct-soft:   #988f81;

  /* ---- Semanticos (status, nao marca) ---- */
  --ct-ok:         #52bb84;
  --ct-ok-soft:    rgba(82, 187, 132, .14);
  --ct-warn:       #d6a23d;
  --ct-warn-soft:  rgba(214, 162, 61, .14);
  --ct-danger:     #e5594f;
  --ct-danger-soft: rgba(229, 89, 79, .14);
  /* Tinta clara do vermelho, para TEXTO de erro sobre fundo escuro: o
     --ct-danger cheio da 4,4:1 sobre --ct-bg e nao fecha o AA em corpo de
     texto; esta fecha 8:1. Mesmo papel do --ct-accent-quiet para a marca. */
  --ct-danger-quiet: #f0a79f;
  --ct-info:       #6f9fd8;
  --ct-info-soft:  rgba(111, 159, 216, .14);

  /* ---- Forma ---- */
  --ct-r-sm:   6px;
  --ct-r-md:   8px;
  --ct-r-lg:   12px;
  --ct-r-xl:   16px;
  --ct-r-pill: 999px;
  --ct-shadow:    0 18px 48px rgba(0, 0, 0, .34);
  --ct-shadow-sm: 0 2px 10px rgba(0, 0, 0, .26);

  /* ---- Tipografia ---- */
  --ct-font: "Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --ct-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;

  /* ---- Ritmo ---- */
  --ct-space-1: 4px;
  --ct-space-2: 8px;
  --ct-space-3: 12px;
  --ct-space-4: 16px;
  --ct-space-5: 24px;
  --ct-space-6: 32px;
  --ct-space-7: 48px;
  --ct-space-8: 64px;
  --ct-duration-fast: .14s;
  --ct-duration-base: .18s;
  --ct-duration-enter: .28s;
  --ct-duration-data: .45s;
  --ct-ease-emphasized: cubic-bezier(.16, 1, .3, 1);
  --ct-focus-ring: 2px solid var(--ct-accent-ring);
  --ct-focus-offset: 3px;
  --ct-skeleton-surface: rgba(245, 240, 232, .07);
  --ct-skeleton-highlight: rgba(245, 240, 232, .12);
  --ct-overlay: rgba(19, 18, 16, .70);
  --ct-max: 1160px;
}

/* Foco visivel unico em todas as paginas. `:where()` mantem especificidade
   zero, entao qualquer folha de pagina consegue sobrescrever sem !important. */
:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
  outline: 2px solid var(--ct-accent-ring);
  outline-offset: 2px;
  border-radius: var(--ct-r-sm);
}

@media (prefers-reduced-motion: reduce) {
  :where(*) {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
    scroll-behavior: auto !important;
  }
}
