/* tema gerado a partir de empresa.json — nao editar na mao */
:root, html.claro, .vitrine {
  --marca: #076633; --marca2: #94C11F;
  --bg: #F3F5F9; --card: #FFFFFF; --card2: #F8FAFC; --linha: #E2E8F0;
  --barra: #FFFFFF; --btn: #F1F5F9; --btn2: #E2E8F0;
  --txt: #0F172A; --txt2: #475569; --txt3: #64748B; --txt4: #94A3B8;
  --ac: #076633; --ac2: #25784B; --ac-txt: #FFFFFF;
  --tinta: #E1EDE7; --foco: rgba(148,193,31,0.22);
  --ok: #15803D; --alerta: #B45309; --perigo: #B91C1C; --azul: #1D4ED8;
  --f-ok: #DCFCE7; --f-alerta: #FEF3C7; --f-perigo: #FEE2E2; --f-azul: #DBEAFE; --f-neutro: #F1F5F9;
  --b-ok: #16A34A; --b-alerta: #D97706; --b-perigo: #DC2626; --b-neutro: #CBD5E1; --b-azul: #93C5FD;
  --sombra: 0 1px 2px rgba(15,23,42,.04), 0 12px 32px -20px rgba(15,23,42,.18);
  --campo: #FFFFFF; --cortina: rgba(15,23,42,.45);
  --raio: 16px; --raio2: 12px;
  color-scheme: light;
}
html.escuro {
  --bg: #0e0e0e; --card: #1a1a1a; --card2: #202020; --linha: #2e2e2e;
  --barra: #141414; --btn: #242424; --btn2: #303030;
  --txt: #ececec; --txt2: #9a9a9a; --txt3: #8a8a8a; --txt4: #6e6e6e;
  --ac: #94C11F; --ac2: #A7CC47; --ac-txt: #101010;
  --tinta: rgba(148,193,31,0.16); --foco: rgba(148,193,31,0.3);
  --ok: #7ee787; --alerta: #ffc86b; --perigo: #ff8888; --azul: #7fb8ff;
  --f-ok: #17351f; --f-alerta: #3a2f14; --f-perigo: #3d1717; --f-azul: #16283d; --f-neutro: #262626;
  --b-ok: #2f7d43; --b-alerta: #b8862b; --b-perigo: #a32b2b; --b-neutro: #3a3a3a; --b-azul: #27456b;
  --sombra: none;
  --campo: #161616; --cortina: rgba(0,0,0,.88);
  color-scheme: dark;
}
html.portal:not(.escuro) body { background: var(--bg); color: var(--txt); }
html.portal:not(.escuro) header { background: var(--barra); border-bottom: 1px solid var(--linha); box-shadow: 0 1px 2px rgba(15,23,42,.04); }
html.portal:not(.escuro) header .marca { display: flex; align-items: center; gap: 10px; flex: 1 1 auto; min-width: 0; }
html.portal:not(.escuro) header .titulo b { font-weight: 800; letter-spacing: -.01em; }
html.portal:not(.escuro) header .titulo span, html.portal:not(.escuro) header .titulo .casa { color: var(--txt3); }
html.portal:not(.escuro) .btn-cab { width: 40px; height: 40px; border-radius: 12px; background: #F1F5F9; color: #334155; border: none; }
.marca-tile { flex: 0 0 auto; width: 36px; height: 36px; border-radius: 11px; background: var(--marca); color: #FFFFFF; display: inline-flex; align-items: center; justify-content: center; font-weight: 800; font-size: .86rem; letter-spacing: .02em; }
html.escuro .marca-tile { background: var(--marca2); color: #101010; }
html.portal:not(.escuro) .btn-cab:hover { background: #E2E8F0; color: #0F172A; }
@media (max-width: 560px) {
  html.portal:not(.escuro) header { gap: 6px; padding-left: 10px; padding-right: 10px; }
  html.portal:not(.escuro) .btn-cab { width: 34px; height: 34px; border-radius: 10px; }
  html.portal:not(.escuro) .btn-cab svg { width: 18px; height: 18px; }
  html.portal:not(.escuro) .marca-tile { width: 32px; height: 32px; font-size: .78rem; }
  html.portal:not(.escuro) header .titulo b { font-size: .92rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
}
html.portal:not(.escuro) nav { background: var(--barra); border-top: 1px solid var(--linha); box-shadow: 0 -1px 2px rgba(15,23,42,.04); }
html.portal:not(.escuro) nav button { color: var(--txt3); font-weight: 700; }
html.portal:not(.escuro) nav button.ativa { color: var(--marca); }
html.portal:not(.escuro) nav.lateral { box-shadow: none; border-top: none; }
html.portal:not(.escuro) .aba { border-radius: 12px; font-weight: 600; color: #334155; }
html.portal:not(.escuro) .aba.ativa { background: var(--marca); color: #FFFFFF; font-weight: 700; }
html.portal:not(.escuro) nav.lateral .aba.ativa { background: #FFFFFF; border: 1px solid var(--linha); color: var(--marca); box-shadow: 0 1px 2px rgba(15,23,42,.04); }
html.portal:not(.escuro) nav.lateral .grupo { color: var(--txt4); font-weight: 700; letter-spacing: .08em; }
html.portal:not(.escuro) .cartao, html.portal:not(.escuro) .noite-cartao, html.portal:not(.escuro) .por-nome-inline, html.portal:not(.escuro) .especial-box, html.portal:not(.escuro) .pendencia { border-radius: var(--raio); border: 1px solid var(--linha); box-shadow: var(--sombra); background: var(--card); }
html.portal:not(.escuro) .item { border-radius: var(--raio2); background: var(--card); }
html.portal:not(.escuro) .link-caixa, html.portal:not(.escuro) .beneficio, html.portal:not(.escuro) .cota { border-radius: var(--raio2); }
html.portal:not(.escuro) .selo { border-radius: 8px; }
html.portal:not(.escuro) .vazio { font-style: normal; color: var(--txt3); }
html.portal:not(.escuro) .btn, html.portal:not(.escuro) .btn-principal { border-radius: var(--raio2); font-weight: 800; }
html.portal:not(.escuro) .btn.secundario, html.portal:not(.escuro) .btn.fantasma { background: #FFFFFF; color: #334155; border: 1px solid var(--linha); }
html.portal:not(.escuro) .btn.secundario:hover, html.portal:not(.escuro) .btn.fantasma:hover { background: #F8FAFC; }
html.portal:not(.escuro) .campo input, html.portal:not(.escuro) .campo textarea, html.portal:not(.escuro) .campo select { background: #FFFFFF; border: 1.5px solid var(--linha); border-radius: var(--raio2); color: var(--txt); }
html.portal:not(.escuro) .campo input:focus, html.portal:not(.escuro) .campo textarea:focus, html.portal:not(.escuro) .campo select:focus { outline: none; border-color: var(--marca2); box-shadow: 0 0 0 3px var(--foco); }
html.portal:not(.escuro) .campo label { color: var(--txt2); font-weight: 700; }
html.portal:not(.escuro) .folha-topo { background: var(--barra); border-bottom: 1px solid var(--linha); }
html.portal:not(.escuro) .folha-topo .t { font-weight: 800; letter-spacing: -.01em; }
html.portal:not(.escuro) th { background: #F8FAFC; color: var(--txt3); }
html.portal:not(.escuro) h3 { letter-spacing: -.01em; }
