/* ═══════════════════════════════════════════════
   ALOO PANEL — Dynamic Theme (dark + light)
   Uses CSS custom properties from theme-vars.blade.php
   Triggered by: body.panel-dark  OR  html[data-theme-mode="dark"]
   ═══════════════════════════════════════════════ */

/* ─── Brand / accent overrides ─── */
.btn-primary,
.btn-success {
    background-color: var(--theme-primary) !important;
    border-color: var(--theme-primary) !important;
    color: var(--theme-on-primary) !important;
}
.btn-primary:hover,
.btn-primary:focus,
.btn-success:hover,
.btn-success:focus {
    background-color: var(--theme-secondary) !important;
    border-color: var(--theme-secondary) !important;
}
.btn-outline-primary {
    color: var(--theme-primary) !important;
    border-color: var(--theme-primary) !important;
}
.btn-outline-primary:hover {
    background-color: var(--theme-primary) !important;
    color: var(--theme-on-primary) !important;
}
.text-primary   { color: var(--theme-primary) !important; }
.bg-primary     { background-color: var(--theme-primary) !important; color: var(--theme-on-primary) !important; }
.text-success   { color: var(--theme-secondary) !important; }
.text-warning   { color: var(--theme-accent) !important; }
.text-danger    { color: var(--theme-error) !important; }
a               { color: var(--theme-primary); }
a:hover         { color: var(--theme-secondary); }
.badge.bg-primary,
.badge-primary  { background-color: var(--theme-primary) !important; color: var(--theme-on-primary) !important; }
.form-control:focus,
.form-select:focus {
    border-color: var(--theme-primary) !important;
    box-shadow: 0 0 0 .2rem rgba(var(--theme-primary-rgb),.2) !important;
}
.form-check-input:checked {
    background-color: var(--theme-primary) !important;
    border-color: var(--theme-primary) !important;
}
.page-item.active .page-link {
    background-color: var(--theme-primary) !important;
    border-color: var(--theme-primary) !important;
    color: var(--theme-on-primary) !important;
}
.page-link      { color: var(--theme-primary); }
.progress-bar   { background-color: var(--theme-primary) !important; }

/* ─── Dark mode variables ─── */
body.panel-dark,
html[data-theme-mode="dark"] body {
    --dk-bg:         #0d1117;
    --dk-surface:    #161b22;
    --dk-card:       #1c2230;
    --dk-border:     rgba(255,255,255,.09);
    --dk-text:       #e6edf3;
    --dk-text-muted: #8b949e;
    --dk-text-faint: #6e7681;
    --dk-input-bg:   #0d1117;
    --dk-hover:      rgba(255,255,255,.05);
}

/* ─── BODY / LAYOUT ─── */
body.panel-dark,
html[data-theme-mode="dark"] body {
    background-color: var(--dk-bg) !important;
    color: var(--dk-text) !important;
}
body.panel-dark .wrapper,
body.panel-dark .main,
body.panel-dark .content,
html[data-theme-mode="dark"] .wrapper,
html[data-theme-mode="dark"] .main,
html[data-theme-mode="dark"] .content {
    background-color: var(--dk-bg) !important;
    color: var(--dk-text) !important;
}

/* ─── NAVBAR ─── */
body.panel-dark .navbar.navbar-bg,
body.panel-dark .navbar,
html[data-theme-mode="dark"] .navbar.navbar-bg,
html[data-theme-mode="dark"] .navbar {
    background-color: var(--dk-surface) !important;
    border-bottom-color: var(--dk-border) !important;
    color: var(--dk-text) !important;
}
body.panel-dark .navbar .nav-link,
html[data-theme-mode="dark"] .navbar .nav-link {
    color: var(--dk-text-muted) !important;
}
body.panel-dark .navbar .nav-link:hover,
html[data-theme-mode="dark"] .navbar .nav-link:hover {
    color: var(--dk-text) !important;
}
body.panel-dark .navbar-page-title__text,
html[data-theme-mode="dark"] .navbar-page-title__text {
    color: var(--dk-text) !important;
}

/* ─── SIDEBAR ─── */
body.panel-dark .aloo-sidebar.sidebar,
body.panel-dark #sidebar,
body.panel-dark .js-sidebar,
body.panel-dark .sidebar-content,
html[data-theme-mode="dark"] .aloo-sidebar.sidebar {
    background: var(--dk-surface) !important;
    border-right-color: var(--dk-border) !important;
}
body.panel-dark .aloo-brand,
html[data-theme-mode="dark"] .aloo-brand {
    border-bottom-color: var(--dk-border) !important;
}
body.panel-dark .aloo-nav-group span,
html[data-theme-mode="dark"] .aloo-nav-group span {
    color: var(--dk-text-faint) !important;
}
body.panel-dark .aloo-nav-link,
html[data-theme-mode="dark"] .aloo-nav-link {
    color: var(--dk-text-muted) !important;
}
body.panel-dark .aloo-nav-link:hover,
html[data-theme-mode="dark"] .aloo-nav-link:hover {
    background: var(--dk-hover) !important;
    color: var(--dk-text) !important;
}
body.panel-dark .aloo-nav-link.active,
html[data-theme-mode="dark"] .aloo-nav-link.active {
    background: var(--theme-primary) !important;
    color: #fff !important;
}
body.panel-dark .aloo-nav-icon-wrap,
html[data-theme-mode="dark"] .aloo-nav-icon-wrap {
    background: rgba(255,255,255,.06) !important;
    border-color: var(--dk-border) !important;
}
body.panel-dark .aloo-nav-link.active .aloo-nav-icon-wrap,
html[data-theme-mode="dark"] .aloo-nav-link.active .aloo-nav-icon-wrap {
    background: rgba(255,255,255,.2) !important;
    border-color: transparent !important;
}
body.panel-dark .aloo-nav-icon,
html[data-theme-mode="dark"] .aloo-nav-icon {
    filter: brightness(0) invert(.8) !important;
    opacity: .9 !important;
}
body.panel-dark .aloo-admin-footer,
html[data-theme-mode="dark"] .aloo-admin-footer {
    background: var(--dk-surface) !important;
    border-top-color: var(--dk-border) !important;
}
body.panel-dark .aloo-admin-name,
html[data-theme-mode="dark"] .aloo-admin-name {
    color: var(--dk-text) !important;
}
body.panel-dark .aloo-admin-role,
html[data-theme-mode="dark"] .aloo-admin-role {
    color: var(--dk-text-faint) !important;
}

/* ─── CARDS ─── */
body.panel-dark .card,
html[data-theme-mode="dark"] .card {
    background: var(--dk-card) !important;
    border-color: var(--dk-border) !important;
    color: var(--dk-text) !important;
    box-shadow: 0 1px 3px rgba(0,0,0,.3) !important;
}
body.panel-dark .card-header,
html[data-theme-mode="dark"] .card-header {
    background: transparent !important;
    border-bottom-color: var(--dk-border) !important;
    color: var(--dk-text) !important;
}
body.panel-dark .card-footer,
html[data-theme-mode="dark"] .card-footer {
    background: transparent !important;
    border-top-color: var(--dk-border) !important;
}

/* ─── TABLES ─── */
body.panel-dark .table,
html[data-theme-mode="dark"] .table {
    color: var(--dk-text) !important;
    border-color: var(--dk-border) !important;
}
body.panel-dark .table thead th,
body.panel-dark .table-light,
html[data-theme-mode="dark"] .table thead th,
html[data-theme-mode="dark"] .table-light {
    background-color: var(--dk-bg) !important;
    color: var(--dk-text-muted) !important;
    border-color: var(--dk-border) !important;
}
body.panel-dark .table > :not(caption) > * > *,
html[data-theme-mode="dark"] .table > :not(caption) > * > * {
    background-color: var(--dk-card) !important;
    border-bottom-color: var(--dk-border) !important;
    color: var(--dk-text) !important;
}
body.panel-dark .table-hover > tbody > tr:hover > *,
html[data-theme-mode="dark"] .table-hover > tbody > tr:hover > * {
    background-color: var(--dk-hover) !important;
}

/* ─── FORMS ─── */
body.panel-dark .form-control,
body.panel-dark .form-select,
body.panel-dark .input-group-text,
html[data-theme-mode="dark"] .form-control,
html[data-theme-mode="dark"] .form-select,
html[data-theme-mode="dark"] .input-group-text {
    background-color: var(--dk-input-bg) !important;
    border-color: var(--dk-border) !important;
    color: var(--dk-text) !important;
}
body.panel-dark .form-control:focus,
body.panel-dark .form-select:focus,
html[data-theme-mode="dark"] .form-control:focus,
html[data-theme-mode="dark"] .form-select:focus {
    background-color: var(--dk-surface) !important;
    border-color: var(--theme-primary) !important;
}
body.panel-dark .form-control::placeholder,
html[data-theme-mode="dark"] .form-control::placeholder {
    color: var(--dk-text-faint) !important;
}

/* ─── TYPOGRAPHY ─── */
body.panel-dark h1, body.panel-dark h2, body.panel-dark h3,
body.panel-dark h4, body.panel-dark h5, body.panel-dark h6,
body.panel-dark .fw-bold, body.panel-dark .fw-semibold,
html[data-theme-mode="dark"] h1, html[data-theme-mode="dark"] h2,
html[data-theme-mode="dark"] h3, html[data-theme-mode="dark"] h4,
html[data-theme-mode="dark"] h5, html[data-theme-mode="dark"] h6 {
    color: var(--dk-text) !important;
}
body.panel-dark .text-muted,
html[data-theme-mode="dark"] .text-muted {
    color: var(--dk-text-muted) !important;
}
body.panel-dark .text-dark,
html[data-theme-mode="dark"] .text-dark {
    color: var(--dk-text) !important;
}
body.panel-dark small,
html[data-theme-mode="dark"] small {
    color: var(--dk-text-faint) !important;
}

/* ─── BADGES ─── */
body.panel-dark .badge.bg-secondary,
html[data-theme-mode="dark"] .badge.bg-secondary {
    background-color: rgba(255,255,255,.12) !important;
    color: var(--dk-text) !important;
}
body.panel-dark .badge.bg-light,
html[data-theme-mode="dark"] .badge.bg-light {
    background-color: rgba(255,255,255,.1) !important;
    color: var(--dk-text) !important;
}

/* ─── MODALS ─── */
body.panel-dark .modal-content,
html[data-theme-mode="dark"] .modal-content {
    background-color: var(--dk-card) !important;
    border-color: var(--dk-border) !important;
    color: var(--dk-text) !important;
}
body.panel-dark .modal-header,
html[data-theme-mode="dark"] .modal-header {
    border-bottom-color: var(--dk-border) !important;
}
body.panel-dark .modal-footer,
html[data-theme-mode="dark"] .modal-footer {
    background-color: var(--dk-bg) !important;
    border-top-color: var(--dk-border) !important;
}

/* ─── DROPDOWNS ─── */
body.panel-dark .dropdown-menu,
html[data-theme-mode="dark"] .dropdown-menu {
    background-color: var(--dk-card) !important;
    border-color: var(--dk-border) !important;
    box-shadow: 0 8px 24px rgba(0,0,0,.4) !important;
}
body.panel-dark .dropdown-item,
html[data-theme-mode="dark"] .dropdown-item {
    color: var(--dk-text) !important;
}
body.panel-dark .dropdown-item:hover,
html[data-theme-mode="dark"] .dropdown-item:hover {
    background-color: var(--dk-hover) !important;
    color: var(--dk-text) !important;
}
body.panel-dark .dropdown-divider,
html[data-theme-mode="dark"] .dropdown-divider {
    border-color: var(--dk-border) !important;
}

/* ─── ALERTS ─── */
body.panel-dark .alert,
html[data-theme-mode="dark"] .alert {
    border-color: var(--dk-border) !important;
}
body.panel-dark .alert-success,
html[data-theme-mode="dark"] .alert-success {
    background-color: rgba(16,185,129,.12) !important;
    color: #6ee7b7 !important;
}
body.panel-dark .alert-danger,
html[data-theme-mode="dark"] .alert-danger {
    background-color: rgba(239,68,68,.12) !important;
    color: #fca5a5 !important;
}

/* ─── BREADCRUMB ─── */
body.panel-dark .aloo-breadcrumb,
html[data-theme-mode="dark"] .aloo-breadcrumb {
    background: transparent !important;
    border-bottom-color: var(--dk-border) !important;
}
body.panel-dark .breadcrumb-item,
body.panel-dark .breadcrumb-item.active,
html[data-theme-mode="dark"] .breadcrumb-item,
html[data-theme-mode="dark"] .breadcrumb-item.active {
    color: var(--dk-text-muted) !important;
}
body.panel-dark .breadcrumb-item a,
html[data-theme-mode="dark"] .breadcrumb-item a {
    color: var(--dk-text-muted) !important;
}

/* ─── SETTINGS PANEL ─── */
body.panel-dark .sp-card,
html[data-theme-mode="dark"] .sp-card {
    background: var(--dk-card) !important;
    border-color: var(--dk-border) !important;
}
body.panel-dark .sp-input,
html[data-theme-mode="dark"] .sp-input {
    background: var(--dk-input-bg) !important;
    border-color: var(--dk-border) !important;
    color: var(--dk-text) !important;
}
body.panel-dark .sp-tab-nav,
html[data-theme-mode="dark"] .sp-tab-nav {
    background: var(--dk-surface) !important;
    border-bottom-color: var(--dk-border) !important;
}
body.panel-dark .sp-tab,
html[data-theme-mode="dark"] .sp-tab {
    color: var(--dk-text-muted) !important;
}
body.panel-dark .sp-tab.active,
html[data-theme-mode="dark"] .sp-tab.active {
    background: var(--theme-primary) !important;
    color: var(--theme-on-primary) !important;
    border-color: var(--theme-primary) !important;
}
body.panel-dark .sp-label,
html[data-theme-mode="dark"] .sp-label {
    color: var(--dk-text-muted) !important;
}
body.panel-dark .sp-card-title,
html[data-theme-mode="dark"] .sp-card-title {
    color: var(--dk-text) !important;
}
body.panel-dark .sp-info-banner,
html[data-theme-mode="dark"] .sp-info-banner {
    background: rgba(255,255,255,.05) !important;
    border-color: var(--dk-border) !important;
    color: var(--dk-text-muted) !important;
}
body.panel-dark .sp-toggle-row,
html[data-theme-mode="dark"] .sp-toggle-row {
    border-bottom-color: var(--dk-border) !important;
}
body.panel-dark .sp-tl,
html[data-theme-mode="dark"] .sp-tl {
    color: var(--dk-text) !important;
}
body.panel-dark .sp-td,
html[data-theme-mode="dark"] .sp-td {
    color: var(--dk-text-faint) !important;
}
body.panel-dark .sp-logo-box,
html[data-theme-mode="dark"] .sp-logo-box {
    background: var(--dk-surface) !important;
    border-color: var(--dk-border) !important;
}
body.panel-dark .sp-ltab,
body.panel-dark .sp-eye,
html[data-theme-mode="dark"] .sp-ltab,
html[data-theme-mode="dark"] .sp-eye {
    background: var(--dk-input-bg) !important;
    border-color: var(--dk-border) !important;
    color: var(--dk-text-muted) !important;
}
body.panel-dark .sp-ltab.active,
html[data-theme-mode="dark"] .sp-ltab.active {
    background: rgba(var(--theme-primary-rgb), .16) !important;
    border-color: var(--theme-primary) !important;
    color: var(--theme-primary) !important;
}

/* ─── DASHBOARD STATS ─── */
body.panel-dark .stat-card,
html[data-theme-mode="dark"] .stat-card {
    background: var(--dk-card) !important;
    border-color: var(--dk-border) !important;
}
body.panel-dark .stat-label,
html[data-theme-mode="dark"] .stat-label {
    color: var(--dk-text-faint) !important;
}
body.panel-dark .stat-value,
html[data-theme-mode="dark"] .stat-value {
    color: var(--dk-text) !important;
}
body.panel-dark .dash-card,
html[data-theme-mode="dark"] .dash-card {
    background: var(--dk-card) !important;
    border-color: var(--dk-border) !important;
}
body.panel-dark .dash-card-title,
html[data-theme-mode="dark"] .dash-card-title {
    color: var(--dk-text) !important;
}
body.panel-dark .aloo-stat-card,
html[data-theme-mode="dark"] .aloo-stat-card {
    background: var(--dk-card) !important;
    border-color: var(--dk-border) !important;
}
body.panel-dark .aloo-stat-val,
html[data-theme-mode="dark"] .aloo-stat-val {
    color: var(--dk-text) !important;
}
body.panel-dark .aloo-stat-lbl,
html[data-theme-mode="dark"] .aloo-stat-lbl {
    color: var(--dk-text-faint) !important;
}

/* ─── PAGINATION ─── */
body.panel-dark .page-link,
html[data-theme-mode="dark"] .page-link {
    background-color: var(--dk-card) !important;
    border-color: var(--dk-border) !important;
    color: var(--dk-text-muted) !important;
}
body.panel-dark .page-link:hover,
html[data-theme-mode="dark"] .page-link:hover {
    background-color: var(--dk-hover) !important;
    color: var(--dk-text) !important;
}

/* ─── BUTTONS dark variants ─── */
body.panel-dark .btn-outline-secondary,
html[data-theme-mode="dark"] .btn-outline-secondary {
    color: var(--dk-text-muted) !important;
    border-color: var(--dk-border) !important;
}
body.panel-dark .btn-outline-secondary:hover,
html[data-theme-mode="dark"] .btn-outline-secondary:hover {
    background-color: var(--dk-hover) !important;
    color: var(--dk-text) !important;
}
body.panel-dark .btn-light,
html[data-theme-mode="dark"] .btn-light {
    background-color: var(--dk-surface) !important;
    border-color: var(--dk-border) !important;
    color: var(--dk-text) !important;
}

/* ─── LIST GROUPS ─── */
body.panel-dark .list-group-item,
html[data-theme-mode="dark"] .list-group-item {
    background-color: var(--dk-card) !important;
    border-color: var(--dk-border) !important;
    color: var(--dk-text) !important;
}
body.panel-dark .list-group-item:hover,
html[data-theme-mode="dark"] .list-group-item:hover {
    background-color: var(--dk-hover) !important;
}

/* ─── BORDERS / DIVIDERS ─── */
body.panel-dark hr,
body.panel-dark .border,
body.panel-dark .border-top,
body.panel-dark .border-bottom,
body.panel-dark .border-start,
body.panel-dark .border-end,
html[data-theme-mode="dark"] hr,
html[data-theme-mode="dark"] .border {
    border-color: var(--dk-border) !important;
}

/* ─── CODE ─── */
body.panel-dark code,
html[data-theme-mode="dark"] code {
    background: rgba(255,255,255,.08) !important;
    color: #7dd3fc !important;
    border-radius: 4px;
    padding: 1px 5px;
}

/* ─── ALOO FLASH TOAST ─── */
body.panel-dark .aloo-flash {
    background: #1c2230 !important;
    border-color: rgba(255,255,255,.08) !important;
}
