/* Pagine del sito oltre all'iscrizione: area account, pagine legali, ritorno dai collegamenti. Base in welcome.css. */
.account-main{max-width:1120px}
.account-main>.entry-title{margin-bottom:30px}
.account-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:20px;align-items:start}
.account-col{display:grid;gap:20px;min-width:0}
.account-card{padding:28px}
.account-card:focus{outline:2px solid #c084fc55;outline-offset:4px}
.account-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}
.account-head h2{font-size:19px;font-weight:550;letter-spacing:-.4px}
.status-badge{font-size:9px;letter-spacing:1.4px;padding:6px 9px;border-radius:6px;border:1px solid #ffffff26;color:#d4d4dc}
.status-badge.trial{color:#d8b4fe;border-color:#a855f755;background:#a855f714}
.status-badge.active{color:#6ee7b7;border-color:#34d39955;background:#34d39912}
.status-badge.cancelled{color:#fca5a5;border-color:#f8717155;background:#f8717112}
.account-product{font-size:24px;font-weight:550;letter-spacing:-.6px}
.account-product small{display:block;font-size:12px;font-weight:400;letter-spacing:0;color:var(--muted);margin-top:6px}
.account-rows{display:grid;margin:20px 0 4px;border-top:1px solid var(--line)}
.account-rows>div{display:flex;justify-content:space-between;gap:16px;padding:13px 0;border-bottom:1px solid var(--line);font-size:12px}
.account-rows dt{color:var(--muted)}
.account-rows dd{margin:0;text-align:right;color:#e4e4e7}
.account-note{display:flex;gap:8px;align-items:flex-start;font-size:11px;line-height:1.7;color:#a1a1ae;margin:14px 0}
.account-note .e-icon{width:15px;flex-shrink:0;margin-top:2px;color:#c084fc}
.account-card>.e-btn.full{margin-top:6px}
.account-card .demo-scenarios{margin-top:14px}
.product-options{display:grid;gap:12px}
.product-option{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px;border:1px solid #ffffff1f;border-radius:16px;background:#ffffff03}
.product-option strong{font-size:15px;font-weight:600}
.product-option p{font-size:11px;color:var(--muted);margin-top:4px}
.product-option small{display:block;font-size:10px;color:#a99bb8;margin-top:6px}
.product-option.current{border-color:#a855f766;background:#a855f70f}
.product-option.completo.current{border-color:#34d39966;background:#34d3990d}
.product-option .e-btn{min-height:44px;padding:10px 14px;font-size:12px;flex-shrink:0}
.current-label{font-size:10px;color:#d8b4fe;flex-shrink:0}
.product-option.completo .current-label{color:#6ee7b7}
.card-row{display:flex;align-items:center;gap:14px}
.card-row>.e-icon{width:34px;height:34px;padding:7px;border-radius:10px;border:1px solid #ffffff22;color:#d8b4fe}
.card-row strong{font-size:14px;font-weight:550}
.card-row small{display:block;font-size:11px;color:var(--muted);margin-top:3px}
.invoice-list{list-style:none;padding:0;margin:0;display:grid}
.invoice-list li{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}
.invoice-list li:last-child{border-bottom:0}
.invoice-list li>div{flex:1;min-width:0}
.invoice-list strong{font-size:13px;font-weight:550}
.invoice-list small{display:block;font-size:10px;color:var(--muted);margin-top:3px}
.invoice-list .e-icon{width:18px;color:#c084fc;flex-shrink:0}
.invoice-list .e-btn.text{min-height:44px;padding:8px 0;color:#d8b4fe}
.account-empty{font-size:12px;color:var(--muted);line-height:1.7}
.account-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.account-actions .e-btn{flex:1 1 auto;min-height:46px;padding:11px 16px;font-size:12px}
.e-btn.danger{background:transparent;border:1px solid #f8717166;color:#fca5a5}
.dialog-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.dialog-actions .e-btn{flex:1 1 auto}
.radio-cards{display:grid;gap:10px;margin-top:16px}
.radio-card{display:flex;gap:12px;align-items:flex-start;padding:14px;border:1px solid #ffffff22;border-radius:14px;cursor:pointer}
.radio-card:has(input:checked){border-color:#a855f780;background:#a855f712}
.radio-card input{accent-color:#9333ea;width:18px;height:18px;margin:2px 0 0;flex-shrink:0}
.radio-card strong{display:block;font-size:13px;font-weight:600}
.radio-card small{display:block;font-size:11px;color:var(--muted);margin-top:4px;line-height:1.6}

/* Pagine legali: bozze da verificare. */
.legal-main{max-width:820px}
.legal-draft{display:flex;gap:10px;align-items:flex-start;padding:15px 17px;border:1px solid #fb923c55;background:#fb923c10;border-radius:14px;font-size:12px;line-height:1.7;color:#fed7aa;margin-bottom:26px}
.legal-nav{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:34px}
.legal-nav a{min-height:44px;display:inline-flex;align-items:center;padding:9px 16px;border:1px solid #ffffff22;border-radius:22px;font-size:12px;color:#d4d4dc}
.legal-nav a:hover{border-color:#a855f780}
.legal-doc{scroll-margin-top:20px;padding-top:10px;margin-bottom:46px}
.legal-doc>h2{font-size:30px;font-weight:550;letter-spacing:-.9px;margin-bottom:6px}
.legal-doc>.legal-updated{font-size:11px;color:var(--muted);margin-bottom:22px}
.legal-doc h3{font-size:16px;font-weight:600;margin:28px 0 10px}
.legal-doc p,.legal-doc li{font-size:13px;line-height:1.8;color:#c9c9d3}
.legal-doc ul{padding-left:20px;display:grid;gap:6px;margin:10px 0}
.legal-doc strong{color:#f4f4f5;font-weight:600}
.legal-doc .fill{color:#fdba74}
.legal-table{width:100%;border-collapse:collapse;margin:12px 0;font-size:12px}
.legal-table th,.legal-table td{text-align:left;padding:10px;border-bottom:1px solid var(--line);vertical-align:top;color:#c9c9d3}
.legal-table th{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);font-weight:600}

/* Ritorno dai collegamenti (oggi solo Garmin). */
.return-main{max-width:640px}
.return-card{text-align:center}
.return-card .step-icon{margin:0 auto 18px}
.return-card h1{font-size:30px;font-weight:550;letter-spacing:-1px;margin:10px 0 12px}
.return-card>p{font-size:13px;color:var(--muted);line-height:1.7;margin:0 auto 20px;max-width:460px}
.return-actions{display:grid;gap:10px;margin-top:10px}
.return-note{font-size:10px;color:#8d8d9c;line-height:1.7;margin-top:18px}
.return-guide{text-align:left;margin:4px 0 20px;padding:18px 20px;border:1px solid var(--line);border-radius:18px;background:#ffffff06}
.return-guide-title{margin:0 0 10px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.return-guide ol{margin:0;padding-left:20px;display:grid;gap:10px}
.return-guide li{font-size:13px;line-height:1.55;color:var(--ink)}
.return-guide li::marker{color:var(--accent);font-weight:600}
.return-guide-note{margin:12px 0 0;font-size:11px;color:var(--muted)}

@media(max-width:760px){.account-grid{grid-template-columns:1fr}.account-card{padding:22px}.product-option{flex-direction:column;align-items:flex-start}.product-option .e-btn{width:100%}.legal-doc>h2{font-size:25px}.legal-table{display:block;overflow-x:auto}}
/* Stati dell'abbonamento, mensile o annuale e recesso */
.status-badge.past_due{color:#fcd34d;border-color:#fbbf2455;background:#fbbf2412}
.status-badge.ended{color:#a1a1ae;border-color:#ffffff22;background:#ffffff08}
.status-badge.free{color:#93c5fd;border-color:#60a5fa55;background:#60a5fa12}
.account-interval{display:flex;gap:4px;width:fit-content;padding:4px;margin:14px 0 4px;border:1px solid #ffffff20;border-radius:12px;background:#0a0a0c}
.account-interval .e-btn.tab{min-height:38px;padding:8px 16px}
.account-interval .e-btn.tab.active{background:#a855f733;color:#f3e8ff}
.withdraw-box{margin-top:18px;padding-top:14px;border-top:1px solid #ffffff14;font-size:11px;line-height:1.7;color:#a1a1ae}
.withdraw-box strong{color:#e4e4ea;font-weight:500}
.withdraw-box .e-btn.text{padding-left:0;min-height:40px;color:#fca5a5}
/* Prodotto nell'area account: prezzo come sul sito e cosa include */
.product-option .option-price{margin-top:8px;font-size:12px;color:#a1a1ae}
.product-option .option-price strong{font-size:17px;font-weight:600;color:#f1f1f4}
.product-option .option-price s{color:#7c7c8a}
.product-option .option-includes{list-style:none;display:grid;gap:6px;margin:10px 0 0;padding:0}
.product-option .option-includes li{position:relative;padding-left:18px;font-size:11px;line-height:1.5;color:#b9b9c4}
.product-option .option-includes li:before{content:'✓';position:absolute;left:0;color:#c084fc}
.product-option.completo .option-includes li:before{color:#34d399}
/* Comunicazioni: novità e offerte */
.comms-row{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}
.comms-row>div{display:grid;gap:4px;min-width:0;flex:1 1 220px}
.comms-row strong{font-size:14px;font-weight:550}
.comms-row small{font-size:11px;color:#a1a1ae;line-height:1.5}
.comms-row .consent-stamp{color:#8f8f9c}

/* Pagina di ritorno dal collegamento: arrivo dei dati storici a pacchetti (sync-progress-view.mjs). */
.return-sync{text-align:left;margin:4px 0 20px;padding:18px;border:1px solid var(--line);border-radius:18px;background:#ffffff06}
.return-sync .sync-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.return-sync .sync-summary strong{font-size:15px;font-weight:600}
.return-sync .sync-summary .sync-head span{font-variant-numeric:tabular-nums;font-size:13px;color:var(--muted)}
.return-sync p{margin:8px 0 0;font-size:12px;line-height:1.55;color:var(--muted)}
.return-sync .sync-bar{height:8px;margin-top:10px;border-radius:99px;overflow:hidden;background:#ffffff17}
.return-sync .sync-bar i{display:block;height:100%;border-radius:inherit;background:var(--gradient);transition:width .6s ease}
.return-sync .sync-types{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:14px}
.return-sync .sync-type .sync-head strong{font-size:13px}
.return-sync .sync-type .sync-bar{height:5px;margin-top:8px}
.return-sync .sync-pill{flex:none;font-size:11px;padding:2px 8px;border-radius:99px;background:#ffffff12;color:var(--muted)}
.return-sync .sync-in_arrivo .sync-pill{background:#a855f72e;color:#d8b4fe}
.return-sync .sync-completo .sync-pill{background:#22c55e24;color:#86efac}
.return-sync .sync-nessun_dato .sync-pill,.return-sync .sync-errore .sync-pill{background:#f9731626;color:#fdba74}
.return-sync .sync-note{margin-top:16px}
@media (prefers-reduced-motion:reduce){.return-sync .sync-bar i{transition:none}}
