html.dark {
  --cg-primary: #60a5fa;
  --cg-primary-dark: #93c5fd;
  --cg-secondary: #2dd4bf;
  --cg-success: #4ade80;
  --cg-warning: #fbbf24;
  --cg-danger: #f87171;
  --cg-background: #0b1220;
  --cg-surface: #111c2e;
  --cg-text-primary: #e8eef8;
  --cg-text-secondary: #a5b4c8;
  --cg-border: #26354b;
  color-scheme: dark;
}

html, body, body > div, header, nav, main, section, article, aside, footer,
input, select, textarea, button, a { transition: background-color .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease; }

.dark body { color: #dce6f3; background: #0b1220 !important; }
.dark body > div, .dark .min-h-screen.bg-slate-50 { background: #0b1220 !important; }
.dark [data-page-container] { color: #dce6f3; }
.dark .bg-white, .dark .bg-white\/95, .dark .bg-white\/90, .dark .bg-white\/80,
.dark .bg-white\/70, .dark .bg-white\/60 { background-color: #111c2e !important; }
.dark .bg-slate-50, .dark .bg-slate-50\/95, .dark .bg-slate-50\/90,
.dark .bg-slate-50\/80, .dark .bg-slate-50\/70, .dark .bg-slate-50\/60,
.dark .bg-slate-100 { background-color: #162337 !important; }
.dark .bg-blue-50, .dark .bg-blue-50\/95, .dark .bg-blue-50\/70,
.dark .bg-blue-50\/60 { background-color: #14284a !important; }
.dark .bg-teal-50, .dark .bg-teal-50\/70,
.dark .bg-emerald-50 { background-color: #103634 !important; }
.dark .bg-green-50, .dark .bg-green-50\/70, .dark .bg-green-100,
.dark .bg-emerald-100, .dark .bg-teal-100 { background-color: #12352d !important; }
.dark .bg-amber-50, .dark .bg-amber-50\/70 { background-color: #3b2a12 !important; }
.dark .bg-amber-100, .dark .bg-yellow-50, .dark .bg-yellow-100 { background-color: #3d2d12 !important; }
.dark .bg-red-50 { background-color: #3c1d25 !important; }
.dark .bg-red-100 { background-color: #431d28 !important; }
.dark .bg-purple-50, .dark .bg-purple-100, .dark .bg-violet-50,
.dark .bg-violet-50\/70, .dark .bg-violet-100 { background-color: #31204a !important; }
.dark .bg-blue-100 { background-color: #17345e !important; }
.dark .from-blue-50 {
  --tw-gradient-from: #14284a var(--tw-gradient-from-position) !important;
  --tw-gradient-to: rgb(20 40 74 / 0) var(--tw-gradient-to-position) !important;
}
.dark .to-white { --tw-gradient-to: #111c2e var(--tw-gradient-to-position) !important; }
.dark [data-paciente-summary] {
  background: linear-gradient(115deg, #14284a 0%, #111c2e 52%, #103634 100%) !important;
}
.dark .border-slate-100, .dark .border-slate-200, .dark .border-slate-200\/80, .dark .border-slate-200\/90 { border-color: #26354b !important; }
.dark .border-blue-100, .dark .border-blue-200 { border-color: #294a78 !important; }
.dark .border-teal-100, .dark .border-teal-200 { border-color: #1d5b58 !important; }
.dark .border-violet-100, .dark .border-violet-200 { border-color: #5b3b82 !important; }
.dark .text-slate-950, .dark .text-slate-900, .dark .text-slate-800,
.dark .text-blue-950 { color: #edf4ff !important; }
.dark .text-slate-700 { color: #d0dbea !important; }
.dark .text-slate-600, .dark .text-slate-500 { color: #a5b4c8 !important; }
.dark .text-slate-400 { color: #8191aa !important; }
.dark .text-blue-900, .dark .text-blue-800, .dark .text-blue-700, .dark .text-blue-600 { color: #93c5fd !important; }
.dark .text-teal-700, .dark .text-teal-600 { color: #5eead4 !important; }
.dark .text-green-900, .dark .text-green-800, .dark .text-green-700, .dark .text-green-600,
.dark .text-emerald-800, .dark .text-emerald-700 { color: #86efac !important; }
.dark .text-amber-950, .dark .text-amber-900, .dark .text-amber-800,
.dark .text-amber-700 { color: #fde68a !important; }
.dark .text-red-950, .dark .text-red-900, .dark .text-red-800,
.dark .text-red-700, .dark .text-red-600 { color: #fca5a5 !important; }
.dark .text-purple-900, .dark .text-purple-800, .dark .text-purple-700,
.dark .text-violet-900, .dark .text-violet-800, .dark .text-violet-700 { color: #d8b4fe !important; }
.dark .ring-white, .dark .ring-slate-200 { --tw-ring-color: #26354b !important; }

/* Variantes hover do Tailwind precisam de equivalentes próprios no tema escuro. */
.dark .hover\:bg-white:hover,
.dark .hover\:bg-slate-50:hover,
.dark .hover\:bg-slate-50\/80:hover,
.dark .hover\:bg-slate-100:hover,
.dark .hover\:bg-slate-200:hover { background-color: #182943 !important; }
.dark .hover\:bg-blue-50:hover,
.dark .hover\:bg-blue-100:hover { background-color: #17345e !important; }
.dark .hover\:bg-green-50:hover { background-color: #12352d !important; }
.dark .hover\:bg-amber-50:hover { background-color: #3b2a12 !important; }
.dark .hover\:bg-red-50:hover,
.dark .hover\:bg-red-100:hover { background-color: #431d28 !important; }
.dark .hover\:bg-teal-50:hover { background-color: #103634 !important; }
.dark .hover\:bg-violet-50:hover { background-color: #31204a !important; }
.dark .hover\:text-slate-900:hover,
.dark .hover\:text-slate-700:hover { color: #edf4ff !important; }
.dark .hover\:text-blue-800:hover,
.dark .hover\:text-blue-700:hover,
.dark .hover\:text-blue-500:hover { color: #93c5fd !important; }

.dark #atendimentos-list-page [data-atendimento-row]:has(.cb-atendimento:checked) {
  color: #dce6f3 !important;
  background-color: #17345e !important;
  box-shadow: inset 3px 0 0 #3b82f6;
}

.dark #atendimentos-list-page [data-atendimento-row]:has(.cb-atendimento:checked):hover {
  background-color: #1d3a66 !important;
}

.dark [data-ui-v2-topbar] { border-color: #26354b !important; background: rgba(15, 25, 42, .96) !important; box-shadow: 0 12px 35px -28px #000; }
.dark [data-ui-v2-bottom-nav], .dark [data-ui-v2-mobile-nav] {
  border-color: #2b405f !important;
  background: linear-gradient(180deg, rgba(20, 34, 55, .98), rgba(15, 27, 45, .98)) !important;
  box-shadow: 0 -12px 32px -24px rgba(0, 0, 0, .9);
}
.dark [data-ui-v2-bottom-nav] a:not([data-shortcut="F12"]):not(.bg-blue-50),
.dark [data-ui-v2-bottom-nav] button,
.dark [data-ui-v2-mobile-nav] a:not(.text-blue-700),
.dark [data-ui-v2-mobile-nav] button { color: #cbd5e1 !important; }
.dark [data-ui-v2-bottom-nav] a:not([data-shortcut="F12"]):not(.bg-blue-50):hover,
.dark [data-ui-v2-bottom-nav] button:hover,
.dark [data-ui-v2-mobile-nav] a:not(.text-blue-700):hover,
.dark [data-ui-v2-mobile-nav] button:hover { color: #bfdbfe !important; background: #1b3150 !important; }
.dark [data-ui-v2-bottom-nav] .bg-blue-50,
.dark [data-ui-v2-mobile-nav] a.text-blue-700 {
  color: #ffffff !important;
  background: #2563eb !important;
  box-shadow: 0 8px 20px -13px rgba(59, 130, 246, .9);
}
.dark [data-ui-v2-bottom-nav] .bg-blue-50:hover,
.dark [data-ui-v2-mobile-nav] a.text-blue-700:hover { color: #ffffff !important; background: #1d4ed8 !important; }
.dark [data-ui-v2-bottom-nav] .bg-blue-50 i,
.dark [data-ui-v2-bottom-nav] .bg-blue-50 span,
.dark [data-ui-v2-mobile-nav] a.text-blue-700 i { color: #ffffff !important; }
.dark [data-ui-v2-bottom-nav] kbd { color: #94a3b8 !important; background: rgba(148, 163, 184, .12) !important; }
.dark [data-ui-v2-bottom-nav] .bg-blue-50 kbd,
.dark [data-ui-v2-bottom-nav] [data-shortcut="F12"] kbd { color: #dbeafe !important; background: rgba(255,255,255,.15) !important; }
.dark [data-ui-v2-more-menu] { color: #dce6f3; background: #111c2e !important; }

.dark [data-page-container] .rounded-2xl.border,
.dark [data-page-container] .rounded-xl.border,
.dark [data-page-container] .rounded-3xl.border,
.dark [data-page-container] [class*="bg-white"] { border-color: #26354b !important; background-color: #111c2e !important; }
.dark [data-page-container] hr, .dark [data-page-container] [class*="divide-slate"] > * + * { border-color: #26354b !important; }

.dark input:not([type="checkbox"]):not([type="radio"]), .dark select, .dark textarea,
.dark .form-control, .dark .select2-selection, .dark .select2-dropdown, .dark .select2-search__field {
  border-color: #354761 !important; color: #e8eef8 !important; background: #0f1a2b !important;
}
.dark input::placeholder, .dark textarea::placeholder { color: #718198 !important; opacity: 1; }
.dark input:focus, .dark select:focus, .dark textarea:focus, .dark .form-control:focus { border-color: #60a5fa !important; box-shadow: 0 0 0 3px rgba(96,165,250,.18) !important; }
.dark input:disabled, .dark select:disabled, .dark textarea:disabled, .dark .form-control:disabled { color: #718198 !important; background: #172236 !important; }
.dark input[readonly], .dark textarea[readonly], .dark .form-control[readonly] { color: #c8d5e5 !important; background: #142035 !important; }
.dark .select2-container--default .select2-selection__rendered, .dark .select2-results__option { color: #dce6f3 !important; }
.dark .select2-results__option--highlighted { background: #1d4ed8 !important; }
.dark .select2-results, .dark .select2-results__option { background: #111c2e; }

/* Superfícies claras residuais do Bootstrap e plugins legados. */
.dark .card, .dark .card-body, .dark .list-group, .dark .list-group-item,
.dark fieldset, .dark .input-group-text, .dark .custom-file-label,
.dark .popover, .dark .popover-header, .dark .popover-body,
.dark .nav-tabs, .dark .tab-content {
  border-color: #26354b !important;
  color: #dce6f3 !important;
  background: #111c2e !important;
}
.dark .card-header, .dark .card-footer, .dark .list-group-item-action:hover,
.dark .popover-header { border-color: #26354b !important; color: #dce6f3 !important; background: #162337 !important; }
.dark .input-group-text { color: #93c5fd !important; background: #182943 !important; }
.dark .list-group-item.text-muted, .dark .text-muted { color: #a5b4c8 !important; }
.dark .btn-light, .dark .btn-white, .dark .btn-secondary, .dark .btn-outline-secondary,
.dark .cg-form-button--secondary {
  border-color: #415570 !important;
  color: #dce6f3 !important;
  background: #18263b !important;
}
.dark .btn-light:hover, .dark .btn-white:hover, .dark .btn-secondary:hover,
.dark .btn-outline-secondary:hover, .dark .cg-form-button--secondary:hover {
  border-color: #527099 !important;
  color: #eff6ff !important;
  background: #203654 !important;
}
.dark .btn-outline-danger { border-color: #7f3341 !important; color: #fca5a5 !important; background: #301923 !important; }
.dark .badge-light { color: #c8d5e5 !important; background: #213149 !important; }
.dark .custom-control-label::before, .dark .custom-checkbox .custom-control-label::before,
.dark .custom-switch .custom-control-label::before {
  border-color: #52657e !important;
  background-color: #142035 !important;
}
.dark .custom-control-input:checked ~ .custom-control-label::before { border-color: #3b82f6 !important; background-color: #2563eb !important; }
.dark input[type="checkbox"], .dark input[type="radio"] { accent-color: #3b82f6; }
.dark .text-success { color: #4ade80 !important; }
.dark .text-info { color: #67e8f9 !important; }
.dark .swal2-popup { border: 1px solid #30415a !important; color: #dce6f3 !important; background: #111c2e !important; }
.dark .swal2-title, .dark .swal2-html-container { color: #dce6f3 !important; }
.dark .swal2-footer { border-color: #26354b !important; }
.dark .cke, .dark .cke_top, .dark .cke_bottom, .dark .cke_contents { border-color: #30415a !important; background: #111c2e !important; }

/* Superfícies próprias ainda mantidas por módulos legados. */
.dark .metric-pill, .dark .history-section, .dark .history-inner-panel,
.dark .medication-kpi, .dark .medication-credit-card, .dark .timeline-card,
.dark .history-table-region, .dark .history-table-overlay__spinner,
.dark .filter-bar, .dark .financeiro-loading__spinner, .dark .insight-item,
.dark .finance-dashboard .pending-item, .dark .plan-renovar__card,
.dark .payment-card, .dark .acerto-edit-panel, .dark .form-section {
  border-color: #26354b !important;
  color: #dce6f3 !important;
  background: #111c2e !important;
}
.dark .metric-pill__value, .dark .metric-pill strong, .dark .history-info-list__value,
.dark .medication-credit-card__title, .dark .timeline-card strong,
.dark .plan-renovar, .dark .cg-glass-card, .dark .cg-glass-card article {
  color: #dce6f3 !important;
}
.dark .medication-credit-card--esgotado { background: #301923 !important; }
.dark .medication-credit-card--cancelado { background: #162337 !important; }
.dark #financeiro-loading { background: rgba(11,18,32,.7) !important; }
.dark .pagination-soft__btn { border-color: #415570 !important; color: #bfdbfe !important; background: #18263b !important; }
.dark .finance-dashboard .pending-item--danger { background: linear-gradient(180deg,#351923,#111c2e) !important; }
.dark .finance-dashboard .pending-item--warning { background: linear-gradient(180deg,#39280f,#111c2e) !important; }
.dark .cg-atendimento-page .kpi, .dark .cg-atendimento-page .history-card,
.dark .cg-atendimento-page .form-card, .dark #modalAnamnese .cg-anamnese-card,
.dark .cg-glass-card, .dark .cg-evolucao-modal-block, .dark .ai-loading-card {
  border-color: #26354b !important; color: #dce6f3 !important; background: #111c2e !important;
}
.dark .cg-atendimento-page .cke_bottom, .dark .cg-atendimento-page .cke_contents { background: #0f1a2b !important; }
.dark #modalAnamnese .modal-body { background: #0f1a2b !important; }
.dark .acerto-edit-form__body { background: #0f1a2b !important; }
.dark .floating-footer { border-color: #26354b !important; background: #111c2e !important; }
.dark .btn-action-secondary { border-color: #415570 !important; color: #dce6f3 !important; background: #18263b !important; }

/* Planos e assinaturas usam tokens próprios no dashboard. */
.dark .plan-dashboard {
  --plan-surface: #111c2e !important;
  --plan-text: #e8eef8 !important;
  --plan-muted: #a5b4c8 !important;
  --plan-border: #2b3b53 !important;
  --plan-shadow: 0 22px 52px -34px rgba(0,0,0,.8) !important;
  color: var(--plan-text) !important;
}
.dark .plan-dashboard__summary-card, .dark .plan-card {
  border-color: var(--plan-border) !important;
  color: var(--plan-text) !important;
  background: var(--plan-surface) !important;
  box-shadow: var(--plan-shadow) !important;
}
.dark .plan-card:hover { border-color: #415b7d !important; box-shadow: 0 28px 60px -38px rgba(59,130,246,.55) !important; }
.dark .plan-card.is-current { border-color: #3b82f6 !important; box-shadow: 0 28px 64px -36px rgba(59,130,246,.65) !important; }
.dark .plan-section__title, .dark .plan-dashboard__summary-header h5,
.dark .plan-history-table tbody td { color: #e8eef8 !important; }
.dark .plan-section__subtitle, .dark .plan-card__description,
.dark .plan-card__features, .dark .plan-history-table thead th { color: #a5b4c8 !important; }
.dark .plan-history-table thead th, .dark .plan-history-table tbody td { border-color: #2b3b53 !important; background: transparent !important; }
.dark .plan-chip { color: #d0dbea !important; background: #213149 !important; }
.dark .plan-chip--soft { color: #bfdbfe !important; background: #17345e !important; }
.dark .plan-status-chip { color: #d0dbea !important; background: #213149 !important; }
.dark .plan-status-chip[data-status="ativa"] { color: #99f6e4 !important; background: #123c32 !important; }
.dark .plan-status-chip[data-status="pendente"] { color: #fde68a !important; background: #493713 !important; }
.dark .plan-status-chip[data-status="cancelada"],
.dark .plan-status-chip[data-status="expirada"] { color: #fecaca !important; background: #4a2029 !important; }
.dark .plan-empty-state { border-color: #415570 !important; color: #a5b4c8 !important; background: #162337 !important; }
.dark .plan-empty-state h6 { color: #93c5fd !important; }
.dark .plan-card__cta .btn-outline-primary, .dark .plan-dashboard__actions .btn-outline-primary {
  color: #93c5fd !important; background: #14284a !important;
}

.dark .modal-content, .dark [role="dialog"] > section, .dark .dropdown-menu { border-color: #30415a !important; color: #dce6f3 !important; background: #111c2e !important; }
.dark .modal-header, .dark .modal-footer, .dark .dropdown-divider { border-color: #26354b !important; background: #142035 !important; }
.dark .modal-body { background: #0f1a2b !important; }
.dark .clinic-modal .modal-section {
  border: 1px solid #30415a !important;
  color: #dce6f3 !important;
  background: #142035 !important;
  box-shadow: 0 12px 30px -24px rgba(0,0,0,.75) !important;
}
.dark .clinic-modal .modal-section__title { color: #93c5fd !important; }
.dark .clinic-modal .modal-section__title .icon { color: #bfdbfe !important; background: #1d3557 !important; }
.dark .clinic-modal label, .dark .clinic-modal .form-section__field label { color: #d0dbea !important; }
.dark .clinic-modal .form-text, .dark .clinic-modal small, .dark .clinic-modal .text-muted { color: #8fa1ba !important; }
.dark .clinic-modal .floating-footer { border-color: #30415a !important; background: #142035 !important; }
.dark .dropdown-item { color: #dce6f3 !important; }
.dark .dropdown-item:hover, .dark [role="menu"] a:hover { color: #bfdbfe !important; background: #1a2b45 !important; }
.dark .table { color: #dce6f3; background: #111c2e; }
.dark .table th, .dark .table td { border-color: #26354b !important; }
.dark .table thead th { color: #b8c6d9 !important; background: #162337 !important; }
.dark .table-hover tbody tr:hover { background: #172943 !important; }

.dark .legacy-screen .cg-list-table-shell, .dark .legacy-screen table.cg-list-table-v2,
.dark .legacy-screen .filter-toolbar, .dark .legacy-screen .table-footer,
.dark .legacy-screen .card-footer:has(.pagination) { border-color: #26354b !important; color: #dce6f3 !important; background: #111c2e !important; }
.dark .legacy-screen table.cg-list-table-v2 thead { color: #b8c6d9 !important; background: #162337 !important; }
.dark .legacy-screen table.cg-list-table-v2 thead th, .dark .legacy-screen table.cg-list-table-v2 tbody td { border-color: #26354b !important; color: #dce6f3 !important; }
.dark .legacy-screen table.cg-list-table-v2 tbody tr:hover { background: #172943 !important; }
.dark .legacy-screen table.cg-list-table-v2 tbody tr { border-color: #26354b !important; background: #111c2e !important; }
.dark .legacy-screen table.cg-list-table-v2 a:not(.btn) { color: #7dd3fc; }
.dark .legacy-screen .pagination .page-link { border-color: #354761; color: #c8d5e5; background: #142035; }
.dark .legacy-screen .pagination .page-item.disabled .page-link { color: #65758d; background: #111827; }

.dark .cg-form-page-header__title, .dark .cg-form-page .content-header-title,
.dark .cg-form-page .page-header h2, .dark .cg-form-page .page-header h3 { color: #edf4ff !important; }
.dark .cg-form-shell.atendimento-form-card, .dark .cg-form-page .clinic-accordion,
.dark .cg-form-page [data-page-container] .card, .dark .cg-form-page [data-page-container] .card > .card-footer,
.dark .cg-form-surface .modal-section { border-color: #26354b !important; background: #111c2e !important; }
.dark .cg-form-page .clinic-accordion__header, .dark .cg-form-page [data-page-container] .card > .card-header,
.dark .cg-form-surface.modal-content .modal-header, .dark .cg-form-surface .modal-header { border-color: #26354b !important; color: #e8eef8 !important; background: #162337 !important; }
.dark .cg-form-page [data-page-container] form label, .dark .cg-form-surface label { color: #c8d5e5 !important; }
.dark .cg-form-page [data-page-container] form fieldset,
.dark .cg-form-page fieldset.form-group { border-color: #26354b !important; background: #0f1a2b !important; }
.dark .cg-form-page .list-group-item { border-color: #26354b !important; color: #c8d5e5 !important; background: #142035 !important; }
.dark .cg-form-page .list-group-item .badge { color: #dbeafe; background: #1d4ed8; }
.dark .cg-form-page .pagamento-item {
  border-color: #30415a !important;
  color: #dce6f3 !important;
  background: #142035 !important;
  box-shadow: none !important;
}
.dark .cg-form-page .pagamento-item:hover { border-color: #415b7d !important; background: #17263c !important; box-shadow: 0 10px 24px -22px rgba(96,165,250,.55) !important; }
.dark .cg-form-page [data-page-container] form .btn-outline-secondary {
  border-color: #415570 !important; color: #dce6f3 !important; background: #18263b !important;
}
.dark .cg-form-page [data-page-container] form .btn-outline-danger {
  border-color: #7f3341 !important; color: #fca5a5 !important; background: #301923 !important;
}
.dark .cg-form-page [data-page-container] form .btn-outline-success {
  border-color: #16745a !important; color: #6ee7b7 !important; background: #12352d !important;
}
.dark .cg-form-page [data-page-container] form .btn-outline-danger:hover { color: #fee2e2 !important; background: #4a2029 !important; }
.dark .cg-form-page [data-page-container] form .btn-outline-success:hover { color: #d1fae5 !important; background: #165044 !important; }
.dark .cg-form-actions { border-color: #26354b; background: rgba(17,28,46,.96); }

.dark .alert-success { border-color: #166534 !important; color: #bbf7d0 !important; background: #123322 !important; }
.dark .alert-warning { border-color: #854d0e !important; color: #fde68a !important; background: #39280f !important; }
.dark .alert-danger, .dark .alert-error { border-color: #991b1b !important; color: #fecaca !important; background: #3c1820 !important; }
.dark .alert-info { border-color: #1d4ed8 !important; color: #bfdbfe !important; background: #14284a !important; }

/* Agenda e FullCalendar */
.dark .agenda-workspace { --agenda-ink: #e8eef8; --agenda-muted: #a5b4c8; --agenda-border: #26354b; --agenda-surface: #111c2e; --agenda-soft: #162337; }
.dark .agenda-toolbar, .dark .agenda-filter-bar, .dark .agenda-calendar-card, .dark .agenda-side-panel, .dark .agenda-legend,
.dark .agenda-summary-grid article, .dark .agenda-panel-item, .dark .agenda-dialog-card { border-color: #26354b; color: #dce6f3; background: #111c2e; }
.dark .agenda-advanced-filters, .dark .agenda-panel-tabs, .dark .agenda-dialog-actions, .dark .agenda-time-navigation { border-color: #26354b; background: #162337; }
.dark .agenda-advanced-actions { border-color: #26354b; background: #111c2e !important; }
.dark .agenda-btn-secondary, .dark .agenda-icon-btn, .dark .agenda-mobile-view select {
  border-color: #415570; color: #c8d5e5; background: #162337;
}
.dark .agenda-btn-secondary:hover, .dark .agenda-icon-btn:hover, .dark .agenda-btn-ghost:hover { color: #eff6ff; background: #203654; }
.dark .agenda-view-switcher, .dark .agenda-view-switcher button.is-active { color: #c8d5e5; background: #162337; }
.dark .agenda-view-switcher button.is-active { color: #93c5fd; background: #223957; }
.dark .agenda-period-title, .dark .agenda-panel-heading strong, .dark .agenda-panel-item-content strong,
.dark .agenda-dialog-header h2, .dark .agenda-unavailable h2 { color: #edf4ff; }
.dark .agenda-field label, .dark .agenda-page-context, .dark .agenda-panel-heading span, .dark .agenda-panel-item-content span,
.dark .agenda-dialog-details dt, .dark .agenda-dialog-details dd, .dark .agenda-legend { color: #a5b4c8; }
.dark .agenda-calendar-card .fc { color: #dce6f3; }
.dark .agenda-calendar-card .fc th, .dark .agenda-calendar-card .fc td { border-color: #26354b; }
.dark .agenda-calendar-card .fc th, .dark .agenda-calendar-card .fc-list-heading td,
.dark .agenda-calendar-card .fc-popover .fc-header { color: #b8c6d9; background: #162337; }
.dark .agenda-calendar-card .fc-day-number, .dark .agenda-calendar-card .fc-axis { color: #a5b4c8; }
.dark .agenda-calendar-card .fc-today { background: #14284a !important; }
.dark .agenda-calendar-card .fc-sat, .dark .agenda-calendar-card .fc-sun { background-color: #0f1a2b; }
.dark .agenda-calendar-card .fc-popover { border-color: #30415a; color: #dce6f3; background: #111c2e; }
.dark .agenda-calendar-card .fc-list-item:hover td { background: #172943; }
.dark .agenda-calendar-card .fc-list-item-title a { color: #e8eef8; }
.dark .agenda-calendar-card .fc-content { color: inherit; }
.dark .agenda-calendar-card .fc-timeGrid-view .fc-scroller { scrollbar-color: #52657e #162337; }
.dark .agenda-calendar-card .fc-timeGrid-view .fc-scroller::-webkit-scrollbar-track { background: #162337; }
.dark .agenda-calendar-card .fc-timeGrid-view .fc-scroller::-webkit-scrollbar-thumb { border-color: #162337; background: #52657e; }
.dark .agenda-loading { color: #c8d5e5; background: rgba(15,26,43,.82); }
.dark .agenda-error { border-color: #7f3341; color: #fca5a5; background: #241621; }
.dark .agenda-error div span { color: #a5b4c8; }
.dark .agenda-panel-tabs button[aria-selected="true"] { color: #93c5fd; background: #1b2c46; }
.dark .agenda-panel-note, .dark .agenda-panel-empty, .dark .agenda-unavailable { border-color: #354761; color: #a5b4c8; background: #162337; }
.dark .agenda-status-pill { color: #c8d5e5; background: #213149; }
.dark .agenda-calendar-card .agenda-status-pendente { color: #fde68a; background: #493713; }
.dark .agenda-calendar-card .agenda-status-em-andamento { color: #e9d5ff; background: #3c2456; }
.dark .agenda-calendar-card .agenda-status-realizado, .dark .agenda-calendar-card .agenda-status-concluido { color: #a7f3d0; background: #123c32; }
.dark .agenda-calendar-card .agenda-status-cancelado { color: #fecaca; background: #4a2029; }
.dark .agenda-calendar-card .agenda-status-indefinido { color: #c8d5e5; background: #27374e; }
.dark .agenda-calendar-card .agenda-evento-bloqueio { color: #c8d5e5; background: repeating-linear-gradient(135deg,#27374e,#27374e 6px,#18263b 6px,#18263b 12px); }

/* Login público */
.dark [data-auth-shell] { background: linear-gradient(145deg,#08111f 0%,#0b1220 48%,#082522 100%) !important; }
.dark [data-auth-brand-panel], .dark [data-auth-card] { border-color: #294a78 !important; background: linear-gradient(145deg,#12213a 0%,#111c2e 62%,#102b2b 100%) !important; box-shadow: 0 32px 80px -42px rgba(37,99,235,.45) !important; }
.dark [data-auth-card] { background: #111c2e !important; }
.dark [data-auth-benefit] { border-color: #29415f !important; background: #162337 !important; }
.dark [data-auth-shell] footer, .dark [data-auth-shell] header { border-color: #263c5d !important; }

@media (prefers-reduced-motion: reduce) {
  html, body, body > div, header, nav, main, section, article, aside, footer, input, select, textarea, button, a { transition: none !important; }
}
