/* ════════════════════════════════════════════════════════════════
   POLISH v10 — Padronização final das cores e contornos
   Princípios:
   1. Cor SÓLIDA por defeito; gradiente só em CTAs primários (1 botão)
   2. Hierarquia por opacidade (não por nova cor)
   3. Sombra única e subtil
   4. Texto sempre em cor sólida (sem gradient-text)
   5. Bordas finas (1px) consistentes
   6. Cantos arredondados normalizados (8px / 12px / 16px)
   7. Hover/active calmos (sem transform, sem glow)
═══════════════════════════════════════════════════════════════ */

/* ── BODY: fundo limpo ─────────────────────────────────────────── */
body {
  background: var(--bg) !important;
}

/* ── TOPBAR: cor sólida em vez de gradiente ────────────────────── */
.topbar {
  background: var(--primary) !important;
  box-shadow: 0 1px 0 rgba(0,0,0,.04) !important;
}

/* ── STAT CARDS ────────────────────────────────────────────────── */
.stat-card {
  background: var(--surface) !important;
  border: 1px solid var(--border) !important;
  box-shadow: none !important;
  transition: border-color .15s ease, box-shadow .15s ease !important;
}
.stat-card::before { display: none !important; }
.stat-card:hover {
  border-color: rgba(var(--primary-rgb),.32) !important;
  box-shadow: 0 1px 3px rgba(12,44,82,.06) !important;
  transform: none !important;
}
.stat-card .stat-icon {
  background: var(--primary-lt) !important;
  box-shadow: none !important;
  border-radius: 10px !important;
}

/* ── KPI CARDS ─────────────────────────────────────────────────── */
.kpi-card {
  background: var(--surface) !important;
  border: 1px solid var(--border) !important;
  box-shadow: none !important;
}
.kpi-card::before { display: none !important; }
.kpi-card:hover {
  border-color: rgba(var(--primary-rgb),.32) !important;
  box-shadow: 0 1px 3px rgba(12,44,82,.06) !important;
  transform: none !important;
}
.kpi-card .kpi-value {
  /* Cor sólida em vez de gradient-text */
  background: none !important;
  -webkit-text-fill-color: initial !important;
  color: var(--primary-dk) !important;
}

/* ── WIDGETS ───────────────────────────────────────────────────── */
.widget {
  background: var(--surface) !important;
  border: 1px solid var(--border) !important;
  border-radius: 12px !important;
  box-shadow: none !important;
}
.widget-header {
  background: transparent !important;
  border-bottom: 1px solid var(--border-subtle) !important;
  padding: 14px 16px !important;
}
.widget-title {
  /* Cor sólida em vez de gradient-text */
  background: none !important;
  -webkit-text-fill-color: initial !important;
  color: var(--text) !important;
  font-weight: 700 !important;
  font-size: .95rem !important;
}

/* ── BOTÕES ────────────────────────────────────────────────────── */
.btn-primary {
  background: var(--primary) !important;
  color: #fff !important;
  border: none !important;
  box-shadow: none !important;
}
.btn-primary::after { display: none !important; }
.btn-primary:hover {
  background: var(--primary-dk) !important;
  box-shadow: 0 2px 6px rgba(var(--primary-rgb),.22) !important;
}
.btn-primary:active { transform: translateY(0) !important; }

.btn-success {
  background: var(--green) !important;
  color: #fff !important; border: none !important; box-shadow: none !important;
}
.btn-success:hover { background: var(--green-dk) !important; }
.btn-danger {
  background: var(--red) !important;
  color: #fff !important; border: none !important; box-shadow: none !important;
}
.btn-danger:hover { background: var(--red-dk) !important; }
.btn-warning {
  background: var(--amber) !important;
  color: #fff !important; border: none !important; box-shadow: none !important;
}
.btn-warning:hover { background: var(--amber-dk) !important; }

.btn-secondary {
  background: var(--surface) !important;
  color: var(--text) !important;
  border: 1px solid var(--border) !important;
  box-shadow: none !important;
}
.btn-secondary:hover {
  background: var(--surface-hover) !important;
  border-color: var(--border-strong) !important;
}

/* ── HIER CARDS (estabelecimentos, marketplace, etc.) ──────────── */
.hier-card {
  background: var(--surface) !important;
  border: 1px solid var(--border) !important;
  border-radius: 12px !important;
  box-shadow: none !important;
  transition: border-color .15s ease, box-shadow .15s ease !important;
}
.hier-card:hover {
  transform: none !important;
  border-color: rgba(var(--primary-rgb),.32) !important;
  box-shadow: 0 1px 3px rgba(12,44,82,.06) !important;
}

/* ── TABS ──────────────────────────────────────────────────────── */
.tab-btn.active {
  color: var(--primary-dk) !important;
}
.tab-btn.active::after {
  background: var(--primary) !important;
  height: 2px !important;
  border-radius: 0 !important;
  left: 0 !important;
  right: 0 !important;
}

/* ── VIEW HEADER (título principal das vistas) ─────────────────── */
.view-header h1,
.view-header h2,
.view-header .header-title {
  /* Cor sólida em vez de gradient-text */
  background: none !important;
  -webkit-text-fill-color: initial !important;
  color: var(--text) !important;
}

/* ── INFO PANEL ────────────────────────────────────────────────── */
.info-panel {
  background: var(--surface-cobalt) !important;
  border: 1px solid var(--border-subtle) !important;
  border-left: 3px solid var(--primary) !important;
  border-radius: 8px !important;
  padding: 12px 14px !important;
}

/* ── EMPTY STATE ──────────────────────────────────────────────── */
.empty-state {
  background: var(--surface-alt) !important;
  border: 1px dashed var(--border) !important;
  border-radius: 12px !important;
}

/* ── BADGES — flat e calmos ────────────────────────────────────── */
.badge {
  border-radius: 6px !important;
  padding: 3px 8px !important;
  font-size: .72rem !important;
  font-weight: 600 !important;
  border-width: 1px !important;
}

/* ── MODAIS ────────────────────────────────────────────────────── */
.modal-content, #modal {
  border-radius: 14px !important;
  box-shadow: 0 24px 60px rgba(12,44,82,.18) !important;
}
.modal-header, #modal-header {
  background: var(--surface) !important;
  color: var(--text) !important;
  border-bottom: 1px solid var(--border-subtle) !important;
  padding: 16px 20px !important;
}
.modal-title, #modal-title {
  color: var(--text) !important;
  font-weight: 700 !important;
  font-size: 1rem !important;
}
.modal-footer, #modal-footer {
  background: var(--surface-alt) !important;
  border-top: 1px solid var(--border-subtle) !important;
  padding: 12px 16px !important;
}

/* ── DRAWER ────────────────────────────────────────────────────── */
.drawer-content, #drawer {
  box-shadow: -16px 0 40px rgba(12,44,82,.16) !important;
}
.drawer-header, #drawer-header {
  background: var(--surface) !important;
  color: var(--text) !important;
  border-bottom: 1px solid var(--border-subtle) !important;
}
.drawer-title, #drawer-title {
  color: var(--text) !important;
  font-weight: 700 !important;
}

/* ── FORMULÁRIOS — inputs limpos ───────────────────────────────── */
.form-control, .field-input, input[type="text"], input[type="email"],
input[type="password"], input[type="number"], input[type="date"],
input[type="time"], select, textarea {
  background: var(--surface) !important;
  border: 1px solid var(--border) !important;
  border-radius: 8px !important;
  color: var(--text) !important;
  transition: border-color .15s ease, box-shadow .15s ease !important;
}
.form-control:focus, .field-input:focus,
input:focus, select:focus, textarea:focus {
  border-color: var(--primary) !important;
  box-shadow: 0 0 0 3px rgba(var(--primary-rgb),.12) !important;
  outline: none !important;
}
.form-label, .field-label {
  color: var(--text-2) !important;
  font-weight: 600 !important;
  font-size: .82rem !important;
}

/* ── PWA BANNER / INSTALL BUTTON ───────────────────────────────── */
#pwa-update-banner {
  background: var(--surface) !important;
  border: 1px solid var(--border) !important;
  box-shadow: 0 8px 28px rgba(12,44,82,.16) !important;
}
.pwa-banner-btn-primary {
  background: var(--primary) !important;
  box-shadow: none !important;
}
.pwa-banner-btn-primary:hover {
  background: var(--primary-dk) !important;
}
.pwa-install-btn {
  background: var(--primary) !important;
  box-shadow: 0 4px 14px rgba(var(--primary-rgb),.28) !important;
}
.pwa-install-btn:hover {
  background: var(--primary-dk) !important;
}

/* ── TOAST — sem vidro fosco, fundo sólido ─────────────────────── */
.toast {
  background: var(--surface) !important;
  border: 1px solid var(--border) !important;
  box-shadow: 0 6px 20px rgba(12,44,82,.14) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  border-radius: 10px !important;
}

/* ── NAV BADGE (na sidebar e em outros locais) ─────────────────── */
.nav-badge {
  background: rgba(255,255,255,.16) !important;
  color: #fff !important;
  box-shadow: none !important;
  font-weight: 600 !important;
}

/* ── TABELAS ───────────────────────────────────────────────────── */
table {
  border-collapse: separate;
  border-spacing: 0;
}
table th {
  background: var(--surface-alt) !important;
  color: var(--text-2) !important;
  font-weight: 600 !important;
  font-size: .78rem !important;
  text-transform: uppercase;
  letter-spacing: .04em;
  border-bottom: 1px solid var(--border) !important;
}
table td {
  border-bottom: 1px solid var(--border-subtle) !important;
}
table tr:hover td {
  background: var(--surface-hover) !important;
}

/* ── DIVIDERS / linhas de separação ────────────────────────────── */
hr {
  border: 0 !important;
  border-top: 1px solid var(--border-subtle) !important;
  margin: 16px 0 !important;
}

/* ── BREADCRUMB ────────────────────────────────────────────────── */
.breadcrumb {
  background: transparent !important;
  border-bottom: 1px solid var(--border-subtle) !important;
}

/* ── LOGIN PRESERVADO ──────────────────────────────────────────── */
/* Mantém os elementos de login (orbe, mesh, gradiente cobalto) que
   foram afinados anteriormente — não interferimos com eles. */
