/* GrowMap: tokens de marca, temas e cor contextual. Única fonte de cor, tipo e forma da aplicação. */
@font-face { font-family: 'Geist'; src: url('../fonts/geist-latin-wght-normal.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+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Geist'; src: url('../fonts/geist-latin-ext-wght-normal.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+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
/* Telas antigas citam estes nomes em estilos soltos: todos resolvem na mesma fonte */
@font-face { font-family: 'Inter'; src: url('../fonts/geist-latin-wght-normal.woff2') format('woff2'); font-weight: 100 900; font-display: swap; }
@font-face { font-family: 'Outfit'; src: url('../fonts/geist-latin-wght-normal.woff2') format('woff2'); font-weight: 100 900; font-display: swap; }
@font-face { font-family: 'Poppins'; src: url('../fonts/geist-latin-wght-normal.woff2') format('woff2'); font-weight: 100 900; font-display: swap; }

:root {
    --gm-fonte: 'Geist', system-ui, -apple-system, 'Segoe UI', sans-serif;
    --gm-fonte-titulo: var(--gm-fonte);

    --gm-verde-900: #0B2E1F;
    --gm-verde-700: #14532D;
    --gm-verde-500: #15803D;
    --gm-lima: #BEF264;

    --gm-raio-p: 4px;
    --gm-raio: 6px;
    --gm-raio-g: 8px;
    --gm-trans: .12s ease;

    --gm-top: 48px;
    --gm-lateral: 216px;

    color-scheme: light;
    --gm-fundo: #F8F8F9;
    --gm-superficie: #FFFFFF;
    --gm-superficie-2: #FAFAFA;
    --gm-superficie-3: #F2F2F4;
    --gm-borda: #E6E6E9;
    --gm-borda-forte: #D1D1D6;
    --gm-texto: #18181B;
    --gm-texto-2: #52525B;
    --gm-texto-3: #6B6B74;
    --gm-marca: #14532D;
    --gm-marca-texto: #FFFFFF;
    --gm-primaria: #14532D;
    --gm-primaria-hover: #0F4424;
    --gm-primaria-texto: #FFFFFF;
    --gm-foco: #15803D;
    --gm-sucesso: #15803D;
    --gm-alerta: #A16207;
    --gm-erro: #B91C1C;
    --gm-sombra-1: none;
    --gm-sombra-2: 0 1px 2px rgba(0, 0, 0, .04), 0 4px 12px rgba(0, 0, 0, .06);
    --gm-sombra-3: 0 2px 4px rgba(0, 0, 0, .05), 0 16px 40px rgba(0, 0, 0, .14);
    --gm-trilho-fundo: #0E1311;
    --gm-trilho-texto: #A3ABA6;

    --mod: #15803D;
    --mod-texto: #14532D;
    --mod-suave: color-mix(in srgb, var(--mod) 8%, transparent);
}

:root[data-theme="escuro"] {
    color-scheme: dark;
    --gm-fundo: #0D0D0F;
    --gm-superficie: #141416;
    --gm-superficie-2: #18181B;
    --gm-superficie-3: #202024;
    --gm-borda: #27272B;
    --gm-borda-forte: #3B3B41;
    --gm-texto: #F4F4F5;
    --gm-texto-2: #B4B4BB;
    --gm-texto-3: #93939C;
    --gm-marca: #F4F4F5;
    --gm-marca-texto: #18181B;
    --gm-primaria: #F4F4F5;
    --gm-primaria-hover: #FFFFFF;
    --gm-primaria-texto: #18181B;
    --gm-foco: #4ADE80;
    --gm-sucesso: #4ADE80;
    --gm-alerta: #FACC15;
    --gm-erro: #F87171;
    --gm-sombra-2: 0 4px 12px rgba(0, 0, 0, .4);
    --gm-sombra-3: 0 16px 40px rgba(0, 0, 0, .6);
    --gm-trilho-fundo: #0A0A0B;
    --mod: #4ADE80;
    --mod-texto: #86EFAC;
}

/* Cores do campo: céu, folha, trigo, terra e barro. Texto branco com contraste de pelo menos 4,5:1 sobre --bloco. */
[data-modulo="mapa_agro"] { --bloco: #1F6B3A; --mod: #1F6B3A; --mod-texto: #1A5A31; }
[data-modulo="clientes"] { --bloco: #6B4A2B; --mod: #6B4A2B; --mod-texto: #5A3E24; }
[data-modulo="radar"] { --bloco: #A8481C; --mod: #A8481C; --mod-texto: #8A3A16; }
[data-modulo="vendas"] { --bloco: #7B2D26; --mod: #7B2D26; --mod-texto: #69261F; }
[data-modulo="equipe"] { --bloco: #1D6A72; --mod: #1D6A72; --mod-texto: #16555C; }
[data-modulo="empresas"] { --bloco: #8A5A00; --mod: #8A5A00; --mod-texto: #6E4800; }
[data-modulo="inteligencia"] { --bloco: #1F5F8B; --mod: #1F5F8B; --mod-texto: #174A6E; }
[data-modulo="minha_empresa"] { --bloco: #55605A; --mod: #55605A; --mod-texto: #47514C; }
[data-modulo="aprender"] { --bloco: #6F5E22; --mod: #6F5E22; --mod-texto: #5C4E1C; }
[data-modulo="fazendas"] { --bloco: #55701B; --mod: #55701B; --mod-texto: #465C16; }
[data-modulo="safra"] { --bloco: #2F7A3E; --mod: #2F7A3E; --mod-texto: #256231; }

:root[data-theme="escuro"] [data-modulo="mapa_agro"], :root[data-theme="escuro"][data-modulo="mapa_agro"] { --mod: #7CCB86; --mod-texto: #A5E0AE; }
:root[data-theme="escuro"] [data-modulo="clientes"], :root[data-theme="escuro"][data-modulo="clientes"] { --mod: #D9B48F; --mod-texto: #E8CFB5; }
:root[data-theme="escuro"] [data-modulo="radar"], :root[data-theme="escuro"][data-modulo="radar"] { --mod: #F0A155; --mod-texto: #F6C48F; }
:root[data-theme="escuro"] [data-modulo="vendas"], :root[data-theme="escuro"][data-modulo="vendas"] { --mod: #E8A399; --mod-texto: #F2C4BC; }
:root[data-theme="escuro"] [data-modulo="equipe"], :root[data-theme="escuro"][data-modulo="equipe"] { --mod: #5CC1CB; --mod-texto: #9ADCE3; }
:root[data-theme="escuro"] [data-modulo="empresas"], :root[data-theme="escuro"][data-modulo="empresas"] { --mod: #E8B04A; --mod-texto: #F2CF8E; }
:root[data-theme="escuro"] [data-modulo="inteligencia"], :root[data-theme="escuro"][data-modulo="inteligencia"] { --mod: #7CC0EC; --mod-texto: #A9D6F3; }
:root[data-theme="escuro"] [data-modulo="minha_empresa"], :root[data-theme="escuro"][data-modulo="minha_empresa"] { --mod: #B6C2BB; --mod-texto: #D2DAD5; }
:root[data-theme="escuro"] [data-modulo="aprender"], :root[data-theme="escuro"][data-modulo="aprender"] { --mod: #D9C680; --mod-texto: #E8DBA8; }
:root[data-theme="escuro"] [data-modulo="fazendas"], :root[data-theme="escuro"][data-modulo="fazendas"] { --mod: #A3D65C; --mod-texto: #C5E69A; }
:root[data-theme="escuro"] [data-modulo="safra"], :root[data-theme="escuro"][data-modulo="safra"] { --mod: #8FD6A0; --mod-texto: #B6E5C1; }

[data-modulo] { --mod-suave: color-mix(in srgb, var(--mod) 8%, transparent); }

/* Bootstrap e telas antigas herdam os mesmos tokens */
.gm2 {
    --bs-body-bg: var(--gm-fundo);
    --bs-body-color: var(--gm-texto);
    --bs-body-font-family: var(--gm-fonte);
    --bs-body-font-size: 14px;
    --bs-secondary-color: var(--gm-texto-2);
    --bs-tertiary-color: var(--gm-texto-3);
    --bs-border-color: var(--gm-borda);
    --bs-border-radius: var(--gm-raio);
    --bs-border-radius-sm: var(--gm-raio-p);
    --bs-border-radius-lg: var(--gm-raio-g);
    --bs-card-bg: var(--gm-superficie);
    --bs-secondary-bg: var(--gm-superficie-3);
    --bs-tertiary-bg: var(--gm-superficie-2);
    --bs-emphasis-color: var(--gm-texto);
    --bs-heading-color: var(--gm-texto);
    --bs-link-color: var(--gm-texto);
    --bs-link-hover-color: var(--gm-texto);
}
