/* ──────────────────────────────────────────────────────────────────────────
   ekklisia-ui.css · camada visual global do Ekklisia (carregada depois do app-light.css)
   • Refinos do tema claro (foco, tabelas, botões, rolagem)
   • Modo escuro: html[data-theme="dark"] (preferência em localStorage "ekklisia-theme",
     ligada pelo botão do menu superior e propagada para todas as telas internas)
   ────────────────────────────────────────────────────────────────────────── */

/* ── Refinos (claro) ───────────────────────────────────────────────────── */
html{ -webkit-text-size-adjust:100%; }
body{ -webkit-font-smoothing:antialiased; }
.btn{ transition:background .15s, border-color .15s, box-shadow .15s, transform .08s; }
.btn:active{ transform:translateY(1px); }
.btn:focus-visible, .form-control:focus-visible, a:focus-visible, .nav-link:focus-visible{ outline:2px solid #c9a84c; outline-offset:2px; }
.table-hover tbody tr:hover{ background:rgba(3,61,79,.04); }
::-webkit-scrollbar{ width:10px; height:10px; }
::-webkit-scrollbar-thumb{ background:#c5d3db; border-radius:10px; border:2px solid transparent; background-clip:content-box; }
::-webkit-scrollbar-thumb:hover{ background:#a9bcc7; background-clip:content-box; border:2px solid transparent; }
.alert{ border-radius:10px; border-width:1px; }
.modal-content{ border-radius:14px; border:1px solid #e0eaef; }
.dataTables_wrapper .dataTables_filter input, .dataTables_wrapper .dataTables_length select{ border-radius:8px; }
.page-item.active .page-link{ background:#033D4F; border-color:#033D4F; }
.page-link{ color:#033D4F; }

/* ── Modo escuro ───────────────────────────────────────────────────────── */
html[data-theme="dark"]{
  color-scheme:dark;
  --primary:#6db8d4; --primary-lt:#8cc9de; --primary-xlt:rgba(109,184,212,.13);
  --accent:#d4b45a;
  --bg:#0e181e; --card-bg:#15252d; --text:#e2eaf0; --text-muted:#93a8b5; --border:#27404c;
  --shadow-sm:0 2px 12px rgba(0,0,0,.35); --shadow-md:0 4px 24px rgba(0,0,0,.5);
  --ok:#5fcf9a; --ok-lt:rgba(95,207,154,.14); --warn:#e6b450; --warn-lt:rgba(230,180,80,.15);
  --danger:#f08a84; --danger-lt:rgba(240,138,132,.15);
}
html[data-theme="dark"] body{ background:var(--bg) !important; color:var(--text); }
html[data-theme="dark"] .wrapper, html[data-theme="dark"] .main-content, html[data-theme="dark"] .container-fluid{ background:transparent; color:var(--text); }

/* cartões e painéis (classes das telas novas e das antigas) */
html[data-theme="dark"] .card, html[data-theme="dark"] .ek-card, html[data-theme="dark"] .ek-module-card, html[data-theme="dark"] .modal-content,
html[data-theme="dark"] .dropdown-menu, html[data-theme="dark"] .popover, html[data-theme="dark"] .list-group-item{
  background:var(--card-bg); color:var(--text); border-color:var(--border);
}
html[data-theme="dark"] .ek-card-hd, html[data-theme="dark"] .card-header, html[data-theme="dark"] .modal-header, html[data-theme="dark"] .modal-footer{
  background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,0)); border-color:var(--border); color:var(--text);
}
html[data-theme="dark"] .ek-page-title, html[data-theme="dark"] .ek-card-hd span, html[data-theme="dark"] h1, html[data-theme="dark"] h2,
html[data-theme="dark"] h3, html[data-theme="dark"] h4, html[data-theme="dark"] h5, html[data-theme="dark"] h6, html[data-theme="dark"] .modal-title{ color:var(--primary); }
html[data-theme="dark"] .ek-page-subtitle, html[data-theme="dark"] .text-muted, html[data-theme="dark"] small, html[data-theme="dark"] .ek-muted{ color:var(--text-muted) !important; }
html[data-theme="dark"] a{ color:#7cc3dc; }
html[data-theme="dark"] a.btn{ color:inherit; }
html[data-theme="dark"] hr{ border-color:var(--border); }

/* formulários */
html[data-theme="dark"] .form-control, html[data-theme="dark"] .custom-select, html[data-theme="dark"] select, html[data-theme="dark"] textarea,
html[data-theme="dark"] input[type=text], html[data-theme="dark"] input[type=number], html[data-theme="dark"] input[type=date],
html[data-theme="dark"] input[type=password], html[data-theme="dark"] input[type=email], html[data-theme="dark"] input[type=search]{
  background:#101f26 !important; color:var(--text) !important; border-color:var(--border) !important;
}
html[data-theme="dark"] .form-control:focus{ background:#13262e !important; border-color:var(--primary) !important; box-shadow:0 0 0 3px var(--primary-xlt) !important; }
html[data-theme="dark"] .form-control::placeholder{ color:#6b8190; }
html[data-theme="dark"] .form-control:disabled, html[data-theme="dark"] .form-control[readonly]{ background:#0c171d !important; color:#7f95a3 !important; }
html[data-theme="dark"] .input-group-text{ background:#101f26; color:var(--text-muted); border-color:var(--border); }
html[data-theme="dark"] label, html[data-theme="dark"] .form-group label{ color:var(--text-muted); }
html[data-theme="dark"] .select2-container--default .select2-selection--single, html[data-theme="dark"] .select2-dropdown{ background:#101f26; border-color:var(--border); }
html[data-theme="dark"] .select2-container--default .select2-selection--single .select2-selection__rendered{ color:var(--text); }

/* botões */
html[data-theme="dark"] .ek-btn-primary, html[data-theme="dark"] .btn-primary{ background:#0e6a88 !important; color:#fff !important; border-color:#0e6a88 !important; }
html[data-theme="dark"] .ek-btn-primary:hover, html[data-theme="dark"] .btn-primary:hover{ background:#12809f !important; }
html[data-theme="dark"] .ek-btn-ghost, html[data-theme="dark"] .btn-outline-secondary, html[data-theme="dark"] .btn-light, html[data-theme="dark"] .btn-secondary{
  background:transparent !important; color:var(--text) !important; border:1.5px solid var(--border) !important;
}
html[data-theme="dark"] .ek-btn-ghost:hover, html[data-theme="dark"] .btn-light:hover{ border-color:var(--primary) !important; color:var(--primary) !important; }
html[data-theme="dark"] .close{ color:var(--text); text-shadow:none; }

/* tabelas e DataTables */
html[data-theme="dark"] .table, html[data-theme="dark"] table.dataTable{ color:var(--text); background:transparent; }
html[data-theme="dark"] .table thead th, html[data-theme="dark"] table.dataTable thead th{ background:rgba(255,255,255,.04); color:var(--text-muted); border-color:var(--border) !important; }
html[data-theme="dark"] .table td, html[data-theme="dark"] .table th, html[data-theme="dark"] table.dataTable td{ border-color:var(--border) !important; }
html[data-theme="dark"] .table-striped tbody tr:nth-of-type(odd), html[data-theme="dark"] table.dataTable.stripe tbody tr.odd{ background:rgba(255,255,255,.025); }
html[data-theme="dark"] .table-hover tbody tr:hover, html[data-theme="dark"] table.dataTable tbody tr:hover{ background:rgba(109,184,212,.08) !important; }
html[data-theme="dark"] .dataTables_wrapper, html[data-theme="dark"] .dataTables_info, html[data-theme="dark"] .dataTables_length, html[data-theme="dark"] .dataTables_filter{ color:var(--text-muted); }
html[data-theme="dark"] .page-link{ background:var(--card-bg); border-color:var(--border); color:var(--text); }
html[data-theme="dark"] .page-item.disabled .page-link{ background:#101f26; color:#5d7482; }
html[data-theme="dark"] .page-item.active .page-link{ background:#0e6a88; border-color:#0e6a88; color:#fff; }

/* abas, alertas, selos, abas do módulo */
html[data-theme="dark"] .nav-tabs, html[data-theme="dark"] .ek-tabs{ border-color:var(--border); }
html[data-theme="dark"] .alert-success{ background:rgba(95,207,154,.14); color:#8be3b9; border-color:rgba(95,207,154,.35); }
html[data-theme="dark"] .alert-danger{ background:rgba(240,138,132,.14); color:#f7b3ae; border-color:rgba(240,138,132,.35); }
html[data-theme="dark"] .alert-warning{ background:rgba(230,180,80,.14); color:#f0cd86; border-color:rgba(230,180,80,.35); }
html[data-theme="dark"] .alert-info{ background:rgba(109,184,212,.14); color:#a9d8e8; border-color:rgba(109,184,212,.35); }
html[data-theme="dark"] .ek-badge{ background:var(--primary-xlt); color:var(--primary); }
html[data-theme="dark"] .ek-title-icon{ background:var(--primary-xlt); color:var(--primary); }
html[data-theme="dark"] code{ background:rgba(255,255,255,.07); color:#f0cd86; }
html[data-theme="dark"] ::-webkit-scrollbar-thumb{ background:#2f4b59; background-clip:content-box; }
html[data-theme="dark"] ::-webkit-scrollbar-track{ background:transparent; }
html[data-theme="dark"] .daterangepicker, html[data-theme="dark"] .daterangepicker .calendar-table{ background:var(--card-bg); border-color:var(--border); color:var(--text); }
html[data-theme="dark"] .daterangepicker td.available:hover{ background:#1e3641; }
html[data-theme="dark"] img.ek-thumb{ border-color:var(--border); }
html[data-theme="dark"] .ek-frame-card iframe, html[data-theme="dark"] iframe{ background:transparent; color-scheme:dark; }
