/* Admin panel layout improvements */
:root{
  --admin-gap: 1rem;
}

.admin-container{ margin-top: .5rem; }
.admin-container{ color: var(--tarot-text); }
.admin-stats{ display:grid; grid-template-columns: repeat(4, minmax(180px, 1fr)); gap: var(--admin-gap); margin-bottom: var(--admin-gap); }
@media (max-width: 992px){ .admin-stats{ grid-template-columns: repeat(2, minmax(180px, 1fr)); } }
@media (max-width: 576px){ .admin-stats{ grid-template-columns: 1fr; } }
.stat-card{ background: var(--tarot-surface); border:1px solid var(--tarot-border); border-radius:12px; padding: .8rem 1rem; }
.stat-title{ color: var(--tarot-muted); font-size:.9rem; }
.stat-value{ color: var(--tarot-text); font-size:1.4rem; font-weight:600; }

.sticky-toolbar{ position: sticky; top: 64px; z-index: 2; background: rgba(22,22,24,.85); color: var(--tarot-text); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border:1px solid var(--tarot-border); border-radius: 12px; padding: .6rem; }

/* Admin form controls should follow the active theme (light/dark) */
.admin-container .form-control,
.admin-container .form-select{
  background: var(--tarot-surface);
  color: var(--tarot-text);
  border: 1px solid var(--tarot-border);
}
.admin-container .form-control::placeholder{ color: var(--tarot-muted); opacity: 1; }
.admin-container .form-control:focus,
.admin-container .form-select:focus{
  background: var(--tarot-surface);
  color: var(--tarot-text);
  border-color: var(--tarot-gold);
  box-shadow: 0 0 0 .2rem rgba(197,160,89,.15);
}
.admin-container .form-control:disabled,
.admin-container .form-select:disabled,
.admin-container .form-control[disabled],
.admin-container .form-select[disabled]{
  background: var(--tarot-surface);
  color: var(--tarot-muted);
  opacity: .75;
}

/* Light theme overrides for admin-only glass blocks */
[data-theme="light"] .sticky-toolbar{ background: rgba(255,255,255,.75); }

/* Ensure search/filter row inputs look correct in light theme */
[data-theme="light"] .admin-container .form-control,
[data-theme="light"] .admin-container .form-select{
  background: var(--tarot-surface);
  color: var(--tarot-text);
}

/* Admin should keep text readable: avoid extra-dim Bootstrap muted colors */
.admin-container .text-muted,
.admin-container .text-secondary,
.admin-container .text-body-secondary,
.admin-container .text-body-tertiary{
  color: var(--tarot-text) !important;
}
.admin-container small,
.admin-container .small{ color: inherit; }

/* Tables: force Bootstrap table colors to follow tarot theme vars */
.admin-container .table{
  --bs-table-bg: var(--tarot-surface);
  --bs-table-color: var(--tarot-text);
  --bs-table-border-color: var(--tarot-border);
  /* default (dark theme) */
  --bs-table-striped-bg: rgba(255,255,255,.03);
  --bs-table-hover-bg: rgba(255,255,255,.05);
}
.admin-container .table thead{ color: var(--tarot-text); }
.admin-container .table tbody tr{ border-color: var(--tarot-border); }

/* Pagination: keep classic admin look in dark theme */
.admin-container .pagination .page-link{
  background: var(--tarot-surface);
  color: var(--tarot-text);
  border-color: var(--tarot-border);
}
.admin-container .pagination .page-link:hover{
  background: rgba(255,255,255,.05);
  border-color: var(--tarot-border);
  color: var(--tarot-text);
}
.admin-container .pagination .page-link:focus{
  box-shadow: 0 0 0 .2rem rgba(197,160,89,.15);
}
.admin-container .pagination .page-item.active .page-link{
  background: rgba(255,255,255,.08);
  border-color: var(--tarot-border);
  color: var(--tarot-text);
}
.admin-container .pagination .page-item.disabled .page-link{
  background: var(--tarot-surface);
  border-color: var(--tarot-border);
  color: var(--tarot-muted);
  opacity: .6;
}

/* Light theme tuning for pagination hover/active */
[data-theme="light"] .admin-container .pagination .page-link:hover{ background: rgba(0,0,0,.03); }
[data-theme="light"] .admin-container .pagination .page-item.active .page-link{ background: rgba(0,0,0,.05); }

/* If a table sits inside a responsive wrapper, keep the wrapper in-tone too */
.admin-container .table-responsive{
  background: var(--tarot-surface);
}

/* Light theme tuning for striping/hover (subtle dark-on-light) */
[data-theme="light"] .admin-container .table{
  --bs-table-striped-bg: rgba(0,0,0,.02);
  --bs-table-hover-bg: rgba(0,0,0,.03);
}

.table-sm th, .table-sm td{ padding: .4rem .6rem; }
.table thead th{ font-weight:600; }

.role-badge{ display:inline-block; border:1px solid var(--tarot-border); border-radius: 999px; padding:.2rem .5rem; font-size:.8rem; color: var(--tarot-muted); }
.role-badge.role-client{ color:#b58cff; border-color: rgba(181,140,255,.35); }
.role-badge.role-tarot{ color: var(--tarot-gold); border-color: rgba(197,160,89,.35); }
.role-badge.role-admin{ color:#86d3b3; border-color: rgba(134,211,179,.35); }

.card .card-header{ border-bottom: 1px solid var(--tarot-border); }
.card .card-footer{ border-top: 1px solid var(--tarot-border); }
