/*
 * WooCommerce Cyberpunk Styles for ELETROPRINT 3D
 * Deep black void, neon accents, glassmorphism
 */

/* === FIX: WooCommerce "is-loading" state — prevent skeleton/spinner from staying visible === */
/* WooCommerce block products show "is-loading" skeleton placeholders that can get stuck
   on dark themes, appearing as "a carregar" (loading) indefinitely. Force-hide them
   after the blocks have rendered by making the skeleton invisible. */
.wc-block-product-template.is-loading,
.wp-block-woocommerce-product-collection.is-loading,
.wp-block-woocommerce-product-collection .is-loading,
.wc-block-grid.is-loading,
.wc-block-grid__products.is-loading,
.wp-block-woocommerce-product-template.is-loading {
  min-height: 200px;
}

/* Skeleton shimmer placeholders — make them use dark theme colors */
.wc-block-product-template .wc-block-components-product-image--placeholder,
.is-loading .wc-block-components-product-image--placeholder,
.wc-block-grid .wc-block-grid__product-image--placeholder {
  background-color: #1A1A2E !important;
}

/* Loading skeleton bars — dark theme compatible */
.is-loading .wc-block-components-product-name,
.is-loading .wc-block-components-product-price,
.is-loading .wc-block-components-product-button,
.is-loading .wc-block-components-product-rating {
  background-color: rgba(0, 229, 255, 0.04) !important;
  border-radius: 6px;
}

/* Ensure "is-loading" div on product collection blocks does not block the entire page */
.wp-block-woocommerce-product-collection > .is-loading {
  opacity: 0.6;
}

/* === FIX: Block Checkout stuck in loading state ===
   When the checkout blocks are loading, force dark backgrounds so
   the loading placeholders are visible (not invisible dark-on-dark).
   Also ensure the checkout content renders even if JS is slow. */
.wc-block-checkout.is-loading,
.wp-block-woocommerce-checkout.is-loading,
.wc-block-cart.is-loading,
.wp-block-woocommerce-cart.is-loading {
  min-height: 300px;
}

/* Loading placeholder boxes inside checkout — ensure visible on dark bg */
.wc-block-checkout .is-loading .wc-block-components-text-input,
.wc-block-checkout .is-loading .wc-block-components-combobox,
.wc-block-checkout .is-loading [class*="placeholder"],
.wc-block-checkout .is-loading .wc-block-components-loading-mask,
.wc-block-cart .is-loading .wc-block-components-loading-mask {
  background-color: rgba(26, 26, 46, 0.8) !important;
  border-color: rgba(0, 229, 255, 0.08) !important;
}

/* WooCommerce loading skeleton animation — use theme-appropriate colors */
.wc-block-components-loading-mask__spinner {
  border-color: rgba(0, 229, 255, 0.2) !important;
  border-top-color: #00E5FF !important;
}

/* Ensure checkout sections are always visible even during async load */
.wc-block-checkout__main,
.wc-block-checkout__sidebar,
.wc-block-cart__main,
.wc-block-cart__sidebar {
  opacity: 1 !important;
  visibility: visible !important;
}

/* === FIX: Block Checkout "is-loading" stuck state on dark theme ===
   The checkout blocks show skeleton placeholders that never resolve
   on dark themes because the animation uses light grey backgrounds
   that are invisible on #050510. Force the loading state to use
   theme-appropriate colours AND ensure the real content renders
   even if JS hydration is slow. */
.wc-block-checkout.is-loading .wc-block-components-loading-mask,
.wc-block-checkout .wc-block-components-loading-mask {
  background: rgba(10, 10, 30, 0.6) !important;
}

/* Force all checkout block children to be visible */
.wc-block-checkout .wp-block-woocommerce-checkout-fields-block,
.wc-block-checkout .wp-block-woocommerce-checkout-totals-block,
.wc-block-checkout .wc-block-checkout__form,
.wc-block-checkout .wc-block-checkout__sidebar {
  opacity: 1 !important;
  visibility: visible !important;
  display: block !important;
}

/* Skeleton placeholder bars — force dark theme colours */
.wc-block-checkout .wc-block-components-text-input.is-loading,
.wc-block-checkout .is-loading .wc-block-components-text-input,
.wc-block-checkout .is-loading .wc-block-components-combobox,
.wc-block-checkout .is-loading [class*="placeholder"],
.wc-block-checkout [class*="skeleton"],
.wc-block-checkout .components-placeholder {
  background-color: #1A1A2E !important;
  border-color: rgba(0, 229, 255, 0.08) !important;
  border-radius: 8px !important;
}

/* Loading shimmer animation — use dark theme colours */
.wc-block-checkout .wc-block-components-placeholder__image,
.wc-block-checkout .wc-block-components-loading-mask__spinner-container {
  background: #1A1A2E !important;
}

/* Prevent the checkout from being completely blank */
.wp-block-woocommerce-checkout {
  min-height: 400px;
  opacity: 1 !important;
  visibility: visible !important;
}

/* Ensure text inputs render even during loading */
.wc-block-checkout input,
.wc-block-checkout select,
.wc-block-checkout textarea,
.wc-block-checkout label,
.wc-block-checkout h2,
.wc-block-checkout h3,
.wc-block-checkout p,
.wc-block-checkout span {
  opacity: 1 !important;
  visibility: visible !important;
}

/* Fix the Quirks Mode rendering issue: ensure proper box model */
.wc-block-checkout *,
.wc-block-cart * {
  box-sizing: border-box;
}

/* Fix: Block Checkout input/select containers that appear as empty dark boxes */
.wc-block-checkout .wc-block-components-text-input,
.wc-block-checkout .wc-block-components-combobox,
.wc-block-checkout .wc-block-components-address-form {
  background: transparent !important;
}

/* Ensure the checkout form wrapper is always visible */
.wc-block-checkout__form,
.wc-block-checkout__actions,
.wc-block-checkout__shipping-option,
.wc-block-checkout__payment-method {
  opacity: 1 !important;
  visibility: visible !important;
}

/* Fix for WooCommerce "Coming Soon" or "Great things on the horizon" overlay */
.woocommerce-store-notice,
.woocommerce-coming-soon,
.wp-block-woocommerce-coming-soon,
[class*="coming-soon"] {
  display: none !important;
}

/* === WooCommerce Wrapper === */
.ep-wc-wrapper {
  max-width: 1280px;
  margin: 0 auto;
  padding: var(--wp--preset--spacing--60) clamp(1.5rem, 3vw, 4rem) var(--wp--preset--spacing--70);
}

/* === Breadcrumbs === */
.ep-wc-breadcrumb,
.woocommerce-breadcrumb,
.wc-block-breadcrumbs,
nav.woocommerce-breadcrumb {
  font-family: 'Orbitron', sans-serif !important;
  font-size: 0.65rem !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
  color: #8A8A9A !important;
  margin-bottom: var(--wp--preset--spacing--40) !important;
  padding: var(--wp--preset--spacing--20) 0 !important;
  border-bottom: 1px solid rgba(0, 229, 255, 0.08) !important;
  background: transparent !important;
}

.ep-wc-breadcrumb a,
.woocommerce-breadcrumb a,
nav.woocommerce-breadcrumb a {
  color: #00E5FF !important;
  text-decoration: none !important;
  transition: color 0.3s ease;
}

.ep-wc-breadcrumb a:hover,
.woocommerce-breadcrumb a:hover,
nav.woocommerce-breadcrumb a:hover {
  color: #FF00AA !important;
}

.ep-breadcrumb-sep,
.woocommerce-breadcrumb span,
nav.woocommerce-breadcrumb span {
  color: #3A3A4A !important;
  margin: 0 0.5em;
}

/* WooCommerce store header bar (the one with "INICIO / CATEGORIA") */
.woocommerce-products-header,
.wp-block-woocommerce-breadcrumbs,
.wc-block-breadcrumbs {
  background: transparent !important;
  color: #8A8A9A !important;
}

/* Ensure WooCommerce category/tag archive pages don't show white bars */
.tax-product_cat .woocommerce-breadcrumb,
.tax-product_tag .woocommerce-breadcrumb,
.post-type-archive-product .woocommerce-breadcrumb {
  background: transparent !important;
  border-bottom: 1px solid rgba(0, 229, 255, 0.06) !important;
  padding: 14px 0 !important;
}

/* WooCommerce toolbar row (ordering + result count) */
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering {
  background: transparent !important;
  color: #D0D0E0 !important;
}

/* Archive page header wrapper — force dark bg */
.woocommerce-page .woocommerce > .woocommerce-notices-wrapper,
.woocommerce-page .wc-block-components-notice-banner-wrapper {
  background: transparent !important;
}

/* Store notices — dark theme */
.wc-block-store-notices,
.woocommerce-store-notice,
.wc-block-components-notice-banner:not(.is-error):not(.is-success) {
  background: rgba(10, 10, 30, 0.8) !important;
  border: 1px solid rgba(0, 229, 255, 0.15) !important;
  border-radius: 12px !important;
  color: #E0E0F0 !important;
}

/* === Page Titles === */
.woocommerce-products-header__title,
.woocommerce-loop-product__title,
.product_title {
  font-family: 'Orbitron', sans-serif !important;
  color: var(--ep-metallic-white) !important;
}

.woocommerce-products-header__title {
  font-size: clamp(1.75rem, 3.5vw, 2.5rem) !important;
  font-weight: 900 !important;
  letter-spacing: 0.06em;
  text-align: center;
  text-shadow: 0 0 12px rgba(0,229,255,0.2);
  margin-bottom: var(--wp--preset--spacing--50) !important;
}

/* === Product Grid (Shop Archive) === */
ul.products {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--wp--preset--spacing--30);
  list-style: none;
  padding: 0;
  margin: 0;
}

@media (max-width: 992px) {
  ul.products {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 576px) {
  ul.products {
    grid-template-columns: 1fr;
  }
}

/* === Product Card === */
ul.products li.product {
  background: rgba(10, 10, 30, 0.8) !important;
  border: 1px solid rgba(0, 229, 255, 0.15) !important;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-radius: 16px !important;
  overflow: hidden;
  transition: border-color 0.4s ease, box-shadow 0.4s ease, transform 0.4s ease;
  padding: 0 !important;
  margin: 0 !important;
  display: flex;
  flex-direction: column;
}

ul.products li.product:hover {
  border-color: rgba(0,229,255,0.3) !important;
  box-shadow: 0 0 30px rgba(0,229,255,0.12), inset 0 0 20px rgba(0,229,255,0.04);
  transform: translateY(-4px);
}

ul.products li.product a.woocommerce-LoopProduct-link {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  text-decoration: none;
  /* Ensure the entire product link area is tappable on mobile */
  -webkit-tap-highlight-color: rgba(0, 229, 255, 0.08);
  touch-action: manipulation;
}

ul.products li.product a img {
  border-radius: 16px 16px 0 0;
  width: 100%;
  height: 260px;
  object-fit: cover;
  transition: opacity 0.3s ease;
}

ul.products li.product:hover a img {
  opacity: 0.85;
}

/* Product Info */
ul.products li.product .woocommerce-loop-product__title {
  font-size: 0.95rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.06em;
  padding: var(--wp--preset--spacing--20) var(--wp--preset--spacing--30) 0 !important;
  margin: 0 !important;
  line-height: 1.3;
  color: #F0F0F8 !important;
}

ul.products li.product .price {
  font-family: 'Orbitron', sans-serif;
  font-size: 0.85rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  color: var(--ep-cyan);
  padding: var(--wp--preset--spacing--10) var(--wp--preset--spacing--30);
  text-shadow: 0 0 8px rgba(0,229,255,0.3);
}

ul.products li.product .price del {
  color: var(--ep-metallic-gray);
  text-shadow: none;
  font-size: 0.75rem;
  opacity: 0.6;
}

ul.products li.product .price ins {
  text-decoration: none;
  color: var(--ep-magenta);
  text-shadow: 0 0 8px rgba(255,0,170,0.3);
}

/* Star Rating */
ul.products li.product .star-rating {
  margin: 0 var(--wp--preset--spacing--30) var(--wp--preset--spacing--10);
  color: var(--ep-cyan);
  font-size: 0.75rem;
}

/* Add to Cart Button (Loop) */
ul.products li.product .button,
ul.products li.product a.added_to_cart {
  display: block;
  margin: auto var(--wp--preset--spacing--30) var(--wp--preset--spacing--30) !important;
  padding: 12px 20px !important;
  font-family: 'Orbitron', sans-serif !important;
  font-size: 0.65rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  text-align: center;
  text-decoration: none;
  color: var(--ep-cyan) !important;
  background: rgba(0,229,255,0.06) !important;
  border: 1.5px solid var(--ep-cyan) !important;
  border-radius: 50px !important;
  box-shadow: 0 0 16px rgba(0,229,255,0.15), inset 0 0 16px rgba(0,229,255,0.05);
  transition: all 0.3s ease !important;
  cursor: pointer;
}

ul.products li.product .button:hover,
ul.products li.product a.added_to_cart:hover {
  background: var(--ep-cyan) !important;
  color: var(--ep-black-deep) !important;
  box-shadow: 0 0 32px rgba(0,229,255,0.3), inset 0 0 24px rgba(0,229,255,0.1);
}

ul.products li.product a.added_to_cart {
  color: var(--ep-magenta) !important;
  border-color: var(--ep-magenta) !important;
  background: rgba(255,0,170,0.06) !important;
  box-shadow: 0 0 16px rgba(255,0,170,0.12);
}

/* === Sale Badge === */
.ep-sale-badge,
span.onsale {
  position: absolute !important;
  top: 12px;
  left: 12px;
  z-index: 5;
  background: var(--ep-magenta) !important;
  color: var(--ep-black-deep) !important;
  font-family: 'Orbitron', sans-serif !important;
  font-size: 0.6rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 6px 14px !important;
  border-radius: 50px !important;
  box-shadow: 0 0 16px rgba(255,0,170,0.4);
  line-height: 1;
  min-width: auto !important;
  min-height: auto !important;
}

/* === Single Product — Futuristic Stable Layout === */

/* CRITICAL: ensure single product page is fully scrollable */
body.single-product {
  overflow-y: auto !important;
  height: auto !important;
}

body.single-product .wp-site-blocks {
  overflow: visible !important;
  height: auto !important;
  min-height: 100vh;
}

body.single-product main {
  overflow: visible !important;
}

body.single-product .wp-block-group {
  overflow: visible !important;
}

/* Prevent any horizontal overflow on single product pages */
.single-product .ep-wc-wrapper,
.single-product main {
  max-width: 100vw;
}

/* Ensure the product wrapper has visible overflow so nothing is clipped */
.single-product .product,
.single-product .woocommerce {
  overflow: visible !important;
}

.single-product .product {
  padding-top: var(--wp--preset--spacing--40);
  display: block !important;
}

/* Two-column product layout */
.single-product .product .woocommerce-product-gallery,
.single-product .product .summary {
  max-width: 100%;
  box-sizing: border-box;
}

.single-product .product > .woocommerce-product-gallery {
  float: none;
  width: 100%;
}

.single-product .product > .summary {
  float: none;
  width: 100%;
}

/* If WC uses the classic float layout, constrain it */
@media (min-width: 769px) {
  .single-product .product > .woocommerce-product-gallery {
    float: left;
    width: 48%;
    margin-right: 4%;
  }
  .single-product .product > .summary {
    float: right;
    width: 48%;
    margin-right: 0;
  }
  .single-product .product::after {
    content: '';
    display: table;
    clear: both;
  }
}

/* Product Title — readable, not oversized.
   Uses lower specificity so editor customisations are respected.
   Only the word-break / overflow rules use !important to prevent overflow. */
.single-product .product .product_title,
.single-product .product_title,
.single-product .wp-block-post-title,
.ep-wc-single-product .wp-block-post-title {
  font-size: clamp(1rem, 2vw, 1.4rem);
  font-weight: 700;
  letter-spacing: 0.01em;
  line-height: 1.3;
  margin-bottom: var(--wp--preset--spacing--20);
  word-break: break-word !important;
  overflow-wrap: break-word !important;
  hyphens: auto;
  max-width: 100% !important;
  font-family: 'Exo 2', sans-serif;
}

/* Block-based single product title — fallback styles without !important
   so the editor's typography controls take precedence. */
.ep-wc-single-product .wp-block-post-title {
  font-size: clamp(1rem, 2vw, 1.4rem);
  font-family: 'Exo 2', sans-serif;
  font-weight: 700;
  letter-spacing: 0.01em;
}

/* Price — clear and readable */
.single-product .product .price {
  font-family: 'Orbitron', sans-serif;
  font-size: 1.35rem;
  font-weight: 700;
  color: var(--ep-cyan);
  text-shadow: 0 0 10px rgba(0,229,255,0.25);
  margin-bottom: var(--wp--preset--spacing--20);
  display: flex;
  align-items: baseline;
  gap: 12px;
  flex-wrap: wrap;
}

.single-product .product .price del {
  font-size: 0.9rem;
  color: var(--ep-metallic-gray);
  text-shadow: none;
  opacity: 0.6;
}

.single-product .product .price ins {
  text-decoration: none;
  color: var(--ep-magenta);
  text-shadow: 0 0 10px rgba(255,0,170,0.25);
}

/* Short Description — readable and well-spaced */
.single-product .woocommerce-product-details__short-description,
.single-product .product .woocommerce-product-details__short-description p {
  font-family: 'Exo 2', sans-serif;
  font-size: 0.92rem;
  line-height: 1.75;
  color: #D8D8EA;
  word-break: break-word;
  overflow-wrap: break-word;
  margin-bottom: var(--wp--preset--spacing--20);
}

/* Product Meta — clean layout */
.single-product .product_meta {
  font-family: 'Exo 2', sans-serif;
  font-size: 0.82rem;
  color: #C0C0D8;
  padding-top: var(--wp--preset--spacing--20);
  border-top: 1px solid var(--ep-glass-border);
  margin-top: var(--wp--preset--spacing--30);
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.single-product .product_meta > span {
  display: block;
}

.single-product .product_meta a {
  color: var(--ep-cyan);
  text-decoration: none;
  transition: color 0.3s ease;
}

.single-product .product_meta a:hover {
  color: var(--ep-magenta);
}

/* Gallery — contained, no overflow */
.single-product .woocommerce-product-gallery {
  border-radius: 16px;
  overflow: visible;
  max-width: 100%;
}

.single-product .woocommerce-product-gallery .woocommerce-product-gallery__wrapper {
  max-width: 100%;
  overflow: hidden;
  border-radius: 16px;
  background: #0A0A1A;
}

.single-product .woocommerce-product-gallery img {
  border-radius: 0;
  max-width: 100%;
  height: auto;
  display: block;
  background: #0A0A1A;
}

/* Gallery image backgrounds — use a neutral dark tone so images are always visible */
.single-product .woocommerce-product-gallery,
.single-product .woocommerce-product-gallery .woocommerce-product-gallery__wrapper,
.single-product .woocommerce-product-gallery .woocommerce-product-gallery__image,
.single-product .woocommerce-product-gallery .woocommerce-product-gallery__image a,
.single-product .woocommerce-product-gallery .flex-viewport,
.single-product .woocommerce-product-gallery .flex-viewport li,
.single-product .woocommerce-product-gallery .flex-viewport .woocommerce-product-gallery__image,
.single-product .wc-block-woocommerce-product-image-gallery,
.single-product .wp-block-woocommerce-product-image-gallery {
  background: #1A1A2E;
}

.single-product .woocommerce-product-gallery .woocommerce-product-gallery__image img,
.single-product .woocommerce-product-gallery .flex-viewport .woocommerce-product-gallery__image img,
.single-product .wc-block-woocommerce-product-image-gallery img,
.single-product .wp-block-woocommerce-product-image-gallery img {
  background: #1A1A2E;
  width: 100%;
  height: auto;
  display: block;
}

/* WooCommerce block gallery — ensure images are always visible */
.single-product .wc-block-woocommerce-product-image-gallery .wc-block-components-product-gallery-large-image img,
.single-product .wc-block-woocommerce-product-image-gallery .wc-block-components-product-gallery-large-image__image {
  background: #1A1A2E;
  width: 100%;
  height: auto;
}

/* Ensure block gallery thumbnails are also visible */
.single-product .wc-block-woocommerce-product-image-gallery .wc-block-components-product-gallery-thumbnails img {
  background: #1A1A2E;
  border-radius: 6px;
  border: 2px solid rgba(0, 229, 255, 0.12);
  object-fit: cover;
  width: 60px;
  height: 60px;
}

.single-product .woocommerce-product-gallery .flex-viewport {
  border-radius: 16px;
  overflow: hidden;
}

.single-product .woocommerce-product-gallery .zoomImg {
  background: #1A1A2E;
}

/* Ensure every slide is opaque — prevents black flash on thumbnail click */
.single-product .woocommerce-product-gallery .flex-active-slide {
  opacity: 1 !important;
}

/* Ensure WC gallery navigation arrows are visible */
.single-product .woocommerce-product-gallery .flex-direction-nav a {
  background: rgba(0, 229, 255, 0.15);
  color: #00E5FF;
  border-radius: 50%;
  width: 36px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.3s ease, background 0.3s ease;
}

.single-product .woocommerce-product-gallery:hover .flex-direction-nav a {
  opacity: 0.8;
}

.single-product .woocommerce-product-gallery .flex-direction-nav a:hover {
  background: rgba(0, 229, 255, 0.3);
  opacity: 1;
}

/* === WooCommerce Lightbox / PhotoSwipe fix === */
/* Ensure the lightbox shows image at viewport center without needing to scroll */
.pswp,
.pswp__bg,
.pswp__scroll-wrap,
.pswp__container {
  z-index: 200000 !important;
}

.pswp__bg {
  background: rgba(2, 2, 10, 0.97) !important;
}

.pswp__img {
  object-fit: contain !important;
  background: transparent !important;
}

/* Ensure the lightbox content is centered and visible without scrolling */
.pswp__scroll-wrap {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.pswp__container {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.pswp__item {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.pswp__zoom-wrap {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
}

.pswp__zoom-wrap img {
  max-width: 90vw !important;
  max-height: 85vh !important;
  object-fit: contain !important;
  margin: auto !important;
}

.pswp__top-bar {
  background: rgba(5, 5, 16, 0.8) !important;
}

.pswp__button {
  color: #00E5FF !important;
}

.pswp__counter {
  color: #8A8A9A !important;
  font-family: 'Orbitron', sans-serif !important;
  font-size: 0.65rem !important;
  letter-spacing: 0.1em;
}

/* Gallery thumbnails row — contained, never overflow */
.single-product .woocommerce-product-gallery .flex-control-thumbs {
  display: flex;
  gap: 6px;
  margin-top: 12px;
  padding: 0;
  list-style: none;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  max-width: 100%;
  flex-wrap: nowrap;
}

.single-product .woocommerce-product-gallery .flex-control-thumbs li {
  flex: 0 0 60px;
  width: 60px;
  height: 60px;
}

.single-product .woocommerce-product-gallery .flex-control-thumbs li img {
  border-radius: 6px;
  border: 2px solid rgba(0, 229, 255, 0.12);
  transition: border-color 0.3s ease, box-shadow 0.3s ease, opacity 0.3s ease;
  cursor: pointer;
  width: 60px;
  height: 60px;
  object-fit: cover;
  background: #1A1A2E;
  opacity: 0.65;
  display: block;
}

.single-product .woocommerce-product-gallery .flex-control-thumbs li img:hover {
  border-color: rgba(0, 229, 255, 0.5);
  box-shadow: 0 0 10px rgba(0, 229, 255, 0.15);
  opacity: 1;
}

.single-product .woocommerce-product-gallery .flex-control-thumbs li img.flex-active {
  border-color: var(--ep-cyan);
  box-shadow: 0 0 14px rgba(0, 229, 255, 0.25);
  opacity: 1;
}

/* Glass card wrapper for the summary */
.single-product .product > .summary {
  background: rgba(10, 10, 30, 0.5);
  border: 1px solid rgba(0, 229, 255, 0.1);
  border-radius: 16px;
  padding: var(--wp--preset--spacing--40);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

/* === Product Gallery Wrapper === */
.ep-product-gallery-wrap {
  overflow: hidden;
  border: 1px solid rgba(0, 229, 255, 0.12);
  background: rgba(10, 10, 30, 0.4);
  position: relative;
}

.ep-product-gallery-wrap::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: 20px;
  border: 1px solid transparent;
  transition: border-color 0.4s ease;
  pointer-events: none;
  z-index: 2;
}

.ep-product-gallery-wrap:hover::after {
  border-color: rgba(0, 229, 255, 0.25);
}

/* === Product Trust Badges Row === */
.ep-product-trust-badges {
  position: relative;
}

.ep-product-trust-badges::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(0, 229, 255, 0.15), rgba(155, 89, 255, 0.1), transparent);
}

/* Quick info section styling */
.ep-product-quick-info {
  padding: 14px 18px;
  background: rgba(255, 255, 255, 0.015);
  border: 1px solid rgba(0, 229, 255, 0.06);
  border-radius: 12px;
}

/* Why Buy section */
.ep-wc-why-buy-section {
  position: relative;
}

.ep-wc-why-buy-section::before {
  content: '';
  position: absolute;
  top: 0;
  left: 10%;
  right: 10%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(0, 229, 255, 0.2), rgba(255, 0, 170, 0.15), rgba(155, 89, 255, 0.2), transparent);
}

/* === Block-based single product summary glass card === */
.ep-single-product-summary {
  background: rgba(10, 10, 30, 0.65);
  border: 1px solid rgba(0, 229, 255, 0.15);
  border-radius: 20px;
  padding: var(--wp--preset--spacing--40);
  backdrop-filter: blur(16px) saturate(120%);
  -webkit-backdrop-filter: blur(16px) saturate(120%);
  position: relative;
  overflow: visible;
}

/* Neon top accent line on summary card */
.ep-single-product-summary::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, #00E5FF, #FF00AA, #9B59FF, transparent);
  opacity: 0.5;
  border-radius: 20px 20px 0 0;
}

/* HUD corner accents on summary */
.ep-single-product-summary::after {
  content: '';
  position: absolute;
  bottom: 10px;
  right: 10px;
  width: 20px;
  height: 20px;
  border-right: 1px solid rgba(0, 229, 255, 0.15);
  border-bottom: 1px solid rgba(0, 229, 255, 0.15);
  pointer-events: none;
  z-index: 1;
  opacity: 0.4;
}

/* Product details section (tabs area) with neon divider */
.ep-wc-product-details-section {
  position: relative;
}

.ep-wc-product-details-section::before {
  content: '';
  position: absolute;
  top: 0;
  left: 10%;
  right: 10%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(0, 229, 255, 0.3), rgba(255, 0, 170, 0.2), rgba(155, 89, 255, 0.3), transparent);
}

/* Related products section */
.ep-wc-related-section {
  position: relative;
}

.ep-wc-related-section::before {
  content: '';
  position: absolute;
  top: 0;
  left: 10%;
  right: 10%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(0, 229, 255, 0.2), transparent);
}

/* WooCommerce block product meta */
.ep-wc-single-product .wp-block-woocommerce-product-meta {
  font-family: 'Exo 2', sans-serif;
  font-size: 0.82rem;
  color: #C0C0D8;
  padding-top: var(--wp--preset--spacing--20);
  border-top: 1px solid rgba(0, 229, 255, 0.1);
  margin-top: var(--wp--preset--spacing--20);
}

.ep-wc-single-product .wp-block-woocommerce-product-meta a {
  color: var(--ep-cyan);
  text-decoration: none;
  transition: color 0.3s ease;
}

.ep-wc-single-product .wp-block-woocommerce-product-meta a:hover {
  color: var(--ep-magenta);
}

/* WooCommerce block product SKU */
.ep-wc-single-product .wc-block-components-product-sku {
  font-family: 'Orbitron', sans-serif;
  font-size: 0.7rem;
  letter-spacing: 0.1em;
  color: #8A8A9A;
  margin-bottom: 6px;
  display: block;
}

/* Star rating on single product */
.ep-wc-single-product .wc-block-components-product-rating,
.ep-wc-single-product .star-rating {
  color: var(--ep-cyan) !important;
  margin-bottom: 8px;
}

/* WooCommerce block add to cart form */
.ep-wc-single-product .wc-block-components-product-add-to-cart {
  margin-top: var(--wp--preset--spacing--20);
  margin-bottom: var(--wp--preset--spacing--20);
}

.ep-wc-single-product .wc-block-components-product-add-to-cart .wc-block-components-product-add-to-cart-button {
  font-family: 'Orbitron', sans-serif !important;
  font-size: 0.7rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: #050510 !important;
  background: linear-gradient(135deg, #00E5FF, #00B8D4) !important;
  border: none !important;
  border-radius: 50px !important;
  padding: 16px 36px !important;
  box-shadow: 0 0 20px rgba(0,229,255,0.3), inset 0 0 8px rgba(255,255,255,0.12);
  transition: box-shadow 0.3s ease, transform 0.15s ease !important;
  cursor: pointer;
}

.ep-wc-single-product .wc-block-components-product-add-to-cart .wc-block-components-product-add-to-cart-button:hover {
  box-shadow: 0 0 32px rgba(0,229,255,0.45), 0 0 60px rgba(0,229,255,0.2), inset 0 0 12px rgba(255,255,255,0.18);
  transform: translateY(-2px);
}

/* WooCommerce block quantity selector */
.ep-wc-single-product .wc-block-components-quantity-selector input {
  background: rgba(255, 255, 255, 0.06) !important;
  border: 1px solid rgba(0, 229, 255, 0.2) !important;
  border-radius: 10px !important;
  color: #F0F0F8 !important;
  font-family: 'Orbitron', sans-serif !important;
  text-align: center;
}

/* WooCommerce block product details (tabs) — futuristic glass panel */
.ep-wc-single-product .wp-block-woocommerce-product-details,
.ep-wc-product-details-section .wp-block-woocommerce-product-details {
  margin-top: 0;
  clear: both;
  background: rgba(10, 10, 30, 0.5);
  border: 1px solid rgba(0, 229, 255, 0.1);
  border-radius: 16px;
  padding: var(--wp--preset--spacing--30);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  overflow: visible !important;
}

.ep-wc-single-product .wp-block-woocommerce-product-details .wc-block-components-tab-panel__tab-list,
.ep-wc-product-details-section .wp-block-woocommerce-product-details .wc-block-components-tab-panel__tab-list {
  display: flex;
  gap: 0;
  border-bottom: 1px solid rgba(0, 229, 255, 0.15);
  margin-bottom: var(--wp--preset--spacing--30);
  padding: 0;
  list-style: none;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.ep-wc-single-product .wp-block-woocommerce-product-details button[role="tab"],
.ep-wc-product-details-section .wp-block-woocommerce-product-details button[role="tab"] {
  font-family: 'Orbitron', sans-serif;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #D0D0E0;
  background: none;
  border: none;
  border-bottom: 2px solid transparent;
  padding: 18px 28px;
  cursor: pointer;
  transition: color 0.3s ease, border-color 0.3s ease, background 0.3s ease;
  white-space: nowrap;
  position: relative;
}

.ep-wc-single-product .wp-block-woocommerce-product-details button[role="tab"][aria-selected="true"],
.ep-wc-single-product .wp-block-woocommerce-product-details button[role="tab"]:hover,
.ep-wc-product-details-section .wp-block-woocommerce-product-details button[role="tab"][aria-selected="true"],
.ep-wc-product-details-section .wp-block-woocommerce-product-details button[role="tab"]:hover {
  color: #00E5FF;
  border-bottom-color: #00E5FF;
  background: rgba(0, 229, 255, 0.03);
  text-shadow: 0 0 8px rgba(0, 229, 255, 0.2);
}

.ep-wc-single-product .wp-block-woocommerce-product-details [role="tabpanel"],
.ep-wc-product-details-section .wp-block-woocommerce-product-details [role="tabpanel"] {
  font-family: 'Exo 2', sans-serif;
  font-size: 0.95rem;
  line-height: 1.85;
  color: #D8D8EA;
  padding: var(--wp--preset--spacing--20) var(--wp--preset--spacing--10);
  overflow: visible !important;
}

.ep-wc-single-product .wp-block-woocommerce-product-details [role="tabpanel"] p,
.ep-wc-product-details-section .wp-block-woocommerce-product-details [role="tabpanel"] p {
  color: #D8D8EA;
  margin-bottom: 1.2em;
  word-break: break-word;
  overflow-wrap: break-word;
}

.ep-wc-single-product .wp-block-woocommerce-product-details [role="tabpanel"] h2,
.ep-wc-product-details-section .wp-block-woocommerce-product-details [role="tabpanel"] h2 {
  font-family: 'Orbitron', sans-serif;
  font-size: 1.1rem;
  color: #F0F0F8;
  letter-spacing: 0.06em;
  margin-bottom: var(--wp--preset--spacing--20);
}

/* WooCommerce product gallery block */
.ep-wc-single-product .wc-block-woocommerce-product-image-gallery,
.ep-wc-single-product .wp-block-woocommerce-product-image-gallery {
  border-radius: 16px;
  overflow: hidden;
}

.ep-wc-single-product .wc-block-woocommerce-product-image-gallery img,
.ep-wc-single-product .wp-block-woocommerce-product-image-gallery img {
  border-radius: 12px;
  max-width: 100%;
  height: auto;
}

/* Ensure all text inside single product is visible */
.ep-wc-single-product p,
.ep-wc-single-product li,
.ep-wc-single-product td,
.ep-wc-single-product th,
.ep-wc-single-product label {
  color: #E0E0F0;
}

.ep-wc-single-product h1,
.ep-wc-single-product h2,
.ep-wc-single-product h3,
.ep-wc-single-product h4 {
  color: #F0F0F8;
}

/* WooCommerce post-excerpt on single product */
.ep-wc-single-product .wp-block-post-excerpt__excerpt {
  color: #D8D8EA;
}

/* Term links on product page */
.ep-wc-single-product .wp-block-post-terms a {
  color: #00E5FF;
  text-decoration: none;
  transition: color 0.3s ease;
}

.ep-wc-single-product .wp-block-post-terms a:hover {
  color: #FF00AA;
}

.ep-wc-single-product .wp-block-post-terms {
  margin-bottom: 6px;
}

/* Add to Cart — prominent and inviting */
.single-product .single_add_to_cart_button,
.ep-btn-wc {
  font-family: 'Orbitron', sans-serif !important;
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: var(--ep-black-deep) !important;
  background: linear-gradient(135deg, var(--ep-cyan), #00B8D4) !important;
  border: none !important;
  border-radius: 50px !important;
  padding: 18px 42px !important;
  box-shadow: 0 0 24px rgba(0,229,255,0.35), inset 0 0 10px rgba(255,255,255,0.15);
  transition: box-shadow 0.3s ease, transform 0.15s ease !important;
  cursor: pointer;
  text-decoration: none;
  display: inline-block;
  position: relative;
  overflow: hidden;
}

.single-product .single_add_to_cart_button::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.25), transparent);
  transition: left 0.5s ease;
}

.single-product .single_add_to_cart_button:hover::before {
  left: 100%;
}

.single-product .single_add_to_cart_button:hover,
.ep-btn-wc:hover {
  box-shadow: 0 0 32px rgba(0,229,255,0.45), 0 0 60px rgba(0,229,255,0.2), inset 0 0 12px rgba(255,255,255,0.18);
  transform: translateY(-2px);
}

/* Cart form row — qty + button inline, more prominent */
.single-product .product form.cart {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
  margin-top: var(--wp--preset--spacing--30);
  margin-bottom: var(--wp--preset--spacing--30);
  padding: 20px 24px;
  background: rgba(0, 229, 255, 0.02);
  border: 1px solid rgba(0, 229, 255, 0.08);
  border-radius: 16px;
}

/* Quantity Input — prominent and easy to use */
.single-product .quantity .qty,
.woocommerce .quantity .qty {
  background: rgba(255, 255, 255, 0.08) !important;
  border: 1.5px solid rgba(0, 229, 255, 0.25) !important;
  border-radius: 12px !important;
  color: var(--ep-metallic-white) !important;
  font-family: 'Orbitron', sans-serif !important;
  font-size: 1rem;
  padding: 14px 16px;
  width: 85px;
  text-align: center;
  -moz-appearance: textfield;
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.single-product .quantity .qty:focus,
.woocommerce .quantity .qty:focus {
  border-color: var(--ep-cyan) !important;
  box-shadow: 0 0 12px rgba(0,229,255,0.15);
  outline: none;
}

/* Sale badge positioning on single product */
.single-product .woocommerce-product-gallery .onsale,
.single-product .woocommerce-product-gallery .ep-sale-badge {
  position: absolute;
  top: 16px;
  left: 16px;
  z-index: 5;
}

/* === Tabs (Product Description / Reviews) — futuristic glass panel === */
.woocommerce-tabs {
  margin-top: var(--wp--preset--spacing--50) !important;
  clear: both;
  overflow: visible !important;
  background: rgba(10, 10, 30, 0.5);
  border: 1px solid rgba(0, 229, 255, 0.1);
  border-radius: 16px;
  padding: var(--wp--preset--spacing--30);
}

.woocommerce-tabs ul.tabs {
  list-style: none;
  padding: 0;
  margin: 0 0 var(--wp--preset--spacing--30);
  display: flex;
  gap: 0;
  border-bottom: 1px solid rgba(0, 229, 255, 0.15);
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.woocommerce-tabs ul.tabs::-webkit-scrollbar {
  display: none;
}

.woocommerce-tabs ul.tabs li {
  margin: 0 !important;
  padding: 0 !important;
  background: none !important;
  border: none !important;
  border-radius: 0 !important;
  flex-shrink: 0;
}

.woocommerce-tabs ul.tabs li::before,
.woocommerce-tabs ul.tabs li::after {
  display: none !important;
}

.woocommerce-tabs ul.tabs li a {
  font-family: 'Orbitron', sans-serif;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #D0D0E0;
  text-decoration: none;
  padding: 18px 28px;
  display: block;
  border-bottom: 2px solid transparent;
  transition: color 0.3s ease, border-color 0.3s ease, background 0.3s ease;
  white-space: nowrap;
}

.woocommerce-tabs ul.tabs li.active a,
.woocommerce-tabs ul.tabs li a:hover {
  color: var(--ep-cyan);
  border-bottom-color: var(--ep-cyan);
  background: rgba(0, 229, 255, 0.03);
  text-shadow: 0 0 8px rgba(0, 229, 255, 0.2);
}

.woocommerce-tabs .panel {
  font-family: 'Exo 2', sans-serif;
  font-size: 0.95rem;
  line-height: 1.85;
  color: #D8D8EA;
  word-break: break-word;
  overflow-wrap: break-word;
  padding: var(--wp--preset--spacing--20) var(--wp--preset--spacing--10);
}

.woocommerce-tabs .panel p {
  color: #D8D8EA;
  margin-bottom: 1.2em;
}

.woocommerce-tabs .panel h2 {
  font-family: 'Orbitron', sans-serif;
  font-size: 1.1rem;
  font-weight: 700;
  color: #F0F0F8;
  margin-bottom: var(--wp--preset--spacing--20);
  letter-spacing: 0.06em;
}

/* Review form inputs */
.woocommerce-tabs #reviews .comment-form input,
.woocommerce-tabs #reviews .comment-form textarea {
  background: rgba(255, 255, 255, 0.06) !important;
  border: 1px solid rgba(0, 229, 255, 0.2) !important;
  border-radius: 10px !important;
  color: #F0F0F8 !important;
  font-family: 'Exo 2', sans-serif;
  padding: 12px 16px;
}

.woocommerce-tabs #reviews .comment-form input:focus,
.woocommerce-tabs #reviews .comment-form textarea:focus {
  border-color: var(--ep-cyan) !important;
  box-shadow: 0 0 12px rgba(0,229,255,0.15);
  outline: none;
}

.woocommerce-tabs #reviews .comment-form label {
  color: #D0D0E0;
  font-family: 'Orbitron', sans-serif;
  font-size: 0.6rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
}

/* Review comments */
.woocommerce-tabs #reviews .woocommerce-Reviews-title {
  font-family: 'Orbitron', sans-serif;
  font-size: 1rem;
  color: #F0F0F8;
}

.woocommerce-tabs #reviews .comment_container {
  border-bottom: 1px solid rgba(0, 229, 255, 0.06);
  padding-bottom: var(--wp--preset--spacing--20);
  margin-bottom: var(--wp--preset--spacing--20);
}

.woocommerce-tabs #reviews .comment_container .woocommerce-review__author {
  color: #E0E0F0;
  font-weight: 700;
}

.woocommerce-tabs #reviews .comment_container .description p {
  color: #C0C0D8;
}

/* === Related Products === */
.related.products,
.upsells.products {
  clear: both;
  margin-top: var(--wp--preset--spacing--60);
  padding-top: var(--wp--preset--spacing--50);
  border-top: 1px solid rgba(0, 229, 255, 0.1);
  overflow: visible !important;
  position: relative;
}

/* Neon accent line on related products */
.related.products::before,
.upsells.products::before {
  content: '';
  position: absolute;
  top: -1px;
  left: 10%;
  right: 10%;
  height: 2px;
  background: linear-gradient(90deg, transparent, rgba(0, 229, 255, 0.3), rgba(255, 0, 170, 0.2), rgba(155, 89, 255, 0.3), transparent);
}

.related.products > h2,
.upsells.products > h2 {
  font-family: 'Orbitron', sans-serif !important;
  font-size: 1.25rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.1em;
  color: var(--ep-metallic-white) !important;
  margin-bottom: var(--wp--preset--spacing--40) !important;
  text-shadow: 0 0 10px rgba(0, 229, 255, 0.15);
}

/* Related products grid — always show at least 3 columns */
.related.products ul.products,
.upsells.products ul.products {
  grid-template-columns: repeat(3, 1fr) !important;
  gap: var(--wp--preset--spacing--30);
}

@media (max-width: 768px) {
  .related.products ul.products,
  .upsells.products ul.products {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

@media (max-width: 480px) {
  .related.products ul.products,
  .upsells.products ul.products {
    grid-template-columns: 1fr !important;
  }
}

/* === Single Product Mobile === */
@media (max-width: 768px) {
  .single-product .product > .woocommerce-product-gallery,
  .single-product .product > .summary {
    float: none !important;
    width: 100% !important;
    margin-right: 0 !important;
  }

  .single-product .product > .summary {
    margin-top: var(--wp--preset--spacing--30);
    padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--20);
  }

  .single-product .product .product_title {
    font-size: clamp(0.9rem, 3vw, 1.1rem) !important;
    letter-spacing: 0;
  }

  .single-product .woocommerce-product-gallery .flex-viewport .woocommerce-product-gallery__image img {
    max-height: 400px;
  }

  .single-product .product .price {
    font-size: 1.15rem;
  }

  .single-product .product form.cart {
    flex-direction: row;
    gap: 10px;
  }

  .single-product .single_add_to_cart_button {
    flex: 1;
    text-align: center;
    padding: 14px 20px !important;
    font-size: 0.62rem !important;
  }

  .woocommerce-tabs {
    padding: var(--wp--preset--spacing--20) var(--wp--preset--spacing--10);
    border-radius: 12px;
  }

  .woocommerce-tabs ul.tabs li a {
    padding: 14px 16px;
    font-size: 0.55rem;
    letter-spacing: 0.08em;
  }

  .woocommerce-tabs .panel {
    padding: var(--wp--preset--spacing--10) 0;
  }

  .single-product .woocommerce-product-details__short-description,
  .single-product .product .woocommerce-product-details__short-description p {
    font-size: 0.88rem;
  }

  .related.products > h2,
  .upsells.products > h2 {
    font-size: 0.95rem !important;
  }

  /* Ensure WC block single product content is fully visible on mobile */
  .single-product .wp-block-group {
    overflow: visible !important;
  }

  /* Block-based single product columns stack on mobile */
  .ep-wc-single-product .wp-block-columns {
    flex-direction: column !important;
  }

  .ep-wc-single-product .wp-block-columns > .wp-block-column {
    flex-basis: 100% !important;
    width: 100% !important;
  }

  .ep-single-product-summary {
    padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--20);
    border-radius: 14px;
    margin-top: var(--wp--preset--spacing--20);
  }

  .ep-wc-single-product .wp-block-woocommerce-product-details button[role="tab"],
  .ep-wc-product-details-section .wp-block-woocommerce-product-details button[role="tab"] {
    padding: 14px 16px;
    font-size: 0.55rem;
    letter-spacing: 0.08em;
  }

  .ep-wc-single-product .wp-block-woocommerce-product-details,
  .ep-wc-product-details-section .wp-block-woocommerce-product-details {
    padding: var(--wp--preset--spacing--20) var(--wp--preset--spacing--10);
    border-radius: 12px;
  }

  .ep-wc-single-product .wc-block-components-product-add-to-cart .wc-block-components-product-add-to-cart-button {
    width: 100%;
    text-align: center;
    padding: 14px 24px !important;
    font-size: 0.62rem !important;
  }

  /* Related products grid goes to 2 columns on mobile */
  .ep-wc-single-product .wp-block-woocommerce-related-products .wp-block-post-template {
    grid-template-columns: repeat(2, 1fr) !important;
  }

  .ep-wc-cta-section .ep-glass-card {
    padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--20) !important;
    border-radius: 14px !important;
  }
}

@media (max-width: 480px) {
  .ep-wc-single-product .wp-block-woocommerce-related-products .wp-block-post-template {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 480px) {
  .single-product .product > .summary {
    padding: var(--wp--preset--spacing--20) 14px;
    border-radius: 12px;
  }

  .single-product .product .product_title {
    font-size: 0.88rem !important;
    letter-spacing: 0;
  }

  .single-product .quantity .qty {
    width: 60px;
    padding: 10px 8px;
    font-size: 0.82rem;
  }

  .ep-single-product-summary {
    padding: var(--wp--preset--spacing--20) 14px;
  }

  .single-product .woocommerce-product-gallery .flex-viewport .woocommerce-product-gallery__image img {
    max-height: 320px;
  }
}

/* === Single Product Full Content Visibility === */
/* Ensure nothing clips the product page content */
body.single-product .entry-content,
body.single-product .post-content,
body.single-product .wp-block-post-content {
  overflow: visible !important;
}

/* WooCommerce product gallery wrapper must not clip */
body.single-product .woocommerce-product-gallery__wrapper {
  overflow: visible !important;
}

/* Ensure flex-control-nav (thumbnails) are visible */
body.single-product .flex-control-nav {
  overflow: visible !important;
}

/* Make sure the product summary is always fully rendered */
body.single-product .summary.entry-summary {
  overflow: visible !important;
}

/* Gallery image neon border on hover */
body.single-product .woocommerce-product-gallery .woocommerce-product-gallery__image {
  position: relative;
  overflow: hidden;
  background: #0A0A1A;
}

body.single-product .woocommerce-product-gallery .woocommerce-product-gallery__image::after {
  content: '';
  position: absolute;
  inset: 0;
  border: 1px solid transparent;
  transition: border-color 0.4s ease, box-shadow 0.4s ease;
  pointer-events: none;
  z-index: 2;
}

body.single-product .woocommerce-product-gallery .woocommerce-product-gallery__image:hover::after {
  border-color: rgba(0, 229, 255, 0.3);
  box-shadow: inset 0 0 20px rgba(0, 229, 255, 0.06);
}

/* Futuristic SKU label */
body.single-product .sku_wrapper,
body.single-product .wc-block-components-product-sku {
  font-family: 'Orbitron', sans-serif;
  font-size: 0.65rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: #6A6A7A;
  display: flex;
  align-items: center;
  gap: 8px;
}

body.single-product .sku_wrapper .sku,
body.single-product .wc-block-components-product-sku__value {
  color: #00E5FF;
  text-shadow: 0 0 6px rgba(0, 229, 255, 0.2);
}

/* === WooCommerce Block Cart & Checkout — Futuristic Cyberpunk === */

/* Progress bar at top of cart/checkout */
.ep-wc-cart-page .wp-block-post-content::before,
.ep-wc-checkout-page .wp-block-post-content::before {
  content: '';
  display: block;
  height: 2px;
  background: linear-gradient(90deg, transparent, #00E5FF, #FF00AA, #9B59FF, transparent);
  margin-bottom: var(--wp--preset--spacing--40);
  opacity: 0.6;
}

/* WooCommerce block cart wrapper */
.wp-block-woocommerce-cart,
.wc-block-cart {
  background: rgba(10, 10, 30, 0.5);
  border: 1px solid rgba(0, 229, 255, 0.1);
  border-radius: 20px;
  padding: var(--wp--preset--spacing--40) !important;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  position: relative;
  overflow: visible;
}

.wp-block-woocommerce-cart::before,
.wc-block-cart::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, #00E5FF, #FF00AA, #9B59FF);
  opacity: 0.5;
  border-radius: 20px 20px 0 0;
}

/* Cart title */
.wc-block-cart h2,
.wp-block-woocommerce-cart h2 {
  font-family: 'Orbitron', sans-serif !important;
  font-weight: 900 !important;
  letter-spacing: 0.06em;
  color: #F0F0F8 !important;
  text-shadow: 0 0 10px rgba(0, 229, 255, 0.15);
}

/* Cart items table */
.wc-block-cart-items,
.wc-block-cart .wc-block-cart-items {
  border: none !important;
}

.wc-block-cart-items .wc-block-cart-items__row,
.wc-block-cart .wc-block-cart-items__row {
  border-bottom: 1px solid rgba(0, 229, 255, 0.06) !important;
  padding: var(--wp--preset--spacing--30) 0 !important;
  transition: background 0.3s ease;
}

.wc-block-cart-items .wc-block-cart-items__row:hover {
  background: rgba(0, 229, 255, 0.015);
}

/* Product image in cart */
.wc-block-cart-item__image img,
.wc-block-cart .wc-block-components-product-image img {
  border-radius: 12px !important;
  border: 1px solid rgba(0, 229, 255, 0.12) !important;
  transition: border-color 0.3s ease;
}

.wc-block-cart-item__image img:hover,
.wc-block-cart .wc-block-components-product-image img:hover {
  border-color: rgba(0, 229, 255, 0.35) !important;
}

/* Product name in cart */
.wc-block-cart .wc-block-components-product-name,
.wc-block-components-product-name {
  font-family: 'Orbitron', sans-serif !important;
  font-size: 0.88rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em;
  color: #F0F0F8 !important;
  text-decoration: none !important;
  transition: color 0.3s ease;
}

.wc-block-cart .wc-block-components-product-name:hover,
.wc-block-components-product-name:hover {
  color: #00E5FF !important;
}

/* Product price in cart */
.wc-block-cart .wc-block-components-product-price,
.wc-block-components-product-price {
  font-family: 'Orbitron', sans-serif !important;
  font-weight: 700 !important;
  color: #00E5FF !important;
  text-shadow: 0 0 6px rgba(0, 229, 255, 0.2);
}

/* Product metadata (variations etc) */
.wc-block-cart .wc-block-components-product-metadata,
.wc-block-components-product-metadata {
  color: #8A8A9A !important;
  font-size: 0.82rem;
}

/* Quantity selector — futuristic */
.wc-block-components-quantity-selector {
  border: 1px solid rgba(0, 229, 255, 0.2) !important;
  border-radius: 12px !important;
  overflow: hidden;
  background: rgba(0, 0, 0, 0.2) !important;
}

.wc-block-components-quantity-selector input {
  background: transparent !important;
  color: #F0F0F8 !important;
  font-family: 'Orbitron', sans-serif !important;
  font-weight: 700 !important;
  border: none !important;
  text-align: center;
}

.wc-block-components-quantity-selector button {
  background: rgba(0, 229, 255, 0.06) !important;
  color: #00E5FF !important;
  border: none !important;
  transition: background 0.3s ease;
}

.wc-block-components-quantity-selector button:hover {
  background: rgba(0, 229, 255, 0.15) !important;
}

/* Remove item link */
.wc-block-cart .wc-block-cart-item__remove-link,
.wc-block-cart-item__remove-link {
  color: #FF4466 !important;
  font-family: 'Exo 2', sans-serif;
  font-size: 0.78rem;
  transition: color 0.3s ease, text-shadow 0.3s ease;
}

.wc-block-cart .wc-block-cart-item__remove-link:hover,
.wc-block-cart-item__remove-link:hover {
  color: #FF00AA !important;
  text-shadow: 0 0 8px rgba(255, 0, 170, 0.3);
}

/* Cart totals sidebar */
.wc-block-cart .wc-block-cart__sidebar,
.wc-block-cart__sidebar {
  background: rgba(10, 10, 30, 0.7) !important;
  border: 1px solid rgba(0, 229, 255, 0.12) !important;
  border-radius: 16px !important;
  padding: var(--wp--preset--spacing--30) !important;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

/* Totals item rows */
.wc-block-components-totals-item {
  border-bottom: 1px solid rgba(0, 229, 255, 0.06) !important;
  padding: 12px 0 !important;
}

.wc-block-components-totals-item__label {
  font-family: 'Orbitron', sans-serif !important;
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #C0C0D8 !important;
}

.wc-block-components-totals-item__value {
  font-family: 'Orbitron', sans-serif !important;
  font-weight: 700 !important;
  color: #E0E0F0 !important;
}

/* Grand total — prominent neon */
.wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
  font-size: 0.82rem !important;
  color: #F0F0F8 !important;
}

.wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
  font-size: 1.35rem !important;
  color: #00E5FF !important;
  text-shadow: 0 0 12px rgba(0, 229, 255, 0.3);
}

/* Proceed to checkout button — glowing CTA */
.wc-block-cart__submit-button,
.wc-block-cart .wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button,
.wc-block-checkout__actions .wc-block-components-button {
  font-family: 'Orbitron', sans-serif !important;
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: #050510 !important;
  background: linear-gradient(135deg, #00E5FF, #00B8D4) !important;
  border: none !important;
  border-radius: 50px !important;
  padding: 18px 40px !important;
  box-shadow: 0 0 24px rgba(0, 229, 255, 0.35), inset 0 0 10px rgba(255, 255, 255, 0.15) !important;
  transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
  cursor: pointer;
  position: relative;
  overflow: hidden;
  width: 100%;
  text-align: center;
  display: block;
}

.wc-block-cart__submit-button:hover,
.wc-block-cart .wc-block-cart__submit-button:hover,
.wc-block-components-checkout-place-order-button:hover,
.wc-block-checkout__actions .wc-block-components-button:hover {
  box-shadow: 0 0 40px rgba(0, 229, 255, 0.5), 0 0 80px rgba(0, 229, 255, 0.2), inset 0 0 16px rgba(255, 255, 255, 0.2) !important;
  transform: translateY(-2px);
}

/* Continue shopping link */
.wc-block-cart .wc-block-components-product-badge,
.wc-block-cart a:not(.wc-block-components-product-name) {
  color: #00E5FF;
  transition: color 0.3s ease;
}

/* Coupon input */
.wc-block-components-totals-coupon .wc-block-components-text-input input,
.wc-block-components-totals-coupon input[type="text"] {
  background: rgba(255, 255, 255, 0.06) !important;
  border: 1px solid rgba(0, 229, 255, 0.2) !important;
  border-radius: 50px !important;
  color: #F0F0F8 !important;
  font-family: 'Exo 2', sans-serif !important;
  padding: 12px 20px !important;
}

.wc-block-components-totals-coupon .wc-block-components-text-input input:focus,
.wc-block-components-totals-coupon input[type="text"]:focus {
  border-color: #00E5FF !important;
  box-shadow: 0 0 12px rgba(0, 229, 255, 0.15) !important;
}

.wc-block-components-totals-coupon button,
.wc-block-components-totals-coupon .wc-block-components-button {
  font-family: 'Orbitron', sans-serif !important;
  font-size: 0.62rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: #00E5FF !important;
  background: rgba(0, 229, 255, 0.06) !important;
  border: 1px solid rgba(0, 229, 255, 0.25) !important;
  border-radius: 50px !important;
  padding: 10px 20px !important;
  transition: all 0.3s ease !important;
}

.wc-block-components-totals-coupon button:hover,
.wc-block-components-totals-coupon .wc-block-components-button:hover {
  background: #00E5FF !important;
  color: #050510 !important;
}

/* Coupon toggle label */
.wc-block-components-totals-coupon__button-text,
.wc-block-components-panel__button {
  color: #00E5FF !important;
  font-family: 'Orbitron', sans-serif !important;
  font-size: 0.65rem !important;
  letter-spacing: 0.1em;
}

/* Shipping calculator */
.wc-block-components-totals-shipping .wc-block-components-shipping-rates-control__package {
  background: rgba(0, 0, 0, 0.15) !important;
  border: 1px solid rgba(0, 229, 255, 0.06) !important;
  border-radius: 12px !important;
  padding: 14px !important;
  margin-top: 8px;
}

.wc-block-components-radio-control__label {
  color: #E0E0F0 !important;
  font-family: 'Exo 2', sans-serif !important;
}

.wc-block-components-radio-control__description {
  color: #8A8A9A !important;
}

.wc-block-components-radio-control__secondary-label {
  color: #00E5FF !important;
  font-family: 'Orbitron', sans-serif !important;
  font-weight: 700;
}

/* Radio buttons */
.wc-block-components-radio-control input[type="radio"] {
	border-color: rgba(0, 229, 255, 0.3) !important;
}

.wc-block-components-radio-control input[type="radio"]:checked {
	border-color: #00E5FF !important;
	background: #00E5FF !important;
}

/* === PAYMENT METHODS SECTION — Light background for maximum readability === */
/* The payment methods section uses a LIGHT background so all gateway
   forms (Multibanco, MBWAY, PagaQui, etc.) render correctly with
   their default light-themed styling. Text is forced to dark colours.
   The contrast between the dark checkout and the light payment section
   draws attention to the payment step and ensures all form fields,
   labels and descriptions are clearly readable. */

.woocommerce-checkout-payment,
.wc-block-checkout .wc-block-checkout__payment-method,
.wc-block-components-payment-method-icons,
.wc-block-checkout__payment-method {
	background: #F5F7FA !important;
	color: #1A1A2E !important;
}

/* Payment method list items — clean white bg with dark text */
.woocommerce-checkout-payment .payment_methods li,
.wc-block-checkout .wc-block-components-radio-control,
.wc-block-checkout .wc-block-components-radio-control__option {
	background: #FFFFFF !important;
	color: #1A1A2E !important;
	border-radius: 10px;
	margin-bottom: 6px;
	transition: box-shadow 0.2s ease;
}

.woocommerce-checkout-payment .payment_methods li:hover {
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

.woocommerce-checkout-payment .payment_methods li .payment_box {
	background: #FFFFFF !important;
	color: #1A1A2E !important;
}

/* Selected payment method expanded box (e.g. MBWAY phone input) */
.woocommerce-checkout-payment .payment_methods li .payment_box,
.wc-block-checkout .wc-block-components-radio-control__option--checked,
.wc-block-checkout .wc-block-components-radio-control__option[data-checked="true"] {
	background: #F5F7FA !important;
	color: #1A1A2E !important;
	border-color: #00B8D4 !important;
}

/* Payment box inner content — phone inputs, descriptions etc */
.woocommerce-checkout-payment .payment_box p,
.woocommerce-checkout-payment .payment_box label,
.woocommerce-checkout-payment .payment_box span,
.woocommerce-checkout-payment .payment_box input,
.woocommerce-checkout-payment .payment_box select,
.woocommerce-checkout-payment .payment_box .wc-credit-card-form label,
.woocommerce-checkout-payment .payment_box .wc-credit-card-form input {
	color: #1A1A2E !important;
}

/* Payment box inputs (MBWAY phone, card fields etc) */
.woocommerce-checkout-payment .payment_box input[type="text"],
.woocommerce-checkout-payment .payment_box input[type="tel"],
.woocommerce-checkout-payment .payment_box input[type="number"],
.woocommerce-checkout-payment .payment_box input[type="email"],
.woocommerce-checkout-payment .payment_box select {
	background: #FFFFFF !important;
	border: 1px solid #CCD0D4 !important;
	border-radius: 8px !important;
	color: #1A1A2E !important;
	padding: 10px 14px !important;
}

.woocommerce-checkout-payment .payment_box input:focus,
.woocommerce-checkout-payment .payment_box select:focus {
	border-color: #00B8D4 !important;
	box-shadow: 0 0 0 2px rgba(0, 184, 212, 0.2) !important;
	outline: none;
}

/* Payment method labels — dark text, clear and prominent */
.woocommerce-checkout-payment .payment_methods li label,
.wc-block-checkout .wc-block-components-payment-method-label {
	color: #1A1A2E !important;
	font-weight: 700 !important;
	font-size: 15px !important;
	letter-spacing: 0.01em;
}

/* Payment method radio buttons */
.woocommerce-checkout-payment .payment_methods li input[type="radio"] {
	accent-color: #00B8D4;
	border-color: #8c8f94 !important;
}

/* Payment method description text inside expanded box — readable size */
.woocommerce-checkout-payment .payment_box .woocommerce-info,
.woocommerce-checkout-payment .payment_box p {
	color: #3A3A4A !important;
	font-size: 14px !important;
	line-height: 1.7 !important;
}

/* Payment box arrow/triangle (the CSS triangle on top of payment box) */
.woocommerce-checkout-payment .payment_box::before {
	border-bottom-color: #F5F7FA !important;
}

/* Eupago plugin specific fields — transparent on white parent */
.woocommerce-checkout-payment .payment_box .eupago-mbway-form,
.woocommerce-checkout-payment .payment_box .eupago-multibanco-form,
.woocommerce-checkout-payment .payment_box .wc-eupago-form,
.woocommerce-checkout-payment .payment_box [class*="eupago"],
.woocommerce-checkout-payment .payment_box [class*="mbway"],
.woocommerce-checkout-payment .payment_box [class*="multibanco"] {
	background: transparent !important;
	color: #1A1A2E !important;
}

/* Country/phone selector dropdowns inside payment methods */
.woocommerce-checkout-payment .payment_box select,
.woocommerce-checkout-payment .payment_box .select2-container,
.woocommerce-checkout-payment .payment_box .select2-selection {
	background: #FFFFFF !important;
	color: #1A1A2E !important;
	border-color: #CCD0D4 !important;
}

/* "Pre Order" and "Approve Order" button text */
.woocommerce-checkout-payment .payment_box .button,
.woocommerce-checkout-payment .payment_box button,
.woocommerce-checkout-payment .payment_box a.button {
	color: #1A1A2E !important;
}

/* === FIX: Force ALL payment method content visible on WHITE background === */
/* The payment section now uses a white/light background for maximum
   readability of gateway forms (Eupago, MBWAY, Multibanco, etc.). */
.woocommerce-checkout-payment .payment_methods,
.woocommerce-checkout-payment .payment_methods li,
.woocommerce-checkout-payment .payment_methods li label,
.woocommerce-checkout-payment .payment_methods li .payment_box,
.woocommerce-checkout-payment .payment_methods li .payment_box p,
.woocommerce-checkout-payment .payment_methods li .payment_box label,
.woocommerce-checkout-payment .payment_methods li .payment_box span,
.woocommerce-checkout-payment .payment_methods li .payment_box div,
.woocommerce-checkout-payment .payment_methods li .payment_box fieldset,
.woocommerce-checkout-payment .payment_methods li .payment_box legend,
.woocommerce-checkout-payment .payment_methods li .payment_box td,
.woocommerce-checkout-payment .payment_methods li .payment_box th,
.woocommerce-checkout-payment .payment_methods li .payment_box li,
.woocommerce-checkout-payment .payment_methods li .payment_box h3,
.woocommerce-checkout-payment .payment_methods li .payment_box h4 {
	color: #1A1A2E !important;
	background-color: transparent !important;
}

/* Payment method list — clean white background with padding */
.woocommerce-checkout-payment .payment_methods {
	background: #FFFFFF !important;
	border-radius: 12px !important;
	padding: 8px !important;
	border: 1px solid #E8E8EE !important;
}

/* Each payment method item row — clear separation */
.woocommerce-checkout-payment .payment_methods > li {
	background: #FFFFFF !important;
	border-bottom: 1px solid #F0F0F4 !important;
	padding: 14px 16px !important;
}

.woocommerce-checkout-payment .payment_methods > li:last-child {
	border-bottom: none !important;
}

/* Payment box (expanded content when method is selected) — slightly tinted */
.woocommerce-checkout-payment .payment_methods > li > .payment_box {
	background-color: #EEF2F7 !important;
	color: #333333 !important;
	border-radius: 8px !important;
	margin-top: 10px !important;
	padding: 16px !important;
	border: 1px solid #DDE2E8 !important;
}

/* CSS triangle pointer on payment box */
.woocommerce-checkout-payment .payment_methods > li > .payment_box::before {
	border-bottom-color: #EEF2F7 !important;
}

/* All inputs inside payment boxes — white bg, dark text, generous sizing */
.woocommerce-checkout-payment .payment_box input[type="text"],
.woocommerce-checkout-payment .payment_box input[type="tel"],
.woocommerce-checkout-payment .payment_box input[type="number"],
.woocommerce-checkout-payment .payment_box input[type="email"],
.woocommerce-checkout-payment .payment_box input[type="password"],
.woocommerce-checkout-payment .payment_box select,
.woocommerce-checkout-payment .payment_box textarea {
	background: #FFFFFF !important;
	border: 1.5px solid #B8BCC4 !important;
	border-radius: 10px !important;
	color: #1A1A2E !important;
	padding: 12px 16px !important;
	font-size: 15px !important;
	line-height: 1.4 !important;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.woocommerce-checkout-payment .payment_box input:focus,
.woocommerce-checkout-payment .payment_box select:focus,
.woocommerce-checkout-payment .payment_box textarea:focus {
	border-color: #0088CC !important;
	box-shadow: 0 0 0 3px rgba(0, 136, 204, 0.15) !important;
	outline: none;
}

/* Placeholder text inside payment inputs */
.woocommerce-checkout-payment .payment_box input::placeholder,
.woocommerce-checkout-payment .payment_box textarea::placeholder {
	color: #8c8f94 !important;
	opacity: 1 !important;
}

/* Select dropdown options */
.woocommerce-checkout-payment .payment_box select option {
	background: #FFFFFF !important;
	color: #1A1A2E !important;
}

/* Radio buttons and checkboxes inside payment methods */
.woocommerce-checkout-payment .payment_methods input[type="radio"] {
	accent-color: #00B8D4;
}

.woocommerce-checkout-payment .payment_methods input[type="checkbox"] {
	accent-color: #00B8D4;
}

/* Payment method logos/images — normal on white bg */
.woocommerce-checkout-payment .payment_methods li label img,
.woocommerce-checkout-payment .payment_methods li img {
	max-height: 28px;
	width: auto;
	filter: none;
	vertical-align: middle;
	margin-left: 6px;
}

/* Eupago specific payment method boxes */
.woocommerce-checkout-payment .wc_payment_method[class*="eupago"] .payment_box,
.woocommerce-checkout-payment .wc_payment_method[class*="mbway"] .payment_box,
.woocommerce-checkout-payment .wc_payment_method[class*="multibanco"] .payment_box,
.woocommerce-checkout-payment .wc_payment_method[class*="cofidis"] .payment_box,
.woocommerce-checkout-payment .wc_payment_method[class*="pagaqui"] .payment_box {
	background-color: #F5F7FA !important;
}

.woocommerce-checkout-payment .wc_payment_method[class*="eupago"] .payment_box *,
.woocommerce-checkout-payment .wc_payment_method[class*="mbway"] .payment_box *,
.woocommerce-checkout-payment .wc_payment_method[class*="multibanco"] .payment_box *,
.woocommerce-checkout-payment .wc_payment_method[class*="cofidis"] .payment_box *,
.woocommerce-checkout-payment .wc_payment_method[class*="pagaqui"] .payment_box * {
	color: #1A1A2E !important;
}

/* Payment method description links — cyan on white bg */
.woocommerce-checkout-payment .payment_box a {
	color: #00889A !important;
	text-decoration: none !important;
}

.woocommerce-checkout-payment .payment_box a:hover {
	color: #CC0088 !important;
	text-decoration: underline !important;
}

/* WooCommerce payment section wrapper — light card with clear border and shadow */
.woocommerce-checkout-payment {
	background: #F5F7FA !important;
	border: 1px solid #D0D5DD !important;
	border-radius: 16px !important;
	padding: var(--wp--preset--spacing--40) !important;
	box-shadow: 0 4px 24px rgba(0, 0, 0, 0.12), 0 0 0 1px rgba(0, 0, 0, 0.04);
	position: relative;
	margin-top: var(--wp--preset--spacing--30);
}

/* Title accent bar at top of payment section */
.woocommerce-checkout-payment::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 3px;
	background: linear-gradient(90deg, #00B8D4, #0088CC, #006699);
	border-radius: 16px 16px 0 0;
}

/* Payment section heading — ensure dark and readable */
.woocommerce-checkout-payment h3,
.woocommerce-checkout-payment h2,
.woocommerce-checkout-payment .wc-block-components-title {
	color: #1A1A2E !important;
	font-weight: 700 !important;
}

/* Place order button container inside payment section */
.woocommerce-checkout-payment .place-order {
	background: transparent !important;
	padding-top: 16px !important;
	border-top: 1px solid #E8E8EE !important;
	margin-top: 16px !important;
}

.woocommerce-checkout-payment .place-order p {
	color: #555555 !important;
	font-size: 13px !important;
	line-height: 1.6 !important;
}

/* Terms and conditions checkbox area */
.woocommerce-checkout-payment .woocommerce-terms-and-conditions-wrapper {
	color: #444444 !important;
	font-size: 13px !important;
}

.woocommerce-checkout-payment .woocommerce-terms-and-conditions-wrapper a {
	color: #0077AA !important;
	font-weight: 600;
}

.woocommerce-checkout-payment .woocommerce-terms-and-conditions-wrapper a:hover {
	color: #005588 !important;
	text-decoration: underline !important;
}

/* WooCommerce block checkout — payment methods section — white bg */
.wc-block-checkout .wc-block-checkout__payment-method,
.wc-block-checkout__payment-method {
	background: #FFFFFF !important;
	color: #1A1A2E !important;
	border-radius: 12px !important;
}

.wc-block-checkout .wc-block-components-radio-control__option {
	background: #FFFFFF !important;
	color: #1A1A2E !important;
}

.wc-block-checkout .wc-block-components-radio-control__option--checked,
.wc-block-checkout .wc-block-components-radio-control__option[data-checked="true"] {
	background: #F0F5FF !important;
	border-color: #00B8D4 !important;
}

.wc-block-checkout .wc-block-components-radio-control__option label,
.wc-block-checkout .wc-block-components-radio-control__option .wc-block-components-radio-control__label,
.wc-block-checkout .wc-block-components-radio-control__option .wc-block-components-radio-control__description,
.wc-block-checkout .wc-block-components-radio-control__option .wc-block-components-radio-control__secondary-label {
	color: #333333 !important;
}

/* Block checkout payment method expanded content */
.wc-block-checkout .wc-block-components-radio-control__option-layout {
	color: #1A1A2E !important;
}

/* Block checkout payment method inputs */
.wc-block-checkout .wc-block-components-payment-method-label input,
.wc-block-checkout .wc-block-checkout__payment-method input[type="text"],
.wc-block-checkout .wc-block-checkout__payment-method input[type="tel"],
.wc-block-checkout .wc-block-checkout__payment-method input[type="number"],
.wc-block-checkout .wc-block-checkout__payment-method select {
	background: #FFFFFF !important;
	border: 1px solid #CCD0D4 !important;
	border-radius: 8px !important;
	color: #1A1A2E !important;
}

/* Block checkout payment method expanded area */
.wc-block-checkout .wc-block-components-payment-method-icons {
	background: transparent !important;
}

/* Payment method description in block checkout */
.wc-block-checkout .wc-block-components-radio-control__description,
.wc-block-checkout .payment_box p,
.wc-block-checkout .wc-block-components-payment-method-label__text {
	color: #555555 !important;
}

/* Links inside payment section — darker cyan for white bg */
.wc-block-checkout .wc-block-components-payment-method-label a {
	color: #00889A !important;
	text-decoration: none;
	transition: color 0.3s ease;
}

/* Ensure all text inside WC payment section inherits dark colour */
.woocommerce-checkout-payment *,
.wc-block-checkout__payment-method * {
	color: inherit;
}

/* Force white background on ALL payment method expanded panels */
.woocommerce-checkout-payment .wc_payment_method .payment_box {
	background-color: #F5F7FA !important;
	color: #333333 !important;
}

/* === ORDER-PAY PAGE (finalizar-compra/order-pay) — WHITE BACKGROUND ===
   When the admin approves an order and sends the payment link,
   the customer lands on /finalizar-compra/order-pay/ORDER_ID/
   This page shows ALL real payment gateways (Card, Multibanco,
   MBWAY, PagaQui, etc.). The entire payment form section needs
   a white/light background for maximum readability of all gateway
   forms, logos and input fields. */

/* The order-pay page body class */
body.woocommerce-order-pay .woocommerce {
	max-width: 900px;
	margin: 0 auto;
}

/* Order-pay: the entire payment form wrapper */
body.woocommerce-order-pay #order_review,
body.woocommerce-order-pay .woocommerce-checkout-payment,
body.woocommerce-order-pay form#order_review {
	background: #FFFFFF !important;
	color: #1A1A2E !important;
	border-radius: 20px !important;
	padding: var(--wp--preset--spacing--40) !important;
	box-shadow: 0 8px 40px rgba(0, 0, 0, 0.15), 0 0 0 1px rgba(0, 0, 0, 0.05);
	border: 1px solid #D0D5DD !important;
}

/* Order-pay: headings inside the form */
body.woocommerce-order-pay #order_review h2,
body.woocommerce-order-pay #order_review h3,
body.woocommerce-order-pay .woocommerce-checkout-payment h2,
body.woocommerce-order-pay .woocommerce-checkout-payment h3 {
	color: #1A1A2E !important;
	font-weight: 700 !important;
}

/* Order-pay: all text inside the payment form */
body.woocommerce-order-pay #order_review p,
body.woocommerce-order-pay #order_review label,
body.woocommerce-order-pay #order_review span,
body.woocommerce-order-pay #order_review td,
body.woocommerce-order-pay #order_review th,
body.woocommerce-order-pay #order_review li,
body.woocommerce-order-pay #order_review div,
body.woocommerce-order-pay .woocommerce-checkout-payment p,
body.woocommerce-order-pay .woocommerce-checkout-payment label,
body.woocommerce-order-pay .woocommerce-checkout-payment span,
body.woocommerce-order-pay .woocommerce-checkout-payment td,
body.woocommerce-order-pay .woocommerce-checkout-payment th {
	color: #1A1A2E !important;
}

/* Order-pay: payment methods list */
body.woocommerce-order-pay .payment_methods {
	background: #FFFFFF !important;
	border-radius: 12px !important;
	padding: 8px !important;
	border: 1px solid #E8E8EE !important;
}

body.woocommerce-order-pay .payment_methods > li {
	background: #FFFFFF !important;
	border-bottom: 1px solid #F0F0F4 !important;
	padding: 14px 16px !important;
}

body.woocommerce-order-pay .payment_methods > li:last-child {
	border-bottom: none !important;
}

/* Order-pay: payment method labels — dark and readable */
body.woocommerce-order-pay .payment_methods li label {
	color: #1A1A2E !important;
	font-weight: 700 !important;
	font-size: 15px !important;
}

/* Order-pay: payment method description boxes */
body.woocommerce-order-pay .payment_methods li .payment_box {
	background-color: #EEF2F7 !important;
	color: #333333 !important;
	border-radius: 8px !important;
	margin-top: 10px !important;
	padding: 16px !important;
	border: 1px solid #DDE2E8 !important;
}

body.woocommerce-order-pay .payment_methods li .payment_box::before {
	border-bottom-color: #EEF2F7 !important;
}

body.woocommerce-order-pay .payment_methods li .payment_box p,
body.woocommerce-order-pay .payment_methods li .payment_box label,
body.woocommerce-order-pay .payment_methods li .payment_box span,
body.woocommerce-order-pay .payment_methods li .payment_box div {
	color: #1A1A2E !important;
}

/* Order-pay: inputs inside payment boxes */
body.woocommerce-order-pay .payment_box input[type="text"],
body.woocommerce-order-pay .payment_box input[type="tel"],
body.woocommerce-order-pay .payment_box input[type="number"],
body.woocommerce-order-pay .payment_box input[type="email"],
body.woocommerce-order-pay .payment_box input[type="password"],
body.woocommerce-order-pay .payment_box select {
	background: #FFFFFF !important;
	border: 1.5px solid #B8BCC4 !important;
	border-radius: 10px !important;
	color: #1A1A2E !important;
	padding: 12px 16px !important;
	font-size: 15px !important;
}

body.woocommerce-order-pay .payment_box input:focus,
body.woocommerce-order-pay .payment_box select:focus {
	border-color: #0088CC !important;
	box-shadow: 0 0 0 3px rgba(0, 136, 204, 0.15) !important;
	outline: none;
}

body.woocommerce-order-pay .payment_box input::placeholder {
	color: #8c8f94 !important;
	opacity: 1 !important;
}

/* Order-pay: radio buttons */
body.woocommerce-order-pay .payment_methods input[type="radio"] {
	accent-color: #00B8D4;
}

/* Order-pay: payment method logos/images */
body.woocommerce-order-pay .payment_methods li label img,
body.woocommerce-order-pay .payment_methods li img {
	max-height: 28px;
	width: auto;
	filter: none;
	vertical-align: middle;
}

/* Order-pay: links inside payment section */
body.woocommerce-order-pay .payment_box a {
	color: #00889A !important;
	text-decoration: none !important;
}

body.woocommerce-order-pay .payment_box a:hover {
	color: #CC0088 !important;
	text-decoration: underline !important;
}

/* Order-pay: Stripe/Card payment form — ensure white bg */
body.woocommerce-order-pay .wc-stripe-elements-field,
body.woocommerce-order-pay .wc-credit-card-form,
body.woocommerce-order-pay .stripe-card-group,
body.woocommerce-order-pay [class*="stripe"],
body.woocommerce-order-pay .payment_box fieldset {
	background: transparent !important;
	color: #1A1A2E !important;
}

body.woocommerce-order-pay .wc-credit-card-form label,
body.woocommerce-order-pay .wc-credit-card-form input {
	color: #1A1A2E !important;
}

/* Order-pay: Eupago specific (Multibanco, MBWAY, PagaQui) */
body.woocommerce-order-pay .wc_payment_method[class*="eupago"] .payment_box,
body.woocommerce-order-pay .wc_payment_method[class*="mbway"] .payment_box,
body.woocommerce-order-pay .wc_payment_method[class*="multibanco"] .payment_box,
body.woocommerce-order-pay .wc_payment_method[class*="pagaqui"] .payment_box {
	background-color: #F5F7FA !important;
}

body.woocommerce-order-pay .wc_payment_method[class*="eupago"] .payment_box *,
body.woocommerce-order-pay .wc_payment_method[class*="mbway"] .payment_box *,
body.woocommerce-order-pay .wc_payment_method[class*="multibanco"] .payment_box *,
body.woocommerce-order-pay .wc_payment_method[class*="pagaqui"] .payment_box * {
	color: #1A1A2E !important;
}

/* Order-pay: order summary table at top of the page */
body.woocommerce-order-pay #order_review table.shop_table {
	background: #FFFFFF !important;
	border: 1px solid #E8E8EE !important;
	border-radius: 12px !important;
	overflow: hidden;
	margin-bottom: var(--wp--preset--spacing--30);
}

body.woocommerce-order-pay #order_review table.shop_table th {
	background: #F8F9FA !important;
	color: #1A1A2E !important;
	font-weight: 700 !important;
	border-bottom: 1px solid #E8E8EE !important;
	padding: 12px 16px !important;
}

body.woocommerce-order-pay #order_review table.shop_table td {
	color: #333333 !important;
	border-bottom: 1px solid #F0F0F4 !important;
	padding: 12px 16px !important;
}

body.woocommerce-order-pay #order_review table.shop_table .order-total td {
	color: #00889A !important;
	font-weight: 900 !important;
	font-size: 1.15rem !important;
}

body.woocommerce-order-pay #order_review table.shop_table .order-total th {
	font-weight: 900 !important;
}

body.woocommerce-order-pay #order_review table.shop_table a {
	color: #00889A !important;
	text-decoration: none;
}

/* Order-pay: Place Order / Pay button */
body.woocommerce-order-pay #place_order,
body.woocommerce-order-pay #order_review button[type="submit"] {
	font-family: 'Orbitron', sans-serif !important;
	font-size: 0.75rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.14em !important;
	text-transform: uppercase !important;
	color: #FFFFFF !important;
	background: linear-gradient(135deg, #00889A, #006677) !important;
	border: none !important;
	border-radius: 50px !important;
	padding: 18px 48px !important;
	box-shadow: 0 4px 20px rgba(0, 136, 154, 0.3);
	transition: all 0.3s ease !important;
	cursor: pointer;
	width: 100%;
	margin-top: var(--wp--preset--spacing--20);
}

body.woocommerce-order-pay #place_order:hover,
body.woocommerce-order-pay #order_review button[type="submit"]:hover {
	box-shadow: 0 6px 30px rgba(0, 136, 154, 0.45);
	transform: translateY(-2px);
}

/* Order-pay: terms and conditions text */
body.woocommerce-order-pay .woocommerce-terms-and-conditions-wrapper {
	color: #444444 !important;
	font-size: 13px !important;
}

body.woocommerce-order-pay .woocommerce-terms-and-conditions-wrapper a {
	color: #0077AA !important;
	font-weight: 600;
}

/* Order-pay: accent bar at top */
body.woocommerce-order-pay .woocommerce-checkout-payment::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 3px;
	background: linear-gradient(90deg, #00B8D4, #0088CC, #006699);
	border-radius: 20px 20px 0 0;
}

/* Order-pay: notices */
body.woocommerce-order-pay .woocommerce-message,
body.woocommerce-order-pay .woocommerce-info,
body.woocommerce-order-pay .woocommerce-error {
	background: #FFFFFF !important;
	color: #333333 !important;
	border-radius: 10px !important;
}

body.woocommerce-order-pay .woocommerce-message a,
body.woocommerce-order-pay .woocommerce-info a {
	color: #00889A !important;
}

/* Order-pay page heading */
body.woocommerce-order-pay .entry-title,
body.woocommerce-order-pay .wp-block-post-title {
	color: #F0F0F8 !important;
	text-align: center;
	margin-bottom: var(--wp--preset--spacing--30) !important;
}

/* === FORCE WHITE BACKGROUND ON ORDER-PAY PAGE (NUCLEAR OVERRIDE) ===
   The previous rules were not applying because the server was caching
   old CSS. These rules use the most specific selectors possible with
   !important on every property to ensure they ALWAYS win over cached
   styles, plugin styles, and theme defaults. */

body.woocommerce-order-pay .woocommerce > #order_review,
body.woocommerce-order-pay .woocommerce > form#order_review,
body.woocommerce-order-pay .woocommerce .woocommerce-checkout-payment,
body.woocommerce-order-pay #order_review .woocommerce-checkout-payment,
body.woocommerce-order-pay form#order_review .woocommerce-checkout-payment {
	background-color: #FFFFFF !important;
	color: #1A1A2E !important;
}

body.woocommerce-order-pay .woocommerce-checkout-payment *:not(svg):not(path):not(a):not(.wp-block-button__link) {
	color: #1A1A2E !important;
}

body.woocommerce-order-pay .woocommerce-checkout-payment a {
	color: #0077AA !important;
}

body.woocommerce-order-pay .woocommerce-checkout-payment input[type="text"],
body.woocommerce-order-pay .woocommerce-checkout-payment input[type="tel"],
body.woocommerce-order-pay .woocommerce-checkout-payment input[type="number"],
body.woocommerce-order-pay .woocommerce-checkout-payment input[type="email"],
body.woocommerce-order-pay .woocommerce-checkout-payment input[type="password"],
body.woocommerce-order-pay .woocommerce-checkout-payment select,
body.woocommerce-order-pay .woocommerce-checkout-payment textarea {
	background-color: #FFFFFF !important;
	color: #1A1A2E !important;
	border-color: #CCD0D4 !important;
}

/* Stripe card element iframe container */
body.woocommerce-order-pay .wc-stripe-elements-field,
body.woocommerce-order-pay .wc-credit-card-form,
body.woocommerce-order-pay .payment_box .wc-payment-form,
body.woocommerce-order-pay .payment_box fieldset {
	background-color: #F5F7FA !important;
	color: #1A1A2E !important;
}

/* Card payment box — the expanded area showing saved cards */
body.woocommerce-order-pay .wc_payment_method.payment_method_stripe .payment_box,
body.woocommerce-order-pay .wc_payment_method:first-child .payment_box {
	background-color: #F0F2F5 !important;
	color: #333333 !important;
}

body.woocommerce-order-pay .wc_payment_method.payment_method_stripe .payment_box *,
body.woocommerce-order-pay .wc_payment_method:first-child .payment_box * {
	color: #333333 !important;
}

/* Radio buttons for saved cards */
body.woocommerce-order-pay .wc-saved-payment-methods label,
body.woocommerce-order-pay .wc-saved-payment-methods li {
	color: #1A1A2E !important;
}

/* Order-pay: place order section */
body.woocommerce-order-pay .place-order {
	background: transparent !important;
	padding-top: 16px !important;
	border-top: 1px solid #E8E8EE !important;
	margin-top: 16px !important;
}

body.woocommerce-order-pay .place-order p {
	color: #555555 !important;
	font-size: 13px !important;
	line-height: 1.6 !important;
}

/* Order-pay: mobile responsive */
@media (max-width: 768px) {
	body.woocommerce-order-pay #order_review,
	body.woocommerce-order-pay .woocommerce-checkout-payment {
		padding: var(--wp--preset--spacing--20) !important;
		border-radius: 14px !important;
	}

	body.woocommerce-order-pay .payment_methods > li {
		padding: 12px 14px !important;
	}

	body.woocommerce-order-pay .payment_methods li label {
		font-size: 14px !important;
	}
}

.woocommerce-checkout-payment .wc_payment_method.payment_method_eupago_mbway .payment_box,
.woocommerce-checkout-payment .wc_payment_method.payment_method_eupago_multibanco .payment_box,
.woocommerce-checkout-payment .wc_payment_method.payment_method_eupago_cofidispay .payment_box,
.woocommerce-checkout-payment .wc_payment_method.payment_method_cod .payment_box,
.woocommerce-checkout-payment .wc_payment_method.payment_method_bacs .payment_box,
.woocommerce-checkout-payment .wc_payment_method.payment_method_cheque .payment_box,
.woocommerce-checkout-payment .wc_payment_method.payment_method_pagaqui .payment_box {
	background-color: #F5F7FA !important;
	color: #333333 !important;
}

/* Payment method icons (Eupago, PagaQui logos) — normal rendering on white */
.woocommerce-checkout-payment .wc_payment_method img,
.woocommerce-checkout-payment .payment_methods img {
	max-height: 28px;
	width: auto;
	filter: none;
}

/* === WooCommerce Block Checkout — Futuristic === */

.wp-block-woocommerce-checkout,
.wc-block-checkout {
  background: rgba(10, 10, 30, 0.4);
  border: 1px solid rgba(0, 229, 255, 0.08);
  border-radius: 20px;
  padding: var(--wp--preset--spacing--40) !important;
  position: relative;
}

.wp-block-woocommerce-checkout::before,
.wc-block-checkout::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, #00E5FF, #FF00AA, #9B59FF);
  opacity: 0.5;
  border-radius: 20px 20px 0 0;
}

/* Checkout section headings */
.wc-block-checkout h2,
.wc-block-checkout .wc-block-components-title {
  font-family: 'Orbitron', sans-serif !important;
  font-weight: 900 !important;
  font-size: 1rem !important;
  letter-spacing: 0.08em;
  color: #F0F0F8 !important;
  text-transform: uppercase;
  position: relative;
  padding-bottom: 12px;
}

.wc-block-checkout h2::after,
.wc-block-checkout .wc-block-components-title::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 40px;
  height: 2px;
  background: linear-gradient(90deg, #00E5FF, transparent);
  border-radius: 1px;
}

/* Checkout form inputs */
.wc-block-checkout .wc-block-components-text-input,
.wc-block-checkout .wc-block-components-combobox {
  margin-bottom: 12px;
}

.wc-block-checkout .wc-block-components-text-input input,
.wc-block-checkout .wc-block-components-combobox input,
.wc-block-checkout select {
  background: rgba(255, 255, 255, 0.06) !important;
  border: 1px solid rgba(0, 229, 255, 0.18) !important;
  border-radius: 12px !important;
  color: #F0F0F8 !important;
  font-family: 'Exo 2', sans-serif !important;
  font-size: 0.9rem !important;
  padding: 14px 18px !important;
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.wc-block-checkout .wc-block-components-text-input input:focus,
.wc-block-checkout .wc-block-components-combobox input:focus,
.wc-block-checkout select:focus {
  border-color: #00E5FF !important;
  box-shadow: 0 0 16px rgba(0, 229, 255, 0.12) !important;
  outline: none;
}

.wc-block-checkout .wc-block-components-text-input label {
  font-family: 'Orbitron', sans-serif !important;
  font-size: 0.58rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: #B0B0C8 !important;
}

/* Checkout sidebar (order summary) */
.wc-block-checkout__sidebar,
.wc-block-checkout .wc-block-checkout__sidebar {
  background: rgba(10, 10, 30, 0.65) !important;
  border: 1px solid rgba(0, 229, 255, 0.1) !important;
  border-radius: 16px !important;
  padding: var(--wp--preset--spacing--30) !important;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

/* Order summary items */
.wc-block-components-order-summary .wc-block-components-order-summary-item {
  border-bottom: 1px solid rgba(0, 229, 255, 0.05) !important;
  padding: 14px 0 !important;
}

.wc-block-components-order-summary-item__image img {
  border-radius: 8px !important;
  border: 1px solid rgba(0, 229, 255, 0.1) !important;
}

.wc-block-components-order-summary-item__description .wc-block-components-product-name {
  font-family: 'Exo 2', sans-serif !important;
  font-size: 0.85rem !important;
  font-weight: 600 !important;
  color: #E8E8F0 !important;
}

.wc-block-components-order-summary-item__individual-prices {
  color: #00E5FF !important;
  font-family: 'Orbitron', sans-serif !important;
  font-size: 0.75rem !important;
}

.wc-block-components-order-summary-item__total-price {
  color: #00E5FF !important;
  font-family: 'Orbitron', sans-serif !important;
  font-weight: 700 !important;
}

/* Payment methods section */
.wc-block-checkout__payment-method,
.wc-block-checkout .wc-block-components-payment-method-label {
  color: #E0E0F0 !important;
  font-family: 'Exo 2', sans-serif !important;
}

.wc-block-checkout .wc-block-components-payment-method-icons img {
  filter: brightness(0.9);
  transition: filter 0.3s ease;
}

.wc-block-checkout .wc-block-components-payment-method-icons img:hover {
  filter: brightness(1.1);
}

/* Checkbox styling */
.wc-block-checkout .wc-block-components-checkbox__input[type="checkbox"] {
  border-color: rgba(0, 229, 255, 0.3) !important;
  border-radius: 4px;
}

.wc-block-checkout .wc-block-components-checkbox__input[type="checkbox"]:checked {
  background: #00E5FF !important;
  border-color: #00E5FF !important;
}

.wc-block-checkout .wc-block-components-checkbox__label {
  color: #D0D0E0 !important;
  font-family: 'Exo 2', sans-serif !important;
  font-size: 0.85rem;
}

/* Privacy policy / terms text */
.wc-block-checkout__terms,
.wc-block-checkout .wc-block-components-checkout-policies {
  color: #8A8A9A !important;
  font-size: 0.78rem;
}

.wc-block-checkout__terms a,
.wc-block-checkout .wc-block-components-checkout-policies a {
  color: #00E5FF !important;
}

/* Express checkout */
.wc-block-checkout__actions_row {
  margin-top: var(--wp--preset--spacing--30);
}

/* Return to cart link on checkout */
.wc-block-checkout__actions .wc-block-components-checkout-return-to-cart-button,
.wc-block-components-checkout-return-to-cart-button {
  font-family: 'Orbitron', sans-serif !important;
  font-size: 0.62rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #8A8A9A !important;
  text-decoration: none !important;
  transition: color 0.3s ease;
}

.wc-block-components-checkout-return-to-cart-button:hover {
  color: #00E5FF !important;
}

/* Notices in cart/checkout */
.wc-block-components-notice-banner {
  border-radius: 12px !important;
  background: rgba(10, 10, 30, 0.8) !important;
  border-left: 3px solid #00E5FF !important;
  color: #E0E0F0 !important;
  font-family: 'Exo 2', sans-serif !important;
  padding: 14px 18px !important;
}

.wc-block-components-notice-banner.is-error {
  border-left-color: #FF00AA !important;
}

.wc-block-components-notice-banner.is-success {
  border-left-color: #00FF88 !important;
}

/* Empty cart state */
.wc-block-cart--is-empty .wc-block-cart__empty-cart__title,
.wc-block-cart--is-empty h2 {
  font-family: 'Orbitron', sans-serif !important;
  color: #F0F0F8 !important;
  text-shadow: 0 0 10px rgba(0, 229, 255, 0.15);
}

.wc-block-cart--is-empty p {
  color: #C0C0D8 !important;
  font-family: 'Exo 2', sans-serif !important;
}

/* Cart/Checkout mobile */
@media (max-width: 768px) {
  .wp-block-woocommerce-cart,
  .wc-block-cart,
  .wp-block-woocommerce-checkout,
  .wc-block-checkout {
    padding: var(--wp--preset--spacing--20) !important;
    border-radius: 14px;
  }

  .wc-block-cart__sidebar,
  .wc-block-checkout__sidebar {
    padding: var(--wp--preset--spacing--20) !important;
    border-radius: 12px !important;
    margin-top: var(--wp--preset--spacing--30);
  }

  .wc-block-cart__submit-button,
  .wc-block-components-checkout-place-order-button {
    padding: 16px 28px !important;
    font-size: 0.65rem !important;
  }

  .wc-block-components-product-name {
    font-size: 0.82rem !important;
  }
}

/* === Classic WooCommerce Cart Page — FUTURISTIC CYBERPUNK v2 === */

/* Cart page wrapper — glassmorphism container */
.woocommerce-cart .woocommerce,
.ep-wc-cart-page .woocommerce {
  max-width: 1200px;
  margin: 0 auto;
}

/* Cart page heading — neon accent */
.woocommerce-cart .entry-title,
.woocommerce-cart .wp-block-post-title,
.ep-wc-cart-page .entry-title,
.ep-wc-cart-page .wp-block-post-title {
  font-family: 'Orbitron', sans-serif !important;
  font-weight: 900 !important;
  letter-spacing: 0.06em;
  color: #00E5FF !important;
  text-shadow: 0 0 16px rgba(0, 229, 255, 0.25);
  text-align: center;
  margin-bottom: var(--wp--preset--spacing--40) !important;
}

/* Cart form table container — glass card styling */
.woocommerce-cart-form {
  background: rgba(10, 10, 30, 0.7);
  border: 1px solid rgba(0, 229, 255, 0.15);
  border-radius: 20px;
  overflow: hidden;
  position: relative;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.woocommerce-cart-form::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, #00E5FF, #FF00AA, #9B59FF, transparent);
  opacity: 0.6;
  z-index: 1;
}

.woocommerce-cart-form table {
  border-collapse: collapse;
  width: 100%;
}

.woocommerce-cart-form table th {
  font-family: 'Orbitron', sans-serif;
  font-size: 0.62rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #00E5FF;
  border-bottom: 1px solid rgba(0, 229, 255, 0.15);
  padding: 18px 20px;
  text-align: left;
  background: rgba(0, 229, 255, 0.02);
}

.woocommerce-cart-form table td {
  font-family: 'Exo 2', sans-serif;
  font-size: 0.92rem;
  color: #F0F0F8;
  padding: 20px;
  border-bottom: 1px solid rgba(0, 229, 255, 0.06);
  vertical-align: middle;
  transition: background 0.3s ease;
}

.woocommerce-cart-form table tr:hover td {
  background: rgba(0, 229, 255, 0.015);
}

.woocommerce-cart-form table td.product-name a {
  color: #E8E8F0;
  text-decoration: none;
  font-weight: 600;
  font-family: 'Orbitron', sans-serif;
  font-size: 0.88rem;
  letter-spacing: 0.04em;
  transition: color 0.3s ease;
}

.woocommerce-cart-form table td.product-name a:hover {
  color: #00E5FF;
  text-shadow: 0 0 8px rgba(0, 229, 255, 0.2);
}

/* Variation/meta info under product name */
.woocommerce-cart-form table td.product-name .variation,
.woocommerce-cart-form table td.product-name dl.variation {
  font-family: 'Exo 2', sans-serif;
  font-size: 0.78rem;
  color: #8A8A9A;
  margin-top: 6px;
}

.woocommerce-cart-form table td.product-name dl.variation dt {
  color: #9B59FF;
  font-weight: 700;
  font-size: 0.68rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.woocommerce-cart-form table td.product-name dl.variation dd {
  color: #C0C0D8;
  margin: 0 0 4px;
}

.woocommerce-cart-form table td.product-price,
.woocommerce-cart-form table td.product-subtotal {
  font-family: 'Orbitron', sans-serif;
  font-weight: 700;
  color: #00E5FF;
  text-shadow: 0 0 6px rgba(0, 229, 255, 0.15);
  font-size: 0.92rem;
  letter-spacing: 0.04em;
}

.woocommerce-cart-form table td.product-subtotal {
  color: #00FF88;
  text-shadow: 0 0 6px rgba(0, 255, 136, 0.15);
}

/* Product thumbnail — neon border on hover */
.woocommerce-cart-form table td.product-thumbnail img {
  border-radius: 12px;
  width: 80px;
  height: 80px;
  object-fit: cover;
  border: 2px solid rgba(0, 229, 255, 0.15);
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
  background: #1A1A2E;
}

.woocommerce-cart-form table tr:hover td.product-thumbnail img {
  border-color: rgba(0, 229, 255, 0.4);
  box-shadow: 0 0 16px rgba(0, 229, 255, 0.1);
}

/* Remove button — futuristic hover */
.woocommerce-cart-form table td.product-remove a {
  color: #5A5A6A !important;
  font-size: 1.3rem;
  transition: all 0.3s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: 1px solid rgba(255, 68, 102, 0.15);
  background: rgba(255, 68, 102, 0.03);
}

.woocommerce-cart-form table td.product-remove a:hover {
  color: #FF4466 !important;
  border-color: rgba(255, 68, 102, 0.5);
  background: rgba(255, 68, 102, 0.08);
  box-shadow: 0 0 12px rgba(255, 68, 102, 0.15);
  transform: scale(1.1);
}

/* Quantity input inside cart — futuristic style */
.woocommerce-cart-form table .quantity .qty {
  background: rgba(255, 255, 255, 0.06) !important;
  border: 1.5px solid rgba(0, 229, 255, 0.2) !important;
  border-radius: 10px !important;
  color: #F0F0F8 !important;
  font-family: 'Orbitron', sans-serif !important;
  font-size: 0.92rem;
  padding: 10px 12px;
  width: 70px;
  text-align: center;
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.woocommerce-cart-form table .quantity .qty:focus {
  border-color: #00E5FF !important;
  box-shadow: 0 0 12px rgba(0, 229, 255, 0.15);
  outline: none;
}

/* Cart Actions — coupon + update button row */
.woocommerce-cart-form .actions {
  padding: 20px;
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  align-items: center;
  border-top: 1px solid rgba(0, 229, 255, 0.08);
  background: rgba(0, 229, 255, 0.015);
}

.woocommerce-cart-form .actions .coupon {
  display: flex;
  gap: 8px;
  flex-grow: 1;
  align-items: stretch;
}

.woocommerce-cart-form .actions .coupon input[type="text"] {
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(155, 89, 255, 0.25);
  border-radius: 50px;
  color: #F0F0F8;
  font-family: 'Exo 2', sans-serif;
  font-size: 0.85rem;
  padding: 12px 22px;
  flex-grow: 1;
  max-width: 280px;
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.woocommerce-cart-form .actions .coupon input[type="text"]::placeholder {
  color: #8A8A9A;
}

.woocommerce-cart-form .actions .coupon input[type="text"]:focus {
  border-color: #9B59FF;
  box-shadow: 0 0 16px rgba(155, 89, 255, 0.15);
  outline: none;
}

.woocommerce-cart-form .actions .coupon button,
.woocommerce-cart-form .actions > button {
  font-family: 'Orbitron', sans-serif !important;
  font-size: 0.62rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  padding: 12px 26px !important;
  border-radius: 50px !important;
  border: 1.5px solid rgba(0, 229, 255, 0.3) !important;
  color: #00E5FF !important;
  background: rgba(0, 229, 255, 0.06) !important;
  cursor: pointer;
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
  white-space: nowrap;
}

.woocommerce-cart-form .actions .coupon button:hover,
.woocommerce-cart-form .actions > button:hover {
  background: #00E5FF !important;
  color: #050510 !important;
  box-shadow: 0 0 20px rgba(0, 229, 255, 0.3);
  border-color: #00E5FF !important;
}

/* Cart Totals — glassmorphism panel */
.cart_totals {
  background: rgba(10, 10, 30, 0.8);
  border: 1px solid rgba(0, 229, 255, 0.18);
  backdrop-filter: blur(16px) saturate(120%);
  -webkit-backdrop-filter: blur(16px) saturate(120%);
  border-radius: 20px;
  padding: var(--wp--preset--spacing--40);
  margin-top: var(--wp--preset--spacing--40);
  position: relative;
  overflow: hidden;
}

.cart_totals::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, #00E5FF, #FF00AA, transparent);
  opacity: 0.5;
}

/* HUD corner accent */
.cart_totals::after {
  content: '';
  position: absolute;
  bottom: 12px;
  right: 12px;
  width: 18px;
  height: 18px;
  border-right: 1px solid rgba(0, 229, 255, 0.15);
  border-bottom: 1px solid rgba(0, 229, 255, 0.15);
  pointer-events: none;
}

.cart_totals h2 {
  font-family: 'Orbitron', sans-serif !important;
  font-size: 0.85rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #00E5FF !important;
  margin-bottom: var(--wp--preset--spacing--30) !important;
  padding-bottom: 14px;
  border-bottom: 1px solid rgba(0, 229, 255, 0.1);
  position: relative;
}

.cart_totals h2::after {
  content: '';
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 50px;
  height: 2px;
  background: linear-gradient(90deg, #00E5FF, transparent);
}

.cart_totals table {
  width: 100%;
  border-collapse: collapse;
}

.cart_totals table th {
  font-family: 'Orbitron', sans-serif;
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #C0C0D8;
  padding: 14px 0;
  text-align: left;
  border-bottom: 1px solid rgba(0, 229, 255, 0.05);
}

.cart_totals table td {
  font-family: 'Exo 2', sans-serif;
  color: #E0E0F0;
  padding: 14px 0;
  text-align: right;
  border-bottom: 1px solid rgba(0, 229, 255, 0.05);
}

/* Shipping options inside cart totals */
.cart_totals .woocommerce-shipping-methods {
  list-style: none;
  padding: 0;
  margin: 0;
}

.cart_totals .woocommerce-shipping-methods li {
  padding: 6px 0;
}

.cart_totals .woocommerce-shipping-methods li label {
  font-family: 'Exo 2', sans-serif;
  font-size: 0.88rem;
  color: #E0E0F0;
  cursor: pointer;
}

.cart_totals .woocommerce-shipping-methods li input[type="radio"] {
  accent-color: #00E5FF;
  margin-right: 8px;
}

.cart_totals .woocommerce-shipping-methods li .amount {
  color: #00E5FF;
  font-family: 'Orbitron', sans-serif;
  font-weight: 700;
  font-size: 0.82rem;
}

/* Shipping destination address in cart */
.cart_totals .woocommerce-shipping-destination {
  font-family: 'Exo 2', sans-serif;
  font-size: 0.82rem;
  color: #8A8A9A;
  margin-top: 6px;
}

.cart_totals .shipping-calculator-button {
  color: #9B59FF !important;
  font-family: 'Orbitron', sans-serif;
  font-size: 0.58rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-decoration: none;
  transition: color 0.3s ease;
}

.cart_totals .shipping-calculator-button:hover {
  color: #00E5FF !important;
}

/* Subtotal row */
.cart_totals table tr.cart-subtotal td {
  font-family: 'Orbitron', sans-serif;
  font-size: 1rem;
  font-weight: 700;
  color: #E8E8F0;
}

/* Tax row */
.cart_totals table tr.tax-rate td,
.cart_totals table tr.tax-total td {
  color: #C0C0D8;
  font-size: 0.88rem;
}

/* Grand total row — prominent neon glow */
.cart_totals .order-total th {
  font-size: 0.72rem !important;
  color: #F0F0F8 !important;
  letter-spacing: 0.15em;
  padding-top: 18px;
  border-top: 1px solid rgba(0, 229, 255, 0.12);
}

.cart_totals .order-total td {
  font-family: 'Orbitron', sans-serif;
  font-size: 1.5rem;
  font-weight: 900;
  color: #00E5FF;
  text-shadow: 0 0 16px rgba(0, 229, 255, 0.35);
  padding-top: 18px;
  border-top: 1px solid rgba(0, 229, 255, 0.12);
}

/* Proceed to checkout button — glowing CTA */
.cart_totals .wc-proceed-to-checkout {
  padding-top: var(--wp--preset--spacing--30);
}

.cart_totals .wc-proceed-to-checkout a {
  display: block;
  text-align: center;
  font-family: 'Orbitron', sans-serif !important;
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: #050510 !important;
  background: linear-gradient(135deg, #00E5FF, #00B8D4) !important;
  border: none !important;
  border-radius: 50px !important;
  padding: 18px 36px !important;
  box-shadow: 0 0 24px rgba(0, 229, 255, 0.35), inset 0 0 10px rgba(255, 255, 255, 0.15) !important;
  transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
  text-decoration: none;
  position: relative;
  overflow: hidden;
}

.cart_totals .wc-proceed-to-checkout a::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.25), transparent);
  transition: left 0.5s ease;
}

.cart_totals .wc-proceed-to-checkout a:hover::before {
  left: 100%;
}

.cart_totals .wc-proceed-to-checkout a:hover {
  box-shadow: 0 0 40px rgba(0, 229, 255, 0.5), 0 0 80px rgba(0, 229, 255, 0.2), inset 0 0 16px rgba(255, 255, 255, 0.2) !important;
  transform: translateY(-2px);
}

/* === WooCommerce Block Cart — Enhanced Dark Theme === */

/* Block cart wrapper — glass card */
.ep-wc-cart-page .wp-block-woocommerce-cart,
.ep-wc-cart-page .wc-block-cart {
  background: rgba(10, 10, 30, 0.65);
  border: 1px solid rgba(0, 229, 255, 0.12);
  border-radius: 24px;
  padding: var(--wp--preset--spacing--40) !important;
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  position: relative;
  overflow: visible;
}

.ep-wc-cart-page .wp-block-woocommerce-cart::before,
.ep-wc-cart-page .wc-block-cart::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, #00E5FF, #FF00AA, #9B59FF);
  opacity: 0.6;
  border-radius: 24px 24px 0 0;
}

/* Block cart product images — neon border */
.ep-wc-cart-page .wc-block-cart-item__image img,
.ep-wc-cart-page .wc-block-components-product-image img {
  border-radius: 14px !important;
  border: 2px solid rgba(0, 229, 255, 0.12) !important;
  background: #1A1A2E;
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.ep-wc-cart-page .wc-block-cart-items__row:hover .wc-block-cart-item__image img,
.ep-wc-cart-page .wc-block-cart-items__row:hover .wc-block-components-product-image img {
  border-color: rgba(0, 229, 255, 0.4) !important;
  box-shadow: 0 0 16px rgba(0, 229, 255, 0.1);
}

/* Block cart sidebar (totals) — glassmorphism */
.ep-wc-cart-page .wc-block-cart__sidebar,
.ep-wc-cart-page .wc-block-cart .wc-block-cart__sidebar {
  background: rgba(10, 10, 30, 0.75) !important;
  border: 1px solid rgba(0, 229, 255, 0.15) !important;
  border-radius: 20px !important;
  padding: var(--wp--preset--spacing--30) !important;
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  position: relative;
  overflow: hidden;
}

.ep-wc-cart-page .wc-block-cart__sidebar::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, #00E5FF, transparent);
  opacity: 0.4;
}

/* Block cart total — neon glow */
.ep-wc-cart-page .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
  font-family: 'Orbitron', sans-serif !important;
  font-size: 1.5rem !important;
  font-weight: 900 !important;
  color: #00E5FF !important;
  text-shadow: 0 0 16px rgba(0, 229, 255, 0.35);
}

/* Block cart empty state */
.ep-wc-cart-page .wc-block-cart--is-empty {
  text-align: center;
  padding: var(--wp--preset--spacing--60) var(--wp--preset--spacing--30);
}

.ep-wc-cart-page .wc-block-cart--is-empty h2 {
  font-family: 'Orbitron', sans-serif !important;
  color: #00E5FF !important;
  text-shadow: 0 0 16px rgba(0, 229, 255, 0.2);
}

.ep-wc-cart-page .wc-block-cart--is-empty p {
  color: #C0C0D8 !important;
  font-family: 'Exo 2', sans-serif;
  font-size: 1rem;
}

/* Empty cart return to shop button */
.ep-wc-cart-page .wc-block-cart--is-empty .wc-block-components-button,
.ep-wc-cart-page .wc-block-cart--is-empty a.wp-element-button {
  font-family: 'Orbitron', sans-serif !important;
  font-size: 0.7rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: #050510 !important;
  background: linear-gradient(135deg, #00E5FF, #00B8D4) !important;
  border: none !important;
  border-radius: 50px !important;
  padding: 16px 36px !important;
  box-shadow: 0 0 20px rgba(0, 229, 255, 0.3);
  transition: all 0.3s ease !important;
}

.ep-wc-cart-page .wc-block-cart--is-empty .wc-block-components-button:hover,
.ep-wc-cart-page .wc-block-cart--is-empty a.wp-element-button:hover {
  box-shadow: 0 0 36px rgba(0, 229, 255, 0.5) !important;
  transform: translateY(-2px);
}

/* Cross-sells section in cart */
.woocommerce-cart .cross-sells {
  margin-top: var(--wp--preset--spacing--50);
}

.woocommerce-cart .cross-sells h2 {
  font-family: 'Orbitron', sans-serif !important;
  font-size: 1rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.08em;
  color: #F0F0F8 !important;
  text-shadow: 0 0 8px rgba(0, 229, 255, 0.1);
  margin-bottom: var(--wp--preset--spacing--30) !important;
}

/* === Checkout Page === */
.woocommerce-checkout h3,
.woocommerce-checkout h2 {
  font-family: 'Orbitron', sans-serif !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em;
  color: #FFFFFF !important;
}

.woocommerce-checkout .form-row label {
  font-family: 'Orbitron', sans-serif;
  font-size: 0.65rem;
  font-weight: 400;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: #D0D0E0;
  margin-bottom: 6px;
  display: block;
}

.woocommerce-checkout .form-row input[type="text"],
.woocommerce-checkout .form-row input[type="email"],
.woocommerce-checkout .form-row input[type="tel"],
.woocommerce-checkout .form-row input[type="number"],
.woocommerce-checkout .form-row input[type="password"],
.woocommerce-checkout .form-row textarea,
.woocommerce-checkout .form-row select,
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea {
  background: rgba(10, 10, 30, 0.8) !important;
  border: 1px solid rgba(0, 229, 255, 0.2) !important;
  border-radius: 8px !important;
  color: #F0F0F8 !important;
  font-family: 'Exo 2', sans-serif !important;
  font-size: 0.9rem;
  padding: 12px 16px;
  width: 100%;
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.woocommerce-checkout .form-row input:focus,
.woocommerce-checkout .form-row textarea:focus,
.woocommerce-checkout .form-row select:focus,
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus {
  border-color: var(--ep-cyan) !important;
  box-shadow: 0 0 12px rgba(0,229,255,0.2);
  outline: none;
}

.woocommerce-checkout .form-row select {
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2300E5FF' d='M6 8L1 3h10z'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 14px center !important;
  padding-right: 36px;
}

/* Order Review */
.woocommerce-checkout-review-order-table {
  width: 100%;
  border-collapse: collapse;
}

.woocommerce-checkout-review-order-table th {
  font-family: 'Orbitron', sans-serif;
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ep-cyan);
  padding: var(--wp--preset--spacing--10) 0;
  border-bottom: 1px solid var(--ep-glass-border);
}

.woocommerce-checkout-review-order-table td {
  font-family: 'Exo 2', sans-serif;
  font-size: 0.85rem;
  color: var(--ep-metallic-white);
  padding: var(--wp--preset--spacing--10) 0;
  border-bottom: 1px solid rgba(0,229,255,0.06);
}

.woocommerce-checkout-review-order-table .order-total td {
  font-family: 'Orbitron', sans-serif;
  font-size: 1.25rem;
  font-weight: 900;
  color: var(--ep-cyan);
  text-shadow: 0 0 12px rgba(0,229,255,0.3);
}

/* Place Order Button */
#place_order {
  font-family: 'Orbitron', sans-serif !important;
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: var(--ep-black-deep) !important;
  background: var(--ep-cyan) !important;
  border: none !important;
  border-radius: 50px !important;
  padding: 18px 48px !important;
  box-shadow: 0 0 24px rgba(0,229,255,0.4);
  transition: all 0.3s ease !important;
  cursor: pointer;
  width: 100%;
  margin-top: var(--wp--preset--spacing--30);
}

#place_order:hover {
  box-shadow: 0 0 40px rgba(0,229,255,0.6), 0 0 70px rgba(0,229,255,0.3);
  transform: translateY(-2px);
}

/* Payment Methods */
.woocommerce-checkout-payment {
  background: rgba(10, 10, 30, 0.8) !important;
  border: 1px solid rgba(0, 229, 255, 0.15) !important;
  border-radius: 16px !important;
  padding: var(--wp--preset--spacing--30) !important;
}

.woocommerce-checkout-payment .payment_methods {
  list-style: none;
  padding: 0;
  margin: 0;
}

.woocommerce-checkout-payment .payment_methods li {
  padding: var(--wp--preset--spacing--20) 0;
  border-bottom: 1px solid rgba(0,229,255,0.06);
}

.woocommerce-checkout-payment .payment_methods li label {
  font-family: 'Exo 2', sans-serif;
  font-weight: 600;
  color: #F0F0F8;
  cursor: pointer;
}

.woocommerce-checkout-payment .payment_methods li .payment_box {
  font-family: 'Exo 2', sans-serif;
  font-size: 0.85rem;
  color: var(--ep-metallic-gray);
  padding: var(--wp--preset--spacing--10) 0;
}

/* === My Account Login / Register Forms === */

/* === LOGIN + REGISTER — REBUILT FROM SCRATCH v2 === */
/* Previous styles completely removed and rebuilt to fix
   "nao mudou esta igual" issue on production servers. */

.woocommerce-account .u-columns,
.woocommerce-account .u-columns.col2-set {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 0 !important;
  max-width: 1000px !important;
  margin: 0 auto !important;
  border-radius: 28px !important;
  overflow: hidden !important;
  box-shadow: 0 24px 80px rgba(0, 0, 0, 0.6), 0 0 50px rgba(0, 229, 255, 0.05) !important;
  border: 1px solid rgba(0, 229, 255, 0.12) !important;
  position: relative !important;
}

.woocommerce-account .u-columns::before,
.woocommerce-account .u-columns.col2-set::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 3px !important;
  background: linear-gradient(90deg, #00E5FF, #FF00AA, #9B59FF) !important;
  opacity: 0.8 !important;
  z-index: 2 !important;
  border-radius: 28px 28px 0 0 !important;
}

.woocommerce-account .u-columns::after,
.woocommerce-account .u-columns.col2-set::after {
  content: '' !important;
  position: absolute !important;
  top: 8% !important;
  bottom: 8% !important;
  left: 50% !important;
  width: 1px !important;
  height: auto !important;
  background: linear-gradient(180deg, transparent 0%, rgba(0, 229, 255, 0.25) 30%, rgba(255, 0, 170, 0.2) 70%, transparent 100%) !important;
  z-index: 2 !important;
  pointer-events: none !important;
}

@media (max-width: 768px) {
  .woocommerce-account .u-columns,
  .woocommerce-account .u-columns.col2-set {
    grid-template-columns: 1fr !important;
    border-radius: 22px !important;
    max-width: 500px !important;
  }
  .woocommerce-account .u-columns::after,
  .woocommerce-account .u-columns.col2-set::after {
    top: auto !important;
    bottom: auto !important;
    left: 8% !important;
    right: 8% !important;
    width: auto !important;
    height: 1px !important;
    top: 50% !important;
    background: linear-gradient(90deg, transparent, rgba(0, 229, 255, 0.2), transparent) !important;
  }
}

.woocommerce-account .u-columns > .u-column-1,
.woocommerce-account .u-columns > .u-column-2,
.woocommerce-account .u-columns > .col-1,
.woocommerce-account .u-columns > .col-2,
.woocommerce-account .u-columns.col2-set > .u-column-1,
.woocommerce-account .u-columns.col2-set > .u-column-2,
.woocommerce-account .u-columns.col2-set > .col-1,
.woocommerce-account .u-columns.col2-set > .col-2 {
  background: rgba(6, 6, 22, 0.94) !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 52px 48px 48px !important;
  backdrop-filter: blur(18px) saturate(120%) !important;
  -webkit-backdrop-filter: blur(18px) saturate(120%) !important;
  position: relative !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  min-height: 520px !important;
  width: auto !important;
  float: none !important;
  flex-basis: auto !important;
}

.woocommerce-account .u-columns > .u-column-2,
.woocommerce-account .u-columns > .col-2,
.woocommerce-account .u-columns.col2-set > .u-column-2,
.woocommerce-account .u-columns.col2-set > .col-2 {
  background: rgba(4, 4, 18, 0.94) !important;
}

.woocommerce-account .u-columns > .u-column-1::before,
.woocommerce-account .u-columns > .col-1::before,
.woocommerce-account .u-columns.col2-set > .u-column-1::before,
.woocommerce-account .u-columns.col2-set > .col-1::before {
  content: '' !important;
  position: absolute !important;
  top: 18px !important;
  left: 18px !important;
  width: 20px !important;
  height: 20px !important;
  border-left: 1px solid rgba(0, 229, 255, 0.25) !important;
  border-top: 1px solid rgba(0, 229, 255, 0.25) !important;
  pointer-events: none !important;
  z-index: 1 !important;
}

.woocommerce-account .u-columns > .u-column-1::after,
.woocommerce-account .u-columns > .col-1::after {
  content: none !important;
}

.woocommerce-account .u-columns > .u-column-2::before,
.woocommerce-account .u-columns > .col-2::before,
.woocommerce-account .u-columns.col2-set > .u-column-2::before,
.woocommerce-account .u-columns.col2-set > .col-2::before {
  content: '' !important;
  position: absolute !important;
  top: 18px !important;
  right: 18px !important;
  left: auto !important;
  width: 20px !important;
  height: 20px !important;
  border-right: 1px solid rgba(255, 0, 170, 0.25) !important;
  border-top: 1px solid rgba(255, 0, 170, 0.25) !important;
  border-left: none !important;
  pointer-events: none !important;
  z-index: 1 !important;
}

.woocommerce-account .u-columns > .u-column-2::after,
.woocommerce-account .u-columns > .col-2::after {
  content: none !important;
}

@media (max-width: 768px) {
  .woocommerce-account .u-columns > .u-column-1,
  .woocommerce-account .u-columns > .u-column-2,
  .woocommerce-account .u-columns > .col-1,
  .woocommerce-account .u-columns > .col-2,
  .woocommerce-account .u-columns.col2-set > .u-column-1,
  .woocommerce-account .u-columns.col2-set > .u-column-2,
  .woocommerce-account .u-columns.col2-set > .col-1,
  .woocommerce-account .u-columns.col2-set > .col-2 {
    padding: 40px 28px 36px !important;
    min-height: auto !important;
  }
}

/* Login / Register headings — REBUILT v2 */
.woocommerce-account .u-columns h2,
.woocommerce-account .u-columns.col2-set h2,
.woocommerce-account .woocommerce-form-login h2,
.woocommerce-account .woocommerce-form-register h2 {
  font-family: 'Orbitron', sans-serif !important;
  font-size: 1.15rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  color: #00E5FF !important;
  text-shadow: 0 0 14px rgba(0, 229, 255, 0.25) !important;
  margin-bottom: 30px !important;
  padding-bottom: 18px !important;
  border-bottom: 1px solid rgba(0, 229, 255, 0.1) !important;
  position: relative !important;
  text-align: center !important;
  background: transparent !important;
}

.woocommerce-account .u-columns h2::after {
  content: '' !important;
  position: absolute !important;
  bottom: -1px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: 50px !important;
  height: 2px !important;
  background: linear-gradient(90deg, transparent, #00E5FF, transparent) !important;
  border-radius: 1px !important;
}

.woocommerce-account .u-columns > .u-column-2 h2,
.woocommerce-account .u-columns > .col-2 h2,
.woocommerce-account .u-columns.col2-set > .u-column-2 h2,
.woocommerce-account .u-columns.col2-set > .col-2 h2,
.woocommerce-account .woocommerce-form-register h2 {
  color: #FF00AA !important;
  text-shadow: 0 0 14px rgba(255, 0, 170, 0.25) !important;
  border-bottom-color: rgba(255, 0, 170, 0.1) !important;
}

.woocommerce-account .u-columns > .u-column-2 h2::after,
.woocommerce-account .u-columns > .col-2 h2::after,
.woocommerce-account .u-columns.col2-set > .u-column-2 h2::after,
.woocommerce-account .u-columns.col2-set > .col-2 h2::after {
  background: linear-gradient(90deg, transparent, #FF00AA, transparent) !important;
}

/* Form labels */
.woocommerce-account .woocommerce-form label,
.woocommerce-account .woocommerce-form-login label,
.woocommerce-account .woocommerce-form-register label {
  font-family: 'Orbitron', sans-serif !important;
  font-size: 0.6rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #D0D0E8 !important;
  display: block;
  margin-bottom: 8px;
}

/* Ensure form rows fill the column width */
.woocommerce-account .woocommerce-form .form-row,
.woocommerce-account .woocommerce-form-login .form-row,
.woocommerce-account .woocommerce-form-register .form-row {
  width: 100% !important;
  margin-bottom: 4px;
  padding: 0 !important;
  box-sizing: border-box !important;
}

/* Fix WooCommerce form-row inline styles that cause narrow inputs */
.woocommerce-account .woocommerce-form .form-row-first,
.woocommerce-account .woocommerce-form .form-row-last {
  width: 100% !important;
  float: none !important;
}

.woocommerce-account .woocommerce-form label .required {
  color: #FF00AA;
  text-shadow: 0 0 6px rgba(255, 0, 170, 0.3);
}

/* Register form labels in magenta tone */
.woocommerce-account .u-columns .u-column-2 label,
.woocommerce-account .u-columns .col-2 label,
.woocommerce-account .woocommerce-form-register label {
  color: #D8C0D8 !important;
}

/* Form inputs — REBUILT v2 with !important to override cached styles */
.woocommerce-account .woocommerce-form input[type="text"],
.woocommerce-account .woocommerce-form input[type="email"],
.woocommerce-account .woocommerce-form input[type="password"],
.woocommerce-account .woocommerce-form-login input[type="text"],
.woocommerce-account .woocommerce-form-login input[type="password"],
.woocommerce-account .woocommerce-form-register input[type="text"],
.woocommerce-account .woocommerce-form-register input[type="email"],
.woocommerce-account .woocommerce-form-register input[type="password"] {
  width: 100% !important;
  background: rgba(255, 255, 255, 0.06) !important;
  border: 1.5px solid rgba(0, 229, 255, 0.2) !important;
  border-radius: 14px !important;
  color: #F0F0F8 !important;
  font-family: 'Exo 2', sans-serif !important;
  font-size: 0.95rem !important;
  padding: 18px 22px !important;
  transition: border-color 0.3s ease, box-shadow 0.3s ease, background 0.3s ease !important;
  margin-bottom: 22px !important;
  box-sizing: border-box !important;
  max-width: 100% !important;
}

.woocommerce-account .woocommerce-form input:focus,
.woocommerce-account .woocommerce-form-login input:focus,
.woocommerce-account .woocommerce-form-register input:focus {
  border-color: #00E5FF !important;
  box-shadow: 0 0 20px rgba(0, 229, 255, 0.15), inset 0 0 12px rgba(0, 229, 255, 0.03) !important;
  background: rgba(0, 229, 255, 0.02) !important;
  outline: none;
}

/* Register form inputs get magenta focus */
.woocommerce-account .woocommerce-form-register input:focus,
.woocommerce-account .u-columns .u-column-2 input:focus,
.woocommerce-account .u-columns .col-2 input:focus {
  border-color: #FF00AA !important;
  box-shadow: 0 0 20px rgba(255, 0, 170, 0.12), inset 0 0 12px rgba(255, 0, 170, 0.03) !important;
  background: rgba(255, 0, 170, 0.02) !important;
}

/* Register form input borders v2 */
.woocommerce-account .u-columns > .u-column-2 input[type="text"],
.woocommerce-account .u-columns > .u-column-2 input[type="email"],
.woocommerce-account .u-columns > .u-column-2 input[type="password"],
.woocommerce-account .u-columns > .col-2 input[type="text"],
.woocommerce-account .u-columns > .col-2 input[type="email"],
.woocommerce-account .u-columns > .col-2 input[type="password"],
.woocommerce-account .u-columns.col2-set > .u-column-2 input[type="text"],
.woocommerce-account .u-columns.col2-set > .u-column-2 input[type="email"],
.woocommerce-account .u-columns.col2-set > .u-column-2 input[type="password"],
.woocommerce-account .woocommerce-form-register input[type="text"],
.woocommerce-account .woocommerce-form-register input[type="email"],
.woocommerce-account .woocommerce-form-register input[type="password"] {
  border-color: rgba(255, 0, 170, 0.2) !important;
}

/* Register focus magenta v2 */
.woocommerce-account .woocommerce-form-register input:focus,
.woocommerce-account .u-columns > .u-column-2 input:focus,
.woocommerce-account .u-columns > .col-2 input:focus {
  border-color: #FF00AA !important;
  box-shadow: 0 0 22px rgba(255, 0, 170, 0.15), inset 0 0 14px rgba(255, 0, 170, 0.03) !important;
  background: rgba(255, 0, 170, 0.02) !important;
}

/* Show password toggle */
.woocommerce-account .show-password-input {
  color: #8A8A9A;
  transition: color 0.3s ease;
}

.woocommerce-account .show-password-input:hover {
  color: #00E5FF;
}

/* Remember me checkbox */
.woocommerce-account .woocommerce-form-login__rememberme {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin-bottom: 8px;
  padding: 12px 16px;
  background: rgba(0, 229, 255, 0.02);
  border: 1px solid rgba(0, 229, 255, 0.06);
  border-radius: 12px;
}

.woocommerce-account .woocommerce-form-login__rememberme input[type="checkbox"] {
  border: 1.5px solid rgba(0, 229, 255, 0.35);
  border-radius: 4px;
  width: 18px;
  height: 18px;
  accent-color: #00E5FF;
  cursor: pointer;
}

.woocommerce-account .woocommerce-form-login__rememberme span,
.woocommerce-account .woocommerce-form-login__rememberme label {
  font-family: 'Exo 2', sans-serif !important;
  font-size: 0.82rem !important;
  color: #B0B0C8 !important;
  letter-spacing: 0.02em !important;
  text-transform: none !important;
  font-weight: 400 !important;
  cursor: pointer;
}

/* Login / Register buttons — REBUILT v2 */
.woocommerce-account .woocommerce-form-login .woocommerce-button,
.woocommerce-account .woocommerce-form-register .woocommerce-button,
.woocommerce-account .woocommerce-form .woocommerce-Button,
.woocommerce-account .woocommerce-form-login button[type="submit"],
.woocommerce-account .woocommerce-form-register button[type="submit"] {
  font-family: 'Orbitron', sans-serif !important;
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: #050510 !important;
  background: linear-gradient(135deg, #00E5FF, #00B8D4) !important;
  border: none !important;
  border-radius: 50px !important;
  padding: 18px 36px !important;
  box-shadow: 0 0 24px rgba(0, 229, 255, 0.35), inset 0 0 10px rgba(255, 255, 255, 0.15) !important;
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
  cursor: pointer !important;
  display: block !important;
  text-decoration: none !important;
  width: 100% !important;
  text-align: center !important;
  margin-top: 20px !important;
  position: relative !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  line-height: 1.4 !important;
}

.woocommerce-account .woocommerce-form-login .woocommerce-button:hover,
.woocommerce-account .woocommerce-form-register .woocommerce-button:hover,
.woocommerce-account .woocommerce-form .woocommerce-Button:hover {
  box-shadow: 0 0 32px rgba(0, 229, 255, 0.45), inset 0 0 12px rgba(255, 255, 255, 0.18) !important;
  transform: translateY(-2px);
}

/* Register button — magenta accent v2 */
.woocommerce-account .woocommerce-form-register .woocommerce-button,
.woocommerce-account .woocommerce-form-register button[type="submit"] {
  background: linear-gradient(135deg, #FF00AA, #CC0088) !important;
  box-shadow: 0 0 24px rgba(255, 0, 170, 0.35), inset 0 0 10px rgba(255, 255, 255, 0.15) !important;
}

.woocommerce-account .woocommerce-form-register .woocommerce-button:hover,
.woocommerce-account .woocommerce-form-register button[type="submit"]:hover {
  box-shadow: 0 0 36px rgba(255, 0, 170, 0.5), inset 0 0 14px rgba(255, 255, 255, 0.2) !important;
  transform: translateY(-2px) !important;
}

/* Lost password link */
.woocommerce-account .woocommerce-LostPassword,
.woocommerce-account .lost_password {
  margin-top: 16px;
  text-align: center;
}

.woocommerce-account .woocommerce-LostPassword a,
.woocommerce-account .lost_password a {
  font-family: 'Exo 2', sans-serif;
  font-size: 0.82rem;
  color: #00E5FF !important;
  text-decoration: none;
  transition: color 0.3s ease, text-shadow 0.3s ease;
  position: relative;
}

.woocommerce-account .woocommerce-LostPassword a::after,
.woocommerce-account .lost_password a::after {
  content: '';
  position: absolute;
  bottom: -2px;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 1px;
  background: #00E5FF;
  transition: width 0.3s ease;
}

.woocommerce-account .woocommerce-LostPassword a:hover::after,
.woocommerce-account .lost_password a:hover::after {
  width: 100%;
}

.woocommerce-account .woocommerce-LostPassword a:hover,
.woocommerce-account .lost_password a:hover {
  color: #FF00AA !important;
  text-shadow: 0 0 8px rgba(255, 0, 170, 0.2);
}

.woocommerce-account .woocommerce-LostPassword a:hover::after,
.woocommerce-account .lost_password a:hover::after {
  background: #FF00AA;
}

/* Privacy policy text */
.woocommerce-account .woocommerce-privacy-policy-text {
  font-family: 'Exo 2', sans-serif;
  font-size: 0.72rem;
  color: #6A6A7A;
  line-height: 1.5;
  margin-bottom: 14px;
  text-align: center;
  padding: 10px 14px;
  background: rgba(255, 255, 255, 0.01);
  border-radius: 10px;
  border: 1px solid rgba(255, 255, 255, 0.02);
}

.woocommerce-account .woocommerce-privacy-policy-text a {
  color: #00E5FF;
  text-decoration: none;
  transition: color 0.3s ease;
}

.woocommerce-account .woocommerce-privacy-policy-text a:hover {
  color: #FF00AA;
}

/* Form row */
.woocommerce-account .woocommerce-form .form-row {
  margin-bottom: 4px;
}

/* === Login/Register page ambient glow === */
.ep-wc-account-page .woocommerce-account:not(.woocommerce-MyAccount-navigation ~ *) {
  position: relative;
}

/* Icon decoration above login/register forms — compact and clean */
.woocommerce-account .u-columns .u-column-1 h2::before,
.woocommerce-account .u-columns .col-1 h2::before {
  content: '';
  display: block;
  width: 44px;
  height: 44px;
  margin: 0 auto 16px;
  border-radius: 50%;
  background: rgba(0, 229, 255, 0.05);
  border: 1px solid rgba(0, 229, 255, 0.2);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%2300E5FF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='11' width='18' height='11' rx='2' ry='2'/%3E%3Cpath d='M7 11V7a5 5 0 0 1 10 0v4'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 20px 20px;
}

.woocommerce-account .u-columns .u-column-2 h2::before,
.woocommerce-account .u-columns .col-2 h2::before {
  content: '';
  display: block;
  width: 44px;
  height: 44px;
  margin: 0 auto 16px;
  border-radius: 50%;
  background: rgba(255, 0, 170, 0.05);
  border: 1px solid rgba(255, 0, 170, 0.2);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23FF00AA' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M16 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='8.5' cy='7' r='4'/%3E%3Cline x1='20' y1='8' x2='20' y2='14'/%3E%3Cline x1='23' y1='11' x2='17' y2='11'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 20px 20px;
}

/* Show password toggle styling */
.woocommerce-account .show-password-input {
  color: #5A5A6A;
  transition: color 0.3s ease;
  cursor: pointer;
}

.woocommerce-account .show-password-input:hover {
  color: #00E5FF;
}

/* Password strength meter */
.woocommerce-account .woocommerce-password-strength {
  font-family: 'Orbitron', sans-serif;
  font-size: 0.58rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 6px 14px;
  border-radius: 50px;
  margin: 8px 0 16px;
  text-align: center;
}

.woocommerce-account .woocommerce-password-strength.strong {
  background: rgba(0, 255, 136, 0.08);
  border: 1px solid rgba(0, 255, 136, 0.3);
  color: #00FF88;
}

.woocommerce-account .woocommerce-password-strength.good {
  background: rgba(0, 229, 255, 0.08);
  border: 1px solid rgba(0, 229, 255, 0.3);
  color: #00E5FF;
}

.woocommerce-account .woocommerce-password-strength.weak,
.woocommerce-account .woocommerce-password-strength.bad {
  background: rgba(255, 68, 102, 0.08);
  border: 1px solid rgba(255, 68, 102, 0.3);
  color: #FF4466;
}

.woocommerce-account .woocommerce-password-strength.short {
  background: rgba(255, 215, 0, 0.08);
  border: 1px solid rgba(255, 215, 0, 0.3);
  color: #FFD700;
}

/* Password hint */
.woocommerce-account .woocommerce-password-hint {
  font-family: 'Exo 2', sans-serif;
  font-size: 0.72rem;
  color: #6A6A7A;
  margin-top: 4px;
}

/* === My Account === */

/* Account page body class enhancements */
.ep-wc-account-page .woocommerce {
  max-width: 1100px;
  margin: 0 auto;
}

/* My Account two-column layout on desktop */
@media (min-width: 769px) {
  .ep-wc-account-page .woocommerce {
    display: flex;
    gap: var(--wp--preset--spacing--40);
    align-items: flex-start;
  }

  .ep-wc-account-page .woocommerce-MyAccount-navigation {
    flex-shrink: 0;
    width: 260px;
    position: sticky;
    top: 100px;
  }

  .ep-wc-account-page .woocommerce-MyAccount-content {
    flex: 1;
    min-width: 0;
  }
}

.woocommerce-MyAccount-navigation {
  background: rgba(10, 10, 30, 0.8);
  border: 1px solid rgba(0, 229, 255, 0.15);
  backdrop-filter: blur(16px) saturate(120%);
  -webkit-backdrop-filter: blur(16px) saturate(120%);
  border-radius: 20px;
  padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--20);
  margin-bottom: var(--wp--preset--spacing--40);
  position: relative;
  overflow: hidden;
}

/* Neon accent line at top */
.woocommerce-MyAccount-navigation::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, #00E5FF, #FF00AA, #9B59FF, transparent);
  opacity: 0.5;
}

/* HUD corner accents */
.woocommerce-MyAccount-navigation::after {
  content: '';
  position: absolute;
  bottom: 10px;
  right: 10px;
  width: 16px;
  height: 16px;
  border-right: 1px solid rgba(0, 229, 255, 0.12);
  border-bottom: 1px solid rgba(0, 229, 255, 0.12);
  pointer-events: none;
}

.woocommerce-MyAccount-navigation ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.woocommerce-MyAccount-navigation ul li {
  margin-bottom: 2px;
}

.woocommerce-MyAccount-navigation ul li a {
  display: flex;
  align-items: center;
  gap: 12px;
  font-family: 'Orbitron', sans-serif;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #8A8A9A;
  text-decoration: none;
  padding: 16px 18px;
  border-radius: 12px;
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
  position: relative;
  border-left: 3px solid transparent;
}

.woocommerce-MyAccount-navigation ul li a::before {
  content: '';
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: rgba(0, 229, 255, 0.2);
  flex-shrink: 0;
  transition: all 0.3s ease;
}

.woocommerce-MyAccount-navigation ul li a:hover {
  color: #E0E0F0;
  background: rgba(0, 229, 255, 0.04);
  border-left-color: rgba(0, 229, 255, 0.2);
  padding-left: 22px;
}

.woocommerce-MyAccount-navigation ul li a:hover::before {
  background: rgba(0, 229, 255, 0.6);
  box-shadow: 0 0 6px rgba(0, 229, 255, 0.4);
}

.woocommerce-MyAccount-navigation ul li.is-active a,
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--dashboard.is-active a {
  color: #00E5FF;
  background: rgba(0, 229, 255, 0.06);
  border-left-color: #00E5FF;
  text-shadow: 0 0 8px rgba(0, 229, 255, 0.2);
}

.woocommerce-MyAccount-navigation ul li.is-active a::before {
  background: #00E5FF;
  box-shadow: 0 0 8px rgba(0, 229, 255, 0.5);
}

/* Color-code specific menu items */
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--orders.is-active a {
  color: #FF00AA;
  border-left-color: #FF00AA;
}
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--orders.is-active a::before {
  background: #FF00AA;
  box-shadow: 0 0 8px rgba(255, 0, 170, 0.5);
}

.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--downloads.is-active a {
  color: #9B59FF;
  border-left-color: #9B59FF;
}
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--downloads.is-active a::before {
  background: #9B59FF;
  box-shadow: 0 0 8px rgba(155, 89, 255, 0.5);
}

.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--edit-address.is-active a {
  color: #00FF88;
  border-left-color: #00FF88;
}
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--edit-address.is-active a::before {
  background: #00FF88;
  box-shadow: 0 0 8px rgba(0, 255, 136, 0.5);
}

.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--edit-account.is-active a {
  color: #FFD700;
  border-left-color: #FFD700;
}
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--edit-account.is-active a::before {
  background: #FFD700;
  box-shadow: 0 0 8px rgba(255, 215, 0, 0.5);
}

.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout a {
  color: #FF4466;
  opacity: 0.6;
}
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout a::before {
  background: rgba(255, 68, 102, 0.3);
}
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout a:hover {
  color: #FF4466;
  opacity: 1;
  background: rgba(255, 68, 102, 0.04);
  border-left-color: rgba(255, 68, 102, 0.3);
}

/* === My Account Content Area === */
.woocommerce-MyAccount-content {
  font-family: 'Exo 2', sans-serif;
  color: #D8D8EA;
  font-size: 0.95rem;
  line-height: 1.8;
  background: rgba(10, 10, 30, 0.5);
  border: 1px solid rgba(0, 229, 255, 0.08);
  border-radius: 20px;
  padding: var(--wp--preset--spacing--50) var(--wp--preset--spacing--40);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  position: relative;
  overflow: hidden;
}

.woocommerce-MyAccount-content::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, #00E5FF, transparent);
  opacity: 0.3;
}

/* Ensure all direct children have proper spacing — fixes text overlap */
.woocommerce-MyAccount-content > * {
  margin-top: 0;
  margin-bottom: 1.2em;
}

.woocommerce-MyAccount-content > *:last-child {
  margin-bottom: 0;
}

/* Dashboard paragraphs — generous spacing to prevent overlap */
.woocommerce-MyAccount-content p {
  margin-top: 0;
  margin-bottom: 1.2em;
  line-height: 1.8;
  color: #E0E0F0;
}

/* Dashboard greeting enhancement */
.woocommerce-MyAccount-content > p:first-child {
  font-size: 1.1rem;
  line-height: 1.85;
  color: #E0E0F0;
  padding-bottom: var(--wp--preset--spacing--30);
  border-bottom: 1px solid rgba(0, 229, 255, 0.08);
  margin-bottom: var(--wp--preset--spacing--40) !important;
}

.woocommerce-MyAccount-content > p:first-child strong {
  color: #00E5FF;
  font-weight: 700;
  text-shadow: 0 0 8px rgba(0, 229, 255, 0.2);
}

/* Second paragraph (the one with links to orders, addresses, etc.) */
.woocommerce-MyAccount-content > p:nth-child(2) {
  font-size: 0.95rem;
  line-height: 2;
  color: #D0D0E0;
  padding: var(--wp--preset--spacing--30);
  background: rgba(0, 229, 255, 0.02);
  border: 1px solid rgba(0, 229, 255, 0.06);
  border-radius: 14px;
  margin-bottom: var(--wp--preset--spacing--30) !important;
}

.woocommerce-MyAccount-content a {
  color: #00E5FF;
  text-decoration: none;
  transition: color 0.3s ease, text-shadow 0.3s ease;
}

.woocommerce-MyAccount-content a:hover {
  color: #FF00AA;
  text-shadow: 0 0 6px rgba(255, 0, 170, 0.2);
}

/* WooCommerce notices inside My Account — proper spacing */
.woocommerce-MyAccount-content .woocommerce-message,
.woocommerce-MyAccount-content .woocommerce-info,
.woocommerce-MyAccount-content .woocommerce-error {
  margin-bottom: var(--wp--preset--spacing--30) !important;
  padding: 18px 24px !important;
  line-height: 1.7;
}

/* Password change notice — ensure it doesn't overlap */
.woocommerce-MyAccount-content .woocommerce-message + p,
.woocommerce-MyAccount-content .woocommerce-info + p {
  margin-top: var(--wp--preset--spacing--20) !important;
}

/* Account Tables */
.woocommerce-MyAccount-content table {
  width: 100%;
  border-collapse: collapse;
  background: rgba(0, 0, 0, 0.15);
  border-radius: 12px;
  overflow: hidden;
}

.woocommerce-MyAccount-content table th {
  font-family: 'Orbitron', sans-serif;
  font-size: 0.6rem;
  font-weight: 700;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: #00E5FF;
  padding: 16px 18px;
  border-bottom: 1px solid rgba(0, 229, 255, 0.12);
  text-align: left;
  background: rgba(0, 229, 255, 0.02);
}

.woocommerce-MyAccount-content table td {
  font-family: 'Exo 2', sans-serif;
  font-size: 0.88rem;
  color: #E0E0F0;
  padding: 16px 18px;
  border-bottom: 1px solid rgba(0, 229, 255, 0.04);
  transition: background 0.3s ease;
}

.woocommerce-MyAccount-content table tr:hover td {
  background: rgba(0, 229, 255, 0.015);
}

.woocommerce-MyAccount-content table td .woocommerce-orders-table__cell-order-number a {
  color: #00E5FF;
  font-family: 'Orbitron', sans-serif;
  font-weight: 700;
  font-size: 0.82rem;
  letter-spacing: 0.06em;
}

/* Account Buttons */
.woocommerce-MyAccount-content .button,
.woocommerce-MyAccount-content .woocommerce-button {
  font-family: 'Orbitron', sans-serif !important;
  font-size: 0.62rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  padding: 12px 24px !important;
  border-radius: 50px !important;
  border: 1.5px solid #00E5FF !important;
  color: #00E5FF !important;
  background: rgba(0, 229, 255, 0.06) !important;
  text-decoration: none;
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
  box-shadow: 0 0 12px rgba(0, 229, 255, 0.1);
}

.woocommerce-MyAccount-content .button:hover,
.woocommerce-MyAccount-content .woocommerce-button:hover {
  background: #00E5FF !important;
  color: #050510 !important;
  box-shadow: 0 0 24px rgba(0, 229, 255, 0.3);
  transform: translateY(-2px);
}

/* Save button on edit account/addresses */
.woocommerce-MyAccount-content .woocommerce-Button--edit-account,
.woocommerce-MyAccount-content button[name="save_account_details"],
.woocommerce-MyAccount-content button[name="save_address"] {
  font-family: 'Orbitron', sans-serif !important;
  font-size: 0.68rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: #050510 !important;
  background: linear-gradient(135deg, #00E5FF, #00B8D4) !important;
  border: none !important;
  border-radius: 50px !important;
  padding: 16px 36px !important;
  box-shadow: 0 0 20px rgba(0, 229, 255, 0.3), inset 0 0 8px rgba(255, 255, 255, 0.1) !important;
  transition: all 0.35s ease !important;
  cursor: pointer;
}

.woocommerce-MyAccount-content .woocommerce-Button--edit-account:hover,
.woocommerce-MyAccount-content button[name="save_account_details"]:hover,
.woocommerce-MyAccount-content button[name="save_address"]:hover {
  box-shadow: 0 0 36px rgba(0, 229, 255, 0.45), inset 0 0 12px rgba(255, 255, 255, 0.15) !important;
  transform: translateY(-2px);
}

/* Edit account form inputs */
.woocommerce-MyAccount-content .woocommerce-EditAccountForm input[type="text"],
.woocommerce-MyAccount-content .woocommerce-EditAccountForm input[type="email"],
.woocommerce-MyAccount-content .woocommerce-EditAccountForm input[type="password"],
.woocommerce-MyAccount-content .woocommerce-address-fields input[type="text"],
.woocommerce-MyAccount-content .woocommerce-address-fields input[type="email"],
.woocommerce-MyAccount-content .woocommerce-address-fields input[type="tel"],
.woocommerce-MyAccount-content .woocommerce-address-fields select {
  background: rgba(255, 255, 255, 0.06) !important;
  border: 1px solid rgba(0, 229, 255, 0.2) !important;
  border-radius: 12px !important;
  color: #F0F0F8 !important;
  font-family: 'Exo 2', sans-serif !important;
  font-size: 0.92rem;
  padding: 14px 18px;
  width: 100%;
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.woocommerce-MyAccount-content .woocommerce-EditAccountForm input:focus,
.woocommerce-MyAccount-content .woocommerce-address-fields input:focus,
.woocommerce-MyAccount-content .woocommerce-address-fields select:focus {
  border-color: #00E5FF !important;
  box-shadow: 0 0 16px rgba(0, 229, 255, 0.12) !important;
  outline: none;
}

.woocommerce-MyAccount-content .woocommerce-EditAccountForm label,
.woocommerce-MyAccount-content .woocommerce-address-fields label {
  font-family: 'Orbitron', sans-serif;
  font-size: 0.58rem;
  font-weight: 700;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: #C0C0D8 !important;
  margin-bottom: 6px;
  display: block;
}

/* Password change fieldset */
.woocommerce-MyAccount-content fieldset {
  border: 1px solid rgba(0, 229, 255, 0.1);
  border-radius: 16px;
  padding: var(--wp--preset--spacing--30);
  margin-top: var(--wp--preset--spacing--30);
  background: rgba(0, 229, 255, 0.015);
}

.woocommerce-MyAccount-content fieldset legend {
  font-family: 'Orbitron', sans-serif;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #00E5FF;
  padding: 0 12px;
}

/* Addresses grid */
.woocommerce-MyAccount-content .woocommerce-Addresses {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

.woocommerce-MyAccount-content .woocommerce-Address {
  background: rgba(10, 10, 30, 0.5);
  border: 1px solid rgba(0, 229, 255, 0.08);
  border-radius: 16px;
  padding: 24px;
  position: relative;
}

.woocommerce-MyAccount-content .woocommerce-Address::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, #00E5FF, transparent);
  opacity: 0.3;
  border-radius: 16px 16px 0 0;
}

.woocommerce-MyAccount-content .woocommerce-Address header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 14px;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(0, 229, 255, 0.06);
  flex-wrap: wrap;
  gap: 8px;
}

.woocommerce-MyAccount-content .woocommerce-Address header h2,
.woocommerce-MyAccount-content .woocommerce-Address header h3 {
  font-family: 'Orbitron', sans-serif !important;
  font-size: 0.72rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #00E5FF !important;
  margin: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
}

/* Fix: Address header edit links — ensure readable and not overlapping title */
.woocommerce-MyAccount-content .woocommerce-Address header a {
  font-family: 'Orbitron', sans-serif !important;
  font-size: 0.55rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #00E5FF !important;
  text-decoration: none;
  padding: 6px 14px;
  border: 1px solid rgba(0, 229, 255, 0.25);
  border-radius: 50px;
  background: rgba(0, 229, 255, 0.04);
  transition: all 0.3s ease;
  white-space: nowrap;
  flex-shrink: 0;
}

.woocommerce-MyAccount-content .woocommerce-Address header a:hover {
  background: rgba(0, 229, 255, 0.12);
  border-color: rgba(0, 229, 255, 0.5);
  box-shadow: 0 0 12px rgba(0, 229, 255, 0.1);
}

/* Second address card (shipping) uses magenta accent */
.woocommerce-MyAccount-content .woocommerce-Address:nth-child(2) header h2,
.woocommerce-MyAccount-content .woocommerce-Address:nth-child(2) header h3 {
  color: #FF00AA !important;
}

.woocommerce-MyAccount-content .woocommerce-Address:nth-child(2)::before {
  background: linear-gradient(90deg, transparent, #FF00AA, transparent) !important;
}

.woocommerce-MyAccount-content .woocommerce-Address:nth-child(2) header a {
  color: #FF00AA !important;
  border-color: rgba(255, 0, 170, 0.25);
  background: rgba(255, 0, 170, 0.04);
}

.woocommerce-MyAccount-content .woocommerce-Address:nth-child(2) header a:hover {
  background: rgba(255, 0, 170, 0.12);
  border-color: rgba(255, 0, 170, 0.5);
  box-shadow: 0 0 12px rgba(255, 0, 170, 0.1);
}

.woocommerce-MyAccount-content .woocommerce-Address address {
  font-family: 'Exo 2', sans-serif;
  font-size: 0.88rem;
  color: #D0D0E0;
  line-height: 1.7;
  font-style: normal;
}

/* No orders / empty states */
.woocommerce-MyAccount-content .woocommerce-message--info,
.woocommerce-MyAccount-content .woocommerce-info {
  background: rgba(0, 229, 255, 0.03) !important;
  border: 1px solid rgba(0, 229, 255, 0.15) !important;
  border-left: 3px solid #00E5FF !important;
  border-radius: 12px !important;
  color: #D0D0E0 !important;
  font-family: 'Exo 2', sans-serif;
  font-size: 0.92rem;
  padding: 18px 24px !important;
}

/* Order status badges */
.woocommerce-MyAccount-content .woocommerce-orders-table__cell-order-status {
  font-family: 'Orbitron', sans-serif;
  font-size: 0.6rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

/* Mobile account page */
@media (max-width: 768px) {
  .ep-wc-account-page .woocommerce {
    flex-direction: column;
  }

  .ep-wc-account-page .woocommerce-MyAccount-navigation {
    width: 100% !important;
    position: static !important;
  }

  .woocommerce-MyAccount-navigation ul {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
  }

  .woocommerce-MyAccount-navigation ul li {
    flex: 1;
    min-width: calc(50% - 4px);
    margin-bottom: 0;
  }

  .woocommerce-MyAccount-navigation ul li a {
    padding: 12px 14px;
    font-size: 0.55rem;
    letter-spacing: 0.08em;
    justify-content: center;
    text-align: center;
    border-left: none;
    border-bottom: 2px solid transparent;
  }

  .woocommerce-MyAccount-navigation ul li a::before {
    display: none;
  }

  .woocommerce-MyAccount-navigation ul li.is-active a,
  .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--dashboard.is-active a {
    border-left: none;
    border-bottom-color: #00E5FF;
  }

  .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--orders.is-active a {
    border-bottom-color: #FF00AA;
  }

  .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--edit-account.is-active a {
    border-bottom-color: #FFD700;
  }

  .woocommerce-MyAccount-content {
    padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--20);
    border-radius: 14px;
  }

  /* Mobile: ensure paragraphs in My Account don't overlap */
  .woocommerce-MyAccount-content p {
    margin-bottom: 1em !important;
    line-height: 1.75 !important;
  }

  .woocommerce-MyAccount-content > p:first-child {
    font-size: 0.95rem !important;
    padding-bottom: var(--wp--preset--spacing--20) !important;
    margin-bottom: var(--wp--preset--spacing--20) !important;
  }

  .woocommerce-MyAccount-content > p:nth-child(2) {
    padding: var(--wp--preset--spacing--20) !important;
    font-size: 0.88rem !important;
  }

  .woocommerce-MyAccount-content .woocommerce-Addresses {
    grid-template-columns: 1fr;
  }

  .woocommerce-MyAccount-content table {
    font-size: 0.82rem;
  }

  .woocommerce-MyAccount-content table th {
    font-size: 0.52rem;
    padding: 12px 10px;
  }

  .woocommerce-MyAccount-content table td {
    padding: 12px 10px;
    font-size: 0.82rem;
  }

  /* Mobile: form rows in edit account — stack and space properly */
  .woocommerce-MyAccount-content .woocommerce-EditAccountForm .form-row,
  .woocommerce-MyAccount-content .woocommerce-address-fields .form-row {
    margin-bottom: 16px !important;
  }
}

@media (max-width: 480px) {
  .woocommerce-MyAccount-navigation ul li {
    min-width: 100%;
  }

  .woocommerce-MyAccount-navigation ul li a {
    font-size: 0.6rem;
    justify-content: flex-start;
    text-align: left;
    border-bottom: none;
    border-left: 3px solid transparent;
  }

  .woocommerce-MyAccount-navigation ul li a::before {
    display: block;
  }

  .woocommerce-MyAccount-navigation ul li.is-active a {
    border-bottom: none;
    border-left-color: #00E5FF;
  }
}

/* === Mini Cart (Header) === */
.ep-mini-cart-link {
  display: flex;
  align-items: center;
  gap: 6px;
  color: var(--ep-metallic-gray);
  text-decoration: none;
  transition: color 0.3s ease;
  position: relative;
}

.ep-mini-cart-link:hover {
  color: var(--ep-cyan);
}

.ep-mini-cart-link svg {
  width: 18px;
  height: 18px;
}

.ep-cart-count {
  font-family: 'Orbitron', sans-serif;
  font-size: 0.55rem;
  font-weight: 700;
  background: var(--ep-magenta);
  color: var(--ep-black-deep);
  border-radius: 50%;
  min-width: 18px;
  height: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  box-shadow: 0 0 8px rgba(255,0,170,0.4);
}

.ep-cart-count:empty,
.ep-cart-count[data-count="0"] {
  display: none;
}

/* === Notices (WooCommerce messages) === */
.woocommerce-message,
.woocommerce-info {
  background: var(--ep-glass-bg) !important;
  border: 1px solid var(--ep-cyan) !important;
  border-left: 4px solid var(--ep-cyan) !important;
  border-radius: 8px !important;
  color: var(--ep-metallic-white) !important;
  font-family: 'Exo 2', sans-serif;
  font-size: 0.9rem;
  padding: 16px 20px !important;
  box-shadow: 0 0 16px rgba(0,229,255,0.1);
  margin-bottom: var(--wp--preset--spacing--30) !important;
}

.woocommerce-message::before,
.woocommerce-info::before {
  color: var(--ep-cyan) !important;
}

.woocommerce-message a,
.woocommerce-info a {
  color: var(--ep-cyan) !important;
  font-weight: 600;
}

.woocommerce-error {
  background: var(--ep-glass-bg) !important;
  border: 1px solid var(--ep-magenta) !important;
  border-left: 4px solid var(--ep-magenta) !important;
  border-radius: 8px !important;
  color: var(--ep-metallic-white) !important;
  font-family: 'Exo 2', sans-serif;
  font-size: 0.9rem;
  padding: 16px 20px !important;
  box-shadow: 0 0 16px rgba(255,0,170,0.1);
  margin-bottom: var(--wp--preset--spacing--30) !important;
  list-style: none;
}

.woocommerce-error::before {
  color: var(--ep-magenta) !important;
}

/* === Widgets (Shop Filters) === */
.ep-shop-widget {
  background: rgba(10, 10, 30, 0.8);
  border: 1px solid rgba(0, 229, 255, 0.15);
  border-radius: 12px;
  padding: var(--wp--preset--spacing--30);
  margin-bottom: var(--wp--preset--spacing--20);
}

.ep-widget-title {
  font-family: 'Orbitron', sans-serif !important;
  font-size: 0.7rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
  color: var(--ep-cyan) !important;
  margin-bottom: var(--wp--preset--spacing--20) !important;
}

.ep-shop-widget ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.ep-shop-widget ul li {
  padding: 6px 0;
}

.ep-shop-widget ul li a {
  font-family: 'Exo 2', sans-serif;
  font-size: 0.85rem;
  color: var(--ep-metallic-gray);
  text-decoration: none;
  transition: color 0.3s ease;
}

.ep-shop-widget ul li a:hover {
  color: var(--ep-cyan);
}

/* Price Filter Widget */
.widget_price_filter .price_slider_wrapper {
  margin-top: var(--wp--preset--spacing--20);
}

.widget_price_filter .ui-slider {
  background: var(--ep-gray-dark) !important;
  border: none !important;
  border-radius: 4px;
  height: 4px !important;
}

.widget_price_filter .ui-slider .ui-slider-range {
  background: var(--ep-cyan) !important;
  box-shadow: 0 0 8px rgba(0,229,255,0.3);
}

.widget_price_filter .ui-slider .ui-slider-handle {
  background: var(--ep-cyan) !important;
  border: none !important;
  border-radius: 50%;
  width: 16px !important;
  height: 16px !important;
  top: -6px !important;
  box-shadow: 0 0 12px rgba(0,229,255,0.4);
}

.widget_price_filter .price_label {
  font-family: 'Orbitron', sans-serif;
  font-size: 0.7rem;
  color: var(--ep-metallic-white);
  letter-spacing: 0.1em;
}

/* === Empty Cart === */
.cart-empty,
.woocommerce-cart .cart-empty {
  text-align: center;
  font-family: 'Exo 2', sans-serif;
  font-size: 1.1rem;
  color: #C0C0D8;
  padding: var(--wp--preset--spacing--60) 0;
  background: rgba(10, 10, 30, 0.6);
  border: 1px solid rgba(0, 229, 255, 0.1);
  border-radius: 20px;
  position: relative;
  overflow: hidden;
}

.cart-empty::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, #00E5FF, #FF00AA, transparent);
  opacity: 0.4;
}

.return-to-shop {
  text-align: center;
  margin-top: var(--wp--preset--spacing--30);
}

.return-to-shop a.button,
.return-to-shop a.wp-element-button {
  font-family: 'Orbitron', sans-serif !important;
  font-size: 0.7rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: #050510 !important;
  background: linear-gradient(135deg, #00E5FF, #00B8D4) !important;
  border: none !important;
  border-radius: 50px !important;
  padding: 16px 36px !important;
  box-shadow: 0 0 20px rgba(0, 229, 255, 0.3);
  transition: all 0.3s ease !important;
  text-decoration: none;
  display: inline-block;
}

.return-to-shop a.button:hover,
.return-to-shop a.wp-element-button:hover {
  box-shadow: 0 0 36px rgba(0, 229, 255, 0.5) !important;
  transform: translateY(-2px);
}

/* === Order Details & Thank You — Futuristic Cyberpunk === */

/* Thank You page wrapper — the WC order-received page */
.woocommerce-order-received .woocommerce {
  max-width: 900px;
  margin: 0 auto;
  padding: var(--wp--preset--spacing--50) clamp(1rem, 3vw, 3rem) var(--wp--preset--spacing--70);
}

/* === Success Hero Banner === */
.woocommerce-thankyou-order-received {
  font-family: 'Exo 2', sans-serif;
  font-size: 1.15rem;
  line-height: 1.7;
  color: #D0D0E0;
  text-align: center;
  padding: 0;
  margin: 0 0 var(--wp--preset--spacing--30);
  position: relative;
}

/* Inject a success animation above the default text */
.woocommerce-order-received .woocommerce-thankyou-order-received::before {
  content: '';
  display: block;
  width: 80px;
  height: 80px;
  margin: 0 auto 20px;
  border-radius: 50%;
  background: rgba(0, 255, 136, 0.08);
  border: 2px solid rgba(0, 255, 136, 0.35);
  box-shadow: 0 0 30px rgba(0, 255, 136, 0.15), 0 0 60px rgba(0, 255, 136, 0.05);
  animation: epThankYouPulse 2s ease-in-out infinite;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='36' viewBox='0 0 24 24' fill='none' stroke='%2300FF88' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 36px 36px;
}

@keyframes epThankYouPulse {
  0%, 100% { box-shadow: 0 0 30px rgba(0,255,136,0.15), 0 0 60px rgba(0,255,136,0.05); transform: scale(1); }
  50% { box-shadow: 0 0 40px rgba(0,255,136,0.25), 0 0 80px rgba(0,255,136,0.1); transform: scale(1.04); }
}

/* Page title override */
.woocommerce-order-received .entry-title,
.woocommerce-order-received .wp-block-post-title,
.woocommerce-order-received h1.wp-block-heading {
  font-family: 'Orbitron', sans-serif !important;
  font-weight: 900 !important;
  letter-spacing: 0.06em;
  color: #00FF88 !important;
  text-shadow: 0 0 20px rgba(0,255,136,0.3), 0 0 60px rgba(0,255,136,0.1);
  text-align: center;
  margin-bottom: var(--wp--preset--spacing--20) !important;
  font-size: clamp(1.5rem, 3.5vw, 2.25rem) !important;
}

/* === Order Overview Box (the #, date, total, email, payment row) === */
.woocommerce-order-received .woocommerce-order-overview {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 12px;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 var(--wp--preset--spacing--40) !important;
  background: rgba(10, 10, 30, 0.7);
  border: 1px solid rgba(0, 229, 255, 0.15);
  border-radius: 20px;
  overflow: hidden;
  position: relative;
}

.woocommerce-order-received .woocommerce-order-overview::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, #00FF88, #00E5FF, #9B59FF, transparent);
  opacity: 0.6;
}

.woocommerce-order-received .woocommerce-order-overview li {
  padding: 20px 18px !important;
  margin: 0 !important;
  border-right: none !important;
  border-bottom: none;
  text-align: center;
  position: relative;
}

/* Subtle divider between overview items */
.woocommerce-order-received .woocommerce-order-overview li + li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 20%;
  height: 60%;
  width: 1px;
  background: rgba(0, 229, 255, 0.1);
}

.woocommerce-order-received .woocommerce-order-overview li strong {
  display: block;
  font-family: 'Orbitron', sans-serif;
  font-size: 0.52rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: #00E5FF;
  margin-bottom: 6px;
}

.woocommerce-order-received .woocommerce-order-overview li span,
.woocommerce-order-received .woocommerce-order-overview li mark,
.woocommerce-order-received .woocommerce-order-overview li bdi,
.woocommerce-order-received .woocommerce-order-overview li time {
  font-family: 'Exo 2', sans-serif;
  font-size: 0.95rem;
  font-weight: 600;
  color: #F0F0F8;
  background: none !important;
}

/* Total amount — highlighted */
.woocommerce-order-received .woocommerce-order-overview li.total .woocommerce-Price-amount {
  font-family: 'Orbitron', sans-serif;
  font-size: 1.15rem;
  font-weight: 900;
  color: #00FF88;
  text-shadow: 0 0 10px rgba(0,255,136,0.25);
}

/* === Order Details Table === */
.woocommerce-order-details,
.woocommerce-customer-details {
  background: rgba(10, 10, 30, 0.65);
  border: 1px solid rgba(0, 229, 255, 0.12);
  border-radius: 20px;
  padding: var(--wp--preset--spacing--40);
  margin-bottom: var(--wp--preset--spacing--30);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  position: relative;
  overflow: hidden;
}

.woocommerce-order-details::before,
.woocommerce-customer-details::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, #00E5FF, #FF00AA, transparent);
  opacity: 0.4;
}

/* Section headings inside order details */
.woocommerce-order-details h2,
.woocommerce-customer-details h2 {
  font-family: 'Orbitron', sans-serif !important;
  font-size: 0.82rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: #00E5FF !important;
  margin-bottom: var(--wp--preset--spacing--30) !important;
  padding-bottom: 14px;
  border-bottom: 1px solid rgba(0, 229, 255, 0.1);
  position: relative;
}

.woocommerce-order-details h2::after,
.woocommerce-customer-details h2::after {
  content: '';
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 50px;
  height: 2px;
  background: linear-gradient(90deg, #00E5FF, transparent);
}

/* Order items table */
.woocommerce-order-details table.woocommerce-table {
  width: 100%;
  border-collapse: collapse;
}

.woocommerce-order-details table.woocommerce-table thead th {
  font-family: 'Orbitron', sans-serif;
  font-size: 0.6rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #8A8A9A;
  padding: 14px 16px;
  border-bottom: 1px solid rgba(0, 229, 255, 0.12);
  text-align: left;
}

.woocommerce-order-details table.woocommerce-table thead th:last-child {
  text-align: right;
}

.woocommerce-order-details table.woocommerce-table tbody td {
  padding: 18px 16px;
  border-bottom: 1px solid rgba(0, 229, 255, 0.05);
  vertical-align: middle;
}

.woocommerce-order-details table.woocommerce-table tbody td.product-name {
  font-family: 'Exo 2', sans-serif;
  font-size: 0.92rem;
  font-weight: 600;
  color: #E8E8F0;
}

.woocommerce-order-details table.woocommerce-table tbody td.product-name a {
  color: #E8E8F0;
  text-decoration: none;
  transition: color 0.3s ease;
}

.woocommerce-order-details table.woocommerce-table tbody td.product-name a:hover {
  color: #00E5FF;
}

.woocommerce-order-details table.woocommerce-table tbody td.product-name .product-quantity {
  color: #8A8A9A;
  font-size: 0.85rem;
}

.woocommerce-order-details table.woocommerce-table tbody td.product-total {
  text-align: right;
  font-family: 'Orbitron', sans-serif;
  font-size: 0.88rem;
  font-weight: 700;
  color: #00E5FF;
}

.woocommerce-order-details table.woocommerce-table tfoot th {
  font-family: 'Orbitron', sans-serif;
  font-size: 0.6rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #C0C0D8;
  padding: 14px 16px;
  border-top: 1px solid rgba(0, 229, 255, 0.06);
  text-align: left;
}

.woocommerce-order-details table.woocommerce-table tfoot td {
  text-align: right;
  padding: 14px 16px;
  font-family: 'Exo 2', sans-serif;
  font-size: 0.9rem;
  color: #E0E0F0;
  border-top: 1px solid rgba(0, 229, 255, 0.06);
}

/* Grand total row — prominent */
.woocommerce-order-details table.woocommerce-table tfoot tr:last-child th {
  font-size: 0.72rem;
  color: #F0F0F8;
  letter-spacing: 0.15em;
}

.woocommerce-order-details table.woocommerce-table tfoot tr:last-child td {
  font-family: 'Orbitron', sans-serif;
  font-size: 1.2rem;
  font-weight: 900;
  color: #00FF88;
  text-shadow: 0 0 10px rgba(0,255,136,0.2);
}

/* Shipping row */
.woocommerce-order-details table.woocommerce-table tfoot tr td .woocommerce-Price-amount {
  color: #00E5FF;
}

.woocommerce-order-details p,
.woocommerce-customer-details p,
.woocommerce-order-details td,
.woocommerce-customer-details td {
  color: #F0F0F8;
}

/* Customer address details */
.woocommerce-customer-details .woocommerce-columns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

.woocommerce-customer-details .woocommerce-column {
  background: rgba(0, 229, 255, 0.02);
  border: 1px solid rgba(0, 229, 255, 0.06);
  border-radius: 14px;
  padding: 20px 22px;
}

.woocommerce-customer-details .woocommerce-column h2 {
  font-size: 0.72rem !important;
  margin-bottom: 14px !important;
  padding-bottom: 10px;
}

.woocommerce-customer-details .woocommerce-column address {
  font-family: 'Exo 2', sans-serif;
  font-size: 0.88rem;
  color: #D0D0E0;
  line-height: 1.7;
  font-style: normal;
}

/* === Thank You Page — Immersive Post-Purchase Experience === */

/* Hero section with animated checkmark */
.ep-thankyou-hero {
  position: relative;
  text-align: center;
  padding: 48px 28px 36px;
  margin-top: var(--wp--preset--spacing--30);
  background: rgba(10, 10, 30, 0.7);
  border: 1px solid rgba(0, 255, 136, 0.15);
  border-radius: 24px;
  overflow: hidden;
}

.ep-thankyou-hero::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, transparent, #00FF88, #00E5FF, #9B59FF, transparent);
  opacity: 0.7;
}

.ep-thankyou-hero-glow {
  position: absolute;
  top: 10%;
  left: 50%;
  transform: translateX(-50%);
  width: 300px;
  height: 300px;
  background: radial-gradient(circle, rgba(0,255,136,0.06) 0%, transparent 70%);
  pointer-events: none;
  z-index: 0;
}

.ep-thankyou-hero-content {
  position: relative;
  z-index: 1;
}

.ep-thankyou-check-wrap {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 80px;
  height: 80px;
  margin-bottom: 20px;
}

.ep-thankyou-check-ring {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 2px solid rgba(0, 255, 136, 0.3);
  animation: epThankYouRingPulse 2.5s ease-in-out infinite;
}

@keyframes epThankYouRingPulse {
  0%, 100% { transform: scale(1); opacity: 0.4; box-shadow: 0 0 20px rgba(0,255,136,0.1); }
  50% { transform: scale(1.12); opacity: 0.15; box-shadow: 0 0 40px rgba(0,255,136,0.2); }
}

.ep-thankyou-check-icon {
  position: relative;
  z-index: 1;
  filter: drop-shadow(0 0 12px rgba(0,255,136,0.5));
  animation: epThankYouCheckIn 0.6s cubic-bezier(0.16, 1, 0.3, 1) 0.3s both;
}

@keyframes epThankYouCheckIn {
  from { opacity: 0; transform: scale(0.5); }
  to { opacity: 1; transform: scale(1); }
}

.ep-thankyou-hero-title {
  font-family: 'Orbitron', sans-serif;
  font-size: clamp(1.15rem, 3vw, 1.6rem);
  font-weight: 900;
  letter-spacing: 0.04em;
  color: #F0F0F8;
  margin: 0 0 12px;
  line-height: 1.3;
}

.ep-thankyou-hero-subtitle {
  font-family: 'Exo 2', sans-serif;
  font-size: 0.92rem;
  color: #B0B0C8;
  line-height: 1.7;
  margin: 0;
  max-width: 520px;
  margin-left: auto;
  margin-right: auto;
}

.ep-thankyou-hero-subtitle strong {
  color: #00E5FF;
  font-weight: 700;
}

/* Summary strip */
.ep-thankyou-summary-strip {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  margin-top: var(--wp--preset--spacing--20);
  padding: 18px 24px;
  background: rgba(0, 229, 255, 0.02);
  border: 1px solid rgba(0, 229, 255, 0.08);
  border-radius: 16px;
  flex-wrap: wrap;
}

.ep-thankyou-summary-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  padding: 8px 24px;
}

.ep-thankyou-summary-label {
  font-family: 'Orbitron', sans-serif;
  font-size: 0.48rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: #5A5A6A;
}

.ep-thankyou-summary-value {
  font-family: 'Orbitron', sans-serif;
  font-size: 0.85rem;
  font-weight: 900;
  color: #E0E0F0;
}

.ep-thankyou-summary-value--cyan { color: #00E5FF; text-shadow: 0 0 8px rgba(0,229,255,0.2); }
.ep-thankyou-summary-value--green { color: #00FF88; text-shadow: 0 0 8px rgba(0,255,136,0.2); }

.ep-thankyou-summary-divider {
  width: 1px;
  height: 36px;
  background: rgba(0, 229, 255, 0.1);
  flex-shrink: 0;
}

/* Next steps with timeline */
.ep-thankyou-next-steps {
  margin-top: var(--wp--preset--spacing--30);
  background: rgba(10, 10, 30, 0.5);
  border: 1px solid rgba(0, 229, 255, 0.08);
  border-radius: 20px;
  padding: 32px 28px;
  position: relative;
  overflow: hidden;
}

.ep-thankyou-heading {
  font-family: 'Orbitron', sans-serif;
  font-size: 0.9rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  color: #F0F0F8;
  margin: 0 0 24px;
  text-transform: uppercase;
}

.ep-thankyou-timeline {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.ep-thankyou-timeline-step {
  display: flex;
  align-items: flex-start;
  gap: 16px;
}

.ep-thankyou-timeline-dot {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  border: 2px solid rgba(0, 229, 255, 0.25);
  background: rgba(10, 10, 30, 0.8);
  flex-shrink: 0;
  margin-top: 3px;
  transition: all 0.3s ease;
}

.ep-thankyou-timeline-dot--active {
  border-color: #00FF88;
  background: #00FF88;
  box-shadow: 0 0 10px rgba(0,255,136,0.4);
}

.ep-thankyou-timeline-line {
  width: 2px;
  height: 20px;
  background: rgba(0, 229, 255, 0.08);
  margin-left: 6px;
  flex-shrink: 0;
}

.ep-thankyou-timeline-info {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding-bottom: 4px;
}

.ep-thankyou-timeline-info strong {
  font-family: 'Orbitron', sans-serif;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  color: #E0E0F0;
}

.ep-thankyou-timeline-info span {
  font-family: 'Exo 2', sans-serif;
  font-size: 0.82rem;
  color: #8A8A9A;
  line-height: 1.5;
}

/* Comeback / loyalty section */
.ep-thankyou-comeback {
  margin-top: var(--wp--preset--spacing--30);
  background: rgba(10, 10, 30, 0.65);
  border: 1px solid rgba(155, 89, 255, 0.15);
  border-radius: 24px;
  padding: 40px 32px 36px;
  text-align: center;
  position: relative;
  overflow: hidden;
}

.ep-thankyou-comeback::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, #9B59FF, #FF00AA, #00E5FF, transparent);
  opacity: 0.5;
}

.ep-thankyou-comeback-glow {
  position: absolute;
  bottom: -20%;
  left: 50%;
  transform: translateX(-50%);
  width: 400px;
  height: 250px;
  background: radial-gradient(ellipse, rgba(155,89,255,0.04) 0%, transparent 70%);
  pointer-events: none;
}

.ep-thankyou-comeback-badge {
  display: inline-block;
  font-family: 'Orbitron', sans-serif;
  font-size: 0.5rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: #9B59FF;
  background: rgba(155, 89, 255, 0.08);
  border: 1px solid rgba(155, 89, 255, 0.25);
  border-radius: 50px;
  padding: 6px 20px;
  margin-bottom: 16px;
  position: relative;
  z-index: 1;
}

.ep-thankyou-comeback-title {
  font-family: 'Orbitron', sans-serif;
  font-size: 1.25rem;
  font-weight: 900;
  letter-spacing: 0.06em;
  color: #F0F0F8;
  margin: 0 0 10px;
  position: relative;
  z-index: 1;
}

.ep-thankyou-comeback-text {
  font-family: 'Exo 2', sans-serif;
  font-size: 0.9rem;
  color: #A0A0B8;
  line-height: 1.7;
  margin: 0 0 28px;
  max-width: 540px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  z-index: 1;
}

.ep-thankyou-actions {
  display: flex;
  gap: 12px;
  justify-content: center;
  flex-wrap: wrap;
  position: relative;
  z-index: 1;
}

.ep-thankyou-action {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: 'Orbitron', sans-serif;
  font-size: 0.62rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  text-decoration: none;
  padding: 14px 28px;
  border-radius: 50px;
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
  position: relative;
  overflow: hidden;
}

.ep-thankyou-action--primary {
  color: #050510;
  background: linear-gradient(135deg, #00E5FF, #00B8D4);
  border: none;
  box-shadow: 0 0 20px rgba(0,229,255,0.3), inset 0 0 8px rgba(255,255,255,0.12);
}

.ep-thankyou-action--primary:hover {
  box-shadow: 0 0 36px rgba(0,229,255,0.45), inset 0 0 12px rgba(255,255,255,0.18);
  transform: translateY(-2px);
  color: #050510;
}

.ep-thankyou-action--secondary {
  color: #FF00AA;
  border: 1px solid rgba(255,0,170,0.25);
  background: rgba(255,0,170,0.04);
}

.ep-thankyou-action--secondary:hover {
  background: rgba(255,0,170,0.12);
  border-color: rgba(255,0,170,0.5);
  box-shadow: 0 0 20px rgba(255,0,170,0.12);
  color: #FF00AA;
}

.ep-thankyou-action--wa {
  color: #25D366;
  border: 1px solid rgba(37,211,102,0.25);
  background: rgba(37,211,102,0.04);
}

.ep-thankyou-action--wa:hover {
  background: rgba(37,211,102,0.12);
  border-color: rgba(37,211,102,0.5);
  box-shadow: 0 0 20px rgba(37,211,102,0.12);
  color: #25D366;
}

/* Trust cards */
.ep-thankyou-trust {
  margin-top: var(--wp--preset--spacing--30);
}

.ep-thankyou-trust-title {
  font-family: 'Orbitron', sans-serif;
  font-size: 0.82rem;
  font-weight: 900;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #C0C0D8;
  text-align: center;
  margin: 0 0 20px;
}

.ep-thankyou-trust-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}

.ep-thankyou-trust-card {
  background: rgba(10, 10, 30, 0.6);
  border: 1px solid rgba(0, 229, 255, 0.08);
  border-radius: 16px;
  padding: 24px 20px;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  transition: border-color 0.3s ease;
}

.ep-thankyou-trust-card:hover {
  border-color: rgba(0, 229, 255, 0.2);
}

.ep-thankyou-trust-card svg {
  flex-shrink: 0;
  opacity: 0.8;
}

.ep-thankyou-trust-card strong {
  font-family: 'Orbitron', sans-serif;
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #E0E0F0;
}

.ep-thankyou-trust-card span {
  font-family: 'Exo 2', sans-serif;
  font-size: 0.78rem;
  color: #8A8A9A;
  line-height: 1.55;
}

/* Share strip */
.ep-thankyou-share {
  margin-top: var(--wp--preset--spacing--30);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 18px 24px;
  background: rgba(10, 10, 30, 0.4);
  border: 1px solid rgba(0, 229, 255, 0.06);
  border-radius: 14px;
  flex-wrap: wrap;
}

.ep-thankyou-share-text {
  font-family: 'Exo 2', sans-serif;
  font-size: 0.85rem;
  color: #8A8A9A;
  margin: 0;
}

.ep-thankyou-share-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: 'Orbitron', sans-serif;
  font-size: 0.58rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-decoration: none;
  color: #25D366;
  border: 1px solid rgba(37, 211, 102, 0.25);
  border-radius: 50px;
  padding: 10px 22px;
  background: rgba(37, 211, 102, 0.04);
  transition: all 0.3s ease;
}

.ep-thankyou-share-btn:hover {
  background: rgba(37, 211, 102, 0.12);
  border-color: rgba(37, 211, 102, 0.5);
  box-shadow: 0 0 16px rgba(37, 211, 102, 0.12);
  color: #25D366;
}

/* Mobile responsive */
@media (max-width: 768px) {
  .ep-thankyou-hero {
    padding: 36px 20px 28px;
    border-radius: 18px;
  }

  .ep-thankyou-check-wrap {
    width: 64px;
    height: 64px;
  }

  .ep-thankyou-check-icon {
    width: 32px;
    height: 32px;
  }

  .ep-thankyou-summary-strip {
    flex-direction: column;
    gap: 0;
    padding: 14px 18px;
  }

  .ep-thankyou-summary-divider {
    width: 60%;
    height: 1px;
    margin: 4px auto;
  }

  .ep-thankyou-summary-item {
    padding: 8px 16px;
    flex-direction: row;
    justify-content: space-between;
    width: 100%;
  }

  .ep-thankyou-trust-cards {
    grid-template-columns: 1fr;
  }

  .ep-thankyou-actions {
    flex-direction: column;
    align-items: center;
  }

  .ep-thankyou-action {
    width: 100%;
    max-width: 280px;
    justify-content: center;
  }

  .ep-thankyou-comeback {
    padding: 32px 20px 28px;
  }

  .ep-thankyou-share {
    flex-direction: column;
    text-align: center;
  }
}

/* Order number badge in overview */
.woocommerce-order-received .woocommerce-order-overview li.order mark {
  background: none !important;
  font-family: 'Orbitron', sans-serif;
  font-weight: 900;
  color: #00E5FF !important;
  text-shadow: 0 0 8px rgba(0,229,255,0.2);
}

/* Payment method badge */
.woocommerce-order-received .woocommerce-order-overview li.method mark {
  background: none !important;
  color: #9B59FF !important;
}

/* Tracking info box (if present) */
.woocommerce-order-received .woocommerce-order-tracking {
  background: rgba(0, 229, 255, 0.03);
  border: 1px solid rgba(0, 229, 255, 0.12);
  border-radius: 14px;
  padding: 20px;
  margin-bottom: var(--wp--preset--spacing--30);
}

/* Mobile responsive */
@media (max-width: 768px) {
  .woocommerce-order-received .woocommerce-order-overview {
    grid-template-columns: repeat(2, 1fr);
  }

  .woocommerce-order-received .woocommerce-order-overview li + li::before {
    display: none;
  }

  .woocommerce-customer-details .woocommerce-columns {
    grid-template-columns: 1fr;
  }

  .ep-thankyou-actions {
    flex-direction: column;
    align-items: center;
  }

  .ep-thankyou-action {
    width: 100%;
    max-width: 280px;
    justify-content: center;
  }

  .woocommerce-order-details,
  .woocommerce-customer-details {
    padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--20);
    border-radius: 14px;
  }

  .ep-thankyou-next-steps {
    padding: var(--wp--preset--spacing--40) var(--wp--preset--spacing--20);
    border-radius: 14px;
  }
}

@media (max-width: 480px) {
  .woocommerce-order-received .woocommerce-order-overview {
    grid-template-columns: 1fr;
  }

  .woocommerce-order-received .woocommerce-thankyou-order-received::before {
    width: 64px;
    height: 64px;
    background-size: 28px 28px;
  }

  .woocommerce-order-details table.woocommerce-table thead {
    display: none;
  }

  .woocommerce-order-details table.woocommerce-table tbody td {
    display: block;
    text-align: left;
    padding: 8px 16px;
    border-bottom: none;
  }

  .woocommerce-order-details table.woocommerce-table tbody td.product-total {
    text-align: left;
    padding-bottom: 16px;
    border-bottom: 1px solid rgba(0, 229, 255, 0.05);
  }
}

/* === Star Ratings === */
.star-rating {
  color: var(--ep-cyan) !important;
}

.star-rating span::before {
  color: var(--ep-cyan) !important;
}

/* === WooCommerce Cart & Checkout Form Text Fix === */
.woocommerce-cart-form table td.product-name,
.woocommerce-cart-form table td.product-price,
.woocommerce-cart-form table td.product-subtotal,
.woocommerce-cart-form table td.product-quantity {
  color: #F0F0F8;
}

.cart_totals table td,
.cart_totals table th {
  color: #F0F0F8;
}

.woocommerce-checkout-review-order-table td,
.woocommerce-checkout-review-order-table th {
  color: #F0F0F8;
}

/* === WooCommerce Block Checkout Text Visibility === */
.wp-block-woocommerce-checkout .wc-block-components-text-input input,
.wp-block-woocommerce-checkout .wc-block-components-combobox input,
.wp-block-woocommerce-checkout select {
  color: #F0F0F8 !important;
  background: rgba(10, 10, 30, 0.8) !important;
  border-color: rgba(0, 229, 255, 0.2) !important;
}

.wp-block-woocommerce-checkout .wc-block-components-text-input label,
.wp-block-woocommerce-checkout .wc-block-components-combobox label {
  color: #D0D0E0 !important;
}

.wp-block-woocommerce-checkout h2,
.wp-block-woocommerce-checkout h3,
.wp-block-woocommerce-checkout .wc-block-components-title {
  color: #FFFFFF !important;
}

.wp-block-woocommerce-checkout p,
.wp-block-woocommerce-checkout .wc-block-components-checkbox__label,
.wp-block-woocommerce-checkout .wc-block-components-radio-control__label,
.wp-block-woocommerce-checkout .wc-block-components-radio-control__description,
.wp-block-woocommerce-checkout .wc-block-components-radio-control__secondary-label,
.wp-block-woocommerce-checkout .wc-block-components-totals-item__label,
.wp-block-woocommerce-checkout .wc-block-components-totals-item__value,
.wp-block-woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
.wp-block-woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
  color: #E0E0F0 !important;
}

.wp-block-woocommerce-checkout .wc-block-components-order-summary-item__description {
  color: #D0D0E0 !important;
}

.wp-block-woocommerce-checkout .wc-block-components-order-summary-item__individual-prices,
.wp-block-woocommerce-checkout .wc-block-components-product-name {
  color: #F0F0F8 !important;
}

/* WooCommerce block cart text */
.wp-block-woocommerce-cart .wc-block-components-product-name,
.wp-block-woocommerce-cart .wc-block-components-product-metadata,
.wp-block-woocommerce-cart .wc-block-components-quantity-selector input,
.wp-block-woocommerce-cart .wc-block-components-totals-item__label,
.wp-block-woocommerce-cart .wc-block-components-totals-item__value,
.wp-block-woocommerce-cart h2 {
  color: #F0F0F8 !important;
}

.wp-block-woocommerce-cart p,
.wp-block-woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
.wp-block-woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
  color: #E0E0F0 !important;
}

/* Generic WooCommerce block inputs */
.wc-block-components-text-input input:not(:focus),
.wc-block-components-textarea textarea:not(:focus) {
  color: #F0F0F8 !important;
}

.wc-block-components-text-input label,
.wc-block-components-combobox .wc-block-components-combobox-control label {
  color: #C0C0D8 !important;
}

/* Placeholder text in WC blocks */
.wc-block-components-text-input input::placeholder {
  color: #A0A0B8 !important;
  opacity: 1 !important;
}

/* === File Upload CTA Panel (Service Products) === */
.ep-wc-file-upload-cta--service {
  margin-top: var(--wp--preset--spacing--30);
  background: rgba(0, 229, 255, 0.03);
  border: 1px solid rgba(0, 229, 255, 0.2);
  border-radius: 16px;
  padding: 24px 28px;
  position: relative;
  overflow: hidden;
}

.ep-wc-file-upload-cta--service::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, #00E5FF, #FF00AA, #9B59FF, transparent);
  opacity: 0.6;
}

/* Animated scan line on the CTA panel */
.ep-wc-file-upload-cta--service::after {
  content: '';
  position: absolute;
  top: 2px;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, rgba(0,229,255,0.3) 50%, transparent 100%);
  animation: epFileCTAScan 3s linear infinite;
  pointer-events: none;
}

@keyframes epFileCTAScan {
  0% { top: 2px; opacity: 0; }
  10% { opacity: 1; }
  90% { opacity: 1; }
  100% { top: 100%; opacity: 0; }
}

.ep-wc-file-cta-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  border-radius: 14px;
  background: rgba(0, 229, 255, 0.08);
  border: 1px solid rgba(0, 229, 255, 0.15);
  color: #00E5FF;
  margin-bottom: 16px;
  flex-shrink: 0;
}

.ep-wc-file-cta-icon svg {
  filter: drop-shadow(0 0 6px rgba(0, 229, 255, 0.4));
}

.ep-wc-file-cta-content {
  margin-bottom: 18px;
}

.ep-wc-file-cta-title {
  font-family: 'Orbitron', sans-serif !important;
  font-size: 0.82rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #00E5FF !important;
  margin: 0 0 8px !important;
  text-shadow: 0 0 10px rgba(0, 229, 255, 0.25);
}

.ep-wc-file-cta-text {
  font-family: 'Exo 2', sans-serif !important;
  font-size: 0.88rem !important;
  line-height: 1.65 !important;
  color: #D0D0E0 !important;
  margin: 0 !important;
}

.ep-wc-file-cta-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-bottom: 16px;
}

.ep-wc-file-cta-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: 'Orbitron', sans-serif;
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  text-decoration: none;
  padding: 14px 28px;
  border-radius: 50px;
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
  cursor: pointer;
  position: relative;
  overflow: hidden;
}

.ep-wc-file-cta-btn--primary {
  color: #050510;
  background: linear-gradient(135deg, #00E5FF, #00B8D4);
  border: none;
  box-shadow: 0 0 20px rgba(0, 229, 255, 0.3), inset 0 0 8px rgba(255, 255, 255, 0.12);
}

.ep-wc-file-cta-btn--primary::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.25), transparent);
  transition: left 0.5s ease;
}

.ep-wc-file-cta-btn--primary:hover::before {
  left: 100%;
}

.ep-wc-file-cta-btn--primary:hover {
  box-shadow: 0 0 36px rgba(0, 229, 255, 0.45), 0 0 70px rgba(0, 229, 255, 0.15), inset 0 0 12px rgba(255, 255, 255, 0.18);
  transform: translateY(-2px);
  color: #050510;
}

.ep-wc-file-cta-btn--wa {
  color: #25D366;
  background: rgba(37, 211, 102, 0.06);
  border: 1px solid rgba(37, 211, 102, 0.25);
}

.ep-wc-file-cta-btn--wa:hover {
  background: rgba(37, 211, 102, 0.15);
  border-color: rgba(37, 211, 102, 0.5);
  box-shadow: 0 0 20px rgba(37, 211, 102, 0.15);
  color: #25D366;
}

/* Format badges */
.ep-wc-file-cta-formats {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}

.ep-wc-file-cta-formats-label {
  font-family: 'Orbitron', sans-serif;
  font-size: 0.52rem;
  font-weight: 700;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: #5A5A6A;
  margin-right: 4px;
}

.ep-wc-file-cta-format {
  font-family: 'Orbitron', sans-serif;
  font-size: 0.48rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #8A8A9A;
  background: rgba(0, 229, 255, 0.04);
  border: 1px solid rgba(0, 229, 255, 0.1);
  border-radius: 4px;
  padding: 3px 8px;
  transition: border-color 0.3s ease, color 0.3s ease;
}

.ep-wc-file-cta-format:hover {
  border-color: rgba(0, 229, 255, 0.3);
  color: #00E5FF;
}

/* Optional subtle link for regular products */
.ep-wc-file-upload-cta--optional {
  margin-top: var(--wp--preset--spacing--20);
}

.ep-wc-file-cta-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: 'Exo 2', sans-serif;
  font-size: 0.82rem;
  color: #8A8A9A;
  text-decoration: none;
  padding: 10px 0;
  transition: color 0.3s ease;
  border-bottom: 1px dashed rgba(0, 229, 255, 0.12);
}

.ep-wc-file-cta-link:hover {
  color: #00E5FF;
  border-bottom-color: rgba(0, 229, 255, 0.3);
}

.ep-wc-file-cta-link svg {
  flex-shrink: 0;
  transition: transform 0.3s ease;
}

.ep-wc-file-cta-link:hover svg:last-child {
  transform: translateX(3px);
}

/* Mobile responsive */
@media (max-width: 768px) {
  .ep-wc-file-upload-cta--service {
    padding: 18px 18px;
    border-radius: 12px;
  }

  .ep-wc-file-cta-title {
    font-size: 0.72rem !important;
  }

  .ep-wc-file-cta-text {
    font-size: 0.82rem !important;
  }

  .ep-wc-file-cta-actions {
    flex-direction: column;
  }

  .ep-wc-file-cta-btn {
    width: 100%;
    justify-content: center;
    padding: 12px 20px;
  }

  .ep-wc-file-cta-icon {
    width: 42px;
    height: 42px;
    border-radius: 10px;
  }

  .ep-wc-file-cta-icon svg {
    width: 22px;
    height: 22px;
  }
}

/* === WooCommerce Archive Category Title Background Fix === */
/* The archive page header (category name banner) defaults to a light bg */
.woocommerce-products-header,
.wp-block-query-title,
.page-title,
.woocommerce-products-header__title,
.term-description {
  background: transparent !important;
  color: #F0F0F8 !important;
}

/* Ensure the archive page wrapper has no white/light background */
.woocommerce .woocommerce-products-header {
  background: transparent !important;
}

/* WooCommerce native archive header — force dark background */
.woocommerce-page .woocommerce-products-header,
.tax-product_cat .woocommerce-products-header,
.tax-product_tag .woocommerce-products-header {
  background: transparent !important;
  padding: 0 0 var(--wp--preset--spacing--30);
}

/* Archive page result count */
.woocommerce-result-count {
  color: #D0D0E0 !important;
  font-family: 'Exo 2', sans-serif;
  font-size: 0.85rem;
}

/* === WooCommerce Select/Dropdown Native Styling (Dark Theme) === */
/* Fix for light-background native dropdowns that are unreadable on dark theme */
.woocommerce .orderby,
.woocommerce select,
.woocommerce-page select,
.wc-block-sort-select__select,
select.orderby,
.wc-block-components-sort-select .wc-block-sort-select__select,
.wc-block-components-sort-select select {
  background-color: #0A0A1A !important;
  color: #F0F0F8 !important;
  border: 1px solid rgba(0, 229, 255, 0.3) !important;
  border-radius: 10px !important;
  padding: 12px 40px 12px 16px !important;
  font-family: 'Exo 2', sans-serif !important;
  font-size: 0.88rem !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2300E5FF' d='M6 8L1 3h10z'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 14px center !important;
  cursor: pointer;
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
  outline: none;
  min-height: 44px;
  line-height: 1.4;
}

.woocommerce .orderby:focus,
.woocommerce select:focus,
.woocommerce-page select:focus,
.wc-block-sort-select__select:focus,
select.orderby:focus {
  border-color: rgba(0, 229, 255, 0.6) !important;
  box-shadow: 0 0 16px rgba(0, 229, 255, 0.15) !important;
}

.woocommerce .orderby option,
.woocommerce select option,
.woocommerce-page select option,
.wc-block-sort-select__select option,
select.orderby option {
  background-color: #0A0A1A !important;
  color: #F0F0F8 !important;
  padding: 10px 14px;
  font-size: 0.88rem;
}

/* WooCommerce ordering wrapper — ensure visible layout */
.woocommerce-ordering {
  margin-bottom: var(--wp--preset--spacing--30);
  display: flex;
  align-items: center;
  gap: 12px;
}

/* Result count text — ensure readable */
.woocommerce-result-count {
  color: #D0D0E0 !important;
  font-family: 'Exo 2', sans-serif;
  font-size: 0.85rem;
}

/* WooCommerce Block sort select — ensure label is readable */
.wc-block-sort-select {
  color: #E0E0F0;
}

.wc-block-sort-select label,
.wc-block-components-sort-select label {
  color: #D0D0E0 !important;
  font-family: 'Orbitron', sans-serif;
  font-size: 0.62rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

/* WooCommerce product collection toolbar — ensure all elements visible */
.wc-block-product-collection-header,
.wp-block-woocommerce-product-collection-header {
  color: #E0E0F0;
}

.wc-block-product-collection-header select,
.wp-block-woocommerce-product-collection-header select {
  background-color: #0A0A1A !important;
  color: #F0F0F8 !important;
  border: 1px solid rgba(0, 229, 255, 0.3) !important;
  border-radius: 10px !important;
}

/* Price filter and sort controls in WooCommerce blocks */
.wc-block-active-filters,
.wc-block-price-filter,
.wc-block-attribute-filter,
.wc-block-stock-filter,
.wc-block-rating-filter {
  color: #E0E0F0;
}

.wc-block-active-filters label,
.wc-block-price-filter label,
.wc-block-attribute-filter label,
.wc-block-stock-filter label,
.wc-block-rating-filter label {
  color: #D0D0E0 !important;
}

/* Price range text in filters */
.wc-block-price-filter .wc-block-price-filter__range-text,
.wc-block-price-filter .wc-block-components-price-slider__range-text {
  color: #00E5FF !important;
  font-family: 'Orbitron', sans-serif;
  font-weight: 700;
}

/* Block-based collection sort select */
.wc-block-product-results-count,
.wc-block-catalog-sorting {
  color: #D0D0E0;
}

.wc-block-catalog-sorting select {
  background-color: #0A0A1A !important;
  color: #F0F0F8 !important;
  border: 1px solid rgba(0, 229, 255, 0.3) !important;
}

/* === Responsive === */
/* === MOBILE PRODUCT CARD TAP FIX === */
/* On touch devices, product cards need larger tap targets and no competing
   overlays/pseudo-elements that intercept touch events. The ghost click issue
   ("have to tap many times") is caused by:
   1. Hover pseudo-elements (.ep-glass-card::before shimmer) intercepting the
      first touch as a hover-enter and only passing the tap on the second.
   2. The WooCommerce add-to-cart AJAX overlay blocking the link tap area.
   3. Small tap target on the product title text.
   The fixes below address all three causes on touch devices. */

@media (pointer: coarse) {
  /* Remove the shimmer line pseudo-element that intercepts first tap */
  ul.products li.product.ep-glass-card::before {
    display: none !important;
    pointer-events: none !important;
  }

  /* Remove the HUD corner pseudo-element that can intercept taps */
  ul.products li.product.ep-glass-card::after {
    display: none !important;
    pointer-events: none !important;
  }

  /* Disable hover transforms on product cards — they cause reflow
     that makes the browser re-hit-test and miss the tap */
  ul.products li.product:hover {
    transform: none !important;
    box-shadow: none !important;
  }

  /* Make the entire product link a larger, easier tap target */
  ul.products li.product a.woocommerce-LoopProduct-link {
    min-height: 44px;
    position: relative;
    z-index: 2;
  }

  /* Product image — ensure it's fully tappable and not covered */
  ul.products li.product a img {
    pointer-events: auto;
    position: relative;
    z-index: 1;
  }

  /* Product title — bigger tap target with more padding */
  ul.products li.product .woocommerce-loop-product__title {
    padding: var(--wp--preset--spacing--20) var(--wp--preset--spacing--30) var(--wp--preset--spacing--10) !important;
    min-height: 44px;
    display: flex;
    align-items: center;
  }

  /* WooCommerce AJAX loader overlay — make sure it doesn't block
     the product link underneath */
  ul.products li.product .added_to_cart,
  ul.products li.product .loading::after {
    pointer-events: none;
  }

  /* Price area — ensure tappable */
  ul.products li.product .price {
    min-height: 44px;
    display: flex;
    align-items: center;
    padding: var(--wp--preset--spacing--10) var(--wp--preset--spacing--30);
  }

  /* Add to Cart button — bigger touch target on mobile */
  ul.products li.product .button,
  ul.products li.product a.added_to_cart {
    min-height: 48px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 14px 24px !important;
  }

  /* WooCommerce block product collection cards — same fixes */
  .wp-block-woocommerce-product-template .ep-glass-card::before,
  .wp-block-woocommerce-product-template .ep-glass-card::after {
    display: none !important;
    pointer-events: none !important;
  }

  .wp-block-woocommerce-product-template .ep-glass-card:hover {
    transform: none !important;
  }

  /* Ensure all interactive elements inside product cards pass
     touch events through to the underlying link */
  .wc-block-grid__product .wc-block-grid__product-link,
  .wc-block-grid__product .wc-block-grid__product-image {
    -webkit-tap-highlight-color: rgba(0, 229, 255, 0.08);
    touch-action: manipulation;
  }
}

/* Also fix for all small-screen devices (not just coarse pointer) */
@media (max-width: 768px) {
  /* Disable all hover animations on product cards to prevent
     "first tap = hover, second tap = click" browser behavior */
  ul.products li.product {
    transition: none !important;
  }

  ul.products li.product:hover {
    transform: none !important;
    border-color: rgba(0, 229, 255, 0.15) !important;
  }

  /* Larger product title for easier tapping */
  ul.products li.product .woocommerce-loop-product__title {
    font-size: 0.88rem !important;
    line-height: 1.4 !important;
    padding: 14px var(--wp--preset--spacing--30) 8px !important;
  }

  /* Product image height reduced slightly for faster loading
     but tap target remains full-width */
  ul.products li.product a img {
    height: 220px;
  }
}

@media (max-width: 480px) {
  ul.products li.product a img {
    height: 200px;
  }

  ul.products li.product .woocommerce-loop-product__title {
    font-size: 0.82rem !important;
  }

  ul.products li.product .button,
  ul.products li.product a.added_to_cart {
    font-size: 0.6rem !important;
    padding: 12px 18px !important;
  }
}

@media (max-width: 768px) {
  .woocommerce-cart-form table,
  .woocommerce-cart-form table thead,
  .woocommerce-cart-form table tbody,
  .woocommerce-cart-form table tr,
  .woocommerce-cart-form table th,
  .woocommerce-cart-form table td {
    display: block;
  }

  .woocommerce-cart-form table thead {
    display: none;
  }

  .woocommerce-cart-form table tr {
    border-bottom: 1px solid rgba(0, 229, 255, 0.1);
    margin-bottom: var(--wp--preset--spacing--20);
    padding-bottom: var(--wp--preset--spacing--20);
    position: relative;
  }

  .woocommerce-cart-form table td {
    border: none;
    padding: 8px 20px;
  }

  .woocommerce-cart-form table td.product-thumbnail {
    text-align: center;
    padding-top: 16px;
  }

  .woocommerce-cart-form table td.product-thumbnail img {
    width: 100px !important;
    height: 100px !important;
    margin: 0 auto;
  }

  .woocommerce-cart-form table td.product-name {
    text-align: center;
    padding-top: 10px;
  }

  .woocommerce-cart-form table td.product-name a {
    font-size: 0.95rem !important;
  }

  .woocommerce-cart-form table td.product-price,
  .woocommerce-cart-form table td.product-subtotal {
    text-align: center;
    font-size: 1rem;
  }

  .woocommerce-cart-form table td.product-quantity {
    text-align: center;
  }

  .woocommerce-cart-form table td.product-remove {
    text-align: center;
    padding-bottom: 16px;
  }

  .woocommerce-cart-form table td.product-remove a {
    margin: 0 auto;
  }

  /* Label before each value on mobile (pseudo-elements) */
  .woocommerce-cart-form table td.product-price::before {
    content: 'Preco: ';
    font-family: 'Orbitron', sans-serif;
    font-size: 0.58rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #8A8A9A;
    margin-right: 8px;
  }

  .woocommerce-cart-form table td.product-subtotal::before {
    content: 'Subtotal: ';
    font-family: 'Orbitron', sans-serif;
    font-size: 0.58rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #8A8A9A;
    margin-right: 8px;
  }

  .woocommerce-cart-form {
    border-radius: 16px;
  }

  .woocommerce-cart-form .actions {
    flex-direction: column;
    gap: 10px;
    padding: 16px;
  }

  .woocommerce-cart-form .actions .coupon {
    width: 100%;
    flex-direction: column;
  }

  .woocommerce-cart-form .actions .coupon input[type="text"] {
    max-width: 100%;
    width: 100%;
  }

  .woocommerce-cart-form .actions .coupon button,
  .woocommerce-cart-form .actions > button {
    width: 100%;
    text-align: center;
    justify-content: center;
  }

  .cart_totals {
    margin-top: var(--wp--preset--spacing--30);
    padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--20);
    border-radius: 16px;
  }

  .cart_totals .order-total td {
    font-size: 1.25rem;
  }

  ul.products li.product {
    background: rgba(10, 10, 30, 0.9) !important;
  }
}