/* ─── Dark Mode — Gov.br Theme Override ─── */

/* Transition suave em tudo */
html.dark-mode *, html.dark-mode *::before, html.dark-mode *::after {
  transition: background-color .3s ease, color .3s ease, border-color .3s ease, box-shadow .3s ease !important;
}

/* ── Body / Background ── */
html.dark-mode body {
  background: linear-gradient(135deg, #0d1b2a 0%, #111827 100%) !important;
  color: #e2e8f0 !important;
}

/* ── Loading screen ── */
html.dark-mode #loading-screen {
  background: #0f172a !important;
}

/* ── Header ── */
html.dark-mode header {
  background: #1e293b !important;
  border-bottom-color: #2563eb !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.4) !important;
}
html.dark-mode header .logo-text { color: #93c5fd !important; }
html.dark-mode header .icons button {
  color: #93c5fd !important;
}
html.dark-mode header .icons button:hover {
  background: rgba(147,197,253,0.15) !important;
}

/* ── Nav ── */
html.dark-mode nav {
  background: #1e293b !important;
  border-bottom-color: #334155 !important;
}
html.dark-mode nav button { color: #94a3b8 !important; }
html.dark-mode nav button:hover { background: #334155 !important; }
html.dark-mode nav button i { color: #60a5fa !important; }
html.dark-mode nav button p { color: #94a3b8 !important; }
html.dark-mode nav button span { color: #60a5fa !important; }

/* ── Cards / Containers ── */
html.dark-mode .conteudo-inner,
html.dark-mode .card,
html.dark-mode .conteudo-inner {
  background: #1e293b !important;
  border-color: #334155 !important;
  box-shadow: 0 4px 20px rgba(0,0,0,0.4) !important;
}

html.dark-mode .progress-wrapper-outer,
html.dark-mode .info-container,
html.dark-mode .payer-info,
html.dark-mode .main-card {
  background: #1e293b !important;
  border-color: #334155 !important;
}

/* ── Títulos / Textos ── */
html.dark-mode h1, html.dark-mode h2, html.dark-mode h3 {
  color: #e2e8f0 !important;
}
html.dark-mode .titulo-section { color: #93c5fd !important; }
html.dark-mode .titulo-section::after { background: #2563eb !important; }

/* ── Info items ── */
html.dark-mode .info-item {
  border-bottom-color: #334155 !important;
  color: #e2e8f0 !important;
}
html.dark-mode .info-item:hover { background: #263548 !important; }
html.dark-mode .info-icon-wrap {
  background: rgba(96,165,250,0.15) !important;
}
html.dark-mode .info-icon-wrap i { color: #60a5fa !important; }
html.dark-mode .info-label { color: #64748b !important; }
html.dark-mode .info-item span:not(.info-label) { color: #e2e8f0 !important; }

html.dark-mode #status-item { background: #1a2d4a !important; }
html.dark-mode #status-item .info-icon-wrap { background: rgba(96,165,250,0.2) !important; }

/* ── Section titles ── */
html.dark-mode .section-title { color: #60a5fa !important; }
html.dark-mode .section-title::after { background: #334155 !important; }

/* ── Progress ── */
html.dark-mode .progress-container {
  background: #334155 !important;
}
html.dark-mode .progress-label { color: #60a5fa !important; }

/* ── Input fields ── */
html.dark-mode .container-form input,
html.dark-mode input[type="text"],
html.dark-mode input[type="tel"],
html.dark-mode input[type="email"] {
  background: #263548 !important;
  border-color: #475569 !important;
  color: #e2e8f0 !important;
}
html.dark-mode .container-form input:focus,
html.dark-mode input:focus {
  border-color: #3b82f6 !important;
  box-shadow: 0 0 0 3px rgba(59,130,246,0.2) !important;
}
html.dark-mode .container-form input::placeholder,
html.dark-mode input::placeholder { color: #64748b !important; }
html.dark-mode .input-group label {
  background: #1e293b !important;
  color: #60a5fa !important;
}

/* ── Info badges / boxes ── */
html.dark-mode .container-form .input-label,
html.dark-mode .info-badge {
  background: #1a2d4a !important;
  border-left-color: #3b82f6 !important;
  color: #93c5fd !important;
}

html.dark-mode .intro-text {
  background: #1a2d4a !important;
  border-left-color: #3b82f6 !important;
  color: #93c5fd !important;
}

/* ── Section blocks (termos/politica) ── */
html.dark-mode .section-block h2 {
  background: #263548 !important;
  border-left-color: #3b82f6 !important;
  color: #93c5fd !important;
}
html.dark-mode .section-block p,
html.dark-mode .section-block li { color: #cbd5e1 !important; }

/* ── Alert / Urgency boxes ── */
html.dark-mode .alert-card {
  background: #2d2a1a !important;
  border-color: #854d0e !important;
  border-left-color: #d97706 !important;
}
html.dark-mode .urgency-box {
  background: #2d2a1a !important;
  border-color: #854d0e !important;
  color: #fde68a !important;
}
html.dark-mode .gov-aviso {
  background: #2d2a1a !important;
  border-color: #854d0e !important;
  color: #fde68a !important;
}

/* ── Facebook Comments ── */
html.dark-mode .fb-header-outside {
  background: #1e293b !important;
  border-color: #334155 !important;
  color: #93c5fd !important;
}
html.dark-mode .fb-comments-container {
  background: #1e293b !important;
  border-color: #334155 !important;
}
html.dark-mode .comment-content {
  background: #263548 !important;
}
html.dark-mode .comment-content::before {
  border-right-color: #263548 !important;
}
html.dark-mode .comment-name { color: #60a5fa !important; }
html.dark-mode .comment-text { color: #cbd5e1 !important; }

/* ── Chat modal ── */
html.dark-mode .chat-body {
  background: #111827 !important;
}
html.dark-mode .message-bot {
  background: #263548 !important;
  color: #e2e8f0 !important;
}
html.dark-mode .chat-footer {
  background: #1e293b !important;
  border-top-color: #334155 !important;
}
html.dark-mode .chat-footer input {
  background: #1e293b !important;
  color: #e2e8f0 !important;
}

/* ── Carousel ── */
html.dark-mode .carousel {
  background: #1e293b !important;
}

/* ── Card headers (termos/politica) ── */
html.dark-mode .card-header {
  border-bottom-color: #334155 !important;
}
html.dark-mode .card-header-icon {
  background: rgba(96,165,250,0.15) !important;
}
html.dark-mode .card-header-icon i { color: #60a5fa !important; }
html.dark-mode .card-header h1 { color: #e2e8f0 !important; }
html.dark-mode .card-header p { color: #64748b !important; }
html.dark-mode .card-footer {
  border-top-color: #334155 !important;
}
html.dark-mode .contact-box {
  background: #263548 !important;
}
html.dark-mode .update-note { color: #475569 !important; }

/* ── Countdown (fila) ── */
html.dark-mode .countdown-ring svg .bg { stroke: #334155 !important; }
html.dark-mode #countdown { color: #60a5fa !important; }
html.dark-mode .countdown-inner small { color: #94a3b8 !important; }

/* ── Status page ── */
html.dark-mode .success-section {
  border-bottom-color: #334155 !important;
}
html.dark-mode .protocol-badge {
  background: #263548 !important;
  border-color: #475569 !important;
  color: #94a3b8 !important;
}
html.dark-mode .info-text { color: #cbd5e1 !important; }
html.dark-mode .safe-note { color: #475569 !important; }

/* ── Back page ── */
html.dark-mode .comunicado-badge {
  background: #1a2d4a !important;
}
html.dark-mode .alert-list {
  background: #2d1a1a !important;
  border-left-color: #ef4444 !important;
}
html.dark-mode .alert-list h3 { color: #f87171 !important; }
html.dark-mode .alert-list li { color: #fca5a5 !important; }

/* ── Footer ── */
html.dark-mode footer {
  background: linear-gradient(135deg, #020a14, #0a0f1e) !important;
}

/* ── Modal (cookie) ── */
html.dark-mode #ck-modal {
  background: #1e293b !important;
  color: #e2e8f0 !important;
}
html.dark-mode #ck-modal .ck-top h2 { color: #e2e8f0 !important; }
html.dark-mode #ck-modal .ck-intro { color: #94a3b8 !important; border-bottom-color: #334155 !important; }
html.dark-mode .ck-section { border-bottom-color: #334155 !important; }
html.dark-mode .ck-section-header:hover { background: #263548 !important; }
html.dark-mode .ck-section-title { color: #e2e8f0 !important; }
html.dark-mode .ck-section-body { color: #94a3b8 !important; }
html.dark-mode .ck-toggle-label { color: #94a3b8 !important; }
html.dark-mode .ck-browser-links a {
  background: #263548 !important;
  border-color: #475569 !important;
  color: #60a5fa !important;
}
html.dark-mode .ck-btn-reject {
  background: #263548 !important;
  border-color: #475569 !important;
  color: #e2e8f0 !important;
}

/* ── Dark mode button ativo ── */
html.dark-mode #dark-mode-btn {
  background: rgba(96,165,250,0.15) !important;
  border-radius: 50% !important;
  color: #60a5fa !important;
}
html.dark-mode #dark-mode-btn i {
  color: #60a5fa !important;
}

/* ── Index page ── */
html.dark-mode .card { background: #1e293b !important; border-color: #334155 !important; }
html.dark-mode .card h2 { color: #e2e8f0 !important; }
html.dark-mode .card p { color: #94a3b8 !important; }
html.dark-mode .card-icon { background: rgba(96,165,250,0.15) !important; }
html.dark-mode .percent-label { color: #60a5fa !important; }
html.dark-mode .timer-label { color: #94a3b8 !important; }
html.dark-mode .progress-wrapper { background: #334155 !important; }

/* ── Legal links ── */
html.dark-mode .legal-links a { color: #60a5fa !important; }
html.dark-mode .terms-section { border-top-color: #334155 !important; }
html.dark-mode .terms-section h2 { color: #60a5fa !important; }

/* ── Modal overlay (loading) ── */
html.dark-mode #loading-overlay { background: rgba(0,0,0,0.75) !important; }
