/* === FORCE DARK SHOP (Flatsome/Woo) === */

/* Main page wrappers */
body.woocommerce.archive,
body.woocommerce.archive #wrapper,
body.woocommerce.archive .page-wrapper,
body.woocommerce.archive #main,
body.woocommerce.archive .main,
body.woocommerce.archive .shop-container,
body.woocommerce.archive .row,
body.woocommerce.archive .large-9,
body.woocommerce.archive .large-12,
body.woocommerce.archive .content-area,
body.woocommerce.archive .site-content {
  background: #000 !important;
}

/* Product grid + sidebar */
body.woocommerce.archive .woocommerce,
body.woocommerce.archive .woocommerce-page,
body.woocommerce.archive .products,
body.woocommerce.archive .product-small,
body.woocommerce.archive .box,
body.woocommerce.archive .box-text,
body.woocommerce.archive .box-image,
body.woocommerce.archive .col-inner,
body.woocommerce.archive .shop-sidebar,
body.woocommerce.archive .widget {
  background: #000 !important;
}

/* Text white (EXCLUDES PRODUCT TITLES) */
body.woocommerce.archive,
body.woocommerce.archive p,
body.woocommerce.archive a,
body.woocommerce.archive .woocommerce-breadcrumb,
body.woocommerce.archive .woocommerce-breadcrumb a,
body.woocommerce.archive .price,
body.woocommerce.archive .amount,
body.woocommerce.archive .widget-title,
body.woocommerce.archive .widget a,
body.woocommerce.archive .nav>li>a {
  color: #fff !important;
}

/* PRODUCT TITLES — PINK */
body.woocommerce.archive .woocommerce-loop-product__title,
body.woocommerce.archive ul.products li.product .woocommerce-loop-product__title,
body.woocommerce.archive .product-small .name,
body.woocommerce.archive .product-title {
  color: #ff4fa3 !important;
}

/* Sidebar categories */
body.woocommerce.archive .widget_product_categories li a {
  color: #fff !important;
}
body.woocommerce.archive .widget_product_categories li a:hover {
  opacity: .8;
}

/* Sorting dropdown */
body.woocommerce.archive .woocommerce-ordering select {
  background: #000 !important;
  color: #fff !important;
  border: 1px solid #444 !important;
}

/* Remove card borders */
body.woocommerce.archive .product-small,
body.woocommerce.archive .box {
  box-shadow: none !important;
  border: 0 !important;
}
/* PRODUCT TITLES — PINK (override link color) */
body.woocommerce.archive .product-small .name a,
body.woocommerce.archive .product-small .product-title a,
body.woocommerce.archive .box-text .name a,
body.woocommerce.archive .woocommerce-loop-product__title a,
body.woocommerce.archive ul.products li.product .name a,
body.woocommerce.archive ul.products li.product .product-title a {
  color: #ff4fa3 !important;
}
/* ============================= */
/* ADD TO CART — PINK OUTLINE */
/* ============================= */

body.woocommerce.archive .woocommerce ul.products li.product .button,
body.woocommerce.archive .woocommerce ul.products li.product a.button,
body.woocommerce.archive .woocommerce ul.products li.product .add_to_cart_button {
  background: transparent !important;
  color: #ff4fa3 !important;
  border: 2px solid #ff4fa3 !important;
  transition: all .25s ease;
}

/* Hover = pink fill + white text */
body.woocommerce.archive .woocommerce ul.products li.product .button:hover,
body.woocommerce.archive .woocommerce ul.products li.product a.button:hover,
body.woocommerce.archive .woocommerce ul.products li.product .add_to_cart_button:hover {
  background: #ff4fa3 !important;
  color: #ffffff !important;
  border-color: #ff4fa3 !important;
}

/* Kill Flatsome overlay hover */
body.woocommerce.archive .woocommerce ul.products li.product .button:before,
body.woocommerce.archive .woocommerce ul.products li.product .button:after {
  display: none !important;
}
/* FORCE PINK OUTLINE DEFAULT */
body.woocommerce.archive .button.is-outline,
body.woocommerce.archive .add_to_cart_button,
body.woocommerce.archive .woocommerce ul.products li.product .button {

    border-color: #ff4fa3 !important;
    color: #ff4fa3 !important;
    background: transparent !important;
}

/* HOVER */
body.woocommerce.archive .button.is-outline:hover,
body.woocommerce.archive .add_to_cart_button:hover,
body.woocommerce.archive .woocommerce ul.products li.product .button:hover {

    background: #ff4fa3 !important;
    color: #ffffff !important;
    border-color: #ff4fa3 !important;
}
/* ============================= */
/* SINGLE PRODUCT PAGE DARK MODE */
/* ============================= */

body.single-product,
body.single-product #wrapper,
body.single-product .page-wrapper,
body.single-product #main,
body.single-product .product-main {

    background: #000 !important;
    color: #fff !important;
}

/* Product title + text */
body.single-product h1,
body.single-product h2,
body.single-product h3,
body.single-product p,
body.single-product span,
body.single-product div,
body.single-product .price,
body.single-product .amount,
body.single-product .woocommerce-tabs {
    color: #fff !important;
}

/* Tabs */
body.single-product .woocommerce-tabs ul.tabs li a {
    color: #fff !important;
}

/* ============================= */
/* ADD TO CART BUTTON — PINK */
/* ============================= */

body.single-product .single_add_to_cart_button {
    background: transparent !important;
    color: #ff4fa3 !important;
    border: 2px solid #ff4fa3 !important;
}

/* Hover */
body.single-product .single_add_to_cart_button:hover {
    background: #ff4fa3 !important;
    color: #ffffff !important;
    border-color: #ff4fa3 !important;
}

/* ============================= */
/* QUANTITY BOX — BLACK */
/* ============================= */

body.single-product .quantity input.qty {
    background: #000 !important;
    color: #fff !important;
    border: 1px solid #ff4fa3 !important;
}

/* +/- buttons (Flatsome) */
body.single-product .quantity .minus,
body.single-product .quantity .plus {
    background: #000 !important;
    color: #fff !important;
    border-color: #ff4fa3 !important;
}
/* FORCE SOLID HEADER */
#header,
.header,
.header-wrapper,
.header-main,
.stuck .header-main,
.transparent .header-main {
    background: #000 !important;
    background-color: #000 !important;
}

/* remove transparency + blur */
.transparent,
.header-transparent,
.header.has-transparent {
    background: #000 !important;
}

/* keep header solid while scrolling */
.stuck {
    background: #000 !important;
}

/* remove overlay effect Flatsome adds */
.header-bg-color,
.header-bg-image {
    opacity: 1 !important;
}
/* ===== BRUTE FORCE: any quantity/badge pill inside Woo Blocks order summary ===== */
.wc-block-checkout .wc-block-components-order-summary *[class*="quantity"],
.wc-block-checkout .wc-block-components-order-summary *[class*="badge"],
.wc-block-checkout .wc-block-components-order-summary *[class*="product-badge"] {
  background: #fff !important;
  border: 1px solid #fff !important;
  color: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  font-size: 14px !important;
  line-height: 1 !important;
}

.wc-block-checkout .wc-block-components-order-summary *[class*="quantity"] *,
.wc-block-checkout .wc-block-components-order-summary *[class*="badge"] * {
  color: #000 !important;
  opacity: 1 !important;
  visibility: visible !important;
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
}

/* if the number exists but is blended out */
.wc-block-checkout .wc-block-components-order-summary *[class*="quantity"],
.wc-block-checkout .wc-block-components-order-summary *[class*="quantity"] * {
  mix-blend-mode: normal !important;
  -webkit-text-fill-color: #000 !important;
}
/* ===== GLOBAL BLACK THEME (SAFE VERSION) ===== */

html, body {
    background: #000 !important;
    color: #fff !important;
}

/* Main content wrappers only */
#wrapper,
#main,
.page-wrapper,
.entry-content {
    background: #000 !important;
}

/* DO NOT override .section or .row */
/* This preserves image banners */

/* Text */
h1, h2, h3, h4, h5, h6,
p, li, label {
  color: #fff !important;
}

/* Links */
a { color: #ff2ea6 !important; }
a:hover { color: #fff !important; }

/* Inputs */
input, textarea, select {
  background: #000 !important;
  color: #fff !important;
  border: 1px solid #333 !important;
}

/* Woo boxes only */
.box,
.box-text,
.product-small,
.woocommerce,
.woocommerce-page {
  background: #000 !important;
}

/* Restore image sections (Flatsome banners/sections) */
.section.has-bg,
.section.has-bg .bg,
.section.has-bg .section-bg,
.section-bg {
  background-color: transparent !important;
}

/* IMPORTANT: don't kill background images */
.section.has-bg .section-bg,
.section-bg {
  background-image: inherit !important;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
}