/* MoltoMeno.it */
:root{
  --navy:#0b2545; --navy-2:#13315c; --ink:#1b2333; --muted:#667085; --line:#e4e7ee;
  --bg:#f5f6fa; --card:#fff; --lime:#c6f432; --lime-d:#a8d61a; --green:#0f9d58; --red:#d92d20; --amber:#f5a623;
  --luce:#f5b700; --gas:#ff6b35; --fibra:#3a86ff;
  --r:14px; --sh:0 1px 2px rgba(16,24,40,.06),0 4px 16px rgba(16,24,40,.06);
  font-family: system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-size:16px;line-height:1.5;min-height:100vh;display:flex;flex-direction:column}
main{flex:1}
a{color:var(--navy-2)}
h1,h2,h3{line-height:1.2;color:var(--navy);margin:0 0 .6em}
h1{font-size:clamp(1.6rem,4vw,2.2rem)} h2{font-size:1.35rem;margin-top:1.6em} h3{font-size:1.1rem}
.wrap{max-width:1160px;margin:0 auto;padding:0 16px}
.section{padding:32px 16px} .section.alt{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.narrow{max-width:860px}
.muted{color:var(--muted)} .small{font-size:.875rem} .nowrap{white-space:nowrap}
.inline{display:inline}
input,select,textarea{font:inherit;color:inherit;width:100%;padding:.65em .8em;border:1.5px solid var(--line);border-radius:10px;background:#fff;transition:border-color .15s}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--navy-2);box-shadow:0 0 0 3px rgba(19,49,92,.12)}
input[type=checkbox],input[type=radio]{width:auto;accent-color:var(--navy)}
label{display:block;font-weight:600;font-size:.9rem;margin-bottom:.9rem}
label>input,label>select,label>textarea{margin-top:.3rem;font-weight:400}
label.check,label.radio{display:flex;gap:.5em;align-items:center;font-weight:400}

/* buttons */
.btn{display:inline-block;background:var(--navy);color:#fff;border:0;border-radius:10px;padding:.7em 1.2em;font:inherit;font-weight:700;text-decoration:none;cursor:pointer;text-align:center;transition:transform .1s,background .15s}
.btn:hover{background:var(--navy-2)} .btn:active{transform:translateY(1px)}
.btn-cta{background:var(--lime);color:var(--navy)} .btn-cta:hover{background:var(--lime-d)}
.btn-ghost{background:transparent;color:var(--navy);box-shadow:inset 0 0 0 1.5px var(--line)} .btn-ghost:hover{background:#eef1f7}
.btn-sm{padding:.45em .9em;font-size:.9rem} .btn-block{display:block;width:100%;margin-top:.6rem}
.linkbtn{background:none;border:0;padding:0;font:inherit;color:var(--navy-2);text-decoration:underline;cursor:pointer}
.linkbtn.danger{color:var(--red)}
.iconbtn{background:#fff;border:1.5px solid var(--line);border-radius:10px;width:42px;height:42px;font-size:1.2rem;cursor:pointer;color:var(--muted)}
.iconbtn.on{color:var(--red);border-color:#fecdca;background:#fff5f4}

/* topbar */
.topbar{background:var(--navy);color:#fff;position:sticky;top:0;z-index:20}
.topbar-in{display:flex;align-items:center;gap:24px;height:64px}
.logo{color:#fff;text-decoration:none;font-size:1.35rem;letter-spacing:-.02em;display:flex;align-items:center;gap:.35em}
.logo b{color:var(--lime)} .logo small{opacity:.6;font-size:.8em}
.logo-mark{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:8px;background:var(--lime);color:var(--navy);font-weight:900}
.mainnav{display:flex;gap:4px}
.mainnav a{color:#cfd8e8;text-decoration:none;padding:.45em .8em;border-radius:8px;font-weight:600}
.mainnav a:hover,.mainnav a.on{color:#fff;background:rgba(255,255,255,.1)}
.usernav{margin-left:auto;display:flex;align-items:center;gap:14px}
.usernav a,.usernav .linkbtn{color:#fff;font-weight:600;text-decoration:none}
.usernav .btn{background:var(--lime);color:var(--navy)}
.pill{padding:.2em .7em;border-radius:99px;font-size:.8rem}
.pill-admin{background:var(--amber);color:var(--navy)!important}

.flash{padding:12px 0;font-weight:600}
.flash-ok{background:#e7f8ee;color:#0b6b3a} .flash-err{background:#fdecea;color:#a3221a} .flash-warn{background:#fff6e0;color:#8a5a00}
.alert{background:#fdecea;color:#a3221a;padding:.7em 1em;border-radius:10px;margin-bottom:1rem;font-weight:600}

/* hero */
.hero{background:radial-gradient(1200px 400px at 85% -10%,#1d4e89 0%,transparent 60%),var(--navy);color:#fff;padding:48px 0 64px}
.hero-in{display:grid;grid-template-columns:1fr 1.05fr;gap:48px;align-items:center}
.hero h1{color:#fff;font-size:clamp(2rem,5vw,3.2rem);letter-spacing:-.03em}
.hl{color:var(--lime)}
.lead{font-size:1.1rem;color:inherit;opacity:.9}
.checks{list-style:none;padding:0;margin:1.2rem 0 0}
.checks li{padding-left:1.8em;position:relative;margin:.4em 0}
.checks li:before{content:"✓";position:absolute;left:0;color:var(--lime);font-weight:900}

/* search box */
.searchbox{background:#fff;color:var(--ink);border-radius:18px;box-shadow:0 20px 50px rgba(0,0,0,.25);overflow:hidden}
.tabs{display:grid;grid-template-columns:repeat(4,1fr);background:#eef1f7}
.tab{margin:0;cursor:pointer}
.tab input{position:absolute;opacity:0;pointer-events:none}
.tab span{display:block;text-align:center;padding:1rem .3rem;font-size:.95rem;font-weight:700;color:var(--muted);border-bottom:3px solid transparent}
.tab input:checked+span{background:#fff;color:var(--navy);border-bottom-color:var(--lime-d)}
.tab input:focus-visible+span{outline:2px solid var(--navy-2);outline-offset:-4px}
.sb-body{padding:24px}
.sb-field{display:none}
.searchbox:has([value=luce]:checked) .f-luce,
.searchbox:has([value=gas]:checked) .f-gas,
.searchbox:has([value=luce_gas]:checked) .f-luce,
.searchbox:has([value=luce_gas]:checked) .f-gas,
.searchbox:has([value=fibra]:checked) .f-fibra{display:block}
.inputunit{display:flex;align-items:center;border:1.5px solid var(--line);border-radius:10px;margin-top:.3rem;overflow:hidden}
.inputunit input{border:0;font-size:1.4rem;font-weight:700;margin:0;box-shadow:none}
.inputunit span{padding:0 1em;color:var(--muted);font-weight:600}
.presets{display:flex;flex-wrap:wrap;gap:8px;margin:-.3rem 0 1rem}
.presets button{background:#f2f4f8;border:0;border-radius:99px;padding:.35em .9em;font:inherit;font-size:.85rem;cursor:pointer;color:var(--navy-2)}
.presets button:hover{background:#e3e8f2}
.searchbox .btn-cta{width:100%;font-size:1.1rem;padding:.9em}

/* home best */
.bestgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.bestcard{background:#fff;border-radius:var(--r);box-shadow:var(--sh);padding:22px;text-decoration:none;color:var(--ink);display:flex;flex-direction:column;gap:.2rem;border-top:5px solid;transition:transform .15s}
.bestcard:hover{transform:translateY(-3px)}
.bc-luce{border-color:var(--luce)} .bc-gas{border-color:var(--gas)} .bc-fibra{border-color:var(--fibra)}
.bc-luce_gas{border-image:linear-gradient(90deg,var(--luce),var(--gas)) 1;border-top-width:5px}
.bc-type{font-weight:800;text-transform:uppercase;font-size:.8rem;letter-spacing:.08em;color:var(--muted)}
.bc-from{font-size:.85rem;color:var(--muted);margin-top:.6rem}
.bc-price{font-size:2rem;font-weight:800;color:var(--navy);line-height:1}
.bc-price small,.price-month small{font-size:.45em;font-weight:600;color:var(--muted)}
.bc-name{font-weight:600}
.bc-save{font-size:.85rem;color:var(--green)}
.bc-go{margin-top:auto;padding-top:.8rem;font-weight:700;color:var(--navy-2)}
.steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:24px;counter-reset:s}
.steps li{counter-increment:s;display:flex;flex-direction:column}
.steps li:before{content:counter(s);width:40px;height:40px;border-radius:12px;background:var(--lime);color:var(--navy);font-weight:900;display:grid;place-items:center;margin-bottom:.6rem}
.steps span{color:var(--muted)}

/* results */
.results-head{background:var(--navy);color:#fff;padding:18px 0}
.editsearch summary{list-style:none;cursor:pointer;display:flex;align-items:baseline;gap:16px;flex-wrap:wrap}
.editsearch summary::-webkit-details-marker{display:none}
.rh-title{font-size:1.5rem;font-weight:800}
.rh-sub{opacity:.85}
.editsearch[open] .searchbox{margin-top:16px;max-width:560px}
.results{display:grid;grid-template-columns:240px 1fr;gap:28px;padding-top:24px;padding-bottom:48px}
.filters-d{background:#fff;border-radius:var(--r);box-shadow:var(--sh);position:sticky;top:80px}
.filters-d summary{display:none;cursor:pointer;padding:14px 18px;font-weight:700;color:var(--navy)}
.filters form{padding:18px}
.filters h4{margin:1rem 0 .5rem;font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.filters h4:first-of-type{margin-top:0}
.filters label{margin-bottom:.4rem}
.typefilter{display:flex;flex-direction:column;gap:4px}
.typefilter label{margin:0;padding:.45em .6em;border-radius:8px;cursor:pointer;border:1.5px solid transparent}
.typefilter label:hover{background:#f5f7fb}
.typefilter label:has(input:checked){background:#f7fbe9;border-color:var(--lime-d);font-weight:700}
.typefilter span{flex:1}
.typefilter small{color:var(--muted);font-weight:600;background:#f2f4f8;border-radius:99px;padding:0 .55em;font-size:.75rem}
.count{margin:0 0 12px;color:var(--muted)}
.empty{background:#fff;border-radius:var(--r);padding:28px;text-align:center;color:var(--muted);box-shadow:var(--sh)}

.offer{position:relative;background:#fff;border-radius:var(--r);box-shadow:var(--sh);display:grid;grid-template-columns:1fr 240px;margin-bottom:16px;border:2px solid transparent;overflow:hidden}
.offer-best{border-color:var(--lime-d)}
.ribbon{position:absolute;top:0;left:20px;background:var(--lime);color:var(--navy);font-size:.75rem;font-weight:800;padding:.2em .8em;border-radius:0 0 8px 8px;text-transform:uppercase;letter-spacing:.04em}
.ribbon-alt{background:#e6edff;color:var(--navy-2)}
.offer-main{padding:28px 20px 18px}
.supplier{display:flex;gap:14px;align-items:center}
.supplier h3{margin:0;font-size:1.15rem} .supplier h3 a{color:var(--navy);text-decoration:none} .supplier h3 a:hover{text-decoration:underline}
.supplier-name{font-size:.85rem;color:var(--muted);font-weight:600}
.avatar{flex:none;width:48px;height:48px;border-radius:12px;display:grid;place-items:center;font-weight:900;font-size:1.3rem;color:#fff;background:hsl(var(--h) 55% 42%)}
.supplier.big .avatar{width:64px;height:64px;font-size:1.7rem}
.supplier.big h1{margin:0}
.tags{list-style:none;padding:0;margin:14px 0 0;display:flex;flex-wrap:wrap;gap:6px}
.tags li{background:#f2f4f8;border-radius:6px;padding:.2em .6em;font-size:.82rem;color:#344054}
.tags .tag-green{background:#e7f8ee;color:#0b6b3a} .tags .tag-bonus{background:#fff6e0;color:#8a5a00}
.offer-price{background:#fafbfd;border-left:1px solid var(--line);padding:22px 20px;display:flex;flex-direction:column;justify-content:center}
.price-month{font-size:1.9rem;font-weight:800;color:var(--navy);line-height:1.1}
.saving{color:var(--green);font-weight:700;font-size:.9rem;margin-top:.2rem}
.offer-actions{display:flex;gap:8px;margin-top:12px}
.offer-actions .btn{flex:1}

/* detail */
.back{display:inline-block;margin-bottom:16px;text-decoration:none;font-weight:600}
.detail-grid{display:grid;grid-template-columns:1fr 340px;gap:32px;align-items:start}
.detail .lead{margin:1rem 0;color:#344054}
.specs{display:grid;grid-template-columns:max-content 1fr;gap:.5rem 1.5rem;background:#fff;padding:20px;border-radius:var(--r);box-shadow:var(--sh)}
.specs dt{color:var(--muted)} .specs dd{margin:0;font-weight:600}
.calc{width:100%;border-collapse:collapse;background:#fff;border-radius:var(--r);box-shadow:var(--sh);overflow:hidden}
.calc td{padding:.7rem 1rem;border-bottom:1px solid var(--line)} .calc td:last-child{text-align:right;white-space:nowrap}
.calc .tot td{font-weight:800;color:var(--navy);border:0;background:#f7fbe9}
.recalc{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.recalc label{display:flex;align-items:center;gap:.5em;margin:0;font-weight:400}
.recalc input{width:110px;margin:0}
.detail-side{position:sticky;top:80px;display:flex;flex-direction:column;gap:16px}
.pricebox,.leadbox,.card{background:#fff;border-radius:var(--r);box-shadow:var(--sh);padding:20px}
.leadbox h3{margin-bottom:.2rem}
.hp{position:absolute;left:-9999px}

/* auth */
.authbox{max-width:420px;margin:48px auto;background:#fff;padding:32px;border-radius:18px;box-shadow:var(--sh)}
.admincode summary{cursor:pointer;color:var(--muted);margin-bottom:.8rem}

.twocol{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:2rem}
.table{width:100%;border-collapse:collapse;background:#fff;border-radius:var(--r);box-shadow:var(--sh);overflow:hidden;font-size:.93rem}
.table th{text-align:left;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);background:#fafbfd;padding:.7rem 1rem;border-bottom:1px solid var(--line)}
.table td{padding:.7rem 1rem;border-bottom:1px solid var(--line);vertical-align:middle}
.table tr.off td{opacity:.55}
.tablewrap{overflow-x:auto}
.status,.tbadge{display:inline-block;padding:.15em .6em;border-radius:99px;font-size:.78rem;font-weight:700;background:#f2f4f8}
.st-nuova{background:#e6edff;color:#1d4ed8} .st-contattato{background:#fff6e0;color:#8a5a00} .st-chiusa{background:#f2f4f8;color:var(--muted)} .st-admin{background:#fff1d6;color:#8a5a00}
.t-luce{background:#fff5cc;color:#7a5b00} .t-luce_gas{background:linear-gradient(90deg,#fff5cc,#ffe8df);color:#8a4500} .t-gas{background:#ffe8df;color:#a53a10} .t-fibra{background:#e1ecff;color:#1d4ed8}

/* admin */
.adminbar{background:#fff;border-bottom:1px solid var(--line)}
.adminbar .wrap{display:flex;gap:4px;overflow-x:auto}
.adminbar a{padding:.9rem 1rem;text-decoration:none;font-weight:600;color:var(--muted);border-bottom:3px solid transparent;white-space:nowrap}
.adminbar a.on{color:var(--navy);border-bottom-color:var(--lime-d)}
.badge{background:var(--red);color:#fff;border-radius:99px;font-size:.72rem;padding:.05em .5em}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}
.stats div{background:#fff;border-radius:var(--r);box-shadow:var(--sh);padding:16px 20px}
.stats b{display:block;font-size:1.8rem;color:var(--navy)} .stats span{color:var(--muted);font-size:.9rem}
.toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:16px}
.toolbar input[type=search]{max-width:280px}
.toolbar .btn{margin-left:auto}
.seg{display:inline-flex;background:#e9edf4;border-radius:10px;padding:3px}
.seg a,.seg-radio span{padding:.4em .9em;border-radius:8px;text-decoration:none;color:var(--muted);font-weight:600;font-size:.9rem;display:block}
.seg a.on,.seg-radio input:checked+span{background:#fff;color:var(--navy);box-shadow:0 1px 2px rgba(0,0,0,.08)}
.seg-radio label{margin:0;cursor:pointer} .seg-radio input{position:absolute;opacity:0}
.switch{border:0;border-radius:99px;padding:.2em .7em;font:inherit;font-size:.78rem;font-weight:700;cursor:pointer;background:#f2f4f8;color:var(--muted)}
.switch.on{background:#e7f8ee;color:#0b6b3a}
.star{background:none;border:0;font-size:1.1rem;cursor:pointer;color:#c0c5d0} .star.on{color:var(--amber)}
.actions{display:flex;gap:12px;align-items:center}
.status-select{width:auto;padding:.25em .5em;border-radius:8px;font-size:.85rem;font-weight:600}
fieldset{border:0;background:#fff;border-radius:var(--r);box-shadow:var(--sh);padding:20px;margin:0 0 16px}
legend{float:left;width:100%;font-weight:800;color:var(--navy);margin-bottom:12px}
.grid2>legend,.grid3>legend{grid-column:1/-1}
.grid2,.grid3{display:grid;gap:0 16px}
.grid2{grid-template-columns:1fr 1fr} .grid3{grid-template-columns:repeat(3,1fr)}
.span2{grid-column:span 2}
.checks-col label{margin-bottom:.4rem}
.formactions{display:flex;gap:12px;align-items:center}
.narrowcard{max-width:640px;margin-top:2rem}
.offerform .only-fibra{display:none}
.offerform:has([name=tipo][value=fibra]:checked) .only-fibra{display:revert}
.offerform:has([name=tipo][value=fibra]:checked) fieldset.only-fibra{display:grid}
.offerform:has([name=tipo][value=fibra]:checked) .only-energia{display:none}
.offerform:not(:has([name=tipo][value=luce]:checked)):not(:has([name=tipo][value=luce_gas]:checked)) .only-luce{display:none}
.offerform .only-dual,.offerform .lbl-gas,.offerform .lbl-luce-dual{display:none}
.offerform:has([name=tipo][value=luce_gas]:checked) .only-dual{display:block}
.offerform:has([name=tipo][value=luce_gas]:checked) .lbl-luce-dual{display:inline}
.offerform:has([name=tipo][value=luce_gas]:checked) .lbl-single{display:none}
.offerform:has([name=tipo][value=gas]:checked) .lbl-gas{display:inline}
.offerform:has([name=tipo][value=gas]:checked) .lbl-luce{display:none}

/* footer */
.footer{background:var(--navy);color:#cfd8e8;margin-top:48px;padding:40px 0 20px}
.footer-in{display:grid;grid-template-columns:1.2fr 1fr 1.5fr;gap:32px}
.footer h4{color:#fff;margin:0 0 .6rem}
.footer a{color:#cfd8e8;display:block;margin:.25rem 0;text-decoration:none}
.footer .logo{display:flex;color:#fff}
.footer .muted{color:#9fb0cc}
.copy{margin-top:24px;padding-top:16px;border-top:1px solid rgba(255,255,255,.1)}

/* responsive */
@media (max-width:900px){
  .hero-in,.detail-grid,.results{grid-template-columns:1fr}
  .filters-d,.detail-side{position:static}
  .filters-d summary{display:block} .filters-d[open] summary{border-bottom:1px solid var(--line)}
  .steps,.footer-in,.stats{grid-template-columns:1fr}
  .bestgrid{grid-template-columns:1fr 1fr}
  .grid3{grid-template-columns:1fr 1fr}
}
@media (max-width:640px){
  .topbar-in{gap:8px 12px;height:auto;flex-wrap:wrap;padding-top:10px;padding-bottom:6px}
  .mainnav{order:3;width:100%;margin:0 -8px} .mainnav a{padding:.35em .7em}
  .usernav .userlink{display:none}
  .offer{grid-template-columns:1fr}
  .offer-price{border-left:0;border-top:1px solid var(--line)}
  .twocol,.grid2,.grid3,.bestgrid{grid-template-columns:1fr} .span2{grid-column:auto}
  .tab span{font-size:.8rem;padding:.8rem .2rem}
  .hero{padding:32px 0 40px}
  .toolbar .btn{margin-left:0}
}

/* ---------- setup ---------- */
.setupbox{max-width:480px}
.setupsteps{list-style:none;padding:0;margin:0 0 1.2rem;font-size:.92rem}
.setupsteps li{padding:.3em 0 .3em 1.8em;position:relative;color:var(--muted)}
.setupsteps li:before{content:"○";position:absolute;left:0}
.setupsteps li.ok{color:var(--ink)} .setupsteps li.ok:before{content:"✓";color:var(--green);font-weight:900}
.setupsteps li.ko{color:var(--red)} .setupsteps li.ko:before{content:"✕";font-weight:900}
.note{background:#fff6e0;color:#8a5a00;padding:.7em 1em;border-radius:10px;margin-bottom:1rem;font-size:.9rem}
code{background:#f2f4f8;padding:.1em .35em;border-radius:5px;font-size:.88em}

/* ---------- blog ---------- */
.sechead{display:flex;align-items:baseline;justify-content:space-between;gap:16px}
.sechead a{font-weight:700;text-decoration:none}
.bloghead{background:#fff;border-bottom:1px solid var(--line);padding:28px 0 20px}
.bloghead h1{margin-bottom:.3rem}
.bloghead .lead{color:var(--muted);max-width:720px;margin:0 0 1rem}
.crumbs{font-size:.85rem;color:var(--muted);margin-bottom:.8rem}
.crumbs a{color:var(--muted)}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips a{padding:.35em .9em;border-radius:99px;background:#f2f4f8;text-decoration:none;font-weight:600;font-size:.9rem;color:var(--navy-2)}
.chips a.on{background:var(--navy);color:#fff}
.agrid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.agrid-feat .acard:first-child{grid-column:1/-1;display:grid;grid-template-columns:1.3fr 1fr}
.agrid-feat .acard:first-child h3{font-size:1.6rem}
.acard{background:#fff;border-radius:var(--r);box-shadow:var(--sh);overflow:hidden;display:flex;flex-direction:column}
.acard-img{display:block;text-decoration:none;aspect-ratio:16/9;background:#eef1f7;overflow:hidden}
.acard-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}
.acard:hover .acard-img img{transform:scale(1.03)}
.acard-ph{width:100%;height:100%;display:grid;place-items:center;font-weight:800;font-size:1.2rem;color:#fff;background:linear-gradient(135deg,var(--navy),var(--navy-2))}
.ac-luce{background:linear-gradient(135deg,#f5b700,#ff8a00)} .ac-gas{background:linear-gradient(135deg,#ff6b35,#d93a14)}
.ac-fibra{background:linear-gradient(135deg,#3a86ff,#1d4ed8)} .ac-risparmio{background:linear-gradient(135deg,#0f9d58,#0b6b3a)}
.acard-body{padding:18px 20px;display:flex;flex-direction:column;gap:.4rem;flex:1}
.acard h3{margin:0;font-size:1.15rem} .acard h3 a{color:var(--navy);text-decoration:none} .acard h3 a:hover{text-decoration:underline}
.acard p{margin:0;color:#475467;font-size:.95rem}
.acat{font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;text-decoration:none;color:var(--green)}
.ameta{font-size:.85rem;color:var(--muted);margin-top:auto}
.pager{display:flex;gap:6px;justify-content:center;margin-top:32px}
.pager a{min-width:40px;text-align:center;padding:.45em .7em;border-radius:8px;background:#fff;box-shadow:var(--sh);text-decoration:none;font-weight:700}
.pager a.on{background:var(--navy);color:#fff}

.post-head{max-width:820px;padding-top:32px}
.post-head h1{font-size:clamp(1.8rem,4.5vw,2.6rem);letter-spacing:-.02em}
.post-head .lead{color:#475467;font-size:1.15rem}
.post-head .ameta{margin:1rem 0 0}
.post-cover{max-width:1000px;margin:24px auto 0}
.post-cover img{width:100%;border-radius:18px;display:block;aspect-ratio:16/9;object-fit:cover}
.post-grid{display:grid;grid-template-columns:minmax(0,760px) 280px;gap:48px;justify-content:center;padding-top:32px;padding-bottom:48px}
.post-side{position:relative}
.ctabox{position:sticky;top:84px;background:var(--navy);color:#fff;border-radius:var(--r);padding:22px}
.ctabox b{font-size:1.2rem;color:var(--lime)} .ctabox p{color:#cfd8e8;font-size:.95rem}
.toc{background:#fff;border-left:4px solid var(--lime-d);border-radius:0 var(--r) var(--r) 0;padding:16px 20px;margin-bottom:28px;box-shadow:var(--sh)}
.toc ol{margin:.5rem 0 0;padding-left:1.2rem} .toc li{margin:.25rem 0} .toc a{text-decoration:none}
.prose{font-size:1.08rem;line-height:1.75;color:#24292f}
.prose h2{font-size:1.55rem;margin:2em 0 .6em;scroll-margin-top:90px}
.prose h3{font-size:1.2rem;margin:1.6em 0 .5em;scroll-margin-top:90px}
.prose p,.prose ul,.prose ol{margin:0 0 1.1em}
.prose li{margin:.3em 0}
.prose a{color:#1d4ed8}
.prose img{max-width:100%;height:auto;border-radius:12px}
.prose figure{margin:1.5em 0} .prose figcaption{font-size:.88rem;color:var(--muted);text-align:center;margin-top:.4em}
.prose blockquote{margin:1.5em 0;padding:.8em 1.2em;border-left:4px solid var(--lime-d);background:#f7fbe9;border-radius:0 10px 10px 0}
.prose table{width:100%;border-collapse:collapse;margin:1.5em 0;font-size:.95rem;background:#fff;display:block;overflow-x:auto}
.prose th,.prose td{border:1px solid var(--line);padding:.55em .8em;text-align:left}
.prose th{background:#f5f6fa}

/* ---------- editor articoli ---------- */
.editor-page{max-width:1160px}
.ed-top{display:flex;justify-content:space-between;align-items:center}
.ed-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:24px;align-items:start}
.ed-title{font-size:1.8rem;font-weight:800;border:0;background:transparent;padding:.2em 0;color:var(--navy);resize:none;overflow:hidden;line-height:1.25;field-sizing:content}
.ed-title:focus{box-shadow:none}
.ed-sommario{border:0;background:transparent;font-size:1.05rem;color:#475467;resize:vertical;padding:.2em 0;margin-bottom:12px}
.ed-sommario:focus{box-shadow:none}
.ed-box{background:#fff;border-radius:var(--r);box-shadow:var(--sh);overflow:hidden}
.ed-toolbar{display:flex;flex-wrap:wrap;gap:2px;padding:8px;border-bottom:1px solid var(--line);background:#fafbfd;position:sticky;top:64px;z-index:5}
.ed-toolbar button{background:none;border:0;border-radius:6px;padding:.4em .6em;font:inherit;font-size:.88rem;cursor:pointer;color:var(--ink)}
.ed-toolbar button:hover,.ed-toolbar button.on{background:#e9edf4}
.ed-toolbar .sep{width:1px;background:var(--line);margin:4px 4px}
.ed-toolbar .right{margin-left:auto}
.ed-area{min-height:480px;padding:24px 28px;outline:none}
.ed-area:empty:before{content:"Scrivi qui il tuo articolo…";color:var(--muted)}
.ed-source{border:0;border-radius:0;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.88rem;min-height:480px}
.ed-status{padding:8px 14px;border-top:1px solid var(--line);background:#fafbfd}
.ed-side{display:flex;flex-direction:column;gap:16px;position:sticky;top:80px;max-height:calc(100vh - 96px);overflow-y:auto;padding-bottom:4px}
.ed-side h3{margin-bottom:.8rem}
.ed-actions{display:flex;gap:8px;flex-wrap:wrap}
.cover-prev img{width:100%;border-radius:10px;display:block;margin-bottom:.6rem;aspect-ratio:16/9;object-fit:cover}
.seo label small.ok{color:var(--green)} .seo label small.warn{color:#b54708}
.serp{border:1px solid var(--line);border-radius:10px;padding:12px;margin:4px 0 14px;font-family:arial,sans-serif}
.serp-url{font-size:.78rem;color:#4d5156}
.serp-title{color:#1a0dab;font-size:1.05rem;line-height:1.3;margin:2px 0}
.serp-desc{color:#4d5156;font-size:.85rem;line-height:1.45}
.seoscore{display:flex;justify-content:space-between;align-items:center;font-weight:700;margin-bottom:6px}
.seoscore b{font-size:1.2rem} .seoscore .ok{color:var(--green)} .seoscore .warn{color:#b54708} .seoscore .ko{color:var(--red)}
.checklist{list-style:none;padding:0;margin:0;font-size:.85rem}
.checklist li{padding:.3em 0 .3em 1.5em;position:relative;border-bottom:1px dashed var(--line)}
.checklist li:before{position:absolute;left:0;font-weight:900}
.checklist .c2:before{content:"✓";color:var(--green)}
.checklist .c1:before{content:"!";color:#b54708;left:.3em}
.checklist .c0:before{content:"✕";color:var(--red)}
.st-ok{background:#e7f8ee;color:#0b6b3a}

@media (max-width:900px){
  .agrid{grid-template-columns:1fr 1fr}
  .agrid-feat .acard:first-child{display:flex}
  .post-grid,.ed-grid{grid-template-columns:1fr}
  .ctabox,.ed-side{position:static;max-height:none}
}
@media (max-width:640px){ .agrid{grid-template-columns:1fr} }
