:root{
  --bg:#050a16; --bg-soft:#0a1224; --surface:#0d1730; --surface2:#12203f;
  --border:rgba(139,92,246,0.22); --border-soft:rgba(224,234,255,0.08);
  --gold:#8b5cf6; --gold-soft:#a78bfa; --green:#38bdf8; --green-dim:#2563eb;
  --red:#ef7b73; --text:#eef2ff; --text-dim:#9fb0cc; --text-faint:#5d6c8a;
}
*{box-sizing:border-box}
body{margin:0;font-family:'Manrope',sans-serif;background:var(--bg);color:var(--text);min-height:100vh}
h1,h2,h3,.sg{font-family:'Space Grotesk',sans-serif}
a{text-decoration:none}

nav.top{position:sticky;top:0;z-index:50;backdrop-filter:blur(14px);background:rgba(5,10,22,.82);border-bottom:1px solid var(--border-soft);
  display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 48px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:10px;flex-shrink:0}
.nav-sezioni{display:flex;gap:6px;background:var(--bg-soft);padding:5px;border-radius:11px;overflow-x:auto;-webkit-overflow-scrolling:touch}
.nav-sezioni a{padding:8px 16px;border-radius:8px;font-weight:700;font-size:13px;color:var(--text-dim);white-space:nowrap}
.nav-sezioni a.active{background:linear-gradient(135deg,var(--green),var(--green-dim));color:#041022}
.nav-home{color:var(--text-dim);font-size:13px;font-weight:600;flex-shrink:0}

main{max-width:1150px;margin:0 auto;padding:40px 24px}
.eyebrow-sezione{font-size:13px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--gold-soft);margin-bottom:10px}
.card{background:var(--surface);border:1px solid var(--border-soft);border-radius:18px;padding:28px;margin-bottom:22px}
.pill{padding:5px 12px;border-radius:100px;font-size:12px;font-weight:700}
.tabs{display:flex;gap:8px;background:var(--bg-soft);padding:6px;border-radius:12px;width:fit-content;margin-bottom:20px;flex-wrap:wrap}
.tabs a{padding:10px 22px;border-radius:9px;font-weight:700;font-size:14px;color:var(--text-dim)}
.tabs a.active{background:linear-gradient(135deg,var(--gold-soft),var(--gold));color:#1a1033}

table{width:100%;border-collapse:collapse;font-size:.9rem}
th,td{padding:12px;text-align:left;border-bottom:1px solid var(--border-soft);white-space:nowrap}
th{font-size:.7rem;color:var(--text-faint);text-transform:uppercase;letter-spacing:.6px}
td b{font-family:'Space Grotesk',sans-serif}
.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 -4px}
.table-scroll table{margin:0 4px}

.statgrid{display:grid;gap:12px}
.stat{border:1px solid var(--border-soft);border-radius:14px;padding:16px 10px;text-align:center;background:var(--bg-soft);min-width:0}
.stat .v{font-family:'Space Grotesk',sans-serif;font-size:1.5rem;font-weight:700;color:var(--green);word-break:break-word}
.stat .l{font-size:.68rem;color:var(--text-faint);margin-top:4px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}

.bar{height:8px;border-radius:4px;background:var(--surface2);overflow:hidden;min-width:70px}
.bar div{height:100%;border-radius:4px}
footer{text-align:center;color:var(--text-faint);font-size:.78rem;padding:32px 24px;line-height:1.6;border-top:1px solid var(--border-soft)}

@media(max-width:900px){
  main{padding:28px 16px}
  nav.top{padding:12px 16px}
  h1{font-size:32px !important}
  #sim-stats-primarie{grid-template-columns:repeat(3,1fr) !important}
  #sim-stats-secondarie{grid-template-columns:repeat(2,1fr) !important}
  #pf-stats{grid-template-columns:repeat(3,1fr) !important}
  .card{padding:20px}
}
@media(max-width:520px){
  #sim-stats-primarie{grid-template-columns:repeat(2,1fr) !important}
  #pf-stats{grid-template-columns:repeat(2,1fr) !important}
  .stat .v{font-size:1.2rem}
  nav.top{padding:10px 14px}
  .nav-home{display:none}
}
