/* ============================================================================
   FLORA OS · Design (identidade premium oficial)
   ----------------------------------------------------------------------------
   Direção: LUXO TECNOLÓGICO. Grafite/preto/branco, muito respiro, tipografia
   imponente, ZERO emoji (line-icons SVG), verde só como acento (IA, sucesso,
   confirmação, status positivo).

   Camada de CSS sobre a aplicação real: redefine os design tokens e reprojeta
   componentes compartilhados. Não altera lógica, rotas, APIs, banco nem
   templates de módulo. Escopado sob `[data-skin="v2"]` (ligado por padrão).

   DOIS TEMAS COMPLETOS, na mesma linguagem visual:
     • Escuro  (principal) → padrão / [data-theme="dark"] / sem data-theme
     • Claro              → [data-theme="light"]
   O alternador da nav (floraTemaToggle) apenas troca `data-theme`; toda a
   paleta abaixo responde a isso.
   ============================================================================ */

/* =========================================================================
   TOKENS — compartilhados (fontes, ícones, raios) + line-icons
   ========================================================================= */
:root[data-skin="v2"]{
  --raio:16px; --raio-sm:12px;
  --transicao:260ms cubic-bezier(.22,.61,.36,1);

  /* Símbolo "portal" da marca — usado como imagem OU máscara (fill irrelevante p/ máscara) */
  --flora-mk: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='14 -2 90 134' fill='%23ffffff'%3E%3Cpath fill-rule='evenodd' d='M24 122L36 122L50 30L38 30ZM29 112L32.5 112L45.5 40L42 40Z'/%3E%3Cpath d='M64 122L80 122L94 30L78 30Z'/%3E%3Cpath fill-rule='evenodd' d='M38 30L62 8L94 30L78 30L62 22L50 30Z'/%3E%3C/svg%3E");

  /* Line-icons da navegação (24-grid, stroke → máscara, herdam a cor) */
  --ic-dashboard:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12l8-7 8 7M6 11v8h12v-8'/%3E%3C/svg%3E");
  --ic-consultor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l1.9 5.6L19 10.5l-5.1 1.9L12 18l-1.9-5.6L5 10.5l5.1-1.9z'/%3E%3C/svg%3E");
  --ic-inteligencia:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='6' cy='7' r='2'/%3E%3Ccircle cx='18' cy='7' r='2'/%3E%3Ccircle cx='12' cy='17' r='2'/%3E%3Cpath d='M7.6 8.6l3.2 6.8M16.4 8.6l-3.2 6.8'/%3E%3C/svg%3E");
  --ic-financeiro:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2.5' y='6' width='19' height='12' rx='2'/%3E%3Ccircle cx='12' cy='12' r='2.6'/%3E%3Cpath d='M6 12h.01M18 12h.01'/%3E%3C/svg%3E");
  --ic-centro:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 20h18M6 20v-6M11 20V7M16 20v-9'/%3E%3C/svg%3E");
  --ic-indicadores:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12h4l2-6 4 12 2-6h6'/%3E%3C/svg%3E");
  --ic-metas:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Ccircle cx='12' cy='12' r='4.5'/%3E%3Ccircle cx='12' cy='12' r='.6' fill='black'/%3E%3C/svg%3E");
  --ic-calendario:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M3 9h18M8 3v4M16 3v4'/%3E%3C/svg%3E");
  --ic-agenda:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 6h13M8 12h13M8 18h13M3.5 6h.01M3.5 12h.01M3.5 18h.01'/%3E%3C/svg%3E");
  --ic-clientes:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='9' r='3.4'/%3E%3Cpath d='M6 19v-1a5 5 0 015-5h2a5 5 0 015 5v1'/%3E%3C/svg%3E");
  --ic-ordens:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='4' width='14' height='17' rx='2'/%3E%3Cpath d='M9 3.5h6v3H9zM8.5 13l2.2 2.2L15.5 11'/%3E%3C/svg%3E");
  --ic-pdv:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 8h12l-1 12H7zM9 8V6.5a3 3 0 016 0V8'/%3E%3C/svg%3E");
  --ic-reposicao:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12a8 8 0 0113.7-5.6M20 5v4h-4M20 12a8 8 0 01-13.7 5.6M4 19v-4h4'/%3E%3C/svg%3E");
  --ic-estoque:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 8l9-5 9 5v8l-9 5-9-5z'/%3E%3Cpath d='M3 8l9 5 9-5M12 13v8'/%3E%3C/svg%3E");
  --ic-relatorio:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 3h9l3 3v15H6z'/%3E%3Cpath d='M14 3v4h4M9 12h6M9 16h6'/%3E%3C/svg%3E");
  --ic-simuladores:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 8h9M17 8h3M4 16h3M11 16h9'/%3E%3Ccircle cx='15' cy='8' r='2'/%3E%3Ccircle cx='9' cy='16' r='2'/%3E%3C/svg%3E");
  --ic-fornecedores:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 7h11v9H3zM14 10h4l3 3v3h-7'/%3E%3Ccircle cx='7' cy='18' r='1.6'/%3E%3Ccircle cx='17.5' cy='18' r='1.6'/%3E%3C/svg%3E");
  --ic-empresa:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 21V4h10v17M14 9h6v12M7 8h2M7 12h2M7 16h2M17 12h1M17 16h1'/%3E%3C/svg%3E");
  --ic-billing:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2.5' y='6' width='19' height='12' rx='2'/%3E%3Cpath d='M2.5 10h19M6 15h4'/%3E%3C/svg%3E");
  --ic-conectores:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 2v5M15 2v5M7 7h10v3a5 5 0 01-10 0zM12 15v7'/%3E%3C/svg%3E");
  --ic-admin:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l8 3v6c0 5-3.5 8-8 9-4.5-1-8-4-8-9V6z'/%3E%3C/svg%3E");
  --ic-search:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-3.2-3.2'/%3E%3C/svg%3E");
  --ic-sparkle:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l1.9 5.6L19 10.5l-5.1 1.9L12 18l-1.9-5.6L5 10.5l5.1-1.9z'/%3E%3C/svg%3E");

  /* ---- Paleta ESCURA (principal): padrão e [data-theme="dark"] ---- */
  color-scheme:dark;
  --fundo:#050505; --superficie:#0d0f0e; --v2-elev:#141614;
  --nav-bg:linear-gradient(180deg,#080a09,#050505);
  --tinta:#f4f5f4; --tinta-1:#ffffff; --tinta-2:#8f918f; --tinta-3:#5f615f;
  --linha:rgba(255,255,255,.08); --borda:rgba(255,255,255,.08);
  --v2-hover:rgba(255,255,255,.05); --v2-active:rgba(255,255,255,.08); --v2-scroll:rgba(255,255,255,.10);
  --verde-900:#070807; --verde-700:#39e7a0; --verde-500:#1FDD87; --verde-100:rgba(31,221,135,.10);
  --sucesso:#25d68a; --sucesso-bg:rgba(37,214,138,.12);
  --atencao:#e6c04d; --atencao-bg:rgba(230,192,77,.12);
  --critico:#e5675b; --critico-bg:rgba(229,103,91,.12);
  --btn-bg:#ffffff; --btn-ink:#050505; --btn-hover:#eaeaea;
  --sombra:0 1px 0 rgba(255,255,255,.025) inset, 0 18px 44px -30px rgba(0,0,0,.85);
  --sombra-hover:0 1px 0 rgba(255,255,255,.04) inset, 0 24px 56px -26px rgba(0,0,0,.92);
}

/* ---- Paleta CLARA — mesma linguagem, luz premium ---- */
:root[data-skin="v2"][data-theme="light"]{
  color-scheme:light;
  --fundo:#f4f5f5; --superficie:#ffffff; --v2-elev:#f0f1f1;
  --nav-bg:#ffffff;
  --tinta:#101211; --tinta-1:#000000; --tinta-2:#565856; --tinta-3:#8b8d8b;
  --linha:rgba(0,0,0,.09); --borda:rgba(0,0,0,.09);
  --v2-hover:rgba(0,0,0,.04); --v2-active:rgba(0,0,0,.06); --v2-scroll:rgba(0,0,0,.16);
  --verde-900:#ffffff; --verde-700:#12885a; --verde-500:#15a86c; --verde-100:rgba(21,168,108,.10);
  --sucesso:#12885a; --sucesso-bg:rgba(21,168,108,.12);
  --atencao:#b07d0a; --atencao-bg:rgba(176,125,10,.10);
  --critico:#c0392b; --critico-bg:rgba(192,57,43,.07);
  --btn-bg:#0d0f0e; --btn-ink:#ffffff; --btn-hover:#26292a;
  --sombra:0 1px 2px rgba(16,40,30,.05), 0 14px 34px -20px rgba(16,40,30,.14);
  --sombra-hover:0 2px 6px rgba(16,40,30,.07), 0 20px 44px -20px rgba(16,40,30,.18);
}

/* =========================================================================
   TIPOGRAFIA
   ========================================================================= */
:root[data-skin="v2"],
[data-skin="v2"] body,[data-skin="v2"] input,[data-skin="v2"] select,
[data-skin="v2"] textarea,[data-skin="v2"] button{
  font-family:"Bahnschrift","Segoe UI Variable Display","Segoe UI",system-ui,-apple-system,Inter,sans-serif;
  font-variant-ligatures:none;
}
[data-skin="v2"] body{ background:var(--fundo); color:var(--tinta); letter-spacing:.1px; }
[data-skin="v2"] .page-head h1{ font-size:clamp(28px,2.6vw,36px); font-weight:600; letter-spacing:-.9px; line-height:1.04; color:var(--tinta-1); }
[data-skin="v2"] .page-head .pergunta{ font-size:15px; color:var(--tinta-2); font-weight:400; letter-spacing:0; }
[data-skin="v2"] .card-titulo,[data-skin="v2"] .kpi__label,[data-skin="v2"] .caixa__rotulo,
[data-skin="v2"] .tabela th,[data-skin="v2"] .impacto-hero__label,
[data-skin="v2"] .setup-check__tag,[data-skin="v2"] .lote-barra__rotulo{
  text-transform:uppercase; letter-spacing:.13em; font-size:11px; font-weight:600; color:var(--tinta-3);
}
[data-skin="v2"] .kpi__valor,[data-skin="v2"] .caixa__valor,[data-skin="v2"] .impacto-hero__valor,
[data-skin="v2"] .num,[data-skin="v2"] td.num,[data-skin="v2"] .kpi b{
  font-variant-numeric:tabular-nums; letter-spacing:-.6px;
}
[data-skin="v2"] .kpi__valor{ font-size:32px; font-weight:600; color:var(--tinta-1); }
[data-skin="v2"] .caixa__valor{ font-size:26px; font-weight:600; }
[data-skin="v2"] h1,[data-skin="v2"] h2,[data-skin="v2"] h3{ letter-spacing:-.4px; }

/* =========================================================================
   BASE
   ========================================================================= */
[data-skin="v2"] ::selection{ background:var(--verde-500); color:#04140c; }
[data-skin="v2"] ::-webkit-scrollbar{ width:11px; height:11px; }
[data-skin="v2"] ::-webkit-scrollbar-thumb{ background:var(--v2-scroll); border-radius:20px; border:3px solid var(--fundo); }
[data-skin="v2"] a:focus-visible,[data-skin="v2"] .btn:focus-visible,[data-skin="v2"] button:focus-visible,
[data-skin="v2"] input:focus-visible,[data-skin="v2"] summary:focus-visible{ outline:2px solid var(--verde-500); outline-offset:2px; }
[data-skin="v2"] .content{ background:var(--fundo); padding:32px 40px; }

/* =========================================================================
   NAVEGAÇÃO
   ========================================================================= */
[data-skin="v2"] .nav{ background:var(--nav-bg); border-right:1px solid var(--linha); color:var(--tinta-2); padding:22px 14px; }
[data-skin="v2"] .nav__brand{ align-items:center; gap:11px; padding:6px 10px 20px; }
[data-skin="v2"] .nav__brand::before{ content:""; flex:none; width:17px; height:25px; background:var(--tinta-1); -webkit-mask:var(--flora-mk) center/contain no-repeat; mask:var(--flora-mk) center/contain no-repeat; }
[data-skin="v2"] .nav__brand strong{ color:var(--tinta-1); font-weight:600; letter-spacing:.34em; font-size:15.5px; }
[data-skin="v2"] .nav__brand span{ color:var(--tinta-3); font-size:10px; letter-spacing:.3em; }
[data-skin="v2"] .nav__empresa{ margin:4px 6px 18px; padding:12px; border:1px solid var(--linha); background:var(--superficie); border-radius:12px; }
[data-skin="v2"] .nav__empresa b{ color:var(--tinta-1); }
[data-skin="v2"] .nav__empresa small{ color:var(--tinta-3); }
[data-skin="v2"] .nav__item{ color:var(--tinta-2); border-radius:10px; padding:10px 12px; font-weight:500; font-size:14px; transition:background var(--transicao),color var(--transicao); }
[data-skin="v2"] .nav__item:hover{ background:var(--v2-hover); color:var(--tinta-1); }
[data-skin="v2"] .nav__item--active{ background:var(--v2-active); color:var(--tinta-1); position:relative; }
[data-skin="v2"] .nav__item--active::after{ content:""; position:absolute; left:0; top:10px; bottom:10px; width:2px; border-radius:2px; background:var(--verde-500); }
[data-skin="v2"] .nav__item--interno{ color:var(--tinta-3); }
[data-skin="v2"] .nav__foot{ color:var(--tinta-3); border-top:1px solid var(--linha); padding-top:12px; margin-top:8px; }

/* Ícones da nav: emoji → line-icon monocromático (máscara herda a cor) */
[data-skin="v2"] .nav__item .icon{ font-size:0; width:19px; height:19px; flex:none; display:inline-block; position:relative; opacity:.92; }
[data-skin="v2"] .nav__item .icon::before{ content:""; position:absolute; inset:0; background:currentColor; -webkit-mask:center/contain no-repeat; mask:center/contain no-repeat; -webkit-mask-image:var(--ic-dashboard); mask-image:var(--ic-dashboard); }
[data-skin="v2"] .nav__item[href^="/dashboard"] .icon::before{ -webkit-mask-image:var(--ic-dashboard); mask-image:var(--ic-dashboard); }
[data-skin="v2"] .nav__item[href^="/consultor"] .icon::before{ -webkit-mask-image:var(--ic-consultor); mask-image:var(--ic-consultor); }
[data-skin="v2"] .nav__item[href^="/inteligencia"] .icon::before{ -webkit-mask-image:var(--ic-inteligencia); mask-image:var(--ic-inteligencia); }
[data-skin="v2"] .nav__item[href^="/financeiro"] .icon::before{ -webkit-mask-image:var(--ic-financeiro); mask-image:var(--ic-financeiro); }
[data-skin="v2"] .nav__item[href^="/centro-custos"] .icon::before{ -webkit-mask-image:var(--ic-centro); mask-image:var(--ic-centro); }
[data-skin="v2"] .nav__item[href^="/indicadores"] .icon::before{ -webkit-mask-image:var(--ic-indicadores); mask-image:var(--ic-indicadores); }
[data-skin="v2"] .nav__item[href^="/metas"] .icon::before{ -webkit-mask-image:var(--ic-metas); mask-image:var(--ic-metas); }
[data-skin="v2"] .nav__item[href^="/calendario"] .icon::before{ -webkit-mask-image:var(--ic-calendario); mask-image:var(--ic-calendario); }
[data-skin="v2"] .nav__item[href^="/agenda"] .icon::before{ -webkit-mask-image:var(--ic-agenda); mask-image:var(--ic-agenda); }
[data-skin="v2"] .nav__item[href^="/clientes"] .icon::before{ -webkit-mask-image:var(--ic-clientes); mask-image:var(--ic-clientes); }
[data-skin="v2"] .nav__item[href^="/ordens"] .icon::before{ -webkit-mask-image:var(--ic-ordens); mask-image:var(--ic-ordens); }
[data-skin="v2"] .nav__item[href^="/pdv"] .icon::before{ -webkit-mask-image:var(--ic-pdv); mask-image:var(--ic-pdv); }
[data-skin="v2"] .nav__item[href^="/reposicao"] .icon::before{ -webkit-mask-image:var(--ic-reposicao); mask-image:var(--ic-reposicao); }
[data-skin="v2"] .nav__item[href^="/estoque"] .icon::before{ -webkit-mask-image:var(--ic-estoque); mask-image:var(--ic-estoque); }
[data-skin="v2"] .nav__item[href^="/relatorio"] .icon::before{ -webkit-mask-image:var(--ic-relatorio); mask-image:var(--ic-relatorio); }
[data-skin="v2"] .nav__item[href^="/simuladores"] .icon::before{ -webkit-mask-image:var(--ic-simuladores); mask-image:var(--ic-simuladores); }
[data-skin="v2"] .nav__item[href^="/fornecedores"] .icon::before{ -webkit-mask-image:var(--ic-fornecedores); mask-image:var(--ic-fornecedores); }
[data-skin="v2"] .nav__item[href^="/empresa"] .icon::before{ -webkit-mask-image:var(--ic-empresa); mask-image:var(--ic-empresa); }
[data-skin="v2"] .nav__item[href^="/billing"] .icon::before{ -webkit-mask-image:var(--ic-billing); mask-image:var(--ic-billing); }
[data-skin="v2"] .nav__item[href^="/conectores"] .icon::before,
[data-skin="v2"] .nav__item[href^="/configuracoes"] .icon::before{ -webkit-mask-image:var(--ic-conectores); mask-image:var(--ic-conectores); }
[data-skin="v2"] .nav__item[href^="/admin"] .icon::before,
[data-skin="v2"] .nav__item[href^="/plataforma"] .icon::before{ -webkit-mask-image:var(--ic-admin); mask-image:var(--ic-admin); }

[data-skin="v2"] .nav__busca{ background:var(--superficie); border:1px solid var(--linha); color:var(--tinta-3); border-radius:10px; }
[data-skin="v2"] .nav__busca:hover{ border-color:var(--v2-scroll); color:var(--tinta-2); }
[data-skin="v2"] .nav__busca kbd{ border:1px solid var(--linha); color:var(--tinta-3); background:transparent; }
[data-skin="v2"] .nav__busca > span[aria-hidden]{ font-size:0; width:16px; height:16px; display:inline-block; position:relative; }
[data-skin="v2"] .nav__busca > span[aria-hidden]::before{ content:""; position:absolute; inset:0; background:currentColor; -webkit-mask:var(--ic-search) center/contain no-repeat; mask:var(--ic-search) center/contain no-repeat; }
[data-skin="v2"] .tema-toggle{ color:var(--tinta-2); }
[data-skin="v2"] .tema-toggle:hover{ color:var(--tinta-1); }
[data-skin="v2"] .empresa-inicial{ background:var(--tinta-1); color:var(--fundo); }

/* Sub-navegação (abas de módulo) — só-texto premium; acento fino na ativa */
[data-skin="v2"] .subnav{ border-bottom:1px solid var(--linha); gap:2px; }
[data-skin="v2"] .subnav__ico{ display:none; }
[data-skin="v2"] .subnav__item{ color:var(--tinta-2); background:transparent; border-radius:8px 8px 0 0; padding:11px 16px; }
[data-skin="v2"] .subnav__item:hover{ color:var(--tinta-1); background:var(--v2-hover); }
[data-skin="v2"] .subnav__item--on{ color:var(--tinta-1); background:transparent; }
[data-skin="v2"] .subnav__item--on::after{ background:var(--verde-500); height:2px; }

/* =========================================================================
   BOTÕES
   ========================================================================= */
[data-skin="v2"] .btn{ background:var(--btn-bg); color:var(--btn-ink); border:1px solid var(--btn-bg); font-weight:600; border-radius:999px; padding:10px 20px; transition:background var(--transicao),border-color var(--transicao),transform 80ms ease; }
[data-skin="v2"] .btn:hover{ background:var(--btn-hover); border-color:var(--btn-hover); }
[data-skin="v2"] .btn--ghost{ background:transparent; color:var(--tinta); border:1px solid var(--linha); }
[data-skin="v2"] .btn--ghost:hover{ background:var(--v2-hover); border-color:var(--v2-scroll); color:var(--tinta-1); }
[data-skin="v2"] .btn--perigo{ background:transparent; color:var(--critico); border:1px solid var(--critico-bg); }
[data-skin="v2"] .btn--perigo:hover{ background:var(--critico-bg); border-color:var(--critico); }
[data-skin="v2"] .btn--sm{ padding:6px 13px; }
[data-skin="v2"] .btn--grande,[data-skin="v2"] .btn--grande.btn{ padding:13px 22px; }
[data-skin="v2"] .acao,[data-skin="v2"] .icone-acao{ background:var(--superficie); border:1px solid var(--linha); color:var(--tinta-2); border-radius:9px; }
[data-skin="v2"] .acao:hover,[data-skin="v2"] .icone-acao:hover{ background:var(--v2-hover); color:var(--tinta-1); }

[data-skin="v2"] .abrir-form{ background:var(--btn-bg); color:var(--btn-ink); border-radius:999px; padding:10px 18px; font-weight:600; }
[data-skin="v2"] .abrir-form:hover{ background:var(--btn-hover); }
[data-skin="v2"] .abrir-form--linha{ background:var(--superficie); color:var(--tinta-1); border:1px solid var(--linha); border-radius:14px; padding:15px 20px; }
[data-skin="v2"] .abrir-form--linha:hover{ background:var(--v2-elev); }
[data-skin="v2"] .abrir-form--linha a{ color:var(--tinta-2); text-decoration:none; opacity:1; }
[data-skin="v2"] .abrir-form--linha a:hover{ color:var(--tinta-1); text-decoration:underline; }

/* =========================================================================
   CARDS · TABELAS · CAMPOS
   ========================================================================= */
[data-skin="v2"] .card{ background:var(--superficie); border:1px solid var(--linha); border-radius:var(--raio); box-shadow:var(--sombra); transition:border-color var(--transicao),transform var(--transicao); padding:22px 24px; }
[data-skin="v2"] .card:hover{ border-color:var(--v2-scroll); }
[data-skin="v2"] .grid{ gap:16px; }
[data-skin="v2"] .tabela th{ padding:14px 12px; border-bottom:1px solid var(--linha); }
[data-skin="v2"] .tabela td{ padding:15px 12px; border-bottom:1px solid var(--linha); color:var(--tinta-2); }
[data-skin="v2"] .tabela tbody tr{ transition:background var(--transicao); }
[data-skin="v2"] .tabela tbody tr:hover{ background:var(--v2-hover); }
[data-skin="v2"] .tabela .link-forte,[data-skin="v2"] .tabela b,[data-skin="v2"] .link-forte{ color:var(--tinta-1); }
[data-skin="v2"] input:not([type=range]):not([type=checkbox]):not([type=radio]):not([type=file]),
[data-skin="v2"] select,[data-skin="v2"] textarea,[data-skin="v2"] .lista-busca,[data-skin="v2"] .cfg-input,
[data-skin="v2"] .auth-card input,[data-skin="v2"] .lancar-form input,[data-skin="v2"] .lancar-form select{
  background:var(--superficie); border:1px solid var(--linha); color:var(--tinta); border-radius:11px;
}
[data-skin="v2"] input::placeholder,[data-skin="v2"] textarea::placeholder{ color:var(--tinta-3); }
[data-skin="v2"] input:focus,[data-skin="v2"] select:focus,[data-skin="v2"] textarea:focus,
[data-skin="v2"] .lista-busca:focus{ outline:none; border-color:var(--v2-scroll); background:var(--v2-elev); }

/* =========================================================================
   VERDE RECUADO — acento só p/ IA / sucesso / positivo. Resto neutro.
   ========================================================================= */
[data-skin="v2"] .kpi--destaque .kpi__valor,
[data-skin="v2"] .caixa__bloco--atual .caixa__valor,
[data-skin="v2"] .lever__valor{ color:var(--tinta-1); }
[data-skin="v2"] .periodo-reset,[data-skin="v2"] .auth-alt a,[data-skin="v2"] .th-ord:hover{ color:var(--tinta); }
[data-skin="v2"] .chip-tag{ background:var(--v2-hover); color:var(--tinta-2); }
[data-skin="v2"] .chip,[data-skin="v2"] .badge-status{ background:var(--superficie); border:1px solid var(--linha); color:var(--tinta-2); }
[data-skin="v2"] .chip-check{ border:1px solid var(--linha); color:var(--tinta-2); background:transparent; }
[data-skin="v2"] .chip-check:has(input:checked){ background:var(--v2-active); color:var(--tinta-1); border-color:transparent; }
[data-skin="v2"] .badge--ok,[data-skin="v2"] .badge-status--confirmado{ background:var(--sucesso-bg); color:var(--sucesso); }
[data-skin="v2"] .pos,[data-skin="v2"] .caixa__valor--pos{ color:var(--sucesso); }
[data-skin="v2"] .neg,[data-skin="v2"] .caixa__valor--neg{ color:var(--critico); }

/* =========================================================================
   FLORA (IA) — acento verde + símbolo/line-icon no lugar de ✦/✨
   ========================================================================= */
[data-skin="v2"] .resumo{ background:linear-gradient(180deg,var(--verde-100),var(--superficie)); border:1px solid var(--verde-100); border-radius:var(--raio); }
[data-skin="v2"] .resumo__avatar{ background:var(--verde-500); font-size:0; position:relative; }
[data-skin="v2"] .resumo__avatar::before{ content:""; position:absolute; inset:0; margin:auto; width:16px; height:22px; background:#04140c; -webkit-mask:var(--flora-mk) center/contain no-repeat; mask:var(--flora-mk) center/contain no-repeat; }
[data-skin="v2"] .insight{ background:var(--superficie); border:1px solid var(--linha); border-left:2px solid var(--verde-500); }
[data-skin="v2"] .pedir-flora__botao{ color:var(--verde-700); border:1px dashed var(--verde-100); border-radius:999px; background:transparent; }
[data-skin="v2"] .pedir-flora__botao:hover{ background:var(--verde-100); }
[data-skin="v2"] .pedir-flora__botao > span[aria-hidden]{ font-size:0; width:15px; height:15px; display:inline-block; position:relative; }
[data-skin="v2"] .pedir-flora__botao > span[aria-hidden]::before{ content:""; position:absolute; inset:0; background:var(--verde-500); -webkit-mask:var(--ic-sparkle) center/contain no-repeat; mask:var(--ic-sparkle) center/contain no-repeat; }

/* =========================================================================
   DIVERSOS
   ========================================================================= */
[data-skin="v2"] .periodo-nav{ background:var(--superficie); border:1px solid var(--linha); box-shadow:none; }
[data-skin="v2"] .periodo-nav__btn:hover{ background:var(--v2-hover); color:var(--tinta-1); }
[data-skin="v2"] .periodo-nav__rotulo{ color:var(--tinta-1); }
[data-skin="v2"] .impacto-hero{ background:var(--superficie); border:1px solid var(--linha); }
[data-skin="v2"] .impacto-grid > div{ background:var(--v2-elev); border:1px solid var(--linha); }
[data-skin="v2"] .cal,[data-skin="v2"] .calendario{ border:1px solid var(--linha); background:var(--superficie); }
[data-skin="v2"] .upload-zone{ border:2px dashed var(--linha); background:var(--superficie); }
[data-skin="v2"] .upload-zone:hover,[data-skin="v2"] .upload-zone--drag{ border-color:var(--verde-500); background:var(--verde-100); }
[data-skin="v2"] .barra{ background:var(--v2-active); }
[data-skin="v2"] .chat-input{ background:var(--superficie); border:1px solid var(--linha); border-radius:14px; }
[data-skin="v2"] .chat-input textarea{ background:transparent; border:none; }
[data-skin="v2"] .toast{ background:var(--v2-elev); border:1px solid var(--linha); color:var(--tinta-1); }
[data-skin="v2"] .skeleton,[data-skin="v2"] .sk{ background:linear-gradient(100deg,var(--superficie) 30%,var(--v2-elev) 50%,var(--superficie) 70%); background-size:200% 100%; }
[data-skin="v2"] .ver-como{ background:var(--superficie); border:1px solid var(--linha); color:var(--tinta); }
[data-skin="v2"] .onb-fab{ background:var(--btn-bg); color:var(--btn-ink); box-shadow:var(--sombra-hover); }
[data-skin="v2"] .onb-fab:hover{ filter:none; background:var(--btn-hover); }
[data-skin="v2"] .onb-fab__mk{ font-size:0; width:15px; height:21px; display:inline-block; position:relative; }
[data-skin="v2"] .onb-fab__mk::before{ content:""; position:absolute; inset:0; background:var(--btn-ink); -webkit-mask:var(--flora-mk) center/contain no-repeat; mask:var(--flora-mk) center/contain no-repeat; }

/* =========================================================================
   LOGIN / AUTH
   ========================================================================= */
[data-skin="v2"] .auth-wrap{ background:radial-gradient(1200px 620px at 50% -12%,var(--v2-hover),transparent 60%),var(--fundo); }
[data-skin="v2"] .auth-card{ background:var(--superficie); border:1px solid var(--linha); border-radius:20px; box-shadow:var(--sombra); padding:36px 32px; }
[data-skin="v2"] .auth-card h1{ font-size:27px; font-weight:600; letter-spacing:-.6px; color:var(--tinta-1); }
[data-skin="v2"] .auth-card p.sub{ color:var(--tinta-2); }
[data-skin="v2"] .auth-logo{ font-size:0; margin-bottom:20px; }
[data-skin="v2"] .auth-logo::before{ content:""; display:inline-block; width:26px; height:37px; background:var(--tinta-1); -webkit-mask:var(--flora-mk) center/contain no-repeat; mask:var(--flora-mk) center/contain no-repeat; }
