:root{--border:#e5e7eb}
.panel{background:#fff;border:1px solid var(--border);border-radius:10px;padding:12px;min-height:200px;box-shadow:0 1px 2px rgba(0,0,0,.04)}
.pager{display:flex;gap:8px;align-items:center;justify-content:center}
/* Categorias com leve contraste para diferenciar dos links */
.cat{padding:0;margin:0;cursor:pointer;background:transparent;border:0}
.cat:hover{background:transparent}
.cat .title{display:flex;align-items:center}
.links-under{margin-top:0;padding-top:0;border-top:0}
.link{padding:0;margin:0;border:0;background:transparent}
.link:hover{background:transparent}
.color-dot{display:inline-block;width:14px;height:14px;border-radius:50%;border:1px solid var(--border);vertical-align:middle;margin-right:6px}
.icon-btn{border:1px solid var(--border); background:#fff; color:#0f172a; border-radius:8px; padding:6px 10px; display:inline-flex; align-items:center; gap:8px; text-decoration:none; min-height:44px; min-width:44px; justify-content:center}
.icon-btn:hover{background:#f8fafc}
/* Compact link row to mirror public page while keeping good tap targets */
.link-row{padding:.5rem 0; border-bottom:1px solid var(--border)}
.link-row a{line-height:1.4}
/* Force modal theme to match site */
.app-modal .modal-content{background:#fff;color:#0f172a}
.app-modal .modal-header,.app-modal .modal-footer{border-color:var(--border)}
/* Dark mode */
body.dark .panel{background:#0b1220;border-color:#1f2937}
body.dark .cat{background:transparent;border-color:transparent}
body.dark .link{background:transparent;border-color:transparent}
body.dark a{color:#93c5fd}
body.dark .app-modal .modal-content{background:#0b1220;color:#e5e7eb}
/* Dark mode: cards and form elements */
body.dark .card{background:#0b1220;color:#e5e7eb;border-color:#1f2937}
body.dark .form-control, body.dark .form-select, body.dark .form-check-input{background:#0b1320;color:#e5e7eb;border-color:#334155}
body.dark .form-control::placeholder{color:#94a3b8}
body.dark .input-group-text{background:#0b1320;color:#cbd5e1;border-color:#334155}
body.dark .btn-outline-secondary{color:#e5e7eb;border-color:#475569}
body.dark .btn-outline-secondary:hover{background:#111827;border-color:#64748b;color:#e5e7eb}
body.dark .form-check-label{color:#e5e7eb}
/* Reduce extreme contrast for base backgrounds/text */
body.dark{background:#0f172a;color:#e5e7eb}
/* Dark mode: improve visibility for selected/active controls site-wide */
body.dark .form-check-input{background:#0b1320;border-color:#475569}
/* Use darker checked color in dark mode for better harmony */
body.dark .form-check-input:checked{background-color:#334155;border-color:#334155;}
/* Ensure visible white checkmark in dark mode */
body.dark .form-check-input:checked[type=checkbox]{
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3 6-6'/%3e%3c/svg%3e");
}
body.dark .form-check-input:checked[type=radio]{
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23ffffff'/%3e%3c/svg%3e");
}
body.dark .form-check-input:focus{box-shadow:0 0 0 .25rem rgba(147,197,253,.25);border-color:#93c5fd}
body.dark .btn-close{filter:invert(1) grayscale(100%)}
body.dark .nav-tabs .nav-link{color:#e5e7eb}
body.dark .nav-tabs .nav-link.active{background:#0b1220;border-color:#1f2937 #1f2937 #0b1220;color:#e5e7eb}
body.dark .page-link{background:#0b1220;color:#e5e7eb;border-color:#334155}
body.dark .page-item.active .page-link{background:#2563eb;border-color:#2563eb;color:#fff}
body.dark .page-link:hover{background:#111827;color:#e5e7eb;border-color:#475569}
/* Dark mode: action icon buttons (editar/apagar) */
body.dark .icon-btn{border-color:#334155; background:#0b1320; color:#e5e7eb}
body.dark .icon-btn:hover{background:#111827}
/* Dark mode: header navbar buttons */
body.dark .navbar .btn-light{background:#334155;border-color:#475569;color:#e5e7eb}
body.dark .navbar .btn-light:hover{background:#1f2937;border-color:#64748b;color:#ffffff}
body.dark .navbar .btn-warning{background:#d97706;border-color:#b45309;color:#111827}
body.dark .navbar .btn-warning:hover{background:#f59e0b;border-color:#d97706;color:#111827}
/* Dark mode: Admin tables and tabs */
body.dark .tab-content{background:transparent}
/* Bootstrap table overrides in dark mode */
body.dark .table{
  background:#0b1320;
  color:#e5e7eb;
  border-color:#1f2937;
  --bs-table-bg:#0b1320;
  --bs-table-color:#e5e7eb;
  --bs-table-striped-bg:#0f172a;
  --bs-table-hover-bg:#111827;
  --bs-table-border-color:#1f2937;
}
body.dark .table th, body.dark .table td{border-color:#1f2937;background:transparent}
body.dark .table thead th{background:#0b1220;color:#cbd5e1}
body.dark .table-striped>tbody>tr:nth-of-type(odd){background-color:#0f172a;color:#e5e7eb}
body.dark .table-hover>tbody>tr:hover{background-color:#111827}
body.dark .table-responsive{background:transparent}
body.dark .alert-warning{background:#1f2937;border-color:#334155;color:#fcd34d}
body.dark .nav-tabs .nav-link{color:#e5e7eb}
body.dark .nav-tabs .nav-link:hover{border-color:#334155 #334155 #0b1220}
/* Admin dark container */
.admin-box{background:#fff;border:1px solid var(--border);border-radius:10px}
body.dark .admin-box{background:#0b1220;border-color:#1f2937}
/* Lighten helper text in dark mode slightly more */
body.dark .form-text, body.dark .text-muted{color:#b6c2d1 !important}
/* Dark mode: footer */
body.dark footer.bg-light{background:#0b1220 !important;border-top-color:#1f2937}
body.dark footer .text-muted{color:#94a3b8 !important}
body.dark .link-dark{color:#cbd5e1 !important}
body.dark .link-dark:hover{text-decoration:underline;color:#e5e7eb !important}
/* Dark mode: dashboard canvas */
body.dark canvas#chart{background:#0b1220 !important;border-color:#1f2937 !important}
