/*
Theme Name: Sober Child Theme
Theme URI: http://uix.store/sober/
Author: UIX Themes
Description: Sober child — SOTM dark/galaxy/aurora restyle for the merch store.
Version: 3.0.0
Template: sober
*/

/* ════════════════════════════════════════════════════════════════════
   SOUNDS OF THE MULTIVERSE — Store restyle (premium dark / galaxy / aurora)
   IMPORTANTE: Sober usa html{font-size:62.5%} → 1rem = 10px. Acá los tamaños
   van en PX para evitar texto diminuto. Selectores `body` + `[class]` para
   ganarle a Sober/WooCommerce (.columns-N, etc.).
   ════════════════════════════════════════════════════════════════════ */

@font-face { font-family: 'Sanhanna'; src: url('assets/sanhanna.otf') format('opentype'); font-display: swap; }

:root {
  --sotm-primary: #4CB0E4; --sotm-primary-bright: #6fc0ee; --sotm-secondary: #ea73fb;
  --sotm-ink: #e7e9f5; --sotm-ink-high: #ffffff; --sotm-ink-muted: #9aa6c7;
  --sotm-bg: #070815; --sotm-card: rgba(17, 21, 46, 0.55);
  --sotm-border: rgba(140, 160, 255, 0.16); --sotm-border-hi: rgba(120, 200, 255, 0.55);
  --sotm-aurora: linear-gradient(90deg, #d4af37, #5b8fdb, #4AFECF, #5BB5E0, #E253FC, #5BB5E0, #4AFECF, #5b8fdb, #d4af37);
  --font-h: 'Space Grotesk', system-ui, sans-serif; --font-b: 'Plus Jakarta Sans', system-ui, sans-serif;
  --font-mono: 'JetBrains Mono', ui-monospace, monospace;
}
@keyframes sotm-aurora { to { background-position: 300% 0; } }

/* ── Fondo galaxia + velo (galaxia en html: Sober estiliza body) ── */
html { background: var(--sotm-bg) url('assets/galaxia.webp') center top / cover no-repeat fixed; }
body { background: transparent !important; color: var(--sotm-ink); font-family: var(--font-b); }
body::before { content: ''; position: fixed; inset: 0; z-index: 0; pointer-events: none; background: linear-gradient(180deg, rgba(7,8,21,.30) 0%, rgba(7,8,21,.74) 52%, rgba(7,8,21,.92) 100%); }
#page, .site, header, footer, #content { position: relative; z-index: 1; }
#page, .l-canvas, .l-body, .l-main, #wrapper, .site, .site-content, #content, #main, .page-header, .l-section, article, .hentry, .woocommerce, .woocommerce-page, .product, .type-product, .container, .row { background: transparent !important; }

/* ── Tipografía base ── */
body, p, li, td, label, .woocommerce { color: var(--sotm-ink); }
h1, h2, h3, h4, h5, h6 { font-family: var(--font-h) !important; color: var(--sotm-ink-high) !important; }
a { color: var(--sotm-primary-bright); } a:hover { color: #fff; }
::selection { background: rgba(76,176,228,.35); color: #fff; }
::-webkit-scrollbar { width: 11px; height: 11px; }
::-webkit-scrollbar-thumb { background: rgba(120,160,255,.25); border-radius: 999px; }
::-webkit-scrollbar-track { background: rgba(7,8,21,.6); }

/* ════════ TOPBAR de marca ════════ */
.sotm-topbar { position: relative; z-index: 3; background: linear-gradient(90deg, rgba(10,12,28,.96), rgba(14,16,38,.96)); border-bottom: 1px solid var(--sotm-border); }
.sotm-topbar-in { max-width: 1280px; margin: 0 auto; padding: 9px 24px; display: flex; align-items: center; justify-content: space-between; gap: 14px; }
.sotm-topbar-brand { display: inline-flex; align-items: center; gap: 10px; font-family: var(--font-h); font-weight: 500; letter-spacing: .22em; font-size: 11px !important; text-transform: uppercase; color: var(--sotm-ink-muted) !important; }
.sotm-topbar-brand strong { color: var(--sotm-ink-high); font-weight: 700; }
.sotm-topbar-brand:hover { color: var(--sotm-ink-high) !important; }
.sotm-topbar-mark { width: 22px; height: 22px; border-radius: 50%; background: url('assets/logo.png') center/contain no-repeat; box-shadow: 0 0 0 1px var(--sotm-border), 0 0 14px -4px var(--sotm-primary); }
.sotm-topbar-back { display: inline-flex; align-items: center; gap: 7px; font-family: var(--font-h); font-size: 11px !important; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--sotm-ink) !important; padding: 6px 14px; border-radius: 999px; border: 1px solid var(--sotm-border); background: rgba(255,255,255,.04); transition: border-color .2s, color .2s, background .2s; }
.sotm-topbar-back:hover { color: #fff !important; border-color: var(--sotm-primary); background: rgba(76,176,228,.12); }

/* ════════ HEADER del tema ════════ */
.site-header, #masthead, .l-header, header.site-header, .header-wrap, #header { background: rgba(7,9,22,.72) !important; -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); border-bottom: 1px solid var(--sotm-border); }
.site-header a, #header a, .main-navigation a, .menu a { color: var(--sotm-ink) !important; }
.site-header a:hover, .main-navigation a:hover, .menu a:hover { color: var(--sotm-primary-bright) !important; }
.header-icons a, .site-header .fa, .site-header i { color: var(--sotm-ink) !important; }
.woocommerce-breadcrumb, .breadcrumb { color: var(--sotm-ink-muted) !important; font-size: 13px !important; }
.woocommerce-breadcrumb a { color: var(--sotm-primary-bright) !important; }
.woocommerce-products-header__title.page-title, .post-type-archive-product .page-header-title { display: none !important; }

/* ════════ HERO / banner superior ════════ */
.sotm-hero { position: relative; overflow: hidden; margin: 10px 0 40px; padding: clamp(42px,6vw,76px) clamp(20px,4vw,56px); border-radius: 22px; text-align: center; border: 1px solid var(--sotm-border); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); background: radial-gradient(120% 140% at 50% -20%, rgba(76,176,228,.16), transparent 60%), linear-gradient(180deg, rgba(13,16,38,.62), rgba(9,11,26,.78)); box-shadow: 0 40px 90px -50px rgba(0,0,0,.9), inset 0 1px 0 rgba(255,255,255,.05); }
.sotm-hero-in { position: relative; z-index: 2; max-width: 760px; margin: 0 auto; }
.sotm-hero-eyebrow { display: inline-block; font-family: var(--font-mono); font-size: 12px !important; letter-spacing: .34em; text-transform: uppercase; color: var(--sotm-primary-bright); }
.sotm-hero-title { font-family: var(--font-h) !important; font-weight: 700 !important; font-size: clamp(34px,5.5vw,60px) !important; line-height: 1.04 !important; margin: 16px 0 0 !important; color: var(--sotm-ink-high) !important; letter-spacing: -.02em; }
.sotm-hero-title .sotm-grad { background: var(--sotm-aurora); background-size: 300% 100%; -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; color: transparent; animation: sotm-aurora 12s linear infinite; }
.sotm-hero-sub { margin: 18px auto 0 !important; max-width: 580px; color: var(--sotm-ink-muted) !important; font-size: 17px !important; line-height: 1.65 !important; }
.sotm-hero-rule { display: block; width: 120px; height: 3px; margin: 28px auto 0; border-radius: 999px; background: var(--sotm-aurora); background-size: 300% 100%; animation: sotm-aurora 12s linear infinite; }
.sotm-hero-aurora { position: absolute; z-index: 1; left: 50%; top: -40%; width: 80%; height: 160%; transform: translateX(-50%); background: radial-gradient(closest-side, rgba(226,83,252,.20), transparent 70%), radial-gradient(closest-side, rgba(79,198,243,.18), transparent 70%); background-position: 28% 50%, 72% 50%; background-repeat: no-repeat; filter: blur(22px); pointer-events: none; }

/* ════════ GRILLA DE PRODUCTOS (CSS grid centrado; gana a .columns-N) ════════ */
body.woocommerce ul.products[class], body.woocommerce-page ul.products[class] {
  display: grid !important; grid-template-columns: repeat(auto-fill, minmax(238px, 1fr)) !important;
  gap: clamp(18px, 2vw, 28px) !important; max-width: 1240px; margin: 0 auto !important; padding: 0 !important; float: none !important; list-style: none;
}
body.woocommerce ul.products[class] li.product, body.woocommerce-page ul.products[class] li.product {
  width: auto !important; max-width: none !important; float: none !important; margin: 0 !important; clear: none !important;
  position: relative; display: flex !important; flex-direction: column; align-items: center; text-align: center !important;
  background: var(--sotm-card); border: 1px solid var(--sotm-border); border-radius: 16px; padding: 12px 12px 18px !important;
  -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); box-shadow: 0 18px 50px -34px rgba(0,0,0,.9);
  transition: transform .35s cubic-bezier(.16,1,.3,1), border-color .35s, box-shadow .35s;
}
body.woocommerce ul.products[class] li.product:hover { transform: translateY(-6px); border-color: var(--sotm-border-hi); box-shadow: 0 26px 60px -28px rgba(0,0,0,.95), 0 0 28px -6px rgba(79,198,243,.45), 0 0 60px -10px rgba(226,83,252,.30); }
body.woocommerce ul.products[class] li.product::before, body.woocommerce ul.products[class] li.product::after { content: none !important; }
body.woocommerce ul.products[class] li.product img { width: 100% !important; aspect-ratio: 1 / 1; object-fit: contain !important; background: linear-gradient(160deg, #f6f8ff, #e9eefb) !important; border-radius: 13px !important; padding: 14px; margin: 0 0 16px !important; }
body.woocommerce ul.products[class] li.product h2,
body.woocommerce ul.products[class] li.product h3,
body.woocommerce ul.products[class] li.product .woocommerce-loop-product__title,
body.woocommerce ul.products[class] li.product .woocommerce-loop-product__title a {
  font-family: var(--font-h) !important; font-weight: 600 !important; font-size: 16px !important; line-height: 1.3 !important;
  color: var(--sotm-ink-high) !important; text-align: center !important; text-transform: none !important; letter-spacing: 0 !important;
  padding: 0 6px !important; margin: 0 0 8px !important; min-height: 42px;
}
body.woocommerce ul.products[class] li.product .price,
body.woocommerce ul.products[class] li.product .price ins {
  color: var(--sotm-primary-bright) !important; text-align: center !important; font-family: var(--font-h) !important;
  font-weight: 700 !important; font-size: 19px !important; margin: 0 0 14px !important; display: block; text-decoration: none;
}
body.woocommerce ul.products[class] li.product .price del { color: var(--sotm-ink-muted) !important; font-weight: 400 !important; font-size: 14px !important; margin-right: 6px; }
body.woocommerce ul.products[class] li.product .button,
body.woocommerce ul.products[class] li.product a.add_to_cart_button,
body.woocommerce ul.products[class] li.product a.product_type_simple,
body.woocommerce ul.products[class] li.product a.product_type_variable {
  margin: auto auto 0 !important; width: auto !important; min-width: 72%; text-align: center !important; font-size: 13px !important; padding: 13px 22px !important;
}
body.woocommerce ul.products[class] li.product .onsale { position: absolute; top: 14px; left: 14px; margin: 0 !important; min-height: 0; min-width: 0; padding: 4px 12px !important; font-size: 11px !important; line-height: 1.5; }

/* ════════ BOTONES (aurora pill) ════════ */
body.woocommerce a.button, body.woocommerce button.button, body.woocommerce input.button,
body.woocommerce #respond input#submit, body.woocommerce .button, body .button.alt,
.single_add_to_cart_button, .checkout-button, .wc-block-components-button {
  background: var(--sotm-aurora) !important; background-size: 300% 100% !important; animation: sotm-aurora 16s linear infinite;
  color: #07101f !important; font-family: var(--font-h) !important; font-weight: 700 !important; border: 0 !important;
  border-radius: 999px !important; padding: 14px 28px !important; font-size: 14px !important; letter-spacing: .03em;
  box-shadow: 0 14px 34px -16px rgba(79,198,243,.7); transition: transform .2s ease, box-shadow .25s ease, filter .2s ease;
}
body.woocommerce a.button:hover, body.woocommerce button.button:hover, body.woocommerce .button:hover,
.single_add_to_cart_button:hover, .checkout-button:hover { transform: translateY(-2px); filter: brightness(1.07); color: #07101f !important; box-shadow: 0 20px 44px -14px rgba(79,198,243,.85), 0 0 26px -8px rgba(226,83,252,.5); }
body.woocommerce .button.wc-backward, body.woocommerce a.added_to_cart,
body.woocommerce a.button[class*="wcboost"], body.woocommerce .button[class*="wcboost"],
.wcboost-wishlist-button, .wcboost-products-compare-button {
  background: rgba(255,255,255,.06) !important; background-image: none !important; color: var(--sotm-ink) !important;
  border: 1px solid var(--sotm-border) !important; box-shadow: none !important; animation: none !important;
}
body.woocommerce a.button[class*="wcboost"]:hover { border-color: var(--sotm-primary) !important; color: var(--sotm-primary-bright) !important; }

/* ════════ PRODUCTO INDIVIDUAL ════════ */
.single-product div.product .product_title { font-family: var(--font-h) !important; color: var(--sotm-ink-high) !important; font-size: clamp(26px,3vw,40px) !important; line-height: 1.1; }
.single-product div.product p.price, .single-product div.product span.price { color: var(--sotm-primary-bright) !important; font-weight: 700; font-size: 26px !important; }
.single-product div.product p.price del { color: var(--sotm-ink-muted) !important; font-size: 18px !important; }
.single-product .stock.in-stock { color: #58e58d !important; }
.single-product .woocommerce-product-details__short-description, .single-product .product_meta { color: var(--sotm-ink); }
.woocommerce div.product .woocommerce-tabs ul.tabs li, .woocommerce-tabs ul.tabs li { background: var(--sotm-card) !important; border: 1px solid var(--sotm-border) !important; border-radius: 10px 10px 0 0; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { color: var(--sotm-ink) !important; font-family: var(--font-h); }
.woocommerce div.product .woocommerce-tabs ul.tabs::before { border-bottom-color: var(--sotm-border) !important; }
.woocommerce-Tabs-panel, #tab-description, .wc-tab, .woocommerce div.product .woocommerce-tabs .panel, .woocommerce-Tabs-panel p { background: transparent !important; color: var(--sotm-ink) !important; }
.woocommerce .quantity .qty, .quantity input { background: rgba(255,255,255,.05) !important; color: var(--sotm-ink-high) !important; border: 1px solid var(--sotm-border) !important; border-radius: 10px; }
.woocommerce div.product form.cart .variations select, .woocommerce select, select { background: #0e1124 !important; color: var(--sotm-ink) !important; border: 1px solid var(--sotm-border) !important; border-radius: 10px; padding: .5em .7em; }

/* ════════ TABLAS (carrito / órdenes) ════════ */
.woocommerce table.shop_table, .woocommerce table.cart, .cart_totals table, .woocommerce-checkout table.shop_table, .woocommerce table.shop_table_responsive { background: var(--sotm-card) !important; border: 1px solid var(--sotm-border) !important; border-radius: 14px; overflow: hidden; -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); }
.woocommerce table.shop_table th, .woocommerce table.cart th, .cart_totals th { color: var(--sotm-ink-high) !important; font-family: var(--font-h); }
.woocommerce table.shop_table td, .woocommerce table.cart td, .cart_totals td { color: var(--sotm-ink) !important; border-top: 1px solid var(--sotm-border) !important; background: transparent !important; }
.woocommerce table.shop_table a { color: var(--sotm-primary-bright) !important; }
.woocommerce-page-header, .woocommerce-account-nav, .woocommerce-MyAccount-navigation { background: transparent !important; border-bottom: 1px solid var(--sotm-border) !important; }
.woocommerce-page-header a, .woocommerce-page-header li, .woocommerce-page-header span { color: var(--sotm-ink-muted) !important; font-family: var(--font-h); }
.woocommerce-page-header .active a, .woocommerce-page-header .active, .woocommerce-page-header a:hover { color: var(--sotm-ink-high) !important; }

/* ════════ FORMULARIOS (checkout) ════════ */
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea,
.woocommerce-checkout input[type=text], .woocommerce-checkout input[type=email], .woocommerce-checkout input[type=tel],
.woocommerce-checkout textarea, .select2-container .select2-selection, input[type=search], .search-field {
  background: rgba(255,255,255,.05) !important; color: var(--sotm-ink-high) !important; border: 1px solid var(--sotm-border) !important; border-radius: 10px !important; padding: .7em .8em !important;
}
.woocommerce form .form-row label, .woocommerce-checkout label, .woocommerce-checkout h3 { color: var(--sotm-ink) !important; }
.woocommerce-checkout #payment, .woocommerce-checkout .woocommerce-checkout-review-order { background: var(--sotm-card) !important; border: 1px solid var(--sotm-border) !important; border-radius: 14px; -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); }
.woocommerce-info, .woocommerce-message { background: var(--sotm-card) !important; color: var(--sotm-ink) !important; border-top: 3px solid var(--sotm-primary) !important; border-radius: 10px; }

/* ════════ MENÚ off-canvas / FOOTER ════════ */
.side-menu, .mobile-menu, .side-menu.mobile-menu, .offcanvas { background: rgba(7,9,22,.97) !important; -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); border-right: 1px solid var(--sotm-border); }
.side-menu a, .mobile-menu a { color: var(--sotm-ink) !important; }
.side-menu a:hover, .mobile-menu a:hover { color: var(--sotm-primary-bright) !important; }
.site-footer, #footer, .l-footer, footer { background: rgba(7,9,22,.85) !important; border-top: 1px solid var(--sotm-border); color: var(--sotm-ink-muted); }
.site-footer a, #footer a, footer a { color: var(--sotm-ink-muted) !important; }
.site-footer a:hover, footer a:hover { color: var(--sotm-primary-bright) !important; }
.widget, .widget-area { background: transparent !important; color: var(--sotm-ink); }
.widget-title { color: var(--sotm-ink-high) !important; }

@media (max-width: 600px) {
  .sotm-topbar-brand span:last-child { font-size: 10px; }
  body.woocommerce ul.products[class] { grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)) !important; }
}

/* ════ FIXES 2 (2026-06-01) ════════════════════════════════════════ */

/* Tallas (WCBoost swatches): TODAS en una sola fila (desktop + mobile) */
body.woocommerce .wcboost-variation-swatches__wrapper,
body.woocommerce-page .wcboost-variation-swatches__wrapper {
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 9px;
  align-items: center;
  margin: 0 !important;
  padding: 0 !important;
}
body.woocommerce .wcboost-variation-swatches__item,
body.woocommerce-page .wcboost-variation-swatches__item {
  margin: 0 !important;
  flex: 0 0 auto;
}

/* Botón "Add to cart" del detalle: altura normal (el tema le mete line-height:60px = 88px) */
body.woocommerce div.product form.cart .single_add_to_cart_button,
body.woocommerce-page div.product form.cart .single_add_to_cart_button {
  line-height: 1.25 !important;
  min-height: 0 !important;
  height: auto !important;
  padding: 15px 36px !important;
}

/* ════ FIXES 3 (2026-06-01) — acciones de la card compactas y en flujo ════ */
/* La caja .buttons venía position:absolute (pill gigante sobre la imagen +
   wishlist/compare envueltos a 2ª fila). La pasamos a una fila compacta al
   PIE de la card (order al final del flex-column), una sola línea. */
body.woocommerce ul.products[class] li.product .buttons,
body.woocommerce-page ul.products[class] li.product .buttons {
  position: static !important;
  order: 5;
  top: auto !important; bottom: auto !important; left: auto !important; right: auto !important;
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100% !important;
  height: auto !important;
  margin: 14px 0 0 !important;
  padding: 0 !important;
  opacity: 1 !important;
  transform: none !important;
}
/* Botón principal: pill compacto, icono + texto centrados */
body.woocommerce ul.products[class] li.product .buttons > a.button,
body.woocommerce ul.products[class] li.product .buttons > a.add_to_cart_button,
body.woocommerce-page ul.products[class] li.product .buttons > a.button {
  flex: 1 1 auto;
  max-width: 168px;
  height: 42px !important;
  min-height: 0 !important;
  line-height: 1 !important;
  padding: 0 16px !important;
  margin: 0 !important;
  font-size: 12.5px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px;
  border-radius: 999px !important;
  white-space: nowrap;
}
/* el icono (pseudo/font del tema) alineado, sin desplazar */
body.woocommerce ul.products[class] li.product .buttons > a.button::before,
body.woocommerce ul.products[class] li.product .buttons > a.button i {
  margin: 0 !important;
  line-height: 1 !important;
  vertical-align: middle;
  font-size: 15px;
  position: static !important;
}
/* Wishlist + Compare: círculos chicos glass, en la misma fila */
body.woocommerce ul.products[class] li.product .buttons .wcboost-wishlist-button,
body.woocommerce ul.products[class] li.product .buttons .wcboost-products-compare-button,
body.woocommerce-page ul.products[class] li.product .buttons .wcboost-wishlist-button,
body.woocommerce-page ul.products[class] li.product .buttons .wcboost-products-compare-button {
  flex: 0 0 auto;
  width: 38px !important;
  height: 38px !important;
  min-width: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 50% !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(255,255,255,.05) !important;
  border: 1px solid var(--sotm-border) !important;
  color: var(--sotm-ink-mid) !important;
}
body.woocommerce ul.products[class] li.product .buttons .wcboost-wishlist-button:hover,
body.woocommerce ul.products[class] li.product .buttons .wcboost-products-compare-button:hover {
  color: #fff !important;
  border-color: var(--sotm-border-hi) !important;
  background: rgba(79,198,243,.14) !important;
}
body.woocommerce ul.products[class] li.product .buttons .wcboost-wishlist-button__text,
body.woocommerce ul.products[class] li.product .buttons .wcboost-products-compare-button__text {
  display: none !important;
}

/* Asegurar que la card sea flex-column para que order coloque las acciones al pie */
body.woocommerce ul.products[class] li.product,
body.woocommerce-page ul.products[class] li.product {
  display: flex !important;
  flex-direction: column !important;
}
body.woocommerce ul.products[class] li.product .product-header,
body.woocommerce-page ul.products[class] li.product .product-header { order: 1; }
body.woocommerce ul.products[class] li.product .woocommerce-loop-product__title,
body.woocommerce ul.products[class] li.product h2,
body.woocommerce ul.products[class] li.product h3 { order: 2; }
body.woocommerce ul.products[class] li.product .price,
body.woocommerce-page ul.products[class] li.product .price { order: 3; }
body.woocommerce ul.products[class] li.product .buttons,
body.woocommerce-page ul.products[class] li.product .buttons { order: 5 !important; margin-top: auto !important; padding-top: 14px !important; }

/* El tema oculta las acciones (opacity:0) para revelarlas en hover; las
   queremos SIEMPRE visibles en la fila compacta del pie. */
body.woocommerce ul.products[class] li.product .buttons > a.button,
body.woocommerce ul.products[class] li.product .buttons .add_to_cart_button,
body.woocommerce ul.products[class] li.product .buttons .wcboost-wishlist-button,
body.woocommerce ul.products[class] li.product .buttons .wcboost-products-compare-button,
body.woocommerce-page ul.products[class] li.product .buttons > a.button,
body.woocommerce-page ul.products[class] li.product .buttons .wcboost-wishlist-button,
body.woocommerce-page ul.products[class] li.product .buttons .wcboost-products-compare-button {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
}

/* ════ FIXES FINAL (2026-06-01) — acciones de card = overlay compacto ════
   .buttons vive DENTRO de .product-header (la imagen); no se puede reparentear.
   La dejamos como overlay absoluto: UNA fila compacta y centrada al pie de la
   imagen, revelada en hover (siempre visible en touch), con scrim legible.
   Este bloque gana sobre FIXES 3/4 (cascada: va último). */
body.woocommerce ul.products[class] li.product .product-header,
body.woocommerce-page ul.products[class] li.product .product-header { position: relative !important; }

body.woocommerce ul.products[class] li.product .buttons,
body.woocommerce-page ul.products[class] li.product .buttons {
  position: absolute !important;
  left: 0 !important; right: 0 !important; bottom: 0 !important; top: auto !important;
  order: 0 !important;
  display: flex !important; flex-wrap: nowrap !important;
  align-items: center; justify-content: center; gap: 8px;
  width: 100% !important; height: auto !important;
  margin: 0 !important;
  padding: 30px 14px 14px !important;
  background: linear-gradient(to top, rgba(6,8,18,.92), rgba(6,8,18,.55) 60%, transparent) !important;
  border-radius: 0 0 14px 14px;
  opacity: 0;
  transform: translateY(6px);
  transition: opacity .26s ease, transform .26s ease;
  pointer-events: none;
  z-index: 3;
}
body.woocommerce ul.products[class] li.product:hover .buttons,
body.woocommerce-page ul.products[class] li.product:hover .buttons {
  opacity: 1; transform: none; pointer-events: auto;
}
@media (hover: none) {
  body.woocommerce ul.products[class] li.product .buttons {
    opacity: 1 !important; transform: none !important; pointer-events: auto !important;
  }
}
/* Wishlist/Compare: glass blanco legible sobre el scrim oscuro */
body.woocommerce ul.products[class] li.product .buttons .wcboost-wishlist-button,
body.woocommerce ul.products[class] li.product .buttons .wcboost-products-compare-button {
  background: rgba(255,255,255,.10) !important;
  border: 1px solid rgba(255,255,255,.22) !important;
  color: #fff !important;
  width: 38px !important; height: 38px !important;
}

/* Mostrar el texto "Add to cart" del pill (venía como screen-reader-only) y
   que el pill abrace su contenido (ícono + texto), no un bloque aurora vacío. */
body.woocommerce ul.products[class] li.product .buttons a.button .screen-reader-text,
body.woocommerce-page ul.products[class] li.product .buttons a.button .screen-reader-text {
  position: static !important;
  clip: auto !important; clip-path: none !important;
  width: auto !important; height: auto !important;
  overflow: visible !important;
  margin: 0 !important;
  font-size: 12.5px !important; line-height: 1 !important;
  white-space: nowrap;
}
body.woocommerce ul.products[class] li.product .buttons > a.button,
body.woocommerce-page ul.products[class] li.product .buttons > a.button {
  flex: 0 1 auto !important;
  max-width: none !important;
  padding: 0 18px !important;
}

/* Acciones SIEMPRE visibles (consistencia entre productos simples y variables;
   el usuario las quiere a la vista). Mantiene el scrim y la fila compacta. */
body.woocommerce ul.products[class] li.product .buttons,
body.woocommerce-page ul.products[class] li.product .buttons {
  opacity: 1 !important;
  transform: none !important;
  pointer-events: auto !important;
  transition: none !important;
}

/* ═══════════════════════════════════════════════════════════════════
   v3 REFORMA (2026-07-06) — UX/UI premium alineada al website.
   Va al FINAL: gana en cascada a los bloques anteriores.
   ═══════════════════════════════════════════════════════════════════ */
@keyframes sotm-aurora2 { to { background-position: 0 0, 300% 0; } }

/* ── Fuera la barra plana "SOTM" + breadcrumb en shop/categorías ── */
body.woocommerce-shop .page-header,
body.tax-product_cat .page-header { display: none !important; }

/* ── Hero más contenido (textos tamaño normal, nada gigante) ── */
.sotm-hero { margin: 26px 0 34px; padding: clamp(32px, 4.6vw, 54px) clamp(20px, 4vw, 56px); }
.sotm-hero-eyebrow { font-size: 11px !important; letter-spacing: .38em; }
.sotm-hero-title { font-size: clamp(26px, 3.4vw, 42px) !important; }
.sotm-hero-sub { font-size: 15px !important; max-width: 520px; margin-top: 14px !important; }
.sotm-hero-rule { width: 90px; height: 2px; margin-top: 22px; }

/* ── SHOP BY CATEGORY — rail de categorías ── */
.sotm-cats-wrap { max-width: 1240px; margin: 0 auto 42px; position: relative; z-index: 2; }
.sotm-cats-eyebrow { display: block; text-align: center; font-family: var(--font-mono); font-size: 11px; letter-spacing: .34em; text-transform: uppercase; color: var(--sotm-ink-muted); margin: 0 0 16px; }
.sotm-cats { display: grid; grid-template-columns: repeat(auto-fit, minmax(126px, 164px)); justify-content: center; gap: 14px; margin: 0; padding: 0; }
.sotm-cat { display: flex; flex-direction: column; border-radius: 16px; overflow: hidden; background: var(--sotm-card); border: 1px solid var(--sotm-border); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); text-decoration: none; box-shadow: 0 14px 40px -30px rgba(0,0,0,.9); transition: transform .32s cubic-bezier(.16,1,.3,1), border-color .32s, box-shadow .32s; }
.sotm-cat:hover { transform: translateY(-4px); border-color: var(--sotm-border-hi); box-shadow: 0 20px 46px -22px rgba(0,0,0,.95), 0 0 26px -8px rgba(79,198,243,.42); }
.sotm-cat-media { aspect-ratio: 1 / 1; display: flex; align-items: center; justify-content: center; background: linear-gradient(160deg, #f6f8ff, #e9eefb); margin: 8px 8px 0; border-radius: 11px; overflow: hidden; }
.sotm-cat-media img { width: 100%; height: 100%; object-fit: contain; padding: 10px; }
.sotm-cat-media--all { background: radial-gradient(120% 120% at 28% 18%, rgba(76,176,228,.30), transparent 55%), radial-gradient(120% 120% at 76% 82%, rgba(226,83,252,.26), transparent 55%), #0b0e20; }
.sotm-cat-media--all img { width: 54%; height: auto; padding: 0; filter: drop-shadow(0 0 16px rgba(120,180,255,.55)); }
.sotm-cat-media--ph { background: radial-gradient(120% 120% at 30% 20%, rgba(76,176,228,.22), transparent 55%), radial-gradient(120% 120% at 75% 80%, rgba(226,83,252,.18), transparent 55%), #0b0e20; }
.sotm-cat-media--ph i { font-style: normal; font-family: var(--font-h); font-size: 34px; font-weight: 700; color: rgba(255,255,255,.85); }
.sotm-cat-body { padding: 11px 10px 13px; text-align: center; }
.sotm-cat-name { display: block; font-family: var(--font-h); font-size: 12.5px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: var(--sotm-ink); }
.sotm-cat-count { display: block; margin-top: 3px; font-size: 11px; color: var(--sotm-ink-muted); }
.sotm-cat.is-active { border-color: transparent; background-image: linear-gradient(rgba(13,16,38,.9), rgba(13,16,38,.9)), var(--sotm-aurora); background-origin: border-box; background-clip: padding-box, border-box; background-size: auto, 300% 100%; animation: sotm-aurora2 12s linear infinite; box-shadow: 0 0 26px -10px rgba(79,198,243,.55); }
.sotm-cat.is-active .sotm-cat-name { color: #fff; }

/* ── Toolbar (tabs All/Hot/New/Sale + contador) elegante ── */
.shop-toolbar { max-width: 1240px; margin: 0 auto 24px !important; border: 0 !important; }
.shop-toolbar__tabs li a { font-family: var(--font-h) !important; font-size: 11.5px !important; font-weight: 600 !important; letter-spacing: .18em !important; text-transform: uppercase !important; color: var(--sotm-ink-muted) !important; padding-bottom: 8px !important; }
.shop-toolbar__tabs li a:hover { color: var(--sotm-ink-high) !important; }
.shop-toolbar__tabs li.active a { color: #fff !important; background: var(--sotm-aurora) bottom / 100% 2px no-repeat; background-size: 300% 2px; }
.woocommerce-result-count { color: var(--sotm-ink-muted) !important; font-family: var(--font-mono) !important; font-size: 12px !important; }
.shop-toolbar .product-size { display: none !important; } /* switcher de densidad: fuera (ruido) */

/* ── PRECIOS: blanco elegante (fuera el cian chillón) ── */
body.woocommerce ul.products[class] li.product .price,
body.woocommerce ul.products[class] li.product .price ins,
body.woocommerce-page ul.products[class] li.product .price,
body.woocommerce-page ul.products[class] li.product .price ins {
  color: #f4f6ff !important; font-weight: 600 !important; font-size: 16.5px !important; letter-spacing: .01em; margin-bottom: 12px !important;
}
body.woocommerce ul.products[class] li.product .price del { color: var(--sotm-ink-muted) !important; font-size: 13px !important; }
.single-product div.product p.price, .single-product div.product span.price { color: #fff !important; font-size: 24px !important; font-weight: 600 !important; }
.single-product div.product p.price del { color: var(--sotm-ink-muted) !important; font-size: 16px !important; }

/* ── Cards: pulido fino (título tamaño normal, tile más limpio) ── */
body.woocommerce ul.products[class] li.product { border-radius: 16px; }
body.woocommerce ul.products[class] li.product img { padding: 12px; margin-bottom: 13px !important; }
body.woocommerce ul.products[class] li.product h2,
body.woocommerce ul.products[class] li.product h3,
body.woocommerce ul.products[class] li.product .woocommerce-loop-product__title,
body.woocommerce ul.products[class] li.product .woocommerce-loop-product__title a {
  font-size: 15px !important; font-weight: 600 !important; min-height: 0 !important; margin-bottom: 7px !important; letter-spacing: .01em !important;
}
body.woocommerce ul.products[class] li.product .onsale {
  background: rgba(13,16,38,.85) !important; color: #ffd15c !important; border: 1px solid rgba(255,209,92,.5);
  font-family: var(--font-h) !important; font-weight: 600 !important; letter-spacing: .1em; border-radius: 999px;
  -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); box-shadow: 0 6px 18px -8px rgba(0,0,0,.8);
}

/* ── BOTONES v3: glass premium + anillo aurora EN MOVIMIENTO (glow-btn del website).
      Fuera el relleno gradiente chillón; texto blanco legible. ── */
body.woocommerce a.button, body.woocommerce button.button, body.woocommerce input.button,
body.woocommerce #respond input#submit, body.woocommerce .button, body .button.alt,
.single_add_to_cart_button, .checkout-button, .wc-block-components-button {
  background-color: transparent !important;
  background-image: linear-gradient(rgba(10,13,28,.9), rgba(10,13,28,.9)), var(--sotm-aurora) !important;
  background-origin: border-box !important;
  background-clip: padding-box, border-box !important;
  background-size: auto, 300% 100% !important;
  animation: sotm-aurora2 14s linear infinite !important;
  border: 1px solid transparent !important;
  color: #fff !important;
  font-family: var(--font-h) !important; font-weight: 600 !important; font-size: 13.5px !important;
  letter-spacing: .05em; text-transform: uppercase;
  border-radius: 999px !important;
  box-shadow: 0 10px 28px -18px rgba(79,198,243,.6), inset 0 1px 0 rgba(255,255,255,.05);
  transition: transform .2s ease, box-shadow .25s ease, filter .2s ease;
}
body.woocommerce a.button:hover, body.woocommerce button.button:hover, body.woocommerce .button:hover,
.single_add_to_cart_button:hover, .checkout-button:hover {
  transform: translateY(-2px); filter: brightness(1.18); color: #fff !important;
  box-shadow: 0 16px 38px -16px rgba(79,198,243,.75), 0 0 22px -6px rgba(226,83,252,.45);
}
/* excepciones: wishlist/compare/volver = glass sobrio (re-asentadas tras el bloque general) */
body.woocommerce .button.wc-backward, body.woocommerce a.added_to_cart,
body.woocommerce a.button[class*="wcboost"], body.woocommerce .button[class*="wcboost"],
.wcboost-wishlist-button, .wcboost-products-compare-button {
  background-color: rgba(255,255,255,.06) !important; background-image: none !important;
  color: var(--sotm-ink) !important; border: 1px solid var(--sotm-border) !important;
  box-shadow: none !important; animation: none !important; text-transform: none;
}
body.woocommerce ul.products[class] li.product .buttons .wcboost-wishlist-button,
body.woocommerce ul.products[class] li.product .buttons .wcboost-products-compare-button {
  background-color: rgba(255,255,255,.10) !important; background-image: none !important;
  border: 1px solid rgba(255,255,255,.22) !important; color: #fff !important; animation: none !important;
}
body.woocommerce a.button[class*="wcboost"]:hover, .wcboost-wishlist-button:hover, .wcboost-products-compare-button:hover {
  border-color: var(--sotm-primary) !important; color: #fff !important; background-color: rgba(76,176,228,.14) !important;
}

/* ── Paginación: píldoras glass ── */
body.woocommerce nav.woocommerce-pagination { text-align: center; margin: 40px 0 16px; }
body.woocommerce nav.woocommerce-pagination ul { border: 0 !important; display: inline-flex; gap: 8px; }
body.woocommerce nav.woocommerce-pagination ul li { border: 0 !important; background: transparent !important; }
body.woocommerce nav.woocommerce-pagination ul li a,
body.woocommerce nav.woocommerce-pagination ul li span {
  display: flex; align-items: center; justify-content: center;
  min-width: 38px; height: 38px; padding: 0 6px; border-radius: 50%;
  background: rgba(255,255,255,.05); border: 1px solid var(--sotm-border);
  color: var(--sotm-ink) !important; font-family: var(--font-h); font-size: 13px !important;
}
body.woocommerce nav.woocommerce-pagination ul li a:hover { border-color: var(--sotm-primary); color: #fff !important; background: rgba(76,176,228,.12); }
body.woocommerce nav.woocommerce-pagination ul li span.current {
  background-image: linear-gradient(rgba(13,16,38,.9), rgba(13,16,38,.9)), var(--sotm-aurora);
  background-origin: border-box; background-clip: padding-box, border-box; background-size: auto, 300% 100%;
  animation: sotm-aurora2 12s linear infinite; border-color: transparent; color: #fff !important;
}

@media (max-width: 600px) {
  .sotm-cats { grid-template-columns: repeat(auto-fit, minmax(104px, 1fr)); gap: 10px; }
  .sotm-cat-name { font-size: 11px; }
  .sotm-hero { margin-top: 14px; }
}

/* ═══════════════════════════════════════════════════════════════════
   v3.1 RESPONSIVE + QUICK-VIEW PREMIUM (2026-07-06)
   Fixes del user: borde sutil en cards de categoría; fuera Compare;
   acciones de card compactas en mobile; loader del corazón centrado;
   quick-view rediseñado (backdrop, panel glass, cantidad, título) 100% responsive.
   ═══════════════════════════════════════════════════════════════════ */
@keyframes sotm-spin { to { transform: rotate(360deg); } }

/* ── Cards de categoría: borde gris oscuro SUTIL cuando no están activas
      (mantienen su forma; el aurora queda para hover/activa) ── */
.sotm-cat { border: 1px solid rgba(139, 150, 182, 0.30); }

/* ── COMPARE: fuera en toda la tienda (no aplica acá) ── */
.wcboost-products-compare-button,
a.wcboost-products-compare-button,
.wcboost-products-compare,
li.product .buttons .wcboost-products-compare-button { display: none !important; }

/* ── Loader del corazón (wishlist): spinner centrado en el círculo ── */
body.woocommerce .wcboost-wishlist-button { position: relative !important; overflow: hidden; }
body.woocommerce .wcboost-wishlist-button.loading svg,
body.woocommerce .wcboost-wishlist-button--loading svg,
body.woocommerce .wcboost-wishlist-button.loading .wcboost-wishlist-button__icon,
body.woocommerce .wcboost-wishlist-button.loading .wcboost-wishlist-button__text { visibility: hidden; }
body.woocommerce .wcboost-wishlist-button.loading::after,
body.woocommerce .wcboost-wishlist-button--loading::after {
  content: ''; position: absolute; top: 50%; left: 50%; width: 16px; height: 16px; margin: -8px 0 0 -8px;
  border: 2px solid rgba(255,255,255,.3); border-top-color: #fff; border-radius: 50%;
  animation: sotm-spin .7s linear infinite;
}

/* ── Acciones de card en MOBILE: solo íconos (círculos), sin texto ── */
@media (max-width: 640px) {
  body.woocommerce ul.products[class] li.product .buttons a.button .screen-reader-text,
  body.woocommerce-page ul.products[class] li.product .buttons a.button .screen-reader-text {
    position: absolute !important; clip: rect(0,0,0,0) !important; clip-path: inset(50%) !important;
    width: 1px !important; height: 1px !important; overflow: hidden !important; margin: 0 !important;
  }
  body.woocommerce ul.products[class] li.product .buttons > a.button,
  body.woocommerce-page ul.products[class] li.product .buttons > a.button {
    flex: 0 0 auto !important; width: 42px !important; height: 42px !important;
    padding: 0 !important; border-radius: 50% !important; gap: 0 !important;
  }
}

/* ══════════ QUICK-VIEW PREMIUM ══════════ */
/* Backdrop: oscuro + blur → el popup SE DESPEGA del fondo */
#quick-view-modal .sober-modal-backdrop,
#quick-view-modal .modal-content .sober-modal-backdrop {
  background: rgba(3, 5, 14, 0.82) !important;
  -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
}
#quick-view-modal.loading { background: rgba(3, 5, 14, 0.65) !important; }

/* Panel: glass oscuro con borde y glow — ya no negro de borde a borde */
#quick-view-modal .modal-content .product {
  position: relative;
  height: auto !important; max-height: 86vh !important;
  max-width: 940px; margin: 0 auto;
  border-radius: 20px !important; overflow: hidden !important;
  background: linear-gradient(150deg, rgba(22, 26, 54, 0.94) 0%, rgba(9, 11, 24, 0.97) 62%) !important;
  border: 1px solid rgba(140, 160, 255, 0.24) !important;
  box-shadow: 0 60px 140px -40px rgba(0, 0, 0, 0.95), 0 0 70px -22px rgba(79, 198, 243, 0.28) !important;
  -webkit-backdrop-filter: blur(18px); backdrop-filter: blur(18px);
}

/* Cerrar: círculo glass con X blanca */
#quick-view-modal .modal-content .product .close-modal {
  width: 40px; height: 40px; border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.18);
  transition: background .2s, border-color .2s;
}
#quick-view-modal .modal-content .product .close-modal svg { fill: #fff !important; width: 14px; height: 14px; }
#quick-view-modal .modal-content .product .close-modal:hover { background: rgba(255,255,255,.16); border-color: rgba(255,255,255,.35); }

/* Layout: galería + summary en flex (nada de floats) */
#quick-view-modal .product-quickview { display: flex !important; align-items: stretch; }
#quick-view-modal .product-quickview::before, #quick-view-modal .product-quickview::after { content: none !important; }
#quick-view-modal .woocommerce-product-gallery {
  flex: 0 0 44%; max-width: 44%; width: 44% !important; float: none !important;
  margin: 22px 0 22px 22px !important; border-radius: 14px; overflow: hidden;
  background: linear-gradient(160deg, #f6f8ff, #e9eefb);
  display: flex; align-items: center; justify-content: center;
}
#quick-view-modal .woocommerce-product-gallery__wrapper { width: 100%; }
#quick-view-modal .woocommerce-product-gallery img { width: 100% !important; height: auto !important; object-fit: contain !important; }
#quick-view-modal .summary.entry-summary {
  flex: 1 1 auto; width: auto !important; float: none !important;
  margin: 0 !important; padding: 40px 38px 34px !important;
}
#quick-view-modal .ss-content { padding-right: 10px; }

/* Título + textos legibles y elegantes */
#quick-view-modal .summary .product_title,
#quick-view-modal .summary h1, #quick-view-modal .summary h2,
#quick-view-modal .summary .entry-title {
  color: #fff !important; font-family: var(--font-h) !important;
  font-size: 22px !important; font-weight: 600 !important; line-height: 1.25 !important;
  margin: 0 0 10px !important; letter-spacing: .01em;
}
#quick-view-modal .summary .woocommerce-product-details__short-description,
#quick-view-modal .summary .woocommerce-product-details__short-description p {
  color: #b8c0d9 !important; font-size: 14px !important; line-height: 1.7 !important;
}
#quick-view-modal .summary .price { color: #fff !important; font-family: var(--font-h) !important; font-size: 24px !important; font-weight: 600 !important; }
#quick-view-modal .summary .price del { color: var(--sotm-ink-muted) !important; font-size: 16px !important; }
#quick-view-modal .summary .stock.in-stock { color: #58e58d !important; font-size: 13px !important; }
#quick-view-modal .summary .product_meta, #quick-view-modal .summary .product_meta a { color: var(--sotm-ink-muted) !important; font-size: 12px !important; letter-spacing: .06em; }
#quick-view-modal .summary .product_meta a:hover { color: #fff !important; }

/* Cantidad: fuera el borde blanco espantoso → glass sutil redondeado */
body.woocommerce .quantity, #quick-view-modal .quantity {
  border: 1px solid rgba(140, 160, 255, 0.28) !important;
  background: rgba(255, 255, 255, 0.05) !important;
  border-radius: 12px !important; overflow: hidden;
}
body.woocommerce .quantity .qty, #quick-view-modal .quantity .qty {
  background: transparent !important; border: 0 !important; color: #fff !important;
  font-family: var(--font-h) !important; font-size: 14px !important;
}
body.woocommerce .quantity button, body.woocommerce .quantity .increase, body.woocommerce .quantity .decrease,
body.woocommerce .quantity [class*="plus"], body.woocommerce .quantity [class*="minus"],
#quick-view-modal .quantity button, #quick-view-modal .quantity .increase, #quick-view-modal .quantity .decrease {
  background: transparent !important; border: 0 !important; color: #cdd4ea !important;
}
body.woocommerce .quantity button:hover, #quick-view-modal .quantity button:hover { color: #fff !important; }

/* Form add-to-cart: fila prolija; el botón NUNCA rompe el texto en vertical */
#quick-view-modal form.cart { display: flex !important; flex-wrap: wrap; align-items: center; gap: 12px; }
#quick-view-modal form.cart .single_add_to_cart_button {
  flex: 1 1 auto; min-width: 190px; height: 48px !important;
  padding: 0 26px !important; line-height: 1 !important;
  display: inline-flex !important; align-items: center !important; justify-content: center !important;
  white-space: nowrap !important; gap: 8px;
}
.single_add_to_cart_button, .checkout-button { white-space: nowrap !important; }
#quick-view-modal form.cart .wcboost-wishlist-button { width: 48px !important; height: 48px !important; border-radius: 50% !important; padding: 0 !important; flex: 0 0 auto; display: inline-flex !important; align-items: center; justify-content: center; }

/* ── Responsive del quick-view: apilado, legible, sin apretujar ── */
@media (max-width: 900px) {
  #quick-view-modal .modal-content { top: 0 !important; transform: none !important; padding: 12px !important; height: 100%; overflow-y: auto; }
  #quick-view-modal .modal-content .product { max-height: none !important; margin: 3vh auto; width: calc(100vw - 24px); }
  #quick-view-modal .product-quickview { flex-direction: column !important; }
  #quick-view-modal .woocommerce-product-gallery {
    flex: 0 0 auto; max-width: none; width: auto !important;
    margin: 14px 14px 0 !important; max-height: 38vh;
  }
  #quick-view-modal .woocommerce-product-gallery img { max-height: 38vh !important; width: auto !important; max-width: 100%; margin: 0 auto; }
  #quick-view-modal .summary.entry-summary { padding: 22px 20px 26px !important; }
  #quick-view-modal .summary .product_title { font-size: 18px !important; }
  #quick-view-modal .summary .price { font-size: 21px !important; }
  #quick-view-modal .ss-container, #quick-view-modal .ss-wrapper, #quick-view-modal .ss-content {
    height: auto !important; max-height: none !important; overflow: visible !important; position: static !important;
  }
}

/* v3.1b — especificidad ganadora sobre FIXES 3 (display:inline-flex !important) */
body.woocommerce ul.products[class] li.product .buttons .wcboost-products-compare-button,
body.woocommerce-page ul.products[class] li.product .buttons .wcboost-products-compare-button,
body.woocommerce div.product .wcboost-products-compare-button,
#quick-view-modal .wcboost-products-compare-button { display: none !important; }

@media (max-width: 640px) {
  body.woocommerce ul.products[class] li.product .buttons > a.button,
  body.woocommerce-page ul.products[class] li.product .buttons > a.button {
    min-width: 0 !important; max-width: 42px !important;
  }
}

/* v3.1c — galería/summary del quick-view: ganar a las reglas del tema
   (.product-summary .images/.summary { width:50%; float:left; height:700px }) */
#quick-view-modal .modal-content .product .product-summary .images {
  float: none !important; width: 44% !important; flex: 0 0 44% !important; max-width: 44% !important;
  margin: 22px 0 22px 22px !important; height: auto !important; align-self: stretch;
  border-radius: 14px !important; overflow: hidden !important;
  background: linear-gradient(160deg, #f6f8ff, #e9eefb) !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
}
#quick-view-modal .modal-content .product .product-summary .images img { width: 100% !important; height: auto !important; object-fit: contain !important; }
#quick-view-modal .modal-content .product .product-summary .summary {
  float: none !important; width: auto !important; flex: 1 1 auto !important;
  height: auto !important; max-height: 80vh !important; overflow-y: auto !important;
  padding: 38px 36px 30px !important; margin: 0 !important;
}
/* título: el <a> interno pisa el color del h1 → blanco */
#quick-view-modal .summary .product_title a, #quick-view-modal .summary .entry-title a { color: #fff !important; }
/* cantidad compacta → cantidad + botón + corazón entran en UNA fila */
#quick-view-modal form.cart .quantity { flex: 0 0 auto !important; width: 112px !important; }
/* fuera la maquinaria de scrollbar custom (ss-*): scroll natural del summary */
#quick-view-modal .ss-wrapper, #quick-view-modal .ss-content {
  position: static !important; width: 100% !important; height: auto !important;
  max-height: none !important; overflow: visible !important; padding-right: 0 !important;
}
#quick-view-modal .ss-scroll { display: none !important; }

@media (max-width: 900px) {
  #quick-view-modal .modal-content .product .product-summary .images {
    width: auto !important; flex: 0 0 auto !important; max-width: none !important;
    margin: 14px 14px 0 !important; max-height: 38vh !important;
  }
  #quick-view-modal .modal-content .product .product-summary .images img { max-height: 36vh !important; width: auto !important; max-width: 100% !important; margin: 0 auto; }
  #quick-view-modal .modal-content .product .product-summary .summary { padding: 22px 20px 26px !important; max-height: none !important; overflow: visible !important; }
}

/* v3.1d — corazón (wishlist) del DETALLE: círculo perfecto alineado con la fila
   (el tema lo dejaba óvalo 78×60 con line-height:58px → ícono hundido y descolgado) */
body.woocommerce div.product form.cart .wcboost-wishlist-button,
body.woocommerce-page div.product form.cart .wcboost-wishlist-button {
  width: 52px !important; height: 52px !important;
  min-width: 0 !important; min-height: 0 !important;
  padding: 0 !important; margin: 0 0 0 4px !important;
  line-height: 1 !important; border-radius: 50% !important;
  display: inline-flex !important; align-items: center !important; justify-content: center !important;
  vertical-align: middle !important; flex: 0 0 auto;
}
body.woocommerce div.product form.cart .wcboost-wishlist-button .wcboost-wishlist-button__icon {
  display: flex !important; align-items: center; justify-content: center; line-height: 1 !important;
}
body.woocommerce div.product form.cart .wcboost-wishlist-button svg { width: 18px; height: 18px; display: block; }

/* La fila cantidad + botón + corazón: misma altura (52px) y centrado vertical */
body.woocommerce div.product form.cart .quantity,
body.woocommerce-page div.product form.cart .quantity {
  height: 52px !important; display: inline-flex !important; align-items: center !important;
  vertical-align: middle !important;
}
body.woocommerce div.product form.cart .quantity .qty { height: 100% !important; }
body.woocommerce div.product form.cart .single_add_to_cart_button { vertical-align: middle !important; }

/* v3.1e — corazón del detalle: SIEMPRE ícono (en mobile el plugin muestra texto
   "Add to wishlist" que desborda el círculo) */
body.woocommerce div.product form.cart .wcboost-wishlist-button .wcboost-wishlist-button__text,
body.woocommerce-page div.product form.cart .wcboost-wishlist-button .wcboost-wishlist-button__text { display: none !important; }
body.woocommerce div.product form.cart .wcboost-wishlist-button .wcboost-wishlist-button__icon,
body.woocommerce-page div.product form.cart .wcboost-wishlist-button .wcboost-wishlist-button__icon { display: flex !important; visibility: visible !important; }
