html,
body {
  background-color: var(--color-bg-main);
}

/* Source class has an invalid declaration (a#04050b). */
.gbs8y {
  background-color: #04050b;
}

:focus-visible {
  outline: 2px solid transparent;
  outline-offset: 2px;
  box-shadow: 0 0 0 2px rgb(239 68 68 / 0.3);
}

/* Mobile menu state lock */
html.mobile-nav-open,
html.mobile-nav-open body {
  overflow: hidden;
}

/* Keep local media stable in cards */
img,
video {
  backface-visibility: hidden;
}
/* Stronger ambient glow in red theme */
.bg-accent-400\\/8 {
  background-color: rgb(248 113 113 / 0.65) !important;
  box-shadow: 0 0 240px 110px rgb(248 113 113 / 0.62) !important;
}
.bg-accent-500\\/8 {
  background-color: rgb(239 68 68 / 0.72) !important;
}
.bg-accent-600\\/8 {
  background-color: rgb(220 38 38 / 0.78) !important;
  box-shadow: 0 0 380px 170px rgb(220 38 38 / 0.78) !important;
}
.from-violet-500\\/8 {
  --tw-gradient-from: rgb(239 68 68 / 0.56) var(--tw-gradient-from-position) !important;
  --tw-gradient-to: rgb(239 68 68 / 0) var(--tw-gradient-to-position) !important;
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) !important;
}
.via-accent-500\\/8 {
  --tw-gradient-to: rgb(239 68 68 / 0) var(--tw-gradient-to-position) !important;
  --tw-gradient-stops: var(--tw-gradient-from), rgb(239 68 68 / 0.66) var(--tw-gradient-via-position), var(--tw-gradient-to) !important;
}

/* Product variants: red hover/active feedback */
[data-component="product-detail"] button[x-on\\:click*="activeVariantId"] {
  transition:
    border-color var(--dur-fast) var(--ease-standard),
    background-color var(--dur-fast) var(--ease-standard),
    box-shadow var(--dur-fast) var(--ease-standard);
}

[data-component="product-detail"] button[x-on\\:click*="activeVariantId"]:hover,
[data-component="product-detail"] button[x-on\\:click*="activeVariantId"]:focus-visible {
  border-color: rgb(239 68 68 / 0.42) !important;
  background-color: rgb(220 38 38 / 0.14) !important;
  box-shadow: 0 0 0 1px rgb(239 68 68 / 0.2), 0 0 16px rgb(220 38 38 / 0.14) !important;
}

[data-component="product-detail"] button[x-on\\:click*="activeVariantId"].dn3s6 {
  border-color: rgb(239 68 68 / 0.62) !important;
  background: linear-gradient(135deg, rgb(239 68 68 / 0.24), rgb(220 38 38 / 0.18)) !important;
  box-shadow: 0 0 0 1px rgb(239 68 68 / 0.32), 0 0 22px rgb(220 38 38 / 0.22) !important;
}

/* Global red accents override for utility classes compiled with purple values */
:root {
  --color-accent-400: #f87171;
  --color-accent-500: #ef4444;
  --color-accent-600: #dc2626;
  --color-accent-700: #b91c1c;
  --color-accent-800: #991b1b;
}

.dn3s6 {
  border-color: rgb(239 68 68 / 0.6) !important;
}

.zh6oq {
  background-color: rgb(239 68 68 / 0.14) !important;
}

.c9i5f {
  border-color: rgb(239 68 68 / 0.2) !important;
}

.cmx0h:hover,
.mmjzk:hover {
  border-color: rgb(239 68 68 / 0.5) !important;
}

.u01mf:hover,
.gksu5:hover,
.d6e2l:hover,
.fe2em:hover {
  background-color: rgb(220 38 38 / 0.38) !important;
}

.c8lfn:hover,
.oekzg:hover,
.wirmu:hover {
  color: rgb(252 165 165) !important;
}

.joq0t:hover {
  --tw-shadow-color: rgb(239 68 68 / 0.24) !important;
}

.yi4j6:hover {
  --tw-gradient-from: #dc2626 var(--tw-gradient-from-position) !important;
}

.pdn71:hover {
  --tw-gradient-to: #991b1b var(--tw-gradient-to-position) !important;
}

.abvd8:focus {
  --tw-ring-color: rgb(239 68 68) !important;
}

.ctm1p:focus {
  --tw-ring-color: rgb(239 68 68 / 0.3) !important;
}

.swup-progress-bar {
  background-color: #dc2626 !important;
}

.vrr3s {
  -webkit-text-stroke-color: #f87171 !important;
}

svg path[fill="#ef4444"] {
  fill: #ef4444 !important;
}

/* Product gallery baseline visibility for local file mode */
[data-component="product-detail"] .img-main.splide,
[data-component="product-detail"] .img-thumbnails.splide {
  visibility: visible !important;
}

/* Product gallery fallback for file:// when Splide does not initialize */
[data-component="product-detail"] .img-main:not(.is-initialized) {
  visibility: visible !important;
}

[data-component="product-detail"] .img-main:not(.is-initialized) .splide__track {
  overflow: visible !important;
}

[data-component="product-detail"] .img-main:not(.is-initialized) .splide__list {
  display: block !important;
}

[data-component="product-detail"] .img-main:not(.is-initialized) .splide__slide {
  width: 100% !important;
  margin: 0 !important;
}

[data-component="product-detail"] .img-main:not(.is-initialized) .splide__slide:not(:first-child) {
  display: none !important;
}

[data-component="product-detail"] .img-main:not(.is-initialized) .splide__slide img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

[data-component="product-detail"] .img-thumbnails:not(.is-initialized) {
  display: none !important;
}

/* Product gallery fallback when Splide is partially initialized but no active slide exists */
[data-component="product-detail"] .img-main.is-initialized .splide__track--fade > .splide__list:not(:has(> .splide__slide.is-active)) > .splide__slide:first-child {
  opacity: 1 !important;
  z-index: 1 !important;
}

[data-component="product-detail"] .img-main.is-initialized .splide__track--fade > .splide__list:not(:has(> .splide__slide.is-active)) > .splide__slide:not(:first-child) {
  display: none !important;
}

/* Hard fallback image injected by main.js when local files exist */
[data-component="product-detail"] .img-main.sysinfo-force-fallback .splide__track {
  display: none !important;
}

[data-component="product-detail"] .img-main.sysinfo-force-fallback {
  border-radius: 0.5rem;
  overflow: hidden;
}

[data-component="product-detail"] .img-main .sysinfo-local-fallback {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  border-radius: inherit;
}

/* Avoid duplicate-image flash while local gallery slots are being resolved */
[data-component="product-detail"].sysinfo-gallery-resolving .img-main .splide__slide:not(:first-child),
[data-component="product-detail"].sysinfo-gallery-resolving .img-thumbnails .splide__slide:not(:first-child) {
  display: none !important;
}

/* Force remaining vendor accent effects to red */
.qgho7 {
  background-image:
    repeating-linear-gradient(100deg, black 0%, black 7%, transparent 10%, transparent 12%, black 16%),
    repeating-linear-gradient(100deg, #f87171 10%, #ef4444, #dc2626, #b91c1c, #991b1b 30%) !important;
}

.lvlua {
  background-image:
    repeating-linear-gradient(100deg, black 0%, black 7%, transparent 10%, transparent 12%, black 16%),
    repeating-linear-gradient(100deg, #f87171 10%, #ef4444, #dc2626, #b91c1c, #991b1b 30%) !important;
}

.c7ou1 a:focus,
.c7ou1 a:focus-visible {
  --tw-ring-color: rgb(239 68 68 / 0.25) !important;
}

.l0k1u:after {
  background-color: rgb(220 38 38) !important;
}

.uoizx:focus-within {
  --tw-ring-color: rgb(239 68 68 / 0.4) !important;
}

.m3imy::-moz-range-thumb {
  background-color: rgb(220 38 38) !important;
}

.nwy1m::-webkit-slider-thumb {
  background-color: rgb(220 38 38) !important;
}

/* Footer stats must stay white */
[data-component="footer"] .ccivo .q3yd0,
[data-component="footer"] .ccivo .qsf6b,
[data-component="footer"] .ccivo .ivyrb {
  color: #ffffff !important;
}

/* Remove remaining violet from CTA/price buttons */
.ainyl {
  --tw-bg-opacity: 1 !important;
  background-color: rgb(220 38 38 / var(--tw-bg-opacity)) !important;
}

.kin70 {
  --tw-gradient-from: #ef4444 var(--tw-gradient-from-position) !important;
  --tw-gradient-to: rgb(239 68 68 / 0) var(--tw-gradient-to-position) !important;
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) !important;
}

.mmat1 {
  --tw-gradient-to: #b91c1c var(--tw-gradient-to-position) !important;
}

.md96k,
.wueoq:hover {
  --tw-shadow-color: rgb(239 68 68 / 0.24) !important;
  --tw-shadow: var(--tw-shadow-colored) !important;
}

/* Product detail main CTA (Purchase Now) */
[data-component="product-detail"] button[x-on\:click="openPaymentModal"] {
  background-image: linear-gradient(90deg, #ef4444, #b91c1c) !important;
  background-color: #dc2626 !important;
  border-color: rgb(239 68 68 / 0.5) !important;
}

[data-component="product-detail"] button[x-on\:click="openPaymentModal"]:hover {
  background-image: linear-gradient(90deg, #dc2626, #991b1b) !important;
  background-color: #b91c1c !important;
}

/* Remove remaining gradients on prices/cards/categories as requested */
[data-component="products-list"] .kin70,
[data-component="products-list"] .mmat1,
[data-component="products-list"] .ujp8e,
[data-component="products-list"] .bjbk0,
[data-component="products-list"] .eu8za,
[data-component="products-list"] .nw0v8,
[data-component="products-list"] .h8bgy,
[data-component="payment-methods"] .eu8za,
[data-component="payment-methods"] .nw0v8,
[data-component="payment-methods"] .h8bgy,
[data-component="featured-products"] .kin70,
[data-component="featured-products"] .mmat1,
[data-component="featured-products"] .ujp8e,
[data-component="featured-products"] .bjbk0,
[data-component="featured-products"] .eu8za,
[data-component="featured-products"] .nw0v8,
[data-component="featured-products"] .h8bgy,
[data-component="categories"] .eu8za,
[data-component="categories"] .nw0v8,
[data-component="categories"] .h8bgy {
  --tw-gradient-from: transparent var(--tw-gradient-from-position) !important;
  --tw-gradient-to: transparent var(--tw-gradient-to-position) !important;
  --tw-gradient-stops: transparent, transparent !important;
  background-image: none !important;
}

[data-component="products-list"] .ujp8e,
[data-component="products-list"] .bjbk0,
[data-component="featured-products"] .ujp8e,
[data-component="featured-products"] .bjbk0 {
  background-color: rgb(220 38 38 / 0.2) !important;
}

[data-component="products-list"] .eu8za,
[data-component="products-list"] .nw0v8,
[data-component="products-list"] .h8bgy,
[data-component="payment-methods"] .eu8za,
[data-component="payment-methods"] .nw0v8,
[data-component="payment-methods"] .h8bgy,
[data-component="featured-products"] .eu8za,
[data-component="featured-products"] .nw0v8,
[data-component="featured-products"] .h8bgy,
[data-component="categories"] .eu8za,
[data-component="categories"] .nw0v8,
[data-component="categories"] .h8bgy {
  background-color: rgb(15 23 42 / 0.45) !important;
}

[data-component="products-list"] .mz9l3:hover .ujp8e,
[data-component="products-list"] .mz9l3:hover .bjbk0,
[data-component="featured-products"] .mz9l3:hover .ujp8e,
[data-component="featured-products"] .mz9l3:hover .bjbk0 {
  --tw-gradient-from: transparent var(--tw-gradient-from-position) !important;
  --tw-gradient-to: transparent var(--tw-gradient-to-position) !important;
  --tw-gradient-stops: transparent, transparent !important;
  background-image: none !important;
}

/* Final hard override: products price chips + buy button must be red-only */
[data-component="products-list"] .q26bl.pn18c.omznh.dsn45.iponb,
[data-component="featured-products"] .q26bl.pn18c.omznh.dsn45.iponb {
  background-image: linear-gradient(90deg, #7f1d1d, #991b1b) !important;
  background-color: #7f1d1d !important;
  border-color: rgb(239 68 68 / 0.38) !important;
}

[data-component="products-list"] .ujp8e.bjbk0,
[data-component="featured-products"] .ujp8e.bjbk0 {
  background-image: linear-gradient(90deg, #dc2626, #991b1b) !important;
  background-color: #b91c1c !important;
  border-color: rgb(239 68 68 / 0.4) !important;
}

[data-component="products-list"] .mz9l3:hover .ujp8e.bjbk0,
[data-component="featured-products"] .mz9l3:hover .ujp8e.bjbk0 {
  background-image: linear-gradient(90deg, #b91c1c, #7f1d1d) !important;
  background-color: #991b1b !important;
  border-color: rgb(248 113 113 / 0.45) !important;
}

/* Products category chips + payment methods strip: red-only (no violet) */
#chips a {
  background-image: none !important;
  background-color: rgb(127 29 29 / 0.26) !important;
  border-color: rgb(239 68 68 / 0.34) !important;
}

#chips a:hover,
#chips a:focus-visible {
  background-image: none !important;
  background-color: rgb(153 27 27 / 0.38) !important;
  border-color: rgb(248 113 113 / 0.5) !important;
}

#chips a.pim6j,
#chips a.kiqps,
#chips a.qflxq {
  background-image: none !important;
  background-color: rgb(220 38 38 / 0.4) !important;
  border-color: rgb(248 113 113 / 0.58) !important;
}

.ekxvt.wc2qc,
.ekxvt .wc2qc {
  background-image: none !important;
  background-color: rgb(127 29 29 / 0.32) !important;
  border-color: rgb(239 68 68 / 0.36) !important;
}

/* Payment methods strip text/icon should be red (no violet) */
.ekxvt .uubwv,
.ekxvt .qckaj,
.ekxvt .gzzfp,
.ekxvt .q8k9s svg {
  color: rgb(252 165 165) !important;
}

.ekxvt .qckaj .xlygu,
.ekxvt .uubwv .xlygu {
  color: rgb(248 113 113) !important;
}

/* Products page: move the header text above categories slightly down */
main#swup > .cy2fv > section#categories[data-component="categories"]:first-child > .lold7 {
  padding-top: 3rem;
}

main#swup > .cy2fv > section#categories[data-component="categories"]:first-child > .lold7 > .zp0gu {
  display: none !important;
}

main#swup > .cy2fv > section#categories[data-component="categories"]:first-child > .lold7 > h2 {
  margin-top: 0.75rem;
  transform: translateY(15px);
}

main#swup > .cy2fv > section#categories[data-component="categories"]:first-child > .lold7 > p {
  margin-top: 0.5rem;
  transform: translateY(15px);
}

/* Homepage feature-menu: remove remaining pink/violet accents */
#features input[type="range"].bxr9c {
  accent-color: #dc2626 !important;
}

#features input[type="range"].bxr9c::-webkit-slider-thumb {
  background-color: #dc2626 !important;
}

#features input[type="range"].bxr9c::-moz-range-thumb {
  background-color: #dc2626 !important;
}

#features .huks5 {
  border-color: rgb(239 68 68 / 0.95) !important;
  background-color: rgb(220 38 38 / 0.12) !important;
}
