/* ============================================================
   B2IF — Identidade Visual Oficial v4
   Referência fiel: Planejador Dedicado + Logo oficial B2IF
   
   Paleta:
     #06101a  — fundo base (azul marinho escuro)
     #0a1a28  — sidebar
     #112230  — cards / painéis / inputs
     #0d1c2e  — hover / linha alternada
     #1e3b52  — bordas
     #159a9c  — teal B2IF (destaque)
     #00c0a3  — teal vivo (arco do logo)
     #e2e8f0  — texto principal
     #7fa8b8  — texto secundário
     #4a7080  — texto muted/labels

   Logo oficial: círculo branco + arco teal no topo + pilar/asas brancos
   Fonte: Kanit (Google Fonts)
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Kanit:wght@300;400;500;600;700&display=swap');

/* ══════════════════════════════════════════════════════════
   VARIÁVEIS GLOBAIS
   ══════════════════════════════════════════════════════════ */
:root {
  /* Paleta B2IF */
  --b2-base:        #06101a;
  --b2-aside:       #0a1a28;
  --b2-card:        #112230;
  --b2-card2:       #0d1c2e;
  --b2-border:      #1e3b52;
  --b2-border2:     rgba(21,154,156,0.35);
  --b2-teal:        #159a9c;
  --b2-teal-vivo:   #00c0a3;
  --b2-teal-glow:   rgba(21,154,156,0.16);
  --b2-teal-act:    rgba(21,154,156,0.18);
  --b2-dark:        #06101a;
  --b2-text:        #e2e8f0;
  --b2-text2:       #7fa8b8;
  --b2-text3:       #4a7080;

  /* Sobrescreve variáveis globais do sistema */
  --bg:             #06101a;
  --bg2:            #112230;
  --bg3:            #0d1c2e;
  --border:         #1e3b52;
  --border2:        rgba(21,154,156,0.28);
  --text:           #e2e8f0;
  --text2:          #7fa8b8;
  --text3:          #4a7080;
  --azul:           #159a9c;
  --azul-dim:       rgba(21,154,156,0.14);
  --verde:          #10b981;
  --verde-dim:      rgba(16,185,129,0.14);
  --laranja:        #f59e0b;
  --laranja-dim:    rgba(245,158,11,0.14);
  --vermelho:       #ef4444;
  --vermelho-dim:   rgba(239,68,68,0.14);
  --roxo:           #8b5cf6;
  --roxo-dim:       rgba(139,92,246,0.14);
  --ciano:          #06b6d4;
  --ciano-dim:      rgba(6,182,212,0.14);
  --radius:         10px;
  --radius-sm:      8px;
  --shadow:         0 4px 24px rgba(0,0,0,0.55);
  --transition:     0.15s;
}

/* ══════════════════════════════════════════════════════════
   TIPOGRAFIA — Kanit global
   ══════════════════════════════════════════════════════════ */
*, *::before, *::after { box-sizing: border-box; }
html, body,
button, input, select, textarea,
.ni, .ns, .logo-name, .logo-sub,
.pt, .ps, .card, .btn, .sc, .sl, .sv,
.pl-ni, .pl-ns, .pl-logo-name, .pl-logo-sub,
.pl-page-title, .pl-page-sub {
  font-family: 'Kanit', system-ui, -apple-system, sans-serif !important;
}
body {
  font-family: 'Kanit', system-ui, sans-serif !important;
  background: var(--b2-base) !important;
  color: var(--b2-text) !important;
}

/* ══════════════════════════════════════════════════════════
   SIDEBAR — fundo #0a1a28
   ══════════════════════════════════════════════════════════ */
aside {
  background: var(--b2-aside) !important;
  border-right: 1px solid var(--b2-border) !important;
  box-shadow: 2px 0 20px rgba(0,0,0,0.45) !important;
}

/* ══════════════════════════════════════════════════════════
   LOGO B2IF — fiel ao original
   Símbolo: círculo branco + arco teal no topo + pilar+asas brancos
   ══════════════════════════════════════════════════════════ */
.logo, .pl-logo {
  padding: 16px 14px 14px !important;
  border-bottom: 1px solid var(--b2-border) !important;
  background: transparent !important;
  flex-shrink: 0;
}
.logo-name, .logo-sub,
.pl-logo-name, .pl-logo-sub {
  display: none !important;
}
/* Logo fiel ao original:
   - Círculo branco quase completo, gap ~64° no topo
   - Arco teal (#00c0a3) cobrindo o gap, ligeiramente interno
   - Pilar central retangular sólido branco
   - Duas asas triangulares sólidas brancas (simétricas ao pilar)
   - Wordmark "B2IF" geométrico bold Kanit
*/
.logo::before, .pl-logo::before {
  content: '';
  display: block;
  width: 120px;
  height: 40px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 160 48'%3E%3Cpath d='M38.14 9.86 A20 20 0 1 1 9.86 9.86' fill='none' stroke='%23ffffff' stroke-width='2.5' stroke-linecap='butt'/%3E%3Cpath d='M15.55 5.87 A20 20 0 0 1 32.45 5.87' fill='none' stroke='%2300c0a3' stroke-width='2.5' stroke-linecap='butt'/%3E%3Cpolygon points='20.3,9.0 20.3,28.0 14.0,36.5 8.5,30.5 8.5,22.0' fill='%23ffffff'/%3E%3Cpolygon points='27.7,9.0 27.7,28.0 34.0,36.5 39.5,30.5 39.5,22.0' fill='%23ffffff'/%3E%3Crect x='21.1' y='7.0' width='5.8' height='35.5' fill='%23ffffff'/%3E%3Ctext x='56' y='32' font-family='Kanit,sans-serif' font-weight='700' font-size='24' fill='%23ffffff' letter-spacing='1'%3EB2IF%3C/text%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: left center;
}
.logo-sub-dynamic {
  font-size: 9px;
  color: var(--b2-teal-vivo);
  font-weight: 500;
  letter-spacing: 1px;
  text-transform: uppercase;
  font-family: 'Kanit', sans-serif;
  margin-top: 3px;
  opacity: 0.75;
}

/* ── Itens de navegação na sidebar ───────────────────────── */
.ni {
  font-family: 'Kanit', sans-serif !important;
  font-weight: 400;
  font-size: 13px;
  color: var(--b2-text2) !important;
  border-radius: 8px !important;
  margin: 1px 8px !important;
  transition: background 0.15s, color 0.15s;
}
.ni:hover {
  background: var(--b2-teal-glow) !important;
  color: var(--b2-text) !important;
}
.ni.active {
  background: var(--b2-teal-act) !important;
  color: var(--b2-teal) !important;
  font-weight: 600 !important;
}
.ns, .ns-label {
  font-family: 'Kanit', sans-serif !important;
  font-weight: 500;
  font-size: 10px !important;
  color: var(--b2-text3) !important;
  letter-spacing: 1.2px;
  text-transform: uppercase !important;
  padding: 10px 14px 4px !important;
}
.nb {
  background: var(--b2-teal) !important;
  color: #fff !important;
  font-family: 'Kanit', sans-serif !important;
  font-weight: 600;
  font-size: 10px;
  border-radius: 10px;
  padding: 1px 6px;
}
.sf {
  border-top: 1px solid var(--b2-border) !important;
  background: transparent !important;
}
.sidebar-toggle {
  color: var(--b2-text3) !important;
  background: transparent !important;
}
.sidebar-toggle:hover {
  background: var(--b2-teal) !important;
  color: #fff !important;
}

/* ══════════════════════════════════════════════════════════
   MAIN CONTENT — fundo #06101a
   ══════════════════════════════════════════════════════════ */
main, #main, #pl-main {
  background: var(--b2-base) !important;
}
.pt {
  font-family: 'Kanit', sans-serif !important;
  font-weight: 700;
  font-size: 24px !important;
  color: var(--b2-text) !important;
}
.ps {
  font-family: 'Kanit', sans-serif !important;
  font-size: 13px;
  color: var(--b2-text2) !important;
}

/* ── Abas internas ────────────────────────────────────────── */
.pl-nav-btn {
  font-family: 'Kanit', sans-serif !important;
  font-weight: 500 !important;
  font-size: 13px !important;
  color: var(--b2-text3) !important;
  background: none !important;
  border: none !important;
  border-bottom: 2px solid transparent !important;
  padding: 8px 16px !important;
  cursor: pointer;
  transition: color 0.15s, border-color 0.15s;
  margin-bottom: -1px;
  white-space: nowrap;
}
.pl-nav-btn:hover { color: var(--b2-teal) !important; }
button.pl-nav-btn[style*="border-bottom"],
button[style*="color:#159a9c"] {
  color: var(--b2-teal) !important;
  border-bottom-color: var(--b2-teal) !important;
}

/* ══════════════════════════════════════════════════════════
   STAT CARDS
   ══════════════════════════════════════════════════════════ */
.sc {
  background: var(--b2-card) !important;
  border: 1px solid var(--b2-border) !important;
  border-radius: var(--radius) !important;
  box-shadow: 0 2px 12px rgba(0,0,0,0.40) !important;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.sc:hover {
  border-color: var(--b2-teal) !important;
  box-shadow: 0 4px 20px rgba(21,154,156,0.14) !important;
}
.sl {
  font-family: 'Kanit', sans-serif !important;
  font-weight: 500;
  font-size: 11px;
  color: var(--b2-text2) !important;
  text-transform: uppercase;
  letter-spacing: 0.8px;
}
.sv {
  font-family: 'Kanit', sans-serif !important;
  font-weight: 700;
  font-size: 28px;
  color: var(--b2-text) !important;
}

/* ══════════════════════════════════════════════════════════
   CARDS GENÉRICOS
   ══════════════════════════════════════════════════════════ */
.card {
  background: var(--b2-card) !important;
  border: 1px solid var(--b2-border) !important;
  border-radius: var(--radius) !important;
  box-shadow: 0 2px 12px rgba(0,0,0,0.35) !important;
  font-family: 'Kanit', sans-serif !important;
  color: var(--b2-text) !important;
  transition: border-color 0.2s;
}
.card:hover {
  border-color: rgba(21,154,156,0.40) !important;
}

/* ══════════════════════════════════════════════════════════
   BOTÕES
   ══════════════════════════════════════════════════════════ */
.btn {
  font-family: 'Kanit', sans-serif !important;
  font-weight: 500;
  letter-spacing: 0.3px;
  border-radius: 8px;
}
.btnp {
  background: var(--b2-teal) !important;
  border-color: var(--b2-teal) !important;
  color: #fff !important;
  box-shadow: 0 2px 10px rgba(21,154,156,0.30) !important;
}
.btnp:hover {
  background: #117b7d !important;
  border-color: #117b7d !important;
  box-shadow: 0 4px 16px rgba(21,154,156,0.40) !important;
}
.btns {
  background: var(--b2-card) !important;
  border: 1px solid var(--b2-border) !important;
  color: var(--b2-text2) !important;
}
.btns:hover {
  background: var(--b2-teal-glow) !important;
  border-color: var(--b2-teal) !important;
  color: var(--b2-teal) !important;
}

/* ══════════════════════════════════════════════════════════
   KANBAN BOARD — fiel ao Planejador Dedicado
   ══════════════════════════════════════════════════════════ */
.kb-col, .kbody {
  background: var(--b2-card2) !important;
  border: 1px solid var(--b2-border) !important;
  border-radius: var(--radius) !important;
}
.kb-col-header {
  font-family: 'Kanit', sans-serif !important;
  font-weight: 600;
  font-size: 13px;
  color: var(--b2-text) !important;
  letter-spacing: 0.3px;
}
.kb-card, .kcard {
  background: var(--b2-card) !important;
  border: 1px solid var(--b2-border) !important;
  border-radius: 8px !important;
  box-shadow: 0 1px 6px rgba(0,0,0,0.35) !important;
  font-family: 'Kanit', sans-serif !important;
  color: var(--b2-text) !important;
  transition: border-color 0.15s, box-shadow 0.15s;
}
.kb-card:hover, .kcard:hover {
  border-color: rgba(21,154,156,0.40) !important;
  box-shadow: 0 3px 14px rgba(21,154,156,0.15) !important;
}
.kcard-name {
  color: var(--b2-text) !important;
  font-weight: 600;
}
.kcard-meta { color: var(--b2-text2) !important; }
.kbody.drag-over {
  background: var(--b2-teal-glow) !important;
  border-color: var(--b2-teal) !important;
}
.kcard-btn {
  background: var(--b2-teal-glow) !important;
  color: var(--b2-teal) !important;
  border: 1px solid rgba(21,154,156,0.28) !important;
}
.kcard-btn:hover {
  background: rgba(21,154,156,0.26) !important;
}

/* ══════════════════════════════════════════════════════════
   INPUTS / SELECTS / FSEL
   ══════════════════════════════════════════════════════════ */
input, select, textarea, .fsel, .finput {
  font-family: 'Kanit', sans-serif !important;
  background: var(--b2-card) !important;
  color: var(--b2-text) !important;
  border: 1px solid var(--b2-border) !important;
  border-radius: 8px;
}
input::placeholder, textarea::placeholder {
  color: var(--b2-text3) !important;
}
input:focus, select:focus, textarea:focus, .fsel:focus {
  border-color: var(--b2-teal) !important;
  outline: none;
  box-shadow: 0 0 0 3px rgba(21,154,156,0.14) !important;
}
select option, .fsel option {
  background: var(--b2-card) !important;
  color: var(--b2-text) !important;
}

/* ══════════════════════════════════════════════════════════
   TABELAS
   ══════════════════════════════════════════════════════════ */
table {
  font-family: 'Kanit', sans-serif !important;
  background: var(--b2-card) !important;
  color: var(--b2-text) !important;
}
th {
  background: var(--b2-card2) !important;
  color: var(--b2-text2) !important;
  font-family: 'Kanit', sans-serif !important;
  font-weight: 600;
  font-size: 11px;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  border-bottom: 1px solid var(--b2-border) !important;
}
td {
  color: var(--b2-text) !important;
  border-color: var(--b2-border) !important;
  font-family: 'Kanit', sans-serif !important;
}
tbody tr:nth-child(even) td {
  background: var(--b2-card2) !important;
}
tbody tr:hover td {
  background: var(--b2-teal-glow) !important;
}

/* ══════════════════════════════════════════════════════════
   MODAIS
   ══════════════════════════════════════════════════════════ */
.modal {
  background: var(--b2-card) !important;
  border: 1px solid var(--b2-border2) !important;
  box-shadow: 0 24px 64px rgba(0,0,0,0.65) !important;
  font-family: 'Kanit', sans-serif !important;
  color: var(--b2-text) !important;
  border-radius: var(--radius) !important;
}
.modal h2, .modal h3, .modal-title {
  font-family: 'Kanit', sans-serif !important;
  font-weight: 700;
  color: var(--b2-text) !important;
}

/* ══════════════════════════════════════════════════════════
   ABAS PJ
   ══════════════════════════════════════════════════════════ */
.pj-tab {
  font-family: 'Kanit', sans-serif !important;
  font-weight: 500;
  color: var(--b2-text3) !important;
  background: none !important;
}
.pj-tab-ativo {
  color: var(--b2-teal) !important;
  border-bottom-color: var(--b2-teal) !important;
}

/* ══════════════════════════════════════════════════════════
   USER CHIP
   ══════════════════════════════════════════════════════════ */
.user-chip-avatar {
  background: var(--b2-teal) !important;
  color: #fff !important;
  font-family: 'Kanit', sans-serif !important;
  font-weight: 700;
}
.user-chip-name {
  font-family: 'Kanit', sans-serif !important;
  font-weight: 600;
  color: var(--b2-text) !important;
}

/* ══════════════════════════════════════════════════════════
   SPINNER / SCROLLBAR / SELEÇÃO
   ══════════════════════════════════════════════════════════ */
.spinner {
  border-color: var(--b2-border) !important;
  border-top-color: var(--b2-teal) !important;
}
::-webkit-scrollbar { width: 5px; height: 5px; }
::-webkit-scrollbar-track { background: var(--b2-base) !important; }
::-webkit-scrollbar-thumb {
  background: rgba(21,154,156,0.28) !important;
  border-radius: 3px;
}
::-webkit-scrollbar-thumb:hover {
  background: rgba(21,154,156,0.50) !important;
}
::selection {
  background: rgba(21,154,156,0.28);
  color: #fff;
}

/* ══════════════════════════════════════════════════════════
   LOGIN SCREENS
   ══════════════════════════════════════════════════════════ */
.login-screen {
  background: var(--b2-base) !important;
  background-image:
    radial-gradient(ellipse at 20% 30%, rgba(21,154,156,0.10) 0%, transparent 55%),
    radial-gradient(ellipse at 80% 75%, rgba(0,192,163,0.06) 0%, transparent 45%) !important;
}
.login-box {
  background: var(--b2-card) !important;
  border: 1px solid var(--b2-border2) !important;
  box-shadow: 0 24px 64px rgba(0,0,0,0.60) !important;
  border-radius: var(--radius) !important;
}
.login-logo {
  font-size: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 12px 0 16px !important;
}
.login-logo::before {
  content: '';
  display: block;
  width: 148px;
  height: 50px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 160 48'%3E%3Cpath d='M38.14 9.86 A20 20 0 1 1 9.86 9.86' fill='none' stroke='%23ffffff' stroke-width='2.5' stroke-linecap='butt'/%3E%3Cpath d='M15.55 5.87 A20 20 0 0 1 32.45 5.87' fill='none' stroke='%2300c0a3' stroke-width='2.5' stroke-linecap='butt'/%3E%3Cpolygon points='20.3,9.0 20.3,28.0 14.0,36.5 8.5,30.5 8.5,22.0' fill='%23ffffff'/%3E%3Cpolygon points='27.7,9.0 27.7,28.0 34.0,36.5 39.5,30.5 39.5,22.0' fill='%23ffffff'/%3E%3Crect x='21.1' y='7.0' width='5.8' height='35.5' fill='%23ffffff'/%3E%3Ctext x='56' y='32' font-family='Kanit,sans-serif' font-weight='700' font-size='24' fill='%23ffffff' letter-spacing='1'%3EB2IF%3C/text%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.login-sub {
  font-family: 'Kanit', sans-serif !important;
  color: var(--b2-teal-vivo) !important;
  font-weight: 400;
  font-size: 12px !important;
  text-align: center;
  letter-spacing: 0.5px;
}
.login-btn {
  background: var(--b2-teal) !important;
  font-family: 'Kanit', sans-serif !important;
  font-weight: 600 !important;
  letter-spacing: 0.5px;
  border: none !important;
  color: #fff !important;
  box-shadow: 0 2px 12px rgba(21,154,156,0.35) !important;
}
.login-btn:hover {
  background: #117b7d !important;
  box-shadow: 0 4px 18px rgba(21,154,156,0.45) !important;
}

/* ══════════════════════════════════════════════════════════
   PLANEJADOR (planejador.html)
   ══════════════════════════════════════════════════════════ */
#pl-app { background: var(--b2-base) !important; }
#pl-aside {
  background: var(--b2-aside) !important;
  border-right: 1px solid var(--b2-border) !important;
  box-shadow: 2px 0 20px rgba(0,0,0,0.45) !important;
}
#pl-logo-area {
  border-bottom: 1px solid var(--b2-border) !important;
  padding: 16px 14px 14px !important;
  background: transparent !important;
}
.pl-ni {
  font-family: 'Kanit', sans-serif !important;
  font-weight: 400;
  font-size: 13px;
  color: var(--b2-text2) !important;
  border-radius: 8px !important;
  margin: 1px 8px !important;
}
.pl-ni.active, .pl-ni:focus {
  background: var(--b2-teal-act) !important;
  color: var(--b2-teal) !important;
  font-weight: 600 !important;
}
.pl-ni:hover {
  background: var(--b2-teal-glow) !important;
  color: var(--b2-text) !important;
}
.pl-ns {
  font-family: 'Kanit', sans-serif !important;
  font-size: 10px !important;
  font-weight: 500;
  color: var(--b2-text3) !important;
  letter-spacing: 1.2px;
  text-transform: uppercase !important;
  padding: 10px 14px 4px !important;
}
#pl-main {
  background: var(--b2-base) !important;
  padding: 24px 28px !important;
}
#pl-page-header {
  display: flex !important;
  align-items: flex-start !important;
  margin-bottom: 24px !important;
  padding-bottom: 16px !important;
  border-bottom: 1px solid var(--b2-border) !important;
}
.pl-page-title {
  font-family: 'Kanit', sans-serif !important;
  font-weight: 700;
  font-size: 24px !important;
  color: var(--b2-text) !important;
}
.pl-page-sub {
  font-family: 'Kanit', sans-serif !important;
  font-size: 13px;
  color: var(--b2-text2) !important;
}
.pl-btn-logout {
  font-family: 'Kanit', sans-serif !important;
  border: 1px solid var(--b2-border) !important;
  color: var(--b2-text2) !important;
  background: transparent !important;
  border-radius: 8px;
}
.pl-btn-logout:hover {
  background: rgba(239,68,68,0.12) !important;
  color: #ef4444 !important;
  border-color: #ef4444 !important;
}
.pl-reload-btn {
  font-family: 'Kanit', sans-serif !important;
  border: 1px solid var(--b2-border) !important;
  color: var(--b2-teal) !important;
  background: transparent !important;
  border-radius: 8px;
}
.pl-reload-btn:hover { background: var(--b2-teal-glow) !important; }
.pl-avatar-circle {
  background: var(--b2-teal) !important;
  font-family: 'Kanit', sans-serif !important;
  font-weight: 700;
  color: #fff !important;
}

/* Login planejador */
.pl-login-logo-icon { display: none !important; }
.pl-login-logo {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 10px 0 14px !important;
}
.pl-login-logo::before {
  content: '';
  display: block;
  width: 148px;
  height: 50px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 160 48'%3E%3Cpath d='M38.14 9.86 A20 20 0 1 1 9.86 9.86' fill='none' stroke='%23ffffff' stroke-width='2.5' stroke-linecap='butt'/%3E%3Cpath d='M15.55 5.87 A20 20 0 0 1 32.45 5.87' fill='none' stroke='%2300c0a3' stroke-width='2.5' stroke-linecap='butt'/%3E%3Cpolygon points='20.3,9.0 20.3,28.0 14.0,36.5 8.5,30.5 8.5,22.0' fill='%23ffffff'/%3E%3Cpolygon points='27.7,9.0 27.7,28.0 34.0,36.5 39.5,30.5 39.5,22.0' fill='%23ffffff'/%3E%3Crect x='21.1' y='7.0' width='5.8' height='35.5' fill='%23ffffff'/%3E%3Ctext x='56' y='32' font-family='Kanit,sans-serif' font-weight='700' font-size='24' fill='%23ffffff' letter-spacing='1'%3EB2IF%3C/text%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.pl-login-logo-text { font-size: 0 !important; }
.pl-login-logo-sub {
  color: var(--b2-teal-vivo) !important;
  font-family: 'Kanit', sans-serif !important;
  font-weight: 400;
  text-align: center;
  font-size: 12px;
}
#pl-login-box {
  background: var(--b2-card) !important;
  border: 1px solid var(--b2-border2) !important;
  box-shadow: 0 24px 64px rgba(0,0,0,0.60) !important;
  border-radius: var(--radius) !important;
}
#pl-login-box input {
  background: var(--b2-card2) !important;
  color: var(--b2-text) !important;
  border-color: var(--b2-border) !important;
}
#pl-login-btn {
  background: var(--b2-teal) !important;
  font-family: 'Kanit', sans-serif !important;
  font-weight: 600 !important;
  color: #fff !important;
  border: none !important;
  box-shadow: 0 2px 12px rgba(21,154,156,0.35) !important;
}
#pl-login-btn:hover { background: #117b7d !important; }

/* ══════════════════════════════════════════════════════════
   EQUIPE (equipe.html)
   ══════════════════════════════════════════════════════════ */
.eq-login-logo {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 10px 0 14px !important;
}
.eq-login-logo-icon { display: none !important; }
.eq-login-logo-text { font-size: 0 !important; }
.eq-login-logo::before {
  content: '';
  display: block;
  width: 148px;
  height: 50px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 160 48'%3E%3Cpath d='M38.14 9.86 A20 20 0 1 1 9.86 9.86' fill='none' stroke='%23ffffff' stroke-width='2.5' stroke-linecap='butt'/%3E%3Cpath d='M15.55 5.87 A20 20 0 0 1 32.45 5.87' fill='none' stroke='%2300c0a3' stroke-width='2.5' stroke-linecap='butt'/%3E%3Cpolygon points='20.3,9.0 20.3,28.0 14.0,36.5 8.5,30.5 8.5,22.0' fill='%23ffffff'/%3E%3Cpolygon points='27.7,9.0 27.7,28.0 34.0,36.5 39.5,30.5 39.5,22.0' fill='%23ffffff'/%3E%3Crect x='21.1' y='7.0' width='5.8' height='35.5' fill='%23ffffff'/%3E%3Ctext x='56' y='32' font-family='Kanit,sans-serif' font-weight='700' font-size='24' fill='%23ffffff' letter-spacing='1'%3EB2IF%3C/text%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.eq-login-logo-sub {
  color: var(--b2-teal-vivo) !important;
  font-family: 'Kanit', sans-serif !important;
  font-weight: 400;
  font-size: 12px;
}
.eq-logo {
  border-bottom: 1px solid var(--b2-border) !important;
  padding: 16px 14px 14px !important;
  background: transparent !important;
}
.eq-logo-name { font-size: 0 !important; }
.eq-logo::before {
  content: '';
  display: block;
  width: 120px;
  height: 40px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 160 48'%3E%3Cpath d='M38.14 9.86 A20 20 0 1 1 9.86 9.86' fill='none' stroke='%23ffffff' stroke-width='2.5' stroke-linecap='butt'/%3E%3Cpath d='M15.55 5.87 A20 20 0 0 1 32.45 5.87' fill='none' stroke='%2300c0a3' stroke-width='2.5' stroke-linecap='butt'/%3E%3Cpolygon points='20.3,9.0 20.3,28.0 14.0,36.5 8.5,30.5 8.5,22.0' fill='%23ffffff'/%3E%3Cpolygon points='27.7,9.0 27.7,28.0 34.0,36.5 39.5,30.5 39.5,22.0' fill='%23ffffff'/%3E%3Crect x='21.1' y='7.0' width='5.8' height='35.5' fill='%23ffffff'/%3E%3Ctext x='56' y='32' font-family='Kanit,sans-serif' font-weight='700' font-size='24' fill='%23ffffff' letter-spacing='1'%3EB2IF%3C/text%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: left center;
}
.eq-logo-sub {
  color: var(--b2-teal-vivo) !important;
  font-family: 'Kanit', sans-serif !important;
  font-size: 9px !important;
  letter-spacing: 1px;
  font-weight: 500;
  text-transform: uppercase;
  margin-top: 3px;
  opacity: 0.75;
}

/* ══════════════════════════════════════════════════════════
   FINANCEIRO (financeiro.html)
   ══════════════════════════════════════════════════════════ */
.fin-login-logo-icon { display: none !important; }
.fin-login-logo-text { font-size: 0 !important; }
.fin-login-logo {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 10px 0 14px !important;
}
.fin-login-logo::before {
  content: '';
  display: block;
  width: 148px;
  height: 50px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 160 48'%3E%3Cpath d='M38.14 9.86 A20 20 0 1 1 9.86 9.86' fill='none' stroke='%23ffffff' stroke-width='2.5' stroke-linecap='butt'/%3E%3Cpath d='M15.55 5.87 A20 20 0 0 1 32.45 5.87' fill='none' stroke='%2300c0a3' stroke-width='2.5' stroke-linecap='butt'/%3E%3Cpolygon points='20.3,9.0 20.3,28.0 14.0,36.5 8.5,30.5 8.5,22.0' fill='%23ffffff'/%3E%3Cpolygon points='27.7,9.0 27.7,28.0 34.0,36.5 39.5,30.5 39.5,22.0' fill='%23ffffff'/%3E%3Crect x='21.1' y='7.0' width='5.8' height='35.5' fill='%23ffffff'/%3E%3Ctext x='56' y='32' font-family='Kanit,sans-serif' font-weight='700' font-size='24' fill='%23ffffff' letter-spacing='1'%3EB2IF%3C/text%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.fin-login-logo-sub {
  color: var(--b2-teal-vivo) !important;
  font-family: 'Kanit', sans-serif !important;
  font-weight: 400;
  font-size: 12px;
}
.fin-logo {
  border-bottom: 1px solid var(--b2-border) !important;
  padding: 16px 14px 14px !important;
  background: transparent !important;
}
.fin-logo-name { font-size: 0 !important; }
.fin-logo::before {
  content: '';
  display: block;
  width: 120px;
  height: 40px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 160 48'%3E%3Cpath d='M38.14 9.86 A20 20 0 1 1 9.86 9.86' fill='none' stroke='%23ffffff' stroke-width='2.5' stroke-linecap='butt'/%3E%3Cpath d='M15.55 5.87 A20 20 0 0 1 32.45 5.87' fill='none' stroke='%2300c0a3' stroke-width='2.5' stroke-linecap='butt'/%3E%3Cpolygon points='20.3,9.0 20.3,28.0 14.0,36.5 8.5,30.5 8.5,22.0' fill='%23ffffff'/%3E%3Cpolygon points='27.7,9.0 27.7,28.0 34.0,36.5 39.5,30.5 39.5,22.0' fill='%23ffffff'/%3E%3Crect x='21.1' y='7.0' width='5.8' height='35.5' fill='%23ffffff'/%3E%3Ctext x='56' y='32' font-family='Kanit,sans-serif' font-weight='700' font-size='24' fill='%23ffffff' letter-spacing='1'%3EB2IF%3C/text%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: left center;
}
.fin-logo-sub {
  color: var(--b2-teal-vivo) !important;
  font-family: 'Kanit', sans-serif !important;
  font-size: 9px !important;
  letter-spacing: 1px;
  font-weight: 500;
  text-transform: uppercase;
  margin-top: 3px;
  opacity: 0.75;
}

/* ══════════════════════════════════════════════════════════
   OVERRIDE INLINE STYLES RESIDUAIS — cobre elementos
   gerados dinamicamente via JS com cores antigas
   ══════════════════════════════════════════════════════════ */

/* .pc = painéis, .di = blocos de info */
.pc, .di {
  background: var(--b2-card) !important;
  color: var(--b2-text) !important;
  border-color: var(--b2-border) !important;
}

/* Rows de lista de usuários */
.user-row, .gestor-row, .membro-row,
[class*="user-item"], [class*="user-card"] {
  background: var(--b2-card) !important;
  border: 1px solid var(--b2-border) !important;
  color: var(--b2-text) !important;
}

/* Barra de filtros */
.fbar, .filter-bar,
[class*="fbar"] {
  background: var(--b2-card2) !important;
  color: var(--b2-text) !important;
}

/* .fsel = selects de filtro */
.fsel {
  background: var(--b2-card) !important;
  color: var(--b2-text) !important;
  border: 1px solid var(--b2-border) !important;
}

body { font-family: 'Kanit', system-ui, sans-serif !important; }
