/* ============================================================
   ITAL TOOLS — WooCommerce: carrello, account, checkout
   Stile leggero e coerente (palette oro/nero). Scope: .itt-page--woo
   Usa i token :root di native-chrome.css (--ittc-*)
   ============================================================ */

.itt-page--woo { --green: #2a9d5c; --muted: #888; }
.itt-page--woo .itt-page-body { padding-top: 32px; padding-bottom: 64px; }

/* Bottoni */
.itt-page--woo .button,
.itt-page--woo button.button,
.itt-page--woo a.button,
.itt-page--woo input.button,
.itt-page--woo .woocommerce-button {
	background: var(--ittc-ink); color: #fff; border: none; border-radius: 6px;
	padding: 12px 22px; font-weight: 600; font-size: 14px; line-height: 1.2; cursor: pointer;
	transition: background .2s, filter .2s; text-decoration: none; display: inline-block;
}
.itt-page--woo .button:hover,
.itt-page--woo button.button:hover,
.itt-page--woo a.button:hover,
.itt-page--woo input.button:hover { background: #333; color: #fff; }

/* Azioni primarie → oro */
.itt-page--woo .button.alt,
.itt-page--woo button.button.alt,
.itt-page--woo a.checkout-button,
.itt-page--woo #place_order,
.itt-page--woo .wc-proceed-to-checkout .button {
	background: var(--ittc-gold); color: var(--ittc-ink);
}
.itt-page--woo .button.alt:hover,
.itt-page--woo a.checkout-button:hover,
.itt-page--woo #place_order:hover,
.itt-page--woo .wc-proceed-to-checkout .button:hover { background: var(--ittc-gold-dark); color: var(--ittc-ink); }

/* Link */
.itt-page--woo a { color: var(--ittc-gold); }
.itt-page--woo a.button { color: #fff; }
.itt-page--woo a.button.alt, .itt-page--woo a.checkout-button { color: var(--ittc-ink); }

/* Campi form */
.itt-page--woo .woocommerce form .form-row input.input-text,
.itt-page--woo .woocommerce form .form-row textarea,
.itt-page--woo input[type="text"],
.itt-page--woo input[type="email"],
.itt-page--woo input[type="tel"],
.itt-page--woo input[type="password"],
.itt-page--woo input[type="number"],
.itt-page--woo select,
.itt-page--woo textarea {
	border: 1px solid var(--ittc-line); border-radius: 6px; padding: 11px 12px; font: inherit;
	font-size: 14px; outline: none; background: #fff; box-shadow: none;
}
.itt-page--woo input:focus, .itt-page--woo select:focus, .itt-page--woo textarea:focus { border-color: var(--ittc-gold); }
.itt-page--woo label { font-size: 13px; color: #444; }

/* Tabella carrello */
.itt-page--woo table.shop_table {
	border: 1px solid var(--ittc-line); border-radius: 10px; border-collapse: separate; border-spacing: 0; overflow: hidden;
}
.itt-page--woo table.shop_table th { background: var(--ittc-cream); font-size: 12px; text-transform: uppercase; letter-spacing: .04em; color: #555; padding: 14px 12px; }
.itt-page--woo table.shop_table td { padding: 14px 12px; border-top: 1px solid var(--ittc-line); }
.itt-page--woo table.cart img { width: 56px; height: auto; border: 1px solid var(--ittc-line); border-radius: 6px; }
.itt-page--woo .product-name a { color: var(--ittc-ink); font-weight: 600; text-decoration: none; }
.itt-page--woo .product-name a:hover { color: var(--ittc-gold); }
.itt-page--woo .cart_item .amount { font-weight: 600; }
.itt-page--woo a.remove { color: #c00 !important; border-radius: 50%; }

/* Coupon + actions */
.itt-page--woo .coupon .input-text { max-width: 220px; }

/* Totali carrello */
.itt-page--woo .cart_totals,
.itt-page--woo .cart-collaterals .cart_totals { float: none; width: 100%; }
.itt-page--woo .cart_totals table.shop_table td,
.itt-page--woo .cart_totals table.shop_table th { background: #fff; }
.itt-page--woo .cart_totals .order-total .amount { color: var(--ittc-gold); font-size: 20px; }
.itt-page--woo .wc-proceed-to-checkout { padding-top: 16px; }
.itt-page--woo .wc-proceed-to-checkout .button { display: block; text-align: center; font-size: 16px; padding: 15px; }

/* Layout carrello a 2 colonne su desktop */
@media (min-width: 920px) {
	.itt-page--woo .woocommerce-cart-form { width: 62%; float: left; }
	.itt-page--woo .cart-collaterals { width: 34%; float: right; }
	.itt-page--woo .woocommerce::after { content: ""; display: table; clear: both; }
}

/* My Account */
.itt-page--woo .woocommerce-account .woocommerce::after { content: ""; display: table; clear: both; }
.itt-page--woo .woocommerce-MyAccount-navigation { width: 24%; float: left; }
.itt-page--woo .woocommerce-MyAccount-content { width: 72%; float: right; }
.itt-page--woo .woocommerce-MyAccount-navigation ul { list-style: none; margin: 0; padding: 0; border: 1px solid var(--ittc-line); border-radius: 10px; overflow: hidden; }
.itt-page--woo .woocommerce-MyAccount-navigation li { border-bottom: 1px solid var(--ittc-line); }
.itt-page--woo .woocommerce-MyAccount-navigation li:last-child { border-bottom: none; }
.itt-page--woo .woocommerce-MyAccount-navigation li a { display: block; padding: 12px 16px; color: var(--ittc-ink); text-decoration: none; font-weight: 500; font-size: 14px; }
.itt-page--woo .woocommerce-MyAccount-navigation li a:hover { background: var(--ittc-cream); color: var(--ittc-gold); }
.itt-page--woo .woocommerce-MyAccount-navigation li.is-active a { background: var(--ittc-ink); color: #fff; }

/* Messaggi / notice */
.itt-page--woo .woocommerce-message,
.itt-page--woo .woocommerce-info,
.itt-page--woo .woocommerce-error {
	border-radius: 8px; border: 1px solid var(--ittc-line); background: var(--ittc-cream);
	padding: 14px 16px; font-size: 14px; list-style: none; border-left: 3px solid var(--ittc-gold);
}
.itt-page--woo .woocommerce-error { border-left-color: #c00; }
.itt-page--woo .woocommerce-message .button,
.itt-page--woo .woocommerce-info .button,
.itt-page--woo .button.wc-forward { background: var(--ittc-ink); color: #fff; }

/* Attributi variante compatti (carrello + riepilogo checkout) */
.itt-page--woo dl.variation { margin: 4px 0 0; font-size: 12px; color: #777; display: flex; flex-wrap: wrap; gap: 0 8px; }
.itt-page--woo dl.variation dt { margin: 0; font-weight: 600; color: #555; }
.itt-page--woo dl.variation dd { margin: 0 6px 0 2px; }
.itt-page--woo dl.variation dd p { margin: 0; display: inline; }

/* ---- Fluid Checkout → palette ITAL TOOLS ---- */
:root, .itt-page--woo, body.woocommerce-checkout {
	--fluidcheckout--button--primary--background-color: var(--ittc-gold);
	--fluidcheckout--button--primary--background-color--hover: var(--ittc-gold-dark);
	--fluidcheckout--button--primary--border-color: var(--ittc-gold);
	--fluidcheckout--button--primary--border-color--hover: var(--ittc-gold-dark);
	--fluidcheckout--button--primary--text-color: var(--ittc-ink);
	--fluidcheckout--button--primary--text-color--hover: var(--ittc-ink);
	--fluidcheckout--checkout-progress--bar-color--complete: var(--ittc-gold);
	--fluidcheckout--checkout-progress--bar-color--current: var(--ittc-gold);
	--fluidcheckout--kappe--place-order-button--background-color: var(--ittc-gold);
	--fluidcheckout--kappe--place-order-button--background-color--hover: var(--ittc-gold-dark);
	--fluidcheckout--field--background-color--accent: var(--ittc-gold);
	--fluidcheckout--field--text-color--accent: var(--ittc-ink);
}

/* Bottoni primari Fluid Checkout (next-step / save / place order) in oro.
   NB: Fluid Checkout renderizza FUORI da .itt-page--woo → selettori non scoped
   (questo file carica solo su cart/checkout/account, quindi è sicuro). */
button.fc-step__next-step,
button.fc-step__substep-save,
#place_order,
.wfc-place-order button {
	background: var(--ittc-gold) !important; color: var(--ittc-ink) !important;
	border-color: var(--ittc-gold) !important; font-weight: 700 !important;
}
button.fc-step__next-step:hover,
button.fc-step__substep-save:hover,
#place_order:hover { background: var(--ittc-gold-dark) !important; color: var(--ittc-ink) !important; }

/* Riepilogo ordine Fluid Checkout */
.fc-order-summary, .fc-sidebar__inner { border: 1px solid var(--ittc-line); border-radius: 10px; }
.fc-order-summary__title { color: var(--ittc-ink); }
.woocommerce-checkout dl.variation { font-size: 12px; color: #777; }

@media (max-width: 919px) {
	.itt-page--woo .woocommerce-cart-form,
	.itt-page--woo .cart-collaterals,
	.itt-page--woo .woocommerce-MyAccount-navigation,
	.itt-page--woo .woocommerce-MyAccount-content { width: 100%; float: none; }
	.itt-page--woo .cart-collaterals { margin-top: 24px; }
	.itt-page--woo .woocommerce-MyAccount-content { margin-top: 20px; }
}

/* ---- Minimum order banner (cart page) ---- */
.itt-cart-minord {
	display: flex; align-items: flex-start; gap: 14px;
	background: #fff8e7; border: 1px solid #f0c040; border-left: 4px solid #E8A800;
	border-radius: 10px; padding: 18px 20px; margin-bottom: 24px;
}
.itt-cart-minord-icon { color: #E8A800; flex: none; margin-top: 1px; }
.itt-cart-minord-body { flex: 1; min-width: 0; }
.itt-cart-minord-text { font-size: 14px; color: #4a3600; margin: 0 0 12px; line-height: 1.5; }
.itt-cart-minord-text strong { color: #1a1a1a; }
.itt-cart-minord-bar {
	background: rgba(232,168,0,.15); border-radius: 100px; height: 8px;
	overflow: hidden; margin-bottom: 8px;
}
.itt-cart-minord-fill {
	height: 100%; background: linear-gradient(90deg, #E8A800, #f5c842);
	border-radius: 100px; transition: width .4s ease; min-width: 4px;
}
.itt-cart-minord-meta { display: flex; justify-content: space-between; font-size: 12px; color: #888; gap: 8px; }
.itt-cart-minord-meta strong { color: #4a3600; }

/* Disabled checkout button */
.wc-proceed-to-checkout .itt-checkout-btn-disabled {
	background: #d0d0d0 !important; color: #888 !important;
	cursor: not-allowed !important; pointer-events: none !important;
	opacity: 1 !important; border-color: #d0d0d0 !important;
}

/* Free shipping countdown banner */
.itt-cart-freeship {
	display: flex; align-items: flex-start; gap: 14px;
	background: #e8f5e9; border: 1px solid #a5d6a7; border-left: 4px solid #2a9d5c;
	border-radius: 10px; padding: 18px 20px; margin-bottom: 24px;
}
.itt-cart-freeship-icon { color: #2a9d5c; flex: none; margin-top: 1px; }
.itt-cart-freeship-body { flex: 1; min-width: 0; }
.itt-cart-freeship-text { font-size: 14px; color: #1b3a24; margin: 0 0 12px; line-height: 1.5; }
.itt-cart-freeship-text strong { color: #1a1a1a; }
.itt-cart-freeship-bar {
	background: rgba(42,157,92,.15); border-radius: 100px; height: 8px;
	overflow: hidden; margin-bottom: 8px;
}
.itt-cart-freeship-fill {
	height: 100%; background: linear-gradient(90deg, #2a9d5c, #43d17a);
	border-radius: 100px; transition: width .4s ease; min-width: 4px;
}
.itt-cart-freeship-meta { display: flex; justify-content: space-between; font-size: 12px; color: #888; gap: 8px; }
.itt-cart-freeship-meta strong { color: #1b3a24; }

/* Hide express payment buttons (PayPal, Google Pay, Apple Pay) when minimum order not met */
body.itt-min-not-met .wc-ppcp-cart-payments__container,
body.itt-min-not-met #wc-stripe-payment-request-container,
body.itt-min-not-met #wc-stripe-applepay-container,
body.itt-min-not-met #wc-stripe-googlepay-container {
	display: none !important;
}

/* "Proceed to checkout" button → blu Italtools, testo bianco (override default/oro).
   Selettori NON scoped: questo file carica solo su cart/checkout/account. */
.wc-proceed-to-checkout a.checkout-button,
.wc-proceed-to-checkout .checkout-button.button,
.itt-page--woo .wc-proceed-to-checkout a.checkout-button {
	background: var(--ittc-blue-dark, #1F7FC0) !important;
	color: #fff !important;
	border-color: var(--ittc-blue-dark, #1F7FC0) !important;
}
.wc-proceed-to-checkout a.checkout-button:hover,
.wc-proceed-to-checkout .checkout-button.button:hover,
.itt-page--woo .wc-proceed-to-checkout a.checkout-button:hover {
	background: #17679f !important;
	color: #fff !important;
	border-color: #17679f !important;
}

/* Banner "hai bisogno di aiuto?" sopra il tasto checkout */
.wc-proceed-to-checkout .itt-cart-help {
	display: flex; align-items: center; gap: 12px; text-align: left;
	background: var(--ittc-cream, #f7f6f2); border: 1px solid var(--ittc-line, #ece9e2);
	border-radius: 10px; padding: 12px 14px; margin-bottom: 14px;
}
.itt-cart-help-icon { color: var(--ittc-blue-dark, #1F7FC0); flex: none; display: flex; }
.itt-cart-help-body { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 1px; }
.itt-cart-help-title { font-size: 13px; font-weight: 700; color: var(--ittc-ink, #1a1a1a); line-height: 1.3; }
.itt-cart-help-sub { font-size: 12px; color: #777; line-height: 1.35; }
.wc-proceed-to-checkout a.itt-cart-help-btn {
	flex: none; background: var(--ittc-ink, #1a1a1a); color: #fff !important;
	border-radius: 6px; padding: 9px 14px; font-size: 13px; font-weight: 600;
	text-decoration: none; white-space: nowrap; display: inline-block; line-height: 1.2;
}
.wc-proceed-to-checkout a.itt-cart-help-btn:hover { background: #333 !important; color: #fff !important; }
@media (max-width: 480px) {
	.wc-proceed-to-checkout .itt-cart-help { flex-wrap: wrap; }
	.wc-proceed-to-checkout a.itt-cart-help-btn { width: 100%; text-align: center; }
}

/* Mobile: cart table scroll + min-order banner */
@media (max-width: 640px) {
	.itt-page--woo .woocommerce-cart-form { overflow-x: auto; -webkit-overflow-scrolling: touch; }
	.itt-page--woo table.shop_table { min-width: 480px; }
	.itt-cart-minord { gap: 10px; padding: 14px 16px; }
	.itt-cart-minord-text { font-size: 13px; }
	.itt-cart-freeship { gap: 10px; padding: 14px 16px; }
	.itt-cart-freeship-text { font-size: 13px; }
	.itt-page--woo .coupon { display: flex; gap: 8px; flex-wrap: wrap; }
	.itt-page--woo .coupon .input-text { max-width: none; flex: 1; }
}
