/* tokens.css · filho de ../MASTER.md. Todo valor aqui existe lá; mude lá primeiro. */
:root{
  /* ── cor ──────────────────────────────────────────────── */
  --preto:#0A0A0A;            /* fundo */
  --carvao:#161311;           /* seção alternada */
  --marfim:#E8DBCB;           /* texto principal · 14,5:1 */
  --taupe:#AA9F93;            /* texto secundário · 7,6:1 */
  --ambar:#E29A2E;            /* a única luz · 8,4:1 */
  --ambar-claro:#E1A955;      /* botão · hover */
  --ambar-escuro:#C47F1F;     /* botão · pressionado */
  --bronze:#9B5E1F;           /* onda apagada · nunca texto */
  --fio:#241F1C;              /* fio entre linhas */
  --fio-forte:#675C51;        /* borda de componente · nunca texto */
  --desativado-fundo:#241F1C;
  --desativado-texto:#7A7068;
  --veu:rgba(10,10,10,.72);   /* fundo de pílula sobre foto */
  --veu-foto:linear-gradient(0deg,rgba(10,10,10,.9) 0%,rgba(10,10,10,.55) 60%,rgba(10,10,10,0) 100%); /* pé da foto do episódio, para o nome */
  --foto-em-breve:grayscale(1) brightness(.6);  /* episódio que ainda não saiu */
  /* logos das plataformas: a cor de marca só dentro do logo, como o laranja do Empreenda */
  --youtube:#FF0000;
  --youtube-miolo:#FFFFFF;
  --spotify:#1ED760;

  /* ── tipografia ───────────────────────────────────────── */
  --f-marca:'League Spartan',system-ui,sans-serif;
  --f-texto:'Inter',system-ui,sans-serif;
  --f-telex:'IBM Plex Mono',ui-monospace,Consolas,monospace;

  --t-nome:24.5cqw;                        /* League Spartan 900 · .8 · -.035em · da coluna */
  --t-nome-vw:clamp(3.6rem,24.5vw,7.3rem); /* fallback sem container query */
  --t-nome-desk:clamp(6rem,12.5vw,14rem);  /* CORTEZ na capa do computador */
  --t-pre-nome:5.6cqw;                     /* League Spartan 700 · +.34em */
  --t-pre-nome-vw:clamp(1.1rem,5.6vw,1.7rem);
  --t-pre-nome-desk:clamp(1.3rem,1.8vw,2rem);
  --t-convite:18.6cqw;                     /* PATROCINE · League Spartan 900 · .8 · -.03em · ~97% do bloco */
  --t-convite-vw:clamp(2.6rem,18.6vw,5.6rem);
  --t-frase:clamp(2.1rem,9vw,3.3rem);      /* League Spartan 700 · 1.04 · -.025em */
  --t-titulo:clamp(1.8rem,7.5vw,2.6rem);   /* League Spartan 800 · 1.06 · -.02em */
  --t-sub:1.35rem;                        /* League Spartan 700 · 1.15 */
  --t-corpo:1.0625rem;                     /* Inter 400 · 1.6 */
  --t-pequeno:.875rem;                     /* Inter 400 · 1.5 */
  --t-rotulo:.72rem;                       /* Plex Mono 500 · 1.4 · +.12em · caixa alta */

  /* ── espaço: base 4 px ────────────────────────────────── */
  --e-1:.25rem; --e-2:.5rem; --e-3:.75rem; --e-4:1rem; --e-5:1.5rem;
  --e-6:2rem; --e-7:3rem; --e-8:4rem; --e-9:6rem; --e-10:8rem;
  --coluna:30rem;             /* no celular e no tablet, a página mora nesta largura */
  --margem:1.25rem;           /* respiro lateral no celular */
  --largura:76rem;            /* no computador, as seções moram nesta largura */
  --margem-desk:clamp(2rem,5vw,4.5rem);  /* respiro lateral no computador */
  --leitura:38rem;            /* medida máxima de texto corrido no computador */
  --alvo:44px;                /* menor área tocável */
  --onda-altura:24px;         /* a onda do guia */
  --onda-barra:3px;
  --onda-vao:3px;
  --onda-mini-altura:14px;    /* a onda do marcador e do botão */
  --onda-mini-barra:2px;
  --onda-mini-vao:2px;
  --agulha-altura:22px;       /* a onda da temporada */
  --logo-plataforma:1.125rem; /* logo do YouTube e do Spotify nos botões */
  --sessao-largura:min(80vw,19rem);   /* cada cartão de convidado */
  --capa-foto-desk:64%;      /* no computador, a foto ocupa este tanto da capa, à direita */
  --veu-capa:linear-gradient(180deg,rgba(10,10,10,.55) 0%,rgba(10,10,10,0) 18%,rgba(10,10,10,0) 46%,rgba(10,10,10,.82) 72%,var(--preto) 100%);
  --veu-capa-desk:linear-gradient(180deg,rgba(10,10,10,.5) 0%,rgba(10,10,10,0) 22%,rgba(10,10,10,0) 55%,rgba(10,10,10,.75) 82%,var(--preto) 100%);

  /* ── forma ────────────────────────────────────────────── */
  --r-reto:0;                 /* padrão: cantos retos */
  --r-pilula:999px;           /* só pílula e marcador */
  --r-barra:2px;              /* as barras da onda, como na logo */

  /* ── camadas ──────────────────────────────────────────── */
  --z-conteudo:10; --z-topo:30; --z-guia:40;

  /* ── movimento ────────────────────────────────────────── */
  --ease-entrada:cubic-bezier(.16,1,.3,1);   /* tudo que entra */
  --ease-saida:cubic-bezier(.7,0,.84,0);     /* o que sai, sempre mais discreto */
  --ease-onda:cubic-bezier(.37,0,.63,1);     /* pulso da onda, em loop */
  /* rolagem: linear ("none" no GSAP) · não é token CSS, é regra */
  --d-micro:120ms;            /* hover, foco */
  --d-ui:240ms;               /* troca de estado, marcador */
  --d-saida:170ms;            /* 70% da troca */
  --d-entrada:600ms;          /* revelações */
  --d-nome:900ms;             /* cada letra do nome */
  --d-pulso:1800ms;           /* pulso da onda */
  --st-letra:45ms;            /* entre letras */
  --st-lista:60ms;            /* entre itens; total nunca passa de 500 ms */
  --st-barra:70ms;            /* entre barras do pulso */
  --atraso-nome:160ms;        /* entrada da capa */
  --atraso-selo:520ms;
  --atraso-guia:700ms;}

/* ── computador (a partir de 64rem): a tela é grande, a escala sobe ── */
@media (min-width:64rem){
  :root{
    --t-frase:clamp(2.6rem,3.6vw,3.8rem);
    --t-titulo:clamp(2.2rem,2.8vw,3rem);
    --t-corpo:1.125rem;
    --sessao-largura:21rem;
  }
}
