/* ==========================================================================
   WooCommerce — vistas nativas (Mi cuenta, pedido recibido, avisos, respaldo)
   Carrito, checkout, tienda y ficha usan los widgets S&C con su propio CSS.
   ========================================================================== */

.sc-woo-main { padding-block: clamp(32px, 5vw, 72px); }

/* Avisos */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.wc-block-components-notice-banner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	flex-wrap: wrap;
	margin: 0 0 24px;
	padding: 14px 20px;
	border: 0;
	border-radius: 12px;
	background: var(--sc-color-lighter);
	font-size: 13px;
	list-style: none;
}
.woocommerce-error { background: #fdecec; color: #8a1f1f; }
.woocommerce-message .button,
.woocommerce-info .button { order: 2; }

/* Botones genéricos de WooCommerce */
.woocommerce .button,
.woocommerce button.button,
.woocommerce a.button,
.woocommerce-page .button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	padding: 8px 24px;
	border: 1px solid var(--sc-color-primary);
	border-radius: 999px;
	background: var(--sc-color-primary);
	color: var(--sc-color-text);
	font-size: 11px;
	letter-spacing: .03em;
	text-transform: uppercase;
	cursor: pointer;
	transition: background-color .2s ease;
}
.woocommerce .button:hover { background: var(--sc-color-primary-dark); color: #fff; }

/* Formularios */
.woocommerce form .form-row { margin: 0 0 16px; }
.woocommerce form .form-row label { display: block; margin-bottom: 6px; font-size: 12px; }
.woocommerce form .form-row .required { color: var(--sc-color-primary-dark); text-decoration: none; }
.woocommerce-form-login,
.woocommerce-form-register,
.woocommerce-ResetPassword { max-width: 460px; }
.woocommerce-form__label-for-checkbox { display: inline-flex !important; align-items: center; gap: 8px; }

/* Mi cuenta */
.woocommerce-account .woocommerce {
	display: grid;
	grid-template-columns: 240px minmax(0, 1fr);
	gap: clamp(24px, 4vw, 60px);
}
.woocommerce-account .woocommerce > .woocommerce-notices-wrapper { grid-column: 1 / -1; }
.woocommerce-MyAccount-navigation ul { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--sc-color-border); }
.woocommerce-MyAccount-navigation li { border-bottom: 1px solid var(--sc-color-border); }
.woocommerce-MyAccount-navigation a { display: block; padding: 14px 0; font-size: 12px; text-transform: uppercase; letter-spacing: .03em; }
.woocommerce-MyAccount-navigation .is-active a { color: var(--sc-color-primary-dark); }
.woocommerce-account:not(.logged-in) .woocommerce { display: block; }
.woocommerce .col2-set { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 32px; }

/* Tablas (pedidos, pedido recibido) */
.woocommerce table.shop_table,
.woocommerce-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 13px;
}
.woocommerce table.shop_table th,
.woocommerce table.shop_table td { padding: 12px 10px; border-bottom: 1px solid var(--sc-color-border); text-align: left; }
.woocommerce-order-overview {
	display: flex;
	flex-wrap: wrap;
	gap: 16px 40px;
	margin: 0 0 32px;
	padding: 20px 24px;
	border-radius: 14px;
	background: var(--sc-color-lighter);
	list-style: none;
	font-size: 12px;
	text-transform: uppercase;
}
.woocommerce-order-overview strong { display: block; margin-top: 4px; font-size: 14px; text-transform: none; }
.woocommerce-thankyou-order-received { font-family: var(--sc-font-serif); font-style: italic; font-size: clamp(22px, 2.4vw, 32px); }

/* Ficha de producto de respaldo (sin Layout de Elementor) */
.sc-woo-main div.product { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 48px; }
.sc-woo-main .woocommerce-product-gallery img { border-radius: 8px; }
.sc-woo-main .product_title { font-family: var(--sc-font-serif); font-style: italic; font-size: clamp(32px, 3.4vw, 52px); }

@media (max-width: 767px) {
	.woocommerce-account .woocommerce { grid-template-columns: 1fr; }
	.woocommerce table.shop_table_responsive thead { display: none; }
	.woocommerce table.shop_table_responsive tr td { display: flex; justify-content: space-between; }
	.woocommerce table.shop_table_responsive tr td::before { content: attr(data-title); font-weight: 500; }
}
