/*
 Theme Name:   Astra Child
 Template:     astra
 Version:      1.0.0
*/

.woocommerce span.onsale {
display: none;
}

.reviewbucket-container {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 auto !important;
}

.reviewbucket-row {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.revbuck-trustpilot-testimonial-wrap {
    width: 100% !important;
    max-width: 100% !important;
}

.revbucket8-testimonial-item {
    width: 100%;
}

.ast-icon.icon-menu-bars .menu-toggle-icon {
    color: #ea552a;
}
.menu-toggle.ast-mobile-menu-buttons-outline {
    border: 2px solid #ea552a !important;
    border-radius: 10px;
}

/* Container padre */
.product-cards {
  display: flex;
  gap: 20px;
  overflow: hidden;
}

/* Card interne */
.product-cards > .elementor-element {
  opacity: 0;
  transform: translateX(100%);
  animation: slideBounceIn 1s cubic-bezier(.28,.84,.42,1) forwards;
}

/* Rimbalzo */
@keyframes slideBounceIn {
  0% {
    opacity: 0;
    transform: translateX(120%);
  }
  60% {
    opacity: 1;
    transform: translateX(-15px);
  }
  80% {
    transform: translateX(8px);
  }
  100% {
    transform: translateX(0);
  }
}

/* Stagger = ritardo progressivo */
.product-cards > .elementor-element:nth-child(1) { animation-delay: 0.1s; }
.product-cards > .elementor-element:nth-child(2) { animation-delay: 0.25s; }
.product-cards > .elementor-element:nth-child(3) { animation-delay: 0.4s; }
.product-cards > .elementor-element:nth-child(4) { animation-delay: 0.55s; }
.product-cards > .elementor-element:nth-child(5) { animation-delay: 0.7s; }

/* Stile di base per il prezzo in offerta/listino dentro lo shortcode */
.nl-price del {
  font-size: 0.85em;            /* più piccolo */
  opacity: 0.95;                /* leggera attenuazione complessiva */
  text-decoration-thickness: 1px;  /* linea del barrato più fine (facoltativo) */
  color: #333;                  /* fallback per browser senza color-mix */
}

/* Se il browser supporta color-mix, scurisci il colore con un "overlay" nero al 10% */
@supports (color: color-mix(in srgb, black, white)) {
  .nl-price del {
    /* 90% colore corrente + 10% nero ≈ overlay nero 10% sul colore del font */
    color: color-mix(in srgb, currentColor 90%, black 10%);
  }
}

/* (Facoltativo) enfatizza il prezzo scontato */
.nl-price ins {
  font-weight: 600;
}

/* --- FIX estetico widget Alma (solo dentro il container) --- */
#alma-payment-plans { --alma-accent: #ea552a; font-family: inherit; }

/* Riga logo + bottoni piani in orizzontale con spazi */
#alma-payment-plans ._primaryContainer_1e5ls_13{
  display:flex; align-items:center; gap:12px; flex-wrap:wrap;
}

/* Logo cliccabile: pill pulita */
#alma-payment-plans ._knowMore_1e5ls_161{
  display:flex; align-items:center; justify-content:center;
  padding:6px 10px; border:2px solid var(--alma-accent);
  border-radius:12px; background:#fff;
}
#alma-payment-plans ._knowMore_1e5ls_161 svg path{ fill: var(--alma-accent); }

/* Contenitore delle opzioni (2x 3x 4x) */
#alma-payment-plans ._paymentPlans_1e5ls_19{
  display:flex; gap:8px; align-items:center; flex-wrap:nowrap;
}

/* Reset/override sicuro dei bottoni dei piani */
#alma-payment-plans [role="option"]{
  padding:6px 12px !important;
  border:2px solid var(--alma-accent) !important;
  border-radius:999px !important;
  background:#fff !important;
  color: var(--alma-accent) !important;
  font-size:14px !important; line-height:1 !important; font-weight:600 !important;
  min-width:auto !important; height:auto !important;
}

/* Stato attivo (piano selezionato) */
#alma-payment-plans [role="option"][aria-selected="true"]{
  background: var(--alma-accent) !important;
  color:#fff !important; border-color: var(--alma-accent) !important;
}

/* Testo informativo sotto (rate) */
#alma-payment-plans ._info_1e5ls_108{ margin-top:8px; }
#alma-payment-plans ._info_1e5ls_108 p{
  margin:0; font-size:14px; line-height:1.4; color:#222;
}

/* Difese contro regole globali troppo aggressive sui button */
#alma-payment-plans button{
  letter-spacing: normal !important;
  text-transform: none !important;
  box-shadow: none !important;
}

/* === Login WooCommerce – FPS Italia (versione ottimizzata) === */
:root{
  --fps-brand:#ea552a;
  --fps-brand-dark:#d24c21;
  --fps-text:#111;
  --fps-muted:#6b7280;
  --fps-border:#e5e7eb;
  --fps-bg:#fff;
}

/* Contenitori */
.woocommerce #customer_login{ gap:48px; }
.u-column1.col-1{ max-width:560px; margin:0 auto; }
.u-column1 .woocommerce-form.login{
  background:var(--fps-bg);
  border:1px solid var(--fps-border);
  border-radius:14px;
  padding:28px;
  box-shadow:0 8px 24px rgba(0,0,0,.06);
  text-align:left !important;
}
.u-column1 h2{
  margin:0 0 16px;
  font:700 28px/1.15 system-ui,-apple-system,Segoe UI,Roboto,Arial;
  color:var(--fps-text);
}

/* Reset layout tema + campi */
.u-column1 .woocommerce-form-row,
.u-column1 .woocommerce-form-row--wide,
.u-column1 .form-row{
  float:none !important;
  width:100% !important;
  clear:both !important;
  display:block !important;
  text-align:left !important;
  margin-bottom:18px !important;
}
.u-column1 .woocommerce-form-row label{
  margin:0 0 6px 4px !important;
  font-weight:700;
  color:#333;
}
.u-column1 .woocommerce-Input.input-text,
.u-column1 .password-input input{
  width:100%;
  height:46px;
  border-radius:10px;
  border:1px solid var(--fps-border);
  background:#fff;
  padding:10px 44px 10px 14px;
  font-size:16px;
  box-sizing:border-box;
  transition:border-color .2s,box-shadow .2s;
}
.u-column1 .woocommerce-Input.input-text:focus,
.u-column1 .password-input input:focus{
  outline:none;
  border-color:var(--fps-brand);
  box-shadow:0 0 0 4px color-mix(in srgb, var(--fps-brand) 18%, transparent);
}

/* Mostra/Nascondi password */
.u-column1 .password-input{ position:relative; }
.u-column1 .password-input .show-password-input{
  position:absolute; right:12px; top:50%; transform:translateY(-50%);
  width:28px; height:28px; border:0; background:transparent; cursor:pointer; opacity:.7;
}
.u-column1 .password-input .show-password-input:hover{ opacity:1; }
.u-column1 .password-input .show-password-input::before{
  content:""; display:block; width:100%; height:100%;
  background:center/20px 20px no-repeat url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M1 12s4-7 11-7 11 7 11 7-4 7-11 7S1 12 1 12Z'/><circle cx='12' cy='12' r='3'/></svg>");
}

/* Riga azioni: Ricordami + Password dimenticata */
.u-column1 .fps-login-actions{
  display:flex; align-items:center; justify-content:space-between; gap:12px; margin:10px 0 18px;
}
.u-column1 .woocommerce-form__label-for-checkbox{ display:inline-flex; align-items:center; gap:8px; margin:0; color:var(--fps-muted); }
.u-column1 #rememberme{ width:18px; height:18px; border-radius:4px; }
.u-column1 .woocommerce-LostPassword{ margin:0; }
.u-column1 .woocommerce-LostPassword a{ color:var(--fps-brand); font-weight:700; text-decoration:none; }
.u-column1 .woocommerce-LostPassword a:hover{ text-decoration:underline; }

/* Griglia bottoni: Accedi | Google */
.u-column1 .fps-login-buttons{
  display:grid; grid-template-columns:1fr 1fr; gap:12px;
}

/* Accedi */
.u-column1 .fps-login-buttons .woocommerce-form-login__submit{
  width:100%;
  background:var(--fps-brand) !important;
  color:#fff !important;
  border:none !important;
  border-radius:999px !important;
  padding:12px 24px !important;
  font-weight:700 !important; line-height:1 !important;
  box-shadow:0 6px 18px color-mix(in srgb, var(--fps-brand) 35%, transparent);
  transition:transform .05s ease, background .2s ease;
}
.u-column1 .fps-login-buttons .woocommerce-form-login__submit:hover{ background:var(--fps-brand-dark) !important; }
.u-column1 .fps-login-buttons .woocommerce-form-login__submit:active{ transform:translateY(1px); }

/* Google: nessun wrapper stondato, solo l’iframe */
.u-column1 .fps-login-buttons .googlesitekit-sign-in-with-google__frontend-output-button{
  display:block !important;
  margin:0 !important; padding:0 !important;
  background:transparent !important; border:none !important; box-shadow:none !important;
  border-radius:0 !important; overflow:visible !important;
}
.u-column1 .fps-login-buttons .googlesitekit-sign-in-with-google__frontend-output-button iframe{
  display:block; width:100% !important; height:44px !important;
  margin:0 !important; border:0 !important; border-radius:8px !important; /* metti 0 se li vuoi retti */
}

/* Accessibilità */
.u-column1 .required{ color:var(--fps-brand); }
.u-column1 .screen-reader-text{ position:absolute !important; clip:rect(1px,1px,1px,1px); }

/* Responsive */
@media (max-width:640px){
  .u-column1 .fps-login-actions{ flex-direction:column; align-items:flex-start; gap:8px; }
  .u-column1 .fps-login-buttons{ grid-template-columns:1fr; }
}

/* === WooCommerce "Registrati" – stile FPS Italia === */

/* Card e titolo */
.u-column2.col-2 .woocommerce-form.register{
  background: var(--fps-bg);
  border: 1px solid var(--fps-border);
  border-radius: 14px;
  padding: 28px;
  box-shadow: 0 8px 24px rgba(0,0,0,.06);
  text-align: left;
}
.u-column2 h2{
  margin: 0 0 16px;
  font: 700 28px/1.15 system-ui,-apple-system,Segoe UI,Roboto,Arial;
  color: var(--fps-text);
}

/* Campi */
.u-column2 .woocommerce-form-row,
.u-column2 .woocommerce-form-row--wide{
  float:none !important; width:100% !important; clear:both !important;
  display:block !important; text-align:left !important; margin-bottom:18px !important;
}
.u-column2 .woocommerce-form-row label{
  margin:0 0 6px 4px !important;
  font-weight:700; color:#333;
}
.u-column2 .woocommerce-Input.input-text{
  width:100%; height:46px; border-radius:10px;
  border:1px solid var(--fps-border); background:#fff;
  padding:10px 14px; font-size:16px; box-sizing:border-box;
  transition:border-color .2s, box-shadow .2s;
}
.u-column2 .woocommerce-Input.input-text:focus{
  outline:none; border-color:var(--fps-brand);
  box-shadow:0 0 0 4px color-mix(in srgb, var(--fps-brand) 18%, transparent);
}

/* Testo di servizio (info/password) */
.u-column2 .woocommerce-form.register p{
  color:#4b5563; /* grigio leggibile */
  margin:0 0 16px;
}

/* Checkbox newsletter (Mailchimp) */
.u-column2 .mailchimp-newsletter,
.u-column2 .woocommerce-form__label-for-checkbox.inline{
  margin:6px 0 12px !important;
}
.u-column2 .woocommerce-form__label-for-checkbox.inline{
  display:inline-flex; align-items:center; gap:8px; line-height:1.3;
}
.u-column2 .input-checkbox,
.u-column2 input[type="checkbox"]{
  width:18px; height:18px; border-radius:4px;
}

/* Privacy policy */
.u-column2 .woocommerce-privacy-policy-text{
  margin:8px 0 18px;
  color:#4b5563;
}
.u-column2 .woocommerce-privacy-policy-text a{
  color:var(--fps-brand); font-weight:700; text-decoration:none;
}
.u-column2 .woocommerce-privacy-policy-text a:hover{ text-decoration:underline; }

/* Bottone Registrati */
.u-column2 .woocommerce-form-register__submit{
  width:100%;
  background:var(--fps-brand) !important; color:#fff !important;
  border:none !important; border-radius:999px !important;
  padding:12px 24px !important; font-weight:700 !important; line-height:1 !important;
  box-shadow:0 6px 18px color-mix(in srgb, var(--fps-brand) 35%, transparent);
  transition:transform .05s ease, background .2s ease;
}
.u-column2 .woocommerce-form-register__submit:hover{ background:var(--fps-brand-dark) !important; }
.u-column2 .woocommerce-form-register__submit:active{ transform:translateY(1px); }

/* Responsive allineato al login */
@media (max-width:640px){
  .u-column2 .woocommerce-form.register{ padding:22px; }
}

/* === FPS Italia – Dark Mode Account Page === */
body.woocommerce-account{
  background:#0C0C0C;
  color:#EEE;
}

/* Box Login & Registrati */
.u-column1 .woocommerce-form.login,
.u-column2 .woocommerce-form.register{
  background:#1A1A1A;
  border:1px solid #2A2A2A;
  box-shadow:0 8px 24px rgba(0,0,0,.4);
}
.u-column1 h2,
.u-column2 h2{
  color:#EEE;
}

/* Label */
.u-column1 .woocommerce-form-row label,
.u-column2 .woocommerce-form-row label{
  color:#EEE !important;
}

/* Campi input */
.u-column1 .woocommerce-Input.input-text,
.u-column1 .password-input input,
.u-column2 .woocommerce-Input.input-text{
  background:#0C0C0C;
  border:1px solid #2A2A2A;
  color:#EEE;
}
.u-column1 .woocommerce-Input.input-text:focus,
.u-column1 .password-input input:focus,
.u-column2 .woocommerce-Input.input-text:focus{
  border-color:var(--fps-brand);
  box-shadow:0 0 0 4px color-mix(in srgb, var(--fps-brand) 25%, transparent);
}
.u-column1 .woocommerce-Input.input-text::placeholder,
.u-column2 .woocommerce-Input.input-text::placeholder{
  color:#666;
}

/* Ricordami + checkbox newsletter */
.u-column1 .woocommerce-form__label-for-checkbox,
.u-column2 .woocommerce-form__label-for-checkbox.inline{
  color:#AAA;
}
.u-column1 #rememberme,
.u-column2 input[type="checkbox"]{
  accent-color:var(--fps-brand);
}

/* Password dimenticata + privacy link */
.u-column1 .woocommerce-LostPassword a,
.u-column2 .woocommerce-privacy-policy-text a{
  color:var(--fps-brand);
}
.u-column1 .woocommerce-LostPassword a:hover,
.u-column2 .woocommerce-privacy-policy-text a:hover{
  text-decoration:underline;
}

/* Testo secondario (registrazione) */
.u-column2 .woocommerce-form.register p,
.u-column2 .woocommerce-privacy-policy-text{
  color:#AAA;
}

/* Bottoni restano brand (arancione) */
.u-column1 .woocommerce-form-login__submit,
.u-column2 .woocommerce-form-register__submit{
  background:var(--fps-brand) !important;
  color:#fff !important;
}

/* Google login: lascia pulsante chiaro su sfondo scuro */
.u-column1 .fps-login-buttons .googlesitekit-sign-in-with-google__frontend-output-button iframe{
  filter: brightness(1.05) contrast(1.05);
  border:1px solid #2A2A2A !important;
}

/* ===== DARK WRAPPER (Astra) – My Account ===== */
body.woocommerce-account{
  background:#0C0C0C;
  color:#EEE;
  color-scheme: dark; /* migliora autofill/controlli */
}
body.woocommerce-account .site-main,
body.woocommerce-account .ast-container,
body.woocommerce-account .entry-content,
body.woocommerce-account .ast-article-single{
  background:#0C0C0C !important;
}

/* Titoli forti (Astra li rende slavati) */
body.woocommerce-account .u-column1 h2,
body.woocommerce-account .u-column2 h2{
  color:#EEE !important;
  opacity:1 !important;
}

/* ===== BOX SCURI (login + registrati) ===== */
body.woocommerce-account .u-column1 .woocommerce-form.login,
body.woocommerce-account .u-column2 .woocommerce-form.register{
  background:#1A1A1A !important;
  border:1px solid #2A2A2A !important;
  box-shadow:0 8px 24px rgba(0,0,0,.40) !important;
}

/* ===== INPUT & LABEL – REGISTRAZIONE (match con login) ===== */
body.woocommerce-account .u-column2 .woocommerce-form-row label{
  margin:0 0 6px 4px !important;
  font-weight:700; color:#EEE !important;
}
body.woocommerce-account .u-column2 .woocommerce-Input.input-text{
  width:100%; height:46px; border-radius:10px;
  border:1px solid #2A2A2A; background:#0C0C0C; color:#EEE;
  padding:10px 14px; font-size:16px; box-sizing:border-box;
  transition:border-color .2s, box-shadow .2s;
  -webkit-text-fill-color:#EEE; /* per autofill su dark */
}
body.woocommerce-account .u-column2 .woocommerce-Input.input-text:focus{
  outline:none; border-color:var(--fps-brand);
  box-shadow:0 0 0 4px color-mix(in srgb, var(--fps-brand) 25%, transparent);
}
body.woocommerce-account .u-column2 .woocommerce-Input.input-text::placeholder{
  color:#666;
}

/* Testi secondari nel box Registrati */
body.woocommerce-account .u-column2 .woocommerce-form.register p,
body.woocommerce-account .u-column2 .woocommerce-privacy-policy-text{
  color:#AAA;
}
body.woocommerce-account .u-column2 .woocommerce-privacy-policy-text a{
  color:var(--fps-brand);
}
body.woocommerce-account .u-column2 .woocommerce-privacy-policy-text a:hover{
  text-decoration:underline;
}

/* Checkbox (Ricordami + Newsletter) visibili su dark */
body.woocommerce-account .woocommerce-form__label-for-checkbox,
body.woocommerce-account .woocommerce-form__label-for-checkbox.inline{
  color:#AAA;
}
body.woocommerce-account #rememberme,
body.woocommerce-account .u-column2 input[type="checkbox"]{
  accent-color:var(--fps-brand);
}

/* Bottone Registrati – identico ad Accedi */
body.woocommerce-account .u-column2 .woocommerce-form-register__submit{
  background:var(--fps-brand) !important; color:#fff !important;
  border:none !important; border-radius:999px !important;
  padding:12px 24px !important; font-weight:700 !important; line-height:1 !important;
  box-shadow:0 6px 18px color-mix(in srgb, var(--fps-brand) 35%, transparent);
}
body.woocommerce-account .u-column2 .woocommerce-form-register__submit:hover{
  background:var(--fps-brand-dark) !important;
}

/* Google iframe: bordo e micro-boost per integrarsi nel dark */
body.woocommerce-account .fps-login-buttons .googlesitekit-sign-in-with-google__frontend-output-button iframe{
  border:1px solid #2A2A2A !important;
  filter:brightness(1.05) contrast(1.05);
}

/* Centra il bottone nella sua colonna e rimuovi qualsiasi bordo del wrapper */
.u-column1 .fps-login-buttons .googlesitekit-sign-in-with-google__frontend-output-button{
  display:flex !important;
  justify-content:center !important;  /* centra l'iframe nella cella */
  align-items:center !important;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
}

/* Larghezza visiva del bottone; aumenta o metti 100% se lo vuoi full-width */
.u-column1 .fps-login-buttons .googlesitekit-sign-in-with-google__frontend-output-button iframe{
  width: 240px !important;    /* oppure 100% per riempire tutta la colonna */
  height: 44px !important;
  border: 0 !important;       /* bordo dell'iframe (non del bottone interno) */
  margin: 0 !important;
}

}

/* === FPS Italia – My Account (post login) – dark layout === */

/* Layout a due colonne pulito */
body.woocommerce-account .woocommerce{
  display:grid;
  grid-template-columns: 280px 1fr;
  gap:28px;
}

/* Card scure per nav e contenuto */
body.woocommerce-account .woocommerce-MyAccount-navigation,
body.woocommerce-account .woocommerce-MyAccount-content{
  background:#1A1A1A;
  border:1px solid #2A2A2A;
  border-radius:12px;
  box-shadow:0 8px 24px rgba(0,0,0,.35);
}

/* -------- NAV SINISTRA -------- */
body.woocommerce-account .woocommerce-MyAccount-navigation ul{
  list-style:none;
  margin:0; padding:0;
  overflow:hidden; border-radius:12px;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li{
  border-bottom:1px solid #2A2A2A;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li:last-child{
  border-bottom:none;
}
body.woocommerce-account .woocommerce-MyAccount-navigation a{
  display:block;
  padding:14px 18px;
  color:#E5E5E5;
  text-decoration:none;
  font-weight:600;
  transition:background .15s ease, color .15s ease, border-color .15s ease;
}
body.woocommerce-account .woocommerce-MyAccount-navigation a:hover{
  background:#222; color:#fff;
}

/* Attivo */
body.woocommerce-account .woocommerce-MyAccount-navigation .is-active > a{
  background:linear-gradient(180deg, #222 0%, #1A1A1A 100%);
  color:#fff;
  border-left:3px solid var(--fps-brand);
  padding-left:15px; /* compensa il bordo */
}

/* Titoli/intro content */
body.woocommerce-account .woocommerce-MyAccount-content{
  padding:22px 24px;
  color:#EEE;
}
body.woocommerce-account .woocommerce-MyAccount-content p{
  color:#cfcfcf;
  line-height:1.6;
}
body.woocommerce-account .woocommerce-MyAccount-content strong{
  color:#fff;
}
body.woocommerce-account .woocommerce-MyAccount-content a{
  color:var(--fps-brand);
  font-weight:700;
  text-decoration:none;
}
body.woocommerce-account .woocommerce-MyAccount-content a:hover{
  text-decoration:underline;
}

/* ---------- TABELLE (ordini, metodi di pagamento, ecc.) ---------- */
body.woocommerce-account .woocommerce-MyAccount-content table.shop_table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  background:#141414;
  border:1px solid #2A2A2A;
  border-radius:12px;
  overflow:hidden;
  color:#EAEAEA;
}
body.woocommerce-account .woocommerce-MyAccount-content table.shop_table thead th{
  background:#181818;
  color:#DDD;
  font-weight:700;
  border-bottom:1px solid #2A2A2A;
  padding:12px 14px;
}
body.woocommerce-account .woocommerce-MyAccount-content table.shop_table td{
  border-bottom:1px solid #222;
  padding:12px 14px;
}
body.woocommerce-account .woocommerce-MyAccount-content table.shop_table tr:last-child td{
  border-bottom:none;
}

/* Badge/label piccoli */
body.woocommerce-account .woocommerce-MyAccount-content .button,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-button{
  background:var(--fps-brand);
  color:#fff;
  border:none;
  border-radius:999px;
  padding:10px 16px;
  font-weight:700;
  line-height:1;
  box-shadow:0 6px 18px color-mix(in srgb, var(--fps-brand) 35%, transparent);
  transition:background .2s ease, transform .05s ease;
}
body.woocommerce-account .woocommerce-MyAccount-content .button:hover,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-button:hover{
  background:var(--fps-brand-dark);
}
body.woocommerce-account .woocommerce-MyAccount-content .button:active,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-button:active{
  transform:translateY(1px);
}

/* ---------- FORMS INTERNI (indirizzi, dettagli account) ---------- */
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-form-row label{
  color:#EEE; font-weight:700; margin:0 0 6px 4px;
}
body.woocommerce-account .woocommerce-MyAccount-content .input-text,
body.woocommerce-account .woocommerce-MyAccount-content select,
body.woocommerce-account .woocommerce-MyAccount-content textarea{
  width:100%;
  background:#0C0C0C;
  border:1px solid #2A2A2A;
  color:#EEE;
  border-radius:10px;
  padding:10px 12px;
  transition:border-color .2s, box-shadow .2s;
}
body.woocommerce-account .woocommerce-MyAccount-content .input-text:focus,
body.woocommerce-account .woocommerce-MyAccount-content select:focus,
body.woocommerce-account .woocommerce-MyAccount-content textarea:focus{
  outline:none;
  border-color:var(--fps-brand);
  box-shadow:0 0 0 4px color-mix(in srgb, var(--fps-brand) 22%, transparent);
}

/* Checkbox/radio visibili su dark */
body.woocommerce-account .woocommerce-MyAccount-content input[type="checkbox"],
body.woocommerce-account .woocommerce-MyAccount-content input[type="radio"]{
  accent-color:var(--fps-brand);
}

/* ---------- Notices ---------- */
body.woocommerce-account .woocommerce-message,
body.woocommerce-account .woocommerce-info,
body.woocommerce-account .woocommerce-error{
  background:#141414;
  border:1px solid #2A2A2A;
  color:#EEE;
  border-radius:10px;
}

/* ---------- Responsive ---------- */
@media (max-width: 900px){
  body.woocommerce-account .woocommerce{
    grid-template-columns: 1fr;
  }
  body.woocommerce-account .woocommerce-MyAccount-navigation{
    order:1;
	margin-bottom: 24px;
  }
  body.woocommerce-account .woocommerce-MyAccount-content{
    order:2;
  }
  
  .woocommerce .col2-set .col-1, .woocommerce-page .col2-set .col-1 {
    margin-bottom: 24px;
  }
  
}

body.woocommerce-account .woocommerce-Addresses .woocommerce-Address {
  background: #141414;
  border: 1px solid #2A2A2A;
  border-radius: 12px;
  box-shadow: 0 8px 24px rgba(0,0,0,.3);
}

/* Testata della card (titolo + link modifica) */
body.woocommerce-account .woocommerce-Address .title {
  background: #181818;
  border-bottom: 1px solid #2A2A2A;
}
body.woocommerce-account .woocommerce-Address .title h3 {
  color: #EEE !important;
  opacity: 1 !important;
}
body.woocommerce-account .woocommerce-Address .title a.edit {
  color: var(--fps-brand);
}

/* Corpo della card: indirizzo */
body.woocommerce-account .woocommerce-Address address {
  color: #EAEAEA;
}

/* Bordo/hover (opzionale) */
body.woocommerce-account .woocommerce-Addresses .woocommerce-Address:hover {
  border-color: #3a3a3a;
}

.woocommerce .woocommerce-Addresses address, .woocommerce .woocommerce-MyAccount-content address, .woocommerce .woocommerce-customer-details address, .woocommerce-account .woocommerce-Addresses address, .woocommerce-account .woocommerce-MyAccount-content address, .woocommerce-account .woocommerce-customer-details address {
	border: none !important;
}

.woocommerce .woocommerce-Addresses .woocommerce-Address-title, .woocommerce .woocommerce-Addresses .woocommerce-column__title, .woocommerce .woocommerce-MyAccount-content .woocommerce-Address-title, .woocommerce .woocommerce-MyAccount-content .woocommerce-column__title, .woocommerce .woocommerce-customer-details .woocommerce-Address-title, .woocommerce .woocommerce-customer-details .woocommerce-column__title, .woocommerce-account .woocommerce-Addresses .woocommerce-Address-title, .woocommerce-account .woocommerce-Addresses .woocommerce-column__title, .woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title, .woocommerce-account .woocommerce-MyAccount-content .woocommerce-column__title, .woocommerce-account .woocommerce-customer-details .woocommerce-Address-title, .woocommerce-account .woocommerce-customer-details .woocommerce-column__title {
    border-width: 0px;
}

body .woocommerce-MyAccount-navigation-link {
    border: none !important;
}

.woocommerce .addresses .title .edit, .woocommerce-account .addresses .title .edit {
    float: right;
    padding: 0px !important;
    font-size: 12px !important;
    font-weight: 200 !important;
}

/* WooCommerce – bottone mostra/nascondi password: reset + icona */
.woocommerce .password-input{ position: relative; }

.woocommerce .password-input input{
  padding-right: 44px;                 /* spazio per l'icona */
}

.woocommerce .show-password-input{
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  width: 28px;
  height: 28px;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;  /* niente pill arancione */
  box-shadow: none !important;
  cursor: pointer;
  display: inline-block;
  opacity: .8;
}
.woocommerce .show-password-input:hover{ opacity: 1; }

/* icona occhio (bianca, adatta al tema scuro) */
.woocommerce .show-password-input::before{
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: center/20px 20px no-repeat
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 12s4-7 11-7 11 7 11 7-4 7-11 7-11-7-11-7Z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E");
}

/* Se in qualche template il tema forzasse display:block ai bottoni */
.woocommerce .show-password-input,
.woocommerce .show-password-input::before{
  vertical-align: middle;
}

/* Aggiungo bordi completi alla tabella */
.hide_options table,
.hide_options th,
.hide_options td {
    border: 1px solid #ddd;
    border-collapse: collapse;
}

/* Aggiungo bordi mancanti */
.hide_options th, 
.hide_options td {
    border-left: 1px solid #ddd;
    border-top: 1px solid #ddd;
}

/* Spaziatura e allineamento */
.hide_options th, 
.hide_options td {
    padding: 8px 12px;
    text-align: center; /* centra sia testo che prezzi */
    vertical-align: middle;
}

/* Se vuoi che solo i prezzi siano centrati */
.hide_options td {
    text-align: center;
}

.woocommerce-js div.product form.cart table td {
    padding-left: 12px;
}

.quantity .screen-reader-text {
    position: static !important;
    width: auto;
    height: auto;
    clip: auto;
    clip-path: none;
    overflow: visible;
    white-space: normal;
    display: block;
    margin-bottom: 5px;
    font-weight: 600; /* opzionale */
}
