/* =========================================================
   360 Bootstrap — integrazione visiva delle pagine WooCommerce
   (negozio, prodotto, carrello, checkout, account)
   ========================================================= */

/* Bottoni: allinea i bottoni WooCommerce allo stile Bootstrap del tema */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.wc-block-components-button:not(.is-link) {
	font-family: inherit;
	font-weight: 600;
	border-radius: var(--bs-border-radius, 0.375rem) !important;
	background-color: var(--bs-primary, #0d6efd) !important;
	border-color: var(--bs-primary, #0d6efd) !important;
	color: #fff !important;
	padding: 0.6rem 1.4rem !important;
	transition: transform var(--tsb-duration-base, 0.2s) var(--tsb-ease, ease), box-shadow var(--tsb-duration-base, 0.2s) var(--tsb-ease, ease);
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.wc-block-components-button:not(.is-link):hover {
	filter: brightness(0.92);
	transform: translateY(-2px);
}

.woocommerce a.added_to_cart {
	font-weight: 600;
	color: var(--bs-primary, #0d6efd) !important;
}

/* Griglia prodotti (Shop) */
.woocommerce ul.products {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.5rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

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

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

.woocommerce ul.products li.product {
	background: #fff;
	border: 1px solid #e9ecef;
	border-radius: var(--tsb-radius-card, 1.25rem);
	padding: 1.25rem;
	text-align: center;
	transition: transform var(--tsb-duration-base, 0.2s) var(--tsb-ease, ease), box-shadow var(--tsb-duration-base, 0.2s) var(--tsb-ease, ease);
}

.woocommerce ul.products li.product:hover {
	transform: translateY(-6px);
	box-shadow: var(--tsb-shadow-lg, 0 1.5rem 3.5rem rgba(20, 22, 26, 0.16));
}

.woocommerce ul.products li.product img {
	border-radius: var(--tsb-radius-card, 1.25rem);
	margin-bottom: 1rem;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-weight: 700;
	font-size: 1.05rem;
}

.woocommerce ul.products li.product .price {
	color: var(--bs-primary, #0d6efd);
	font-weight: 700;
}

/* Prodotto singolo */
.woocommerce div.product .woocommerce-tabs ul.tabs {
	border-bottom: 1px solid #e9ecef;
}

.woocommerce div.product p.price,
.woocommerce div.product span.price {
	color: var(--bs-primary, #0d6efd);
	font-weight: 700;
	font-size: 1.4rem;
}

/* Tabella carrello (versione shortcode/legacy) */
.woocommerce table.shop_table {
	border-radius: var(--tsb-radius-card, 1.25rem);
	overflow: hidden;
	border: 1px solid #e9ecef;
}

.woocommerce table.shop_table th {
	background: #f8f9fa;
}

/* Link "Torna al carrello" sopra il blocco Checkout (che non permette di
   rimuovere gli articoli dal riepilogo ordine) */
.tsb-checkout-back-to-cart {
	margin-bottom: 1.25rem;
}

.tsb-checkout-back-to-cart a {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	color: var(--bs-primary, #0d6efd);
	font-weight: 600;
	text-decoration: none;
}

.tsb-checkout-back-to-cart a:hover {
	text-decoration: underline;
}

.tsb-checkout-back-to-cart i {
	font-size: 1.2rem;
}

/* Pulsante "Rimuovi" aggiunto via JS a ogni articolo del riepilogo ordine
   del checkout (vedi assets/js/checkout-remove-item.js) */
.wc-block-components-order-summary-item {
	position: relative;
}

.tsb-checkout-remove-item {
	display: inline-block;
	margin-top: 0.35rem;
	background: none;
	border: none;
	padding: 0;
	font-size: 0.8rem;
	font-weight: 600;
	color: #dc3545;
	cursor: pointer;
}

.tsb-checkout-remove-item:hover {
	text-decoration: underline;
}

.tsb-checkout-remove-item:disabled {
	opacity: 0.6;
	cursor: default;
}

/* Blocchi nativi Carrello/Checkout: li ammorbidiamo per farli sembrare parte del tema */
.wp-block-woocommerce-cart,
.wp-block-woocommerce-checkout {
	--wc-blue: var(--bs-primary, #0d6efd);
}

.wc-block-components-panel,
.wc-block-cart-items,
.wc-block-components-order-summary,
.wc-block-checkout__form,
.wp-block-woocommerce-checkout-order-summary-block {
	font-family: inherit;
}

.wc-block-components-totals-item,
.wc-block-cart-item {
	border-color: #e9ecef !important;
}

.wc-block-components-radio-control__option,
.wc-block-components-text-input input,
.wc-block-components-combobox-control input {
	border-radius: var(--bs-border-radius, 0.375rem) !important;
}

/* Il mio account */
.woocommerce-account .woocommerce-MyAccount-navigation ul {
	list-style: none;
	padding: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation li {
	margin-bottom: 0.4rem;
}

.woocommerce-account .woocommerce-MyAccount-navigation li a {
	display: block;
	padding: 0.6rem 1rem;
	border-radius: var(--bs-border-radius, 0.375rem);
	color: #212529;
	text-decoration: none;
}

.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover {
	background: var(--tsb-gradient-soft, rgba(13, 110, 253, 0.12));
	color: var(--bs-primary, #0d6efd);
	font-weight: 600;
}
