/**
 * Kizmio Unified Custom Plugins Dark Mode Design System
 * 
 * Provides consistent, semantic variables and automated dark-mode surface adaptation
 * across all custom plugins under content/plugins/.
 * 
 * Activates ONLY when Kizmio dark mode is active:
 * body.night-mode, .kizmiotheme.night-mode, .night-mode, [data-bs-theme="dark"]
 */

/* -------------------------------------------------------------------------- */
/* 1. Semantic Design Tokens                                                  */
/* -------------------------------------------------------------------------- */
:root {
  --kz-plugin-page-bg: var(--kzm-bg, #f8f9fa);
  --kz-plugin-surface: var(--kzm-surface, #ffffff);
  --kz-plugin-surface-2: var(--kzm-surface-soft, #f1f4f6);
  --kz-plugin-surface-hover: #e2e8f0;
  --kz-plugin-input-bg: #ffffff;
  --kz-plugin-border: var(--kzm-border, #eceef1);
  --kz-plugin-border-subtle: var(--kzm-border-light, #f1f3f5);
  --kz-plugin-text: var(--kzm-text, #0f172a);
  --kz-plugin-text-muted: var(--kzm-muted, #64748b);
  --kz-plugin-shadow: var(--kzm-shadow, 0 2px 14px rgba(15, 23, 42, 0.04));
  --kz-plugin-shadow-raised: var(--kzm-shadow-raised, 0 10px 30px rgba(15, 23, 42, 0.08));
}

body.night-mode,
.kizmiotheme.night-mode,
.night-mode,
body[data-bs-theme="dark"] {
  --kz-plugin-page-bg: #0f172a;
  --kz-plugin-surface: #1e293b;
  --kz-plugin-surface-2: #263346;
  --kz-plugin-surface-hover: #2d3d54;
  --kz-plugin-input-bg: #161f2e;
  --kz-plugin-border: #334155;
  --kz-plugin-border-subtle: rgba(255, 255, 255, 0.08);
  --kz-plugin-text: #f8fafc;
  --kz-plugin-text-muted: #94a3b8;
  --kz-plugin-shadow: 0 4px 20px rgba(0, 0, 0, 0.35);
  --kz-plugin-shadow-raised: 0 12px 36px rgba(0, 0, 0, 0.5);
}

/* -------------------------------------------------------------------------- */
/* 2. Global Surface & Component Adaptation in Night Mode                      */
/* -------------------------------------------------------------------------- */

/* Standard Bootstrap surface overrides within night-mode */
body.night-mode .card,
body.night-mode .kpl-card,
body.night-mode .card-body,
body.night-mode .card-header,
body.night-mode .card-footer {
  border-color: var(--kz-plugin-border) !important;
}

body.night-mode .card:not([class*="bg-primary"]):not([class*="bg-danger"]):not([class*="bg-success"]):not([class*="bg-warning"]):not([class*="bg-info"]),
body.night-mode .kpl-card {
  background-color: var(--kz-plugin-surface) !important;
  color: var(--kz-plugin-text) !important;
}

body.night-mode .card-header.bg-white,
body.night-mode .card-footer.bg-white,
body.night-mode .card.bg-white,
body.night-mode .card-body.bg-white {
  background-color: var(--kz-plugin-surface) !important;
  color: var(--kz-plugin-text) !important;
}

body.night-mode .bg-light {
  background-color: var(--kz-plugin-surface-2) !important;
  color: var(--kz-plugin-text) !important;
}

body.night-mode .border-light {
  border-color: var(--kz-plugin-border) !important;
}

body.night-mode .alert-warning {
  background-color: rgba(245, 158, 11, 0.15) !important;
  color: #fbbf24 !important;
  border-color: rgba(245, 158, 11, 0.3) !important;
}

body.night-mode .alert-warning .alert-heading {
  color: #fbbf24 !important;
}

body.night-mode .alert-info {
  background-color: rgba(14, 165, 233, 0.15) !important;
  color: #38bdf8 !important;
  border-color: rgba(14, 165, 233, 0.3) !important;
}

body.night-mode .alert-info .alert-heading {
  color: #38bdf8 !important;
}

body.night-mode .alert-danger {
  background-color: rgba(239, 68, 68, 0.15) !important;
  color: #f87171 !important;
  border-color: rgba(239, 68, 68, 0.3) !important;
}

body.night-mode .alert-success {
  background-color: rgba(34, 197, 94, 0.15) !important;
  color: #4ade80 !important;
  border-color: rgba(34, 197, 94, 0.3) !important;
}

body.night-mode .text-dark {
  color: var(--kz-plugin-text) !important;
}

body.night-mode .text-muted,
body.night-mode .text-secondary {
  color: var(--kz-plugin-text-muted) !important;
}

/* -------------------------------------------------------------------------- */
/* 3. Universal Plugin Sidebars & Offcanvas Drawers                            */
/* -------------------------------------------------------------------------- */
body.night-mode .sg-offcanvas-sidebar,
body.night-mode .places-detail-sidebar,
body.night-mode .places-sidebar-v2,
body.night-mode .classifieds-detail-sidebar,
body.night-mode .classifieds-sidebar-v2,
body.night-mode .stores-sidebar,
body.night-mode .wio-sidebar,
body.night-mode .foodorder-sidebar,
body.night-mode .hotelrooms-sidebar,
body.night-mode .homestay-sidebar,
body.night-mode .services-detail-sidebar,
body.night-mode .travel-room-sidebar,
body.night-mode .tp-detail-sidebar,
body.night-mode .country-directory-sidebar,
body.night-mode .country-directory-filter,
body.night-mode .bd-sidebar,
body.night-mode .prayer-sidebar,
body.night-mode .jm-cv-sidebar-card,
body.night-mode .vr-shell .sg-offcanvas-sidebar,
body.night-mode .kzm-wishlist-unified-sidebar {
  background: var(--kz-plugin-surface) !important;
  border-color: var(--kz-plugin-border) !important;
  color: var(--kz-plugin-text) !important;
  box-shadow: var(--kz-plugin-shadow) !important;
}

body.night-mode .places-detail-sidebar__identity,
body.night-mode .places-sidebar-v2__heading,
body.night-mode .wio-side-head,
body.night-mode .kzm-wishlist-sidebar-identity {
  background: var(--kz-plugin-surface) !important;
  border-color: var(--kz-plugin-border) !important;
}

body.night-mode .places-detail-sidebar__identity h2,
body.night-mode .places-sidebar-v2__heading h2,
body.night-mode .wio-side-head h2,
body.night-mode .kzm-wishlist-sidebar-identity h2 {
  color: var(--kz-plugin-text) !important;
}

body.night-mode .places-sidebar-v2__section,
body.night-mode .wio-filter,
body.night-mode .wio-quick {
  border-color: var(--kz-plugin-border) !important;
}

body.night-mode .places-sidebar-v2__section h3,
body.night-mode .wio-filter legend,
body.night-mode .wio-quick h3,
body.night-mode .kzm-wishlist-sidebar-heading span {
  color: var(--kz-plugin-text-muted) !important;
}

body.night-mode .places-category-strip__head--sidebar h3,
body.night-mode .kzm-wishlist-sidebar-heading h3 {
  color: var(--kz-plugin-text) !important;
}

/* -------------------------------------------------------------------------- */
/* 4. Sidebar Category Pills Across All Plugins                                */
/* -------------------------------------------------------------------------- */
body.night-mode .places-category-pill--sidebar,
body.night-mode .kzm-wishlist-sidebar-pill,
body.night-mode .kzm-travelplanner-sidebar-pill,
body.night-mode .kzm-fitness-sidebar-pill {
  background: var(--kz-plugin-surface-2) !important;
  border-color: var(--kz-plugin-border) !important;
  color: var(--kz-plugin-text) !important;
}

body.night-mode .places-category-pill--sidebar strong,
body.night-mode .kzm-wishlist-sidebar-pill strong {
  color: var(--kz-plugin-text) !important;
}

body.night-mode .places-category-pill--sidebar small,
body.night-mode .kzm-wishlist-sidebar-pill small {
  color: var(--kz-plugin-text-muted) !important;
}

body.night-mode .places-category-pill--sidebar .places-category-pill__icon,
body.night-mode .kzm-wishlist-sidebar-pill__icon,
body.night-mode .kzm-travelplanner-sidebar-pill__icon,
body.night-mode .kzm-fitness-sidebar-pill__icon {
  background: var(--kz-plugin-surface) !important;
  border-color: var(--kz-plugin-border) !important;
}

body.night-mode .places-category-pill--sidebar:hover,
body.night-mode .places-category-pill--sidebar.is-active,
body.night-mode .kzm-wishlist-sidebar-pill:hover,
body.night-mode .kzm-wishlist-sidebar-pill.is-active {
  background: var(--kz-plugin-surface-hover) !important;
  border-color: var(--kzm-primary, #fa470d) !important;
  color: var(--kz-plugin-text) !important;
}

body.night-mode .wio-status-links a {
  color: var(--kz-plugin-text-muted) !important;
}

body.night-mode .wio-status-links a:hover,
body.night-mode .wio-status-links a.active {
  background: var(--kz-plugin-surface-2) !important;
  color: var(--kz-plugin-text) !important;
}

body.night-mode .wio-quick a {
  color: var(--kz-plugin-text-muted) !important;
}

body.night-mode .wio-quick a:hover {
  color: var(--kz-plugin-text) !important;
}

/* -------------------------------------------------------------------------- */
/* 5. Toolbars, Search Bars & Filter Panels                                    */
/* -------------------------------------------------------------------------- */
body.night-mode .wio-toolbar,
body.night-mode .places-toolbar,
body.night-mode .services-toolbar,
body.night-mode .recipes-toolbar,
body.night-mode .vr-toolbar,
body.night-mode .classifieds-toolbar,
body.night-mode .stores-toolbar,
body.night-mode .kzm-wishlist-filter-card,
body.night-mode .travel-tours-hero__search,
body.night-mode .hr-hero-search-box,
body.night-mode .jm-hero-search,
body.night-mode .travel-search,
body.night-mode .cl-hero-search-field,
body.night-mode .st-hero-search-field {
  background: var(--kz-plugin-surface) !important;
  border-color: var(--kz-plugin-border) !important;
  color: var(--kz-plugin-text) !important;
  box-shadow: var(--kz-plugin-shadow) !important;
}

body.night-mode .wio-toolbar select,
body.night-mode .wio-toolbar input,
body.night-mode .wio-filter select,
body.night-mode .places-discovery-form .form-select,
body.night-mode .places-discovery-form .form-control,
body.night-mode .kzm-wishlist-filter-form .form-control,
body.night-mode .kzm-wishlist-filter-form .form-select,
body.night-mode .travel-tours-hero__field .form-select,
body.night-mode .travel-tours-hero__field .form-control,
body.night-mode .hr-search-field .form-control,
body.night-mode .hr-search-field .form-select,
body.night-mode .cl-hero-search-field input,
body.night-mode .cl-hero-search-field select,
body.night-mode .st-hero-search-field input,
body.night-mode .st-hero-search-field select,
body.night-mode .bd-filter-form select,
body.night-mode .bd-donor-form select,
body.night-mode .bd-donor-form input,
body.night-mode .bd-donor-form textarea,
body.night-mode .prayer-form-grid input,
body.night-mode .prayer-form-grid select {
  background-color: var(--kz-plugin-input-bg) !important;
  color: var(--kz-plugin-text) !important;
  border-color: var(--kz-plugin-border) !important;
}

body.night-mode .wio-toolbar select:focus,
body.night-mode .wio-toolbar input:focus,
body.night-mode .places-discovery-form .form-select:focus,
body.night-mode .places-discovery-form .form-control:focus,
body.night-mode .kzm-wishlist-filter-form .form-control:focus,
body.night-mode .kzm-wishlist-filter-form .form-select:focus {
  border-color: var(--kzm-primary, #fa470d) !important;
  box-shadow: 0 0 0 3px rgba(250, 71, 13, 0.25) !important;
}

body.night-mode .kzm-wishlist-filter-clear,
body.night-mode .places-filter-reset {
  background: var(--kz-plugin-surface-2) !important;
  border-color: var(--kz-plugin-border) !important;
  color: var(--kz-plugin-text-muted) !important;
}

body.night-mode .kzm-wishlist-filter-clear:hover,
body.night-mode .places-filter-reset:hover {
  background: var(--kz-plugin-surface-hover) !important;
  color: var(--kz-plugin-text) !important;
}

/* -------------------------------------------------------------------------- */
/* 6. Form Controls, Inputs & Selects Inside Plugins                           */
/* -------------------------------------------------------------------------- */
body.night-mode .form-control,
body.night-mode .form-select,
body.night-mode input[type="text"]:not(.form-control-plaintext),
body.night-mode input[type="email"],
body.night-mode input[type="password"],
body.night-mode input[type="search"],
body.night-mode input[type="number"],
body.night-mode input[type="tel"],
body.night-mode input[type="url"],
body.night-mode input[type="date"],
body.night-mode input[type="time"],
body.night-mode input[type="datetime-local"],
body.night-mode textarea,
body.night-mode select {
  background-color: var(--kz-plugin-input-bg) !important;
  color: var(--kz-plugin-text) !important;
  border-color: var(--kz-plugin-border) !important;
}

body.night-mode .input-group-text {
  background-color: var(--kz-plugin-surface-2) !important;
  color: var(--kz-plugin-text-muted) !important;
  border-color: var(--kz-plugin-border) !important;
}

body.night-mode .form-control::placeholder,
body.night-mode input::placeholder,
body.night-mode textarea::placeholder {
  color: var(--kz-plugin-text-muted) !important;
  opacity: 0.7;
}

body.night-mode .form-check-input {
  background-color: var(--kz-plugin-input-bg);
  border-color: var(--kz-plugin-border);
}

body.night-mode .form-check-input:checked {
  background-color: var(--kzm-primary, #fa470d) !important;
  border-color: var(--kzm-primary, #fa470d) !important;
}

body.night-mode .form-check-label {
  color: var(--kz-plugin-text) !important;
}

/* -------------------------------------------------------------------------- */
/* 7. Cards, Listings & Grid Items Across All Custom Plugins                   */
/* -------------------------------------------------------------------------- */
body.night-mode .wio-card,
body.night-mode .classifieds-listing-card,
body.night-mode .classifieds-category-card,
body.night-mode .classifieds-shop-card,
body.night-mode .cl-hero-main-card,
body.night-mode .stores-product-card,
body.night-mode .stores-category-card,
body.night-mode .stores-shop-card,
body.night-mode .st-hero-main-card,
body.night-mode .fresh-product-card,
body.night-mode .fresh-category-card,
body.night-mode .fresh-shop-card,
body.night-mode .places-card-v2,
body.night-mode .place-result,
body.night-mode .service-card,
body.night-mode .job-card,
body.night-mode .sv-category-card,
body.night-mode .recipe-card,
body.night-mode .recipe-detail>article,
body.night-mode .recipes-form>section,
body.night-mode .prayer-card,
body.night-mode .prayer-panel,
body.night-mode .prayer-page-head,
body.night-mode .ramadan-times article,
body.night-mode .hr-room-card,
body.night-mode .kizmio-homestay-page .hs-place-result,
body.night-mode .vr-card,
body.night-mode .vr-panel,
body.night-mode .vr-manage-list>article,
body.night-mode .vr-order-row,
body.night-mode .vr-settings-card,
body.night-mode .vr-flipbook-filter-card,
body.night-mode .travel-card,
body.night-mode .travel-listing-card,
body.night-mode .travel-place-card,
body.night-mode .travel-tour-card,
body.night-mode .tp-card,
body.night-mode .tp-tips-card,
body.night-mode .tp-attention-card,
body.night-mode .tp-detail-content-card,
body.night-mode .tp-stat-card,
body.night-mode .bd-card,
body.night-mode .bd-panel,
body.night-mode .bd-profile-stats div,
body.night-mode .fo-card,
body.night-mode .fo-hero-main-card,
body.night-mode .fo-category-section,
body.night-mode .fo-order-summary,
body.night-mode .fo-contact-panel,
body.night-mode .fo-delivery-job-card,
body.night-mode .feedswidget-card__body,
body.night-mode .kzm-cal-detail-card,
body.night-mode .country-tourism-card,
body.night-mode .jm-cv-section-card,
body.night-mode .jm-overview-card,
body.night-mode .jm-content-card,
body.night-mode .jm-apply-card,
body.night-mode .jm-visibility-card,
body.night-mode .classifieds-dashboard-card,
body.night-mode .classifieds-stat-grid article,
body.night-mode .classifieds-dashboard__hero,
body.night-mode .classifieds-quota-card,
body.night-mode .classifieds-settings-pane,
body.night-mode .classifieds-selling-store,
body.night-mode .stores-dashboard-card,
body.night-mode .stores-stat-grid article,
body.night-mode .stores-dashboard__hero,
body.night-mode .stores-quota-card,
body.night-mode .stores-settings-pane,
body.night-mode .stores-selling-store,
body.night-mode .fresh-dashboard-card,
body.night-mode .fresh-stat-grid article,
body.night-mode .fresh-dashboard__hero,
body.night-mode .fresh-quota-card,
body.night-mode .fresh-settings-pane,
body.night-mode .fresh-selling-store,
body.night-mode .order-detail-card,
body.night-mode .store-order-detail__header,
body.night-mode .seller-orders-card {
  background: var(--kz-plugin-surface) !important;
  border-color: var(--kz-plugin-border) !important;
  color: var(--kz-plugin-text) !important;
  box-shadow: var(--kz-plugin-shadow) !important;
}

body.night-mode .classifieds-dashboard-card>header,
body.night-mode .stores-dashboard-card>header,
body.night-mode .fresh-dashboard-card>header,
body.night-mode .order-detail-card__header,
body.night-mode .order-store-address,
body.night-mode .order-delivery-type,
body.night-mode .classifieds-location-item,
body.night-mode .stores-location-item,
body.night-mode .fresh-location-item,
body.night-mode .classifieds-selling-settings__intro,
body.night-mode .stores-selling-settings__intro,
body.night-mode .fresh-selling-settings__intro,
body.night-mode .classifieds-readonly,
body.night-mode .stores-readonly,
body.night-mode .fresh-readonly {
  background: var(--kz-plugin-surface-2) !important;
  border-color: var(--kz-plugin-border) !important;
  color: var(--kz-plugin-text) !important;
}

body.night-mode .wio-card-body,
body.night-mode .classifieds-listing-card__body,
body.night-mode .stores-product-card__body,
body.night-mode .fresh-product-card__body {
  background: var(--kz-plugin-surface) !important;
  color: var(--kz-plugin-text) !important;
}

body.night-mode .wio-card h3>a,
body.night-mode .classifieds-listing-card__title,
body.night-mode .stores-product-card__title,
body.night-mode .fresh-product-card__title,
body.night-mode .place-card-title,
body.night-mode .service-card-title,
body.night-mode .job-card-title,
body.night-mode .recipe-card-title,
body.night-mode .travel-card-title,
body.night-mode .hr-card-title {
  color: var(--kz-plugin-text) !important;
}

body.night-mode .wio-avatar {
  background: linear-gradient(145deg, var(--kz-plugin-surface-2), var(--kz-plugin-surface)) !important;
}

body.night-mode .wio-online-dot {
  border-color: var(--kz-plugin-surface) !important;
}

body.night-mode .wio-handle,
body.night-mode .wio-presence,
body.night-mode .wio-meta span {
  color: var(--kz-plugin-text-muted) !important;
}

body.night-mode .wio-actions .wio-view {
  background: var(--kz-plugin-surface-2) !important;
  color: var(--kz-plugin-text) !important;
}

body.night-mode .wio-actions .wio-message {
  background: var(--kz-plugin-surface) !important;
  border-color: var(--kz-plugin-border) !important;
  color: var(--kz-plugin-text) !important;
}

/* Secondary chips and badges inside plugin cards */
body.night-mode .hr-type-pill,
body.night-mode .hr-facility-item,
body.night-mode .travel-tours-cat-chip,
body.night-mode .travel-tours-chip,
body.night-mode .travel-place-chips button,
body.night-mode .jm-meta-chip,
body.night-mode .jm-skill-chips-wrap,
body.night-mode .recipe-tips,
body.night-mode .tp-supporter-item,
body.night-mode .vr-order-data>div,
body.night-mode .js-hs-nearby-chip {
  background: var(--kz-plugin-surface-2) !important;
  border-color: var(--kz-plugin-border) !important;
  color: var(--kz-plugin-text) !important;
}

body.night-mode .hr-type-pill .hr-pill-count,
body.night-mode .travel-tours-cat-chip__count {
  background: var(--kz-plugin-surface) !important;
  color: var(--kz-plugin-text-muted) !important;
}

body.night-mode .feedswidget-card__action {
  background: var(--kz-plugin-surface) !important;
  border-color: var(--kz-plugin-border) !important;
}

body.night-mode .feedswidget-cta-btn,
body.night-mode .feedswidget-floating-arrow {
  background: var(--kz-plugin-surface-2) !important;
  border-color: var(--kz-plugin-border) !important;
  color: var(--kz-plugin-text) !important;
}

/* -------------------------------------------------------------------------- */
/* 8. Tables, Zebra Rows & Headers in Night Mode                              */
/* -------------------------------------------------------------------------- */
body.night-mode .table,
body.night-mode .table > :not(caption) > * > *,
body.night-mode .table-responsive,
body.night-mode .prayer-calendar-table table,
body.night-mode .tt-category-table,
body.night-mode .dashboard-table {
  background-color: var(--kz-plugin-surface) !important;
  color: var(--kz-plugin-text) !important;
  border-color: var(--kz-plugin-border) !important;
}

body.night-mode .table-striped > tbody > tr:nth-of-type(odd) > *,
body.night-mode .table-hover > tbody > tr:hover > * {
  background-color: var(--kz-plugin-surface-2) !important;
  color: var(--kz-plugin-text) !important;
}

body.night-mode .table thead th {
  background-color: var(--kz-plugin-surface-2) !important;
  color: var(--kz-plugin-text) !important;
  border-color: var(--kz-plugin-border) !important;
}

/* -------------------------------------------------------------------------- */
/* 9. Modals, Dropdowns & Overlays                                            */
/* -------------------------------------------------------------------------- */
body.night-mode .modal-content {
  background-color: var(--kz-plugin-surface) !important;
  border-color: var(--kz-plugin-border) !important;
  color: var(--kz-plugin-text) !important;
  box-shadow: var(--kz-plugin-shadow-raised) !important;
}

body.night-mode .modal-header,
body.night-mode .modal-footer {
  background-color: var(--kz-plugin-surface) !important;
  border-color: var(--kz-plugin-border) !important;
}

body.night-mode .modal-title {
  color: var(--kz-plugin-text) !important;
}

body.night-mode .dropdown-menu {
  background-color: var(--kz-plugin-surface) !important;
  border-color: var(--kz-plugin-border) !important;
  color: var(--kz-plugin-text) !important;
  box-shadow: var(--kz-plugin-shadow-raised) !important;
}

body.night-mode .dropdown-item {
  color: var(--kz-plugin-text) !important;
}

body.night-mode .dropdown-item:hover,
body.night-mode .dropdown-item:focus {
  background-color: var(--kz-plugin-surface-hover) !important;
  color: var(--kz-plugin-text) !important;
}

body.night-mode .dropdown-divider {
  border-color: var(--kz-plugin-border) !important;
}

body.night-mode .btn-prev-bank,
body.night-mode .btn-next-bank {
  background: var(--kz-plugin-surface) !important;
  border-color: var(--kz-plugin-border) !important;
  color: var(--kz-plugin-text) !important;
}

/* -------------------------------------------------------------------------- */
/* 10. Empty States, Badges & Pagination                                      */
/* -------------------------------------------------------------------------- */
body.night-mode .wio-empty,
body.night-mode .classifieds-empty-state,
body.night-mode .fresh-empty-state,
body.night-mode .stores-empty-state,
body.night-mode .places-empty-v2,
body.night-mode .bd-empty,
body.night-mode .prayer-empty,
body.night-mode .travel-empty,
body.night-mode .vr-empty {
  background: var(--kz-plugin-surface) !important;
  border-color: var(--kz-plugin-border) !important;
  color: var(--kz-plugin-text) !important;
}

body.night-mode .wio-pagination a,
body.night-mode .recipes-pagination a,
body.night-mode .bd-pagination a,
body.night-mode .vr-pages a,
body.night-mode .services-pages a {
  background: var(--kz-plugin-surface) !important;
  border-color: var(--kz-plugin-border) !important;
  color: var(--kz-plugin-text) !important;
}

body.night-mode .wio-pagination a:hover,
body.night-mode .recipes-pagination a:hover,
body.night-mode .bd-pagination a:hover,
body.night-mode .vr-pages a:hover,
body.night-mode .services-pages a:hover {
  background: var(--kz-plugin-surface-hover) !important;
  color: var(--kz-plugin-text) !important;
}

body.night-mode .wio-filter-trigger,
body.night-mode .wio-close,
body.night-mode .travel-tours-mobile-filter-btn,
body.night-mode .places-mobile-filter,
body.night-mode .vr-mobile-filter,
body.night-mode .bd-filter-toggle,
body.night-mode .bd-filter-close,
body.night-mode .directpayments-mobile-sidebar-trigger {
  background: var(--kz-plugin-surface) !important;
  border-color: var(--kz-plugin-border) !important;
  color: var(--kz-plugin-text) !important;
}

body.night-mode .hr-card-badge-quote {
  background: var(--kz-plugin-surface) !important;
  border-color: var(--kz-plugin-border) !important;
  color: var(--kz-plugin-text) !important;
}

body.night-mode .badge.bg-light {
  background-color: var(--kz-plugin-surface-2) !important;
  color: var(--kz-plugin-text) !important;
  border-color: var(--kz-plugin-border) !important;
}

body.night-mode .badge.bg-white {
  background-color: var(--kz-plugin-surface) !important;
  color: var(--kz-plugin-text) !important;
}

body.night-mode .kizmio-place-logo,
body.night-mode .kizmio-shop-logo,
body.night-mode .classifieds-shop-avatar,
body.night-mode .fresh-shop-avatar,
body.night-mode .stores-shop-avatar {
  background: var(--kz-plugin-surface) !important;
  border-color: var(--kz-plugin-border) !important;
}

/* -------------------------------------------------------------------------- */
/* 11. Custom Checkboxes, Radios, Separators & Breadcrumbs                    */
/* -------------------------------------------------------------------------- */
body.night-mode hr,
body.night-mode .kzm-divider {
  border-color: var(--kz-plugin-border) !important;
  opacity: 0.5;
}

body.night-mode .breadcrumb-item,
body.night-mode .breadcrumb-item a {
  color: var(--kz-plugin-text-muted) !important;
}

body.night-mode .breadcrumb-item.active {
  color: var(--kz-plugin-text) !important;
}

body.night-mode .kzm-wishlist-filter-switch {
  border-color: var(--kz-plugin-border) !important;
}

body.night-mode .kzm-wishlist-filter-switch .form-check-label {
  color: var(--kz-plugin-text) !important;
}

body.night-mode .kzm-wishlist-filter-switch .form-check-label i {
  color: var(--kz-plugin-text-muted) !important;
}

/* -------------------------------------------------------------------------- */
/* 12. Homepage Newsfeed, Sidebar & Universal Cards                           */
/* -------------------------------------------------------------------------- */
body.night-mode .main-side-nav-card,
body.night-mode .kizmio-home-sidebar {
  background: var(--kz-plugin-surface, #1e293b) !important;
  border-color: var(--kz-plugin-border, #334155) !important;
}

body.night-mode .kizmio-sidebar-section-personal,
body.night-mode .kizmio-sidebar-section {
  background: #172033 !important;
  border-color: #334155 !important;
}

body.night-mode .kizmio-sidebar-list>li>a,
body.night-mode .kizmio-sidebar-subnav li>a {
  background: #0f172a !important;
  border-color: #334155 !important;
  color: #f8fafc !important;
}

body.night-mode .kizmio-sidebar-list .main-icon {
  background: #1e293b !important;
}

body.night-mode .kizmio-sidebar-footer,
body.night-mode .kizmio-sidebar-footer a {
  color: var(--kz-plugin-text-muted, #94a3b8) !important;
}

body.night-mode .card:not(.kzm-membership-warning-card):not(.bg-teal):not(.bg-primary):not(.bg-danger):not(.bg-success):not(.bg-warning) {
  background-color: var(--kz-plugin-surface, #1e293b) !important;
  border-color: var(--kz-plugin-border, #334155) !important;
  color: var(--kz-plugin-text, #f8fafc) !important;
}

body.night-mode .card-body {
  color: var(--kz-plugin-text, #f8fafc);
}

body.night-mode .card-header:not(.bg-primary):not(.bg-success):not(.bg-danger):not(.bg-warning):not(.bg-info) {
  background-color: transparent !important;
  border-color: var(--kz-plugin-border, #334155) !important;
  color: var(--kz-plugin-text, #f8fafc) !important;
}

body.night-mode .card-footer {
  background-color: var(--kz-plugin-surface-2, #263346) !important;
  border-color: var(--kz-plugin-border, #334155) !important;
  color: var(--kz-plugin-text, #f8fafc) !important;
}

body.night-mode [style*="background: linear-gradient(135deg, #fffbeb"],
body.night-mode [style*="background: linear-gradient(135deg, #fef2f2"],
body.night-mode [style*="background-color: #fff8e6"],
body.night-mode [style*="background-color: #fff9eb"] {
  background: var(--kz-plugin-surface, #1e293b) !important;
  border-color: var(--kz-plugin-border, #334155) !important;
  color: var(--kz-plugin-text, #f8fafc) !important;
}

body.night-mode [style*="color: #92400e"],
body.night-mode [style*="color: #856404"],
body.night-mode [style*="color: #78350f"] {
  color: #fbbf24 !important;
}

body.night-mode [style*="color: #991b1b"],
body.night-mode [style*="color: #b91c1c"] {
  color: #f87171 !important;
}

body.night-mode .see-more {
  background: var(--kz-plugin-surface, #1e293b) !important;
  border-color: var(--kz-plugin-border, #334155) !important;
  color: var(--kz-plugin-text, #f8fafc) !important;
}

/* Photos Page Dark Mode Overrides */
body.night-mode .photos-hero__search .input-group,
.kizmiotheme.night-mode .photos-hero__search .input-group,
.night-mode .photos-hero__search .input-group,
body[data-bs-theme="dark"] .photos-hero__search .input-group {
  background: rgba(15, 23, 42, 0.88) !important;
  border-color: rgba(255, 255, 255, 0.16) !important;
  box-shadow: 0 14px 35px rgba(0, 0, 0, 0.4) !important;
}

body.night-mode .photos-hero__search .form-control,
.kizmiotheme.night-mode .photos-hero__search .form-control,
.night-mode .photos-hero__search .form-control,
body[data-bs-theme="dark"] .photos-hero__search .form-control {
  color: #f8fafc !important;
  background: transparent !important;
}

body.night-mode .photos-hero__search .input-group-text,
.kizmiotheme.night-mode .photos-hero__search .input-group-text,
.night-mode .photos-hero__search .input-group-text,
body[data-bs-theme="dark"] .photos-hero__search .input-group-text {
  color: #a5b4fc !important;
  background: transparent !important;
}

body.night-mode .photos-hero .photos-btn-secondary,
.kizmiotheme.night-mode .photos-hero .photos-btn-secondary,
.night-mode .photos-hero .photos-btn-secondary,
body[data-bs-theme="dark"] .photos-hero .photos-btn-secondary {
  border-color: rgba(255, 255, 255, 0.2) !important;
  background: rgba(255, 255, 255, 0.1) !important;
  color: #fff !important;
}

body.night-mode .nav-tabs-photos,
.kizmiotheme.night-mode .nav-tabs-photos,
.night-mode .nav-tabs-photos,
body[data-bs-theme="dark"] .nav-tabs-photos {
  background: #1e293b !important;
  border-color: #334155 !important;
}

body.night-mode .nav-tabs-photos .nav-link,
.kizmiotheme.night-mode .nav-tabs-photos .nav-link,
.night-mode .nav-tabs-photos .nav-link,
body[data-bs-theme="dark"] .nav-tabs-photos .nav-link {
  color: #94a3b8 !important;
}

body.night-mode .nav-tabs-photos .nav-link:hover,
.kizmiotheme.night-mode .nav-tabs-photos .nav-link:hover,
.night-mode .nav-tabs-photos .nav-link:hover,
body[data-bs-theme="dark"] .nav-tabs-photos .nav-link:hover {
  color: #f8fafc !important;
  background: rgba(255, 255, 255, 0.06) !important;
}

body.night-mode .nav-tabs-photos .nav-link.active,
.kizmiotheme.night-mode .nav-tabs-photos .nav-link.active,
.night-mode .nav-tabs-photos .nav-link.active,
body[data-bs-theme="dark"] .nav-tabs-photos .nav-link.active {
  background: rgba(91, 76, 240, 0.25) !important;
  color: #a5b4fc !important;
}

body.night-mode .photos-title-container,
.kizmiotheme.night-mode .photos-title-container,
.night-mode .photos-title-container,
body[data-bs-theme="dark"] .photos-title-container {
  background: #1e293b !important;
  border-color: #334155 !important;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.25) !important;
}

body.night-mode .photos-title-container h3,
.kizmiotheme.night-mode .photos-title-container h3,
.night-mode .photos-title-container h3,
body[data-bs-theme="dark"] .photos-title-container h3 {
  color: #f8fafc !important;
}

body.night-mode .photos-sort-container,
.kizmiotheme.night-mode .photos-sort-container,
.night-mode .photos-sort-container,
body[data-bs-theme="dark"] .photos-sort-container {
  background: #1e293b !important;
  border-color: #334155 !important;
}

body.night-mode .sort-pill,
.kizmiotheme.night-mode .sort-pill,
.night-mode .sort-pill,
body[data-bs-theme="dark"] .sort-pill {
  background: #263346 !important;
  color: #cbd5e1 !important;
}

body.night-mode .sort-pill i,
.kizmiotheme.night-mode .sort-pill i,
.night-mode .sort-pill i,
body[data-bs-theme="dark"] .sort-pill i {
  color: #94a3b8 !important;
}

body.night-mode .sort-pill:hover,
.kizmiotheme.night-mode .sort-pill:hover,
.night-mode .sort-pill:hover,
body[data-bs-theme="dark"] .sort-pill:hover {
  background: #334155 !important;
  color: #fff !important;
}

body.night-mode .sort-pill.active,
.kizmiotheme.night-mode .sort-pill.active,
.night-mode .sort-pill.active,
body[data-bs-theme="dark"] .sort-pill.active {
  background: var(--photos-primary, #5b4cf0) !important;
  color: #fff !important;
}

body.night-mode .sort-pill.active i,
.kizmiotheme.night-mode .sort-pill.active i,
.night-mode .sort-pill.active i,
body[data-bs-theme="dark"] .sort-pill.active i {
  color: #fff !important;
}

body.night-mode .photo-card-container,
.kizmiotheme.night-mode .photo-card-container,
.night-mode .photo-card-container,
body[data-bs-theme="dark"] .photo-card-container {
  background: #1e293b !important;
  border-color: #334155 !important;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.35) !important;
}

body.night-mode .photo-card-footer,
.kizmiotheme.night-mode .photo-card-footer,
.night-mode .photo-card-footer,
body[data-bs-theme="dark"] .photo-card-footer {
  background: #1e293b !important;
  border-top: 1px solid #334155 !important;
}

body.night-mode .photo-card-caption,
.kizmiotheme.night-mode .photo-card-caption,
.night-mode .photo-card-caption,
body[data-bs-theme="dark"] .photo-card-caption {
  color: #f8fafc !important;
}

body.night-mode .photo-card-author .author-name,
.kizmiotheme.night-mode .photo-card-author .author-name,
.night-mode .photo-card-author .author-name,
body[data-bs-theme="dark"] .photo-card-author .author-name {
  color: #cbd5e1 !important;
}

body.night-mode .photo-card-views,
.kizmiotheme.night-mode .photo-card-views,
.night-mode .photo-card-views,
body[data-bs-theme="dark"] .photo-card-views,
body.night-mode .photo-card-views i,
.kizmiotheme.night-mode .photo-card-views i,
.night-mode .photo-card-views i,
body[data-bs-theme="dark"] .photo-card-views i {
  color: #94a3b8 !important;
}

body.night-mode .photos-sidebar-card,
.kizmiotheme.night-mode .photos-sidebar-card,
.night-mode .photos-sidebar-card,
body[data-bs-theme="dark"] .photos-sidebar-card {
  background: #1e293b !important;
  border-color: #334155 !important;
  color: #f8fafc !important;
}

body.night-mode .photos-sidebar-pill,
.kizmiotheme.night-mode .photos-sidebar-pill,
.night-mode .photos-sidebar-pill,
body[data-bs-theme="dark"] .photos-sidebar-pill {
  background: #0f172a !important;
  border-color: #334155 !important;
  color: #f8fafc !important;
}

body.night-mode .photos-sidebar-pill__icon,
.kizmiotheme.night-mode .photos-sidebar-pill__icon,
.night-mode .photos-sidebar-pill__icon,
body[data-bs-theme="dark"] .photos-sidebar-pill__icon {
  background: #1e293b !important;
  color: #818cf8 !important;
}

body.night-mode .photos-mobile-menu,
.kizmiotheme.night-mode .photos-mobile-menu,
.night-mode .photos-mobile-menu,
body[data-bs-theme="dark"] .photos-mobile-menu {
  background: #263346 !important;
  border-color: #334155 !important;
  color: #f8fafc !important;
}

