/* ==========================================================================
   XNOVA LED — WooCommerce (tema)
   El grid del loop usa la card propia (content-product.php → xnova_product_card),
   así que el <li.product> es solo una celda. Aquí van producto/carrito/checkout.
   ========================================================================== */

/* -------- Grid del loop -------- */
body.xnova-led-active ul.products {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 16px;
	margin: 0;
	padding: 0;
	list-style: none;
}
body.xnova-led-active ul.products li.product {
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
	background: none !important;
	border: none !important;
	list-style: none;
}
@media (max-width: 1024px) { body.xnova-led-active ul.products { grid-template-columns: repeat(2, 1fr); } }

/* -------- Result count / ordering -------- */
body.xnova-led-active .woocommerce-result-count { color: #7E8B90; font-size: 13px; margin-bottom: 14px; }
body.xnova-led-active .woocommerce-ordering select,
body.xnova-led-active select.orderby {
	background: rgba(6,9,12,.85); color: #EDEFF1; border: 1px solid rgba(255,255,255,.16);
	border-radius: 6px; padding: 10px 14px; font-family: 'Montserrat'; font-size: 13px;
}

/* -------- Botones -------- */
body.xnova-led-active .woocommerce a.button,
body.xnova-led-active .woocommerce button.button,
body.xnova-led-active .woocommerce input.button,
body.xnova-led-active .woocommerce #respond input#submit,
body.xnova-led-active .woocommerce a.button.alt,
body.xnova-led-active .woocommerce button.button.alt {
	background: var(--accent, #FEC80F); color: #050608;
	font-family: 'Catamaran'; font-weight: 800; text-transform: uppercase; letter-spacing: .02em;
	border-radius: 8px; border: none; padding: 14px 24px;
	transition: transform .18s cubic-bezier(.2,.7,.2,1), box-shadow .18s;
}
body.xnova-led-active .woocommerce a.button:hover,
body.xnova-led-active .woocommerce button.button:hover,
body.xnova-led-active .woocommerce button.button.alt:hover {
	transform: translateY(-2px); box-shadow: 0 12px 30px rgba(254,200,15,.35); color: #050608;
}

/* -------- Single product -------- */
body.xnova-led-active .single-product div.product .product_title {
	font-family: 'Catamaran'; font-weight: 900; text-transform: uppercase; color: #fff;
}
body.xnova-led-active .single-product div.product p.price,
body.xnova-led-active .single-product div.product span.price {
	color: var(--accent, #FEC80F); font-family: 'Catamaran'; font-weight: 900; font-size: 34px;
}
body.xnova-led-active .single-product div.product p.price del { color: #6E767F; font-size: 18px; font-weight: 500; }
body.xnova-led-active .single-product .woocommerce-product-gallery {
	background: radial-gradient(circle at 50% 42%, rgba(254,200,15,.14), transparent 56%), linear-gradient(160deg,#101922,#06090D);
	border: 1px solid rgba(255,255,255,.09); border-radius: 14px; padding: 14px;
}
body.xnova-led-active .single-product .woocommerce-product-gallery__image img { border-radius: 10px; }
body.xnova-led-active .single-product .quantity input.qty {
	background: #06090C; color: #fff; border: 1px solid rgba(255,255,255,.14); border-radius: 8px; padding: 12px; width: 72px;
}
body.xnova-led-active .single-product .woocommerce-product-details__short-description { color: #C7C6C6; font-size: 15.5px; line-height: 1.65; }
body.xnova-led-active .product_meta { color: #8A929B; font-size: 13px; }
body.xnova-led-active .product_meta a { color: var(--accent, #FEC80F); }

/* Tabs */
body.xnova-led-active .woocommerce-tabs ul.tabs { border-bottom: 1px solid rgba(255,255,255,.1); padding: 0; margin: 0 0 24px; }
body.xnova-led-active .woocommerce-tabs ul.tabs::before { border-color: rgba(255,255,255,.1); }
body.xnova-led-active .woocommerce-tabs ul.tabs li {
	background: transparent; border: none; border-radius: 0; margin: 0 4px -1px 0;
}
body.xnova-led-active .woocommerce-tabs ul.tabs li a {
	color: #9AA0A4; font-family: 'Catamaran'; font-weight: 700; font-size: 15px;
	padding: 14px 20px; border-bottom: 2px solid transparent;
}
body.xnova-led-active .woocommerce-tabs ul.tabs li.active a { color: var(--accent, #FEC80F); border-bottom-color: var(--accent, #FEC80F); }
body.xnova-led-active .woocommerce-tabs ul.tabs li::after,
body.xnova-led-active .woocommerce-tabs ul.tabs li::before { display: none; }
body.xnova-led-active .woocommerce-Tabs-panel { color: #C7C6C6; font-size: 15px; line-height: 1.7; }
body.xnova-led-active .woocommerce-Tabs-panel h2 { color: #fff; font-family: 'Catamaran'; }
body.xnova-led-active table.shop_attributes th { color: #fff; }
body.xnova-led-active table.shop_attributes td { color: #C7C6C6; }

/* Related / upsells titles */
body.xnova-led-active .related > h2,
body.xnova-led-active .upsells > h2 { font-family: 'Catamaran'; font-weight: 800; text-transform: uppercase; color: #fff; }

/* onsale flash */
body.xnova-led-active .onsale {
	background: var(--accent, #FEC80F); color: #050608; font-family: 'Catamaran'; font-weight: 800;
	font-size: 11px; text-transform: uppercase; border-radius: 5px; padding: 6px 11px; min-height: 0; min-width: 0;
}

/* -------- Tablas: carrito / checkout -------- */
body.xnova-led-active .woocommerce table.shop_table {
	background: #0B1116; border: 1px solid rgba(255,255,255,.1); border-radius: 12px; color: #EDEFF1; border-collapse: separate;
}
body.xnova-led-active .woocommerce table.shop_table th { color: #fff; }
body.xnova-led-active .woocommerce table.shop_table td,
body.xnova-led-active .woocommerce table.shop_table th { border-top-color: rgba(255,255,255,.06); }
body.xnova-led-active .woocommerce-cart table.cart img { border-radius: 8px; }
body.xnova-led-active .woocommerce .cart-collaterals .cart_totals,
body.xnova-led-active .woocommerce-checkout #order_review,
body.xnova-led-active .woocommerce form.checkout_coupon,
body.xnova-led-active .woocommerce .woocommerce-checkout-review-order {
	background: #0B1116; border: 1px solid rgba(255,255,255,.1); border-radius: 12px; padding: 10px 20px;
}

/* Campos */
body.xnova-led-active .woocommerce form .form-row input.input-text,
body.xnova-led-active .woocommerce form .form-row textarea,
body.xnova-led-active .woocommerce-input-wrapper input,
body.xnova-led-active .woocommerce #order_comments,
body.xnova-led-active .select2-container--default .select2-selection--single {
	background: #06090C !important; color: #EDEFF1 !important; border: 1px solid rgba(255,255,255,.13) !important;
	border-radius: 8px; padding: 12px 14px; min-height: 46px;
}
body.xnova-led-active .select2-container--default .select2-selection--single .select2-selection__rendered { color: #EDEFF1; line-height: 22px; }
body.xnova-led-active .woocommerce form .form-row label { color: #9AA0A4; }
body.xnova-led-active .select2-dropdown { background: #0B1116; border: 1px solid rgba(255,255,255,.14); color: #EDEFF1; }
body.xnova-led-active .select2-container--default .select2-results__option--highlighted[aria-selected] { background: var(--accent, #FEC80F); color: #050608; }

/* Cupón / totales */
body.xnova-led-active .cart_totals h2,
body.xnova-led-active #order_review_heading { font-family: 'Catamaran'; color: #fff; text-transform: uppercase; }
body.xnova-led-active .order-total .amount { color: var(--accent, #FEC80F); font-family: 'Catamaran'; font-weight: 900; }

/* Notices */
body.xnova-led-active .woocommerce-message,
body.xnova-led-active .woocommerce-info,
body.xnova-led-active .woocommerce-error {
	background: #0B1116; border-top: 3px solid var(--accent, #FEC80F); color: #EDEFF1; border-radius: 8px; list-style: none;
}
body.xnova-led-active .woocommerce-message::before,
body.xnova-led-active .woocommerce-info::before { color: var(--accent, #FEC80F); }

/* -------- Mini-carrito (drawer) -------- */
.xn-cart-drawer {
	position: fixed; top: 0; right: 0; z-index: 9991;
	width: 420px; max-width: 92vw; height: 100vh;
	background: #080C10; border-left: 1px solid rgba(255,255,255,.1);
	display: flex; flex-direction: column;
	transform: translateX(100%);
	transition: transform .3s cubic-bezier(.2,.7,.2,1);
	box-shadow: -30px 0 70px rgba(0,0,0,.5);
}
body.xn-cart-open .xn-cart-drawer { transform: translateX(0); }
.xn-cart-overlay {
	position: fixed; inset: 0; z-index: 9990;
	background: rgba(3,4,6,.7); backdrop-filter: blur(3px);
	opacity: 0; visibility: hidden; transition: opacity .25s;
}
body.xn-cart-open .xn-cart-overlay { opacity: 1; visibility: visible; }

/* Contenido del mini-cart de WooCommerce dentro del drawer */
.xn-cart-body ul.woocommerce-mini-cart { list-style: none; margin: 0; padding: 0; }
.xn-cart-body ul.cart_list li, .xn-cart-body ul.woocommerce-mini-cart li {
	display: flex; align-items: flex-start; gap: 12px; padding: 14px 0;
	border-bottom: 1px solid rgba(255,255,255,.06); position: relative; color: #EDEFF1;
}
.xn-cart-body ul.cart_list li img, .xn-cart-body ul.woocommerce-mini-cart li img {
	width: 60px; height: 60px; object-fit: cover; border-radius: 8px; float: none; margin: 0; border: 1px solid rgba(255,255,255,.08);
}
.xn-cart-body ul.cart_list li a { color: #fff; font-family: 'Catamaran'; font-weight: 700; font-size: 14px; text-decoration: none; }
.xn-cart-body ul.cart_list li a.remove {
	position: absolute; top: 12px; right: 0; width: 20px; height: 20px; color: #6E767F !important;
	font-size: 16px; line-height: 18px; text-align: center; border-radius: 50%;
}
.xn-cart-body ul.cart_list li a.remove:hover { color: #FF6B6B !important; background: none; }
.xn-cart-body .quantity, .xn-cart-body ul.cart_list li .quantity { color: #9AA0A4; font-size: 13px; }
.xn-cart-body .woocommerce-mini-cart__total {
	display: flex; align-items: center; justify-content: space-between;
	padding: 16px 0; border-top: 1px solid rgba(255,255,255,.1); border-bottom: none; margin-top: 6px;
	font-family: 'Catamaran'; font-weight: 700; font-size: 16px; color: #fff;
}
.xn-cart-body .woocommerce-mini-cart__total .amount { color: var(--accent, #FEC80F); font-weight: 900; font-size: 20px; }
.xn-cart-body .woocommerce-mini-cart__buttons { display: flex; flex-direction: column; gap: 10px; margin: 6px 0 0; padding: 0; }
.xn-cart-body .woocommerce-mini-cart__buttons a {
	display: block; text-align: center; border-radius: 8px; padding: 14px; font-family: 'Catamaran'; font-weight: 800;
	text-transform: uppercase; font-size: 14px; text-decoration: none;
}
.xn-cart-body .woocommerce-mini-cart__buttons a.button:not(.checkout) { background: #12181d; color: #fff; border: 1px solid rgba(255,255,255,.14); }
.xn-cart-body .woocommerce-mini-cart__buttons a.checkout { background: var(--accent, #FEC80F); color: #050608; }
.xn-cart-body p.woocommerce-mini-cart__empty-message { color: #9AA0A4; text-align: center; padding: 30px 0; }

/* Payment box (checkout) */
body.xnova-led-active #payment,
body.xnova-led-active .woocommerce-checkout #payment { background: transparent; }
body.xnova-led-active #payment ul.payment_methods {
	background: #0B1116; border: 1px solid rgba(255,255,255,.1); border-radius: 12px;
}
body.xnova-led-active #payment div.payment_box { background: #06090C; color: #C7C6C6; }
body.xnova-led-active #payment div.payment_box::before { border-bottom-color: #06090C; }
