/* Nei Madeireira — tema claro
   Ativado por <html data-theme="light"> (botão sol/lua na barra superior, salvo em localStorage "nm-theme").
   Carregado por último: só sobrescreve. O tema escuro continua sendo o padrão e não depende deste arquivo.
   Organização: 1) tokens  2) ilhas que continuam escuras  3) estrutura  4) componentes  5) módulos  6) Financeiro (genérico) */

/* ============ 1. Tokens ============ */
:root[data-theme="light"] {
  color-scheme: light;

  /* Superfícies: neutros quentes, nada de branco puro no fundo */
  --bg: #F6F2EC;
  --bg-2: #F1ECE4;
  --s1: #FFFFFF;
  --s2: #FCFAF7;
  --s3: #F2EDE6;
  --s4: #E5DDD2;
  --line: rgba(48, 30, 18, .085);
  --line-2: rgba(48, 30, 18, .13);
  --line-3: rgba(48, 30, 18, .22);

  /* Texto (todos ≥ 4,5:1 sobre branco, exceto --tx-4 usado só em rótulos secundários ≈ 4,6:1) */
  --tx: #1E1A16;
  --tx-2: #4B443C;
  --tx-3: #685F55;
  --tx-4: #786E63;

  /* Marca */
  --red-tx: #8E1F29;          /* vinho NEI, contraste AA sobre branco */
  --red-soft: rgba(178, 44, 56, .08);
  --red-line: rgba(178, 44, 56, .32);
  --gold-tx: #86600E;         /* dourado escurecido para texto no claro */
  --gold-soft: rgba(176, 128, 20, .12);
  --gold-line: rgba(176, 128, 20, .35);
  --grad-red-soft: linear-gradient(180deg, rgba(178, 44, 56, .1), rgba(178, 44, 56, 0));

  /* Semânticas escurecidas para leitura em fundo claro (texto ≥ 4,5:1 sobre a versão -soft) */
  --ok: #11703D;   --ok-soft: rgba(17, 112, 61, .1);
  --warn: #935700; --warn-soft: rgba(196, 122, 0, .13);
  --crit: #C21F33; --crit-soft: rgba(194, 31, 51, .09);
  --info: #1E61BA; --info-soft: rgba(30, 97, 186, .09);
  --wa: #0F7536;   --wa-soft: rgba(15, 117, 54, .1);
  --tick: #1B78AA;
  --warn-fill: #E2981C;       /* âmbar claro só para barras e pontos (não para texto) */

  /* Cores auxiliares para gráficos (lidas pelos gráficos em JS/CSS) */
  --chart-ref: rgba(28, 26, 27, .5);
  --chart-hover: rgba(28, 26, 27, .28);

  /* Sombras suaves */
  --shadow-1: 0 1px 2px rgba(70, 46, 28, .05), 0 10px 26px -16px rgba(70, 46, 28, .16);
  --shadow-2: 0 2px 6px rgba(70, 46, 28, .06), 0 26px 60px -24px rgba(70, 46, 28, .26);
  --glow-red: 0 0 0 1px rgba(178, 44, 56, .28), 0 10px 26px -12px rgba(178, 44, 56, .5);
}
:root:not([data-theme="light"]) { --chart-ref: rgba(244, 240, 240, .55); --chart-hover: rgba(255, 255, 255, .18); }

/* ============ 2. Ilhas que continuam escuras ============
   Abertura/login (momento de marca), apresentação de valores (slides),
   e aparelhos desenhados (celular, tablet, TV do chão de fábrica). */
:root[data-theme="light"] :is(.splash, .login, .curtain, .deck, .phone, .tab-dev, .tvw) {
  color-scheme: dark;
  --bg: #0C0A08; --bg-2: #100D0A; --s1: #15120E; --s2: #1B1712; --s3: #24201A; --s4: #2E2921;
  --line: rgba(255, 232, 232, .07); --line-2: rgba(255, 232, 232, .12); --line-3: rgba(255, 232, 232, .2);
  --tx: #F4EFE8; --tx-2: #BFB5A8; --tx-3: #8E8477; --tx-4: #645B50;
  --red-tx: #E57882; --red-soft: rgba(178, 44, 56, .14); --red-line: rgba(214, 92, 100, .45);
  --ok: #34D17F; --ok-soft: rgba(52, 209, 127, .13);
  --warn: #F6A723; --warn-soft: rgba(246, 167, 35, .13);
  --crit: #FF4B5C; --crit-soft: rgba(255, 75, 92, .14);
  --info: #5CA8FF; --info-soft: rgba(92, 168, 255, .13);
  --wa: #25D366; --wa-soft: rgba(37, 211, 102, .12); --tick: #53BDEB;
  --chart-ref: rgba(244, 240, 240, .55); --chart-hover: rgba(255, 255, 255, .18);
  --shadow-1: 0 1px 0 rgba(255,255,255,.035) inset, 0 12px 32px -14px rgba(0,0,0,.7);
  --shadow-2: 0 1px 0 rgba(255,255,255,.05) inset, 0 24px 60px -20px rgba(0,0,0,.85);
  --glow-red: 0 0 0 1px rgba(196, 64, 74,.55), 0 12px 40px -10px rgba(178, 44, 56,.65);
  color: var(--tx);
}

/* ============ 3. Estrutura ============ */
:root[data-theme="light"] .grain { opacity: .022; }
:root[data-theme="light"] .ambient i { opacity: .16; }
:root[data-theme="light"] .ambient i:nth-child(2) { opacity: .08; }
:root[data-theme="light"] .ambient i:nth-child(3) { display: none; }
:root[data-theme="light"] ::selection { background: rgba(178, 44, 56, .2); color: var(--tx); }

:root[data-theme="light"] .sidebar { background: linear-gradient(180deg, rgba(255, 255, 255, .9), rgba(251, 250, 249, .94)); }
:root[data-theme="light"] .nav-item.active { background: linear-gradient(90deg, rgba(178, 44, 56, .1), rgba(178, 44, 56, .02)); }
:root[data-theme="light"] .nav-item.active::before { box-shadow: 0 0 8px rgba(178, 44, 56, .45); }
:root[data-theme="light"] .nav-item:hover { background: var(--s3); }
:root[data-theme="light"] .user-card:hover { background: var(--s3); }
:root[data-theme="light"] .topbar { background: rgba(245, 243, 241, .78); }
:root[data-theme="light"] .icon-btn:hover { background: var(--s1); }

/* Botão de tema: sol no escuro, lua no claro */
.theme-btn .lucide-moon { display: none; }
:root[data-theme="light"] .theme-btn .lucide-sun { display: none; }
:root[data-theme="light"] .theme-btn .lucide-moon { display: block; }

/* ============ 4. Componentes ============ */
:root[data-theme="light"] .btn-primary { box-shadow: 0 0 0 1px rgba(200, 4, 0, .5) inset, 0 6px 18px -8px rgba(178, 44, 56, .55); }
:root[data-theme="light"] .btn-primary:hover { box-shadow: 0 0 0 1px rgba(200, 4, 0, .7) inset, 0 10px 26px -8px rgba(178, 44, 56, .65); }
:root[data-theme="light"] .btn-quiet:hover { background: var(--s3); }
:root[data-theme="light"] .btn-wa, :root[data-theme="light"] .badge.wa { color: #fff; }
:root[data-theme="light"] .ripple { background: rgba(255, 255, 255, .45); }
:root[data-theme="light"] .btn-ghost .ripple, :root[data-theme="light"] .btn-quiet .ripple { background: rgba(48, 30, 18, .1); }
:root[data-theme="light"] .btn-ghost .spinner, :root[data-theme="light"] .btn-quiet .spinner { border-color: var(--line-3); border-top-color: var(--tx); }
:root[data-theme="light"] .segmented { background: var(--s3); }
:root[data-theme="light"] .segmented .thumb { background: var(--s1); box-shadow: 0 1px 2px rgba(70, 46, 28, .12), 0 0 0 1px var(--line); }
:root[data-theme="light"] .tabs button.on::after { box-shadow: none; }
:root[data-theme="light"] .input, :root[data-theme="light"] .select { background: var(--s1); }
:root[data-theme="light"] .input:focus, :root[data-theme="light"] .select:focus { box-shadow: 0 0 0 3px rgba(178, 44, 56, .1); }
:root[data-theme="light"] .tbl tbody tr:hover { background: rgba(48, 30, 18, .028); }
:root[data-theme="light"] .avatar[style*="var(--s4)"], :root[data-theme="light"] .avatar[style*="var(--s3)"] { color: var(--tx-2); }
:root[data-theme="light"] .avatar .on, :root[data-theme="light"] .avatars .avatar { border-color: var(--s1); }
:root[data-theme="light"] .spot::after { background: radial-gradient(420px circle at var(--mx, 50%) var(--my, 50%), rgba(178, 44, 56, .045), transparent 45%); }
:root[data-theme="light"] .spot::before { background: radial-gradient(300px circle at var(--mx, 50%) var(--my, 50%), rgba(178, 44, 56, .35), transparent 55%); }

/* Barras e pontos de "atenção": âmbar mais vivo (o --warn escuro fica para texto) */
:root[data-theme="light"] :is(.progress.warn i, .cmp-pont__bar i.warn, .cap__fill.warn, .dtf-hr .low i, .qa-par.vital .qa-par__track i, .rh-kdays span.warn, .rh-dot.warn, .rh-prod__bar i.warn, .tf-doing i, .rx-exp.warn .rx-exp__bar i, .cel__hr.mid i) { background: var(--warn-fill); }
:root[data-theme="light"] .rh-meta__bar i.warn { background: linear-gradient(90deg, #D4880F, var(--warn-fill)); box-shadow: none; }
:root[data-theme="light"] .dtfi__ring.warn { background: conic-gradient(var(--warn-fill) calc(var(--p) * 1%), var(--s4) 0); }
:root[data-theme="light"] [style*="background:var(--warn)"] { background: var(--warn-fill) !important; }
:root[data-theme="light"] [style*="--c:var(--warn)"] { --c: var(--warn-fill) !important; }

/* Gráficos */
:root[data-theme="light"] .chart .axis text { fill: var(--tx-3); }
:root[data-theme="light"] .chart .grid line { stroke: rgba(48, 30, 18, .1); }
:root[data-theme="light"] .chart-tip { background: rgba(255, 255, 255, .97); }
:root[data-theme="light"] .legend i.dash { background: var(--chart-ref); }

/* Sobreposições */
:root[data-theme="light"] .scrim { background: rgba(40, 30, 32, .32); backdrop-filter: blur(4px); }
:root[data-theme="light"] .drawer { background: var(--s1); box-shadow: -24px 0 60px -24px rgba(70, 46, 28, .3); }
:root[data-theme="light"] .modal { background: var(--s1); }
:root[data-theme="light"] .palette { background: rgba(255, 255, 255, .97); }
:root[data-theme="light"] .palette__item.on { background: var(--s3); }
:root[data-theme="light"] .toast { background: rgba(255, 255, 255, .97); }
:root[data-theme="light"] .notif { background: rgba(255, 255, 255, .98); }
:root[data-theme="light"] .notif__item:hover { background: rgba(48, 30, 18, .025); }
:root[data-theme="light"] .notif__item.unread { background: linear-gradient(90deg, rgba(178, 44, 56, .05), transparent); }
@media (max-width: 1100px) { :root[data-theme="light"] .sidebar.on { box-shadow: 24px 0 60px -24px rgba(70, 46, 28, .3); } }

/* Recuos ("poços" dentro de cartões) que no escuro eram preto translúcido */
:root[data-theme="light"] :is(.ai-card__stats > div, .ia-stat, .ia-block, .ia-try__b, .ia-action__f > div, .ia-next__b, .ia-alert, .ia-think, .ia-sug__peek > span, .printer__stats span) {
  background: rgba(236, 231, 227, .55);
}

/* Sombras pesadas de hover */
:root[data-theme="light"] :is(.deal, .pc, .cmp-card, .pt-card2):hover { box-shadow: 0 12px 26px -14px rgba(70, 46, 28, .3); }

/* ============ 5. Módulos ============ */
/* Painel do CEO */
:root[data-theme="light"] .ai-card {
  border-color: rgba(178, 44, 56, .2);
  background: radial-gradient(120% 140% at 0% 0%, rgba(178, 44, 56, .08), transparent 55%), linear-gradient(180deg, var(--s1), var(--s2));
}
:root[data-theme="light"] .ai-card::before { background: repeating-linear-gradient(90deg, rgba(178, 44, 56, .45) 0 7px, transparent 7px 13px); background-size: 13px 100%; }
:root[data-theme="light"] .ai-card__text b { color: var(--tx); }
:root[data-theme="light"] .funnel__bar i { box-shadow: none; }
:root[data-theme="light"] .feed__item.new { background: linear-gradient(90deg, rgba(178, 44, 56, .06), transparent); }
:root[data-theme="light"] .top-cli__row:hover { background: rgba(48, 30, 18, .03); }

/* Funil (kanban) e tarefas */
:root[data-theme="light"] :is(.col, .tf-col, .cmp-col) { background: rgba(232, 227, 223, .5); }
:root[data-theme="light"] .col.over { background: rgba(178, 44, 56, .05); box-shadow: inset 0 0 0 1px var(--red-line); }
:root[data-theme="light"] .deal { background: var(--s1); box-shadow: 0 1px 2px rgba(70, 46, 28, .06); }
:root[data-theme="light"] .tf-row:hover { background: rgba(48, 30, 18, .03); }
:root[data-theme="light"] .tf-check svg { stroke: #fff; }

/* WhatsApp */
:root[data-theme="light"] .conv:hover { background: rgba(48, 30, 18, .03); }
:root[data-theme="light"] .conv.on { background: linear-gradient(90deg, rgba(178, 44, 56, .08), rgba(178, 44, 56, .01)); }
:root[data-theme="light"] .chat__head { background: var(--s2); }
:root[data-theme="light"] .chat__body {
  background-color: #EFEBE6;
  background-image: radial-gradient(rgba(70, 46, 28, .07) 1px, transparent 1.2px), radial-gradient(ellipse at 50% 0%, rgba(178, 44, 56, .04), transparent 60%);
}
:root[data-theme="light"] .msg { box-shadow: 0 1px 1px rgba(70, 46, 28, .1); }
:root[data-theme="light"] .msg.in { background: var(--s1); }
:root[data-theme="light"] .msg.out { background: linear-gradient(180deg, #FDEDEA, #FBE3DF); border-color: rgba(178, 44, 56, .16); }
:root[data-theme="light"] :is(.att-pdf, .att-link) { background: rgba(48, 30, 18, .05); }
:root[data-theme="light"] .art__img { background-image: radial-gradient(rgba(48, 30, 18, .07) 1px, transparent 1px) !important; }
:root[data-theme="light"] .art__img span { text-shadow: none; }
:root[data-theme="light"] .cli-hero::after { border-color: rgba(48, 30, 18, .07); }
:root[data-theme="light"] .wiz li.done span { color: #fff; }

/* Assistente IA */
:root[data-theme="light"] .ia-head { background: rgba(255, 255, 255, .7); }
:root[data-theme="light"] .ia-seal { background: rgba(236, 231, 227, .7); }
:root[data-theme="light"] .ia-sug { background: linear-gradient(180deg, var(--s1), var(--s2)); }
:root[data-theme="light"] .ia-sug--feat { background: radial-gradient(120% 180% at 0% 0%, rgba(178, 44, 56, .08), transparent 55%), linear-gradient(180deg, var(--s1), var(--s2)); }
:root[data-theme="light"] .ia-bubble { background: linear-gradient(180deg, #FDEDEA, #FBE3DF); border-color: rgba(178, 44, 56, .16); box-shadow: 0 8px 20px -14px rgba(70, 46, 28, .3); color: var(--tx); }
:root[data-theme="light"] .ia-think__h:hover { background: rgba(48, 30, 18, .03); }
:root[data-theme="light"] .ia-stat.red { background: linear-gradient(180deg, rgba(178, 44, 56, .07), rgba(236, 231, 227, .5)); }
:root[data-theme="light"] .ia-stat.red b { color: var(--red-tx); }
:root[data-theme="light"] .ia-composer { background: linear-gradient(180deg, rgba(255, 255, 255, .6), rgba(245, 243, 241, .9)); }
:root[data-theme="light"] .ia-orb.lg { box-shadow: 0 0 0 1px rgba(178, 44, 56, .35), 0 0 40px -8px rgba(178, 44, 56, .55), 0 18px 40px -20px rgba(178, 44, 56, .7); }

/* Ordens de serviço, bordado, DTF, costura, estoque */
:root[data-theme="light"] .os-foto__del { background: rgba(255, 255, 255, .9); box-shadow: 0 1px 3px rgba(70, 46, 28, .2); }
:root[data-theme="light"] .tp-paper { box-shadow: 0 24px 60px -30px rgba(70, 46, 28, .4), 0 0 0 1px var(--line-2); }
:root[data-theme="light"] .swatch { border-color: rgba(48, 30, 18, .18); }
:root[data-theme="light"] .mq__hoop { background: repeating-radial-gradient(circle at 50% 50%, rgba(48, 30, 18, .04) 0 3px, transparent 3px 6px), var(--s3); box-shadow: inset 0 0 0 6px #D9D2CE, inset 0 0 0 8px #C7BEBA; }
:root[data-theme="light"] .mq__needle { box-shadow: 0 0 0 1px rgba(48, 30, 18, .25); background: linear-gradient(#8a8285, #3a3436); }
:root[data-theme="light"] .spool { box-shadow: inset 0 0 0 1px rgba(48, 30, 18, .15); }
:root[data-theme="light"] .art-th { background: radial-gradient(circle at 50% 40%, rgba(255, 255, 255, .9), transparent 70%), #ECE8E5; }
:root[data-theme="light"] .art-th__v { background: rgba(255, 255, 255, .9); }
:root[data-theme="light"] .fab__sw { box-shadow: inset 0 0 0 1px rgba(48, 30, 18, .12), 4px 0 10px -6px rgba(70, 46, 28, .35); }
:root[data-theme="light"] .cs-in { background: rgba(232, 227, 223, .5); }
:root[data-theme="light"] .pk.lock { background: repeating-linear-gradient(135deg, rgba(48, 30, 18, .035) 0 8px, transparent 8px 16px), var(--s2); }
:root[data-theme="light"] .cone > path:first-of-type { fill: rgba(48, 30, 18, .04); stroke: rgba(48, 30, 18, .22); }
:root[data-theme="light"] .phone-glow { opacity: .45; }
:root[data-theme="light"] .tab-dev { box-shadow: 0 30px 60px -30px rgba(70, 46, 28, .5); }
:root[data-theme="light"] .phone { box-shadow: 0 0 0 2px #0a090b, 0 40px 80px -36px rgba(70, 46, 28, .55), inset 0 0 0 1px rgba(255,255,255,.08); }

/* Compras, qualidade, RH, produção */
:root[data-theme="light"] .cmp-sug__row.gerado .cmp-check, :root[data-theme="light"] .cmp-div-ok__ic { color: #fff; }
:root[data-theme="light"] :is(.cmp-stamp, .qa-stamp > div) { background: rgba(255, 255, 255, .88); }
:root[data-theme="light"] .qa-item.ok .qa-box, :root[data-theme="light"] .qa-insp.approved #qa-approve { color: #fff; }
:root[data-theme="light"] .qa-item.ok .qa-box { box-shadow: 0 0 12px -4px rgba(17, 112, 61, .6); }
:root[data-theme="light"] .qa-par__bar i { opacity: .28; }
:root[data-theme="light"] .qa-par__bar span { color: var(--tx); }
:root[data-theme="light"] :is(.qa-nc, .qa-fila li, .rh-tr):hover { background: rgba(48, 30, 18, .03); }
:root[data-theme="light"] :is(.rx-steps span.done svg, .rx-ciclo .done svg) { color: #fff; }
:root[data-theme="light"] .qr-rec__box { box-shadow: 0 0 0 999px rgba(0, 0, 0, .35); }

/* Planejamento: cores de etapa (algumas são lima clara) escurecidas quando viram texto */
:root[data-theme="light"] :is(.pt2__et, .stg__ic, .stg__cols li svg) { color: color-mix(in srgb, var(--ec) 55%, #1C1A1B); }
:root[data-theme="light"] .gantt__start { color: #5E6B12; }
:root[data-theme="light"] .pt-card2 { background: var(--s1); }
:root[data-theme="light"] .gantt__bar em { text-shadow: 0 1px 0 rgba(255, 255, 255, .55); }
:root[data-theme="light"] .gantt__rec { background: repeating-linear-gradient(135deg, rgba(48, 30, 18, .14) 0 4px, transparent 4px 8px); }
:root[data-theme="light"] .pt-card2:hover { box-shadow: 0 12px 26px -14px rgba(70, 46, 28, .3); }

/* Configurações e produtos */
.cfg-theme { display: flex; align-items: center; justify-content: space-between; gap: 20px; flex-wrap: wrap; }
.cfg-theme > div:first-child { display: grid; gap: 4px; max-width: 62ch; }
.cfg-theme .h4 { margin: 0; font-size: var(--fs-md); color: var(--tx); }
.cfg-theme small svg { width: 13px; height: 13px; vertical-align: -2px; }
.cfg-theme__opts { display: flex; gap: 10px; }
.cfg-theme__opt { display: grid; gap: 8px; padding: 8px; border-radius: var(--r-md); border: 1px solid var(--line-2); background: var(--s1); transition: border-color var(--t-fast), box-shadow var(--t-fast); }
.cfg-theme__opt:hover { border-color: var(--line-3); }
.cfg-theme__opt.on { border-color: var(--red-line); box-shadow: 0 0 0 3px var(--red-soft); }
.cfg-theme__pv { display: grid; grid-template-columns: 22px 1fr; grid-template-rows: 1fr 1fr; gap: 4px; width: 128px; height: 72px; padding: 6px; border-radius: 8px; }
.cfg-theme__pv i:first-child { grid-row: span 2; border-radius: 4px; }
.cfg-theme__pv i { border-radius: 4px; }
.cfg-theme__pv.dark { background: #0C0A08; } .cfg-theme__pv.dark i { background: #25201B; } .cfg-theme__pv.dark i:last-child { background: linear-gradient(90deg, #B22C38 30%, #25201B 30%); }
.cfg-theme__pv.light { background: #F5F3F1; box-shadow: inset 0 0 0 1px rgba(48, 30, 18, .08); } .cfg-theme__pv.light i { background: #FFFFFF; box-shadow: 0 1px 2px rgba(70, 46, 28, .12); } .cfg-theme__pv.light i:last-child { background: linear-gradient(90deg, #B22C38 30%, #FFFFFF 30%); }
.cfg-theme__lb { display: flex; align-items: center; justify-content: center; gap: 6px; font-size: var(--fs-sm); color: var(--tx-2); }
.cfg-theme__opt.on .cfg-theme__lb { color: var(--tx); font-weight: 500; }
.cfg-theme__lb svg { width: 15px; height: 15px; }
:root[data-theme="light"] .cfg-sw i { box-shadow: inset 0 0 0 1px rgba(48, 30, 18, .14); }
:root[data-theme="light"] .prd-sketch { filter: drop-shadow(0 18px 18px rgba(70, 46, 28, .16)); }

/* Apresentação (slides): fora do slide segue o tema; o slide é uma ilha escura */
:root[data-theme="light"] .deck { box-shadow: 0 30px 70px -40px rgba(70, 46, 28, .55); }

/* ============ 6. Financeiro (genérico, sem depender da estrutura interna) ============ */

/* ============ 6. Financeiro (genérico; o módulo está sendo reescrito, então só o essencial) ============ */
:root[data-theme="light"] :is(.fin-cc__ok, .fin-cc__row.done .fin-cc__link) { color: #fff; }
:root[data-theme="light"] .fin-cat-t td { background: rgba(48, 30, 18, .03); }
