/* =========================================================
   LEGIS - Account area / Sprint 1
   ========================================================= */

/* riduco font-size del titolo e sistemo il padding */
.woocommerce-account .wp-block-post-title{
  font-size: var(--wp--preset--font-size--large) !important;
  line-height: 1.2;
}
/* Selettore mirato al wrapper di gruppo che contiene il titolo post 'Il mio account' */
body.woocommerce-account {
	--legis-account-gutter: clamp(8px, 2vw, 16px);
	--legis-account-gap: 16px;
	--legis-account-card-pad: 24px;
}

.woocommerce-account main#wp--skip-link--target {
	overflow-x: clip;
}

.woocommerce-account main#wp--skip-link--target > .wp-block-group.alignfull:has(> h1.wp-block-post-title) {
	padding-top: 0 !important;
	padding-left: var(--legis-account-gutter) !important;
	padding-right: var(--legis-account-gutter) !important;
	box-sizing: border-box;
}

/* generale larghezza blocco */
.woocommerce-account .entry-content > .woocommerce,
.woocommerce-account .wp-site-blocks .woocommerce {
	max-width: 1040px;
	margin: 0 auto;
}

/* generale larghezza blocco */
.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content {
	float: none;
	width: 100%;
}
/* stili vari griglia */
.woocommerce-account .woocommerce-MyAccount-content {
	margin-top: 0;
}
.woocommerce-account .woocommerce
{
    display: grid;
    /* Definiamo le colonne come prima */
    grid-template-columns: 280px minmax(0, 1fr);
    /* Ma diamo un nome alle aree! */
    grid-template-areas: "sidebar main-content"; 
    gap: 32px;
    align-items: start;
}

/* Assegniamo esplicitamente le classi alle aree nominate */
.woocommerce-MyAccount-navigation {
    grid-area: sidebar;
}
.woocommerce-MyAccount-content {
    grid-area: main-content;
}

/* =========================
   Navigation
   ========================= */

.legis-account-nav {
	background: #ffffff;
	border: 1px solid rgba(15, 23, 42, 0.12);
	border-radius: 4px;
	margin-left: 12px;
	padding: 4px;
	position: sticky;
	top: 48px;
    box-shadow: 0 8px 18px rgba(15, 36, 71, 0.06) !important;
}

.legis-account-nav__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 0px !important;
	margin-bottom: 0 !important;
	line-height: 1.2 !important;
}

.legis-account-nav__list li {
	margin: 0;
    padding-top: 0px !important;
	padding-bottom: 4px !important;
	line-height: 1.2 !important;
}

.legis-account-nav__list a {
	display: block;
	padding: 8px 8px;
	border-radius: 4px;
	text-decoration: none;
	color: var(--wp--preset--color--blue-primary);
	font-weight: 400;
    font-size: var(--wp--preset--font-size--md);
	line-height: 1.2 !important;
	transition: background-color 0.2s ease, color 0.2s ease;
}

.legis-account-nav__list a:hover,
.legis-account-nav__list a:focus {
    background: var(--wp--preset--color--yellow-soft);
    color: var(--wp--preset--color--blue-primary);
}

.legis-account-nav__list li.is-active a {
	background: var(--wp--preset--color--blue-primary);
	color: #ffffff;
}

/* =========================
   Panels / cards
   ========================= */

.legis-account-panel {
	display: grid;
	gap: 24px;
}

.legis-account-panel__header {
	display: grid;
	gap: 10px;
}

.legis-account-panel__title,
.woocommerce-MyAccount-content > form > h2:first-of-type {
    margin-top: 0px !important;
	font-size: var(--wp--preset--font-size--xl);
	line-height: 1.15;
	color: var(--wp--preset--color--gray-text);
}

.legis-account-panel__intro {
	margin: 0;
	color: var(--wp--preset--color--gray-text);
    font-size: var(--wp--preset--font-size--lg);
	line-height: 1.35;
	max-width: 70ch;
}

.legis-account-summary-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 24px;
}

.legis-account-card,
.u-column1.col-1.woocommerce-Address,
.u-column2.col-2.woocommerce-Address,
.woocommerce-account .woocommerce-columns--addresses .woocommerce-column,
.woocommerce-account .wc-block-components-additional-fields-list {
	background: #ffffff;
	border: 1px solid rgba(15, 23, 42, 0.12);
	border-radius: 8px;
	padding: 24px;
    box-shadow: 0 8px 18px rgba(15, 36, 71, 0.06) !important;
}
/* Selettore ad alta specificità per la card dei CFP da completare - Esteso a titoli thank you page */
#wp--skip-link--target .woocommerce-MyAccount-content > section.legis-account-card {
    margin-top: 24px;
}
.legis-account-card__title,
div.u-column1.col-1.woocommerce-Address > header.woocommerce-Address-title.title > h2,
div.u-column2.col-2.woocommerce-Address > header.woocommerce-Address-title.title > h2,
.wc-block-order-confirmation-address-wrapper h2.wp-block-heading,
.wc-block-order-confirmation-additional-fields-wrapper h2.wp-block-heading,
.wc-block-order-confirmation-totals-wrapper > h2.wp-block-heading {
	margin: 0 0 18px !important;
	font-size: var(--wp--preset--font-size--lg) !important;
	line-height: 1.25;
	color: var(--wp--preset--color--blue-primary);
}

.legis-account-data {
	display: grid;
	gap: 14px;
}

.legis-account-data__row {
	display: grid;
	gap: 4px;
	padding-bottom: 14px;
	border-bottom: 1px solid #e6ebf1;
}

.legis-account-data__row:last-child {
	padding-bottom: 0;
	border-bottom: 0;
}

.legis-account-data__label {
	font-size: var(--wp--preset--font-size--md);
	font-weight: 300;
	color: var(--wp--preset--color--gray-text);
}

.legis-account-data__value,
span#select2-billing_state-container.select2-selection__rendered,
span#select2-shipping_state-container.select2-selection__rendered{
	color: var(--wp--preset--color--gray-text);
	font-size: var(--wp--preset--font-size--md);
	font-weight: 400;
}
.legis-account-data__value {
    overflow-wrap: anywhere;
    word-break: break-word;
    min-width: 0;
}
.legis-account-actions {
	margin-top: 24px;
}

.legis-account-button,
.woocommerce-Button.button.wp-element-button[name="save_account_details"],
.button.wp-element-button[name="save_address"] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 0 18px;
	border-radius: 8px;
    background: var(--wp--preset--color--blue-light) !important;
    color: var(--wp--preset--color--blue-primary) !important;
    border: 1px solid var(--wp--preset--color--blue-primary) !important;
	text-decoration: none;
	font-weight: 600 !important;
    font-size: var(--wp--preset--font-size--md);
}

.legis-account-button:hover,
.legis-account-button:focus,
.woocommerce-Button.button.wp-element-button[name="save_account_details"]:hover,
.woocommerce-Button.button.wp-element-button[name="save_account_details"]:focus,
.button.wp-element-button[name="save_address"]:hover,
.button.wp-element-button[name="save_address"]:focus {
  filter: brightness(0.98);
  background: var(--wp--preset--color--yellow-soft) !important;
}
/* solo per bottone salva le modifiche e salva indirizzo */
.woocommerce-Button.button.wp-element-button[name="save_account_details"],
.button.wp-element-button[name="save_address"] {
	margin-top: 12px;
}

.legis-account-quicklinks {
	display: grid;
	gap: 12px;
}

.legis-account-quicklinks__item {
	display: block;
	padding: 16px 18px;
	border: 1px solid #e2e7ee;
	border-radius: 8px;
	text-decoration: none;
	background: var(--wp--preset--color--gray-bg);
}

.legis-account-quicklinks__item:hover,
.legis-account-quicklinks__item:focus {
	background: var(--wp--preset--color--yellow-soft);
	border-color: #d6dde6;
}

.legis-account-quicklinks__title {
	display: block;
	font-weight: 500;
	color: var(--wp--preset--color--gray-text);
	margin-bottom: 2px;
    font-size: var(--wp--preset--font-size--md);
}

.legis-account-quicklinks__text {
	font-weight: 350;
	display: block;
	color: var(--wp--preset--color--gray-text);
	line-height: 1.35;
    font-size: var(--wp--preset--font-size--sm);
}

/* =========================
   Auth shell
   ========================= */

.legis-auth-shell {
    max-width: 1040px; 
    width: 90%;
    display: grid;
    gap: 10px;
}

/* Forza la shell di login a occupare tutto lo spazio orizzontale della griglia */
/* Estendiamo la regola per includere il banner password inviata e il paragrafo di conferma */
.woocommerce-account .legis-auth-shell,
.woocommerce-account .woocommerce-ResetPassword,
.woocommerce-account .wc-block-components-notice-banner,
.woocommerce-account .woocommerce-notices-wrapper,
.woocommerce-account .woocommerce > p {
    grid-column: 1 / -1; /* Forza l'occupazione di tutta la larghezza */
    justify-self: center; /* Centra orizzontalmente */
    width: 100%;
    max-width: 640px;
    margin-left: auto;
    margin-right: auto;
}

/* Centriamo il testo del banner password inviata */
.woocommerce-account .wc-block-components-notice-banner {
    text-align: center;
}
/* stili testo password inviata */
.woocommerce-account .woocommerce > p {
	font-size: var(--wp--preset--font-size--md);
}
/* Opzionale: aggiungi un po' di spazio tra il banner e il testo sottostante */
.woocommerce-account .wc-block-components-notice-banner {
    margin-bottom: 24px !important;
}
/* Nasconde il titolo del post solo nella pagina account e solo se l'utente NON è loggato */
body.woocommerce-account:not(.logged-in) .wp-block-post-title {
    display: none !important;
}

/* Opzionale: se il wrapper del titolo lascia troppo spazio vuoto (margin/padding) */
body.woocommerce-account:not(.logged-in) .wp-block-group.alignfull:has(.wp-block-post-title) {
    padding-top: 0;
    margin-top: 0;
}
/* Rimuove il gap della griglia nella pagina account se l'utente non è loggato */
body.woocommerce-account:not(.logged-in) .woocommerce {
    gap: 0;
}
/* 1. Riduciamo il margine del contenitore principale (main) */
body.woocommerce-account:not(.logged-in) main#wp--skip-link--target {
    margin-top: 0 !important;
}

/* 2. Eliminiamo il padding del wrapper 'alignfull' che avvolge il titolo e il contenuto */
body.woocommerce-account:not(.logged-in) main .wp-block-group.alignfull {
    padding-top: 20px !important; /* Regola a 0 se la vuoi ancora più alta */
}

/* 3. Siccome hai nascosto il titolo, assicuriamoci che non occupi spazio residuo */
body.woocommerce-account:not(.logged-in) .wp-block-post-title {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* 4. Opzionale: togliamo eventuale padding dal wrapper della entry-content */
body.woocommerce-account:not(.logged-in) .entry-content {
    padding-top: 0 !important;
}

.legis-auth-card {
	background: #ffffff;
	border: 1px solid rgba(15, 23, 42, 0.12);
	border-radius: 8px;
	padding: 24px;
	padding-bottom: 6px;
	box-shadow: 0 8px 18px rgba(15, 36, 71, 0.06);
}

.legis-auth-card .woocommerce-form {
    border: none !important;
    padding: 0px !important;
}

.legis-auth-card__header {
	margin-bottom: 2px;
}

.legis-auth-card__title {
	margin: 0 0 8px;
	color: var(--wp--preset--color--blue-primary);
	font-size: var(--wp--preset--font-size--xl);
	line-height: 1.15;
}

/* Rimuove lo spazio extra generato dal break di Cloudflare */
.cf-turnstile-br {
    display: none !important;
}

/* campi di testo e label (per tutto) */
.legis-auth-card__intro {
	margin: 0;
	color: var(--wp--preset--color--gray-text);
	font-size: var(--wp--preset--font-size--lg);
	line-height: 1.35;
}

.legis-auth-card label,
.woocommerce-ResetPassword label,
.woocommerce-MyAccount-content label {
	display: inline-block;
	margin-bottom: 0px !important;
	font-weight: 300 !important;
	font-size: var(--wp--preset--font-size--md);
	color: var(--wp--preset--color--gray-text);
}

.input-text {
	width: 100%;
	min-height: 36px;
	border: 1px solid rgba(15, 23, 42, 0.12) !important;
	border-radius: 8px;
	padding: 12px 12px !important;
	background: #fff;
	font-size: var(--wp--preset--font-size--md) !important;
}

.input-text:focus {
	outline: none;
	border-color: #12344d;
	box-shadow: 0 0 0 1px var(--wp--preset--color--blue-light);
}

.form-row {
	margin-bottom: 16px;
}

/* bottone */
.legis-auth-card .woocommerce-button,
.legis-auth-card button.button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	min-width: 230px;
	padding: 0 18px;
	border: 0;
	border-radius: 6px;
	background: var(--wp--preset--color--blue-primary);
	color: #ffffff;
	font-weight: 500;
    font-size: var(--wp--preset--font-size--md);
	cursor: pointer;
}

.legis-auth-card .woocommerce-button:hover,
.legis-auth-card .woocommerce-button:focus,
.legis-auth-card button.button:hover,
.legis-auth-card button.button:focus {
	background: var(--wp--preset--color--green-success);
    border: 1px solid var(--wp--preset--color--blue-primary);
	color: #ffffff;
}

.legis-auth-card__actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between !important;
	gap: 12px;
	margin-top: 4px !important;
}

.legis-auth-card .lost_password {
	margin-top: 12px;
    text-align: center !important;
}

.legis-auth-card .lost_password a {
	color: var(--wp--preset--color--blue-primary);
	font-weight: 350;
    font-size: var(--wp--preset--font-size--md);
}

/* stili label remember me */
/* Allinea e distanzia checkbox e testo */
.woocommerce-form-login__rememberme {
    display: flex !important;
    align-items: center !important; /* Centra verticalmente il quadratino rispetto al testo */
    gap: 10px !important;          /* Regola qui la distanza desiderata */
    cursor: pointer;
}

/* Rimuove eventuali margini di default che potrebbero sballare la centratura */
.woocommerce-form-login__rememberme input[type="checkbox"] {
    margin: 0 !important;
}
/* Rende il testo "Ricordami" più piccolo */
.woocommerce-form-login__rememberme span {
    font-size: var(--wp--preset--font-size--md) !important;
}
.legis-auth-toggle {
	padding-top: 2px;
	margin-top: 2px;
}

.legis-auth-toggle__text {
	margin: 0;
	color: var(--wp--preset--color--gray-text);
    text-align: center !important;
}

.legis-auth-toggle__button {
	background: transparent;
	border: 0;
	padding: 0;
	margin: 0 0 0 4px;
	color: var(--wp--preset--color--blue-primary);
	font-weight: 450;
	text-decoration: none;
	cursor: pointer;
}

/* Nasconde entrambi i pannelli della registrazione quando hanno l'attributo hidden */
.legis-auth-card--login[hidden],
.legis-auth-card--register[hidden] {
    display: none !important;
}

/* Notices */
.woocommerce-account .woocommerce-error,
.woocommerce-account .woocommerce-info,
.woocommerce-account .woocommerce-message {
	border-radius: 14px;
	padding: 16px 18px;
	margin-bottom: 20px;
}

/* Aggiunge spazio sopra il widget di sicurezza nel form di reset */
.cf-turnstile {
    margin-top: 16px !important;
}
/* compatta gli spazi del form di login */
.legis-auth-shell .woocommerce-form-login,
.woocommerce-form-register {
    margin-top: 12px !important;    /* Spazio sopra il form */
    margin-bottom: 2px !important; /* Spazio sotto il form */
    padding-top: 6px !important;    /* Spazio sopra il form */
    padding-bottom: 2px !important; /* Spazio sotto il form */
}
/* Selettore specifico per il contenitore del bottone di registrazione */
.legis-auth-card--register .form-row button[name="register"] {
    display: flex !important;
    justify-content: center !important; /* Centra orizzontalmente */
    width: 100% !important;
    float: none !important; /* Rimuove eventuali float di WooCommerce */
    clear: both;
}
/* testo privacy */
.woocommerce-privacy-policy-text p {
    font-size: var(--wp--preset--font-size--sm);
    text-align: left !important;
	padding-top: 0px !important;
	margin-bottom: 12px !important;
}
/* Link alla privacy policy */
.woocommerce-privacy-policy-link {
    color: var(--wp--preset--color--blue-primary) !important;
    text-decoration: none !important;
    font-weight: 400;
}

/* =========================
   Lost / Reset password
   ========================= */
.woocommerce-account .woocommerce-ResetPassword {
    background: #ffffff;
    border: 1px solid rgba(15, 23, 42, 0.12);
    border-radius: 8px;
    padding: 28px;
    box-shadow: 0 8px 18px rgba(15, 36, 71, 0.06);
}
/* Portiamo tutto al 100% di larghezza nella pagina di reset */
.woocommerce-ResetPassword .form-row-first,
.woocommerce-ResetPassword .form-row-last,
.woocommerce-ResetPassword .form-row-wide,
.woocommerce-ResetPassword .form-row {
    width: 100% !important;
    float: none !important;
    margin-right: 0 !important;
    display: block !important;
}

/* Sistemiamo il testo del paragrafo descrittivo */
.woocommerce-ResetPassword p:first-of-type {
    width: 100% !important;
    max-width: 100% !important;
    text-align: left !important;
}
.woocommerce-ResetPassword label {
    text-align: left !important;
    justify-content: flex-start !important;
    word-spacing: normal !important;
    letter-spacing: normal !important;
    font-weight: 400;
}
.woocommerce-ResetPassword p {
    font-size: var(--wp--preset--font-size--lg);
}
.woocommerce-ResetPassword .button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	min-width: 230px;
	padding: 0 18px;
	border: 0;
	border-radius: 6px;
	background: var(--wp--preset--color--blue-primary);
	color: #ffffff;
	font-weight: 500;
    font-size: var(--wp--preset--font-size--md);
	cursor: pointer;
}
.woocommerce-ResetPassword .button:hover,
.woocommerce-ResetPassword .button:focus {
	background: var(--wp--preset--color--green-success);
    border: 1px solid var(--wp--preset--color--blue-primary);
	color: #ffffff;
}
/* Centra il contenitore del bottone nel form di reset */
.woocommerce-ResetPassword .form-row:last-of-type {
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Assicuriamoci che il bottone non sia width: 100% se lo vuoi centrato e compatto */
.woocommerce-ResetPassword .button {
    width: auto !important;
    min-width: 200px; /* Opzionale: per dargli un po' di importanza */
}

/* =========================
   Ridefinizione layout cards indirizzi
   ========================= */
/* 0. Sistema altezza uguale e margini */
.woocommerce-Addresses {
	display: flex;
    align-items: stretch;
}
.u-column1.col-1.woocommerce-Address {
	margin-right: 24px !important;
}
/* 1. Rendiamo la card un contenitore Flex */
.woocommerce-Address {
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
}

/* 2. "Scomponiamo" l'header per far sì che H2 e Link diventino figli diretti della card */
.woocommerce-Address-title {
    display: contents !important;
}

/* 3. Gestiamo l'ordine visivo degli elementi */
.woocommerce-Address h2 {
    order: 1 !important;
    margin-top: 0 !important;
}
.woocommerce-Address address {
    order: 2 !important;
    flex-grow: 1 !important; /* Questo elemento mangia tutto lo spazio centrale */
}
.woocommerce-Address .edit {
    order: 3 !important;
    margin-top: auto !important; /* Spinge il link in fondo */
    float: none !important;      /* Rimuove eventuali float di WooCommerce */
    text-align: right;
	display: inline-block !important;
}

/* =========================
   Storico ordini + Thank you page
   ========================= */

.woocommerce-account .woocommerce-orders-table,
.woocommerce-account .woocommerce-table--order-downloads,
.woocommerce-account .woocommerce-table--order-details,
.wc-block-order-confirmation-totals__table {
    margin-top: 12px !important;
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	background: #ffffff;
	border: 1px solid rgba(15, 23, 42, 0.12);
	border-radius: 8px;
	box-shadow: 0 8px 18px rgba(15, 36, 71, 0.06);
	overflow: hidden;
}

.woocommerce-account .woocommerce-orders-table thead th,
.woocommerce-account .woocommerce-table--order-downloads thead th,
.woocommerce-account .woocommerce-table--order-details thead th,
.wc-block-order-confirmation-totals__table thead th {
	padding: 4px 6px !important;
	border-bottom: 1px solid #e6ebf1;
	font-size: var(--wp--preset--font-size--md) !important;
	font-weight: 400;
	color: var(--wp--preset--color--gray-text);
	background: var(--wp--preset--color--yellow-soft) !important;
	text-align: center !important;
}

.woocommerce-account .woocommerce-orders-table tbody th,
.woocommerce-account .woocommerce-orders-table tbody td,
.woocommerce-account .woocommerce-table--order-downloads tbody th,
.woocommerce-account .woocommerce-table--order-downloads tbody td,
.wc-block-order-confirmation-totals__table tbody th,
.wc-block-order-confirmation-totals__table tbody td {
	border-bottom: 1px solid #e6ebf1;
	font-size: var(--wp--preset--font-size--md);
    line-height: 1.2;
	color: var(--wp--preset--color--gray-text);
	vertical-align: middle;
	text-align: center !important;
	font-weight: 350;
}

.woocommerce-account .woocommerce-table--order-details,
.wc-block-order-confirmation-totals__table {
    table-layout: fixed;
}
.woocommerce-account .woocommerce-table--order-details th.product-name,
.woocommerce-account .woocommerce-table--order-details td.product-name,
.wc-block-order-confirmation-totals__table th.product-name,
.wc-block-order-confirmation-totals__table td.product-name {
    width: 50%;
}
.woocommerce-account .woocommerce-table--order-details th.product-total,
.woocommerce-account .woocommerce-table--order-details td.product-total,
.wc-block-order-confirmation-totals__table th.product-total,
.wc-block-order-confirmation-totals__table td.product-total {
    width: 50%;
}

.woocommerce-account .woocommerce-table--order-details tbody th,
.woocommerce-account .woocommerce-table--order-details tbody td,
.woocommerce-account .woocommerce-table--order-details tfoot th,
.woocommerce-account .woocommerce-table--order-details tfoot td,
.wc-block-order-confirmation-totals__table tfoot th,
.wc-block-order-confirmation-totals__table tfoot td {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
	border-bottom: 1px solid #e6ebf1;
	font-size: var(--wp--preset--font-size--md) !important;
    line-height: 1.2;
	color: var(--wp--preset--color--gray-text);
	vertical-align: middle !important;
	text-align: center !important;
	font-weight: 350 !important;
}

.woocommerce-account .woocommerce-orders-table tbody tr:last-child th,
.woocommerce-account .woocommerce-orders-table tbody tr:last-child td,
.woocommerce-account .woocommerce-table--order-downloads tbody tr:last-child th,
.woocommerce-account .woocommerce-table--order-downloads tbody tr:last-child td {
	border-bottom: 0;
}

.woocommerce-account .woocommerce-orders-table a:not(.button),
.woocommerce-account .woocommerce-table--order-downloads a:not(.button) {
	color: var(--wp--preset--color--blue-primary);
	text-decoration: none;
	font-weight: 400;
}

.woocommerce-account .woocommerce-orders-table .button,
.woocommerce-account .woocommerce-table--order-downloads .button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: var(--wp--preset--color--blue-primary) !important;
	text-decoration: none;
	font-weight: 400 !important;
	font-size: var(--wp--preset--font-size--md);
}

.woocommerce-account .woocommerce-orders-table .button:hover,
.woocommerce-orders-table__cell-order-number a:hover,
.woocommerce-account .woocommerce-table--order-downloads .button:hover,
.woocommerce-account .woocommerce-table--order-downloads .download-product a:hover {
	color: var(--wp--preset--color--blue-hover) !important;
}
 /* il padding del bottone dà padding a tutta la riga */
.woocommerce-orders-table__cell-order-actions a.button.view,
.woocommerce-account .woocommerce-table--order-downloads td.download-file a.button {
    margin: 0 !important;
    padding-top: 12px !important;
    padding-bottom: 12px !important;
    display: inline-block !important;
    line-height: 1 !important;
}

/*bottoni Successivo/Precedente elenco ordini */
/* 1. Contenitore principale */
.woocommerce-pagination--without-numbers {
    display: flex;
    justify-content: center;
    gap: 48px;
    margin-top: 12px;
    padding: 12px 0;
}
/* 2. Stile base dei bottoni */
.woocommerce-pagination--without-numbers .woocommerce-button {
    appearance: none;
    background-color: transparent !important; 
    border: 1px solid rgba(15, 23, 42, 0.12) !important;   
    color: var(--wp--preset--color--gray-text) !important; 
    padding: 10px 24px !important;
    font-size: var(--wp--preset--font-size--sm);
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    text-decoration: none !important;
    border-radius: 8px;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    display: inline-flex;
    align-items: center;
}
/* 3. Effetto Hover */
.woocommerce-pagination--without-numbers .woocommerce-button:hover {
    background-color: var(--wp--preset--color--yellow-soft) !important; 
    transform: translateY(-1px);
}
/* 4. Aggiunta di frecce simboliche via CSS */
.woocommerce-button--previous::before {
    content: '←';
    margin-right: 8px;
    font-family: serif;
}
.woocommerce-button--next::after {
    content: '→';
    margin-left: 8px;
    font-family: serif;
}

/* titolo pagina conferma ordine */
.wc-block-order-confirmation-status h1 {
    margin-top: 48px !important;
    margin-bottom: 0px !important;
}
/* testo subito sotto */
.wc-block-order-confirmation-status p {
	font-size: var(--wp--preset--font-size--xl);
    margin-bottom: 24px !important;
}
/* =========================
   Riepilogo ordine
   ========================= */

/* testo intro ordine */
.woocommerce-account .woocommerce-MyAccount-content > p:first-of-type {
	font-size: var(--wp--preset--font-size--md);
	color: var(--wp--preset--color--gray-text);
	line-height: 1.4;
	margin-bottom: 20px;
}

.woocommerce-account .woocommerce-MyAccount-content > p:first-of-type mark {
	background: transparent;
	color: var(--wp--preset--color--blue-primary);
	font-weight: 500;
}

/* titoli sezione */
.woocommerce-account .woocommerce-order-details__title,
.woocommerce-account .woocommerce-column__title,
.woocommerce-account .wc-block-order-confirmation-additional-fields-wrapper > h2,
.woocommerce-account .woocommerce-order-downloads__title {
	margin: 0px !important;
	font-size: var(--wp--preset--font-size--lg) !important;
	line-height: 1.25;
	color: var(--wp--preset--color--gray-text);
	font-weight: 500 !important;
}

/* tabella dettaglio ordine */
.woocommerce-account .woocommerce-order-details .shop_table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	background: #ffffff;
	border: 1px solid rgba(15, 23, 42, 0.12);
	border-radius: 8px;
	box-shadow: 0 8px 18px rgba(15, 36, 71, 0.06);
	overflow: hidden;
	margin-bottom: 24px;
}

.woocommerce-account .woocommerce-order-details .shop_table thead th {
	padding: 14px 16px;
	border-bottom: 1px solid #e6ebf1;
	background: var(--wp--preset--color--gray-bg);
	font-size: var(--wp--preset--font-size--sm);
	font-weight: 500;
	color: var(--wp--preset--color--gray-text);
	text-align: left;
}

.woocommerce-account .woocommerce-order-details .shop_table tbody td,
.woocommerce-account .woocommerce-order-details .shop_table tfoot th,
.woocommerce-account .woocommerce-order-details .shop_table tfoot td {
	padding: 16px;
	border-bottom: 1px solid #e6ebf1;
	font-size: var(--wp--preset--font-size--md);
	color: var(--wp--preset--color--gray-text);
	vertical-align: top;
}
.woocommerce-account .woocommerce-order-details .shop_table tbody tr:last-child td,
.woocommerce-account .woocommerce-order-details .shop_table tfoot tr:last-child th,
.woocommerce-account .woocommerce-order-details .shop_table tfoot tr:last-child td {
	border-bottom: 0;
}
.woocommerce-account .woocommerce-order-details .product-name a {
	color: var(--wp--preset--color--blue-primary);
	text-decoration: none;
	font-weight: 400;
}
.woocommerce-account .woocommerce-order-details .product-quantity {
	font-weight: 400;
	color: var(--wp--preset--color--gray-text);
}
.woocommerce-account .woocommerce-order-details tfoot th {
	font-weight: 500;
	width: 40%;
}

dl.wc-block-components-additional-fields-list > dt {
	font-weight: 350 !important;
}

/* spaziatura tra titolo e blocco indirizzi */
.woocommerce-account .woocommerce-customer-details > address {
    margin-top: 12px;
    margin-bottom: 24px;
}

/* spaziatura tra titolo e blocco info aggiuntive */
.woocommerce-account .wc-block-order-confirmation-additional-fields-wrapper > h2 {
    margin-bottom: 12px !important;
}

/* =========================================================
   Riepilogo ordine - blocchi indirizzi
   Caso 1 = solo fatturazione, nessun wrapper colonne
   Caso 2 = fatturazione + spedizione, reset wrapper esterni
   ========================================================= */

/* ---------- CASO 1: nessuna sezione colonne, stile direttamente su address ---------- */
.woocommerce-account .woocommerce-MyAccount-content
> .woocommerce-customer-details:not(:has(> .woocommerce-columns--addresses))
> address {
    display: block;
    margin-top: 12px;
    background: #ffffff;
    border: 1px solid rgba(15, 23, 42, 0.12);
    border-radius: 8px;
    padding: 24px;
    box-shadow: 0 8px 18px rgba(15, 36, 71, 0.06) !important;
}


/* ---------- CASO 2: togli stile dai wrapper esterni ---------- */
.woocommerce-account .woocommerce-MyAccount-content
> .woocommerce-customer-details
> .woocommerce-columns.woocommerce-columns--2.woocommerce-columns--addresses.col2-set.addresses
> .woocommerce-column {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
}

/* ---------- CASO 2: applica lo stile card al wrapper interno vero, cioe address ---------- */
.woocommerce-account .woocommerce-MyAccount-content
> .woocommerce-customer-details
> .woocommerce-columns.woocommerce-columns--2.woocommerce-columns--addresses.col2-set.addresses
> .woocommerce-column
> address {
    display: block;
    margin-top: 12px;
    background: #ffffff;
    border: 1px solid rgba(15, 23, 42, 0.12);
    border-radius: 8px;
    padding: 24px;
    box-shadow: 0 8px 18px rgba(15, 36, 71, 0.06) !important;
}
/* stessa altezza colonne indirizzi - caso 2 */
.woocommerce-account .woocommerce-customer-details
> .woocommerce-columns--addresses {
    display: flex;
    align-items: stretch;
}
.woocommerce-account .woocommerce-columns--addresses > .woocommerce-column {
    flex: 1;
    display: flex;
    flex-direction: column;
}
.woocommerce-account .woocommerce-columns--addresses > .woocommerce-column > address {
    flex-grow: 1;
}
.woocommerce-account .woocommerce-MyAccount-content
> .woocommerce-customer-details
> .woocommerce-columns.woocommerce-columns--2.woocommerce-columns--addresses.col2-set.addresses
> .woocommerce-column.woocommerce-column--1.woocommerce-column--billing-address.col-1 {
    margin-right: 24px !important;
}
/* =========================================================
   Riepilogo ordine - telefono / email indirizzi
   ========================================================= */
.woocommerce-account .woocommerce-customer-details address .woocommerce-customer-details--phone,
.woocommerce-account .woocommerce-customer-details address .woocommerce-customer-details--email {
    position: relative;
    margin: 4px 0 0 !important;
    padding: 0 0 0 60px !important;
    border: 0 !important;
    font-family: var(--wp--preset--font-family--sans) !important;
    font-size: var(--wp--preset--font-size--md);
    line-height: 1.35;
    font-weight: 300;
    color: var(--wp--preset--color--gray-text);
    display: block !important;
    text-indent: 0 !important;
}
/* separatore sopra il telefono */
.woocommerce-account .woocommerce-customer-details address .woocommerce-customer-details--phone {
    margin-top: 9px !important;
    padding-top: 12px !important;
    border-top: 1px solid #e6ebf1 !important;
}
/* label fisse */
.woocommerce-account .woocommerce-customer-details address .woocommerce-customer-details--phone::before,
.woocommerce-account .woocommerce-customer-details address .woocommerce-customer-details--email::before {
    position: absolute;
    left: 0;
    top: 0;
    width: 60px;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
    font-family: var(--wp--preset--font-family--sans) !important;
    font-size: inherit !important;
    line-height: inherit !important;
    font-weight: 400 !important;
    color: var(--wp--preset--color--gray-text) !important;
    white-space: nowrap;
}
.woocommerce-account .woocommerce-customer-details address .woocommerce-customer-details--phone::before {
    content: "Tel.:";
    top: 12px; /* per allinearsi al padding-top del telefono */
}
.woocommerce-account .woocommerce-customer-details address .woocommerce-customer-details--email::before {
    content: "Email:";
}
/* email lunghe */
.woocommerce-account .woocommerce-customer-details address .woocommerce-customer-details--email {
    overflow-wrap: anywhere;
}

/* blocco dati fiscali */
.wc-block-order-confirmation-additional-fields-wrapper.lta-view-order-fiscal-meta {
    margin-bottom: 24px !important; /* Regola lo spazio sotto il blocco */
}
/* Distanza tra le coppie di dati */
.lta-view-order-fiscal-meta dl dt, 
.lta-view-order-fiscal-meta dl dd {
    margin-bottom: 8px !important; /* Aumenta per distanziare le righe */
    line-height: 1.4 !important;    /* Regola l'altezza del testo stesso */
    padding-top: 4px !important;
    padding-bottom: 4px !important;
    text-align: center !important;
}

.lta-view-order-fiscal-meta .wc-block-components-additional-fields-list {
    display: grid !important;
    grid-template-columns: 50% 50% !important; /* Forza il 50% esatto per colonna */
}
/* =========================
   Varie
   ========================= */
/* Bordo selettore provincia nella modifica indirizzi */
span.select2-selection--single.select2-selection[role="combobox"] {
    border: 1px solid rgba(15, 23, 42, 0.12);
}
.country_to_state.country_to_state--single {
	font-weight: 400 !important;
    font-size: var(--wp--preset--font-size--md) !important;
}

/* stile testo placeholders nei form modifica dati account e indirizzi */
.woocommerce input.input-text::placeholder,
.woocommerce textarea.input-text::placeholder {
	font-weight: 300 !important;
}

/* card con fondino per form modifica dati account e indirizzi */
.woocommerce-MyAccount-content > form[method="post"] {
	background: var(--wp--preset--color--yellow-soft);
	border: 1px solid rgba(15, 23, 42, 0.12);
	border-radius: 8px;
    box-shadow: 0 8px 18px rgba(15, 36, 71, 0.06) !important;
	padding: 24px;
}
/* Colpisce il testo digitato negli input e nelle select dei form modifica dati account e indirizzi */
.woocommerce-MyAccount-content form .input-text,
.woocommerce-MyAccount-content form .select2-selection__rendered {
    font-weight: 350 !important;
}
/* NASCONDI BLOCCO "ORDINA DI NUOVO" nel summary dell'ordine 
   Elimina il pulsante e il relativo contenitore <p> 
   dalla pagina di riepilogo ordine di WooCommerce.
*/
p.order-again {
    display: none !important;
}
/* Sistema i testi del banner di errore/alert quando ci stanno liste */
.wc-block-components-notice-banner.is-error .wc-block-components-notice-banner__summary {
    font-size: var(--wp--preset--font-size--sm) !important;
    font-weight: 500 !important;
}
.wc-block-components-notice-banner.is-error .wc-block-components-notice-banner__content ul li {
    font-size: var(--wp--preset--font-size--sm) !important

}
/* =========================
   Trustblock importato
   ========================= */
/* 1. Riduzione spazio superiore (area arancione) */
div#legis-login-panel ~ .legis-trustbar, 
.legis-auth-shell .wp-block-group.legis-trustbar {
    margin-top: var(--wp--preset--spacing--md) !important;
    margin-bottom: var(--wp--preset--spacing--xs) !important;
}

/* 2. Correzione allineamento testo */
.legis-trustbar p {
    text-align: left !important;
    text-justify: none !important;
    margin-left: 0 !important;
}

/* =========================================================
   Sprint 2 - Fatturazione e spedizione + dati fiscali
   Da aggiungere in coda a account.css
   ========================================================= */

.legis-address-stack {
	display: grid;
	gap: 24px;
}

.legis-address-card {
	background: #ffffff;
	border: 1px solid rgba(15, 23, 42, 0.12);
	border-radius: 8px;
	padding: 24px;
	box-shadow: 0 8px 18px rgba(15, 36, 71, 0.06);
}

.legis-address-card__head {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 20px;
	margin-bottom: 16px;
}

.legis-address-card__title {
	margin: 0 0 6px;
	font-size: var(--wp--preset--font-size--lg);
	line-height: 1.2;
	color: var(--wp--preset--color--blue-primary);
}

.legis-address-card__text {
	margin: 0;
	font-size: var(--wp--preset--font-size--md);
	line-height: 1.35;
	color: var(--wp--preset--color--gray-text);
	font-weight: 300;
}

.legis-address-card__status {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 4px 5px;
	border-radius: 4px;
	font-size: var(--wp--preset--font-size--sm);
	font-weight: 500;
	white-space: nowrap;
	border: 1px solid transparent;
}

.legis-address-card__status.is-complete {
	background: #ebf6ef;
	color: #17603a;
	border-color: rgba(23, 96, 58, 0.18);
}

.legis-address-card__status.is-incomplete {
	background: #fff5e8;
	color: #9a4d00;
	border-color: rgba(154, 77, 0, 0.18);
}

.legis-address-card__summary {
	color: var(--wp--preset--color--gray-text);
}

.legis-address-card__summary address,
.legis-address-summary {
	font-style: normal;
	line-height: 1.45;
	font-size: var(--wp--preset--font-size--md);
	color: var(--wp--preset--color--gray-text);
}

.legis-address-summary__meta {
	margin-top: 14px;
	padding-top: 14px;
	border-top: 1px solid #e6ebf1;
	display: grid;

}

.legis-address-summary__meta-row,
.legis-fiscal-summary__row {
	display: grid;
	grid-template-columns: 180px minmax(0, 1fr);
	gap: 12px;
	align-items: start;
}

.legis-address-summary__meta-label,
.legis-fiscal-summary__label {
	font-size: var(--wp--preset--font-size--sm);
	font-weight: 500;
	color: var(--wp--preset--color--gray-text);
}

.legis-address-summary__meta-value,
.legis-fiscal-summary__value {
	font-size: var(--wp--preset--font-size--md);
	font-weight: 350;
	color: var(--wp--preset--color--gray-text);
}

.legis-account-empty {
	margin: 0;
	font-size: var(--wp--preset--font-size--md);
	line-height: 1.4;
	color: var(--wp--preset--color--gray-text);
	font-weight: 300;
}

.legis-account-toggle {
	margin-top: 18px;
	padding-top: 18px;
	border-top: 1px solid #e6ebf1;
}

.legis-account-toggle__summary {
	list-style: none;
	cursor: pointer;
	font-size: var(--wp--preset--font-size--md);
	font-weight: 500;
	color: var(--wp--preset--color--blue-primary);
}

.legis-account-toggle__summary::-webkit-details-marker {
	display: none;
}

.legis-account-toggle__summary::after {
	content: '+';
	float: right;
	font-size: 1.2em;
	line-height: 1;
}

.legis-account-toggle[open] .legis-account-toggle__summary::after {
	content: '−';
}

.legis-account-toggle__content {
	margin-top: 18px;
}

.legis-account-form {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	column-gap: 20px;
}

.legis-account-form .form-row-first,
.legis-account-form .form-row-last {
	width: 100% !important;
	float: none;
}

.legis-account-form .form-row-wide,
.legis-account-form .woocommerce-input-wrapper,
.legis-account-form__actions,
.legis-fiscal-help,
.legis-fiscal-row--subject-type,
.legis-fiscal-row--professional-category,
.legis-fiscal-row--fe-requested,
.legis-fiscal-row--ipa {
	grid-column: 1 / -1;
}

.legis-account-form select,
.legis-account-form .select2-selection--single {
	width: 100%;
	min-height: 36px;
	border: 1px solid rgba(15, 23, 42, 0.12) !important;
	border-radius: 8px !important;
	padding: 4px 10px !important;
	background: #fff;
	font-size: var(--wp--preset--font-size--md) !important;
	color: var(--wp--preset--color--gray-text) !important;
}

.legis-account-form .select2-selection__rendered {
	line-height: 36px !important;
	padding-left: 0 !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

.legis-fiscal-summary {
	display: grid;
}

.legis-fiscal-help {
	margin: 4px 0 0;
	font-size: var(--wp--preset--font-size--sm);
	line-height: 1.4;
	color: var(--wp--preset--color--gray-text);
	font-weight: 300;
}

.legis-fiscal-row--fe-requested label {
	display: flex !important;
	align-items: center;
	gap: 10px;
}

label.woocommerce-form__label-for-checkbox.checkbox[for="fe_requested"] span {
    display: inline-block;
    margin-left: 24px !important;
}

/* Nasconde la dicitura facoltativo nei campi del form fiscale Legis */
.legis-fiscal-form .optional {
    display: none !important;
}

/* Opzionale: stile per l'asterisco che aggiungeremo via JS */
.legis-fiscal-form .required {
    color: #d63638; /* Rosso WooCommerce standard */
    text-decoration: none;
    border-bottom: none;
    font-weight: 700;
}



/* -------------------------
   Sprint 3 - STILI CFP MANAGER
------------------------- */

.legis-cfp-stack {
	display: grid;
	gap: 24px;
}

.legis-cfp-card {
	background: #ffffff;
	border: 1px solid rgba(15, 23, 42, 0.12);
	border-radius: 8px;
	padding: 24px;
	box-shadow: 0 8px 18px rgba(15, 36, 71, 0.06);
}

.legis-cfp-card__head {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 16px;
	margin-bottom: 14px;
}

.legis-cfp-card__title {
	margin: 0 0 4px;
	font-size: var(--wp--preset--font-size--lg);
	line-height: 1.2;
	color: var(--wp--preset--color--blue-primary);
}

.legis-cfp-card__text,
.legis-cfp-card__meta,
.legis-cfp-empty,
.legis-cfp-helper,
.legis-cfp-participant__meta,
.legis-cfp-cta__text {
	margin: 0;
	font-size: var(--wp--preset--font-size--md);
	line-height: 1.4;
	color: var(--wp--preset--color--gray-text);
	font-weight: 300;
}

.legis-cfp-order-item__meta {
	margin-bottom: 4px;
	font-size: var(--wp--preset--font-size--md);
	line-height: 1.4;
	color: var(--wp--preset--color--gray-text);
	font-weight: 300;
}
.legis-cfp-card__status,
.legis-cfp-inline-status {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 4px 8px;
	border-radius: 4px;
	font-size: var(--wp--preset--font-size--sm);
	font-weight: 500;
	border: 1px solid transparent;
	white-space: nowrap;
}

.legis-cfp-card__status.is-complete,
.legis-cfp-inline-status.is-complete {
	background: #ebf6ef;
	color: #17603a;
	border-color: rgba(23, 96, 58, 0.18);
}

.legis-cfp-card__status.is-pending,
.legis-cfp-inline-status.is-pending {
	background: #fff5e8;
	color: #9a4d00;
	border-color: rgba(154, 77, 0, 0.18);
}
/* Colpisce il pulsante CTA "Completa dati CFP nella lista ordini" con alta specificità */
.woocommerce-account a.wp-element-button.button.lta-cfp {
    margin-bottom: 0 !important;
    padding-top: 0 !important;
}

.legis-cfp-summary {
	display: grid;
	gap: 0px;
}

.legis-cfp-summary__row {
	display: grid;
	grid-template-columns: 180px minmax(0, 1fr);
	gap: 12px;
}

.legis-cfp-summary__label {
	font-size: var(--wp--preset--font-size--sm);
	font-weight: 500;
	color: var(--wp--preset--color--gray-text);
}

.legis-cfp-summary__value {
	font-size: var(--wp--preset--font-size--md);
	font-weight: 350;
	color: var(--wp--preset--color--gray-text);
}

.legis-cfp-toggle {
	margin-top: 18px;
	padding-top: 18px;
	border-top: 1px solid #e6ebf1;
}

.legis-cfp-toggle__summary {
	list-style: none;
	cursor: pointer;
	font-size: var(--wp--preset--font-size--md);
	font-weight: 500;
	color: var(--wp--preset--color--blue-primary);
}

.legis-cfp-toggle__summary::-webkit-details-marker {
	display: none;
}

.legis-cfp-toggle__summary::after {
	content: '+';
	float: right;
	font-size: 1.2em;
	line-height: 1;
}

.legis-cfp-toggle[open] .legis-cfp-toggle__summary::after {
	content: '−';
}

.legis-cfp-toggle__content {
	margin-top: 18px;
}

.legis-cfp-order-items,
.legis-cfp-participants {
	display: grid;
	gap: 16px;
}

.legis-cfp-order-item {
	padding: 16px;
	border: 1px solid rgba(15, 23, 42, 0.10);
	border-radius: 8px;
	background: #fff;
}

.legis-cfp-order-item__title,
.legis-cfp-participant__title {
	margin: 0 0 6px;
	font-size: var(--wp--preset--font-size--md);
	font-weight: 500;
	color: var(--wp--preset--color--gray-text);
}

.legis-cfp-account-form {
	display: grid;
	gap: 18px;
}

.legis-cfp-participant {
	padding: 16px;
	border: 1px solid rgba(15, 23, 42, 0.10);
	border-radius: 8px;
	background: var(--wp--preset--color--yellow-soft);
}

.legis-cfp-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px 20px;
	margin-top: 12px;
}

.legis-cfp-field {
	min-width: 0;
}

.legis-cfp-field label {
	display: inline-block;
	margin-bottom: 0 !important;
	font-weight: 300 !important;
	font-size: var(--wp--preset--font-size--md);
	color: var(--wp--preset--color--gray-text);
}

.legis-cfp-field input {
	width: 100%;
	min-height: 36px;
	border: 1px solid rgba(15, 23, 42, 0.12) !important;
	border-radius: 8px;
	padding: 12px 12px !important;
	background: #fff;
	font-size: var(--wp--preset--font-size--md) !important;
	box-sizing: border-box;
}

.legis-cfp-field input:focus {
	outline: none;
	border-color: #12344d;
	box-shadow: 0 0 0 1px var(--wp--preset--color--blue-light);
}

.legis-cfp-actions {
	display: flex;
	justify-content: flex-start;
	gap: 12px;
	margin-top: 12px;
}

.legis-cfp-link {
	color: var(--wp--preset--color--blue-primary);
	text-decoration: none;
	font-weight: 400;
}

.legis-cfp-view-order-cta {
	margin-top: 18px;
	padding: 16px 18px;
	border: 1px solid rgba(15, 23, 42, 0.12);
	border-radius: 8px;
	background: #fff;
	box-shadow: 0 8px 18px rgba(15, 36, 71, 0.06);
}

.legis-cfp-view-order-cta__actions {
	margin-top: 12px;
}

/* =========================
   Thank you / order-received
   Riepilogo principale ordine
   ========================= */

body.woocommerce-order-received .wp-block-woocommerce-order-confirmation-summary.wc-block-order-confirmation-summary {
	margin-top: 12px;
}

body.woocommerce-order-received .wp-block-woocommerce-order-confirmation-summary .wc-block-order-confirmation-summary-list {
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
	display: grid !important;
	grid-template-columns: 0.7fr 1fr 0.9fr 1.65fr 0.75fr;
	width: 100%;
	background: #ffffff;
	border: 1px solid rgba(15, 23, 42, 0.12);
	border-radius: 8px;
	box-shadow: 0 8px 18px rgba(15, 36, 71, 0.06);
	overflow: hidden;
	gap: 0 !important;
	column-gap: 0 !important;
	row-gap: 0 !important;
}

body.woocommerce-order-received .wp-block-woocommerce-order-confirmation-summary .wc-block-order-confirmation-summary-list-item {
	margin: 0 !important;
	padding: 0 !important;
	min-width: 0;
    display: block !important;
	flex-direction: column;
	border-top: 0 !important;
	border-right: 1px solid #e6ebf1;
}

body.woocommerce-order-received .wp-block-woocommerce-order-confirmation-summary .wc-block-order-confirmation-summary-list-item:last-child {
	border-right: 0;
}

body.woocommerce-order-received .wp-block-woocommerce-order-confirmation-summary .wc-block-order-confirmation-summary-list-item__key {
	display: block;
	width: 100%;
	padding: 4px 6px;
	border-bottom: 1px solid #e6ebf1;
	background: var(--wp--preset--color--yellow-soft);
	color: var(--wp--preset--color--gray-text);
	font-size: var(--wp--preset--font-size--md);
	font-weight: 400;
	line-height: 1.2;
	text-align: center;
}

body.woocommerce-order-received .wp-block-woocommerce-order-confirmation-summary .wc-block-order-confirmation-summary-list-item__value {
	display: block;
	width: 100%;
	min-height: 40px;
	padding: 10px 8px;
	box-sizing: border-box;
	color: var(--wp--preset--color--gray-text);
	font-size: var(--wp--preset--font-size--md);
	font-weight: 350;
	line-height: 1.2;
	text-align: center;
	word-break: break-word;
}
body.woocommerce-order-received .wp-block-woocommerce-order-confirmation-summary .wc-block-order-confirmation-summary-list-item__key,
body.woocommerce-order-received .wp-block-woocommerce-order-confirmation-summary .wc-block-order-confirmation-summary-list-item__value {
	margin: 0 !important;
	max-width: none !important;
}
body.woocommerce-order-received .wp-block-woocommerce-order-confirmation-summary .wc-payment-gateway-method-logo-wrapper {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.4rem;
	flex-wrap: wrap;
}

body.woocommerce-order-received .wp-block-woocommerce-order-confirmation-summary .wc-payment-gateway-method-logo-wrapper img {
	height: 14px;
	width: auto;
}

/* Impedisce l'overflow degli indirizzi email lunghi all'interno delle colonne indirizzo */
.woocommerce-account .woocommerce-customer-details
> .woocommerce-columns.woocommerce-columns--2.woocommerce-columns--addresses.col2-set.addresses
> .woocommerce-column
> address {
	overflow-wrap: break-word;
	word-break: break-word; /* Supporto aggiuntivo per browser datati */
	hyphens: auto;          /* Opzionale: aggiunge il trattino di sillabazione se supportato */
}
/* =========================================================
   Account responsive unico
   Breakpoint unico: tablet piccoli + mobile
   ========================================================= */

@media (max-width: 900px) {

	body.woocommerce-account {
		--legis-account-gutter: clamp(16px, 5vw, 28px);
		--legis-account-gap: clamp(18px, 4vw, 28px);
		--legis-account-card-pad: clamp(18px, 5vw, 24px);
	}

	/* Shell principale */
	.woocommerce-account .woocommerce {
		grid-template-columns: 1fr;
		grid-template-areas:
			"sidebar"
			"main-content";
		gap: var(--legis-account-gap);
		width: 100%;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation,
	.woocommerce-account .woocommerce-MyAccount-content {
		width: 100%;
		min-width: 0;
	}

	/* Navigazione account: compatta e fluida */
	.woocommerce-account .legis-account-nav {
		position: static;
		margin: 0;
		padding: 6px;
		width: 100%;
	}

	.woocommerce-account .legis-account-nav__list {
		display: grid;
		grid-template-columns: repeat(2,1fr);
		gap: 6px !important;
	}

	.woocommerce-account .legis-account-nav__list li {
		padding-bottom: 0 !important;
	}

	.woocommerce-account .legis-account-nav__list a {
		min-height: 24px;
		display: flex;
		align-items: center;
		justify-content: center;
		text-align: center;
		padding: 8px 7px;
		font-size: var(--wp--preset--font-size--sm);
		line-height: 1.2 !important;
	}

	/* Titoli e intro */
	.woocommerce-account .wp-block-post-title {
		font-size: clamp(1.65rem, 6vw, 2.1rem) !important;
		line-height: 1.15;
	}

	.woocommerce-account .legis-account-panel {
		gap: var(--legis-account-gap);
	}

	.woocommerce-account .legis-account-panel__intro,
	.woocommerce-account .woocommerce-MyAccount-content > p:first-of-type {
		max-width: none;
		font-size: var(--wp--preset--font-size--md);
		line-height: 1.45;
	}

	/* Card e blocchi */
	.woocommerce-account .legis-account-card,
	.woocommerce-account .legis-address-card,
	.woocommerce-account .legis-cfp-card,
	.woocommerce-account .woocommerce-ResetPassword,
	.woocommerce-account .woocommerce-MyAccount-content > form[method="post"],
	.woocommerce-account .woocommerce-MyAccount-content > .woocommerce-customer-details:not(:has(> .woocommerce-columns--addresses)) > address,
	.woocommerce-account .woocommerce-MyAccount-content > .woocommerce-customer-details > .woocommerce-columns.woocommerce-columns--2.woocommerce-columns--addresses.col2-set.addresses > .woocommerce-column > address {
		padding: var(--legis-account-card-pad);
	}

	/* Dashboard: due colonne quando ci stanno, una sui piccoli schermi */
	.woocommerce-account .legis-account-summary-grid,
	.woocommerce-account .legis-cfp-grid {
		grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr));
		gap: var(--legis-account-gap);
	}

	/* Form account / indirizzi / dati fiscali */
	.woocommerce-account .legis-account-form {
		grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr));
		column-gap: 20px;
		row-gap: 16px;
	}

	.woocommerce-account .legis-account-form .form-row-first,
	.woocommerce-account .legis-account-form .form-row-last,
	.woocommerce-account .legis-account-form .form-row-wide,
	.woocommerce-account .legis-account-form .woocommerce-input-wrapper,
	.woocommerce-account .legis-account-form__actions,
	.woocommerce-account .legis-fiscal-help,
	.woocommerce-account .legis-fiscal-row--subject-type,
	.woocommerce-account .legis-fiscal-row--professional-category,
	.woocommerce-account .legis-fiscal-row--fe-requested,
	.woocommerce-account .legis-fiscal-row--ipa,
	.woocommerce-account .legis-fiscal-row--codice-fiscale,
	.woocommerce-account .legis-fiscal-row--partita-iva,
	.woocommerce-account .legis-fiscal-row--pec,
	.woocommerce-account .legis-fiscal-row--sdi {
		grid-column: 1 / -1;
	}

	/* Bottoni */
	.woocommerce-account .legis-account-button,
	.woocommerce-account .woocommerce-Button.button.wp-element-button[name="save_account_details"],
	.woocommerce-account .button.wp-element-button[name="save_address"] {
		width: 100%;
	}

	/* Header card indirizzi / CFP */
	.woocommerce-account .legis-address-card__head,
	.woocommerce-account .legis-cfp-card__head {
		flex-direction: column;
		align-items: flex-start;
		gap: 12px;
	}

	.woocommerce-account .legis-address-card__status,
	.woocommerce-account .legis-cfp-card__status {
		align-self: flex-start;
	}

	/* Righe riepilogo dati */
	.woocommerce-account .legis-address-summary__meta-row,
	.woocommerce-account .legis-fiscal-summary__row,
	.woocommerce-account .legis-cfp-summary__row {
		grid-template-columns: 1fr;
		gap: 4px;
	}

	/* Indirizzi WooCommerce classici */
	.woocommerce-account .woocommerce-Addresses,
	.woocommerce-account .woocommerce-customer-details > .woocommerce-columns--addresses {
		display: grid !important;
		grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr));
		gap: var(--legis-account-gap);
		align-items: stretch;
	}

	.woocommerce-account .u-column1.col-1.woocommerce-Address,
	.woocommerce-account .woocommerce-MyAccount-content > .woocommerce-customer-details > .woocommerce-columns.woocommerce-columns--2.woocommerce-columns--addresses.col2-set.addresses > .woocommerce-column.woocommerce-column--1.woocommerce-column--billing-address.col-1 {
		margin-right: 0 !important;
	}

	.woocommerce-account .woocommerce-Address {
		width: 100% !important;
	}
/* Indirizzi dettaglio ordine: da due colonne a una colonna su mobile/tablet piccoli */
.woocommerce-account .woocommerce-customer-details
> .woocommerce-columns.woocommerce-columns--2.woocommerce-columns--addresses.col2-set.addresses {
	grid-template-columns: 1fr;
	gap: var(--legis-account-gap);
}

.woocommerce-account .woocommerce-customer-details
> .woocommerce-columns.woocommerce-columns--2.woocommerce-columns--addresses.col2-set.addresses
> .woocommerce-column {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
}
	/* Dettaglio ordine: tabella trasformata in blocco mobile */
	.woocommerce-account .woocommerce-order-details .shop_table,
	.woocommerce-account .woocommerce-table--order-details {
		display: block;
		width: 100%;
		table-layout: auto !important;
		overflow: hidden;
	}

	.woocommerce-account .woocommerce-order-details .shop_table thead,
	.woocommerce-account .woocommerce-table--order-details thead {
		display: none;
	}

	.woocommerce-account .woocommerce-order-details .shop_table tbody,
	.woocommerce-account .woocommerce-order-details .shop_table tfoot,
	.woocommerce-account .woocommerce-order-details .shop_table tr,
	.woocommerce-account .woocommerce-order-details .shop_table th,
	.woocommerce-account .woocommerce-order-details .shop_table td,
	.woocommerce-account .woocommerce-table--order-details tbody,
	.woocommerce-account .woocommerce-table--order-details tfoot,
	.woocommerce-account .woocommerce-table--order-details tr,
	.woocommerce-account .woocommerce-table--order-details th,
	.woocommerce-account .woocommerce-table--order-details td {
		display: block;
		width: 100% !important;
		max-width: 100%;
	}

	.woocommerce-account .woocommerce-order-details .shop_table tbody tr,
	.woocommerce-account .woocommerce-table--order-details tbody tr {
		border-bottom: 1px solid #e6ebf1;
	}

	.woocommerce-account .woocommerce-order-details .shop_table tbody td.product-name,
	.woocommerce-account .woocommerce-table--order-details tbody td.product-name {
		padding: 14px 16px 6px !important;
		text-align: left !important;
	}

	.woocommerce-account .woocommerce-order-details .shop_table tbody td.product-total,
	.woocommerce-account .woocommerce-table--order-details tbody td.product-total {
		padding: 0 16px 14px !important;
		text-align: left !important;
		font-weight: 500 !important;
	}

	.woocommerce-account .woocommerce-order-details .shop_table tbody td.product-total::before,
	.woocommerce-account .woocommerce-table--order-details tbody td.product-total::before {
		content: "Totale prodotto: ";
		font-weight: 500;
		color: var(--wp--preset--color--gray-text);
	}

	.woocommerce-account .woocommerce-order-details .shop_table tfoot tr,
	.woocommerce-account .woocommerce-table--order-details tfoot tr {
		display: grid;
		grid-template-columns: minmax(0, 44%) minmax(0, 56%);
		align-items: stretch;
	}

	.woocommerce-account .woocommerce-order-details .shop_table tfoot th,
	.woocommerce-account .woocommerce-order-details .shop_table tfoot td,
	.woocommerce-account .woocommerce-table--order-details tfoot th,
	.woocommerce-account .woocommerce-table--order-details tfoot td {
		padding: 10px 14px !important;
		text-align: left !important;
		border-bottom: 1px solid #e6ebf1;
		vertical-align: top !important;
	}

	.woocommerce-account .woocommerce-order-details .shop_table tfoot th,
	.woocommerce-account .woocommerce-table--order-details tfoot th {
		background: var(--wp--preset--color--gray-bg);
		font-weight: 500 !important;
	}

	.woocommerce-account .woocommerce-order-details .shop_table tfoot td,
	.woocommerce-account .woocommerce-table--order-details tfoot td {
		overflow-wrap: anywhere;
	}

	.woocommerce-account .woocommerce-order-details .shop_table small.shipped_via,
	.woocommerce-account .woocommerce-table--order-details small.shipped_via {
		display: block;
		margin-top: 3px;
		white-space: normal;
		line-height: 1.25;
	}

	/* Dati fiscali dettaglio ordine */
	.woocommerce-account .lta-view-order-fiscal-meta .wc-block-components-additional-fields-list {
		grid-template-columns: 1fr !important;
	}

	.woocommerce-account .lta-view-order-fiscal-meta dl dt,
	.woocommerce-account .lta-view-order-fiscal-meta dl dd {
		text-align: left !important;
	}

	.woocommerce-account .lta-view-order-fiscal-meta dl dd {
		margin-bottom: 12px !important;
		padding-bottom: 12px !important;
		border-bottom: 1px solid #e6ebf1;
	}

	.woocommerce-account .lta-view-order-fiscal-meta dl dd:last-child {
		margin-bottom: 0 !important;
		padding-bottom: 0 !important;
		border-bottom: 0;
	}

	/* Login / reset */
	.woocommerce-account .legis-auth-shell,
	.woocommerce-account .woocommerce-ResetPassword,
	.woocommerce-account .wc-block-components-notice-banner,
	.woocommerce-account .woocommerce-notices-wrapper,
	.woocommerce-account .woocommerce > p {
		max-width: 100%;
	}

	.woocommerce-account .legis-auth-card__actions {
		align-items: stretch;
	}

	.woocommerce-account .legis-auth-card .woocommerce-button,
	.woocommerce-account .legis-auth-card button.button,
	.woocommerce-account .woocommerce-ResetPassword .button {
		width: 100% !important;
		min-width: 0;
	}

	/* Paginazione ordini */
	.woocommerce-account .woocommerce-pagination--without-numbers {
		gap: 12px;
		justify-content: stretch;
	}

	.woocommerce-account .woocommerce-pagination--without-numbers .woocommerce-button {
		flex: 1;
		justify-content: center;
		padding-left: 12px !important;
		padding-right: 12px !important;
	}

	/* Thank you / order received: griglia fluida senza ulteriori breakpoint */
	body.woocommerce-order-received .wp-block-woocommerce-order-confirmation-summary .wc-block-order-confirmation-summary-list {
		grid-template-columns: repeat(auto-fit, minmax(min(100%, 180px), 1fr));
	}

	body.woocommerce-order-received .wp-block-woocommerce-order-confirmation-summary .wc-block-order-confirmation-summary-list-item {
		border-right: 1px solid #e6ebf1;
		border-bottom: 1px solid #e6ebf1;
	}

	body.woocommerce-order-received .wp-block-woocommerce-order-confirmation-summary .wc-block-order-confirmation-summary-list-item:last-child {
		border-bottom: 0;
	}
}