/* SANDRINO - Abbonamenti Mollie */
.snd{--navy:#1A3C5E;--orange:#F4A623;--ink:#3A4A5E;--muted:#6B7A8D;--line:#E3E9F0;--soft:#F7F9FC;--ok:#2E7D46;--bad:#B3261E;
  font-family:"Roboto",system-ui,sans-serif;color:var(--ink);max-width:760px;margin:0 auto 32px;box-sizing:border-box}
.snd *,.snd *::before,.snd *::after{box-sizing:border-box}
.snd .snd-h{font-family:"Barlow Condensed",sans-serif;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:var(--navy);font-size:28px;line-height:1.05;margin:0 0 14px}
.snd p{margin:0 0 12px;line-height:1.55}
.snd-testbar{background:#FFF4E0;border:1px dashed var(--orange);color:#8A5300;font-size:13px;font-weight:600;padding:8px 14px;border-radius:8px;margin-bottom:16px;text-align:center}
.snd-notice{background:#fff;border:1px solid var(--line);border-radius:16px;padding:28px;text-align:center}
.snd-notice h3{font-family:"Barlow Condensed",sans-serif;font-weight:800;text-transform:uppercase;color:var(--navy);font-size:26px;margin:0 0 8px}

/* Pulsanti */
.snd .snd-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:"Barlow Condensed",sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:1px;font-size:19px;line-height:1;
  padding:15px 30px;border-radius:50px;border:2px solid var(--navy);background:var(--navy);color:#fff;cursor:pointer;text-decoration:none;transition:all .2s ease}
.snd .snd-btn:hover{background:var(--orange);border-color:var(--orange);color:#fff}
.snd .snd-btn--accent{background:var(--orange);border-color:var(--orange);box-shadow:0 6px 18px rgba(244,166,35,.35)}
.snd .snd-btn--accent:hover{background:var(--navy);border-color:var(--navy)}
.snd .snd-btn--ghost{background:transparent;color:var(--navy);font-size:16px;padding:10px 18px}
.snd .snd-btn--ghost:hover{background:var(--navy);color:#fff;border-color:var(--navy)}
.snd .snd-btn--danger{background:#fff;color:var(--bad);border-color:var(--bad)}
.snd .snd-btn--danger:hover{background:var(--bad);color:#fff;border-color:var(--bad)}
.snd .snd-btn[disabled]{opacity:.6;cursor:wait}
.snd .snd-link{background:none;border:0;padding:8px 4px;color:var(--muted);font-size:15px;text-decoration:underline;cursor:pointer;font-family:inherit}
.snd .snd-link:hover{color:var(--navy)}

/* Stepper */
.snd-steps{display:flex;gap:6px;list-style:none;margin:0 0 22px;padding:0;counter-reset:s}
.snd-steps li{flex:1;display:flex;align-items:center;gap:8px;font-size:13px;font-weight:500;color:var(--muted);padding:10px 0;border-bottom:3px solid var(--line);margin:0}
.snd-steps li span{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:var(--line);color:var(--muted);font-size:12px;font-weight:700;flex-shrink:0}
.snd-steps li.is-active{color:var(--navy);border-color:var(--orange)}
.snd-steps li.is-active span,.snd-steps li.is-done span{background:var(--navy);color:#fff}
.snd-steps li.is-done{border-color:var(--navy);color:var(--navy)}
@media (max-width:560px){.snd-steps li{font-size:0;justify-content:center}.snd-steps li span{font-size:12px}}

.snd-step{display:none;animation:sndIn .25s ease}
.snd-step.is-active{display:block}
@keyframes sndIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.snd-hp{position:absolute!important;left:-9999px!important;opacity:0}
.snd-lead{color:var(--muted)}
.snd-fine{font-size:13px;color:var(--muted);margin-top:14px}

/* Piani */
.snd-plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}
.snd-plan{display:block;cursor:pointer;margin:0}
.snd-plan input{position:absolute;opacity:0;pointer-events:none}
.snd-plan__box{display:flex;flex-direction:column;gap:6px;height:100%;background:#fff;border:2px solid var(--line);border-radius:16px;padding:20px 18px;transition:all .2s ease}
.snd-plan:hover .snd-plan__box{border-color:#C9D3E0}
.snd-plan input:checked+.snd-plan__box{border-color:var(--orange);box-shadow:0 10px 26px rgba(244,166,35,.18)}
.snd-plan input:focus-visible+.snd-plan__box{outline:3px solid rgba(26,60,94,.3);outline-offset:2px}
.snd-plan__name{font-family:"Barlow Condensed",sans-serif;font-weight:800;text-transform:uppercase;letter-spacing:1px;font-size:26px;color:var(--navy);line-height:1}
.snd-plan__tag{font-size:13px;color:var(--muted)}
.snd-plan__price{font-family:"Barlow Condensed",sans-serif;font-weight:700;font-size:30px;color:var(--navy);margin-top:4px}
.snd-plan__price small{font-family:"Roboto",sans-serif;font-size:13px;color:var(--muted);font-weight:400}
.snd-plan__feat{display:flex;flex-direction:column;gap:4px;font-size:13px;margin-top:6px}
.snd-plan__feat span{line-height:1.35}

/* Campi */
.snd-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 14px}
.snd-field{display:flex;flex-direction:column;gap:6px;margin:0}
.snd-field--full{grid-column:1/-1}
@media (max-width:560px){.snd-grid{grid-template-columns:1fr}}
.snd-field label{font-size:13px;font-weight:600;color:var(--navy)}
.snd-field small{font-size:12px;color:var(--muted)}
.snd .snd-field input,.snd .snd-field select,.snd .snd-otp input{width:100%;font:inherit;font-size:16px;color:var(--navy);background:#fff;border:1.5px solid var(--line);border-radius:10px;padding:13px 14px;transition:border-color .15s ease,box-shadow .15s ease}
.snd .snd-field input:focus,.snd .snd-field select:focus,.snd .snd-otp input:focus{outline:0;border-color:var(--navy);box-shadow:0 0 0 3px rgba(26,60,94,.12)}
.snd .snd-field input[readonly]{background:var(--soft);color:var(--muted)}
.snd .is-invalid input,.snd input.is-invalid{border-color:var(--bad)!important}
.snd-iban{position:relative}
.snd .snd-iban input{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:1px;padding-right:110px}
.snd-iban__state{position:absolute;right:12px;bottom:14px;font-size:12px;font-weight:700}
.snd-iban__state.ok{color:var(--ok)}.snd-iban__state.bad{color:var(--bad)}

.snd-mandate{background:var(--soft);border:1px solid var(--line);border-radius:12px;padding:14px 16px;margin:16px 0 12px;font-size:12.5px;line-height:1.55;color:var(--muted);max-height:150px;overflow:auto}
.snd-mandate strong{display:block;color:var(--navy);font-size:13px;margin-bottom:6px}
.snd-mandate p{margin:0}
.snd-check{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.45;margin:10px 0;cursor:pointer}
.snd-check input{margin-top:3px;width:18px;height:18px;accent-color:var(--navy);flex-shrink:0}
.snd-check a{color:var(--navy)}
.snd-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:22px}
.snd-actions [data-next]:only-child,.snd-actions .snd-btn:only-child{margin-left:auto}

/* Riepilogo e OTP */
.snd-summary{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.snd-summary div{display:flex;justify-content:space-between;gap:16px;padding:12px 16px;border-bottom:1px solid #EDF1F7;font-size:14px}
.snd-summary div:last-child{border-bottom:0}
.snd-summary span{color:var(--muted)}
.snd-summary strong{color:var(--navy);text-align:right}
.snd-summary .is-total{background:var(--soft)}
.snd-summary .is-total strong{font-family:"Barlow Condensed",sans-serif;font-size:22px}
.snd-otp{margin-top:18px;padding:18px;border:2px dashed var(--line);border-radius:14px;text-align:center}
.snd .snd-otp input{max-width:220px;text-align:center;font-size:28px;letter-spacing:10px;font-weight:700;margin:4px auto 6px;display:block}
.snd-error{margin-top:16px;background:#FDECEA;border:1px solid #F5C2BE;color:var(--bad);border-radius:10px;padding:12px 16px;font-size:14px}
.snd-error a{color:var(--bad);font-weight:700}

/* Area cliente */
.snd-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px 24px;margin-bottom:16px;box-shadow:0 4px 18px rgba(26,60,94,.05)}
.snd-card .snd-h{font-size:22px;margin-bottom:8px}
.snd-sub{font-size:14px;color:var(--muted)}
.snd-hero{border-top:4px solid var(--orange)}
.snd-hero__top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}
.snd-kicker{font-size:12px;text-transform:uppercase;letter-spacing:1px;color:var(--muted)}
.snd-hero__plan{font-family:"Barlow Condensed",sans-serif;font-weight:800;text-transform:uppercase;font-size:34px;color:var(--navy);line-height:1}
.snd-hero__facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin:18px 0 6px}
.snd-fact{background:var(--soft);border-radius:10px;padding:12px 14px}
.snd-fact span{display:block;font-size:12px;color:var(--muted);margin-bottom:3px}
.snd-fact strong{color:var(--navy);font-size:15px}
.snd-badge{display:inline-block;font-size:12px;font-weight:700;padding:6px 12px;border-radius:40px;white-space:nowrap}
.snd-badge--ok{color:var(--ok);background:rgba(46,125,70,.12)}
.snd-badge--warn{color:#A35F00;background:rgba(244,166,35,.18)}
.snd-badge--bad{color:var(--bad);background:rgba(179,38,30,.1)}
.snd-badge--muted{color:#5B6676;background:rgba(138,148,166,.16)}
.snd-note{font-size:14px;color:var(--muted);margin-top:10px}
.snd-warn{background:#FFF4E0;border-left:4px solid var(--orange);border-radius:8px;padding:12px 14px;font-size:14px;margin-top:12px}
.snd-inline{margin-top:14px}
.snd-empty{text-align:center;padding:34px 24px}

.snd-planrow{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-top:10px}
.snd-mini{border:1.5px solid var(--line);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:8px;align-items:flex-start}
.snd-mini.is-current{border-color:var(--orange);background:#FFFBF3}
.snd-mini__name{font-family:"Barlow Condensed",sans-serif;font-weight:800;text-transform:uppercase;font-size:20px;color:var(--navy)}
.snd-mini__price{font-weight:700;color:var(--navy)}
.snd-mini__price small{font-weight:400;color:var(--muted)}
.snd-mini__tag{font-size:12px;font-weight:700;color:#A35F00}
.snd-mini form{margin:0}

.snd-pay{display:flex;align-items:center;gap:14px;margin:6px 0 10px}
.snd-pay__icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:38px;border-radius:8px;background:var(--navy);color:#fff;font-weight:800;font-size:12px;letter-spacing:1px}
.snd-pay small{color:var(--muted)}
.snd-details summary{cursor:pointer;font-weight:600;color:var(--navy);padding:6px 0;list-style:none}
.snd-details summary::-webkit-details-marker{display:none}
.snd-details summary::after{content:"＋";float:right;color:var(--muted)}
.snd-details[open] summary::after{content:"－"}
.snd-details form{margin-top:12px}
.snd-cancel summary{color:var(--muted);font-weight:500}
.snd-dl{display:grid;grid-template-columns:auto 1fr;gap:6px 18px;font-size:14px;margin:10px 0}
.snd-dl dt{color:var(--muted)}.snd-dl dd{margin:0;color:var(--navy);font-weight:600}

.snd-payments{list-style:none;margin:6px 0 0;padding:0}
.snd-payments li{display:grid;grid-template-columns:1fr auto auto auto;gap:14px;align-items:center;padding:11px 0;border-bottom:1px solid #EDF1F7;font-size:14px;margin:0}
.snd-payments li:last-child{border-bottom:0}
.snd-payments__amount{font-weight:700;color:var(--navy)}
.snd-payments a{color:var(--navy);font-size:13px}
@media (max-width:480px){.snd-payments li{grid-template-columns:1fr auto;}.snd-payments li a{grid-column:1/-1}}

.snd-alert{display:flex;gap:14px;align-items:flex-start;background:var(--soft);border:1px solid var(--line);border-left:5px solid var(--orange);border-radius:12px;padding:16px 18px;margin-bottom:16px}
.snd-alert--bad{border-left-color:var(--bad);background:#FDF3F2}
.snd-alert--muted{border-left-color:#8A94A6}
.snd-alert__icon{flex-shrink:0;width:30px;height:30px;border-radius:50%;background:var(--orange);color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center}
.snd-alert--bad .snd-alert__icon{background:var(--bad)}.snd-alert--muted .snd-alert__icon{background:#8A94A6}
.snd-alert strong{font-family:"Barlow Condensed",sans-serif;font-weight:800;text-transform:uppercase;font-size:20px;color:var(--navy)}
.snd-alert p{margin:2px 0 0;font-size:14px}

@media print{body *{visibility:hidden}.snd-details[open],.snd-details[open] *{visibility:visible}.snd-details[open]{position:absolute;left:0;top:0;width:100%}}

/* ===== v1.1: area account ===== */
.snd-account{max-width:none;margin:0}
.snd-hello{font-size:16px;color:var(--ink);margin:0 0 18px}
.snd-hello strong{color:var(--navy)}
.snd-card__head{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.snd-card__head a{font-size:14px;color:var(--navy);font-weight:600}
.snd-fact small{display:block;font-weight:500;color:var(--muted);font-size:13px;margin-top:2px}
.snd .snd-btn--sm{font-size:15px;padding:9px 16px}
.snd-actions-bar{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;padding-top:18px;border-top:1px solid #EDF1F7;align-items:center}
.snd-actions-bar form{margin:0}
.snd .snd-actions-bar .snd-btn{font-size:16px;padding:11px 20px}
.snd-actions-bar .snd-btn--danger{margin-left:auto}
@media (max-width:600px){.snd-actions-bar .snd-btn{flex:1 1 100%}.snd-actions-bar .snd-btn--danger{margin-left:0}}
.snd-withdraw{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;background:#FFF8EC;border:1.5px solid var(--orange);border-radius:12px;padding:14px 16px;margin-top:16px}
.snd-withdraw strong{display:block;color:var(--navy);font-size:15px}
.snd-withdraw span{font-size:14px;color:var(--ink)}
.snd .snd-btn--withdraw{background:var(--navy);border-color:var(--navy);color:#fff;font-size:16px;padding:11px 20px}
.snd .snd-btn--withdraw:hover{background:var(--bad);border-color:var(--bad)}
.snd-card--withdraw{border:1.5px solid var(--orange)}
.snd-card--cancel{border-left:4px solid #E7B4AF}
.snd-card{scroll-margin-top:110px}
.snd-mini__feat{list-style:none;margin:0;padding:0;font-size:13px;color:var(--muted)}
.snd-mini__feat li{margin:0 0 3px;padding-left:16px;position:relative}
.snd-mini__feat li::before{content:"✓";position:absolute;left:0;color:var(--orange);font-weight:700}
.snd-pay strong{color:var(--navy);font-size:16px;letter-spacing:.5px}
.snd-pay small{display:block}
.snd-details{border-top:1px solid #EDF1F7;margin-top:10px;padding-top:6px}
.snd-help{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;background:var(--soft);border-radius:14px;padding:16px 20px;margin-top:6px}
.snd-help strong{display:block;color:var(--navy)}
.snd-help span{font-size:14px;color:var(--muted)}
.snd-recesso{max-width:680px}

/* ===== WooCommerce "Il mio account" ===== */
body.snd-account-page .woocommerce{max-width:1120px;margin:40px auto 60px;padding:0 20px;display:grid;grid-template-columns:230px minmax(0,1fr);gap:32px;align-items:start;font-family:"Roboto",system-ui,sans-serif}
body.snd-account-page .woocommerce::before,body.snd-account-page .woocommerce::after{display:none}
body.snd-account-page .woocommerce-MyAccount-navigation,body.snd-account-page .woocommerce-MyAccount-content{float:none!important;width:auto!important;margin:0!important}
body.snd-account-page .woocommerce-MyAccount-navigation{position:sticky;top:110px;background:#fff;border:1px solid #E3E9F0;border-radius:16px;padding:10px;box-shadow:0 4px 18px rgba(26,60,94,.05)}
body.snd-account-page .woocommerce-MyAccount-navigation ul{list-style:none!important;margin:0!important;padding:0!important;display:flex!important;flex-direction:column;gap:2px}
body.snd-account-page .woocommerce-MyAccount-navigation li{margin:0!important;padding:0!important;border:0!important}
body.snd-account-page .woocommerce-MyAccount-navigation li a{display:block!important;padding:11px 14px!important;border-radius:10px!important;background:transparent!important;border:0!important;color:#3A4A5E!important;font-size:15px!important;font-weight:500!important;text-decoration:none!important;transition:background .15s ease}
body.snd-account-page .woocommerce-MyAccount-navigation li a:hover{background:#F7F9FC!important;color:#1A3C5E!important}
body.snd-account-page .woocommerce-MyAccount-navigation li.is-active a{background:#1A3C5E!important;color:#fff!important;font-weight:600!important}
body.snd-account-page .woocommerce-MyAccount-navigation-link--customer-logout{margin-top:6px!important;border-top:1px solid #EDF1F7!important;padding-top:6px!important}
body.snd-account-page .woocommerce-MyAccount-navigation-link--customer-logout a{color:#8A94A6!important}
@media (max-width:860px){
  body.snd-account-page .woocommerce{grid-template-columns:1fr;gap:18px;margin-top:24px}
  body.snd-account-page .woocommerce-MyAccount-navigation{position:static;padding:6px;overflow-x:auto}
  body.snd-account-page .woocommerce-MyAccount-navigation ul{flex-direction:row!important;flex-wrap:nowrap!important}
  body.snd-account-page .woocommerce-MyAccount-navigation li a{white-space:nowrap;font-size:14px!important;padding:9px 12px!important}
  body.snd-account-page .woocommerce-MyAccount-navigation-link--customer-logout{margin:0!important;border:0!important;padding:0!important}
}
/* Pagine standard (ordini, dati, indirizzi) */
body.snd-account-page .woocommerce-MyAccount-content{color:#3A4A5E;font-size:15px}

body.snd-account-page .woocommerce-MyAccount-content table.shop_table{border:1px solid #E3E9F0!important;border-radius:14px;border-collapse:separate;overflow:hidden;width:100%}
body.snd-account-page .woocommerce-MyAccount-content table.shop_table th{background:#F7F9FC;color:#1A3C5E;font-size:13px;text-transform:uppercase;letter-spacing:.5px;padding:12px 14px}
body.snd-account-page .woocommerce-MyAccount-content table.shop_table td{padding:12px 14px;border-top:1px solid #EDF1F7}
body.snd-account-page .woocommerce-MyAccount-content .button,body.snd-account-page .woocommerce-MyAccount-content button.button{background:#1A3C5E!important;color:#fff!important;border-radius:40px!important;padding:9px 18px!important;font-weight:600!important;border:0!important}
body.snd-account-page .woocommerce-MyAccount-content .button:hover{background:#F4A623!important}
body.snd-account-page .woocommerce-MyAccount-content input.input-text,body.snd-account-page .woocommerce-MyAccount-content select{border:1.5px solid #E3E9F0!important;border-radius:10px!important;padding:11px 12px!important;font-size:15px!important}
body.snd-account-page .woocommerce-MyAccount-content h2,body.snd-account-page .woocommerce-MyAccount-content h3{font-family:"Barlow Condensed",sans-serif;text-transform:uppercase;color:#1A3C5E}
.snd-info{background:var(--soft);border-radius:10px;padding:12px 14px;font-size:13px;line-height:1.5;color:var(--ink);margin:12px 0 4px}
.snd-info strong{display:block;color:var(--navy);margin-bottom:2px}
.snd-info a{color:var(--navy)}

.snd,.snd-account,body.snd-account-page .woocommerce-MyAccount-content{text-align:left}
body.snd-account-page .woocommerce-MyAccount-navigation li a{text-align:left!important}
.snd-card .snd-form > .snd-btn,.snd-card form > .snd-btn{margin-top:14px}
