/* theme.css — base com variáveis e overrides */

:root {
  /* Paleta neutra (dark por padrão) */
  --bg: #0e0f13;
  --bg-soft: #141720;
  --card: #171a24;
  --text: #e8e8ea;
  --muted: #a9acb2;
  --border: #222632;

  /* Acento e links */
  --primary: #4f8cff;
  --primary-contrast: #ffffff;

  /* Inputs */
  --input-bg: #10131a;
  --input-text: #e8e8ea;
  --input-border: #2a2f3c;
}

:root[data-theme="light"] {
  --bg: #f7f8fb;
  --bg-soft: #ffffff;
  --card: #ffffff;
  --text: #1b1f28;
  --muted: #545b6a;
  --border: #e5e7ef;
  --primary: #2357ff;
  --primary-contrast: #ffffff;

  --input-bg: #ffffff;
  --input-text: #1b1f28;
  --input-border: #d7d9e0;
}

/* Plano de fundo e texto global */
html, body {
  background: var(--bg) !important;
  color: var(--text) !important;
}

/* Cards, boxes, offcanvas, dropdown, toast, list-group, table */
.card, .modal-content, .offcanvas, .dropdown-menu, .list-group-item,
.table, .toast {
  background-color: var(--card) !important;
  color: var(--text) !important;
  border-color: var(--border) !important;
}

/* Navbar e footer “glass” */
.navbar, .navbar-glass, footer, .bottom-nav, .bg-body-tertiary {
  background-color: var(--bg-soft) !important;
  color: var(--text) !important;
  border-color: var(--border) !important;
}

/* Inputs e selects */
.form-control, .form-select, input, select, textarea {
  background-color: var(--input-bg) !important;
  color: var(--input-text) !important;
  border-color: var(--input-border) !important;
}
.form-control::placeholder, textarea::placeholder { color: var(--muted) !important; }

/* Botões principais */
.btn-primary {
  background-color: var(--primary) !important;
  border-color: var(--primary) !important;
  color: var(--primary-contrast) !important;
}

/* Links */
a { color: var(--primary) !important; }

/* Tabelas */
.table thead th {
  background: var(--bg-soft) !important;
  color: var(--text) !important;
  border-color: var(--border) !important;
}
.table tbody tr { border-color: var(--border) !important; }

/* Badges/labels comuns */
.badge { background: var(--bg-soft) !important; color: var(--text) !important; }

/* Curingas contra inline muito agressivo */
body *[style*="color: #000"], body *[style*="color:#000"] { color: var(--text) !important; }
body *[style*="background: #fff"], body *[style*="background:#fff"],
body *[style*="background-color: #fff"], body *[style*="background-color:#fff"] {
  background: var(--card) !important;
}
/* ========= AJUSTES FINOS DOS TEMAS (navbar, inputs, focos) ========= */

/* 1) Navbar: cor dos links por tema (sem afetar outros links da página) */
[data-theme="dark"] .navbar .nav-link,
[data-theme="dark"] .navbar .navbar-brand {
  color: #ffffff !important;
}
[data-theme="dark"] .navbar .nav-link:hover,
[data-theme="dark"] .navbar .nav-link:focus {
  color: #f1f1f1 !important;
}

[data-theme="light"] .navbar .nav-link,
[data-theme="light"] .navbar .navbar-brand {
  color: #1b1f28 !important; /* preto/grafite */
}
[data-theme="light"] .navbar .nav-link:hover,
[data-theme="light"] .navbar .nav-link:focus {
  color: #11141b !important;
}

/* 1.1) Corrige o botão "Sair" (btn-outline-light) no tema claro */
[data-theme="light"] .navbar .btn-outline-light {
  color: #212529 !important;
  border-color: #212529 !important;
  background-color: transparent !important;
}
[data-theme="light"] .navbar .btn-outline-light:hover {
  background-color: #212529 !important;
  color: #ffffff !important;
}

/* 2) Inputs/selects: garantir contraste em hover/focus nos dois temas */
.form-control,
.form-select,
input,
select,
textarea {
  background-color: var(--input-bg) !important;
  color: var(--input-text) !important;
  border-color: var(--input-border) !important;
}
.form-control:focus,
.form-select:focus,
input:focus,
select:focus,
textarea:focus {
  background-color: var(--input-bg) !important; /* impede "ficar branco e sumir" */
  color: var(--input-text) !important;
  border-color: var(--primary) !important;
  box-shadow: 0 0 0 0.2rem rgba(79, 140, 255, .25) !important; /* anel padrão agradável */
}

/* 3) Botões dentro do navbar: manter legibilidade no claro/escuro */
[data-theme="dark"] .navbar .btn,
[data-theme="dark"] .navbar .btn:focus {
  color: inherit;
}
[data-theme="light"] .navbar .btn-primary {
  color: #fff !important;
}

/* 4) Pills/links do navbar não herdarem azul global (sem impactar conteúdo) */
.navbar a.nav-link {
  text-decoration: none !important;
}

/* 5) Títulos/labels nunca azuis (garante que rótulos fiquem legíveis nos dois temas) */
label, .form-label, .card-title, .h1,.h2,.h3,.h4,.h5,.h6 {
  color: var(--text) !important;
}

/* 6) Badge default mais discreto em dark e legível em light */
[data-theme="dark"] .badge {
  background-color: var(--bg-soft) !important;
  color: var(--text) !important;
}
[data-theme="light"] .badge {
  background-color: #eef1f6 !important;
  color: #1b1f28 !important;
}

/* 7) Link padrão fora do navbar pode continuar primário, mas não no navbar */
.navbar a { color: inherit !important; } /* só dentro do navbar */

/* ===== PATCH 02 — refinamentos de contraste/legibilidade ===== */

/* Títulos/labels/auxiliares SEMPRE legíveis nos dois temas */
h1,h2,h3,h4,h5,h6,
.card-title,.card-subtitle,.card-header,
label,.form-label,.form-text,.lead,.section-title {
  color: var(--text) !important;
  opacity: 1 !important;
}

/* Links dentro de .btn e .navbar NUNCA ficam azuis por herança */
.btn, .btn * { color: inherit !important; }
.navbar a { color: inherit !important; }

/* WhatsApp (btn-success) — texto branco nos dois temas */
.btn-success { color: #fff !important; }

/* “Copiar” (btn-outline-secondary) — contraste por tema */
[data-theme="dark"] .btn-outline-secondary {
  color: #e8e8ea !important;
  border-color: #3a3f4c !important;
  background-color: transparent !important;
}
[data-theme="dark"] .btn-outline-secondary:hover,
[data-theme="dark"] .btn-outline-secondary:focus {
  background-color: #3a3f4c !important;
  color: #ffffff !important;
}

[data-theme="light"] .btn-outline-secondary {
  color: #1b1f28 !important;
  border-color: #c7cbd6 !important;
  background-color: #ffffff !important;
}
[data-theme="light"] .btn-outline-secondary:hover,
[data-theme="light"] .btn-outline-secondary:focus {
  background-color: #e9ecf3 !important;
  color: #11141b !important;
}

/* Inputs/selects: foco/hover SEM “branquear” o conteúdo */
.form-control, .form-select, input, select, textarea {
  background-color: var(--input-bg) !important;
  color: var(--input-text) !important;
  border-color: var(--input-border) !important;
}
.form-control:focus, .form-select:focus,
input:focus, select:focus, textarea:focus {
  background-color: var(--input-bg) !important;
  color: var(--input-text) !important;
  border-color: var(--primary) !important;
  box-shadow: 0 0 0 0.2rem rgba(79,140,255,.25) !important;
}

/* Tabela: hover com contraste (especialmente no dark) */
[data-theme="dark"] .table tbody tr:hover {
  background-color: #1d2230 !important;
  color: var(--text) !important;
}
[data-theme="light"] .table tbody tr:hover {
  background-color: #eef1f6 !important;
  color: #1b1f28 !important;
}

/* NavBar (já aplicamos antes, reforço para consistência) */
[data-theme="dark"] .navbar .nav-link, [data-theme="dark"] .navbar .navbar-brand { color:#fff !important; }
[data-theme="light"] .navbar .nav-link, [data-theme="light"] .navbar .navbar-brand { color:#1b1f28 !important; }

/* Badge default legível em ambos */
[data-theme="light"] .badge { background:#eef1f6 !important; color:#1b1f28 !important; }

/* ====== HAMBÚRGUER (navbar-toggler) ====== */
/* Light: risquinhos pretos */
[data-theme="light"] .navbar .navbar-toggler {
  border-color: rgba(0,0,0,.35) !important;
}
[data-theme="light"] .navbar .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(0,0,0,0.85)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") !important;
}

/* Dark: risquinhos brancos */
[data-theme="dark"] .navbar .navbar-toggler {
  border-color: rgba(255,255,255,.35) !important;
}
[data-theme="dark"] .navbar .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(255,255,255,0.9)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") !important;
}

/* ====== BOTTOM NAV (Home / Minhas Entregas) ======
   Suporta estruturas comuns: .fixed-bottom, .mf-bottom, .bottom-nav */
[data-theme="light"] .fixed-bottom .nav-link,
[data-theme="light"] .mf-bottom .nav-link,
[data-theme="light"] .bottom-nav .nav-link,
[data-theme="light"] .fixed-bottom .bi,
[data-theme="light"] .mf-bottom .bi,
[data-theme="light"] .bottom-nav .bi {
  color: #1b1f28 !important; /* preto/grafite */
}

[data-theme="dark"] .fixed-bottom .nav-link,
[data-theme="dark"] .mf-bottom .nav-link,
[data-theme="dark"] .bottom-nav .nav-link,
[data-theme="dark"] .fixed-bottom .bi,
[data-theme="dark"] .mf-bottom .bi,
[data-theme="dark"] .bottom-nav .bi {
  color: #ffffff !important; /* branco */
}

/* Caso seus itens tenham .text-muted */
[data-theme="light"] .fixed-bottom .text-muted,
[data-theme="light"] .mf-bottom .text-muted,
[data-theme="light"] .bottom-nav .text-muted { color:#1b1f28 !important; }

[data-theme="dark"] .fixed-bottom .text-muted,
[data-theme="dark"] .mf-bottom .text-muted,
[data-theme="dark"] .bottom-nav .text-muted { color:#ffffff !important; }

