/* Tema padrao do shadcn/ui (base neutral), extraido de ui.shadcn.com/docs/theming
   em 2026-09-02. Estilo adotado: new-york-v4.
   Nao ajustar valores sem reconferir na fonte. */

@font-face {
  font-family: "Geist";
  src: url("fontes/geist/geist-variavel.woff2") format("woff2");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

:root {
  --fonte-sans: "Geist", ui-sans-serif, system-ui, -apple-system, "Segoe UI",
    Roboto, "Helvetica Neue", Arial, sans-serif;
  --fonte-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas,
    "Liberation Mono", monospace;

  /* Escala do estilo new-york-v4: o raio deriva por soma e subtracao,
     nao por multiplicacao. Com --radius: 0.625rem da 6/8/10/14px. */
  --radius: 0.625rem;
  --raio-sm: calc(var(--radius) - 4px);
  --raio-md: calc(var(--radius) - 2px);
  --raio-lg: var(--radius);
  --raio-xl: calc(var(--radius) + 4px);

  --sidebar-largura: 16rem;
  --sidebar-largura-celular: 18rem;
  --sidebar-largura-icone: 3rem;

  --background: oklch(1 0 0);
  --foreground: oklch(0.145 0 0);

  /*
    A BARRA DE ROLAGEM tem token proprio, e nao sai de --border nem de
    --muted-foreground, porque o que ela precisa em cada tema nao
    acompanha nenhum dos dois.

    No claro ela some contra o fundo se usar --border (0.922); no escuro,
    qualquer cor derivada de --foreground vira uma faixa quase branca
    sobre fundo 0.145 — que foi como o dono a descreveu, "quase uma
    aberracao". O que ela quer e o contrario em cada tema: um pouco mais
    ESCURA que o fundo no claro, um pouco mais CLARA que o fundo no
    escuro, e discreta nos dois.
  */
  --barra-rolagem: oklch(0.8 0 0);
  --barra-rolagem-ativa: oklch(0.68 0 0);
  --card: oklch(1 0 0);
  --card-foreground: oklch(0.145 0 0);
  --popover: oklch(1 0 0);
  --popover-foreground: oklch(0.145 0 0);
  --primary: oklch(0.205 0 0);
  --primary-foreground: oklch(0.985 0 0);
  --secondary: oklch(0.97 0 0);
  --secondary-foreground: oklch(0.205 0 0);
  --muted: oklch(0.97 0 0);
  --muted-foreground: oklch(0.556 0 0);
  --accent: oklch(0.97 0 0);
  --accent-foreground: oklch(0.205 0 0);
  --destructive: oklch(0.577 0.245 27.325);
  --border: oklch(0.922 0 0);
  --input: oklch(0.922 0 0);
  --ring: oklch(0.708 0 0);
  --chart-1: oklch(0.646 0.222 41.116);
  --chart-2: oklch(0.6 0.118 184.704);
  --chart-3: oklch(0.398 0.07 227.392);
  --chart-4: oklch(0.828 0.189 84.429);
  --chart-5: oklch(0.769 0.188 70.08);
  --sidebar: oklch(0.985 0 0);
  --sidebar-foreground: oklch(0.145 0 0);
  --sidebar-primary: oklch(0.205 0 0);
  --sidebar-primary-foreground: oklch(0.985 0 0);
  --sidebar-accent: oklch(0.97 0 0);
  --sidebar-accent-foreground: oklch(0.205 0 0);
  --sidebar-border: oklch(0.922 0 0);
  --sidebar-ring: oklch(0.708 0 0);

  /*
    COR DE ESTADO: "deu certo" e "atencao". Vocabulario do kit (nenhuma
    palavra de dominio): quem pinta estado le daqui, e e este o UNICO lugar
    onde estes oklch existem.

    Nenhum token do tema serve (o --primary e a cor da marca), e o registry
    do new-york-v4 nao tem esses dois tons; --chart-4 existe, mas e claro
    demais (L 0.83) para uma barra fina sobre fundo claro.

    Contraste calculado contra o fundo do tema (piso de 3:1 do WCAG para
    elemento grafico): no claro, verde 4.5 e ambar 3.7; no escuro, 7.9 e
    10.4. NAO sao iguais entre si: o ambar e o mais fraco no claro, e subir
    o L dele dos 0.62 atuais o leva para baixo do piso. O ambar do claro
    NAO tem contraste de texto: serve a filete, icone e barra, nunca a letra.
  */
  --cor-ok: oklch(0.55 0.14 152);
  --cor-atencao: oklch(0.62 0.14 70);
}

.escuro {
  --background: oklch(0.145 0 0);
  --foreground: oklch(0.985 0 0);

  /* Sobe pouco a partir do fundo (0.145): visivel, e nada mais. */
  --barra-rolagem: oklch(0.3 0 0);
  --barra-rolagem-ativa: oklch(0.42 0 0);
  --card: oklch(0.205 0 0);
  --card-foreground: oklch(0.985 0 0);
  --popover: oklch(0.205 0 0);
  --popover-foreground: oklch(0.985 0 0);
  --primary: oklch(0.922 0 0);
  --primary-foreground: oklch(0.205 0 0);
  --secondary: oklch(0.269 0 0);
  --secondary-foreground: oklch(0.985 0 0);
  --muted: oklch(0.269 0 0);
  --muted-foreground: oklch(0.708 0 0);
  --accent: oklch(0.269 0 0);
  --accent-foreground: oklch(0.985 0 0);
  --destructive: oklch(0.704 0.191 22.216);
  --border: oklch(1 0 0 / 10%);
  --input: oklch(1 0 0 / 15%);
  --ring: oklch(0.556 0 0);
  --chart-1: oklch(0.488 0.243 264.376);
  --chart-2: oklch(0.696 0.17 162.48);
  --chart-3: oklch(0.769 0.188 70.08);
  --chart-4: oklch(0.627 0.265 303.9);
  --chart-5: oklch(0.645 0.246 16.439);
  --sidebar: oklch(0.205 0 0);
  --sidebar-foreground: oklch(0.985 0 0);
  --sidebar-primary: oklch(0.488 0.243 264.376);
  --sidebar-primary-foreground: oklch(0.985 0 0);
  --sidebar-accent: oklch(0.269 0 0);
  --sidebar-accent-foreground: oklch(0.985 0 0);
  --sidebar-border: oklch(1 0 0 / 10%);
  --sidebar-ring: oklch(0.556 0 0);

  --cor-ok: oklch(0.7 0.15 152);
  --cor-atencao: oklch(0.8 0.15 80);
}
