/* --------------------------------------------------------------------------
   FONTES DA CASA — auto-hospedadas, licença livre (SIL Open Font License 1.1)

   Inter (texto) e Manrope (títulos). Ficam AQUI, e não num tema, porque são
   o default neutro: qualquer projeto que copie o core já nasce com tipografia
   de verdade em vez de cair na fonte do sistema. O tema do cliente sobrescreve
   --display/--sans quando tiver fonte própria.

   Carregadas do próprio servidor, nunca do Google. Duas razões, e as duas
   sozinhas já decidem: o §1 do contrato pede @font-face local, e a CSP do
   site (_headers) declara font-src 'self' — um <link> para fonts.googleapis
   seria bloqueado sem aviso, do mesmo jeito silencioso que um 404 de fonte.

   São arquivos VARIÁVEIS: um por família cobre toda a faixa de peso, no lugar
   de um arquivo por peso. Por isso não há o par .woff do §1 — woff não carrega
   fonte variável, e todo navegador que entende fonte variável entende woff2.
   Cada família vem em dois recortes: latin e latin-ext (o segundo carrega só
   se a página pedir um caractere que o primeiro não tem).

   Créditos e licença: fontes/biblioteca/LICENCA.md
   -------------------------------------------------------------------------- */

@font-face{
  font-family:'Inter';
  src:url('/imersao/fontes/Inter-latin.woff2') format('woff2');
  font-weight:100 900;font-style:normal;font-display:swap;
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face{
  font-family:'Inter';
  src:url('/imersao/fontes/Inter-latin-ext.woff2') format('woff2');
  font-weight:100 900;font-style:normal;font-display:swap;
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face{
  font-family:'Manrope';
  src:url('/imersao/fontes/Manrope-latin.woff2') format('woff2');
  font-weight:200 800;font-style:normal;font-display:swap;
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face{
  font-family:'Manrope';
  src:url('/imersao/fontes/Manrope-latin-ext.woff2') format('woff2');
  font-weight:200 800;font-style:normal;font-display:swap;
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}

/* ==========================================================================
   CORE — tokens
   A interface entre os componentes e a marca do projeto.
   Aqui ficam apenas DEFAULTS NEUTROS. A identidade do cliente entra
   sobrescrevendo estes mesmos nomes em core/temas/<projeto>.css.
   Nenhum componente pode ler cor, fonte ou espaçamento fora desta lista.
   ========================================================================== */

:root{
  color-scheme:only light;

  /* ---- Superfícies base do projeto -------------------------------------
     Os dois escuros são vizinhos de propósito: a diferença entre eles é
     quase imperceptível. Salto forte de tom entre seções suja a página. */
  --dark:#0a0a0a;
  --dark-rgb:10,10,10;
  --dark-2:#131313;
  --light:#ffffff;
  --light-2:#f4f2ee;

  /* ---- Marca ---- */
  --accent:#8f8f8f;      /* cor de destaque — trocada pelo tema */
  --accent-2:#6e6e6e;    /* apoio do destaque */

  /* ---- Tipografia ---- */
  --display:'Manrope',-apple-system,'Segoe UI',Helvetica,Arial,sans-serif;
  --sans:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;
  --fs-body:17px;
  --lh-body:1.6;
  --ls-body:.05em;

  /* ---- Grid e ritmo ---- */
  --pad:clamp(20px,5vw,72px);   /* respiro lateral — só o .wrap consome */
  --max:1240px;                 /* largura da coluna */
  --nav-h:84px;                 /* altura do menu fixo */
  /* Respiro entre dobras. Piso de 110px garante ~220px de vão real entre
     duas seções (110 de cada lado), mesmo em telas baixas. Fonte única:
     tudo que separa seções lê esta variável, nunca um clamp solto. */
  --sec-gap:clamp(110px,14vh,160px);

  /* ---- Forma ----
     Projeto flat (Liberta, Tarvos): --radius-media:0.
     Projeto arredondado (Terceira Onda): --radius-media:16px. */
  --radius-pill:1000px;
  --radius-media:0px;

  /* ---- Sobreposição ----
     Existia uma escala aqui que ninguém tinha escrito: botão flutuante 90,
     menu fixo 100, aviso de cookies 150, drawer 200, toast 900. Cada
     componente novo adivinhava um número e torcia. --z-overlay nomeia o
     degrau em que mora QUALQUER sobreposição que cobre a página inteira —
     modal, drawer, painel de preferências. Fica acima do menu fixo de
     propósito: uma sobreposição que passa por baixo do menu é um bug caro
     de achar. O toast segue mais alto, porque ele avisa SOBRE a
     sobreposição ("não foi possível enviar") e precisa ser visto.

     QUEM USA ISTO, na prática: sobreposição que NÃO é <dialog>. Um <dialog>
     aberto com showModal() vai para a top layer, que fica acima de todo
     z-index e não lê nenhum — os quatro diálogos da casa não têm onde
     consumir este token, e não é falta deles. Hoje quem consome é o
     navegacao/drawer-fullscreen. A barra do overlay/aviso-cookies fica de
     fora de propósito, num degrau ABAIXO: ela não bloqueia nada, e no mesmo
     degrau de um drawer ela venceria pelo desempate de ordem de documento —
     barra de cookies grudada por cima do menu.

     --veil é o véu escuro atrás dessas peças. O valor aqui é o padrão da
     casa; um componente com razão de desenho para outro grau declara a
     própria custom property e diz por quê na ficha — o showreel escurece
     mais, porque vídeo pede sala escura, e o drawer escurece menos, porque
     existe justamente para manter o contexto visível atrás. */
  --veil:color-mix(in srgb,var(--dark) 78%,transparent);
  --z-overlay:200;

  /* ---- Movimento ---- */
  --ease:cubic-bezier(.16,.84,.24,1);
  --dur:.9s;
}

/* ==========================================================================
   ESCOPOS DE TOM
   A seção declara o escopo; tudo dentro dela herda. Componente nunca
   sobrescreve --fg por conta própria.
   ========================================================================== */

.sec-dark{
  --bg:var(--dark);
  --fg:#f2f0ec; --fg-2:#cbc8c1; --fg-muted:#918e86;
  --rule:#242424; --rule-2:#3a3a3a;
  color:var(--fg);
}

/* Segunda superfície escura — para dar ritmo sem quebrar o tom. */
.sec-deep{
  --bg:var(--dark-2);
  --fg:#f2f0ec; --fg-2:#cbc8c1; --fg-muted:#918e86;
  --rule:#2a2a2a; --rule-2:#404040;
  color:var(--fg);
}

/* Respiro claro no meio de uma página escura. Só esta seção inverte;
   a vizinha volta direto ao escuro. */
.sec-paper{
  --bg:var(--light);
  --fg:#1c1811; --fg-2:#453f34; --fg-muted:#726b5c;
  --rule:rgba(28,24,17,.16); --rule-2:rgba(28,24,17,.28);
  color:var(--fg);
}

/* Página clara por padrão. */
.sec-light{
  --bg:var(--light-2);
  --fg:#141414; --fg-2:#3d3d3d; --fg-muted:#6d6d6d;
  --rule:rgba(0,0,0,.12); --rule-2:rgba(0,0,0,.24);
  color:var(--fg);
}
