/* ==========================================================================
   Antea · Carrello, cassa (blocchi WooCommerce) e area account
   ========================================================================== */

.is-commerce-flow .a-main { padding-bottom: var(--a-section-sm); }
.a-commerce-head { margin: var(--a-s-4) 0 var(--a-s-7); }
.a-commerce-head h1 { margin-bottom: var(--a-s-2); }

/* ---- Blocchi WooCommerce: tipografia e forme del tema ---- */
.wc-block-components-sidebar-layout, .wp-block-woocommerce-cart, .wp-block-woocommerce-checkout { font-family: var(--a-font-sans); color: var(--a-fg); }
.wc-block-components-title, .wc-block-components-checkout-step__title, .wc-block-cart__totals-title, .wc-block-components-order-summary__button-text { font-family: var(--a-font-sans) !important; font-weight: var(--a-fw-medium) !important; letter-spacing: 0; }
.wc-block-components-checkout-step__heading { margin-bottom: var(--a-s-3); }
.wc-block-components-sidebar { border-radius: var(--a-r-xl); }
.wc-block-components-sidebar .wc-block-components-panel, .wc-block-cart__sidebar .wc-block-components-totals-wrapper { font-size: var(--a-fs-sm); }
.wc-block-cart .wc-block-cart__sidebar, .wc-block-checkout__sidebar { background: var(--a-glass-bg-strong); -webkit-backdrop-filter: var(--a-glass-blur); backdrop-filter: var(--a-glass-blur); border: 1px solid var(--a-glass-border); border-radius: var(--a-r-xl); padding: var(--a-s-6) !important; box-shadow: var(--a-glass-shadow); }
.wc-block-components-sidebar-layout .wc-block-components-main { padding-right: var(--a-s-8); }
.wc-block-components-text-input input, .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input, .wc-block-components-textarea, .wc-block-components-select .components-custom-select-control__button { border-radius: var(--a-r-sm) !important; border-color: var(--a-line-strong) !important; background: var(--a-surface); font-family: var(--a-font-sans); min-height: 50px; }
.wc-block-components-text-input input:focus, .wc-block-components-textarea:focus { border-color: var(--a-rose-600) !important; box-shadow: 0 0 0 4px var(--a-accent-soft) !important; }
.wc-block-components-text-input label, .wc-block-components-combobox label { font-family: var(--a-font-sans); color: var(--a-fg-mute); }
.wc-block-components-button:not(.is-link), .wc-block-components-checkout-place-order-button, .wc-block-cart__submit-button, .wp-block-woocommerce-mini-cart-checkout-button-block { background: var(--a-cta) !important; color: var(--a-on-cta) !important; border-radius: var(--a-pill) !important; font-family: var(--a-font-sans) !important; font-weight: var(--a-fw-medium) !important; font-size: var(--a-fs-sm) !important; letter-spacing: .02em; min-height: 50px; padding: 0 24px !important; border: 0 !important; box-shadow: 0 10px 24px -14px rgba(25, 25, 26, .6); transition: transform var(--a-dur-fast) var(--a-ease), background-color var(--a-dur-fast) var(--a-ease) !important; }
.wc-block-components-button:not(.is-link):hover, .wc-block-components-checkout-place-order-button:hover { background: var(--a-obsidian-3) !important; transform: translateY(-1px); }
.wc-block-components-button.outlined, .wc-block-components-button.is-secondary { background: transparent !important; color: var(--a-fg) !important; border: 1px solid var(--a-line-strong) !important; box-shadow: none; }
.wc-block-cart-item__image img, .wc-block-components-order-summary-item__image img { border-radius: var(--a-r-sm); background: #fff; border: 1px solid var(--a-line); object-fit: contain; }
.wc-block-cart-item__product .wc-block-components-product-name { font-weight: var(--a-fw-medium); color: var(--a-fg); text-decoration: none; }
.wc-block-cart-items__header { font-size: var(--a-fs-xs) !important; text-transform: uppercase; letter-spacing: var(--a-track-caps); color: var(--a-fg-mute); }
.wc-block-components-product-metadata__description, .wc-block-components-product-details { color: var(--a-fg-mute); font-size: var(--a-fs-xs); }
.wc-block-cart-item__remove-link { color: var(--a-fg-mute) !important; font-size: var(--a-fs-xs) !important; }
.wc-block-components-quantity-selector { border-radius: var(--a-pill) !important; border: 1px solid var(--a-line-strong) !important; background: var(--a-surface); }
.wc-block-components-quantity-selector::after { display: none !important; }
.wc-block-components-quantity-selector input { font-weight: var(--a-fw-medium) !important; }
.wc-block-components-totals-item__value, .wc-block-components-totals-footer-item .wc-block-components-totals-item__value { font-variant-numeric: tabular-nums; }
.wc-block-components-totals-footer-item .wc-block-components-totals-item__label, .wc-block-components-totals-footer-item .wc-block-components-totals-item__value { font-family: var(--a-font-display); font-weight: var(--a-fw-regular); font-size: var(--a-fs-h4) !important; letter-spacing: .02em; }
.wc-block-components-radio-control__option, .wc-block-components-checkbox { font-family: var(--a-font-sans); }
.wc-block-components-radio-control__input:checked, .wc-block-components-checkbox__input[type="checkbox"]:checked { border-color: var(--a-obsidian) !important; background: var(--a-obsidian) !important; }
.wc-block-components-radio-control__input:checked::before { background: var(--a-silk) !important; }
.wc-block-components-checkbox__mark { color: var(--a-silk) !important; }
.wc-block-components-shipping-rates-control__package .wc-block-components-radio-control__option, .wc-block-components-payment-method-label { font-size: var(--a-fs-sm); }
.wc-block-components-notice-banner { border-radius: var(--a-r) !important; font-family: var(--a-font-sans); }
.wc-block-components-notice-banner.is-info { background: var(--a-rose-100) !important; border-color: transparent !important; color: var(--a-rose-800) !important; }
.wc-block-components-notice-banner.is-success { background: var(--a-success-soft) !important; border-color: transparent !important; color: var(--a-success) !important; }
.wc-block-components-notice-banner.is-error { background: var(--a-danger-soft) !important; border-color: transparent !important; color: var(--a-danger) !important; }
.wc-block-components-form .wc-block-components-checkout-step { padding-left: 0 !important; }
.wc-block-components-checkout-step::before, .wc-block-components-checkout-step--with-step-number .wc-block-components-checkout-step__container::after { display: none !important; }
.wc-block-components-checkout-step__container { padding: var(--a-s-6); border-radius: var(--a-r-xl); background: var(--a-surface); border: 1px solid var(--a-line); margin-bottom: var(--a-s-4); }
.wc-block-components-checkout-step__heading .wc-block-components-checkout-step__title { font-size: var(--a-fs-xl) !important; font-family: var(--a-font-display) !important; font-weight: var(--a-fw-semibold) !important; letter-spacing: .04em !important; }
.wc-block-components-express-payment__event-buttons { gap: var(--a-s-2); }
.wc-block-components-express-payment-continue-rule { color: var(--a-fg-mute); font-size: var(--a-fs-xs); }
.wc-block-checkout__terms { font-size: var(--a-fs-xs); color: var(--a-fg-mute); }
.wc-block-components-payment-method-icons img { height: 20px; }
.wc-block-cart__empty-cart__title, .wp-block-woocommerce-empty-cart-block h2 { font-family: var(--a-font-display); font-weight: var(--a-fw-semibold); }
.wc-block-components-product-badge, .wc-block-components-sale-badge { border-radius: var(--a-pill) !important; font-size: var(--a-fs-2xs) !important; }
.wc-block-cart__totals-title { display: none; }
.wc-block-components-order-summary { font-size: var(--a-fs-sm); }
.wc-block-components-totals-coupon__form .wc-block-components-text-input input { min-height: 46px; }
.wc-block-cart .wc-block-components-totals-coupon .wc-block-components-button, .wc-block-checkout .wc-block-components-totals-coupon .wc-block-components-button { min-height: 46px; }

@media (min-width: 700px) {
	.wc-block-components-sidebar-layout .wc-block-components-sidebar { width: 38% !important; }
	.wc-block-components-sidebar-layout .wc-block-components-main { width: 62% !important; }
}

/* ---- Carrello vuoto (blocchi) ---- */
.wp-block-woocommerce-empty-cart-block { text-align: center; }
.wc-block-grid__products { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: var(--a-s-4); }

/* ---- Area account ---- */
.a-account { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: var(--a-s-9); align-items: start; }
.a-account .woocommerce-MyAccount-navigation { position: sticky; top: var(--a-sticky-offset); padding: var(--a-s-3); border-radius: var(--a-r-xl); }
.a-account .woocommerce-MyAccount-navigation ul { margin: 0; padding: 0; list-style: none; }
.a-account .woocommerce-MyAccount-navigation li { margin: 0; }
.a-account .woocommerce-MyAccount-navigation a { display: flex; align-items: center; gap: 10px; padding: 12px 16px; border-radius: var(--a-pill); color: var(--a-fg); text-decoration: none; font-size: var(--a-fs-sm); font-weight: var(--a-fw-medium); transition: background-color var(--a-dur-fast) var(--a-ease); }
.a-account .woocommerce-MyAccount-navigation a:hover { background: rgba(25, 25, 26, .05); }
.a-account .woocommerce-MyAccount-navigation .is-active a { background: var(--a-obsidian); color: var(--a-silk); }
.a-account .woocommerce-MyAccount-navigation-link--customer-logout a { color: var(--a-fg-mute); }
.a-account .woocommerce-MyAccount-content { min-width: 0; }
.a-account .woocommerce-MyAccount-content > p:first-child { font-size: var(--a-fs-lg); color: var(--a-fg-soft); }
.a-account table.shop_table, .a-account .woocommerce-orders-table { font-size: var(--a-fs-sm); border-radius: var(--a-r-lg); overflow: hidden; background: var(--a-surface); border: 1px solid var(--a-line); }
.a-account table.shop_table th, .a-account table.shop_table td { padding: var(--a-s-3) var(--a-s-4); }
.a-account .woocommerce-orders-table__cell-order-actions .button, .a-account .woocommerce-Button, .a-account .button, .woocommerce-form-login .button, .woocommerce-form-register .button { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 0 20px; border-radius: var(--a-pill); background: var(--a-cta); color: var(--a-on-cta); font-size: var(--a-fs-sm); font-weight: var(--a-fw-medium); text-decoration: none; border: 0; cursor: pointer; }
.a-account .woocommerce-orders-table__cell-order-actions .button.view { background: transparent; color: var(--a-fg); border: 1px solid var(--a-line-strong); }
.a-account .woocommerce-Address, .a-account .woocommerce-column { padding: var(--a-s-5); border-radius: var(--a-r-lg); background: var(--a-surface); border: 1px solid var(--a-line); }
.a-account .woocommerce-Addresses { display: grid; grid-template-columns: 1fr 1fr; gap: var(--a-s-4); }
.a-account .woocommerce-Address-title { display: flex; justify-content: space-between; align-items: baseline; }
.a-account .woocommerce-Address-title h2, .a-account .woocommerce-column__title { font-size: var(--a-fs-h4); margin-bottom: var(--a-s-3); }
.a-account .woocommerce-Address-title .edit { font-size: var(--a-fs-xs); }
.a-account address { font-style: normal; line-height: 1.7; color: var(--a-fg-soft); }
.a-account .woocommerce-form-row, .woocommerce-form-login .form-row, .woocommerce-form-register .form-row, .woocommerce-EditAccountForm .form-row, .woocommerce-address-fields .form-row { display: flex; flex-direction: column; gap: 6px; margin-bottom: var(--a-s-4); }
.a-account .form-row label, .woocommerce-form-login label, .woocommerce-form-register label { font-size: var(--a-fs-sm); font-weight: var(--a-fw-medium); }
.a-account .form-row label .required, .woocommerce-form label .required { color: var(--a-danger); text-decoration: none; }
.a-account .input-text, .woocommerce-form .input-text, .a-account select, .woocommerce-form select { width: 100%; min-height: 50px; padding: 12px 16px; border-radius: var(--a-r-sm); border: 1px solid var(--a-line-strong); background: var(--a-surface); font: inherit; }
.a-account .input-text:focus, .woocommerce-form .input-text:focus { outline: none; border-color: var(--a-rose-600); box-shadow: 0 0 0 4px var(--a-accent-soft); }
.a-account .form-row-first, .a-account .form-row-last { width: 100%; }
.a-account fieldset { border: 0; padding: var(--a-s-5) 0 0; margin: var(--a-s-6) 0 0; border-top: 1px solid var(--a-line); }
.a-account legend { font-size: var(--a-fs-h4); font-family: var(--a-font-display); letter-spacing: .04em; padding-top: var(--a-s-4); }
.a-account .woocommerce-password-strength { font-size: var(--a-fs-xs); padding: 6px 0; }
.a-account .woocommerce-order-details, .a-account .woocommerce-customer-details { margin-top: var(--a-s-7); }
.a-account mark { background: var(--a-rose-100); color: var(--a-rose-800); padding: 0 4px; border-radius: 4px; }
.a-account .woocommerce-notices-wrapper .woocommerce-message, .a-account .woocommerce-notices-wrapper .woocommerce-error, .a-account .woocommerce-notices-wrapper .woocommerce-info { list-style: none; margin: 0 0 var(--a-s-5); padding: var(--a-s-4) var(--a-s-5); border-radius: var(--a-r); font-size: var(--a-fs-sm); background: var(--a-rose-100); color: var(--a-rose-800); }
.a-account .woocommerce-notices-wrapper .woocommerce-error { background: var(--a-danger-soft); color: var(--a-danger); }
.a-account .woocommerce-notices-wrapper .woocommerce-message { background: var(--a-success-soft); color: var(--a-success); }
.a-account .woocommerce-info .button, .a-account .woocommerce-message .button { margin-left: auto; }

/* Accesso e registrazione */
.a-auth { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--a-s-6); align-items: start; }
.a-auth > div { padding: clamp(24px, 4vw, 40px); border-radius: var(--a-r-xl); }
.a-auth h2 { font-size: var(--a-fs-h3); margin-bottom: var(--a-s-2); }
.a-auth .a-lead { font-size: var(--a-fs-md); margin-bottom: var(--a-s-6); }
.a-auth .woocommerce-form-login__rememberme { display: flex; align-items: center; gap: 8px; font-size: var(--a-fs-sm); margin-bottom: var(--a-s-4); }
.a-auth .lost_password { font-size: var(--a-fs-sm); margin-top: var(--a-s-3); }
.a-auth .woocommerce-privacy-policy-text { font-size: var(--a-fs-xs); color: var(--a-fg-mute); }
.a-auth .button { width: 100%; }
.a-auth:has(> div:only-child) { grid-template-columns: minmax(0, 520px); justify-content: center; } /* solo accesso: la lastra sta al centro */
.a-auth__note { margin: var(--a-s-5) 0 0; padding-top: var(--a-s-4); border-top: 1px solid var(--a-line); }
.woocommerce-ResetPassword { max-width: 480px; }

@media (max-width: 900px) {
	.a-account { grid-template-columns: 1fr; gap: var(--a-s-5); }
	.a-account .woocommerce-MyAccount-navigation { position: static; }
	.a-account .woocommerce-MyAccount-navigation ul { display: flex; gap: 4px; overflow: auto; scrollbar-width: none; }
	.a-account .woocommerce-MyAccount-navigation a { white-space: nowrap; }
	.a-account .woocommerce-Addresses { grid-template-columns: 1fr; }
	.a-auth { grid-template-columns: 1fr; }
}

/* Pagina ordine ricevuto */
.woocommerce-order { max-width: var(--a-container-narrow); }
.woocommerce-thankyou-order-received { font-family: var(--a-font-display); font-size: var(--a-fs-h3); font-weight: var(--a-fw-semibold); letter-spacing: .04em; margin-bottom: var(--a-s-6); }
.woocommerce-order-overview { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: var(--a-s-3); margin: 0 0 var(--a-s-7); padding: 0; list-style: none; }
.woocommerce-order-overview li { margin: 0; padding: var(--a-s-4); border-radius: var(--a-r); background: var(--a-surface); border: 1px solid var(--a-line); font-size: var(--a-fs-xs); color: var(--a-fg-mute); text-transform: uppercase; letter-spacing: var(--a-track-caps); }
.woocommerce-order-overview li strong { display: block; margin-top: 4px; font-size: var(--a-fs-md); color: var(--a-fg); text-transform: none; letter-spacing: 0; font-weight: var(--a-fw-medium); }
.woocommerce-order table.shop_table { font-size: var(--a-fs-sm); background: var(--a-surface); border: 1px solid var(--a-line); border-radius: var(--a-r-lg); overflow: hidden; }
.woocommerce-order table.shop_table th, .woocommerce-order table.shop_table td { padding: var(--a-s-3) var(--a-s-4); }
.woocommerce-order .woocommerce-column__title, .woocommerce-order h2 { font-size: var(--a-fs-h4); margin: var(--a-s-7) 0 var(--a-s-3); }
.woocommerce-order address { font-style: normal; color: var(--a-fg-soft); line-height: 1.7; padding: var(--a-s-5); border-radius: var(--a-r-lg); background: var(--a-surface); border: 1px solid var(--a-line); }
.woocommerce-bacs-bank-details { padding: var(--a-s-5); border-radius: var(--a-r-lg); background: var(--a-rose-50); border: 1px solid var(--a-line); }
.woocommerce-bacs-bank-details ul { list-style: none; padding: 0; }
