:root {
  --violet-700: #6d28d9;
  --violet-600: #7c3aed;
  --violet-500: #8b5cf6;
  --violet-400: #a78bfa;
  --violet-300: #c4b5fd;
  --black-900: #0b0b0e;
  --black-800: #121218;
  --text-on-dark: #ffffff;
  --text-on-light: #0b0b0e;
  --brand: var(--violet-600);
  --brand-hover: var(--violet-500);
  --brand-contrast: #ffffff;
  --bg-gradient-start: var(--black-900);
  --bg-gradient-end: var(--black-800);
  --text-strong: #f5f6ff;
  --badge-bg: rgba(255, 255, 255, 0.14);
  --badge-border: rgba(255, 255, 255, 0.28);
}

a {
  color: var(--brand);
  text-decoration-color: rgba(167, 139, 250, 0.5);
  text-underline-offset: 2px;
}
a:hover,
a:focus {
  color: var(--brand-hover);
  text-decoration-color: rgba(167, 139, 250, 0.9);
}

#header,
header.header,
.header-nav,
.top-menu {
  background-color: var(--black-900);
  color: var(--text-on-dark);
}

#header .header-top,
#header .header-bottom,
#header .header-sticky,
#header .header-banner,
.header-top,
.header-bottom,
.header-sticky,
.header-banner,
.topbar,
.navbar,
.navbar-nav {
  background-color: var(--black-900) !important;
  color: var(--text-on-dark) !important;
}

#header .container,
#header .container-fluid,
#header .row,
.header-top .container,
.header-nav .container,
.header-bottom .container {
  background-color: transparent !important;
}

#header a,
header.header a,
.header-nav a,
.top-menu a,
.header-top a,
.header-bottom a,
.header-sticky a,
.navbar a,
.topbar a {
  color: var(--text-on-dark);
}

#header a:hover,
header.header a:hover,
.header-nav a:hover,
.top-menu a:hover,
.header-top a:hover,
.header-bottom a:hover,
.header-sticky a:hover,
.navbar a:hover,
.topbar a:hover {
  color: var(--violet-300);
}

#footer,
footer {
  background-color: var(--black-900);
  color: var(--text-on-dark);
}

#footer a,
footer a {
  color: var(--violet-300);
}

.btn-primary,
button[type="submit"],
.add-to-cart,
button.add-to-cart {
  background-color: var(--brand);
  border-color: var(--brand);
  color: var(--brand-contrast);
}

.btn-primary:hover,
button[type="submit"]:hover,
.add-to-cart:hover,
button.add-to-cart:hover {
  background-color: var(--brand-hover);
  border-color: var(--brand-hover);
  color: var(--brand-contrast);
}

.btn-outline-primary {
  color: var(--brand);
  border-color: var(--brand);
  background-color: transparent;
}
.btn-outline-primary:hover {
  color: var(--brand-contrast);
  background-color: var(--brand);
  border-color: var(--brand);
}

.product-miniature .add-to-cart,
.product .add-to-cart,
.product-actions .add-to-cart,
.product-add-to-cart .add-to-cart,
.thumbnail-container .add-to-cart,
.ajax_add_to_cart_button,
.add-to-cart,
.btn.add-to-cart,
.btn.btn-primary.add-to-cart,
.product-miniature .btn-primary,
.product .btn-primary {
  background-color: var(--brand) !important;
  border-color: var(--brand) !important;
  color: var(--brand-contrast) !important;
}

.product-miniature .add-to-cart:hover,
.product .add-to-cart:hover,
.product-actions .add-to-cart:hover,
.product-add-to-cart .add-to-cart:hover,
.thumbnail-container .add-to-cart:hover,
.ajax_add_to_cart_button:hover,
.add-to-cart:hover,
.btn.add-to-cart:hover,
.btn.btn-primary.add-to-cart:hover,
.product-miniature .btn-primary:hover,
.product .btn-primary:hover {
  background-color: var(--brand-hover) !important;
  border-color: var(--brand-hover) !important;
  color: var(--brand-contrast) !important;
}

.btn-outline-primary.add-to-cart,
.product-miniature .btn-outline-primary,
.product .btn-outline-primary {
  color: var(--brand-contrast) !important;
  background-color: var(--brand) !important;
  border-color: var(--brand) !important;
}

input:focus,
select:focus,
textarea:focus,
.form-control:focus {
  border-color: var(--brand);
  box-shadow: 0 0 0 0.2rem rgba(124, 58, 237, 0.25);
  outline: 0;
}

.badge,
.product-flags .new,
.product-flags .on-sale,
.product-flags .online-only {
  background-color: var(--brand);
  color: var(--brand-contrast);
}

.product-miniature,
.product,
.thumbnail-container {
  border-radius: 12px;
  overflow: hidden;
  background: #fff;
}

.product-miniature .thumbnail-container,
.product .thumbnail-container {
  transition: transform 200ms ease, box-shadow 200ms ease;
  box-shadow: 0 2px 10px rgba(11, 11, 14, 0.06);
}

.product-miniature:hover .thumbnail-container,
.product:hover .thumbnail-container {
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(11, 11, 14, 0.14);
}

.product-miniature .product-title a,
.product .product-title a {
  color: var(--text-on-light);
}

.product-miniature .price,
.product .price,
.product-price {
  color: var(--brand);
  font-weight: 600;
}

.nav-link.active,
.pagination .active > .page-link,
.pagination .page-item.active .page-link {
  background-color: var(--brand);
  border-color: var(--brand);
  color: var(--brand-contrast);
}

.page-link,
.pagination .page-link {
  color: var(--brand);
}
.page-link:hover {
  color: var(--brand-hover);
}

.breadcrumb a {
  color: var(--brand);
}
.breadcrumb a:hover {
  color: var(--brand-hover);
}

.block .title,
.h1, .h2, .h3, .h4,
h1, h2, h3, h4 {
  color: var(--black-900);
}

.section-title::after,
.block .title::after {
  content: "";
  display: block;
  width: 48px;
  height: 3px;
  margin-top: 8px;
  background: linear-gradient(90deg, var(--violet-400), var(--violet-700));
}

footer .block .title {
  color: var(--text-on-dark);
}
footer .block a:hover {
  color: var(--violet-300);
}

.card, .block, .featured-products, .product-accessories, .product-customization {
  border-radius: 12px;
  border: 1px solid rgba(11, 11, 14, 0.06);
}

:focus-visible {
  outline: 2px solid var(--brand);
  outline-offset: 2px;
}

html,
body {
  background: linear-gradient(180deg, var(--bg-gradient-start) 0%, var(--bg-gradient-end) 100%);
  color: var(--text-on-dark);
}

main,
#wrapper,
#content-wrapper,
#columns,
.page-content,
.container,
.container-fluid {
  background-color: transparent !important;
  color: inherit;
}

.top-menu .sub-menu,
.navbar .dropdown-menu,
.dropdown-menu,
.sf-menu ul,
.submenu,
.sub-menu {
  background-color: var(--black-900) !important;
  color: var(--text-on-dark) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.top-menu .sub-menu a,
.dropdown-menu .dropdown-item,
.dropdown-menu a,
.sf-menu ul a {
  color: var(--text-on-dark) !important;
}

.top-menu .sub-menu a:hover,
.dropdown-menu .dropdown-item:hover,
.dropdown-menu a:hover,
.sf-menu ul a:hover {
  color: var(--violet-300) !important;
  background-color: var(--black-800) !important;
}

.dropdown-menu .dropdown-divider {
  border-top-color: rgba(255, 255, 255, 0.08);
}

.card,
.block,
.featured-products,
.product-accessories,
.product-customization {
  background-color: var(--black-800);
  border-color: rgba(255, 255, 255, 0.08);
}

.product-miniature,
.product,
.thumbnail-container {
  background: var(--black-800);
}

.product-miniature .product-title a,
.product .product-title a {
  color: var(--text-on-dark);
}

.block .title,
.h1,
.h2,
.h3,
.h4,
h1,
h2,
h3,
h4 {
  color: var(--text-on-dark);
}

#category,
.page-category,
#js-product-list,
.products,
.products-grid,
.products-list,
.products-selection,
.facets,
.facet,
.pagination {
  background-color: transparent !important;
  color: inherit;
}

#js-product-list .product-miniature,
#js-product-list .product-miniature .thumbnail-container,
#js-product-list .product-miniature .product-description,
.products .product-miniature,
.products .product-miniature .thumbnail-container,
.products .product-miniature .product-description,
.product-miniature .product-description,
.product-miniature .highlighted-informations {
  background-color: var(--black-800) !important;
  color: var(--text-on-dark) !important;
  border-color: rgba(255, 255, 255, 0.08) !important;
}

.products-selection,
#js-active-search-filters,
.facets .facet,
.pagination .page-item .page-link {
  background-color: var(--black-800) !important;
  color: var(--text-on-dark) !important;
  border-color: rgba(255, 255, 255, 0.08) !important;
}

.header-bottom,
.header-bottom .menu,
.header-bottom .menu > li > a,
.header-bottom .navbar,
.header-bottom .navbar-nav > li > a,
.header-bottom .dropdown-menu,
.header-bottom .sub-menu,
.header-bottom .submenu,
.menu-secondary,
.menu-secondary a,
.menu-secondary .dropdown-menu {
  background-color: var(--black-900) !important;
  color: var(--text-on-dark) !important;
}

.header-bottom .dropdown-menu a:hover,
.menu-secondary .dropdown-menu a:hover {
  color: var(--violet-300) !important;
  background-color: var(--black-800) !important;
}

.page-header,
.page-heading,
.category-header,
.block-category,
.block-category .block-content,
.category-description,
.category-cover {
  background-color: var(--black-800) !important;
  color: var(--text-on-dark) !important;
  border-color: rgba(255, 255, 255, 0.08) !important;
}

#search_widget,
.search-widget,
.search-widget form,
.search-widget input[type="text"],
.search-widget input[type="search"],
.searchbar input[type="search"],
input[type="search"] {
  background-color: var(--black-800) !important;
  color: var(--text-on-dark) !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
}

input,
select,
textarea,
.form-control {
  background-color: var(--black-800);
  color: var(--text-on-dark);
  border-color: rgba(255, 255, 255, 0.12);
}

input::placeholder,
textarea::placeholder {
  color: rgba(255, 255, 255, 0.7);
}

.ui-autocomplete,
.tt-menu,
.search-suggestions,
.ps-searchbar-suggestions {
  background-color: var(--black-900) !important;
  color: var(--text-on-dark) !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
}

.payment-options,
.payment-option,
.payment-options .payment-option label,
.payment-option .payment-option,
.ps_checkout,
.ps-checkout,
.module-ps_checkout,
.payment-option .payment-option-content {
  background-color: var(--black-800) !important;
  color: var(--text-on-dark) !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
}

.payment-options .payment-option label:hover {
  background-color: var(--black-900) !important;
}

.paypal-button-container,
.paypal-messages {
  background-color: var(--black-800) !important;
  color: var(--text-on-dark) !important;
}

#_desktop_cart .dropdown-menu,
.blockcart .dropdown-menu,
.blockcart .popover,
.ps-shoppingcart .dropdown-menu,
.ps-shoppingcart .popover,
.cart-container,
.cart-grid,
.cart-grid-body,
.cart-grid-right,
.cart-overview,
.cart-summary,
.cart-items,
.cart-item,
.cart-detailed-actions,
#blockcart-modal .modal-content,
.modal-cart .modal-content {
  background-color: var(--black-800) !important;
  color: var(--text-on-dark) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
}

.cart-summary .card,
.cart-summary .card-body,
.cart-summary .cart-detailed-totals,
.cart-summary .cart-detailed-actions {
  background-color: var(--black-800) !important;
  color: var(--text-on-dark) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
}

#search_filters_wrapper,
#search_filters,
.search_filters,
.search-filters,
.faceted-search,
.facet .facet-title,
.facet .collapse,
.facet .facet-label,
.facet .facet-label a,
.active_filters,
.clear-all {
  background-color: var(--black-800) !important;
  color: var(--text-on-dark) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
}

.facet .facet-title,
.active_filters .active-filter-title {
  color: var(--text-on-dark) !important;
}

:root {
  --header-offset: 72px;
}

.facets {
  position: sticky;
  top: var(--header-offset);
}

.cart-grid-right {
  position: sticky;
  top: var(--header-offset);
}

.blockcart .dropdown-menu {
  width: min(420px, 92vw);
  max-height: 70vh;
  overflow: auto;
}

.search-widget {
  max-width: 560px;
}

.search-widget input[type="search"],
.search-widget input[type="text"] {
  border-radius: 12px;
  padding: 10px 14px;
}

.product-miniature .thumbnail-container,
.product .thumbnail-container {
  aspect-ratio: 1 / 1;
}

.product-miniature img,
.product img,
.thumbnail-container img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

header.header,
#header {
  position: sticky;
  top: 0;
  z-index: 1040;
  box-shadow: 0 8px 24px rgba(11, 11, 14, 0.6);
  background-color: var(--black-900) !important;
}

.modal-content {
  background-color: var(--black-800) !important;
  color: var(--text-on-dark) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
}
.modal-header,
.modal-body,
.modal-footer {
  background-color: var(--black-800) !important;
  color: var(--text-on-dark) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
}

.table {
  color: var(--text-on-dark);
  background-color: transparent;
}
.table th,
.table td {
  border-color: rgba(255, 255, 255, 0.12);
}
.table thead th {
  color: var(--text-on-dark);
}
.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(255, 255, 255, 0.03);
}

.alert,
.alert-info,
.alert-warning,
.alert-danger,
.alert-success {
  background-color: var(--black-800);
  color: var(--text-on-dark);
  border-color: rgba(255, 255, 255, 0.12);
}

@media (min-width: 1200px) {
  .product-actions,
  .product-add-to-cart {
    position: sticky;
    top: calc(var(--header-offset) + 12px);
  }
  .facets {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    padding: 12px;
    border-radius: 12px;
  }
  .facets .facet {
    margin: 0;
  }
}

body.page-category .page-title,
body.page-category .page-title .h1,
body.page-category .page-title h1,
body.page-category .category-header,
body.page-category .page-heading {
  background-color: var(--black-800) !important;
  color: var(--text-on-dark) !important;
}

body.page-category .page-title::before,
body.page-category .page-title::after,
body.page-category .category-header::before,
body.page-category .category-header::after {
  background: transparent !important;
}

#_desktop_cart .blockcart a,
#_desktop_cart .blockcart .btn,
#_mobile_cart .blockcart a,
#_mobile_cart .blockcart .btn,
header .blockcart a,
header .blockcart .btn {
  background: transparent !important;
  color: var(--text-on-dark) !important;
  border-color: transparent !important;
}

#_desktop_cart .blockcart .material-icons,
#_mobile_cart .blockcart .material-icons,
header .blockcart .material-icons,
#_desktop_cart .blockcart i,
#_mobile_cart .blockcart i,
header .blockcart i {
  color: var(--text-on-dark) !important;
}

.cart-products-count,
.cart-qty,
header .blockcart .cart-products-count {
  background-color: var(--badge-bg) !important;
  color: var(--text-on-dark) !important;
  border-color: var(--badge-border) !important;
  border-width: 1px !important;
  border-style: solid !important;
  border-radius: 999px !important;
}

.faceted-search .btn,
.search-filters .btn,
#search_filters .btn,
.active_filters .btn {
  background-color: var(--black-900) !important;
  color: var(--text-on-dark) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
}

.faceted-search .btn-secondary,
.search-filters .btn-secondary,
#search_filters .btn-secondary {
  background-color: var(--black-900) !important;
  color: var(--text-on-dark) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
}
/* Utilità tema scuro: copertura classi chiare del tema parent */
.bg-white,
.bg-light,
.background-white,
.white-background,
.card-white,
.panel-white {
  background-color: var(--black-800) !important;
  color: var(--text-on-dark) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
}

/* Titolo categoria: ulteriori wrapper e heading comuni */
.page-header .page-title,
.page-header .h1,
.page-header h1,
.category-top .page-title,
.category-top h1,
.block-category .h1,
.block-category h1 {
  background-color: var(--black-800) !important;
  color: var(--text-on-dark) !important;
}

/* Colonne laterali (alcuni temi impostano sfondo bianco) */
#left-column,
#right-column,
.left-column,
.right-column,
.sidebar {
  background-color: transparent !important;
  color: inherit;
}

/* Dropdown generici (inclusi cart) */
.dropdown-menu {
  background-color: var(--black-900) !important;
  color: var(--text-on-dark) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
}
.dropdown-item {
  background-color: transparent !important;
  color: var(--text-on-dark) !important;
}
.dropdown-item:hover,
.dropdown-item:focus {
  background-color: var(--black-800) !important;
  color: var(--violet-300) !important;
}

/* Mini‑cart: liste e voci interne */
.cart-items li,
.cart_block_list li,
.cart-preview .cart-products,
.mini-cart,
[class*="mini-cart"],
[class*="minicart"],
.cart-dropdown {
  background-color: var(--black-800) !important;
  color: var(--text-on-dark) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
}
.list-group-item {
  background-color: var(--black-800) !important;
  color: var(--text-on-dark) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
}

/* Filtri: elementi interattivi */
.facet .custom-checkbox input + span,
.facet .custom-radio input + span,
.facet .facet-label a,
.facet .search-link {
  color: var(--text-on-dark) !important;
}
.facet .custom-checkbox input:checked + span,
.facet .custom-radio input:checked + span {
  background-color: var(--brand) !important;
  border-color: var(--brand) !important;
  color: var(--brand-contrast) !important;
}

/* Categoria: testata/titolo */
.category-top,
.category-top .container,
.category-top .page-title,
.page-title,
.page-title h1,
.category-title,
.block-category .block-title {
  background-color: var(--black-800) !important;
  color: var(--text-on-dark) !important;
  border-color: rgba(255, 255, 255, 0.08) !important;
}

/* Filtri: copertura aggiuntiva su card interne */
.faceted-search .card,
.faceted-search .card-header,
.faceted-search .card-body,
.facet .card,
.facet .card-header,
.facet .card-body {
  background-color: var(--black-800) !important;
  color: var(--text-on-dark) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
}

/* Carrello: copertura aggiuntiva */
.blockcart .cart-content,
.blockcart .cart-preview,
.ps-shoppingcart .cart-preview,
.dropdown-menu .cart-preview,
.cart_block,
.cart_block_list {
  background-color: var(--black-800) !important;
  color: var(--text-on-dark) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
}

.cart-overview .product-line-grid,
.cart-overview .product-line-grid > [class*="col-"],
.cart-overview .product-line-actions {
  background-color: var(--black-800) !important;
  color: var(--text-on-dark) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
}

body.page-search,
body#search,
.page-search,
#search {
  background-color: transparent !important;
  color: var(--text-on-dark) !important;
}

body.page-search .page-title,
body#search .page-title,
.page-search .page-title,
#search .page-title,
body.page-search .page-title h1,
body#search .page-title h1,
.page-search .page-title h1,
#search .page-title h1 {
  background-color: var(--black-800) !important;
  color: var(--text-on-dark) !important;
}

.block-search,
.ps_searchbar,
.ps-searchbar,
.searchbar,
.searchbar .input-group,
.search-widget .input-group,
.search-widget .input-group-text,
.search-widget .btn,
.searchbar .btn,
.searchbar button,
.search-widget button {
  background-color: var(--black-800) !important;
  color: var(--text-on-dark) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
}

.search-widget .btn:hover,
.searchbar .btn:hover,
.searchbar button:hover,
.search-widget button:hover {
  background-color: var(--black-900) !important;
  color: var(--text-on-dark) !important;
}

input.ui-autocomplete-input,
.ui-autocomplete-input,
input[type="text"].ui-autocomplete-input,
.searchbar input.ui-autocomplete-input,
.search-widget input.ui-autocomplete-input {
  background-color: var(--black-800) !important;
  color: var(--text-on-dark) !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
}

.ui-widget input.ui-autocomplete-input,
.ui-widget-content input.ui-autocomplete-input {
  background-color: var(--black-800) !important;
  color: var(--text-on-dark) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
}

.ui-autocomplete-input::placeholder {
  color: rgba(255, 255, 255, 0.7) !important;
}

input.ui-autocomplete-input:-webkit-autofill,
input.ui-autocomplete-input:-webkit-autofill:hover,
input.ui-autocomplete-input:-webkit-autofill:focus,
input.ui-autocomplete-input:-webkit-autofill:active {
  -webkit-text-fill-color: var(--text-on-dark) !important;
  box-shadow: 0 0 0 1000px var(--black-800) inset !important;
  transition: background-color 9999s ease-out 0s;
}

#_desktop_cart .hidden-sm-down,
#_mobile_cart .hidden-sm-down,
header .blockcart .hidden-sm-down {
  background-color: transparent !important;
  color: var(--text-on-dark) !important;
}

#_desktop_cart .shopping-cart,
#_mobile_cart .shopping-cart,
header .blockcart .shopping-cart,
#_desktop_cart .material-icons.shopping-cart,
#_mobile_cart .material-icons.shopping-cart,
header .blockcart .material-icons.shopping-cart {
  color: var(--text-on-dark) !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  border-color: transparent !important;
}

#_desktop_cart a:hover .shopping-cart,
#_mobile_cart a:hover .shopping-cart,
header .blockcart a:hover .shopping-cart {
  color: var(--violet-300) !important;
}

a.h6,
a.h5,
a.h4,
a.h3,
a.h2,
a.h1,
a.text-uppercase,
.text-uppercase a {
  background-color: transparent !important;
  color: var(--text-on-dark) !important;
}

a.h6:hover,
a.h5:hover,
a.h4:hover,
a.h3:hover,
a.h2:hover,
a.h1:hover,
a.text-uppercase:hover,
.text-uppercase a:hover {
  color: var(--violet-300) !important;
}

.category-top-menu,
.category-top-menu li,
.category-top-menu a,
.category-top-menu a.h6,
.category-top-menu a.text-uppercase {
  background-color: transparent !important;
  color: var(--text-on-dark) !important;
  border-color: transparent !important;
}

.category-top-menu a:hover,
.category-top-menu a:focus {
  color: var(--violet-300) !important;
}

.block-categories,
.block-categories .block-content,
.block-categories .category-top-menu,
.block-categories .category-sub-menu,
.block-categories ul,
.block-categories li {
  background-color: var(--black-800) !important;
  color: var(--text-on-dark) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
}

.block-categories a {
  background-color: transparent !important;
  color: var(--text-on-dark) !important;
}
.block-categories a:hover {
  color: var(--violet-300) !important;
}

.block-categories .collapse-icons,
.block-categories .material-icons,
.block-categories .navbar-toggler {
  color: var(--text-on-dark) !important;
  background-color: transparent !important;
  border-color: transparent !important;
}

.blockcart.cart-preview,
.blockcart.cart-preview.inactive,
.blockcart.cart-preview .header,
header .blockcart.cart-preview,
header .blockcart.cart-preview .header {
  background-color: transparent !important;
  color: var(--text-on-dark) !important;
  border-color: transparent !important;
}

.blockcart.cart-preview .header .material-icons,
.blockcart.cart-preview .header .shopping-cart,
.blockcart.cart-preview .header .hidden-sm-down {
  color: var(--text-on-dark) !important;
}

header .blockcart.cart-preview .header .material-icons,
header .blockcart.cart-preview .header .shopping-cart,
header .blockcart.cart-preview .header .hidden-sm-down {
  color: var(--text-on-dark) !important;
}

#custom-text,
#custom-text .container,
#custom-text .rte,
#custom-text .rte *,
.ps_customtext,
.ps_customtext .container,
.ps-customtext,
.ps-customtext .container {
  background-color: var(--black-800) !important;
  color: var(--text-strong) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
}

#custom-text a,
.ps_customtext a,
.ps-customtext a {
  color: var(--text-on-dark) !important;
  background-color: transparent !important;
}

#custom-text a:hover,
.ps_customtext a:hover,
.ps-customtext a:hover {
  color: var(--violet-300) !important;
}

#custom-text p,
#custom-text li,
.ps_customtext p,
.ps_customtext li,
.ps-customtext p,
.ps-customtext li {
  color: var(--text-strong) !important;
  line-height: 1.8 !important;
  letter-spacing: 0.2px;
  font-weight: 400;
}

#custom-text h1,
#custom-text h2,
#custom-text h3,
#custom-text h4,
#custom-text h5,
#custom-text h6,
.ps_customtext h1,
.ps_customtext h2,
.ps_customtext h3,
.ps_customtext h4,
.ps_customtext h5,
.ps_customtext h6,
.ps-customtext h1,
.ps-customtext h2,
.ps-customtext h3,
.ps-customtext h4,
.ps-customtext h5,
.ps-customtext h6 {
  color: var(--text-strong) !important;
}

#custom-text .card,
.ps_customtext .card,
.ps-customtext .card {
  background-color: var(--black-800) !important;
  color: var(--text-on-dark) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
}
