/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */



/* range slider styles */
:root {
  --blue-color: #306fd1;
  --gray-color: #77889926;
}
.range-slider {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  padding-block: 20px;
}

.range-slider.dragging {
  cursor: ew-resize;
}

.range-slider > input {
  border: none;
  outline: none;
  background: var(--gray-color);
  font-size: 1.5rem;
  font-weight: 500;
  padding: 0.5rem 1rem;
  border-radius: 5px;
  min-width: 64px;
}

.range {
  width: 100%;
  display: grid;
  position: relative;
  z-index: 5;
}

.range input {
  grid-row: 2;
  grid-column: 1;
  pointer-events: none;
  appearance: none;
  background: transparent;
}

.range input::-webkit-slider-thumb {
  pointer-events: auto;
  appearance: none;
  width: 30px;
  height: 30px;
  background: var(--blue-color);
  border-radius: 50%;
  cursor: pointer;
}

.slider {
  position: absolute;
  height: 10px;
  width: 100%;
  background: var(--gray-color);
  top: 50%;
  transform: translateY(-50%);
  border-radius: 5px;
  overflow: hidden;
  z-index: -1;
}

.progress {
  position: absolute;
  height: 100%;
  background: var(red);
  cursor: ew-resize;
}


.elementor-products-grid {

    max-width: 1200px;
    margin: 0 auto;
}

@media (max-width: 767px) {
    .elementor-widget-wc-archive-products .products {
        grid-template-columns: repeat(1, 1fr);
    }

ul.products li {
    max-width: 300px;
    margin: 0 auto;
}
}










/* =========================================================
   WooCommerce My Account - Premium UI
   Solo CSS - compatibile con template standard WooCommerce
========================================================= */

.woocommerce-account {
    --acc-bg: #f5f5f3;
    --acc-card: #ffffff;
    --acc-card-soft: #fafafa;
    --acc-text: #181818;
    --acc-muted: #747474;
    --acc-border: rgba(0, 0, 0, 0.08);
    --acc-border-strong: rgba(0, 0, 0, 0.14);
    --acc-primary: #111111;
    --acc-primary-soft: rgba(0, 0, 0, 0.06);
    --acc-success: #2f9e44;
    --acc-warning: #f08c00;
    --acc-danger: #d9480f;
    --acc-radius: 22px;
    --acc-radius-sm: 14px;
    --acc-shadow: 0 18px 50px rgba(0, 0, 0, 0.07);
    --acc-shadow-soft: 0 10px 30px rgba(0, 0, 0, 0.045);
}

/* Area generale */
.woocommerce-account .woocommerce {
    max-width: 1220px;
    margin: 0 auto;
    padding: 42px 18px 60px;
}

/* Layout principale */
.woocommerce-account.logged-in .woocommerce {
    display: grid;
    grid-template-columns: 280px minmax(0, 1fr);
    gap: 28px;
    align-items: start;
}

/* =========================
   Menu account laterale
========================= */

.woocommerce-account .woocommerce-MyAccount-navigation {
    position: sticky;
    top: 110px;
    padding: 14px;
    border: 1px solid var(--acc-border);
    border-radius: var(--acc-radius);
    background: var(--acc-card);
    box-shadow: var(--acc-shadow-soft);
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.woocommerce-account .woocommerce-MyAccount-navigation li {
    margin: 0 0 6px;
}

.woocommerce-account .woocommerce-MyAccount-navigation li:last-child {
    margin-bottom: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation a {
    position: relative;
    display: flex;
    align-items: center;
    gap: 11px;
    min-height: 48px;
    padding: 12px 14px;
    border-radius: 15px;
    color: var(--acc-text);
    font-size: 15px;
    font-weight: 650;
    text-decoration: none;
    line-height: 1.2;
    transition: background 0.22s ease, color 0.22s ease, transform 0.22s ease;
}

.woocommerce-account .woocommerce-MyAccount-navigation a::before {
    content: "";
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    min-width: 22px;
    height: 22px;
    border-radius: 8px;
    background: var(--acc-primary-soft);
    color: currentColor;
    font-size: 13px;
    line-height: 1;
}

/* Icone testuali CSS per endpoint WooCommerce */
.woocommerce-account .woocommerce-MyAccount-navigation-link--dashboard a::before {
    content: "⌂";
}

.woocommerce-account .woocommerce-MyAccount-navigation-link--orders a::before {
    content: "□";
}

.woocommerce-account .woocommerce-MyAccount-navigation-link--downloads a::before {
    content: "↓";
}

.woocommerce-account .woocommerce-MyAccount-navigation-link--edit-address a::before {
    content: "⌖";
}

.woocommerce-account .woocommerce-MyAccount-navigation-link--payment-methods a::before {
    content: "◆";
}

.woocommerce-account .woocommerce-MyAccount-navigation-link--edit-account a::before {
    content: "○";
}

.woocommerce-account .woocommerce-MyAccount-navigation-link--customer-logout a::before {
    content: "↗";
}

/* Eventuale voce Resi e recesso */
.woocommerce-account .woocommerce-MyAccount-navigation-link--resi-e-recesso a::before,
.woocommerce-account .woocommerce-MyAccount-navigation-link--returns a::before,
.woocommerce-account .woocommerce-MyAccount-navigation-link--return-requests a::before {
    content: "↺";
}

.woocommerce-account .woocommerce-MyAccount-navigation a:hover {
    background: var(--acc-primary-soft);
    color: var(--acc-primary);
    transform: translateX(2px);
}

.woocommerce-account .woocommerce-MyAccount-navigation .is-active a {
    background: var(--acc-primary);
    color: #ffffff;
}

.woocommerce-account .woocommerce-MyAccount-navigation .is-active a::before {
    background: rgba(255, 255, 255, 0.18);
    color: #ffffff;
}

/* =========================
   Contenuto account
========================= */

.woocommerce-account .woocommerce-MyAccount-content {
    min-width: 0;
    padding: 34px;
    border: 1px solid var(--acc-border);
    border-radius: var(--acc-radius);
    background:
        radial-gradient(circle at top right, rgba(0, 0, 0, 0.035), transparent 32%),
        var(--acc-card);
    box-shadow: var(--acc-shadow);
    color: var(--acc-text);
}

.woocommerce-account .woocommerce-MyAccount-content > p:first-child {
    margin-top: 0;
    padding: 22px 24px;
    border: 1px solid var(--acc-border);
    border-radius: 18px;
    background: var(--acc-card-soft);
    color: var(--acc-muted);
    line-height: 1.75;
}

.woocommerce-account .woocommerce-MyAccount-content p {
    color: var(--acc-muted);
    line-height: 1.75;
}

.woocommerce-account .woocommerce-MyAccount-content strong {
    color: var(--acc-text);
    font-weight: 750;
}

.woocommerce-account .woocommerce-MyAccount-content a {
    color: var(--acc-primary);
    font-weight: 700;
    text-decoration: none;
}

.woocommerce-account .woocommerce-MyAccount-content a:hover {
    text-decoration: underline;
}

/* Titoli */
.woocommerce-account .woocommerce-MyAccount-content h2,
.woocommerce-account .woocommerce-MyAccount-content h3,
.woocommerce-account .woocommerce-MyAccount-content legend {
    margin: 0 0 22px;
    color: var(--acc-text);
    font-size: clamp(22px, 2.4vw, 30px);
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: -0.03em;
}

.woocommerce-account .woocommerce-MyAccount-content h2::after,
.woocommerce-account .woocommerce-MyAccount-content h3::after {
    content: "";
    display: block;
    width: 46px;
    height: 3px;
    margin-top: 12px;
    border-radius: 999px;
    background: var(--acc-primary);
}

/* =========================
   Tabelle ordini
========================= */

.woocommerce-account table.shop_table {
    overflow: hidden;
    width: 100%;
    border: 1px solid var(--acc-border);
    border-radius: 20px;
    background: #ffffff;
    border-collapse: separate;
    border-spacing: 0;
    box-shadow: var(--acc-shadow-soft);
}

.woocommerce-account table.shop_table thead {
    background: #f7f7f7;
}

.woocommerce-account table.shop_table th {
    padding: 16px 18px;
    border: 0;
    color: var(--acc-text);
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.woocommerce-account table.shop_table td {
    padding: 18px;
    border-top: 1px solid var(--acc-border);
    color: var(--acc-muted);
    font-size: 15px;
    vertical-align: middle;
}

.woocommerce-account table.shop_table tr:hover td {
    background: #fbfbfb;
}

.woocommerce-account table.shop_table .woocommerce-orders-table__cell-order-number a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 7px 12px;
    border-radius: 999px;
    background: var(--acc-primary-soft);
    color: var(--acc-primary);
    font-weight: 800;
    text-decoration: none;
}

/* Stato ordine */
.woocommerce-account .woocommerce-orders-table__cell-order-status {
    font-weight: 750;
    color: var(--acc-text);
}

/* Azioni tabella */
.woocommerce-account table.shop_table .button {
    margin: 3px;
}

/* =========================
   Pulsanti
========================= */

.woocommerce-account .button,
.woocommerce-account button.button,
.woocommerce-account input.button,
.woocommerce-account .woocommerce-button,
.woocommerce-account a.button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 12px 18px;
    border: 0;
    border-radius: 999px;
    background: var(--acc-primary);
    color: #ffffff !important;
    font-size: 14px;
    font-weight: 800;
    line-height: 1;
    text-decoration: none !important;
    box-shadow: none;
    outline: none;
    cursor: pointer;
    transition: opacity 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

.woocommerce-account .button:hover,
.woocommerce-account button.button:hover,
.woocommerce-account input.button:hover,
.woocommerce-account .woocommerce-button:hover,
.woocommerce-account a.button:hover {
    opacity: 0.9;
    transform: translateY(-1px);
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.12);
}

.woocommerce-account .button:focus,
.woocommerce-account button.button:focus,
.woocommerce-account input.button:focus {
    outline: none;
    box-shadow: 0 0 0 4px rgba(0, 0, 0, 0.08);
}

/* Pulsante secondario */
.woocommerce-account .woocommerce-Button--previous,
.woocommerce-account .woocommerce-Button--next {
    background: #eeeeee;
    color: var(--acc-text) !important;
}

/* =========================
   Form
========================= */

.woocommerce-account form {
    margin-top: 8px;
}

.woocommerce-account fieldset {
    margin: 28px 0 0;
    padding: 24px;
    border: 1px solid var(--acc-border);
    border-radius: 20px;
    background: var(--acc-card-soft);
}

.woocommerce-account .form-row {
    margin-bottom: 18px;
}

.woocommerce-account label {
    display: block;
    margin-bottom: 8px;
    color: var(--acc-text);
    font-size: 14px;
    font-weight: 750;
}

.woocommerce-account .required {
    color: var(--acc-danger);
}

.woocommerce-account input.input-text,
.woocommerce-account input[type="text"],
.woocommerce-account input[type="email"],
.woocommerce-account input[type="tel"],
.woocommerce-account input[type="password"],
.woocommerce-account input[type="number"],
.woocommerce-account select,
.woocommerce-account textarea {
    width: 100%;
    min-height: 50px;
    padding: 0 15px;
    border: 1px solid var(--acc-border-strong);
    border-radius: 15px;
    background: #ffffff;
    color: var(--acc-text);
    font-size: 15px;
    font-weight: 500;
    box-shadow: none;
    outline: none;
    transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.woocommerce-account textarea {
    min-height: 130px;
    padding-top: 13px;
    resize: vertical;
}

.woocommerce-account input:focus,
.woocommerce-account select:focus,
.woocommerce-account textarea:focus {
    border-color: var(--acc-primary);
    box-shadow: 0 0 0 4px rgba(0, 0, 0, 0.06);
    background: #ffffff;
}

.woocommerce-account .woocommerce-form-row em {
    display: block;
    margin-top: 7px;
    color: var(--acc-muted);
    font-size: 13px;
    line-height: 1.5;
}

/* Select2 WooCommerce */
.woocommerce-account .select2-container .select2-selection--single {
    height: 50px;
    border: 1px solid var(--acc-border-strong);
    border-radius: 15px;
}

.woocommerce-account .select2-container--default .select2-selection--single .select2-selection__rendered {
    padding-left: 15px;
    color: var(--acc-text);
    line-height: 50px;
}

.woocommerce-account .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 50px;
}

/* =========================
   Indirizzi
========================= */

.woocommerce-account .woocommerce-Addresses {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
}

.woocommerce-account .woocommerce-Address {
    position: relative;
    min-height: 220px;
    padding: 26px;
    border: 1px solid var(--acc-border);
    border-radius: 22px;
    background:
        linear-gradient(180deg, rgba(0, 0, 0, 0.025), transparent 42%),
        #ffffff;
    box-shadow: var(--acc-shadow-soft);
}

.woocommerce-account .woocommerce-Address-title {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 18px;
}

.woocommerce-account .woocommerce-Address-title h3 {
    margin: 0;
    font-size: 20px;
    font-weight: 800;
    letter-spacing: -0.02em;
}

.woocommerce-account .woocommerce-Address-title h3::after {
    display: none;
}

.woocommerce-account .woocommerce-Address-title a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    padding: 8px 12px;
    border-radius: 999px;
    background: var(--acc-primary-soft);
    color: var(--acc-primary);
    font-size: 13px;
    font-weight: 800;
    text-decoration: none;
}

.woocommerce-account address {
    margin: 0;
    color: var(--acc-muted);
    font-style: normal;
    line-height: 1.75;
}

/* =========================
   Messaggi WooCommerce
========================= */

.woocommerce-account .woocommerce-message,
.woocommerce-account .woocommerce-info,
.woocommerce-account .woocommerce-error {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 22px;
    padding: 17px 20px;
    border: 1px solid var(--acc-border);
    border-left-width: 5px;
    border-radius: 18px;
    background: #ffffff;
    color: var(--acc-text);
    box-shadow: var(--acc-shadow-soft);
}

.woocommerce-account .woocommerce-info {
    border-left-color: var(--acc-primary);
}

.woocommerce-account .woocommerce-message {
    border-left-color: var(--acc-success);
}

.woocommerce-account .woocommerce-error {
    border-left-color: var(--acc-danger);
}

.woocommerce-account .woocommerce-message::before,
.woocommerce-account .woocommerce-info::before,
.woocommerce-account .woocommerce-error::before {
    position: static;
    display: inline-flex;
    margin: 0;
}

/* =========================
   Login / registrazione
========================= */

.woocommerce-account:not(.logged-in) .woocommerce {
    max-width: 1120px;
}

.woocommerce-account .u-columns {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 26px;
}

.woocommerce-account .u-column1,
.woocommerce-account .u-column2 {
    padding: 34px;
    border: 1px solid var(--acc-border);
    border-radius: var(--acc-radius);
    background: var(--acc-card);
    box-shadow: var(--acc-shadow);
}

.woocommerce-account .u-column1 h2,
.woocommerce-account .u-column2 h2 {
    margin-bottom: 24px;
    font-size: 28px;
}

/* Ricordami / password persa */
.woocommerce-account .woocommerce-form-login__rememberme {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 8px 0 14px;
}

.woocommerce-account .woocommerce-LostPassword {
    margin-top: 16px;
}

/* =========================
   Download / metodi pagamento
========================= */

.woocommerce-account .woocommerce-PaymentMethod,
.woocommerce-account .woocommerce-MyAccount-paymentMethods {
    border-radius: 18px;
}

.woocommerce-account .woocommerce-MyAccount-paymentMethods {
    overflow: hidden;
}

/* =========================
   Area Resi e recesso
   compatibile con plugin resi
========================= */

.woocommerce-account .wcrf-return-list,
.woocommerce-account .wcrf-requests,
.woocommerce-account .wcrf-card,
.woocommerce-account .wcrf-return-request {
    border-radius: 20px;
}

.woocommerce-account .wcrf-card,
.woocommerce-account .wcrf-return-request {
    padding: 22px;
    border: 1px solid var(--acc-border);
    background: #ffffff;
    box-shadow: var(--acc-shadow-soft);
}

.woocommerce-account .wcrf-status,
.woocommerce-account .wcrf-badge {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 6px 10px;
    border-radius: 999px;
    background: var(--acc-primary-soft);
    color: var(--acc-primary);
    font-size: 12px;
    font-weight: 800;
}

/* =========================
   Responsive
========================= */

@media (max-width: 1024px) {
    .woocommerce-account.logged-in .woocommerce {
        grid-template-columns: 240px minmax(0, 1fr);
        gap: 20px;
    }

    .woocommerce-account .woocommerce-MyAccount-content {
        padding: 26px;
    }
}

@media (max-width: 850px) {
    .woocommerce-account.logged-in .woocommerce {
        display: block;
    }

    .woocommerce-account .woocommerce {
        padding: 24px 14px 46px;
    }

    .woocommerce-account .woocommerce-MyAccount-navigation {
        position: relative;
        top: auto;
        margin-bottom: 18px;
        padding: 10px;
        overflow: hidden;
    }

    .woocommerce-account .woocommerce-MyAccount-navigation ul {
        display: flex;
        gap: 8px;
        overflow-x: auto;
        padding-bottom: 4px;
        scrollbar-width: thin;
    }

    .woocommerce-account .woocommerce-MyAccount-navigation li {
        flex: 0 0 auto;
        margin: 0;
    }

    .woocommerce-account .woocommerce-MyAccount-navigation a {
        min-height: 44px;
        white-space: nowrap;
        font-size: 14px;
    }

    .woocommerce-account .woocommerce-MyAccount-content {
        padding: 22px;
    }

    .woocommerce-account .woocommerce-Addresses,
    .woocommerce-account .u-columns {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .woocommerce-account .woocommerce {
        padding-inline: 12px;
    }

    .woocommerce-account .woocommerce-MyAccount-content {
        padding: 18px;
        border-radius: 18px;
    }

    .woocommerce-account .woocommerce-MyAccount-content > p:first-child {
        padding: 18px;
    }

    .woocommerce-account table.shop_table {
        display: block;
        overflow-x: auto;
        white-space: nowrap;
        border-radius: 16px;
    }

    .woocommerce-account table.shop_table th,
    .woocommerce-account table.shop_table td {
        padding: 13px 14px;
        font-size: 14px;
    }

    .woocommerce-account .button,
    .woocommerce-account button.button,
    .woocommerce-account input.button,
    .woocommerce-account .woocommerce-button,
    .woocommerce-account a.button {
        width: 100%;
        margin-top: 6px;
    }

    .woocommerce-account .woocommerce-Address {
        padding: 20px;
    }

    .woocommerce-account .u-column1,
    .woocommerce-account .u-column2 {
        padding: 24px;
    }
}

/* =========================
   Stabilità font/layout
========================= */

.woocommerce-account,
.woocommerce-account button,
.woocommerce-account input,
.woocommerce-account select,
.woocommerce-account textarea {
    font-family: inherit;
    font-synthesis: none;
    text-rendering: optimizeLegibility;
}

.woocommerce-account * {
    box-sizing: border-box;
}





































/* =========================================================
   Sottosopra Intimo - WooCommerce My Account Premium
   Solo CSS - nessuna modifica template
========================================================= */

.woocommerce-account {
    --myacc-bg: #f7f3ef;
    --myacc-card: #ffffff;
    --myacc-card-soft: #fbf8f5;
    --myacc-text: #1f1713;
    --myacc-muted: #7b716c;
    --myacc-border: rgba(31, 23, 19, 0.10);
    --myacc-border-strong: rgba(31, 23, 19, 0.18);
    --myacc-primary: #1f1713;
    --myacc-primary-soft: rgba(31, 23, 19, 0.07);
    --myacc-radius: 22px;
    --myacc-radius-sm: 14px;
    --myacc-shadow: 0 18px 45px rgba(31, 23, 19, 0.08);
    --myacc-shadow-soft: 0 10px 26px rgba(31, 23, 19, 0.055);
}

/* Reset brutti <br> generati nel markup */
.woocommerce-account .woocommerce-MyAccount-navigation a br,
.woocommerce-account .woocommerce-MyAccount-content table br,
.woocommerce-account .woocommerce-MyAccount-content form > p > br,
.woocommerce-account .woocommerce-MyAccount-content header br {
    display: none !important;
}

/* Reset <p> inutili dentro tabelle e header indirizzi */
.woocommerce-account .woocommerce-MyAccount-content table p,
.woocommerce-account .woocommerce-Address-title p {
    margin: 0 !important;
    padding: 0 !important;
}

/* Wrapper Elementor */
.woocommerce-account .elementor-widget-text-editor .woocommerce {
    width: 100%;
}

/* Layout desktop */
.woocommerce-account.logged-in .elementor-widget-text-editor .woocommerce,
.woocommerce-account.logged-in .woocommerce {
    display: grid;
    grid-template-columns: 285px minmax(0, 1fr);
    gap: 30px;
    align-items: start;
}

/* Container generale */
.woocommerce-account .elementor-element-52f6725a .e-con-inner {
    max-width: 1220px;
}

/* =========================================================
   MENU ACCOUNT
========================================================= */

.woocommerce-account .woocommerce-MyAccount-navigation {
    position: sticky;
    top: 110px;
    width: 100%;
    padding: 12px;
    border: 1px solid var(--myacc-border);
    border-radius: var(--myacc-radius);
    background: var(--myacc-card);
    box-shadow: var(--myacc-shadow-soft);
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
    display: grid;
    gap: 7px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.woocommerce-account .woocommerce-MyAccount-navigation li {
    margin: 0;
    padding: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation a {
    position: relative;
    display: flex;
    align-items: center;
    gap: 12px;
    min-height: 50px;
    padding: 12px 14px;
    border-radius: 15px;
    color: var(--myacc-text);
    font-size: 15px;
    font-weight: 650;
    line-height: 1.15;
    text-decoration: none !important;
    transition: background 0.22s ease, color 0.22s ease, transform 0.22s ease;
}

.woocommerce-account .woocommerce-MyAccount-navigation a::before {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    min-width: 28px;
    height: 28px;
    border-radius: 11px;
    background: var(--myacc-primary-soft);
    color: currentColor;
    font-size: 15px;
    font-weight: 800;
    line-height: 1;
}

/* Icone menu */
.woocommerce-account .woocommerce-MyAccount-navigation-link--dashboard a::before {
    content: "⌂";
}

.woocommerce-account .woocommerce-MyAccount-navigation-link--orders a::before {
    content: "□";
}

.woocommerce-account .woocommerce-MyAccount-navigation-link--resi-e-recesso a::before {
    content: "↺";
}

.woocommerce-account .woocommerce-MyAccount-navigation-link--downloads a::before {
    content: "↓";
}

.woocommerce-account .woocommerce-MyAccount-navigation-link--edit-address a::before {
    content: "⌖";
}

.woocommerce-account .woocommerce-MyAccount-navigation-link--edit-account a::before {
    content: "○";
}

.woocommerce-account .woocommerce-MyAccount-navigation-link--customer-logout a::before {
    content: "↗";
}

.woocommerce-account .woocommerce-MyAccount-navigation a:hover {
    background: var(--myacc-primary-soft);
    transform: translateX(2px);
}

.woocommerce-account .woocommerce-MyAccount-navigation .is-active a {
    background: var(--myacc-primary);
    color: #ffffff;
}

.woocommerce-account .woocommerce-MyAccount-navigation .is-active a::before {
    background: rgba(255, 255, 255, 0.16);
    color: #ffffff;
}

/* =========================================================
   CONTENUTO ACCOUNT
========================================================= */

.woocommerce-account .woocommerce-MyAccount-content {
    min-width: 0;
    padding: 34px;
    border: 1px solid var(--myacc-border);
    border-radius: var(--myacc-radius);
    background:
        radial-gradient(circle at top right, rgba(31, 23, 19, 0.045), transparent 34%),
        var(--myacc-card);
    box-shadow: var(--myacc-shadow);
    color: var(--myacc-text);
}

.woocommerce-account .woocommerce-MyAccount-content > p:first-child {
    margin-top: 0;
    padding: 20px 22px;
    border: 1px solid var(--myacc-border);
    border-radius: 18px;
    background: var(--myacc-card-soft);
    color: var(--myacc-muted);
    font-size: 15px;
    line-height: 1.7;
}

.woocommerce-account .woocommerce-MyAccount-content p {
    color: var(--myacc-muted);
    line-height: 1.7;
}

.woocommerce-account .woocommerce-MyAccount-content strong {
    color: var(--myacc-text);
    font-weight: 750;
}

.woocommerce-account .woocommerce-MyAccount-content a {
    color: var(--myacc-primary);
    font-weight: 700;
    text-decoration: none;
}

.woocommerce-account .woocommerce-MyAccount-content a:hover {
    text-decoration: underline;
}

/* Titoli */
.woocommerce-account .woocommerce-MyAccount-content h2,
.woocommerce-account .woocommerce-MyAccount-content h3,
.woocommerce-account .woocommerce-MyAccount-content legend {
    margin: 0 0 24px;
    color: var(--myacc-text);
    font-size: clamp(24px, 2.5vw, 32px);
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: -0.035em;
}

.woocommerce-account .woocommerce-MyAccount-content h2::after,
.woocommerce-account .woocommerce-MyAccount-content h3::after,
.woocommerce-account .woocommerce-MyAccount-content legend::after {
    content: "";
    display: block;
    width: 44px;
    height: 3px;
    margin-top: 12px;
    border-radius: 999px;
    background: var(--myacc-primary);
}

/* =========================================================
   ORDINI
========================================================= */

.woocommerce-account table.shop_table {
    width: 100%;
    overflow: hidden;
    border: 1px solid var(--myacc-border);
    border-radius: 20px;
    background: #ffffff;
    border-collapse: separate;
    border-spacing: 0;
    box-shadow: var(--myacc-shadow-soft);
}

.woocommerce-account table.shop_table thead {
    background: #f5f1ed;
}

.woocommerce-account table.shop_table th {
    padding: 16px 18px;
    border: 0;
    color: var(--myacc-text);
    font-size: 12px;
    font-weight: 800;
    text-align: left;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.woocommerce-account table.shop_table td,
.woocommerce-account table.shop_table tbody th {
    padding: 18px;
    border-top: 1px solid var(--myacc-border);
    color: var(--myacc-muted);
    font-size: 15px;
    font-weight: 500;
    vertical-align: middle;
}

.woocommerce-account table.shop_table tbody tr:hover td,
.woocommerce-account table.shop_table tbody tr:hover th {
    background: #fbf8f5;
}

.woocommerce-account .woocommerce-orders-table__cell-order-number a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 8px 13px;
    border-radius: 999px;
    background: var(--myacc-primary-soft);
    color: var(--myacc-primary);
    font-weight: 800;
    text-decoration: none !important;
}

.woocommerce-account .woocommerce-orders-table__cell-order-status {
    color: var(--myacc-text);
    font-weight: 750;
}

.woocommerce-account .woocommerce-orders-table__cell-order-total .amount {
    color: var(--myacc-text);
    font-weight: 800;
}

/* =========================================================
   PULSANTI
========================================================= */

.woocommerce-account .button,
.woocommerce-account button.button,
.woocommerce-account input.button,
.woocommerce-account .woocommerce-button,
.woocommerce-account a.button,
.woocommerce-account .edit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 12px 18px;
    border: 0 !important;
    border-radius: 999px;
    background: var(--myacc-primary);
    color: #ffffff !important;
    font-size: 14px;
    font-weight: 800;
    line-height: 1;
    text-decoration: none !important;
    box-shadow: none;
    outline: none;
    cursor: pointer;
    transition: opacity 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

.woocommerce-account .button:hover,
.woocommerce-account button.button:hover,
.woocommerce-account input.button:hover,
.woocommerce-account .woocommerce-button:hover,
.woocommerce-account a.button:hover,
.woocommerce-account .edit:hover {
    opacity: 0.92;
    transform: translateY(-1px);
    box-shadow: 0 10px 24px rgba(31, 23, 19, 0.14);
}

/* =========================================================
   FORM DETTAGLI ACCOUNT / MODIFICA INDIRIZZO
========================================================= */

.woocommerce-account form.edit-account,
.woocommerce-account .woocommerce-address-fields {
    margin-top: 6px;
}

.woocommerce-account .form-row {
    margin: 0 0 18px;
    padding: 0;
}

.woocommerce-account .form-row-first,
.woocommerce-account .form-row-last {
    width: calc(50% - 10px);
}

.woocommerce-account .form-row-first {
    float: left;
}

.woocommerce-account .form-row-last {
    float: right;
}

.woocommerce-account .form-row-wide {
    clear: both;
    width: 100%;
}

.woocommerce-account .clear {
    clear: both;
}

.woocommerce-account label {
    display: block;
    margin-bottom: 8px;
    color: var(--myacc-text);
    font-size: 14px;
    font-weight: 750;
    line-height: 1.3;
}

.woocommerce-account .required {
    color: #b42318;
}

.woocommerce-account input.input-text,
.woocommerce-account input[type="text"],
.woocommerce-account input[type="email"],
.woocommerce-account input[type="tel"],
.woocommerce-account input[type="password"],
.woocommerce-account input[type="number"],
.woocommerce-account select,
.woocommerce-account textarea {
    width: 100%;
    min-height: 50px;
    padding: 0 15px;
    border: 1px solid var(--myacc-border-strong);
    border-radius: 15px;
    background: #ffffff;
    color: var(--myacc-text);
    font-size: 15px;
    font-weight: 500;
    line-height: 50px;
    box-shadow: none;
    outline: none;
    transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.woocommerce-account textarea {
    min-height: 130px;
    padding-top: 13px;
    line-height: 1.5;
    resize: vertical;
}

.woocommerce-account input:focus,
.woocommerce-account select:focus,
.woocommerce-account textarea:focus {
    border-color: var(--myacc-primary);
    box-shadow: 0 0 0 4px rgba(31, 23, 19, 0.07);
    background: #ffffff;
}

.woocommerce-account #account_display_name_description,
.woocommerce-account .woocommerce-form-row em {
    display: block;
    margin-top: 8px;
    color: var(--myacc-muted);
    font-size: 13px;
    line-height: 1.5;
}

.woocommerce-account fieldset {
    clear: both;
    margin: 28px 0 0;
    padding: 24px;
    border: 1px solid var(--myacc-border);
    border-radius: 20px;
    background: var(--myacc-card-soft);
}

.woocommerce-account fieldset legend {
    padding: 0;
}

/* Password eye */
.woocommerce-account .password-input {
    display: flex;
    align-items: center;
    position: relative;
}

.woocommerce-account .password-input input {
    padding-right: 52px;
}

.woocommerce-account .show-password-input {
    position: absolute;
    right: 8px;
    width: 38px;
    height: 38px;
    border: 0;
    border-radius: 50%;
    background: var(--myacc-primary-soft);
    color: var(--myacc-text);
}

/* Select2 */
.woocommerce-account .select2-container {
    width: 100% !important;
}

.woocommerce-account .select2-container .select2-selection--single {
    height: 50px;
    border: 1px solid var(--myacc-border-strong);
    border-radius: 15px;
    background: #ffffff;
}

.woocommerce-account .select2-container--default .select2-selection--single .select2-selection__rendered {
    padding-left: 15px;
    padding-right: 40px;
    color: var(--myacc-text);
    font-size: 15px;
    line-height: 50px;
}

.woocommerce-account .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 50px;
    right: 10px;
}

/* =========================================================
   INDIRIZZI
========================================================= */

.woocommerce-account .woocommerce-Addresses {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
}

.woocommerce-account .woocommerce-Address {
    min-height: 230px;
    padding: 26px;
    border: 1px solid var(--myacc-border);
    border-radius: 22px;
    background:
        linear-gradient(180deg, rgba(31, 23, 19, 0.035), transparent 45%),
        #ffffff;
    box-shadow: var(--myacc-shadow-soft);
}

.woocommerce-account .woocommerce-Address-title {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 18px;
}

.woocommerce-account .woocommerce-Address-title h2,
.woocommerce-account .woocommerce-Address-title h3 {
    margin: 0;
    font-size: 21px;
    font-weight: 800;
    letter-spacing: -0.025em;
}

.woocommerce-account .woocommerce-Address-title h2::after,
.woocommerce-account .woocommerce-Address-title h3::after {
    display: none;
}

.woocommerce-account .woocommerce-Address-title .edit {
    min-height: 36px;
    padding: 9px 13px;
    font-size: 13px;
}

.woocommerce-account address {
    margin: 0;
    color: var(--myacc-muted);
    font-style: normal;
    line-height: 1.75;
}

/* =========================================================
   MESSAGGI
========================================================= */

.woocommerce-account .woocommerce-message,
.woocommerce-account .woocommerce-info,
.woocommerce-account .woocommerce-error {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 22px;
    padding: 17px 20px;
    border: 1px solid var(--myacc-border);
    border-left-width: 5px;
    border-radius: 18px;
    background: #ffffff;
    color: var(--myacc-text);
    box-shadow: var(--myacc-shadow-soft);
}

.woocommerce-account .woocommerce-info {
    border-left-color: var(--myacc-primary);
}

.woocommerce-account .woocommerce-message {
    border-left-color: #2f9e44;
}

.woocommerce-account .woocommerce-error {
    border-left-color: #d9480f;
}

.woocommerce-account .woocommerce-message::before,
.woocommerce-account .woocommerce-info::before,
.woocommerce-account .woocommerce-error::before {
    position: static;
    margin: 0;
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 900px) {
    .woocommerce-account.logged-in .elementor-widget-text-editor .woocommerce,
    .woocommerce-account.logged-in .woocommerce {
        display: block;
    }

    .woocommerce-account .woocommerce-MyAccount-navigation {
        position: relative;
        top: auto;
        margin-bottom: 18px;
        padding: 10px;
        border-radius: 18px;
        overflow: hidden;
    }

    .woocommerce-account .woocommerce-MyAccount-navigation ul {
        display: flex;
        gap: 8px;
        overflow-x: auto;
        padding-bottom: 3px;
        scroll-snap-type: x proximity;
        scrollbar-width: none;
    }

    .woocommerce-account .woocommerce-MyAccount-navigation ul::-webkit-scrollbar {
        display: none;
    }

    .woocommerce-account .woocommerce-MyAccount-navigation li {
        flex: 0 0 auto;
        scroll-snap-align: start;
    }

    .woocommerce-account .woocommerce-MyAccount-navigation a {
        min-height: 44px;
        padding: 10px 13px;
        white-space: nowrap;
        font-size: 14px;
    }

    .woocommerce-account .woocommerce-MyAccount-navigation a::before {
        width: 24px;
        min-width: 24px;
        height: 24px;
        border-radius: 9px;
        font-size: 13px;
    }

    .woocommerce-account .woocommerce-MyAccount-content {
        padding: 22px;
        border-radius: 18px;
    }

    .woocommerce-account .woocommerce-Addresses {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .woocommerce-account .elementor-element-52f6725a .e-con-inner {
        padding-left: 12px;
        padding-right: 12px;
    }

    .woocommerce-account .woocommerce-MyAccount-content {
        padding: 18px;
    }

    .woocommerce-account .woocommerce-MyAccount-content h2,
    .woocommerce-account .woocommerce-MyAccount-content h3,
    .woocommerce-account .woocommerce-MyAccount-content legend {
        font-size: 24px;
    }

    .woocommerce-account .form-row-first,
    .woocommerce-account .form-row-last {
        float: none;
        width: 100%;
    }

    .woocommerce-account fieldset {
        padding: 18px;
        border-radius: 18px;
    }

    .woocommerce-account .woocommerce-Address {
        padding: 20px;
        border-radius: 18px;
    }

    .woocommerce-account .woocommerce-Address-title {
        display: block;
    }

    .woocommerce-account .woocommerce-Address-title .edit {
        width: 100%;
        margin-top: 12px;
    }

    .woocommerce-account .button,
    .woocommerce-account button.button,
    .woocommerce-account input.button,
    .woocommerce-account .woocommerce-button,
    .woocommerce-account a.button {
        width: 100%;
    }

    /* Tabelle ordini in modalità card */
    .woocommerce-account table.shop_table_responsive,
    .woocommerce-account table.shop_table_responsive thead,
    .woocommerce-account table.shop_table_responsive tbody,
    .woocommerce-account table.shop_table_responsive th,
    .woocommerce-account table.shop_table_responsive td,
    .woocommerce-account table.shop_table_responsive tr {
        display: block;
        width: 100%;
    }

    .woocommerce-account table.shop_table_responsive thead {
        display: none;
    }

    .woocommerce-account table.shop_table_responsive {
        border: 0;
        box-shadow: none;
        background: transparent;
    }

    .woocommerce-account table.shop_table_responsive tbody tr {
        margin-bottom: 14px;
        padding: 16px;
        border: 1px solid var(--myacc-border);
        border-radius: 18px;
        background: #ffffff;
        box-shadow: var(--myacc-shadow-soft);
    }

    .woocommerce-account table.shop_table_responsive tbody th,
    .woocommerce-account table.shop_table_responsive tbody td {
        display: flex;
        justify-content: space-between;
        gap: 16px;
        padding: 10px 0;
        border: 0;
        background: transparent !important;
        white-space: normal;
        text-align: right;
    }

    .woocommerce-account table.shop_table_responsive tbody th::before,
    .woocommerce-account table.shop_table_responsive tbody td::before {
        content: attr(data-title);
        color: var(--myacc-text);
        font-weight: 800;
        text-align: left;
    }

    .woocommerce-account .woocommerce-orders-table__cell-order-number {
        align-items: center;
    }

    .woocommerce-account .woocommerce-orders-table__cell-order-number::before {
        content: "Ordine";
    }

    .woocommerce-account .woocommerce-orders-table__cell-order-actions {
        display: block !important;
        text-align: left;
    }

    .woocommerce-account .woocommerce-orders-table__cell-order-actions::before {
        display: none;
    }

    .woocommerce-account .woocommerce-orders-table__cell-order-actions .button {
        margin-top: 10px;
    }
}

/* =========================================================
   FONT / STABILITÀ
========================================================= */

.woocommerce-account,
.woocommerce-account button,
.woocommerce-account input,
.woocommerce-account select,
.woocommerce-account textarea {
    font-family: inherit;
    font-synthesis: none;
    text-rendering: optimizeLegibility;
}

.woocommerce-account * {
    box-sizing: border-box;
}


/* =========================================================
   FIX + RESTYLE SERIO MY ACCOUNT WOOCOMMERCE / ELEMENTOR
   Da inserire DOPO gli altri CSS
========================================================= */

.woocommerce-account {
    --acc-bg: #f8f5f2;
    --acc-card: #ffffff;
    --acc-soft: #f4f0ec;
    --acc-text: #211713;
    --acc-muted: #7a706a;
    --acc-border: rgba(33, 23, 19, 0.10);
    --acc-primary: #211713;
    --acc-primary-soft: rgba(33, 23, 19, 0.07);
    --acc-radius: 22px;
    --acc-shadow: 0 18px 45px rgba(33, 23, 19, 0.08);
}

/* Reset fondamentale: elimina sovrapposizione WooCommerce */
.woocommerce-account .woocommerce::before,
.woocommerce-account .woocommerce::after,
.woocommerce-account .woocommerce-MyAccount-navigation::before,
.woocommerce-account .woocommerce-MyAccount-navigation::after,
.woocommerce-account .woocommerce-MyAccount-content::before,
.woocommerce-account .woocommerce-MyAccount-content::after {
    display: none !important;
    content: none !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content {
    float: none !important;
    width: auto !important;
    clear: none !important;
}

/* Layout desktop corretto */
.woocommerce-account.logged-in .elementor-widget-text-editor > .elementor-widget-container > .woocommerce,
.woocommerce-account.logged-in .elementor-widget-text-editor .woocommerce {
    display: grid !important;
    grid-template-columns: 270px minmax(0, 1fr) !important;
    gap: 28px !important;
    align-items: start !important;
    width: 100% !important;
    max-width: 1180px !important;
    margin: 0 auto !important;
}

/* Se Elementor ha wrapper strani */
.woocommerce-account .elementor-widget-text-editor {
    width: 100%;
}

.woocommerce-account .elementor-widget-text-editor .woocommerce {
    position: relative !important;
}

/* Nasconde i <br> sporchi inseriti nel markup */
.woocommerce-account .woocommerce-MyAccount-navigation a br,
.woocommerce-account .woocommerce-MyAccount-content br {
    display: none !important;
}

/* =========================================================
   MENU LATERALE PULITO
========================================================= */

.woocommerce-account .woocommerce-MyAccount-navigation {
    position: sticky !important;
    top: 110px !important;
    z-index: 1 !important;
    display: block !important;
    padding: 12px !important;
    border: 1px solid var(--acc-border) !important;
    border-radius: var(--acc-radius) !important;
    background: var(--acc-card) !important;
    box-shadow: var(--acc-shadow) !important;
    overflow: hidden !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
    display: grid !important;
    gap: 7px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation li {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation a {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    min-height: 48px !important;
    padding: 11px 13px !important;
    border-radius: 15px !important;
    background: transparent !important;
    color: var(--acc-text) !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1.15 !important;
    text-decoration: none !important;
    box-shadow: none !important;
    transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation a::before {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 30px !important;
    min-width: 30px !important;
    height: 30px !important;
    border-radius: 12px !important;
    background: var(--acc-primary-soft) !important;
    color: currentColor !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation-link--dashboard a::before {
    content: "⌂";
}

.woocommerce-account .woocommerce-MyAccount-navigation-link--orders a::before {
    content: "□";
}

.woocommerce-account .woocommerce-MyAccount-navigation-link--resi-e-recesso a::before {
    content: "↺";
}

.woocommerce-account .woocommerce-MyAccount-navigation-link--downloads a::before {
    content: "↓";
}

.woocommerce-account .woocommerce-MyAccount-navigation-link--edit-address a::before {
    content: "⌖";
}

.woocommerce-account .woocommerce-MyAccount-navigation-link--edit-account a::before {
    content: "○";
}

.woocommerce-account .woocommerce-MyAccount-navigation-link--customer-logout a::before {
    content: "↗";
}

.woocommerce-account .woocommerce-MyAccount-navigation a:hover {
    background: var(--acc-primary-soft) !important;
    transform: translateX(2px) !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation .is-active a {
    background: var(--acc-primary) !important;
    color: #ffffff !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation .is-active a::before {
    background: rgba(255, 255, 255, 0.16) !important;
    color: #ffffff !important;
}

/* =========================================================
   CONTENUTO
========================================================= */

.woocommerce-account .woocommerce-MyAccount-content {
    position: relative !important;
    z-index: 0 !important;
    display: block !important;
    min-width: 0 !important;
    padding: 32px !important;
    border: 1px solid var(--acc-border) !important;
    border-radius: var(--acc-radius) !important;
    background:
        radial-gradient(circle at top right, rgba(33, 23, 19, 0.045), transparent 34%),
        var(--acc-card) !important;
    box-shadow: var(--acc-shadow) !important;
    overflow: visible !important;
}

.woocommerce-account .woocommerce-MyAccount-content p {
    color: var(--acc-muted) !important;
    line-height: 1.7 !important;
}

.woocommerce-account .woocommerce-MyAccount-content > p:first-child {
    margin-top: 0 !important;
    padding: 18px 20px !important;
    border: 1px solid var(--acc-border) !important;
    border-radius: 18px !important;
    background: var(--acc-soft) !important;
}

/* Titoli */
.woocommerce-account .woocommerce-MyAccount-content h2,
.woocommerce-account .woocommerce-MyAccount-content h3,
.woocommerce-account .woocommerce-MyAccount-content legend {
    margin: 0 0 24px !important;
    color: var(--acc-text) !important;
    font-size: clamp(24px, 2vw, 32px) !important;
    font-weight: 800 !important;
    line-height: 1.1 !important;
    letter-spacing: -0.03em !important;
}

.woocommerce-account .woocommerce-MyAccount-content h2::after,
.woocommerce-account .woocommerce-MyAccount-content h3::after,
.woocommerce-account .woocommerce-MyAccount-content legend::after {
    content: "" !important;
    display: block !important;
    width: 44px !important;
    height: 3px !important;
    margin-top: 12px !important;
    border-radius: 999px !important;
    background: var(--acc-primary) !important;
}

/* =========================================================
   TABELLA ORDINI
========================================================= */

.woocommerce-account table.shop_table {
    width: 100% !important;
    overflow: hidden !important;
    border: 1px solid var(--acc-border) !important;
    border-radius: 20px !important;
    background: #ffffff !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    box-shadow: 0 12px 28px rgba(33, 23, 19, 0.055) !important;
}

.woocommerce-account table.shop_table th {
    padding: 16px 18px !important;
    border: 0 !important;
    background: #f4f0ec !important;
    color: var(--acc-text) !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    text-align: left !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
}

.woocommerce-account table.shop_table td,
.woocommerce-account table.shop_table tbody th {
    padding: 18px !important;
    border-top: 1px solid var(--acc-border) !important;
    background: #ffffff !important;
    color: var(--acc-muted) !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    vertical-align: middle !important;
}

.woocommerce-account table.shop_table p {
    margin: 0 !important;
    padding: 0 !important;
}

.woocommerce-account table.shop_table tr:hover td,
.woocommerce-account table.shop_table tr:hover th {
    background: #fbf8f5 !important;
}

.woocommerce-account .woocommerce-orders-table__cell-order-number a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 34px !important;
    padding: 8px 13px !important;
    border-radius: 999px !important;
    background: var(--acc-primary-soft) !important;
    color: var(--acc-primary) !important;
    font-weight: 800 !important;
    text-decoration: none !important;
}

/* =========================================================
   PULSANTI
========================================================= */

.woocommerce-account .button,
.woocommerce-account button.button,
.woocommerce-account input.button,
.woocommerce-account .woocommerce-button,
.woocommerce-account a.button,
.woocommerce-account .edit {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 44px !important;
    padding: 12px 18px !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: var(--acc-primary) !important;
    color: #ffffff !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    box-shadow: none !important;
    outline: none !important;
    cursor: pointer !important;
    transition: opacity 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease !important;
}

.woocommerce-account .button:hover,
.woocommerce-account button.button:hover,
.woocommerce-account input.button:hover,
.woocommerce-account .woocommerce-button:hover,
.woocommerce-account a.button:hover,
.woocommerce-account .edit:hover {
    opacity: 0.92 !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 10px 24px rgba(33, 23, 19, 0.14) !important;
}

/* =========================================================
   FORM
========================================================= */

.woocommerce-account .form-row {
    margin: 0 0 18px !important;
    padding: 0 !important;
}

.woocommerce-account .form-row-first,
.woocommerce-account .form-row-last {
    width: calc(50% - 10px) !important;
}

.woocommerce-account .form-row-first {
    float: left !important;
}

.woocommerce-account .form-row-last {
    float: right !important;
}

.woocommerce-account .form-row-wide {
    clear: both !important;
    width: 100% !important;
}

.woocommerce-account label {
    display: block !important;
    margin-bottom: 8px !important;
    color: var(--acc-text) !important;
    font-size: 14px !important;
    font-weight: 750 !important;
}

.woocommerce-account input.input-text,
.woocommerce-account input[type="text"],
.woocommerce-account input[type="email"],
.woocommerce-account input[type="tel"],
.woocommerce-account input[type="password"],
.woocommerce-account input[type="number"],
.woocommerce-account select,
.woocommerce-account textarea {
    width: 100% !important;
    min-height: 50px !important;
    padding: 0 15px !important;
    border: 1px solid rgba(33, 23, 19, 0.18) !important;
    border-radius: 15px !important;
    background: #ffffff !important;
    color: var(--acc-text) !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    line-height: 50px !important;
    box-shadow: none !important;
    outline: none !important;
}

.woocommerce-account textarea {
    min-height: 130px !important;
    padding-top: 13px !important;
    line-height: 1.5 !important;
}

.woocommerce-account input:focus,
.woocommerce-account select:focus,
.woocommerce-account textarea:focus {
    border-color: var(--acc-primary) !important;
    box-shadow: 0 0 0 4px rgba(33, 23, 19, 0.07) !important;
}

.woocommerce-account fieldset {
    clear: both !important;
    margin: 28px 0 0 !important;
    padding: 24px !important;
    border: 1px solid var(--acc-border) !important;
    border-radius: 20px !important;
    background: var(--acc-soft) !important;
}

/* Select2 indirizzi */
.woocommerce-account .select2-container {
    width: 100% !important;
}

.woocommerce-account .select2-selection--single {
    height: 50px !important;
    border: 1px solid rgba(33, 23, 19, 0.18) !important;
    border-radius: 15px !important;
    background: #ffffff !important;
}

.woocommerce-account .select2-selection__rendered {
    padding-left: 15px !important;
    color: var(--acc-text) !important;
    line-height: 50px !important;
}

.woocommerce-account .select2-selection__arrow {
    height: 50px !important;
    right: 10px !important;
}

/* =========================================================
   INDIRIZZI
========================================================= */

.woocommerce-account .woocommerce-Addresses {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 22px !important;
}

.woocommerce-account .woocommerce-Address {
    min-height: 230px !important;
    padding: 26px !important;
    border: 1px solid var(--acc-border) !important;
    border-radius: 22px !important;
    background: #ffffff !important;
    box-shadow: 0 12px 28px rgba(33, 23, 19, 0.055) !important;
}

.woocommerce-account .woocommerce-Address-title {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 16px !important;
    margin-bottom: 18px !important;
}

.woocommerce-account .woocommerce-Address-title h2,
.woocommerce-account .woocommerce-Address-title h3 {
    margin: 0 !important;
    font-size: 21px !important;
    font-weight: 800 !important;
}

.woocommerce-account .woocommerce-Address-title h2::after,
.woocommerce-account .woocommerce-Address-title h3::after {
    display: none !important;
}

.woocommerce-account address {
    margin: 0 !important;
    color: var(--acc-muted) !important;
    font-style: normal !important;
    line-height: 1.75 !important;
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 900px) {
    .woocommerce-account.logged-in .elementor-widget-text-editor > .elementor-widget-container > .woocommerce,
    .woocommerce-account.logged-in .elementor-widget-text-editor .woocommerce,
    .woocommerce-account.logged-in .woocommerce {
        display: block !important;
        max-width: 100% !important;
    }

    .woocommerce-account .woocommerce-MyAccount-navigation {
        position: relative !important;
        top: auto !important;
        margin-bottom: 18px !important;
        padding: 10px !important;
        border-radius: 18px !important;
        overflow: hidden !important;
    }

    .woocommerce-account .woocommerce-MyAccount-navigation ul {
        display: flex !important;
        gap: 8px !important;
        overflow-x: auto !important;
        padding-bottom: 4px !important;
        scroll-snap-type: x proximity !important;
        scrollbar-width: none !important;
    }

    .woocommerce-account .woocommerce-MyAccount-navigation ul::-webkit-scrollbar {
        display: none !important;
    }

    .woocommerce-account .woocommerce-MyAccount-navigation li {
        flex: 0 0 auto !important;
        scroll-snap-align: start !important;
    }

    .woocommerce-account .woocommerce-MyAccount-navigation a {
        min-height: 44px !important;
        padding: 10px 13px !important;
        white-space: nowrap !important;
        font-size: 14px !important;
    }

    .woocommerce-account .woocommerce-MyAccount-navigation a::before {
        width: 24px !important;
        min-width: 24px !important;
        height: 24px !important;
        border-radius: 9px !important;
        font-size: 13px !important;
    }

    .woocommerce-account .woocommerce-MyAccount-content {
        padding: 22px !important;
        border-radius: 18px !important;
    }

    .woocommerce-account .woocommerce-Addresses {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 640px) {
    .woocommerce-account .woocommerce-MyAccount-content {
        padding: 18px !important;
    }

    .woocommerce-account .form-row-first,
    .woocommerce-account .form-row-last {
        float: none !important;
        width: 100% !important;
    }

    .woocommerce-account fieldset {
        padding: 18px !important;
        border-radius: 18px !important;
    }

    .woocommerce-account .button,
    .woocommerce-account button.button,
    .woocommerce-account input.button,
    .woocommerce-account .woocommerce-button,
    .woocommerce-account a.button {
        width: 100% !important;
    }

    .woocommerce-account .woocommerce-Address {
        padding: 20px !important;
    }

    .woocommerce-account .woocommerce-Address-title {
        display: block !important;
    }

    .woocommerce-account .woocommerce-Address-title .edit {
        width: 100% !important;
        margin-top: 12px !important;
    }

    /* Ordini come card su mobile */
    .woocommerce-account table.shop_table_responsive,
    .woocommerce-account table.shop_table_responsive thead,
    .woocommerce-account table.shop_table_responsive tbody,
    .woocommerce-account table.shop_table_responsive th,
    .woocommerce-account table.shop_table_responsive td,
    .woocommerce-account table.shop_table_responsive tr {
        display: block !important;
        width: 100% !important;
    }

    .woocommerce-account table.shop_table_responsive thead {
        display: none !important;
    }

    .woocommerce-account table.shop_table_responsive {
        border: 0 !important;
        box-shadow: none !important;
        background: transparent !important;
    }

    .woocommerce-account table.shop_table_responsive tbody tr {
        margin-bottom: 14px !important;
        padding: 16px !important;
        border: 1px solid var(--acc-border) !important;
        border-radius: 18px !important;
        background: #ffffff !important;
        box-shadow: 0 12px 28px rgba(33, 23, 19, 0.055) !important;
    }

    .woocommerce-account table.shop_table_responsive tbody th,
    .woocommerce-account table.shop_table_responsive tbody td {
        display: flex !important;
        justify-content: space-between !important;
        gap: 16px !important;
        padding: 10px 0 !important;
        border: 0 !important;
        background: transparent !important;
        white-space: normal !important;
        text-align: right !important;
    }

    .woocommerce-account table.shop_table_responsive tbody th::before,
    .woocommerce-account table.shop_table_responsive tbody td::before {
        content: attr(data-title) !important;
        color: var(--acc-text) !important;
        font-weight: 800 !important;
        text-align: left !important;
    }

    .woocommerce-account .woocommerce-orders-table__cell-order-number::before {
        content: "Ordine" !important;
    }

    .woocommerce-account .woocommerce-orders-table__cell-order-actions {
        display: block !important;
        text-align: left !important;
    }

    .woocommerce-account .woocommerce-orders-table__cell-order-actions::before {
        display: none !important;
    }

    .woocommerce-account .woocommerce-orders-table__cell-order-actions .button {
        margin-top: 10px !important;
    }
}

.woocommerce-Addresses.col2-set > div{
    float: left;
    width: 100% !important;
}
.woocommerce-Addresses::before{
   content:none !important;
}

