/**
 * Leggibilità di carrello, checkout e area account.
 *
 * Il tema del sito è scuro ma i blocchi WooCommerce arrivano con i colori
 * chiari di default: testi, etichette e campi finivano scuro-su-scuro, e il
 * pulsante d'acquisto spariva in hover.
 *
 * Metodo: si eredita un colore leggibile su TUTTO il testo dentro i blocchi
 * (i blocchi usano decine di classi diverse, inseguirle una per una non tiene),
 * e poi si rimettono gli accenti dove servono. Ambito stretto: solo dentro i
 * blocchi carrello/checkout e nell'area account.
 *
 * Palette del sito: ink #14161A · carta #E8E6DF · giallo #FFDE01
 */

:root {
	--sl-ink: #14161A;
	--sl-pannello: #1A1D22;
	--sl-campo: #0F1115;
	--sl-bordo: #2A2E36;
	--sl-testo: #E8E6DF;
	--sl-tenue: #B9BEC9;
	--sl-giallo: #FFDE01;
	--sl-giallo-scuro: #E5C700;
}

/* ------------------------------------------------------- testo, in blocco - */

.wp-block-woocommerce-checkout,
.wp-block-woocommerce-cart,
.wc-block-checkout,
.wc-block-cart,
.woocommerce-account .woocommerce {
	color: var(--sl-testo);
}

.wp-block-woocommerce-checkout :is(h1, h2, h3, h4, h5, legend, label, p, span, li, dt, dd, td, th, address, strong, em, small, div),
.wp-block-woocommerce-cart :is(h1, h2, h3, h4, h5, legend, label, p, span, li, dt, dd, td, th, address, strong, em, small, div),
.woocommerce-account .woocommerce :is(h1, h2, h3, legend, label, p, span, li, td, th, address) {
	color: inherit;
}

/* i secondari restano secondari, ma leggibili */
.wc-block-components-checkout-step__description,
.wc-block-components-product-details,
.wc-block-components-product-metadata,
.wc-block-components-product-metadata *,
.wc-block-components-radio-control__description,
.wc-block-components-order-summary-item__description,
.wc-block-checkout__terms,
.wc-block-checkout__terms *,
.wc-block-components-checkout-step__description * {
	color: var(--sl-tenue);
}

/* ------------------------------------------------------------- accenti --- */

.wc-block-checkout a,
.wc-block-cart a,
.woocommerce-account .woocommerce a,
.wc-block-components-button.is-link {
	color: var(--sl-giallo) !important;
}

.wc-block-components-totals-footer-item,
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
	color: var(--sl-giallo);
	font-weight: 700;
}

.wc-block-components-checkout-step__title,
.wc-block-components-title,
.wc-block-cart__totals-title,
.wc-block-components-order-summary__button-text {
	color: var(--sl-testo);
	font-weight: 600;
}

/* --------------------------------------------------------------- campi --- */

.wc-block-checkout input:not([type="checkbox"]):not([type="radio"]),
.wc-block-checkout select,
.wc-block-checkout textarea,
.wc-block-cart input:not([type="checkbox"]):not([type="radio"]),
.wc-block-cart select,
.woocommerce-account input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
.woocommerce-account select,
.woocommerce-account textarea {
	background: var(--sl-campo) !important;
	color: var(--sl-testo) !important;
	border: 1px solid var(--sl-bordo) !important;
	border-radius: 8px !important;
}

.wc-block-checkout input:focus,
.wc-block-checkout select:focus,
.wc-block-checkout textarea:focus,
.woocommerce-account input:focus,
.woocommerce-account select:focus {
	border-color: var(--sl-giallo) !important;
	outline: none;
	box-shadow: 0 0 0 1px var(--sl-giallo);
}

/* l'etichetta fluttuante dentro il campo */
.wc-block-components-text-input label,
.wc-block-components-combobox label,
.wc-block-components-select__label {
	color: var(--sl-tenue) !important;
}

.wc-block-components-text-input.is-active label,
.wc-block-components-text-input input:focus + label {
	color: var(--sl-giallo) !important;
}

/* i menu a tendina nativi si aprono col colore del sistema: qui è scuro */
.wc-block-checkout select option,
.woocommerce-account select option {
	background: var(--sl-campo);
	color: var(--sl-testo);
}

/* ------------------------------------------------------------ pannelli --- */

.wc-block-components-radio-control-accordion-option,
.wc-block-components-radio-control__option,
.wc-block-components-panel,
.wc-block-components-order-summary,
.wc-block-components-address-card,
.wc-block-components-totals-wrapper,
.wc-block-checkout__sidebar,
.wc-block-cart__sidebar {
	background-color: var(--sl-pannello);
	border-color: var(--sl-bordo) !important;
}

.wc-block-components-radio-control-accordion-option:has(input:checked),
.wc-block-components-radio-control__option--checked-option-highlighted {
	border-color: var(--sl-giallo) !important;
}

.wc-block-components-totals-item,
.wc-block-components-order-summary-item,
.wc-block-components-checkout-step {
	border-color: var(--sl-bordo) !important;
}

/* le caselle di spunta erano bianche su bianco */
.wc-block-components-checkbox__input,
.wc-block-checkout input[type="checkbox"],
.wc-block-checkout input[type="radio"] {
	accent-color: var(--sl-giallo);
	border-color: var(--sl-bordo) !important;
}

/* -------------------------------------------------------------- bottoni --- */
/* Il difetto peggiore: sfondo scuro con testo scuro, e in hover spariva.
   Giallo pieno con testo ink in OGNI stato, e in hover un giallo più profondo
   invece di uno schiarimento che azzera il contrasto. */

.wc-block-components-checkout-place-order-button,
.wc-block-cart__submit-button,
.wc-block-components-button:not(.is-link),
.woocommerce-account .woocommerce-Button,
.woocommerce-account button[type="submit"] {
	background: var(--sl-giallo) !important;
	background-color: var(--sl-giallo) !important;
	color: var(--sl-ink) !important;
	border: 0 !important;
	border-radius: 10px !important;
	font-weight: 700 !important;
	text-shadow: none !important;
}

.wc-block-components-checkout-place-order-button:hover,
.wc-block-components-checkout-place-order-button:focus,
.wc-block-cart__submit-button:hover,
.wc-block-cart__submit-button:focus,
.wc-block-components-button:not(.is-link):hover,
.wc-block-components-button:not(.is-link):focus,
.woocommerce-account .woocommerce-Button:hover,
.woocommerce-account button[type="submit"]:hover {
	background: var(--sl-giallo-scuro) !important;
	background-color: var(--sl-giallo-scuro) !important;
	color: var(--sl-ink) !important;
	opacity: 1 !important;
}

.wc-block-components-checkout-place-order-button *,
.wc-block-cart__submit-button *,
.wc-block-components-button:not(.is-link) * {
	color: var(--sl-ink) !important;
}

/* disabilitato deve sembrare disabilitato, non rotto */
.wc-block-components-button:disabled,
.wc-block-components-button[aria-disabled="true"] {
	background: #4A452A !important;
	color: var(--sl-ink) !important;
	opacity: 1 !important;
}

/* --------------------------------------------------------------- varie ---- */

.wc-block-components-quantity-selector input,
.wc-block-components-quantity-selector button {
	background: var(--sl-campo);
	color: var(--sl-testo);
	border-color: var(--sl-bordo);
}

/* gli avvisi hanno sfondo chiaro: lì il testo deve tornare scuro */
.wc-block-components-notice-banner,
.wc-block-components-notice-banner *,
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
	color: var(--sl-ink) !important;
}

.wc-block-components-notice-banner a {
	color: #8A7500 !important;
}

/* riga del prodotto nel riepilogo */
.wc-block-components-order-summary-item__image img {
	background: #F7F5F0;
	border-radius: 8px;
}

/* ==========================================================================
   CARRELLO CLASSICO
   Il checkout di questo sito usa i blocchi, ma la pagina carrello è ancora
   quella a shortcode: markup completamente diverso, che le regole qui sopra
   non toccano. Verificato a video: intestazioni e prezzi uscivano grigio scuro
   su nero, e «Procedi al pagamento» era azzurro, fuori dalla palette.
   ========================================================================== */

.woocommerce-cart .woocommerce,
.woocommerce-cart .woocommerce table.shop_table,
.woocommerce-cart .cart_totals {
	color: var(--sl-testo);
}

.woocommerce-cart table.shop_table th,
.woocommerce-cart table.shop_table td,
.woocommerce-cart table.shop_table thead th,
.woocommerce-cart .cart_totals th,
.woocommerce-cart .cart_totals td,
.woocommerce-cart .cart_totals h2 {
	color: var(--sl-testo) !important;
	border-color: var(--sl-bordo) !important;
}

.woocommerce-cart table.shop_table .product-price,
.woocommerce-cart table.shop_table .product-subtotal,
.woocommerce-cart .cart_totals .amount,
.woocommerce-cart .cart_totals bdi {
	color: var(--sl-testo) !important;
}

.woocommerce-cart .cart_totals .order-total .amount,
.woocommerce-cart .cart_totals .order-total bdi {
	color: var(--sl-giallo) !important;
}

.woocommerce-cart .cart_totals small,
.woocommerce-cart .includes_tax,
.woocommerce-cart dl.variation,
.woocommerce-cart dl.variation dt,
.woocommerce-cart dl.variation dd,
.woocommerce-cart dl.variation p {
	color: var(--sl-tenue) !important;
}

.woocommerce-cart table.shop_table,
.woocommerce-cart .cart_totals,
.woocommerce-cart .coupon {
	background: var(--sl-pannello);
	border-color: var(--sl-bordo) !important;
}

.woocommerce-cart .product-name a {
	color: var(--sl-giallo) !important;
}

.woocommerce-cart .product-remove a.remove {
	color: var(--sl-tenue) !important;
	background: transparent !important;
}

.woocommerce-cart .product-remove a.remove:hover {
	color: var(--sl-giallo) !important;
}

.woocommerce-cart .coupon input[type="text"] {
	background: var(--sl-campo) !important;
	color: var(--sl-testo) !important;
	border: 1px solid var(--sl-bordo) !important;
	border-radius: 8px !important;
}

.woocommerce-cart .coupon input[type="text"]::placeholder {
	color: var(--sl-tenue);
}

/* i bottoni: era azzurro su bianco, ora la palette del sito in ogni stato */
.woocommerce-cart .woocommerce a.button,
.woocommerce-cart .woocommerce button.button,
.woocommerce-cart .woocommerce input.button,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
	background: var(--sl-giallo) !important;
	background-color: var(--sl-giallo) !important;
	color: var(--sl-ink) !important;
	border: 0 !important;
	border-radius: 10px !important;
	font-weight: 700 !important;
	text-shadow: none !important;
	opacity: 1 !important;
}

.woocommerce-cart .woocommerce a.button:hover,
.woocommerce-cart .woocommerce button.button:hover,
.woocommerce-cart .woocommerce input.button:hover,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce-cart .woocommerce a.button:focus,
.woocommerce-cart .woocommerce button.button:focus {
	background: var(--sl-giallo-scuro) !important;
	background-color: var(--sl-giallo-scuro) !important;
	color: var(--sl-ink) !important;
}

/* «Applica coupon» è secondario: contorno, non pieno, ma leggibile */
.woocommerce-cart .coupon button.button {
	background: transparent !important;
	color: var(--sl-giallo) !important;
	border: 1px solid var(--sl-giallo) !important;
}

.woocommerce-cart .coupon button.button:hover {
	background: var(--sl-giallo) !important;
	color: var(--sl-ink) !important;
}

.woocommerce-cart .woocommerce a.button:disabled,
.woocommerce-cart .woocommerce button.button:disabled,
.woocommerce-cart .woocommerce button.button[disabled] {
	background: #4A452A !important;
	color: var(--sl-ink) !important;
	opacity: 1 !important;
}

/* Rifinitura dopo la verifica a video: i prezzi dentro la tabella e le
   etichette dei totali restavano grigi, perché il tema li colora con selettori
   più specifici. Qui si alza la specificità con il body, senza allargare
   l'ambito oltre il carrello. */

body.woocommerce-cart .shop_table .amount,
body.woocommerce-cart .shop_table bdi,
body.woocommerce-cart .shop_table .product-price span,
body.woocommerce-cart .shop_table .product-subtotal span,
body.woocommerce-cart .cart_totals .amount,
body.woocommerce-cart .cart_totals bdi {
	color: var(--sl-testo) !important;
}

body.woocommerce-cart .cart_totals th,
body.woocommerce-cart .cart_totals .cart-subtotal th,
body.woocommerce-cart .cart_totals .order-total th,
body.woocommerce-cart .shop_table thead th {
	color: var(--sl-testo) !important;
	opacity: 1 !important;
}

body.woocommerce-cart .cart_totals .order-total .amount,
body.woocommerce-cart .cart_totals .order-total bdi {
	color: var(--sl-giallo) !important;
}

body.woocommerce-cart .cart_totals .includes_tax,
body.woocommerce-cart .cart_totals .includes_tax .amount,
body.woocommerce-cart .cart_totals small {
	color: var(--sl-tenue) !important;
}

/* Carrello con una RATA dentro: via i pulsanti di pagamento rapido.
   Il filtro sui metodi ammessi copre il checkout, ma i pulsanti express
   aprono un loro flusso e lo scavalcherebbero: una rata pagata una volta
   sola è esattamente ciò che non deve poter succedere. */
body.sl-abb-ricorrente .ppcp-button-container,
body.sl-abb-ricorrente .ppc-button-wrapper,
body.sl-abb-ricorrente #ppc-button-ppcp-gateway,
body.sl-abb-ricorrente .ppcp-messages,
body.sl-abb-ricorrente .wc-block-components-express-payment,
body.sl-abb-ricorrente .wc-block-checkout__actions .wp-block-woocommerce-checkout-express-payment-block {
	display: none !important;
}
