/* Sezione "Analizza i tuoi social" - usa i token di theme.css */
.analisi{padding:96px 0; background:var(--surface); border-top:1px solid var(--line); border-bottom:1px solid var(--line); scroll-margin-top:70px;}
.analisi-head{max-width:720px; margin:0 auto 38px; text-align:center;}
.analisi-head .section-title{margin-bottom:14px;}
.analisi-head p{color:var(--muted); font-size:18px; line-height:1.6;}
.an-wrap{max-width:860px; margin:0 auto;}

.an-tabs{display:inline-flex; gap:6px; padding:5px; border-radius:999px; background:var(--bg); border:1px solid var(--line); margin:0 auto 26px; position:relative; left:50%; transform:translateX(-50%);}
.an-tab{font:inherit; font-size:15px; font-weight:600; padding:11px 28px; border-radius:999px; border:0; background:transparent; color:var(--muted); cursor:pointer; transition:background .2s ease, color .2s ease, transform .16s ease;}
.an-tab.on{background:var(--yellow); color:#1b1206;}
.an-tab:active{transform:scale(.97);}
@media (hover:hover) and (pointer:fine){ .an-tab:not(.on):hover{color:#fff;} }

.an-form{background:var(--bg); border:1px solid var(--line); border-radius:24px; padding:30px 28px; display:grid; gap:30px;}
.an-step{display:flex; gap:18px; align-items:flex-start;}
.an-n{flex:none; width:34px; height:34px; border-radius:50%; background:rgba(252,198,101,.14); border:1px solid rgba(252,198,101,.35); color:var(--yellow); font-family:var(--font-mono); font-size:14px; display:flex; align-items:center; justify-content:center; margin-top:2px;}
.an-body{flex:1; min-width:0;}
.an-label{display:block; font-size:16px; font-weight:600; margin-bottom:12px; color:var(--text);}
.an-handle{display:flex; gap:10px; align-items:stretch; flex-wrap:wrap;}
.an-handle input{flex:1; min-width:200px;}
.an-open{display:inline-flex; align-items:center; padding:0 18px; border-radius:14px; border:1px solid var(--line-strong); color:var(--text); font-size:14px; font-weight:500; white-space:nowrap;}
.an-open[hidden]{display:none;}
@media (hover:hover) and (pointer:fine){ .an-open:hover{background:rgba(255,255,255,.06);} }
.an-help{margin-top:10px; font-size:13.5px; color:var(--muted); line-height:1.5;}

.an-form input[type=text], .an-form input[type=number], .an-form select{
  width:100%; font:inherit; font-size:16px; color:var(--text); background:var(--surface); border:1px solid var(--line-strong);
  border-radius:14px; padding:14px 16px; outline:none; transition:border-color .2s ease, box-shadow .2s ease; -webkit-appearance:none; appearance:none;
}
.an-form select{background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%); background-position:calc(100% - 20px) 55%,calc(100% - 14px) 55%; background-size:6px 6px,6px 6px; background-repeat:no-repeat; padding-right:38px;}
.an-form input:focus, .an-form select:focus{border-color:var(--acc); box-shadow:0 0 0 3px rgba(185,162,255,.2);}
.an-form input::placeholder{color:#7F739C;}
.an-grid{display:grid; grid-template-columns:1fr 1fr; gap:18px 18px;}
.an-f{display:flex; flex-direction:column; gap:7px; min-width:0;}
.an-f.wide{grid-column:auto;}
.an-f label{font-size:14px; font-weight:500; color:var(--text); line-height:1.35;}
.an-f small{font-size:12.5px; color:var(--muted); line-height:1.4;}
.an-err{display:block; font-style:normal; font-size:13px; color:#FF8FA3; min-height:0; margin:0;}
.an-err:empty{display:none;}

.an-checks{display:grid; gap:10px;}
.an-check{display:flex; align-items:flex-start; gap:12px; padding:13px 14px; border-radius:14px; border:1px solid var(--line); background:var(--surface); cursor:pointer; font-size:15px; line-height:1.4; transition:border-color .2s ease, background .2s ease;}
.an-check input{position:absolute; opacity:0; pointer-events:none;}
.an-check span{flex:none; width:22px; height:22px; border-radius:7px; border:1.5px solid var(--line-strong); margin-top:1px; position:relative; transition:background .2s ease, border-color .2s ease;}
.an-check input:checked + span{background:var(--yellow); border-color:var(--yellow);}
.an-check input:checked + span::after{content:""; position:absolute; left:6px; top:2px; width:6px; height:11px; border:solid #1b1206; border-width:0 2.5px 2.5px 0; transform:rotate(45deg);}
.an-check:has(input:checked){border-color:rgba(252,198,101,.45); background:rgba(252,198,101,.06);}
.an-check input:focus-visible + span{box-shadow:0 0 0 3px rgba(185,162,255,.4);}

.an-actions{display:flex; align-items:center; gap:18px; flex-wrap:wrap; padding-left:52px;}
.an-priv{font-size:13px; color:var(--muted); max-width:300px; line-height:1.45;}

/* risultato */
.an-result{display:none; margin-top:30px; scroll-margin-top:90px;}
.an-result.show{display:block; animation:anIn .5s cubic-bezier(.23,1,.32,1);}
@keyframes anIn{from{opacity:0; transform:translateY(16px);}to{opacity:1; transform:none;}}
.an-card{display:flex; gap:30px; align-items:center; padding:28px; border-radius:24px; border:1px solid rgba(185,162,255,.3); background:linear-gradient(160deg,rgba(122,77,240,.22),rgba(122,77,240,.05));}
.an-score{position:relative; width:150px; height:150px; flex:none;}
.an-score svg{width:100%; height:100%; transform:rotate(-90deg);}
.an-score circle{fill:none; stroke-width:9; stroke-linecap:round;}
.an-score .bg{stroke:rgba(255,255,255,.1);}
.an-score .fg{stroke:var(--acc); transition:stroke-dashoffset 1.3s cubic-bezier(.23,1,.32,1);}
.an-score .fg.ok{stroke:#6EE7A8;} .an-score .fg.mid{stroke:var(--yellow);} .an-score .fg.lo{stroke:#FF8FA3;}
.an-num{position:absolute; inset:0; display:flex; align-items:baseline; justify-content:center; padding-top:46px;}
.an-num b{font-family:var(--font-display); font-size:54px; line-height:1; color:#fff;}
.an-num span{font-size:14px; color:var(--muted); margin-left:2px;}
.an-sum{flex:1; min-width:0;}
.an-who{font-family:var(--font-mono); font-size:12px; letter-spacing:.1em; text-transform:uppercase; color:var(--yellow); margin-bottom:8px; word-break:break-all;}
.an-sum h3{font-family:var(--font-display); text-transform:uppercase; font-size:clamp(24px,3.4vw,34px); line-height:1.05; margin-bottom:14px;}
.an-facts{list-style:none; display:grid; gap:7px;}
.an-facts li{display:flex; gap:10px; justify-content:space-between; font-size:14.5px; border-bottom:1px solid var(--line); padding-bottom:7px;}
.an-facts span{color:var(--muted);} .an-facts b{font-weight:600; text-align:right;}

.an-bars{display:grid; grid-template-columns:1fr 1fr; gap:14px 28px; margin:26px 4px;}
.an-bt{display:flex; justify-content:space-between; font-size:14.5px; margin-bottom:7px;}
.an-bt b{font-family:var(--font-mono); font-weight:500;}
.an-bg{height:8px; border-radius:8px; background:rgba(255,255,255,.1); overflow:hidden;}
.an-bg i{display:block; height:100%; width:0; border-radius:8px; transition:width 1.2s cubic-bezier(.23,1,.32,1);}
.an-bg i.ok{background:#6EE7A8;} .an-bg i.mid{background:var(--yellow);} .an-bg i.lo{background:#FF8FA3;}

.an-h{font-family:var(--font-display); text-transform:uppercase; font-size:22px; margin:30px 0 14px;}
.an-recs{list-style:none; display:grid; gap:12px;}
.an-recs li{display:flex; gap:16px; padding:18px 20px; border-radius:18px; background:var(--bg); border:1px solid var(--line);}
.an-rn{flex:none; width:32px; height:32px; border-radius:50%; background:var(--yellow); color:#1b1206; font-weight:700; display:flex; align-items:center; justify-content:center; font-size:15px;}
.an-recs strong{display:block; font-size:17px; margin-bottom:4px;}
.an-recs p{color:#DDD5F2; font-size:15px; line-height:1.6;}
.an-strong{list-style:none; display:grid; gap:10px;}
.an-strong li{padding:14px 18px 14px 44px; border-radius:16px; background:rgba(110,231,168,.07); border:1px solid rgba(110,231,168,.25); font-size:15px; line-height:1.55; color:#DDD5F2; position:relative;}
.an-strong li::before{content:""; position:absolute; left:18px; top:19px; width:12px; height:7px; border-left:2.5px solid #6EE7A8; border-bottom:2.5px solid #6EE7A8; transform:rotate(-45deg);}
.an-strong strong{color:#fff;}
.an-great{padding:18px 20px; border-radius:16px; background:rgba(110,231,168,.08); border:1px solid rgba(110,231,168,.28); margin-top:24px;}

.an-cta{display:flex; align-items:center; justify-content:space-between; gap:22px; flex-wrap:wrap; margin-top:30px; padding:26px 28px; border-radius:22px; background:linear-gradient(160deg,#5B34C9,#2C1566); border:1px solid rgba(185,162,255,.4);}
.an-cta h4{font-family:var(--font-display); text-transform:uppercase; font-size:24px; margin-bottom:6px;}
.an-cta p{color:#D8CFF0; font-size:15px; line-height:1.5; max-width:480px;}
.an-note{margin-top:16px; font-size:13px; color:var(--muted); line-height:1.5;}
.an-redo{font:inherit; font-size:13px; color:var(--acc); background:none; border:0; padding:0; text-decoration:underline; text-underline-offset:3px; cursor:pointer; margin-left:6px;}

@media (max-width:760px){
  .analisi{padding:64px 0;}
  .an-form{padding:22px 16px; gap:26px;}
  .an-step{gap:12px;}
  .an-grid{grid-template-columns:1fr;}
  .an-actions{padding-left:0; flex-direction:column; align-items:stretch;}
  .an-actions .btn{width:100%; justify-content:center;}
  .an-priv{max-width:none;}
  .an-card{flex-direction:column; text-align:center; padding:24px 18px;}
  .an-facts li{text-align:left;}
  .an-bars{grid-template-columns:1fr; gap:14px;}
  .an-cta{padding:22px 18px;}
  .an-cta .btn{width:100%; justify-content:center;}
  .an-recs li{padding:16px 14px; gap:12px;}
  .an-tab{padding:11px 22px;}
}
@media (prefers-reduced-motion:reduce){ .an-result.show{animation:none;} .an-score .fg, .an-bg i{transition:none;} }
