/* Contraste roxo (referência HunterPro, escolha do Theo em 2026-10-12).
   Carregado depois do theme-noturno.css: fundo preto-arroxeado com brilho roxo, cards com borda roxa e brilho suave,
   textos secundários mais claros e roxo #a855f7 no lugar do laranja. Verde continua só em números de resultado. */
:root {
  --color-carbon: #0d0a14; --color-absolute-black: #110d1a; --color-graphite: #1a1426;
  --color-steel: #b3adc4; --color-divider: #5e4f7a; --color-control: #2c2340; --color-glyph: #d9d4e6;
  --color-accent: #a855f7; --color-accent-hover: #b97afa; --color-on-accent: #ffffff;
  --violet-line: rgba(168, 85, 247, .42);
  --violet-glow: 0 0 0 1px rgba(168, 85, 247, .08), 0 0 28px -8px rgba(168, 85, 247, .55);
  --violet-soft: rgba(168, 85, 247, .14);
  --hot-strong: rgba(168, 85, 247, .28);
  --radar-bg-1: #1a1426;
  --radar-ring: #2c2340;
}

/* fundo com brilho roxo (camada fixa: não repinta ao rolar) */
html { background: var(--color-carbon) !important; }
body { background: transparent !important; }
body::before {
  content: ""; position: fixed; inset: 0; z-index: -1; pointer-events: none;
  background:
    radial-gradient(60% 50% at 0% 0%, rgba(124, 58, 237, .22), transparent 70%),
    radial-gradient(50% 45% at 100% 100%, rgba(168, 85, 247, .16), transparent 70%),
    var(--color-carbon);
}
.vhead, .band { background: transparent !important; }
.vsub, .band p { color: var(--color-steel) !important; }

/* menu lateral */
.side { background: linear-gradient(180deg, #160f24, #0f0b18) !important; border-right: 1px solid var(--violet-line) !important; }
.side-nav a { color: #ece9f5 !important; }
.side-nav a:hover { background: var(--violet-soft) !important; }
.side-nav a.on {
  background: linear-gradient(90deg, rgba(168, 85, 247, .38), rgba(124, 58, 237, .22)) !important;
  box-shadow: inset 0 0 0 1px rgba(192, 132, 252, .6), 0 0 18px -6px rgba(168, 85, 247, .7) !important;
  color: #fff !important;
}
.side-nav a.on .ico { color: #fff !important; }
.side-nav a.on .tbadge { background: #fff !important; color: #2a1250 !important; }
.topbar { background: #110d1a !important; border-bottom-color: var(--violet-line) !important; }

/* cards com borda roxa e brilho */
.dpanel, .hkpi, .qcbox, .howto, .dgoal, #v-radar .lead, #v-radar .searchbar .panel, .demo, .funnel button, #v-radar #map {
  background: linear-gradient(180deg, #151020, #0f0b17) !important;
  border: 1px solid var(--violet-line) !important;
  box-shadow: var(--violet-glow) !important;
}
.kcol { background: #110d1a !important; border: 1px solid var(--color-control) !important; }
.kcol.over { background: #1d1430 !important; border-color: var(--color-accent) !important; }
.kcard { background: #181224 !important; border-color: var(--color-control) !important; }
.kcard:hover { border-color: var(--violet-line) !important; }
.psum > div, .dnums > div { background: #110d1a !important; }
.demo.soon { background: transparent !important; box-shadow: none !important; border-style: dashed !important; }

/* chips e botões contornados com tom roxo */
.kchip, .chip, .pill, .sig li, .tauto, .kcount, .tbadge, .act.done, .icoact.done, .pay-pendente, .kchip.money, .pay-pago, .pill.st-fechado, .chip.star { background: rgba(168, 85, 247, .14) !important; }
.kchip, .chip, .pill, .sig li, .tauto, .kcount, .tbadge { color: #e4ddf3 !important; }
.act, .btn, .knext, .clegend button, .hq, .kcontact { border-color: var(--color-divider) !important; color: #f5f3fa !important; }
.act:hover, .btn:hover, .knext:hover, .hq:hover { background: var(--violet-soft) !important; border-color: var(--color-accent) !important; }
.act.prim, .act.prop, #v-radar .act.prop, .go, .go.sm, .qc-send, .views .btn[aria-pressed="true"], .lggo {
  box-shadow: 0 6px 20px -6px rgba(168, 85, 247, .7) !important;
}
.seg { background: rgba(168, 85, 247, .1) !important; }
.seg-pill { background: rgba(168, 85, 247, .45) !important; }

/* campos */
input[type="text"], input[type="search"], input[type="password"], input[type="email"], input[type="tel"], input[type="url"], input[type="date"], select, textarea,
body .ff input, body .ff select, body .ff textarea, .cbar input, .cbar select, .vacts input[type="search"] {
  background: #0f0b17 !important; border-color: var(--color-divider) !important;
}
select option { background: #1a1426; }

/* números e gráficos */
.hk-v, .big { color: #fff; }
.funnel .bar i, .hbar .fill { background: var(--color-accent) !important; }
.cout .fill, .lg-out i, .ctip .t-out i { background: #6d28d9 !important; }
.ccol.cur, .ccol:hover { background: var(--violet-soft) !important; }
.ctip, .toastbox, #map .leaflet-popup-content-wrapper, #map .leaflet-popup-tip { background: #1a1426 !important; border-color: var(--violet-line) !important; }
.htrack, .mini, .gbar, .funnel .bar { background: #241b36 !important; }

/* ficha lateral, avisos e login */
.shbox { background: var(--color-carbon) !important; }
.shhead, .shleft { background: #110d1a !important; border-color: var(--violet-line) !important; }
.shtabs button[aria-selected="true"] { background: var(--color-carbon) !important; }
.gline, .wastate { background: rgba(168, 85, 247, .12) !important; }
.login { background: radial-gradient(70% 60% at 50% 0%, rgba(124, 58, 237, .28), transparent 70%), var(--color-carbon) !important; }
.mk { border-color: #0d0a14 !important; }
.radar { border-color: var(--violet-line) !important; }
