/**
 * Dark mode — correzioni per classi in blade-views.css ancora su #fff / colori light-only.
 * Caricato dopo blade-views.css (layouts/app). Non incluso in consolidate-blade-pages-css.php.
 */

html[data-theme="dark"] {
  --light-bg: var(--spedire-bg);
  --input-bg: var(--dark-input-bg, #0b1220);
  --input-border: var(--spedire-border);
  --dark-slate: var(--spedire-text);
}

/* ----- Footer .footer-logistics (variabili --theme-footer-* da layouts/app in dark) ----- */
html[data-theme="dark"] .footer-logistics {
  background-color: var(--theme-footer-bg, var(--spedire-bg)) !important;
  color: var(--theme-footer-text, var(--dark-muted-color, #94a3b8));
  border-top-color: color-mix(in srgb, var(--theme-footer-text, #94a3b8) 28%, transparent) !important;
}

html[data-theme="dark"] .footer-logistics h5,
html[data-theme="dark"] .footer-logistics h6 {
  color: var(--theme-footer-heading, var(--spedire-text, #f1f5f9));
}

html[data-theme="dark"] .footer-logistics p,
html[data-theme="dark"] .footer-logistics .footer-link {
  color: var(--theme-footer-text, var(--dark-muted-color, #94a3b8));
}

html[data-theme="dark"] .footer-logistics .footer-link:hover {
  color: var(--theme-footer-heading, var(--spedire-text, #f8fafc));
}

html[data-theme="dark"] .footer-logistics .footer-bottom {
  border-top-color: color-mix(in srgb, var(--theme-footer-text, #94a3b8) 22%, transparent);
  color: var(--theme-footer-text, var(--dark-muted-color, #94a3b8));
}

html[data-theme="dark"] .footer-logistics .footer-copyright-brand,
html[data-theme="dark"] .footer-logistics .footer-cap-label {
  color: var(--theme-footer-heading, var(--spedire-text, #f1f5f9));
}

html[data-theme="dark"] .footer-logistics .lang-wrapper {
  color: var(--theme-footer-text, var(--dark-muted-color, #94a3b8));
}

html[data-theme="dark"] .footer-logistics .lang-select {
  color-scheme: dark;
  background-color: color-mix(in srgb, var(--theme-footer-heading, #fff) 7%, transparent);
  color: var(--theme-footer-heading, var(--spedire-text, #f1f5f9));
  border-color: color-mix(in srgb, var(--theme-footer-text, #94a3b8) 40%, transparent);
}

html[data-theme="dark"] .footer-logistics .lang-select:hover,
html[data-theme="dark"] .footer-logistics .lang-select:focus {
  border-color: color-mix(in srgb, var(--theme-primary, #fb7185) 55%, transparent);
}

/* Lista nativa: sfondo scuro + testo chiaro (alcuni browser ignorano option: color-scheme aiuta) */

html[data-theme="dark"] .footer-logistics .lang-select option {
  background-color: var(--dark-card-bg, #111827);
  color: var(--spedire-text, #e5e7eb);
}

html[data-theme="dark"] .footer-logistics .social-btn {
  background: color-mix(in srgb, var(--theme-footer-heading, #fff) 10%, transparent);
  color: var(--theme-footer-heading, var(--spedire-text, #f1f5f9));
}

html[data-theme="dark"] .footer-logistics .social-btn:hover {
  color: #fff;
}

html[data-theme="dark"] .footer-logistics .opacity-75 img[alt] {
  opacity: 0.92;
  filter: brightness(1.08);
}

/* ----- Auth (gradient / card / link) ----- */
html[data-theme="dark"] .bg-gradient-azure-light {
  background: linear-gradient(
    135deg,
    color-mix(in srgb, var(--theme-secondary, #1e3a5a) 42%, var(--spedire-bg)) 0%,
    var(--spedire-bg) 72%
  );
}

html[data-theme="dark"] .grid-overlay {
  background-image: radial-gradient(rgba(255, 255, 255, 0.035) 1px, transparent 1px);
}

html[data-theme="dark"] .card-solid {
  background: var(--dark-card-bg, #111827);
  border-color: var(--dark-border-color, var(--spedire-border));
  box-shadow: 0 12px 36px -12px rgba(0, 0, 0, 0.55);
}

html[data-theme="dark"] .link-secondary {
  color: var(--dark-muted-color, #94a3b8) !important;
}

html[data-theme="dark"] .input-group-modern .input-icon {
  color: var(--dark-muted-color, #94a3b8);
}

html[data-theme="dark"] .form-control-modern {
  color: var(--spedire-text);
}

html[data-theme="dark"] .form-control-modern::placeholder {
  color: var(--dark-muted-color, #94a3b8);
}

html[data-theme="dark"] .btn-outline-custom:hover {
  background-color: color-mix(in srgb, var(--spedire-text) 8%, transparent);
}

html[data-theme="dark"] .btn-social-modern {
  background: var(--dark-card-bg, #111827);
  border-color: var(--spedire-border);
  color: var(--spedire-text);
}

html[data-theme="dark"] .btn-social-modern:hover {
  background: color-mix(in srgb, var(--spedire-text) 10%, var(--dark-card-bg, #111827));
  border-color: var(--spedire-border);
}

html[data-theme="dark"] .step-circle {
  background: color-mix(in srgb, var(--spedire-border) 55%, var(--dark-card-bg, #111827));
  color: var(--spedire-text);
}

/* ----- Register: country / city dropdown ----- */
html[data-theme="dark"] .country-dd,
html[data-theme="dark"] .city-ac .city-dd {
  background: var(--dark-card-bg, #111827) !important;
  border: 1px solid var(--spedire-border) !important;
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.45);
}

html[data-theme="dark"] .country-option {
  color: var(--spedire-text);
}

html[data-theme="dark"] .country-dd .country-option:hover,
html[data-theme="dark"] .country-dd .country-option[aria-selected="true"] {
  background: color-mix(in srgb, var(--theme-primary, #fb7185) 16%, var(--dark-card-bg, #111827));
}

html[data-theme="dark"] .country-option small {
  color: var(--dark-muted-color, #94a3b8) !important;
}

html[data-theme="dark"] .city-option:hover,
html[data-theme="dark"] .city-option[aria-selected="true"] {
  background: color-mix(in srgb, var(--theme-primary, #fb7185) 16%, var(--dark-card-bg, #111827));
}

html[data-theme="dark"] .city-main {
  color: var(--spedire-text);
}

html[data-theme="dark"] .city-meta {
  color: var(--dark-muted-color, #94a3b8);
}

html[data-theme="dark"] .city-ac .spinner-ac {
  border-color: color-mix(in srgb, var(--dark-muted-color, #94a3b8) 45%, transparent);
  border-top-color: var(--spedire-text);
}

html[data-theme="dark"] .btn-toggle-pass {
  color: var(--dark-muted-color, #94a3b8);
}

html[data-theme="dark"] .btn-toggle-pass:hover {
  color: var(--dark-link-color, var(--theme-primary));
}

/* ----- Navbar chrome ----- */
html[data-theme="dark"] .navbar-azure {
  box-shadow: 0 8px 28px rgba(0, 0, 0, 0.35);
}

html[data-theme="dark"] .glass-dropdown {
  background: color-mix(in srgb, var(--dark-card-bg, #1e293b) 94%, transparent);
  border: 1px solid color-mix(in srgb, var(--spedire-border) 70%, transparent);
  box-shadow: 0 24px 55px rgba(0, 0, 0, 0.5);
}

html[data-theme="dark"] .glass-dropdown .dropdown-item {
  color: var(--spedire-text);
}

html[data-theme="dark"] .glass-dropdown .dropdown-item:hover,
html[data-theme="dark"] .glass-dropdown .dropdown-item:focus {
  background: rgba(255, 255, 255, 0.06);
  color: var(--spedire-text);
}

html[data-theme="dark"] .navbar-azure a.btn-user-glass .avatar-circle {
  background: transparent;
  border-color: color-mix(in srgb, var(--theme-primary, var(--spedire-primary, #fb7185)) 78%, transparent);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--theme-primary, var(--spedire-primary, #fb7185)) 14%, transparent);
  color: var(--theme-primary, var(--spedire-primary, #fb7185));
}

html[data-theme="dark"] .navbar-azure a.btn-user-glass:hover .avatar-circle,
html[data-theme="dark"] .navbar-azure a.btn-user-glass:focus .avatar-circle,
html[data-theme="dark"] .navbar-azure a.btn-user-glass:focus-visible .avatar-circle,
html[data-theme="dark"] .navbar-azure .dropdown.show > a.btn-user-glass .avatar-circle {
  background: var(--theme-primary, var(--spedire-primary, #fb7185));
  border-color: var(--theme-primary, var(--spedire-primary, #fb7185));
  color: #ffffff;
  box-shadow: 0 8px 22px color-mix(in srgb, var(--theme-primary, var(--spedire-primary, #fb7185)) 32%, transparent);
}

html[data-theme="dark"] .nav-link-glass:hover {
  background: rgba(255, 255, 255, 0.08);
}

html[data-theme="dark"] .nav-link-glass.is-active {
  background: rgba(255, 255, 255, 0.12);
}

/* ----- Static pages (cookie, ecc.) ----- */
html[data-theme="dark"] .page-card {
  background-color: var(--dark-card-bg, #111827);
  color: var(--spedire-text);
  border-color: var(--spedire-border);
}

/* ----- Dashboard / user: sfondi bianchi nel consolidato ----- */
html[data-theme="dark"] .address-card,
html[data-theme="dark"] .address-mobile-card,
html[data-theme="dark"] .wallet-section-card,
html[data-theme="dark"] .kpi-card,
html[data-theme="dark"] .marketplaces-wrapper .card,
html[data-theme="dark"] .search-card {
  background-color: var(--dark-card-bg, #111827) !important;
  color: var(--spedire-text);
  border-color: var(--spedire-border);
}

html[data-theme="dark"] .imported-order-details-wrapper {
  background-color: var(--spedire-bg) !important;
  color: var(--spedire-text);
}

html[data-theme="dark"] .imported-order-details-wrapper .card {
  background-color: var(--dark-card-bg, #111827) !important;
  color: var(--spedire-text);
  border-color: var(--spedire-border);
}

html[data-theme="dark"] .imported-order-details-wrapper .card-header,
html[data-theme="dark"] .imported-order-details-wrapper .card-footer {
  background-color: color-mix(in srgb, var(--dark-card-bg) 92%, var(--spedire-border)) !important;
  border-color: var(--spedire-border);
  color: var(--spedire-text);
}

html[data-theme="dark"] .imported-order-details-wrapper .card-header.bg-white {
  background-color: color-mix(in srgb, var(--dark-card-bg) 92%, var(--spedire-border)) !important;
}

html[data-theme="dark"] .imported-order-details-wrapper .bg-white,
html[data-theme="dark"] .imported-order-details-wrapper .bg-light,
html[data-theme="dark"] .imported-order-details-wrapper .bg-light-contrast {
  background-color: color-mix(in srgb, var(--spedire-text) 6%, var(--dark-card-bg)) !important;
  color: var(--spedire-text);
}

html[data-theme="dark"] .imported-order-details-wrapper .text-secondary,
html[data-theme="dark"] .imported-order-details-wrapper .text-muted {
  color: var(--dark-muted-color, #94a3b8) !important;
}

html[data-theme="dark"] .imported-order-details-wrapper .border,
html[data-theme="dark"] .imported-order-details-wrapper .border-top,
html[data-theme="dark"] .imported-order-details-wrapper .border-bottom {
  border-color: var(--spedire-border) !important;
}

html[data-theme="dark"] .orders-search .input-group-text {
  background: var(--dark-input-bg, #0b1220) !important;
  border-color: var(--spedire-border);
  color: var(--spedire-text);
}

html[data-theme="dark"] .filters-inline {
  background: var(--dark-card-bg, #111827) !important;
  border-color: var(--spedire-border);
}

/* ----- FAQ ----- */
html[data-theme="dark"] mark.faq-hit {
  background: color-mix(in srgb, var(--theme-primary, #fb7185) 28%, #0f172a);
  color: var(--spedire-text);
}

/* ----- Landing pricing ----- */
html[data-theme="dark"] .pricing-price-line .currency,
html[data-theme="dark"] .pricing-price-line .price {
  color: var(--spedire-text);
}

html[data-theme="dark"] .pricing-price-line .period,
html[data-theme="dark"] .pricing-features li {
  color: var(--dark-muted-color, #94a3b8);
}

/* ----- Select2 (register / form interni) ----- */
html[data-theme="dark"] .select2-container--default .select2-selection--single {
  background-color: var(--dark-input-bg, #0b1220) !important;
  border-color: var(--spedire-border) !important;
}

/* floating label dark mode */
html[data-theme="dark"] .select2-floating.has-label > label {
  color: var(--dark-muted-color, #94a3b8);
}

/* blade-views imposta #fff su tema bootstrap-5 + select2-floating */
html[data-theme="dark"] .select2-floating .select2-container--bootstrap-5 .select2-selection--single,
html[data-theme="dark"] .select2-floating .select2-container--bootstrap-5 .select2-selection--multiple {
  background-color: var(--dark-input-bg, #0b1220) !important;
  background-image: none !important;
  border-color: var(--spedire-border) !important;
}

html[data-theme="dark"] .select2-floating .select2-container--bootstrap-5 .select2-selection--single .select2-selection__rendered,
html[data-theme="dark"] .select2-floating .select2-container--bootstrap-5 .select2-selection--multiple .select2-selection__rendered {
  color: var(--spedire-text);
}

html[data-theme="dark"] .select2-floating .select2-container--bootstrap-5 .select2-selection--single::after,
html[data-theme="dark"] .select2-floating .select2-container--bootstrap-5 .select2-selection--multiple::after {
  color: var(--dark-muted-color, #94a3b8);
}

html[data-theme="dark"]
  .select2-container--bootstrap-5
  .select2-dropdown
  .select2-results__options
  .select2-results__option.select2-results__option--highlighted {
  background-color: color-mix(in srgb, var(--theme-primary, #fb7185) 22%, var(--dark-card-bg)) !important;
  color: var(--spedire-text) !important;
}

html[data-theme="dark"] .select2-container--default .select2-selection--single .select2-selection__rendered {
  color: var(--spedire-text) !important;
}

html[data-theme="dark"] .select2-container--default .select2-selection--single .select2-selection__arrow b {
  border-color: var(--dark-muted-color, #94a3b8) transparent transparent transparent;
}

html[data-theme="dark"] .select2-dropdown {
  background-color: var(--dark-card-bg, #111827);
  border-color: var(--spedire-border);
}

html[data-theme="dark"] .select2-results__option {
  color: var(--spedire-text);
}

html[data-theme="dark"] .select2-container--default .select2-results__option--highlighted[aria-selected] {
  background-color: color-mix(in srgb, var(--theme-primary, #fb7185) 22%, var(--dark-card-bg)) !important;
  color: var(--spedire-text);
}

/* ----- Landing / welcome: tool-card, log form, pricing (colori hardcoded in blade-views) ----- */
html[data-theme="dark"] .log-input {
  color: var(--spedire-text, #e5e7eb) !important;
}

html[data-theme="dark"] .log-input::placeholder {
  color: var(--dark-muted-color, #94a3b8);
}

html[data-theme="dark"] .log-unit {
  color: var(--dark-muted-color, #94a3b8);
}

html[data-theme="dark"] .tool-tab:hover {
  color: var(--spedire-text, #e5e7eb);
}

html[data-theme="dark"] .country-select .country-search,
html[data-theme="dark"] .log-dropdown .form-control.country-search {
  background-color: var(--dark-input-bg, #0b1220) !important;
  border-color: var(--spedire-border) !important;
  color: var(--spedire-text) !important;
  color-scheme: dark;
}

html[data-theme="dark"] .qq-city-dd .qq-city-item:hover,
html[data-theme="dark"] .qq-city-dd .qq-city-item.active {
  background: color-mix(in srgb, var(--theme-primary, #fb7185) 16%, var(--dark-card-bg, #111827)) !important;
}

html[data-theme="dark"] #qq-result.bg-light {
  background-color: color-mix(in srgb, var(--dark-card-bg, #111827) 92%, #000) !important;
  border-color: var(--spedire-border) !important;
  color: var(--spedire-text);
}

html[data-theme="dark"] #qq-result .text-dark {
  color: var(--spedire-text) !important;
}

html[data-theme="dark"] #tab-track .bg-light.rounded-circle {
  background-color: var(--dark-input-bg, #0b1220) !important;
}

html[data-theme="dark"] #tab-track .h4,
html[data-theme="dark"] #tab-track .text-muted {
  color: var(--dark-muted-color, #94a3b8) !important;
}

html[data-theme="dark"] #tab-track .h4 {
  color: var(--spedire-text, #f1f5f9) !important;
}

html[data-theme="dark"] .billing-btn {
  color: var(--dark-muted-color, #94a3b8);
}

html[data-theme="dark"] .billing-btn.active {
  background: var(--dark-card-bg, #111827);
  color: var(--theme-primary, #fb7185);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.35);
}

html[data-theme="dark"] .pricing-price-line .currency,
html[data-theme="dark"] .pricing-price-line .price {
  color: var(--spedire-text, #f8fafc) !important;
}

html[data-theme="dark"] .pricing-price-line .period {
  color: var(--dark-muted-color, #94a3b8) !important;
}

html[data-theme="dark"] .pricing-features li {
  color: color-mix(in srgb, var(--spedire-text) 82%, var(--dark-muted-color));
}

html[data-theme="dark"] .pricing-card {
  box-shadow: 0 12px 36px rgba(0, 0, 0, 0.35);
}

html[data-theme="dark"] .pricing-card:hover {
  box-shadow: 0 20px 44px rgba(0, 0, 0, 0.45);
}

html[data-theme="dark"] .feature-card:hover {
  box-shadow: 0 15px 30px rgba(0, 0, 0, 0.35);
}

html[data-theme="dark"] .logo-strip {
  color: var(--dark-muted-color, #94a3b8);
}

html[data-theme="dark"] .tool-card .text-muted {
  color: var(--dark-muted-color, #94a3b8) !important;
}

/* --- user/shipments/index.blade.php — dark --- */
html[data-theme="dark"] .user-shipments-wrapper {
  background-color: var(--spedire-bg) !important;
  color: var(--spedire-text);
}

html[data-theme="dark"] .user-shipments-wrapper .card {
  background-color: var(--dark-card-bg, #111827) !important;
  border-color: var(--spedire-border, #334155) !important;
  color: var(--spedire-text);
}

html[data-theme="dark"] .user-shipments-wrapper .card-body {
  color: inherit;
}

html[data-theme="dark"] .user-shipments-wrapper .shipments-filters-card {
  border-color: var(--spedire-border) !important;
}

html[data-theme="dark"] .user-shipments-wrapper .form-control-modern,
html[data-theme="dark"] .user-shipments-wrapper .form-select-modern {
  background-color: var(--dark-input-bg, #0b1220);
  border-color: var(--spedire-border);
  color: var(--spedire-text);
}

html[data-theme="dark"] .user-shipments-wrapper .form-control-modern:focus,
html[data-theme="dark"] .user-shipments-wrapper .form-select-modern:focus {
  background-color: var(--dark-input-bg, #0b1220);
  border-color: var(--theme-primary);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--theme-primary) 22%, transparent);
}

html[data-theme="dark"] .user-shipments-wrapper .form-control-modern::placeholder {
  color: var(--dark-muted-color, #94a3b8);
}

html[data-theme="dark"] .user-shipments-wrapper .form-label.text-muted {
  color: var(--dark-muted-color, #94a3b8) !important;
}

html[data-theme="dark"] .user-shipments-wrapper .shipments-filters-toggle.btn-outline-secondary {
  color: var(--spedire-text);
  border-color: var(--spedire-border);
  background-color: color-mix(in srgb, var(--dark-card-bg) 88%, transparent);
}

html[data-theme="dark"] .user-shipments-wrapper .shipments-filters-toggle.btn-outline-secondary:hover {
  background-color: color-mix(in srgb, var(--spedire-text) 10%, var(--dark-card-bg));
  color: var(--spedire-text);
  border-color: var(--spedire-border);
}

html[data-theme="dark"] .user-shipments-wrapper .alert.alert-light {
  background-color: color-mix(in srgb, var(--dark-card-bg) 94%, var(--spedire-border)) !important;
  border-color: var(--spedire-border) !important;
  color: var(--spedire-text) !important;
}

html[data-theme="dark"] .user-shipments-wrapper .table {
  --bs-table-bg: transparent;
  --bs-table-color: var(--spedire-text);
  color: var(--spedire-text);
}

html[data-theme="dark"] .user-shipments-wrapper .table td,
html[data-theme="dark"] .user-shipments-wrapper .table th {
  border-color: color-mix(in srgb, var(--spedire-border) 65%, transparent);
}

/* Bootstrap 5: le celle usano box-shadow inset + --bs-table-* per lo sfondo (il thead restava chiaro) */
html[data-theme="dark"] .user-shipments-wrapper .table thead.table-head-custom > tr > th {
  background-color: color-mix(in srgb, var(--dark-card-bg, #111827) 88%, var(--spedire-border)) !important;
  color: var(--dark-muted-color, #94a3b8) !important;
  border-color: var(--spedire-border) !important;
  box-shadow: none !important;
  --bs-table-bg: transparent;
  --bs-table-accent-bg: transparent;
  --bs-table-color: var(--dark-muted-color, #94a3b8);
}

html[data-theme="dark"] .user-shipments-wrapper .table thead.table-head-custom {
  background-color: color-mix(in srgb, var(--dark-card-bg, #111827) 88%, var(--spedire-border)) !important;
}

html[data-theme="dark"] .user-shipments-wrapper .table-head-custom {
  background-color: color-mix(in srgb, var(--dark-card-bg) 88%, var(--spedire-border)) !important;
}

html[data-theme="dark"] .user-shipments-wrapper .table-head-custom th {
  color: var(--dark-muted-color, #94a3b8) !important;
  border-color: var(--spedire-border) !important;
}

html[data-theme="dark"] .user-shipments-wrapper .table-hover-custom tbody tr:hover {
  background-color: color-mix(in srgb, var(--theme-primary) 10%, var(--dark-card-bg)) !important;
}

html[data-theme="dark"] .user-shipments-wrapper .dropdown-menu {
  background-color: var(--dark-card-bg);
  border-color: var(--spedire-border);
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.45);
}

html[data-theme="dark"] .user-shipments-wrapper .dropdown-item {
  color: var(--spedire-text);
}

html[data-theme="dark"] .user-shipments-wrapper .dropdown-item:hover,
html[data-theme="dark"] .user-shipments-wrapper .dropdown-item:focus {
  background-color: color-mix(in srgb, var(--theme-primary) 14%, var(--dark-card-bg));
  color: var(--spedire-text);
}

html[data-theme="dark"] .user-shipments-wrapper .dropdown-divider {
  border-color: var(--spedire-border);
  opacity: 1;
}

html[data-theme="dark"] .user-shipments-wrapper .btn-icon-only-dropdown {
  color: var(--spedire-text);
}

html[data-theme="dark"] .user-shipments-wrapper .btn-icon-only-dropdown:hover {
  background-color: color-mix(in srgb, var(--spedire-text) 8%, transparent);
}

html[data-theme="dark"] .user-shipments-wrapper .border-bottom {
  border-color: var(--spedire-border) !important;
}

html[data-theme="dark"] .user-shipments-wrapper .shipments-pagination .page-link {
  background-color: var(--dark-card-bg);
  border-color: var(--spedire-border);
  color: var(--spedire-text);
}

html[data-theme="dark"] .user-shipments-wrapper .shipments-pagination .page-link:hover {
  background-color: color-mix(in srgb, var(--spedire-text) 8%, var(--dark-card-bg));
  color: var(--spedire-text);
  border-color: var(--spedire-border);
}

html[data-theme="dark"] .user-shipments-wrapper .shipments-pagination .page-item.active .page-link {
  background-color: var(--theme-primary);
  border-color: var(--theme-primary);
  color: #fff;
}

html[data-theme="dark"] .user-shipments-wrapper .shipments-pagination .page-item.disabled .page-link {
  background-color: var(--dark-card-bg);
  border-color: var(--spedire-border);
  color: var(--dark-muted-color);
}

html[data-theme="dark"] #confirmDeleteModal .modal-content,
html[data-theme="dark"] #confirmCancelModal .modal-content,
html[data-theme="dark"] #messageModal .modal-content {
  background-color: var(--dark-card-bg);
  color: var(--spedire-text);
  border: 1px solid var(--spedire-border);
}

html[data-theme="dark"] #confirmDeleteModal .modal-header,
html[data-theme="dark"] #confirmCancelModal .modal-header,
html[data-theme="dark"] #messageModal .modal-header,
html[data-theme="dark"] #confirmDeleteModal .modal-footer,
html[data-theme="dark"] #confirmCancelModal .modal-footer,
html[data-theme="dark"] #messageModal .modal-footer {
  border-color: var(--spedire-border);
}

html[data-theme="dark"] #confirmDeleteModal .btn-light,
html[data-theme="dark"] #confirmCancelModal .btn-light,
html[data-theme="dark"] #messageModal .btn-light {
  background-color: color-mix(in srgb, var(--spedire-text) 8%, var(--dark-card-bg));
  border-color: var(--spedire-border);
  color: var(--spedire-text);
}

html[data-theme="dark"] #confirmDeleteModal .btn-close,
html[data-theme="dark"] #confirmCancelModal .btn-close,
html[data-theme="dark"] #messageModal .btn-close {
  filter: invert(1) grayscale(100%);
  opacity: 0.75;
}

html[data-theme="dark"] #messageModal .bg-light {
  background-color: color-mix(in srgb, var(--spedire-text) 7%, var(--dark-card-bg)) !important;
  color: var(--spedire-text) !important;
}

/* --- user/imports/show — order detail (#/user/imports/{id}) --- */
html[data-theme="dark"] .imported-order-details-wrapper .card-body {
  color: inherit;
}

html[data-theme="dark"] .imported-order-details-wrapper .border-light {
  border-color: color-mix(in srgb, var(--spedire-border) 72%, transparent) !important;
}

html[data-theme="dark"] .imported-order-details-wrapper .btn-outline-secondary.btn-sm {
  color: var(--spedire-text);
  border-color: var(--spedire-border);
  background-color: color-mix(in srgb, var(--dark-card-bg) 88%, transparent);
}

html[data-theme="dark"] .imported-order-details-wrapper .btn-outline-secondary.btn-sm:hover {
  background-color: color-mix(in srgb, var(--spedire-text) 10%, var(--dark-card-bg));
  color: var(--spedire-text);
  border-color: var(--spedire-border);
}

html[data-theme="dark"] .imported-order-details-wrapper .table {
  --bs-table-bg: transparent;
  --bs-table-color: var(--spedire-text);
  color: var(--spedire-text);
}

html[data-theme="dark"] .imported-order-details-wrapper .table td,
html[data-theme="dark"] .imported-order-details-wrapper .table th {
  border-color: color-mix(in srgb, var(--spedire-border) 65%, transparent);
}

html[data-theme="dark"] .imported-order-details-wrapper .table thead.bg-light > tr > th {
  background-color: color-mix(in srgb, var(--dark-card-bg, #111827) 88%, var(--spedire-border)) !important;
  color: var(--dark-muted-color, #94a3b8) !important;
  border-color: var(--spedire-border) !important;
  --bs-table-bg: transparent;
  --bs-table-color: var(--dark-muted-color, #94a3b8);
}

html[data-theme="dark"] .imported-order-details-wrapper .table thead.bg-light {
  background-color: color-mix(in srgb, var(--dark-card-bg, #111827) 88%, var(--spedire-border)) !important;
}

html[data-theme="dark"] .imported-order-details-wrapper .table-hover > tbody > tr:hover {
  --bs-table-accent-bg: color-mix(in srgb, var(--theme-primary) 10%, var(--dark-card-bg));
  --bs-table-hover-bg: color-mix(in srgb, var(--theme-primary) 10%, var(--dark-card-bg));
  color: var(--spedire-text);
}

html[data-theme="dark"] .imported-order-details-wrapper .accordion-item {
  background-color: transparent;
  border-color: transparent;
}

html[data-theme="dark"] .imported-order-details-wrapper .accordion-button {
  background-color: transparent !important;
  color: var(--spedire-text) !important;
}

html[data-theme="dark"] .imported-order-details-wrapper .accordion-button:not(.collapsed) {
  background-color: transparent !important;
  color: var(--spedire-text) !important;
  box-shadow: none;
}

html[data-theme="dark"] .imported-order-details-wrapper .accordion-button::after {
  filter: invert(0.92);
}

/* --- user/address_book — dark --- */
html[data-theme="dark"] .address-book-wrapper {
  background-color: var(--spedire-bg) !important;
  color: var(--spedire-text);
}

html[data-theme="dark"] .address-book-wrapper .card {
  background-color: var(--dark-card-bg, #111827) !important;
  border-color: var(--spedire-border, #334155) !important;
  color: var(--spedire-text);
}

html[data-theme="dark"] .address-book-wrapper .card-body {
  color: inherit;
}

html[data-theme="dark"] .address-book-wrapper .card-footer.bg-white,
html[data-theme="dark"] .address-book-wrapper .card-header.bg-white {
  background-color: color-mix(in srgb, var(--dark-card-bg) 92%, var(--spedire-border)) !important;
  border-color: var(--spedire-border) !important;
  color: var(--spedire-text);
}

html[data-theme="dark"] .address-book-wrapper .card.bg-primary-subtle {
  background-color: color-mix(in srgb, var(--theme-primary, var(--spedire-primary)) 16%, var(--dark-card-bg)) !important;
  border-color: var(--spedire-border) !important;
}

html[data-theme="dark"] .address-book-wrapper .form-control-modern,
html[data-theme="dark"] .address-book-wrapper .form-select-modern {
  background-color: var(--dark-input-bg, #0b1220);
  border-color: var(--spedire-border);
  color: var(--spedire-text);
}

html[data-theme="dark"] .address-book-wrapper .form-control-modern:focus,
html[data-theme="dark"] .address-book-wrapper .form-select-modern:focus {
  background-color: var(--dark-input-bg, #0b1220);
  border-color: var(--theme-primary);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--theme-primary) 22%, transparent);
}

html[data-theme="dark"] .address-book-wrapper .form-control-modern::placeholder {
  color: var(--dark-muted-color, #94a3b8);
}

html[data-theme="dark"] .address-book-wrapper .form-label.text-muted {
  color: var(--dark-muted-color, #94a3b8) !important;
}

html[data-theme="dark"] .address-book-wrapper .alert.alert-light {
  background-color: color-mix(in srgb, var(--dark-card-bg) 94%, var(--spedire-border)) !important;
  border-color: var(--spedire-border) !important;
  color: var(--spedire-text) !important;
}

html[data-theme="dark"] .address-book-wrapper .table {
  --bs-table-bg: transparent;
  --bs-table-color: var(--spedire-text);
  color: var(--spedire-text);
}

html[data-theme="dark"] .address-book-wrapper .table td,
html[data-theme="dark"] .address-book-wrapper .table th {
  border-color: color-mix(in srgb, var(--spedire-border) 65%, transparent);
}

html[data-theme="dark"] .address-book-wrapper .table thead.table-head-custom > tr > th {
  background-color: color-mix(in srgb, var(--dark-card-bg, #111827) 88%, var(--spedire-border)) !important;
  color: var(--dark-muted-color, #94a3b8) !important;
  border-color: var(--spedire-border) !important;
  box-shadow: none !important;
  --bs-table-bg: transparent;
  --bs-table-accent-bg: transparent;
  --bs-table-color: var(--dark-muted-color, #94a3b8);
}

html[data-theme="dark"] .address-book-wrapper .table thead.table-head-custom {
  background-color: color-mix(in srgb, var(--dark-card-bg, #111827) 88%, var(--spedire-border)) !important;
}

html[data-theme="dark"] .address-book-wrapper .table-hover-custom tbody tr:hover {
  background-color: color-mix(in srgb, var(--theme-primary) 10%, var(--dark-card-bg)) !important;
}

html[data-theme="dark"] .address-book-wrapper .dropdown-menu {
  background-color: var(--dark-card-bg);
  border-color: var(--spedire-border);
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.45);
}

html[data-theme="dark"] .address-book-wrapper .dropdown-item {
  color: var(--spedire-text);
}

html[data-theme="dark"] .address-book-wrapper .dropdown-item:hover,
html[data-theme="dark"] .address-book-wrapper .dropdown-item:focus {
  background-color: color-mix(in srgb, var(--theme-primary) 14%, var(--dark-card-bg));
  color: var(--spedire-text);
}

html[data-theme="dark"] .address-book-wrapper .dropdown-divider {
  border-color: var(--spedire-border);
  opacity: 1;
}

html[data-theme="dark"] .address-book-wrapper .btn-icon-only-dropdown {
  color: var(--spedire-text);
}

html[data-theme="dark"] .address-book-wrapper .btn-icon-only-dropdown:hover {
  background-color: color-mix(in srgb, var(--spedire-text) 8%, transparent);
}

/* Create / edit: autocomplete città (senza wrapper .city-ac) + toggle tipo contatto */
html[data-theme="dark"] .address-book-wrapper .city-dd {
  background: var(--dark-card-bg, #111827) !important;
  border: 1px solid var(--spedire-border) !important;
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.45);
}

html[data-theme="dark"] .address-book-wrapper .btn-group > .btn-outline-secondary {
  color: var(--spedire-text);
  border-color: var(--spedire-border);
  background-color: color-mix(in srgb, var(--dark-card-bg) 92%, transparent);
}

html[data-theme="dark"] .address-book-wrapper .btn-group > .btn-outline-secondary:hover {
  background-color: color-mix(in srgb, var(--spedire-text) 10%, var(--dark-card-bg));
  color: var(--spedire-text);
  border-color: var(--spedire-border);
}

html[data-theme="dark"] .address-book-wrapper .btn-group > .btn-check:checked + .btn-outline-secondary {
  background-color: color-mix(in srgb, var(--theme-primary) 28%, var(--dark-card-bg)) !important;
  border-color: var(--theme-primary) !important;
  color: var(--spedire-text) !important;
}

/* --- user/couriers/index — dark --- */
html[data-theme="dark"] .couriers-wrapper {
  background-color: var(--spedire-bg) !important;
  color: var(--spedire-text);
}

html[data-theme="dark"] .couriers-wrapper .card {
  background-color: var(--dark-card-bg, #111827) !important;
  border-color: var(--spedire-border, #334155) !important;
  color: var(--spedire-text);
}

html[data-theme="dark"] .couriers-wrapper .card-body {
  color: inherit;
}

html[data-theme="dark"] .couriers-wrapper .couriers-filters-card,
html[data-theme="dark"] .couriers-wrapper .couriers-empty-state-card {
  background-color: var(--dark-card-bg, #111827) !important;
  border-color: var(--spedire-border) !important;
}

html[data-theme="dark"] .couriers-wrapper .card-header.bg-white {
  background-color: color-mix(in srgb, var(--dark-card-bg) 92%, var(--spedire-border)) !important;
  border-color: var(--spedire-border) !important;
  color: var(--spedire-text);
}

html[data-theme="dark"] .couriers-wrapper .card.bg-primary-subtle {
  background-color: color-mix(in srgb, var(--theme-primary, var(--spedire-primary)) 16%, var(--dark-card-bg)) !important;
  border-color: var(--spedire-border) !important;
}

html[data-theme="dark"] .couriers-wrapper .form-control-modern,
html[data-theme="dark"] .couriers-wrapper .form-select-modern {
  background-color: var(--dark-input-bg, #0b1220);
  border-color: var(--spedire-border);
  color: var(--spedire-text);
}

html[data-theme="dark"] .couriers-wrapper .form-control-modern:focus,
html[data-theme="dark"] .couriers-wrapper .form-select-modern:focus {
  background-color: var(--dark-input-bg, #0b1220);
  border-color: var(--theme-primary);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--theme-primary) 22%, transparent);
}

html[data-theme="dark"] .couriers-wrapper .form-control-modern::placeholder {
  color: var(--dark-muted-color, #94a3b8);
}

html[data-theme="dark"] .couriers-wrapper .form-label.text-muted {
  color: var(--dark-muted-color, #94a3b8) !important;
}

html[data-theme="dark"] .couriers-wrapper .couriers-filters-toggle.btn-outline-secondary {
  color: var(--spedire-text);
  border-color: var(--spedire-border);
  background-color: color-mix(in srgb, var(--dark-card-bg) 88%, transparent);
}

html[data-theme="dark"] .couriers-wrapper .couriers-filters-toggle.btn-outline-secondary:hover {
  background-color: color-mix(in srgb, var(--spedire-text) 10%, var(--dark-card-bg));
  color: var(--spedire-text);
  border-color: var(--spedire-border);
}

html[data-theme="dark"] .couriers-wrapper .alert.alert-light {
  background-color: color-mix(in srgb, var(--dark-card-bg) 94%, var(--spedire-border)) !important;
  border-color: var(--spedire-border) !important;
  color: var(--spedire-text) !important;
}

html[data-theme="dark"] .couriers-wrapper .border-light {
  border-color: var(--spedire-border) !important;
}

html[data-theme="dark"] .couriers-wrapper .badge.bg-light.text-dark {
  background-color: color-mix(in srgb, var(--spedire-text) 10%, var(--dark-card-bg)) !important;
  color: var(--spedire-text) !important;
  border-color: var(--spedire-border) !important;
}

html[data-theme="dark"] .couriers-wrapper .table {
  --bs-table-bg: transparent;
  --bs-table-color: var(--spedire-text);
  color: var(--spedire-text);
}

html[data-theme="dark"] .couriers-wrapper .table td,
html[data-theme="dark"] .couriers-wrapper .table th {
  border-color: color-mix(in srgb, var(--spedire-border) 65%, transparent);
}

html[data-theme="dark"] .couriers-wrapper .table thead.table-head-custom > tr > th {
  background-color: color-mix(in srgb, var(--dark-card-bg, #111827) 88%, var(--spedire-border)) !important;
  color: var(--dark-muted-color, #94a3b8) !important;
  border-color: var(--spedire-border) !important;
  box-shadow: none !important;
  --bs-table-bg: transparent;
  --bs-table-accent-bg: transparent;
  --bs-table-color: var(--dark-muted-color, #94a3b8);
}

html[data-theme="dark"] .couriers-wrapper .table thead.table-head-custom {
  background-color: color-mix(in srgb, var(--dark-card-bg, #111827) 88%, var(--spedire-border)) !important;
}

html[data-theme="dark"] .couriers-wrapper .table-hover-custom tbody tr:hover {
  background-color: color-mix(in srgb, var(--theme-primary) 10%, var(--dark-card-bg)) !important;
}

html[data-theme="dark"] .couriers-wrapper .dropdown-menu {
  background-color: var(--dark-card-bg);
  border-color: var(--spedire-border);
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.45);
}

html[data-theme="dark"] .couriers-wrapper .dropdown-item {
  color: var(--spedire-text);
}

html[data-theme="dark"] .couriers-wrapper .dropdown-item:hover,
html[data-theme="dark"] .couriers-wrapper .dropdown-item:focus {
  background-color: color-mix(in srgb, var(--theme-primary) 14%, var(--dark-card-bg));
  color: var(--spedire-text);
}

html[data-theme="dark"] .couriers-wrapper .dropdown-divider {
  border-color: var(--spedire-border);
  opacity: 1;
}

html[data-theme="dark"] .couriers-wrapper .btn-icon-only-dropdown {
  color: var(--spedire-text);
}

html[data-theme="dark"] .couriers-wrapper .btn-icon-only-dropdown:hover {
  background-color: color-mix(in srgb, var(--spedire-text) 8%, transparent);
}

html[data-theme="dark"] .couriers-wrapper .couriers-pagination .page-link {
  background-color: var(--dark-card-bg);
  border-color: var(--spedire-border);
  color: var(--spedire-text);
}

html[data-theme="dark"] .couriers-wrapper .couriers-pagination .page-link:hover {
  background-color: color-mix(in srgb, var(--spedire-text) 8%, var(--dark-card-bg));
  color: var(--spedire-text);
  border-color: var(--spedire-border);
}

html[data-theme="dark"] .couriers-wrapper .couriers-pagination .page-item.active .page-link {
  background-color: var(--theme-primary);
  border-color: var(--theme-primary);
  color: #fff;
}

html[data-theme="dark"] .couriers-wrapper .couriers-pagination .page-item.disabled .page-link {
  background-color: var(--dark-card-bg);
  border-color: var(--spedire-border);
  color: var(--dark-muted-color);
}

/* --- user/couriers/credentials — dark --- */
html[data-theme="dark"] .courier-edit-wrapper {
  background-color: var(--spedire-bg) !important;
  color: var(--spedire-text);
}

html[data-theme="dark"] .courier-edit-wrapper .card {
  background-color: var(--dark-card-bg, #111827) !important;
  border-color: var(--spedire-border, #334155) !important;
  color: var(--spedire-text);
}

html[data-theme="dark"] .courier-edit-wrapper .card-body {
  color: inherit;
}

html[data-theme="dark"] .courier-edit-wrapper .card-header.bg-white {
  background-color: color-mix(in srgb, var(--dark-card-bg) 92%, var(--spedire-border)) !important;
  border-color: var(--spedire-border) !important;
  color: var(--spedire-text);
}

html[data-theme="dark"] .courier-edit-wrapper .bg-light-contrast {
  background-color: color-mix(in srgb, var(--dark-card-bg) 90%, var(--spedire-border)) !important;
  border-color: var(--spedire-border) !important;
  color: var(--spedire-text);
}

html[data-theme="dark"] .courier-edit-wrapper .bg-light-contrast h6 {
  color: inherit;
}

html[data-theme="dark"] .courier-edit-wrapper .btn-outline-secondary {
  color: var(--spedire-text);
  border-color: var(--spedire-border);
  background-color: color-mix(in srgb, var(--dark-card-bg) 88%, transparent);
}

html[data-theme="dark"] .courier-edit-wrapper .btn-outline-secondary:hover,
html[data-theme="dark"] .courier-edit-wrapper .btn-outline-secondary:focus {
  background-color: color-mix(in srgb, var(--spedire-text) 10%, var(--dark-card-bg));
  color: var(--spedire-text);
  border-color: var(--spedire-border);
}

/* blade-views (credentials): .form-floating > label { color: #64748b } senza scope dark */
html[data-theme="dark"] .courier-edit-wrapper .form-floating > label {
  color: var(--dark-muted-color, #94a3b8) !important;
}

html[data-theme="dark"] .courier-edit-wrapper .form-floating > .form-control,
html[data-theme="dark"] .courier-edit-wrapper .form-floating > .form-select {
  background-color: var(--dark-input-bg, #0b1220);
  border-color: var(--spedire-border);
  color: var(--spedire-text);
}

html[data-theme="dark"] .courier-edit-wrapper .form-floating > .form-control:focus,
html[data-theme="dark"] .courier-edit-wrapper .form-floating > .form-select:focus {
  background-color: var(--dark-input-bg, #0b1220);
  border-color: var(--theme-primary, var(--spedire-primary));
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--theme-primary, var(--spedire-primary)) 22%, transparent);
}

html[data-theme="dark"] .courier-edit-wrapper .form-floating > .form-control::placeholder {
  color: var(--dark-muted-color, #94a3b8);
}

html[data-theme="dark"] .courier-edit-wrapper .border-top {
  border-color: var(--spedire-border) !important;
}

html[data-theme="dark"] .courier-edit-wrapper .card-body strong {
  color: color-mix(in srgb, var(--spedire-text) 88%, var(--dark-muted-color));
}

/* --- user/couriers/settings — dark --- */
html[data-theme="dark"] .courier-settings-wrapper {
  background-color: var(--spedire-bg) !important;
  color: var(--spedire-text);
}

html[data-theme="dark"] .courier-settings-wrapper .card {
  background-color: var(--dark-card-bg, #111827) !important;
  border-color: var(--spedire-border, #334155) !important;
  color: var(--spedire-text);
}

html[data-theme="dark"] .courier-settings-wrapper .card-body {
  color: inherit;
}

html[data-theme="dark"] .courier-settings-wrapper .btn-outline-secondary {
  color: var(--spedire-text);
  border-color: var(--spedire-border);
  background-color: color-mix(in srgb, var(--dark-card-bg) 88%, transparent);
}

html[data-theme="dark"] .courier-settings-wrapper .btn-outline-secondary:hover,
html[data-theme="dark"] .courier-settings-wrapper .btn-outline-secondary:focus {
  background-color: color-mix(in srgb, var(--spedire-text) 10%, var(--dark-card-bg));
  color: var(--spedire-text);
  border-color: var(--spedire-border);
}

html[data-theme="dark"] .courier-settings-wrapper .form-floating > label {
  color: var(--dark-muted-color, #94a3b8) !important;
}

html[data-theme="dark"] .courier-settings-wrapper .form-floating > .form-control,
html[data-theme="dark"] .courier-settings-wrapper .form-floating > .form-select {
  background-color: var(--dark-input-bg, #0b1220);
  border-color: var(--spedire-border);
  color: var(--spedire-text);
}

html[data-theme="dark"] .courier-settings-wrapper .form-floating > .form-control:focus,
html[data-theme="dark"] .courier-settings-wrapper .form-floating > .form-select:focus {
  background-color: var(--dark-input-bg, #0b1220);
  border-color: var(--theme-primary, var(--spedire-primary));
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--theme-primary, var(--spedire-primary)) 22%, transparent);
}

html[data-theme="dark"] .courier-settings-wrapper .form-floating > .form-control::placeholder {
  color: var(--dark-muted-color, #94a3b8);
}

html[data-theme="dark"] .courier-settings-wrapper .border-top {
  border-color: var(--spedire-border) !important;
}

/* --- user/api/index — dark --- */
html[data-theme="dark"] .api-keys-wrapper {
  background-color: var(--spedire-bg) !important;
  color: var(--spedire-text);
}

html[data-theme="dark"] .api-keys-wrapper .card {
  background-color: var(--dark-card-bg, #111827) !important;
  border-color: var(--spedire-border, #334155) !important;
  color: var(--spedire-text);
}

html[data-theme="dark"] .api-keys-wrapper .card-body {
  color: inherit;
}

html[data-theme="dark"] .api-keys-wrapper .empty-state-card,
html[data-theme="dark"] .api-keys-wrapper .api-keys-filters-card {
  background-color: var(--dark-card-bg, #111827) !important;
  border-color: var(--spedire-border) !important;
}

html[data-theme="dark"] .api-keys-wrapper .form-control-modern,
html[data-theme="dark"] .api-keys-wrapper .form-select-modern {
  background-color: var(--dark-input-bg, #0b1220);
  border-color: var(--spedire-border);
  color: var(--spedire-text);
}

html[data-theme="dark"] .api-keys-wrapper .form-control-modern:focus,
html[data-theme="dark"] .api-keys-wrapper .form-select-modern:focus {
  background-color: var(--dark-input-bg, #0b1220);
  border-color: var(--theme-primary);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--theme-primary) 22%, transparent);
}

html[data-theme="dark"] .api-keys-wrapper .form-control-modern::placeholder {
  color: var(--dark-muted-color, #94a3b8);
}

html[data-theme="dark"] .api-keys-wrapper .form-label.text-muted {
  color: var(--dark-muted-color, #94a3b8) !important;
}

html[data-theme="dark"] .api-keys-wrapper .alert.alert-light {
  background-color: color-mix(in srgb, var(--dark-card-bg) 94%, var(--spedire-border)) !important;
  border-color: var(--spedire-border) !important;
  color: var(--spedire-text) !important;
}

html[data-theme="dark"] .api-keys-wrapper .table {
  --bs-table-bg: transparent;
  --bs-table-color: var(--spedire-text);
  color: var(--spedire-text);
}

html[data-theme="dark"] .api-keys-wrapper .table td,
html[data-theme="dark"] .api-keys-wrapper .table th {
  border-color: color-mix(in srgb, var(--spedire-border) 65%, transparent);
}

html[data-theme="dark"] .api-keys-wrapper .table thead.table-head-custom > tr > th {
  background-color: color-mix(in srgb, var(--dark-card-bg, #111827) 88%, var(--spedire-border)) !important;
  color: var(--dark-muted-color, #94a3b8) !important;
  border-color: var(--spedire-border) !important;
  box-shadow: none !important;
  --bs-table-bg: transparent;
  --bs-table-accent-bg: transparent;
  --bs-table-color: var(--dark-muted-color, #94a3b8);
}

html[data-theme="dark"] .api-keys-wrapper .table thead.table-head-custom {
  background-color: color-mix(in srgb, var(--dark-card-bg, #111827) 88%, var(--spedire-border)) !important;
}

html[data-theme="dark"] .api-keys-wrapper .table-hover tbody tr:hover {
  background-color: color-mix(in srgb, var(--theme-primary) 10%, var(--dark-card-bg)) !important;
}

html[data-theme="dark"] .api-keys-wrapper code.text-muted.bg-light,
html[data-theme="dark"] .api-keys-wrapper code.bg-light {
  background-color: color-mix(in srgb, var(--spedire-text) 8%, var(--dark-card-bg)) !important;
  color: var(--dark-muted-color, #94a3b8) !important;
  border-color: var(--spedire-border) !important;
}

html[data-theme="dark"] .api-keys-wrapper .dropdown-menu {
  background-color: var(--dark-card-bg);
  border-color: var(--spedire-border);
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.45);
}

html[data-theme="dark"] .api-keys-wrapper .dropdown-item {
  color: var(--spedire-text);
}

html[data-theme="dark"] .api-keys-wrapper .dropdown-item:hover,
html[data-theme="dark"] .api-keys-wrapper .dropdown-item:focus {
  background-color: color-mix(in srgb, var(--theme-primary) 14%, var(--dark-card-bg));
  color: var(--spedire-text);
}

html[data-theme="dark"] .api-keys-wrapper .dropdown-divider {
  border-color: var(--spedire-border);
  opacity: 1;
}

html[data-theme="dark"] .api-keys-wrapper .btn-icon-only-dropdown {
  color: var(--spedire-text);
}

html[data-theme="dark"] .api-keys-wrapper .btn-icon-only-dropdown:hover {
  background-color: color-mix(in srgb, var(--spedire-text) 8%, transparent);
}

html[data-theme="dark"] .api-keys-wrapper .btn-white {
  background-color: color-mix(in srgb, var(--spedire-text) 10%, var(--dark-card-bg)) !important;
  border-color: var(--spedire-border) !important;
  color: var(--spedire-text);
}

html[data-theme="dark"] .modal[id^="deleteModal"] .modal-content {
  background-color: var(--dark-card-bg);
  color: var(--spedire-text);
  border: 1px solid var(--spedire-border);
}

html[data-theme="dark"] .modal[id^="deleteModal"] .btn-close {
  filter: invert(1) grayscale(100%);
  opacity: 0.75;
}

html[data-theme="dark"] .modal[id^="deleteModal"] .btn-light {
  background-color: color-mix(in srgb, var(--spedire-text) 8%, var(--dark-card-bg));
  border-color: var(--spedire-border);
  color: var(--spedire-text);
}

html[data-theme="dark"] .modal[id^="deleteModal"] .alert.alert-light {
  background-color: color-mix(in srgb, var(--dark-card-bg) 94%, var(--spedire-border)) !important;
  border-color: var(--spedire-border) !important;
  color: var(--spedire-text) !important;
}

html[data-theme="dark"] .modal[id^="deleteModal"] .modal-body .text-secondary {
  color: var(--dark-muted-color, #94a3b8) !important;
}

/* --- user/api/create + edit — dark --- */
html[data-theme="dark"] .api-create-wrapper,
html[data-theme="dark"] .api-edit-wrapper {
  background-color: var(--spedire-bg) !important;
  color: var(--spedire-text);
}

html[data-theme="dark"] .api-create-wrapper .card,
html[data-theme="dark"] .api-edit-wrapper .card {
  background-color: var(--dark-card-bg, #111827) !important;
  border-color: var(--spedire-border, #334155) !important;
  color: var(--spedire-text);
}

html[data-theme="dark"] .api-create-wrapper .card-body,
html[data-theme="dark"] .api-edit-wrapper .card-body {
  color: inherit;
}

html[data-theme="dark"] .api-create-wrapper .card-header.bg-white,
html[data-theme="dark"] .api-edit-wrapper .card-header.bg-white,
html[data-theme="dark"] .api-create-wrapper .card-footer.bg-white,
html[data-theme="dark"] .api-edit-wrapper .card-footer.bg-white {
  background-color: color-mix(in srgb, var(--dark-card-bg) 92%, var(--spedire-border)) !important;
  border-color: var(--spedire-border) !important;
  color: var(--spedire-text);
}

html[data-theme="dark"] .api-create-wrapper .bg-light-contrast,
html[data-theme="dark"] .api-edit-wrapper .bg-light-contrast {
  background-color: color-mix(in srgb, var(--dark-card-bg) 90%, var(--spedire-border)) !important;
  border-color: var(--spedire-border) !important;
  color: var(--spedire-text);
}

html[data-theme="dark"] .api-create-wrapper .card.bg-primary-subtle,
html[data-theme="dark"] .api-edit-wrapper .card.bg-primary-subtle {
  background-color: color-mix(in srgb, var(--theme-primary, var(--spedire-primary)) 16%, var(--dark-card-bg)) !important;
  border-color: var(--spedire-border) !important;
}

html[data-theme="dark"] .api-create-wrapper .btn-outline-secondary,
html[data-theme="dark"] .api-edit-wrapper .btn-outline-secondary {
  color: var(--spedire-text);
  border-color: var(--spedire-border);
  background-color: color-mix(in srgb, var(--dark-card-bg) 88%, transparent);
}

html[data-theme="dark"] .api-create-wrapper .btn-outline-secondary:hover,
html[data-theme="dark"] .api-create-wrapper .btn-outline-secondary:focus,
html[data-theme="dark"] .api-edit-wrapper .btn-outline-secondary:hover,
html[data-theme="dark"] .api-edit-wrapper .btn-outline-secondary:focus {
  background-color: color-mix(in srgb, var(--spedire-text) 10%, var(--dark-card-bg));
  color: var(--spedire-text);
  border-color: var(--spedire-border);
}

html[data-theme="dark"] .api-create-wrapper .btn-outline-danger,
html[data-theme="dark"] .api-edit-wrapper .btn-outline-danger {
  color: #fca5a5;
  border-color: color-mix(in srgb, #f87171 55%, var(--spedire-border));
  background-color: transparent;
}

html[data-theme="dark"] .api-create-wrapper .btn-outline-danger:hover,
html[data-theme="dark"] .api-create-wrapper .btn-outline-danger:focus,
html[data-theme="dark"] .api-edit-wrapper .btn-outline-danger:hover,
html[data-theme="dark"] .api-edit-wrapper .btn-outline-danger:focus {
  background-color: color-mix(in srgb, #dc2626 38%, var(--dark-card-bg));
  color: #fef2f2;
  border-color: #f87171;
}

html[data-theme="dark"] .api-create-wrapper .form-floating > label,
html[data-theme="dark"] .api-edit-wrapper .form-floating > label {
  color: var(--dark-muted-color, #94a3b8) !important;
}

html[data-theme="dark"] .api-create-wrapper .form-floating > .form-control,
html[data-theme="dark"] .api-create-wrapper .form-floating > .form-select,
html[data-theme="dark"] .api-edit-wrapper .form-floating > .form-control,
html[data-theme="dark"] .api-edit-wrapper .form-floating > .form-select {
  background-color: var(--dark-input-bg, #0b1220);
  border-color: var(--spedire-border);
  color: var(--spedire-text);
}

html[data-theme="dark"] .api-create-wrapper .form-floating > .form-control:focus,
html[data-theme="dark"] .api-create-wrapper .form-floating > .form-select:focus,
html[data-theme="dark"] .api-edit-wrapper .form-floating > .form-control:focus,
html[data-theme="dark"] .api-edit-wrapper .form-floating > .form-select:focus {
  background-color: var(--dark-input-bg, #0b1220);
  border-color: var(--theme-primary, var(--spedire-primary));
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--theme-primary, var(--spedire-primary)) 22%, transparent);
}

html[data-theme="dark"] .api-create-wrapper .form-floating > .form-control::placeholder,
html[data-theme="dark"] .api-edit-wrapper .form-floating > .form-control::placeholder {
  color: var(--dark-muted-color, #94a3b8);
}

html[data-theme="dark"] .api-create-wrapper .whitelist-item .form-control,
html[data-theme="dark"] .api-create-wrapper .whitelist-item .form-select,
html[data-theme="dark"] .api-edit-wrapper .whitelist-item .form-control,
html[data-theme="dark"] .api-edit-wrapper .whitelist-item .form-select {
  background-color: var(--dark-input-bg, #0b1220);
  border-color: var(--spedire-border);
  color: var(--spedire-text);
}

html[data-theme="dark"] .api-create-wrapper .whitelist-item .form-control:focus,
html[data-theme="dark"] .api-create-wrapper .whitelist-item .form-select:focus,
html[data-theme="dark"] .api-edit-wrapper .whitelist-item .form-control:focus,
html[data-theme="dark"] .api-edit-wrapper .whitelist-item .form-select:focus {
  background-color: var(--dark-input-bg, #0b1220);
  border-color: var(--theme-primary, var(--spedire-primary));
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--theme-primary, var(--spedire-primary)) 22%, transparent);
}

html[data-theme="dark"] .api-create-wrapper .form-text,
html[data-theme="dark"] .api-edit-wrapper .form-text {
  color: var(--dark-muted-color, #94a3b8);
}

html[data-theme="dark"] .api-create-wrapper .form-check-input,
html[data-theme="dark"] .api-edit-wrapper .form-check-input {
  background-color: var(--dark-input-bg, #0b1220);
  border-color: var(--spedire-border);
}

html[data-theme="dark"] .api-create-wrapper .form-check-input:checked,
html[data-theme="dark"] .api-edit-wrapper .form-check-input:checked {
  background-color: var(--theme-primary, var(--spedire-primary));
  border-color: var(--theme-primary, var(--spedire-primary));
}

html[data-theme="dark"] .api-edit-wrapper .input-group-modern .form-control.bg-light {
  background-color: color-mix(in srgb, var(--spedire-text) 6%, var(--dark-card-bg)) !important;
  border-color: var(--spedire-border);
  color: var(--spedire-text);
}

html[data-theme="dark"] .api-edit-wrapper .input-group-modern .btn-light {
  background-color: color-mix(in srgb, var(--spedire-text) 8%, var(--dark-card-bg));
  border-color: var(--spedire-border);
  color: var(--spedire-text);
}

html[data-theme="dark"] .api-edit-wrapper .form-control.bg-light:not(.border-end-0) {
  background-color: color-mix(in srgb, var(--spedire-text) 6%, var(--dark-card-bg)) !important;
  border-color: var(--spedire-border);
  color: var(--dark-muted-color);
}

html[data-theme="dark"] .api-edit-wrapper .input-group-modern .form-control.font-monospace.text-danger {
  color: #fca5a5 !important;
}

html[data-theme="dark"] .api-edit-wrapper .alert.bg-warning-subtle.text-warning-emphasis,
html[data-theme="dark"] .api-edit-wrapper .alert.alert-warning.bg-warning-subtle {
  background-color: color-mix(in srgb, #eab308 26%, var(--dark-card-bg)) !important;
  color: #fef08a !important;
  border-color: color-mix(in srgb, #eab308 38%, var(--spedire-border)) !important;
}

html[data-theme="dark"] .api-edit-wrapper .btn-link.text-danger {
  color: #fca5a5 !important;
}

html[data-theme="dark"] .api-edit-wrapper .btn-link.text-danger:hover,
html[data-theme="dark"] .api-edit-wrapper .btn-link.text-danger:focus {
  color: #fecaca !important;
}

html[data-theme="dark"] #regenerateModal .alert.bg-warning-subtle.text-warning-emphasis,
html[data-theme="dark"] #regenerateModal .alert.alert-warning.bg-warning-subtle {
  background-color: color-mix(in srgb, #eab308 26%, var(--dark-card-bg)) !important;
  color: #fef08a !important;
  border-color: color-mix(in srgb, #eab308 38%, var(--spedire-border)) !important;
}

/* --- user/wallet (index, transactions, recharge) — dark --- */
html[data-theme="dark"] .wallet-wrapper {
  background-color: var(--spedire-bg) !important;
  color: var(--spedire-text);
  color-scheme: dark;
}

html[data-theme="dark"] .wallet-wrapper .wallet-section-card,
html[data-theme="dark"] .wallet-wrapper .kpi-card {
  border-color: var(--spedire-border, #334155) !important;
}

/* Card body (filtri / tabella): evita fondi chiari da variabili Bootstrap */
html[data-theme="dark"] .wallet-wrapper .card.wallet-section-card .card-body {
  background-color: transparent !important;
  color: inherit;
}

/* Filtri transazioni: date + select espliciti sullo sfondo card */
html[data-theme="dark"] .wallet-wrapper .wallet-section-card .form-control,
html[data-theme="dark"] .wallet-wrapper .wallet-section-card .form-select {
  background-color: var(--dark-input-bg, #0b1220);
  border-color: var(--spedire-border);
  color: var(--spedire-text);
}

html[data-theme="dark"] .wallet-wrapper .wallet-section-card .form-control:focus,
html[data-theme="dark"] .wallet-wrapper .wallet-section-card .form-select:focus {
  background-color: var(--dark-input-bg, #0b1220);
  border-color: var(--theme-primary);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--theme-primary) 22%, transparent);
  color: var(--spedire-text);
}

html[data-theme="dark"] .wallet-wrapper .kpi-icon {
  background-color: color-mix(in srgb, var(--spedire-text) 8%, var(--dark-card-bg));
  color: var(--spedire-text);
}

html[data-theme="dark"] .wallet-wrapper .badge-soft {
  background-color: color-mix(in srgb, var(--spedire-text) 6%, var(--dark-card-bg));
  border-color: var(--spedire-border);
  color: var(--dark-muted-color);
}

html[data-theme="dark"] .wallet-wrapper .input-group-modern .input-group-text.bg-white {
  background-color: var(--dark-input-bg, #0b1220) !important;
  border-color: var(--spedire-border);
  color: var(--dark-muted-color);
}

html[data-theme="dark"] .wallet-wrapper .input-group-modern .form-control {
  background-color: var(--dark-input-bg, #0b1220);
  border-color: var(--spedire-border);
  color: var(--spedire-text);
}

html[data-theme="dark"] .wallet-wrapper .input-group-modern .form-control:focus {
  background-color: var(--dark-input-bg, #0b1220);
  border-color: var(--theme-primary);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--theme-primary) 22%, transparent);
}

html[data-theme="dark"] .wallet-wrapper .method-pill-btn {
  background-color: var(--dark-card-bg);
  border-color: var(--spedire-border);
  color: var(--spedire-text);
}

html[data-theme="dark"] .wallet-wrapper .method-radio:checked + .method-pill-btn {
  background-color: color-mix(in srgb, var(--theme-primary) 14%, var(--dark-card-bg));
  border-color: var(--theme-primary);
}

html[data-theme="dark"] .wallet-wrapper .badge.bg-light.text-dark {
  background-color: color-mix(in srgb, var(--spedire-text) 8%, var(--dark-card-bg)) !important;
  color: var(--spedire-text) !important;
  border-color: var(--spedire-border) !important;
}

html[data-theme="dark"] .wallet-wrapper .table {
  --bs-table-bg: transparent;
  --bs-table-color: var(--spedire-text);
  color: var(--spedire-text);
}

html[data-theme="dark"] .wallet-wrapper .table td,
html[data-theme="dark"] .wallet-wrapper .table th {
  border-color: color-mix(in srgb, var(--spedire-border) 65%, transparent);
}

html[data-theme="dark"] .wallet-wrapper .table thead.table-head-custom > tr > th {
  background-color: color-mix(in srgb, var(--dark-card-bg, #111827) 88%, var(--spedire-border)) !important;
  color: var(--dark-muted-color, #94a3b8) !important;
  border-color: var(--spedire-border) !important;
  box-shadow: none !important;
  --bs-table-bg: transparent;
  --bs-table-accent-bg: transparent;
  --bs-table-color: var(--dark-muted-color, #94a3b8);
}

html[data-theme="dark"] .wallet-wrapper .table thead.table-head-custom {
  background-color: color-mix(in srgb, var(--dark-card-bg, #111827) 88%, var(--spedire-border)) !important;
}

html[data-theme="dark"] .wallet-wrapper .table-hover-custom tbody tr:hover {
  background-color: color-mix(in srgb, var(--theme-primary) 10%, var(--dark-card-bg)) !important;
}

html[data-theme="dark"] .wallet-wrapper .alert.alert-info {
  background-color: color-mix(in srgb, var(--theme-primary) 14%, var(--dark-card-bg)) !important;
  border-color: var(--spedire-border) !important;
  color: var(--spedire-text) !important;
}

html[data-theme="dark"] .wallet-wrapper .collapse-row .collapse > .border-top.p-4 {
  background-color: color-mix(in srgb, var(--dark-card-bg) 90%, var(--theme-primary) 10%) !important;
  border-color: var(--spedire-border) !important;
}

html[data-theme="dark"] .wallet-wrapper .pagination .page-link {
  background-color: var(--dark-card-bg);
  border-color: var(--spedire-border);
  color: var(--spedire-text);
}

html[data-theme="dark"] .wallet-wrapper .pagination .page-link:hover {
  background-color: color-mix(in srgb, var(--spedire-text) 8%, var(--dark-card-bg));
  color: var(--spedire-text);
  border-color: var(--spedire-border);
}

html[data-theme="dark"] .wallet-wrapper .pagination .page-item.active .page-link {
  background-color: var(--theme-primary);
  border-color: var(--theme-primary);
  color: #fff;
}

html[data-theme="dark"] .wallet-wrapper .pagination .page-item.disabled .page-link {
  background-color: var(--dark-card-bg);
  border-color: var(--spedire-border);
  color: var(--dark-muted-color);
}

/* Paginazione sotto tabella (nav + ul.pagination Bootstrap 5) */
html[data-theme="dark"] .wallet-wrapper nav .pagination .page-link {
  background-color: var(--dark-card-bg);
  border-color: var(--spedire-border);
  color: var(--spedire-text);
}

html[data-theme="dark"] .wallet-wrapper nav .pagination .page-link:hover {
  background-color: color-mix(in srgb, var(--spedire-text) 8%, var(--dark-card-bg));
  color: var(--spedire-text);
  border-color: var(--spedire-border);
}

html[data-theme="dark"] .wallet-wrapper nav .pagination .page-item.active .page-link {
  background-color: var(--theme-primary);
  border-color: var(--theme-primary);
  color: #fff;
}

html[data-theme="dark"] .wallet-wrapper nav .pagination .page-item.disabled .page-link {
  background-color: var(--dark-card-bg);
  border-color: var(--spedire-border);
  color: var(--dark-muted-color);
}

html[data-theme="dark"] #walletAmountGroup.wallet-error .input-group-text {
  background-color: color-mix(in srgb, #f87171 28%, var(--dark-card-bg)) !important;
  border-color: #f87171 !important;
  color: #fecaca !important;
}

html[data-theme="dark"] #walletAmountGroup.wallet-error .form-control {
  border-color: #f87171 !important;
}

html[data-theme="dark"] #walletAmountGroup.wallet-error .form-control:focus {
  border-color: #f87171 !important;
  box-shadow: 0 0 0 0.2rem color-mix(in srgb, #f87171 35%, transparent) !important;
}

/* Ricarica wallet: .page-wrapper è usato solo qui */
html[data-theme="dark"] .page-wrapper {
  background-color: var(--spedire-bg) !important;
  color: var(--spedire-text);
}

html[data-theme="dark"] .page-wrapper .page-card,
html[data-theme="dark"] .page-wrapper .section-card,
html[data-theme="dark"] .page-wrapper .kpi-card {
  background-color: var(--dark-card-bg, #111827) !important;
  border-color: var(--spedire-border) !important;
  color: var(--spedire-text);
}

html[data-theme="dark"] .page-wrapper .kpi-icon {
  background-color: color-mix(in srgb, var(--spedire-text) 8%, var(--dark-card-bg));
  color: var(--spedire-text);
}

html[data-theme="dark"] .page-wrapper .input-group-modern .input-group-text.bg-white {
  background-color: var(--dark-input-bg, #0b1220) !important;
  border-color: var(--spedire-border);
  color: var(--dark-muted-color);
}

html[data-theme="dark"] .page-wrapper .input-group-modern .form-control {
  background-color: var(--dark-input-bg, #0b1220);
  border-color: var(--spedire-border);
  color: var(--spedire-text);
}

html[data-theme="dark"] .page-wrapper .input-group-modern .form-control:focus {
  background-color: var(--dark-input-bg, #0b1220);
  border-color: var(--theme-primary);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--theme-primary) 22%, transparent);
}

html[data-theme="dark"] .page-wrapper .method-pill-btn {
  background-color: var(--dark-card-bg);
  border-color: var(--spedire-border);
  color: var(--spedire-text);
}

html[data-theme="dark"] .page-wrapper .method-radio:checked + .method-pill-btn {
  background-color: color-mix(in srgb, var(--theme-primary) 14%, var(--dark-card-bg));
  border-color: var(--theme-primary);
}

html[data-theme="dark"] #walletCheckoutModal .modal-content {
  background-color: var(--dark-card-bg);
  color: var(--spedire-text);
  border: 1px solid var(--spedire-border);
}

html[data-theme="dark"] #walletCheckoutModal .modal-header,
html[data-theme="dark"] #walletCheckoutModal .modal-footer {
  border-color: var(--spedire-border);
}

html[data-theme="dark"] #walletCheckoutModal .btn-close {
  filter: invert(1) grayscale(100%);
  opacity: 0.75;
}

html[data-theme="dark"] #walletCheckoutModal .modal-body .p-3.rounded-3 {
  background-color: color-mix(in srgb, var(--dark-card-bg) 94%, var(--spedire-border)) !important;
  border-color: var(--spedire-border) !important;
}

html[data-theme="dark"] #walletCheckoutModal .modal-body .text-muted {
  color: var(--dark-muted-color, #94a3b8) !important;
}

/* --- user/settings/edit — dark --- */
html[data-theme="dark"] .settings-wrapper {
  color-scheme: dark;
}

html[data-theme="dark"] .settings-wrapper .card {
  background-color: var(--dark-card-bg, #111827) !important;
  border-color: var(--spedire-border, #334155) !important;
  color: var(--spedire-text);
}

html[data-theme="dark"] .settings-wrapper .card-body {
  background-color: transparent !important;
  color: inherit;
}

html[data-theme="dark"] .settings-wrapper .card-footer.bg-white,
html[data-theme="dark"] .settings-wrapper .card-header.bg-white {
  background-color: color-mix(in srgb, var(--dark-card-bg) 92%, var(--spedire-border)) !important;
  border-color: var(--spedire-border) !important;
  color: var(--spedire-text);
}

html[data-theme="dark"] .settings-wrapper .nav-tabs-modern {
  border-bottom-color: var(--spedire-border);
}

html[data-theme="dark"] .settings-wrapper .nav-tabs-modern .nav-link {
  color: var(--dark-muted-color, #94a3b8);
}

html[data-theme="dark"] .settings-wrapper .nav-tabs-modern .nav-link:hover {
  color: var(--spedire-text);
}

html[data-theme="dark"] .settings-wrapper .nav-tabs-modern .nav-link.active {
  color: var(--theme-primary);
  border-bottom-color: var(--theme-primary);
}

html[data-theme="dark"] .settings-wrapper .bg-light-contrast {
  background-color: color-mix(in srgb, var(--dark-card-bg) 90%, var(--spedire-border)) !important;
  border-color: var(--spedire-border) !important;
  color: var(--spedire-text);
}

html[data-theme="dark"] .settings-wrapper .bg-light-subtle {
  background-color: color-mix(in srgb, var(--spedire-text) 6%, var(--dark-card-bg)) !important;
  color: var(--dark-muted-color) !important;
  border-color: var(--spedire-border) !important;
}

html[data-theme="dark"] .settings-wrapper .table {
  --bs-table-bg: transparent;
  --bs-table-color: var(--spedire-text);
  color: var(--spedire-text);
}

html[data-theme="dark"] .settings-wrapper .table td,
html[data-theme="dark"] .settings-wrapper .table th {
  border-color: color-mix(in srgb, var(--spedire-border) 65%, transparent);
}

html[data-theme="dark"] .settings-wrapper .table thead.bg-light-contrast th,
html[data-theme="dark"] .settings-wrapper .table thead.bg-light th {
  background-color: color-mix(in srgb, var(--dark-card-bg) 88%, var(--spedire-border)) !important;
  color: var(--dark-muted-color, #94a3b8) !important;
  border-color: var(--spedire-border);
}

html[data-theme="dark"] .settings-wrapper .table-hover tbody tr:hover {
  background-color: color-mix(in srgb, var(--theme-primary) 10%, var(--dark-card-bg)) !important;
}

html[data-theme="dark"] .settings-wrapper .dropdown-menu {
  background-color: var(--dark-card-bg);
  border-color: var(--spedire-border);
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.45);
}

html[data-theme="dark"] .settings-wrapper .dropdown-item {
  color: var(--spedire-text);
}

html[data-theme="dark"] .settings-wrapper .dropdown-item:hover,
html[data-theme="dark"] .settings-wrapper .dropdown-item:focus {
  background-color: color-mix(in srgb, var(--theme-primary) 14%, var(--dark-card-bg));
  color: var(--spedire-text);
}

html[data-theme="dark"] .settings-wrapper .dropdown-divider {
  border-color: var(--spedire-border);
  opacity: 1;
}

html[data-theme="dark"] .settings-wrapper .btn-light {
  background-color: color-mix(in srgb, var(--spedire-text) 8%, var(--dark-card-bg));
  border-color: var(--spedire-border);
  color: var(--spedire-text);
}

html[data-theme="dark"] .settings-wrapper .select2-floating .select2-container--bootstrap-5 .select2-selection--single,
html[data-theme="dark"] .settings-wrapper .select2-floating .select2-container--bootstrap-5 .select2-selection--multiple {
  background-color: var(--dark-input-bg, #0b1220) !important;
  background-image: none !important;
  border-color: var(--spedire-border) !important;
  color: var(--spedire-text);
}

html[data-theme="dark"] .settings-wrapper .select2-floating .select2-container--bootstrap-5 .select2-selection--single .select2-selection__rendered,
html[data-theme="dark"] .settings-wrapper .select2-floating .select2-container--bootstrap-5 .select2-selection--multiple .select2-selection__rendered {
  color: var(--spedire-text);
}

/* --- user/marketplaces/index — dark --- */
html[data-theme="dark"] .marketplaces-wrapper {
  background-color: var(--spedire-bg) !important;
  color: var(--spedire-text);
}

html[data-theme="dark"] .marketplaces-wrapper .table {
  --bs-table-bg: transparent;
  --bs-table-color: var(--spedire-text);
  color: var(--spedire-text);
}

html[data-theme="dark"] .marketplaces-wrapper .table td,
html[data-theme="dark"] .marketplaces-wrapper .table th {
  border-color: color-mix(in srgb, var(--spedire-border) 65%, transparent);
}

html[data-theme="dark"] .marketplaces-wrapper .table thead.table-head-custom > tr > th {
  background-color: color-mix(in srgb, var(--dark-card-bg, #111827) 88%, var(--spedire-border)) !important;
  color: var(--dark-muted-color, #94a3b8) !important;
  border-color: var(--spedire-border) !important;
  box-shadow: none !important;
  --bs-table-bg: transparent;
  --bs-table-accent-bg: transparent;
  --bs-table-color: var(--dark-muted-color, #94a3b8);
}

html[data-theme="dark"] .marketplaces-wrapper .table thead.table-head-custom {
  background-color: color-mix(in srgb, var(--dark-card-bg, #111827) 88%, var(--spedire-border)) !important;
}

html[data-theme="dark"] .marketplaces-wrapper .table-hover tbody tr:hover {
  background-color: color-mix(in srgb, var(--theme-primary) 10%, var(--dark-card-bg)) !important;
}

html[data-theme="dark"] .marketplaces-wrapper .input-group-modern .input-group-text {
  background-color: transparent !important;
  border-color: transparent !important;
  color: var(--dark-muted-color);
}

html[data-theme="dark"] .marketplaces-wrapper .input-group-modern .form-control {
  background-color: transparent !important;
  color: var(--spedire-text);
  border-color: transparent !important;
}

html[data-theme="dark"] .marketplaces-wrapper .input-group-modern .form-control::placeholder {
  color: var(--dark-muted-color);
}

html[data-theme="dark"] .marketplaces-wrapper .input-group-modern .btn-link {
  color: var(--dark-muted-color);
}

html[data-theme="dark"] .marketplaces-wrapper .badge.bg-light.text-secondary,
html[data-theme="dark"] .marketplaces-wrapper .badge.bg-light {
  background-color: color-mix(in srgb, var(--spedire-text) 8%, var(--dark-card-bg)) !important;
  color: var(--dark-muted-color) !important;
  border-color: var(--spedire-border) !important;
}

html[data-theme="dark"] .marketplaces-wrapper .border-light-subtle {
  border-color: var(--spedire-border) !important;
}

html[data-theme="dark"] .marketplaces-wrapper .btn-light:disabled,
html[data-theme="dark"] .marketplaces-wrapper .btn-light.disabled {
  background-color: color-mix(in srgb, var(--spedire-text) 6%, var(--dark-card-bg)) !important;
  color: var(--dark-muted-color) !important;
  border-color: var(--spedire-border) !important;
  opacity: 0.9;
}

/* Modali marketplace (fuori da .marketplaces-wrapper): disconnect-{id}, modal-{slug} keys/feed */
html[data-theme="dark"] .modal[id^="disconnect-"] .modal-content,
html[data-theme="dark"] .modal[id^="modal-"] .modal-content {
  background-color: var(--dark-card-bg);
  color: var(--spedire-text);
  border: 1px solid var(--spedire-border);
}

html[data-theme="dark"] .modal[id^="disconnect-"] .btn-close,
html[data-theme="dark"] .modal[id^="modal-"] .btn-close {
  filter: invert(1) grayscale(100%);
  opacity: 0.75;
}

html[data-theme="dark"] .modal[id^="disconnect-"] .btn-light,
html[data-theme="dark"] .modal[id^="modal-"] .btn-light {
  background-color: color-mix(in srgb, var(--spedire-text) 8%, var(--dark-card-bg));
  border-color: var(--spedire-border);
  color: var(--spedire-text);
}

html[data-theme="dark"] .modal[id^="modal-"] .form-control-modern,
html[data-theme="dark"] .modal[id^="modal-"] .form-select-sm {
  background-color: var(--dark-input-bg, #0b1220);
  border-color: var(--spedire-border);
  color: var(--spedire-text);
}

html[data-theme="dark"] .modal[id^="modal-"] .form-control-modern:focus,
html[data-theme="dark"] .modal[id^="modal-"] .form-select-sm:focus {
  background-color: var(--dark-input-bg, #0b1220);
  border-color: var(--theme-primary);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--theme-primary) 22%, transparent);
}

html[data-theme="dark"] .modal[id^="disconnect-"] .text-muted,
html[data-theme="dark"] .modal[id^="modal-"] .text-muted {
  color: var(--dark-muted-color, #94a3b8) !important;
}

/* --- user/marketplaces/edit — dark --- */
html[data-theme="dark"] .marketplace-edit-wrapper {
  background-color: var(--spedire-bg) !important;
  color: var(--spedire-text);
}

html[data-theme="dark"] .marketplace-edit-wrapper .card {
  background-color: var(--dark-card-bg, #111827) !important;
  border-color: var(--spedire-border, #334155) !important;
  color: var(--spedire-text);
}

html[data-theme="dark"] .marketplace-edit-wrapper .card-header.bg-white {
  background-color: color-mix(in srgb, var(--dark-card-bg) 92%, var(--spedire-border)) !important;
  border-color: var(--spedire-border) !important;
  color: var(--spedire-text);
}

html[data-theme="dark"] .marketplace-edit-wrapper .badge.bg-light {
  background-color: color-mix(in srgb, var(--spedire-text) 8%, var(--dark-card-bg)) !important;
  color: var(--dark-muted-color) !important;
  border-color: var(--spedire-border) !important;
}

html[data-theme="dark"] .marketplace-edit-wrapper .card-body {
  color: inherit;
}

html[data-theme="dark"] .marketplace-edit-wrapper .btn-outline-secondary {
  color: var(--spedire-text);
  border-color: var(--spedire-border);
  background-color: color-mix(in srgb, var(--dark-card-bg) 88%, transparent);
}

html[data-theme="dark"] .marketplace-edit-wrapper .btn-outline-secondary:hover,
html[data-theme="dark"] .marketplace-edit-wrapper .btn-outline-secondary:focus {
  background-color: color-mix(in srgb, var(--spedire-text) 10%, var(--dark-card-bg));
  color: var(--spedire-text);
  border-color: var(--spedire-border);
}

html[data-theme="dark"] .marketplace-edit-wrapper .btn-outline-danger {
  color: #fca5a5;
  border-color: color-mix(in srgb, #f87171 55%, var(--spedire-border));
  background-color: transparent;
}

html[data-theme="dark"] .marketplace-edit-wrapper .btn-outline-danger:hover,
html[data-theme="dark"] .marketplace-edit-wrapper .btn-outline-danger:focus {
  background-color: color-mix(in srgb, #dc2626 38%, var(--dark-card-bg));
  color: #fef2f2;
  border-color: #f87171;
}

/* Badge stato (blade-views: bg-*-subtle chiaro + !important) */
html[data-theme="dark"] .marketplace-edit-wrapper .badge.bg-success-subtle {
  background-color: color-mix(in srgb, #22c55e 22%, var(--dark-card-bg)) !important;
  color: #86efac !important;
}

html[data-theme="dark"] .marketplace-edit-wrapper .badge.border-success-subtle {
  border-color: color-mix(in srgb, #22c55e 42%, var(--spedire-border)) !important;
}

html[data-theme="dark"] .marketplace-edit-wrapper .badge.bg-warning-subtle {
  background-color: color-mix(in srgb, #eab308 24%, var(--dark-card-bg)) !important;
  color: #fde047 !important;
}

html[data-theme="dark"] .marketplace-edit-wrapper .badge.border-warning-subtle {
  border-color: color-mix(in srgb, #eab308 45%, var(--spedire-border)) !important;
}

html[data-theme="dark"] .marketplace-edit-wrapper .badge.bg-danger-subtle {
  background-color: color-mix(in srgb, #ef4444 22%, var(--dark-card-bg)) !important;
  color: #fca5a5 !important;
}

html[data-theme="dark"] .marketplace-edit-wrapper .badge.border-danger-subtle {
  border-color: color-mix(in srgb, #ef4444 42%, var(--spedire-border)) !important;
}

html[data-theme="dark"] .marketplace-edit-wrapper .badge.bg-secondary-subtle {
  background-color: color-mix(in srgb, var(--spedire-text) 12%, var(--dark-card-bg)) !important;
  color: var(--dark-muted-color, #94a3b8) !important;
}

html[data-theme="dark"] .marketplace-edit-wrapper .badge.border-secondary-subtle {
  border-color: var(--spedire-border) !important;
}

html[data-theme="dark"] #modalDeleteSingle .modal-content,
html[data-theme="dark"] #modalDeleteBulk .modal-content,
html[data-theme="dark"] #modalGenerateResult .modal-content,
html[data-theme="dark"] #deleteAddressModal .modal-content,
html[data-theme="dark"] #deleteContractModal .modal-content,
html[data-theme="dark"] #confirmDisconnectModal .modal-content,
html[data-theme="dark"] #regenerateModal .modal-content,
html[data-theme="dark"] #removePaymentModal .modal-content,
html[data-theme="dark"] #addCardConsentModal .modal-content,
html[data-theme="dark"] #modalRevokeSubuser .modal-content,
html[data-theme="dark"] #modalCancelPending .modal-content {
  background-color: var(--dark-card-bg);
  color: var(--spedire-text);
  border: 1px solid var(--spedire-border);
}

html[data-theme="dark"] #gatewayIframeModal .modal-content {
  background-color: var(--dark-card-bg);
  color: var(--spedire-text);
}

html[data-theme="dark"] #gatewayIframeModal .modal-header {
  border-color: var(--spedire-border);
}

html[data-theme="dark"] #modalDeleteSingle .modal-body.text-secondary,
html[data-theme="dark"] #modalDeleteBulk .modal-body.text-secondary {
  color: var(--dark-muted-color, #94a3b8) !important;
}

html[data-theme="dark"] #modalGenerateResult .modal-title.text-primary {
  color: var(--theme-primary) !important;
}

html[data-theme="dark"] #modalDeleteSingle .btn-light,
html[data-theme="dark"] #modalDeleteBulk .btn-light,
html[data-theme="dark"] #deleteContractModal .btn-light,
html[data-theme="dark"] #confirmDisconnectModal .btn-light,
html[data-theme="dark"] #regenerateModal .btn-light,
html[data-theme="dark"] #removePaymentModal .btn-light,
html[data-theme="dark"] #addCardConsentModal .btn-light,
html[data-theme="dark"] #modalRevokeSubuser .btn-light,
html[data-theme="dark"] #modalCancelPending .btn-light {
  background-color: color-mix(in srgb, var(--spedire-text) 8%, var(--dark-card-bg));
  border-color: var(--spedire-border);
  color: var(--spedire-text);
}

html[data-theme="dark"] #modalDeleteSingle .btn-close,
html[data-theme="dark"] #modalDeleteBulk .btn-close,
html[data-theme="dark"] #modalGenerateResult .btn-close,
html[data-theme="dark"] #deleteAddressModal .btn-close,
html[data-theme="dark"] #deleteContractModal .btn-close,
html[data-theme="dark"] #confirmDisconnectModal .btn-close,
html[data-theme="dark"] #regenerateModal .btn-close,
html[data-theme="dark"] #removePaymentModal .btn-close,
html[data-theme="dark"] #addCardConsentModal .btn-close,
html[data-theme="dark"] #modalRevokeSubuser .btn-close,
html[data-theme="dark"] #modalCancelPending .btn-close,
html[data-theme="dark"] #gatewayIframeModal .btn-close {
  filter: invert(1) grayscale(100%);
  opacity: 0.75;
}

html[data-theme="dark"] #deleteAddressModal .modal-body .text-secondary {
  color: var(--dark-muted-color, #94a3b8) !important;
}

html[data-theme="dark"] #deleteContractModal .alert.alert-light {
  background-color: color-mix(in srgb, var(--dark-card-bg) 94%, var(--spedire-border)) !important;
  border-color: var(--spedire-border) !important;
  color: var(--spedire-text) !important;
}

html[data-theme="dark"] #confirmDisconnectModal .modal-body .text-secondary {
  color: var(--dark-muted-color, #94a3b8) !important;
}

html[data-theme="dark"] #regenerateModal .modal-body .text-secondary {
  color: var(--dark-muted-color, #94a3b8) !important;
}

html[data-theme="dark"] #removePaymentModal .modal-header,
html[data-theme="dark"] #addCardConsentModal .modal-header,
html[data-theme="dark"] #modalRevokeSubuser .modal-header,
html[data-theme="dark"] #modalCancelPending .modal-header {
  border-color: var(--spedire-border);
}

html[data-theme="dark"] #removePaymentModal .modal-footer,
html[data-theme="dark"] #addCardConsentModal .modal-footer,
html[data-theme="dark"] #modalRevokeSubuser .modal-footer,
html[data-theme="dark"] #modalCancelPending .modal-footer {
  border-color: var(--spedire-border);
}

html[data-theme="dark"] #removePaymentModal .modal-body .text-muted,
html[data-theme="dark"] #modalRevokeSubuser .modal-body .text-muted,
html[data-theme="dark"] #modalCancelPending .modal-body .text-muted {
  color: var(--dark-muted-color, #94a3b8) !important;
}
