/* Tema global (claro/escuro) para telas do migrador */

.theme-switcher {
  position: fixed;
  right: 16px;
  bottom: 16px;
  z-index: 2200;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.35);
  background: rgba(255, 255, 255, 0.9);
  backdrop-filter: blur(8px);
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.2);
}

.theme-switcher button {
  border: none;
  border-radius: 999px;
  padding: 6px 10px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
  color: #475569;
  background: transparent;
}

.theme-switcher button.active {
  color: #fff;
  background: linear-gradient(135deg, #08b371, #069e62);
}

html[data-theme="dark"] .theme-switcher {
  border-color: rgba(148, 163, 184, 0.28);
  background: rgba(15, 23, 42, 0.82);
  box-shadow: 0 8px 24px rgba(2, 6, 23, 0.55);
}

html[data-theme="dark"] .theme-switcher button {
  color: #cbd5e1;
}

html[data-theme="dark"] .theme-switcher button.active {
  color: #fff;
  background: linear-gradient(135deg, #08b371, #069e62);
}

/* ===== Tema escuro inspirado na tela de login ===== */
html[data-theme="dark"] body {
  color: #e2e8f0 !important;
  background: linear-gradient(135deg, #0b1d2e 0%, #0d2a1a 50%, #0b1d2e 100%) !important;
}

html[data-theme="dark"] .topbar,
html[data-theme="dark"] .hero {
  background: linear-gradient(135deg, #0f172a, #0b1d2e) !important;
}

html[data-theme="dark"] .card-box,
html[data-theme="dark"] .tabs-wrap,
html[data-theme="dark"] .upload-card,
html[data-theme="dark"] .confirm-box,
html[data-theme="dark"] .repasse-modal,
html[data-theme="dark"] #uploadLoadingBox,
html[data-theme="dark"] .modal-content {
  background: rgba(15, 23, 42, 0.72) !important;
  border-color: rgba(148, 163, 184, 0.26) !important;
  color: #e2e8f0 !important;
  box-shadow: 0 16px 40px rgba(2, 6, 23, 0.4) !important;
}

html[data-theme="dark"] .tab-content-wrap,
html[data-theme="dark"] .tabs-nav,
html[data-theme="dark"] .tabs-actions,
html[data-theme="dark"] .card-header-bar,
html[data-theme="dark"] .upload-card-header,
html[data-theme="dark"] .emp-foot,
html[data-theme="dark"] .aceites-section,
html[data-theme="dark"] .validacao-body {
  background: rgba(15, 23, 42, 0.48) !important;
  border-color: rgba(148, 163, 184, 0.22) !important;
}

html[data-theme="dark"] .table-wrap,
html[data-theme="dark"] .table-scroll,
html[data-theme="dark"] .data-table {
  background: rgba(15, 23, 42, 0.58) !important;
}

html[data-theme="dark"] .data-table thead th,
html[data-theme="dark"] .data-table th:first-child,
html[data-theme="dark"] .data-table td:first-child {
  background: rgba(15, 23, 42, 0.82) !important;
  color: #cbd5e1 !important;
  border-color: rgba(148, 163, 184, 0.2) !important;
}

html[data-theme="dark"] .data-table tbody td,
html[data-theme="dark"] .data-table tbody tr:hover td {
  background: transparent !important;
  color: #e2e8f0 !important;
  border-color: rgba(148, 163, 184, 0.16) !important;
}

html[data-theme="dark"] .emp-card,
html[data-theme="dark"] .empresa-card,
html[data-theme="dark"] .bank-row,
html[data-theme="dark"] .welcome-card,
html[data-theme="dark"] .mcard {
  background: rgba(15, 23, 42, 0.62) !important;
  border-color: rgba(148, 163, 184, 0.25) !important;
  color: #e2e8f0 !important;
}

html[data-theme="dark"] .welcome-card {
  background: linear-gradient(135deg, #0f172a, #1e293b) !important;
}

html[data-theme="dark"] .form-control,
html[data-theme="dark"] .form-select,
html[data-theme="dark"] .search-input,
html[data-theme="dark"] .input-prj,
html[data-theme="dark"] .repasse-input,
html[data-theme="dark"] .repasse-select {
  background: rgba(15, 23, 42, 0.65) !important;
  border-color: rgba(148, 163, 184, 0.32) !important;
  color: #e2e8f0 !important;
}

html[data-theme="dark"] .form-control::placeholder,
html[data-theme="dark"] .search-input::placeholder,
html[data-theme="dark"] .input-prj::placeholder,
html[data-theme="dark"] .repasse-input::placeholder {
  color: #94a3b8 !important;
}

html[data-theme="dark"] .file-input-label,
html[data-theme="dark"] .upload-zone,
html[data-theme="dark"] .btn-outline,
html[data-theme="dark"] .btn-secondary-soft,
html[data-theme="dark"] .btn-warning-soft {
  background: rgba(15, 23, 42, 0.62) !important;
  border-color: rgba(148, 163, 184, 0.32) !important;
  color: #cbd5e1 !important;
}

html[data-theme="dark"] .btn-outline:hover,
html[data-theme="dark"] .btn-secondary-soft:hover,
html[data-theme="dark"] .btn-warning-soft:hover {
  background: rgba(30, 41, 59, 0.88) !important;
  color: #fff !important;
}

html[data-theme="dark"] .tab-btn,
html[data-theme="dark"] .tab-count,
html[data-theme="dark"] .topbar-sub,
html[data-theme="dark"] .subtitle,
html[data-theme="dark"] .form-text,
html[data-theme="dark"] .emp-cnpj,
html[data-theme="dark"] .empresa-cnpj,
html[data-theme="dark"] .empresa-info,
html[data-theme="dark"] .empty-state,
html[data-theme="dark"] .upload-card-desc,
html[data-theme="dark"] .cs-label {
  color: #94a3b8 !important;
}

html[data-theme="dark"] .tab-btn.active,
html[data-theme="dark"] .topbar-title,
html[data-theme="dark"] .card-header-bar h5,
html[data-theme="dark"] .card-header-bar h6,
html[data-theme="dark"] .empresa-nome,
html[data-theme="dark"] .emp-nome,
html[data-theme="dark"] .upload-card-title,
html[data-theme="dark"] .cs-val {
  color: #e2e8f0 !important;
}

html[data-theme="dark"] .badge-regime,
html[data-theme="dark"] .badge-sem,
html[data-theme="dark"] .prj-badge,
html[data-theme="dark"] .status-badge,
html[data-theme="dark"] .aceite-badge {
  filter: brightness(0.92) saturate(0.92);
}

@media (max-width: 768px) {
  .theme-switcher {
    right: 12px;
    bottom: 12px;
  }
}

/* ===== Login: claro/escuro ===== */
html[data-theme="light"] body.login-page {
  color: #1e293b !important;
  background: linear-gradient(135deg, #e8f9f1 0%, #f8fafc 55%, #e2f6ec 100%) !important;
}

html[data-theme="light"] body.login-page .card {
  background: #ffffff !important;
  border: 1px solid #d1fae5 !important;
  box-shadow: 0 20px 50px rgba(15, 23, 42, 0.14) !important;
}

html[data-theme="light"] body.login-page h1 {
  color: #0f172a !important;
}

html[data-theme="light"] body.login-page .subtitle,
html[data-theme="light"] body.login-page label,
html[data-theme="light"] body.login-page .hint {
  color: #64748b !important;
}

html[data-theme="light"] body.login-page .hint b {
  color: #08b371 !important;
}

html[data-theme="light"] body.login-page input[type=email],
html[data-theme="light"] body.login-page input[type=password],
html[data-theme="light"] body.login-page input[type=text] {
  background: #f8fafc !important;
  border-color: #dbe2ea !important;
  color: #1e293b !important;
}

html[data-theme="light"] body.login-page input::placeholder {
  color: #94a3b8 !important;
}

html[data-theme="light"] body.login-page .tabs {
  background: #f1f5f9 !important;
}

html[data-theme="light"] body.login-page .tab-btn {
  color: #64748b !important;
}

html[data-theme="light"] body.login-page .tab-btn.active {
  color: #ffffff !important;
}

/* ===== Onboarding: detalhes verdes no escuro ===== */
html[data-theme="dark"] body.onboarding-page .topbar {
  background: linear-gradient(135deg, #08b371, #069e62) !important;
}

html[data-theme="dark"] body.onboarding-page .topbar-sub {
  color: rgba(255, 255, 255, 0.74) !important;
}

html[data-theme="dark"] body.onboarding-page .card-header-bar {
  background: linear-gradient(135deg, #08b371, #069e62) !important;
  border-bottom-color: rgba(255, 255, 255, 0.12) !important;
}

html[data-theme="dark"] body.onboarding-page .card-header-bar h6,
html[data-theme="dark"] body.onboarding-page .card-header-bar h5 {
  color: #ffffff !important;
}

html[data-theme="dark"] body.onboarding-page .confirm-box h6 {
  color: #ffffff !important;
  margin: -1.5rem -1.5rem 1rem -1.5rem !important;
  padding: 1rem 1.5rem !important;
  background: linear-gradient(135deg, #08b371, #069e62) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
}

html[data-theme="dark"] body.onboarding-page .card-header-bar span {
  color: rgba(255, 255, 255, 0.9) !important;
}

html[data-theme="dark"] body.onboarding-page {
  background: linear-gradient(135deg, #0b1d2e 0%, #0d2a1a 50%, #0b1d2e 100%) !important;
}

html[data-theme="dark"] body.onboarding-page .hero {
  background: linear-gradient(135deg, #0b1d2e, #0d2a1a) !important;
}

html[data-theme="dark"] body.onboarding-page .card-box,
html[data-theme="dark"] body.onboarding-page .confirm-box,
html[data-theme="dark"] body.onboarding-page .emp-card,
html[data-theme="dark"] body.onboarding-page .bank-row,
html[data-theme="dark"] body.onboarding-page .upload-zone,
html[data-theme="dark"] body.onboarding-page #uploadLoadingBox {
  background: rgba(255, 255, 255, 0.06) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.4) !important;
  backdrop-filter: blur(8px);
}

html[data-theme="dark"] body.onboarding-page .step-tab {
  color: rgba(226, 232, 240, 0.65) !important;
}

html[data-theme="dark"] body.onboarding-page .step-tab.active,
html[data-theme="dark"] body.onboarding-page .step-tab.done {
  color: #ffffff !important;
  background: linear-gradient(135deg, #08b371, #069e62) !important;
  box-shadow: 0 10px 24px rgba(8, 179, 113, 0.32) !important;
}

html[data-theme="dark"] body.onboarding-page .step-tab.active .step-num,
html[data-theme="dark"] body.onboarding-page .step-tab.done .step-num {
  background: rgba(255, 255, 255, 0.2) !important;
  border-color: rgba(255, 255, 255, 0.25) !important;
  color: #ffffff !important;
}

html[data-theme="dark"] body.onboarding-page .onb-subtab-btn {
  background: rgba(255, 255, 255, 0.05) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
  color: rgba(226, 232, 240, 0.72) !important;
}

html[data-theme="dark"] body.onboarding-page .onb-subtab-btn.active {
  background: linear-gradient(135deg, #08b371, #069e62) !important;
  border-color: transparent !important;
  color: #ffffff !important;
  box-shadow: 0 10px 24px rgba(8, 179, 113, 0.32) !important;
}

html[data-theme="dark"] body.onboarding-page .emp-nome,
html[data-theme="dark"] body.onboarding-page .emp-cnpj,
html[data-theme="dark"] body.onboarding-page .emp-info {
  color: #ffffff !important;
}

html[data-theme="light"] body.onboarding-page {
  background: linear-gradient(135deg, #e8f9f1 0%, #f8fafc 55%, #e2f6ec 100%) !important;
}

html[data-theme="light"] body.onboarding-page .card-box,
html[data-theme="light"] body.onboarding-page .confirm-box,
html[data-theme="light"] body.onboarding-page .emp-card,
html[data-theme="light"] body.onboarding-page .bank-row {
  border-color: #d1fae5 !important;
  box-shadow: 0 16px 38px rgba(15, 23, 42, 0.12) !important;
}

html[data-theme="light"] body.onboarding-page .step-tab.active,
html[data-theme="light"] body.onboarding-page .step-tab.done,
html[data-theme="light"] body.onboarding-page .onb-subtab-btn.active {
  background: linear-gradient(135deg, #08b371, #069e62) !important;
  color: #ffffff !important;
  border-color: transparent !important;
}

html[data-theme="light"] body.onboarding-page .step-tab.active .step-num,
html[data-theme="light"] body.onboarding-page .step-tab.done .step-num {
  background: rgba(255, 255, 255, 0.2) !important;
  border-color: rgba(255, 255, 255, 0.3) !important;
  color: #ffffff !important;
}

/* ===== Index: mesma linguagem visual da Login ===== */
html[data-theme="dark"] body.index-page {
  background: linear-gradient(135deg, #0b1d2e 0%, #0d2a1a 50%, #0b1d2e 100%) !important;
}

html[data-theme="dark"] body.index-page .topbar {
  background: linear-gradient(135deg, #0b1d2e, #0d2a1a) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
}

html[data-theme="dark"] body.index-page .tabs-wrap,
html[data-theme="dark"] body.index-page .empresa-card,
html[data-theme="dark"] body.index-page .validacao-card,
html[data-theme="dark"] body.index-page .tab-content-wrap,
html[data-theme="dark"] body.index-page .table-scroll,
html[data-theme="dark"] body.index-page [style*="background:var(--surface)"] {
  background: rgba(255, 255, 255, 0.06) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.4) !important;
  backdrop-filter: blur(8px);
}

html[data-theme="dark"] body.index-page .tabs-nav,
html[data-theme="dark"] body.index-page .tabs-actions {
  background: rgba(255, 255, 255, 0.04) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
}

html[data-theme="dark"] body.index-page .tabs-layout .tabs-nav {
  border-color: rgba(255, 255, 255, 0.14) !important;
  box-shadow: 0 16px 36px rgba(0, 0, 0, 0.28) !important;
}

html[data-theme="dark"] body.index-page .tabs-nav-title {
  color: rgba(226, 232, 240, 0.78) !important;
  border-bottom-color: rgba(255, 255, 255, 0.18) !important;
}

html[data-theme="dark"] body.index-page .tab-btn {
  color: rgba(226, 232, 240, 0.9) !important;
  border-bottom-color: transparent !important;
  border-radius: 9px;
  margin: 4px 0;
}

html[data-theme="dark"] body.index-page .tab-btn:hover {
  color: #ffffff !important;
  background: rgba(8, 179, 113, 0.18) !important;
}

html[data-theme="dark"] body.index-page .tab-btn.active {
  color: #ffffff !important;
  background: linear-gradient(135deg, #08b371, #069e62) !important;
  border-bottom-color: transparent !important;
  border-left-color: #08b371 !important;
  box-shadow: 0 10px 24px rgba(8, 179, 113, 0.35) !important;
}

html[data-theme="dark"] body.index-page .tab-count {
  background: rgba(148, 163, 184, 0.3) !important;
  color: #ffffff !important;
}

html[data-theme="dark"] body.index-page .empresa-switch-bar {
  background: rgba(255, 255, 255, 0.07) !important;
  border-bottom-color: rgba(255, 255, 255, 0.12) !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.28) !important;
  backdrop-filter: blur(8px);
}

html[data-theme="dark"] body.index-page .empresa-switch-bar label[for="selectEmpresa"] {
  color: #e2e8f0 !important;
}

html[data-theme="dark"] body.index-page #selectEmpresa {
  background: rgba(15, 23, 42, 0.72) !important;
  border-color: rgba(255, 255, 255, 0.2) !important;
  color: #ffffff !important;
}

html[data-theme="dark"] body.index-page #selectEmpresa option {
  background: #0f172a;
  color: #e2e8f0;
}

html[data-theme="dark"] body.index-page .validacao-card.ok .validacao-header {
  background: rgba(8, 179, 113, 0.24) !important;
  color: #dcfce7 !important;
  border-bottom: 1px solid rgba(74, 222, 128, 0.35) !important;
}

html[data-theme="dark"] body.index-page .validacao-card.error .validacao-header {
  background: rgba(239, 68, 68, 0.2) !important;
  color: #fecaca !important;
  border-bottom: 1px solid rgba(252, 165, 165, 0.35) !important;
}

html[data-theme="dark"] body.index-page .empresa-field-label,
html[data-theme="dark"] body.index-page .empresa-field-value {
  color: #ffffff !important;
}

html[data-theme="dark"] body.index-page .tab-btn.active .tab-count {
  background: rgba(255, 255, 255, 0.22) !important;
  color: #ffffff !important;
}

html[data-theme="light"] body.index-page {
  background: linear-gradient(135deg, #e8f9f1 0%, #f8fafc 55%, #e2f6ec 100%) !important;
}

html[data-theme="light"] body.index-page .tabs-wrap,
html[data-theme="light"] body.index-page .empresa-card,
html[data-theme="light"] body.index-page .validacao-card,
html[data-theme="light"] body.index-page .tab-content-wrap {
  border-color: #d1fae5 !important;
  box-shadow: 0 16px 38px rgba(15, 23, 42, 0.12) !important;
}

html[data-theme="light"] body.index-page .tab-btn.active {
  color: #ffffff !important;
  background: linear-gradient(135deg, #08b371, #069e62) !important;
  border-bottom-color: transparent !important;
  border-left-color: #08b371 !important;
}

html[data-theme="light"] body.index-page .tab-btn.active .tab-count {
  background: rgba(255, 255, 255, 0.22) !important;
  color: #ffffff !important;
}

@media (max-width: 1024px) {
  html[data-theme="dark"] body.index-page .tabs-layout .tabs-nav,
  html[data-theme="light"] body.index-page .tabs-layout .tabs-nav {
    border-right-color: transparent !important;
    border-left-color: transparent !important;
    border-bottom-color: rgba(255, 255, 255, 0.12) !important;
    box-shadow: none !important;
  }

  html[data-theme="dark"] body.index-page .tab-btn.active,
  html[data-theme="light"] body.index-page .tab-btn.active {
    border-left-color: transparent !important;
  }
}

/* ===== Projetos: mesma linguagem visual da Login ===== */
html[data-theme="dark"] body.projetos-page {
  background: linear-gradient(135deg, #0b1d2e 0%, #0d2a1a 50%, #0b1d2e 100%) !important;
}

html[data-theme="dark"] body.projetos-page .topbar {
  background: linear-gradient(135deg, #0b1d2e, #0d2a1a) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
}

html[data-theme="dark"] body.projetos-page .card-box,
html[data-theme="dark"] body.projetos-page .empresa-card,
html[data-theme="dark"] body.projetos-page .aceites-section,
html[data-theme="dark"] body.projetos-page .repasse-modal {
  background: rgba(255, 255, 255, 0.06) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.4) !important;
  backdrop-filter: blur(8px);
}

html[data-theme="dark"] body.projetos-page .filtro-btn {
  background: rgba(255, 255, 255, 0.05) !important;
  color: rgba(226, 232, 240, 0.75) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
}

html[data-theme="dark"] body.projetos-page .filtro-btn.ativo {
  background: linear-gradient(135deg, #08b371, #069e62) !important;
  color: #ffffff !important;
  border-color: transparent !important;
  box-shadow: 0 10px 24px rgba(8, 179, 113, 0.32) !important;
}

html[data-theme="dark"] body.projetos-page .filtro-btn.ativo .cnt {
  background: rgba(255, 255, 255, 0.22) !important;
  color: #ffffff !important;
}

/* Em projetos (dark), cards de empresa usam fundo claro: texto precisa ficar escuro */
html[data-theme="dark"] body.projetos-page .empresa-header {
  color: #0f172a !important;
}

html[data-theme="dark"] body.projetos-page .empresa-nome,
html[data-theme="dark"] body.projetos-page .empresa-cnpj,
html[data-theme="dark"] body.projetos-page .empresa-info,
html[data-theme="dark"] body.projetos-page .empresa-data {
  color: #0f172a !important;
}

html[data-theme="light"] body.projetos-page {
  background: linear-gradient(135deg, #e8f9f1 0%, #f8fafc 55%, #e2f6ec 100%) !important;
}

html[data-theme="light"] body.projetos-page .card-box,
html[data-theme="light"] body.projetos-page .empresa-card,
html[data-theme="light"] body.projetos-page .aceites-section {
  border-color: #d1fae5 !important;
  box-shadow: 0 16px 38px rgba(15, 23, 42, 0.12) !important;
}

html[data-theme="light"] body.projetos-page .filtro-btn.ativo {
  background: linear-gradient(135deg, #08b371, #069e62) !important;
  color: #ffffff !important;
  border-color: transparent !important;
}

html[data-theme="light"] body.projetos-page .filtro-btn.ativo .cnt {
  background: rgba(255, 255, 255, 0.22) !important;
  color: #ffffff !important;
}

/* ===== Index: Solicitar Especialista (posição + tema) ===== */
body.index-page #chatbotIcon {
  bottom: 118px !important;
}

body.index-page #chatbotModal {
  bottom: 148px !important;
}

@media (max-width: 768px) {
  body.index-page #chatbotIcon {
    right: 16px !important;
    bottom: 106px !important;
  }

  body.index-page #chatbotModal {
    right: 12px !important;
    left: 12px;
    width: auto;
    max-width: calc(100vw - 24px);
    bottom: 136px !important;
  }
}

html[data-theme="dark"] body.index-page #chatbotModal {
  background: rgba(15, 23, 42, 0.94) !important;
  border-color: rgba(148, 163, 184, 0.3) !important;
  box-shadow: 0 20px 50px rgba(2, 6, 23, 0.55) !important;
}

html[data-theme="dark"] body.index-page .cb-apoio-panel {
  background: rgba(15, 23, 42, 0.58) !important;
}

html[data-theme="dark"] body.index-page .cb-intro-title,
html[data-theme="dark"] body.index-page .cb-label {
  color: #e2e8f0 !important;
}

html[data-theme="dark"] body.index-page .cb-intro-subtitle {
  color: #94a3b8 !important;
}

html[data-theme="dark"] body.index-page .cb-intro-icon {
  background: rgba(16, 185, 129, 0.22) !important;
}

html[data-theme="dark"] body.index-page .cb-form-card {
  background: rgba(15, 23, 42, 0.75) !important;
  border-color: rgba(148, 163, 184, 0.28) !important;
}

html[data-theme="dark"] body.index-page .cb-input {
  background: rgba(15, 23, 42, 0.68) !important;
  border-color: rgba(148, 163, 184, 0.3) !important;
  color: #e2e8f0 !important;
}

html[data-theme="dark"] body.index-page .cb-input::placeholder {
  color: #94a3b8 !important;
}

html[data-theme="dark"] body.index-page .cb-send-btn {
  background: linear-gradient(135deg, #08b371, #069e62) !important;
}

/* ===== Portal: tema escuro ===== */
html[data-theme="dark"] body.portal-page {
  background: linear-gradient(135deg, #0b1d2e 0%, #0d2a1a 50%, #0b1d2e 100%) !important;
}

html[data-theme="dark"] body.portal-page .main {
  background: transparent !important;
}

html[data-theme="dark"] body.portal-page .topbar {
  background: rgba(15, 23, 42, 0.92) !important;
  border-bottom-color: rgba(148, 163, 184, 0.18) !important;
}

html[data-theme="dark"] body.portal-page .topbar-title {
  color: #e2e8f0 !important;
}

html[data-theme="dark"] body.portal-page .content {
  background: transparent !important;
}

/* Cards de empresa — escuro com tom sobre tom */
html[data-theme="dark"] body.portal-page .emp-card {
  background: rgba(13, 42, 26, 0.72) !important;
  border-color: rgba(8, 179, 113, 0.18) !important;
  box-shadow: 0 4px 24px rgba(2, 6, 23, 0.35) !important;
  backdrop-filter: blur(6px);
}

html[data-theme="dark"] body.portal-page .emp-card:hover {
  border-color: rgba(8, 179, 113, 0.5) !important;
  box-shadow: 0 0 0 3px rgba(8, 179, 113, 0.14), 0 8px 32px rgba(2, 6, 23, 0.4) !important;
}

html[data-theme="dark"] body.portal-page .emp-hdr {
  background: transparent !important;
}

html[data-theme="dark"] body.portal-page .emp-nome {
  color: #f1f5f9 !important;
}

html[data-theme="dark"] body.portal-page .emp-cnpj,
html[data-theme="dark"] body.portal-page .emp-info,
html[data-theme="dark"] body.portal-page .emp-data {
  color: #94a3b8 !important;
}

html[data-theme="dark"] body.portal-page .emp-icon {
  background: rgba(8, 179, 113, 0.18) !important;
}

html[data-theme="dark"] body.portal-page .emp-foot {
  background: rgba(8, 179, 113, 0.06) !important;
  border-top-color: rgba(8, 179, 113, 0.15) !important;
}

html[data-theme="dark"] body.portal-page .aceites-title {
  color: #64748b !important;
}

html[data-theme="dark"] body.portal-page .sem-aceites {
  color: #64748b !important;
}

html[data-theme="dark"] body.portal-page .aceite-badge {
  background: rgba(8, 179, 113, 0.14) !important;
  border-color: rgba(8, 179, 113, 0.3) !important;
  color: #6ee7b7 !important;
}

html[data-theme="dark"] body.portal-page .aceite-hora {
  color: #34d399 !important;
  border-left-color: rgba(8, 179, 113, 0.3) !important;
}

/* Filtros */
html[data-theme="dark"] body.portal-page .filtro-btn {
  background: rgba(255, 255, 255, 0.04) !important;
  border-color: rgba(148, 163, 184, 0.2) !important;
  color: #94a3b8 !important;
}

html[data-theme="dark"] body.portal-page .filtro-btn:hover {
  border-color: rgba(8, 179, 113, 0.5) !important;
  color: #6ee7b7 !important;
}

html[data-theme="dark"] body.portal-page .filtro-btn.ativo {
  background: linear-gradient(135deg, #08b371, #069e62) !important;
  border-color: transparent !important;
  color: #fff !important;
  box-shadow: 0 8px 20px rgba(8, 179, 113, 0.32) !important;
}

html[data-theme="dark"] body.portal-page .filtro-btn.ativo .cnt {
  background: rgba(255, 255, 255, 0.22) !important;
}

/* Busca */
html[data-theme="dark"] body.portal-page .search-input {
  background: rgba(15, 23, 42, 0.65) !important;
  border-color: rgba(148, 163, 184, 0.25) !important;
  color: #e2e8f0 !important;
}

html[data-theme="dark"] body.portal-page .search-input::placeholder {
  color: #64748b !important;
}

html[data-theme="dark"] body.portal-page .search-input:focus {
  border-color: rgba(8, 179, 113, 0.6) !important;
  box-shadow: 0 0 0 3px rgba(8, 179, 113, 0.15) !important;
}

/* Badges de status */
html[data-theme="dark"] body.portal-page .st-badge {
  filter: brightness(0.88) saturate(0.9);
}

/* PRJ badge */
html[data-theme="dark"] body.portal-page .prj-badge {
  background: rgba(29, 78, 216, 0.2) !important;
  border-color: rgba(96, 165, 250, 0.3) !important;
  color: #93c5fd !important;
}

/* Inputs inline */
html[data-theme="dark"] body.portal-page .input-prj {
  background: rgba(15, 23, 42, 0.65) !important;
  border-color: rgba(148, 163, 184, 0.25) !important;
  color: #e2e8f0 !important;
}

html[data-theme="dark"] body.portal-page .input-prj::placeholder {
  color: #64748b !important;
}

/* Status select */
html[data-theme="dark"] body.portal-page .status-select {
  filter: brightness(0.85) saturate(0.85);
}

/* Título da seção */
html[data-theme="dark"] body.portal-page h5 {
  color: #e2e8f0 !important;
}

html[data-theme="dark"] body.portal-page .empty-state {
  color: #64748b !important;
}

/* Card box (menu senior) */
html[data-theme="dark"] body.portal-page .card-box {
  background: rgba(13, 42, 26, 0.65) !important;
  border-color: rgba(8, 179, 113, 0.18) !important;
  box-shadow: 0 8px 32px rgba(2, 6, 23, 0.38) !important;
}

html[data-theme="dark"] body.portal-page .card-hdr {
  border-bottom-color: rgba(8, 179, 113, 0.15) !important;
}

html[data-theme="dark"] body.portal-page .card-hdr h5 {
  color: #e2e8f0 !important;
}
