:root {
  /* ===== Primitivos: escalas (não usar diretamente nos componentes) ===== */
  --gt-ouro-50: #FDF6EA;
  --gt-ouro-100: #FAEDD9;
  --gt-ouro-200: #F2DCBB;
  --gt-ouro-300: #E9CA9E;
  --gt-ouro-400: #DBB783;
  --gt-ouro-500: #C8A26B;
  --gt-ouro-600: #AB8753;
  --gt-ouro-700: #8D6D40;
  --gt-ouro-800: #6D532F;
  --gt-ouro-900: #4F3C22;
  --gt-ouro-950: #352715;
  --gt-neutro-50: #FAFAFB;
  --gt-neutro-100: #F2F2F4;
  --gt-neutro-200: #E2E2E5;
  --gt-neutro-300: #CACACE;
  --gt-neutro-400: #A1A1A5;
  --gt-neutro-500: #808084;
  --gt-neutro-600: #5A5A5E;
  --gt-neutro-700: #414144;
  --gt-neutro-800: #2B2B2E;
  --gt-neutro-900: #19191C;
  --gt-neutro-950: #0D0D0F;
  --gt-neutro-850: #212124;
  --gt-sucesso-300: #9CE5AF;
  --gt-sucesso-500: #4DBF74;
  --gt-sucesso-700: #007E3F;
  --gt-sucesso-fundo-escuro: #142D1B;
  --gt-sucesso-fundo-claro: #EBF7EE;
  --gt-aviso-300: #FFC38F;
  --gt-aviso-500: #E88B23;
  --gt-aviso-700: #995600;
  --gt-aviso-fundo-escuro: #37210C;
  --gt-aviso-fundo-claro: #FDF1E7;
  --gt-erro-300: #FFBEB9;
  --gt-erro-500: #FF716D;
  --gt-erro-700: #B53336;
  --gt-erro-fundo-escuro: #3C1B1A;
  --gt-erro-fundo-claro: #FFEFEE;
  --gt-info-300: #ACD6FF;
  --gt-info-500: #55ABF7;
  --gt-info-700: #116DB1;
  --gt-info-fundo-escuro: #15283A;
  --gt-info-fundo-claro: #EBF5FF;
  --gt-categoria-ouro: #D0AA73;
  --gt-categoria-ouro-forte: #926D32;
  --gt-categoria-aco: #A6B2C5;
  --gt-categoria-aco-forte: #6A7587;
  --gt-categoria-azul: #79B6F4;
  --gt-categoria-azul-forte: #3978B5;
  --gt-categoria-turquesa: #66C4BE;
  --gt-categoria-turquesa-forte: #0C8681;
  --gt-categoria-violeta: #BCA1ED;
  --gt-categoria-violeta-forte: #7F63AE;
  --gt-categoria-rosa: #E694BB;
  --gt-categoria-rosa-forte: #A6567E;
  --gt-categoria-coral: #F3947C;
  --gt-categoria-coral-forte: #B2553E;
  --gt-categoria-lima: #A0BE66;
  --gt-categoria-lima-forte: #64811F;
  --gt-prata-topo: #FFFFFF;
  --gt-prata-meio: #F1F1F3;
  --gt-prata-base: #DADADF;
  --gt-creme: #F4EFE7;

  /* ===== Degradês da marca ===== */
  --gt-grad-prata: linear-gradient(180deg, #F1F1F3 0%, #FFFFFF 40%, #DADADF 100%);
  --gt-grad-ouro: linear-gradient(180deg, #EBCC9E 0%, #CAA571 55%, #8B6A40 100%);

  /* ===== Tipografia ===== */
  --gt-fonte-titulo: "Inter Display", "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
  --gt-fonte-texto: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
  --gt-fonte-etiqueta: "Jura", "Inter", sans-serif;
  --gt-fonte-mono: "JetBrains Mono", ui-monospace, "SFMono-Regular", monospace;
  --gt-peso-regular: 400;
  --gt-peso-medio: 500;
  --gt-peso-semi: 600;
  --gt-peso-bold: 700;
  --gt-peso-extra: 800;
  --gt-tam-display-2xl: 56px; --gt-alt-display-2xl: 60px;
  --gt-tam-display-xl: 44px; --gt-alt-display-xl: 48px;
  --gt-tam-display-lg: 36px; --gt-alt-display-lg: 42px;
  --gt-tam-titulo-1: 28px; --gt-alt-titulo-1: 34px;
  --gt-tam-titulo-2: 22px; --gt-alt-titulo-2: 28px;
  --gt-tam-titulo-3: 18px; --gt-alt-titulo-3: 24px;
  --gt-tam-corpo-lg: 16px; --gt-alt-corpo-lg: 24px;
  --gt-tam-corpo: 14px; --gt-alt-corpo: 20px;
  --gt-tam-corpo-sm: 13px; --gt-alt-corpo-sm: 18px;
  --gt-tam-legenda: 12px; --gt-alt-legenda: 16px;
  --gt-tam-etiqueta: 11px; --gt-alt-etiqueta: 14px;

  /* ===== Espaço (base 4 px) ===== */
  --gt-esp-0: 0px; --gt-esp-1: 2px; --gt-esp-2: 4px; --gt-esp-3: 6px; --gt-esp-4: 8px; --gt-esp-5: 12px; --gt-esp-6: 16px; --gt-esp-7: 20px; --gt-esp-8: 24px; --gt-esp-9: 32px; --gt-esp-10: 40px; --gt-esp-11: 48px; --gt-esp-12: 64px; --gt-esp-13: 80px; --gt-esp-14: 96px; --gt-esp-15: 128px;

  /* ===== Raios (cantos superelípticos onde o browser suporta) ===== */
  --gt-raio-xs: 4px;
  --gt-raio-sm: 6px;
  --gt-raio-md: 10px;
  --gt-raio-lg: 14px;
  --gt-raio-xl: 20px;
  --gt-raio-2xl: 28px;
  --gt-raio-pill: 999px;

  /* ===== Movimento e layout ===== */
  --gt-dur-rapida: 120ms;
  --gt-dur: 200ms;
  --gt-dur-lenta: 320ms;
  --gt-curva: cubic-bezier(.2,.7,.2,1);
  --gt-largura-max: 1200px;
  --gt-barra-lateral: 248px;
  --gt-barra-topo: 64px;
  --gt-gutter: 24px;
  --gt-margem-movel: 16px;

  /* ===== Papéis — MODO ESCURO (padrão do sistema) ===== */
  --gt-fundo: #0D0D0F;
  --gt-superficie: #19191C;
  --gt-superficie-2: #212124;
  --gt-borda: #2B2B2E;
  --gt-borda-forte: #414144;
  --gt-texto: #F2F2F4;
  --gt-texto-2: #A1A1A5;
  --gt-texto-3: #808084;
  --gt-marca: #C8A26B;
  --gt-acao: #DBB783;
  --gt-acao-hover: #E9CA9E;
  --gt-sobre-acao: #0D0D0F;
  --gt-foco: #DBB783;
  --gt-link: #E9CA9E;
  --gt-sucesso: #9CE5AF;
  --gt-sucesso-forte: #4DBF74;
  --gt-sucesso-fundo: #142D1B;
  --gt-aviso: #FFC38F;
  --gt-aviso-forte: #E88B23;
  --gt-aviso-fundo: #37210C;
  --gt-erro: #FFBEB9;
  --gt-erro-forte: #FF716D;
  --gt-erro-fundo: #3C1B1A;
  --gt-info: #ACD6FF;
  --gt-info-forte: #55ABF7;
  --gt-info-fundo: #15283A;
  --gt-cat-1: #D0AA73;
  --gt-cat-2: #A6B2C5;
  --gt-cat-3: #79B6F4;
  --gt-cat-4: #66C4BE;
  --gt-cat-5: #BCA1ED;
  --gt-cat-6: #E694BB;
  --gt-cat-7: #F3947C;
  --gt-cat-8: #A0BE66;
  --gt-sombra-1: 0 1px 2px rgba(0,0,0,.40);
  --gt-sombra-2: 0 6px 16px rgba(0,0,0,.45), 0 1px 3px rgba(0,0,0,.35);
  --gt-sombra-3: 0 18px 40px rgba(0,0,0,.55), 0 4px 10px rgba(0,0,0,.35);
  --gt-grad-acao: linear-gradient(180deg, #E9CA9E 0%, #DBB783 100%);
  --gt-acao-relevo: inset 0 1px 0 rgba(255,255,255,.35), 0 1px 2px rgba(0,0,0,.25);
  --gt-campo: #0D0D0F;
  --gt-anel-foco: 0 0 0 3px rgba(219,183,131,.38);
  --gt-sobreposicao: rgba(0,0,0,.62);
  color-scheme: dark;
}

/* ===== Papéis — MODO CLARO: <html data-tema="claro"> ===== */
[data-tema="claro"] {
  --gt-fundo: #FAFAFB;
  --gt-superficie: #FFFFFF;
  --gt-superficie-2: #F2F2F4;
  --gt-borda: #E2E2E5;
  --gt-borda-forte: #CACACE;
  --gt-texto: #0D0D0F;
  --gt-texto-2: #5A5A5E;
  --gt-texto-3: #808084;
  --gt-marca: #AB8753;
  --gt-acao: #8D6D40;
  --gt-acao-hover: #6D532F;
  --gt-sobre-acao: #FFFFFF;
  --gt-foco: #AB8753;
  --gt-link: #8D6D40;
  --gt-sucesso: #007E3F;
  --gt-sucesso-forte: #4DBF74;
  --gt-sucesso-fundo: #EBF7EE;
  --gt-aviso: #995600;
  --gt-aviso-forte: #E88B23;
  --gt-aviso-fundo: #FDF1E7;
  --gt-erro: #B53336;
  --gt-erro-forte: #FF716D;
  --gt-erro-fundo: #FFEFEE;
  --gt-info: #116DB1;
  --gt-info-forte: #55ABF7;
  --gt-info-fundo: #EBF5FF;
  --gt-cat-1: #926D32;
  --gt-cat-2: #6A7587;
  --gt-cat-3: #3978B5;
  --gt-cat-4: #0C8681;
  --gt-cat-5: #7F63AE;
  --gt-cat-6: #A6567E;
  --gt-cat-7: #B2553E;
  --gt-cat-8: #64811F;
  --gt-sombra-1: 0 1px 2px rgba(13,13,15,.06), 0 1px 1px rgba(13,13,15,.04);
  --gt-sombra-2: 0 6px 16px rgba(13,13,15,.08), 0 1px 3px rgba(13,13,15,.06);
  --gt-sombra-3: 0 18px 40px rgba(13,13,15,.14), 0 4px 10px rgba(13,13,15,.06);
  --gt-grad-acao: linear-gradient(180deg, #8D6D40 0%, #7D5E35 100%);
  --gt-acao-relevo: inset 0 1px 0 rgba(255,255,255,.22), 0 1px 2px rgba(13,13,15,.15);
  --gt-campo: #FFFFFF;
  --gt-anel-foco: 0 0 0 3px rgba(171,135,83,.32);
  --gt-sobreposicao: rgba(13,13,15,.40);
  color-scheme: light;
}

/* ===== Ilha escura dentro de uma página clara: <div data-tema="escuro"> ===== */
[data-tema="escuro"] {
  --gt-fundo: #0D0D0F;
  --gt-superficie: #19191C;
  --gt-superficie-2: #212124;
  --gt-borda: #2B2B2E;
  --gt-borda-forte: #414144;
  --gt-texto: #F2F2F4;
  --gt-texto-2: #A1A1A5;
  --gt-texto-3: #808084;
  --gt-marca: #C8A26B;
  --gt-acao: #DBB783;
  --gt-acao-hover: #E9CA9E;
  --gt-sobre-acao: #0D0D0F;
  --gt-foco: #DBB783;
  --gt-link: #E9CA9E;
  --gt-sucesso: #9CE5AF;
  --gt-sucesso-forte: #4DBF74;
  --gt-sucesso-fundo: #142D1B;
  --gt-aviso: #FFC38F;
  --gt-aviso-forte: #E88B23;
  --gt-aviso-fundo: #37210C;
  --gt-erro: #FFBEB9;
  --gt-erro-forte: #FF716D;
  --gt-erro-fundo: #3C1B1A;
  --gt-info: #ACD6FF;
  --gt-info-forte: #55ABF7;
  --gt-info-fundo: #15283A;
  --gt-cat-1: #D0AA73;
  --gt-cat-2: #A6B2C5;
  --gt-cat-3: #79B6F4;
  --gt-cat-4: #66C4BE;
  --gt-cat-5: #BCA1ED;
  --gt-cat-6: #E694BB;
  --gt-cat-7: #F3947C;
  --gt-cat-8: #A0BE66;
  --gt-sombra-1: 0 1px 2px rgba(0,0,0,.40);
  --gt-sombra-2: 0 6px 16px rgba(0,0,0,.45), 0 1px 3px rgba(0,0,0,.35);
  --gt-sombra-3: 0 18px 40px rgba(0,0,0,.55), 0 4px 10px rgba(0,0,0,.35);
  --gt-grad-acao: linear-gradient(180deg, #E9CA9E 0%, #DBB783 100%);
  --gt-acao-relevo: inset 0 1px 0 rgba(255,255,255,.35), 0 1px 2px rgba(0,0,0,.25);
  --gt-campo: #0D0D0F;
  --gt-anel-foco: 0 0 0 3px rgba(219,183,131,.38);
  --gt-sobreposicao: rgba(0,0,0,.62);
  color-scheme: dark;
}

/* Cantos superelípticos (como as curvas do G) — melhoria progressiva */
@supports (corner-shape: squircle) { .gt-squircle { corner-shape: squircle; } }
