/* QuizLode – stile condiviso pagine quiz (estratto 18.07.2026) */
  :root{
    --bg:#f4f6fb; --card:#ffffff; --ink:#161a2b; --muted:#6b7385;
    --accent:#4f46e5; --accent-dark:#4338ca; --accent-soft:#eef0ff;
    --gold:#e08a1e; --ok:#0f9d58; --okbg:#e6f7ef;
    --bad:#e23b53; --badbg:#fdeaed; --border:#e7e9f2;
    --field:#fbfbfe; --track:#edeff6;
    --shadow:0 8px 24px rgba(20,25,50,.08);
  }
  html[data-theme="dark"]{
    --bg:#0f1220; --card:#1a1e2e; --ink:#eceefb; --muted:#9aa1b8;
    --accent:#8b83ff; --accent-dark:#7a72f0; --accent-soft:#262a44;
    --gold:#f0a838; --ok:#4ade80; --okbg:#16321f;
    --bad:#f2637a; --badbg:#3a1e22; --border:#2a2f45;
    --field:#151829; --track:#2a2f45;
    --shadow:0 8px 24px rgba(0,0,0,.4);
  }
  *{box-sizing:border-box; margin:0; padding:0;}
  body{font-family:'Plus Jakarta Sans',system-ui,-apple-system,sans-serif; background:var(--bg); color:var(--ink); min-height:100vh; line-height:1.55; -webkit-font-smoothing:antialiased;}
  .wrap{max-width:760px; margin:0 auto; padding:32px 20px 80px;}
  header{text-align:center; margin-bottom:32px;}
  header h1{font-size:1.9rem; font-weight:800; letter-spacing:-.02em;}
  header p{color:var(--muted); margin-top:6px;}
  .brand{font-size:1.05rem; font-weight:800; letter-spacing:-.02em; margin-bottom:4px;}
  .brand b{color:var(--ink);} .brand span{color:var(--accent);}
  .flag{height:5px; width:120px; margin:14px auto 0; background:linear-gradient(90deg,var(--accent),#6d63f0); border-radius:3px;}
  .menu{display:grid; gap:14px;}

  .settings{background:var(--card); border:1px solid var(--border); border-radius:18px; padding:26px 24px; box-shadow:var(--shadow);}
  .settings h2{font-size:1.15rem; font-weight:700; margin-bottom:4px;}
  .settings .hint{color:var(--muted); font-size:.88rem; margin-bottom:22px;}
  .field{margin-bottom:22px;}
  .field > label{display:block; font-size:.9rem; font-weight:700; margin-bottom:10px;}
  .chips{display:flex; flex-wrap:wrap; gap:8px;}
  .chip{border:1.5px solid var(--border); background:var(--field); border-radius:20px; padding:9px 16px; cursor:pointer; font-family:inherit; font-size:.9rem; font-weight:600; color:var(--ink); transition:all .12s;}
  .chip:hover{border-color:var(--accent);}
  .chip.on{background:var(--accent); color:#fff; border-color:var(--accent);}
  .rangewrap{display:flex; align-items:center; gap:14px;}
  .rangewrap input[type=range]{flex:1; accent-color:var(--accent);}
  .rangewrap .val{font-weight:800; font-size:1.1rem; color:var(--accent); min-width:36px; text-align:center;}
  .startbtn{width:100%; background:var(--accent); color:#fff; border:none; border-radius:12px; padding:15px; font-family:inherit; font-size:1.05rem; font-weight:600; cursor:pointer; margin-top:4px; transition:background .15s, transform .12s;}
  .startbtn:hover{background:var(--accent-dark); transform:translateY(-1px);}
  .avail{font-size:.8rem; color:var(--muted); margin-top:8px; text-align:center;}

  .quiz-btn{background:var(--card); border:1px solid var(--border); border-radius:16px; padding:20px 22px; cursor:pointer; text-align:left; font-family:inherit; font-size:1rem; color:var(--ink); box-shadow:var(--shadow); transition:transform .12s, box-shadow .12s;}
  .quiz-btn:hover{transform:translateY(-2px);}
  .quiz-btn .num{color:var(--accent); font-weight:700; font-size:.75rem; letter-spacing:1.5px; text-transform:uppercase;}
  .quiz-btn h3{margin-top:4px; font-size:1.15rem; font-weight:700;}
  .quiz-btn .sub{color:var(--muted); font-size:.88rem; margin-top:4px;}

  .hidden{display:none;}
  .topbar{display:flex; justify-content:space-between; align-items:center; margin-bottom:14px; font-size:.9rem; color:var(--muted);}
  .topbar button{background:none; border:none; color:var(--accent); cursor:pointer; font-family:inherit; font-size:.9rem; font-weight:600;}
  .topbar button:hover{text-decoration:underline;}
  .progress{height:6px; background:var(--track); border-radius:3px; overflow:hidden; margin-bottom:26px;}
  .progress div{height:100%; background:var(--accent); width:0%; transition:width .3s;}
  .qcard{background:var(--card); border:1px solid var(--border); border-radius:18px; padding:28px; box-shadow:var(--shadow);}
  .qnum{color:var(--accent); font-size:.75rem; font-weight:700; letter-spacing:1.5px; text-transform:uppercase;}
  .qtype{color:var(--gold);}
  .qtext{font-size:1.15rem; font-weight:600; margin:10px 0 22px; line-height:1.5;}
  .opts{display:grid; gap:10px;}
  .opt{background:var(--field); border:1.5px solid var(--border); border-radius:12px; padding:13px 16px; cursor:pointer; font-family:inherit; font-size:.98rem; color:var(--ink); text-align:left; line-height:1.4; transition:border-color .1s, background .1s;}
  .opt:hover:not(:disabled){border-color:var(--accent); background:var(--accent-soft);}
  .opt:disabled{cursor:default;}
  .opt.correct{background:var(--okbg); border-color:var(--ok); color:var(--ok); font-weight:600;}
  .opt.wrong{background:var(--badbg); border-color:var(--bad); color:var(--bad);}
  .fillrow{display:flex; gap:10px;}
  .fillrow input{flex:1; font-family:inherit; font-size:1rem; padding:13px 14px; border:1.5px solid var(--border); border-radius:12px; background:var(--field); color:var(--ink);}
  .fillrow input:focus{outline:none; border-color:var(--accent); box-shadow:0 0 0 3px var(--accent-soft);}
  .fillrow button{background:var(--accent); color:#fff; border:none; border-radius:12px; padding:0 22px; font-family:inherit; font-weight:600; cursor:pointer;}
  .fillrow button:hover{background:var(--accent-dark);}
  .feedback{margin-top:18px; padding:14px 16px; border-radius:12px; font-size:.93rem; line-height:1.5; display:none;}
  .feedback.ok{display:block; background:var(--okbg); border-left:4px solid var(--ok);}
  .feedback.bad{display:block; background:var(--badbg); border-left:4px solid var(--bad);}
  .nextbtn{margin-top:20px; background:var(--accent); color:#fff; border:none; border-radius:12px; padding:13px 28px; font-family:inherit; font-size:1rem; font-weight:600; cursor:pointer; display:none; transition:background .15s;}
  .nextbtn:hover{background:var(--accent-dark);}
  .result{background:var(--card); border:1px solid var(--border); border-radius:18px; padding:38px 28px; text-align:center; box-shadow:var(--shadow);}
  .result .score{font-size:3.2rem; color:var(--accent); font-weight:800; margin:12px 0;}
  .result .msg{font-size:1.05rem; font-weight:600; margin-bottom:8px;}
  .result .detail{color:var(--muted); font-size:.9rem; margin-bottom:24px;}
  .result button{background:var(--accent); color:#fff; border:none; border-radius:12px; padding:12px 24px; margin:5px; font-family:inherit; font-size:.95rem; font-weight:600; cursor:pointer; transition:background .15s;}
  .result button:hover{background:var(--accent-dark);}
  .review{margin-top:30px; text-align:left;}
  .review h3{margin-bottom:12px; font-size:1.05rem; font-weight:700;}
  .rev-item{background:var(--field); border:1px solid var(--border); border-radius:12px; padding:14px 16px; margin-bottom:10px; font-size:.88rem; line-height:1.5;}
  .rev-item .rq{font-weight:700;}
  .rev-item .ra{color:var(--ok); margin-top:4px;}
  @media (max-width:520px){
    .wrap{padding:18px 12px 60px;}
    header h1{font-size:1.5rem;}
    .qcard,.settings{padding:18px 14px;}
    .qtext{font-size:1.05rem;}
    .opt{padding:12px 12px; font-size:.95rem;}
    .nextbtn{width:100%; padding:15px;}
    .result{padding:26px 16px;}
    .result .score{font-size:2.6rem;}
    .result button{width:100%; margin:5px 0;}
  }
  .opt,.nextbtn,.startbtn,.chip,.quiz-btn{-webkit-tap-highlight-color:transparent; touch-action:manipulation;}

  /* ---- Modalità: simulazione vs allenamento ---- */
  .modecard{background:var(--card); border:1px solid var(--border); border-radius:18px; padding:24px; box-shadow:var(--shadow);}
  .modecard.primary{border:2px solid var(--accent); background:linear-gradient(180deg,var(--accent-soft),var(--card));}
  .modecard .kick{display:inline-block; font-size:.72rem; font-weight:700; letter-spacing:1.5px; text-transform:uppercase; color:var(--accent); background:var(--accent-soft); padding:4px 10px; border-radius:20px; margin-bottom:10px;}
  .modecard h2{font-size:1.3rem; font-weight:800; letter-spacing:-.01em; margin-bottom:6px;}
  .modecard p.d{color:var(--muted); font-size:.92rem; margin-bottom:14px; line-height:1.55;}
  .exam-facts{display:flex; flex-wrap:wrap; gap:8px; margin-bottom:16px;}
  .exam-facts span{font-size:.82rem; font-weight:600; background:var(--field); border:1px solid var(--border); border-radius:20px; padding:6px 12px; color:var(--ink);}
  details.altmode{margin-top:4px;}
  details.altmode > summary{cursor:pointer; list-style:none; font-weight:700; font-size:1rem; color:var(--ink); padding:16px 20px; background:var(--card); border:1px solid var(--border); border-radius:14px; box-shadow:var(--shadow); display:flex; justify-content:space-between; align-items:center;}
  details.altmode > summary::-webkit-details-marker{display:none;}
  details.altmode > summary .chev{color:var(--accent); font-size:.85rem;}
  details.altmode[open] > summary{border-radius:14px 14px 0 0; border-bottom:none;}
  details.altmode > summary small{display:block; font-weight:500; color:var(--muted); font-size:.82rem; margin-top:2px;}
  details.altmode .settings{border-radius:0 0 14px 14px; box-shadow:none; border-top:none;}

  /* ---- Simulazione in corso ---- */
  .simtop{display:flex; justify-content:space-between; align-items:center; gap:12px; margin-bottom:16px; flex-wrap:wrap;}
  .timer{font-weight:800; font-size:1.05rem; color:var(--accent); background:var(--accent-soft); padding:8px 14px; border-radius:12px; font-variant-numeric:tabular-nums;}
  .timer.low{color:var(--bad); background:var(--badbg);}
  .simq{background:var(--card); border:1px solid var(--border); border-radius:18px; padding:24px; box-shadow:var(--shadow); margin-bottom:16px;}
  .simq .badge{display:inline-block; font-size:.72rem; font-weight:700; letter-spacing:1.2px; text-transform:uppercase; padding:4px 10px; border-radius:20px; margin-bottom:10px;}
  .simq .badge.aperta{color:var(--accent); background:var(--accent-soft);}
  .simq .badge.caso{color:var(--gold); background:rgba(224,138,30,.12);}
  .simq .prompt{font-size:1.08rem; font-weight:600; line-height:1.5; margin-bottom:14px;}
  .simq .caso-testo{background:var(--field); border-left:4px solid var(--gold); border-radius:8px; padding:14px 16px; font-size:.95rem; line-height:1.55; margin-bottom:14px;}
  .simq textarea{width:100%; min-height:130px; font-family:inherit; font-size:.98rem; line-height:1.55; padding:14px; border:1.5px solid var(--border); border-radius:12px; background:var(--field); color:var(--ink); resize:vertical;}
  .simq textarea:focus{outline:none; border-color:var(--accent); box-shadow:0 0 0 3px var(--accent-soft);}
  .reveal{margin-top:16px; border-top:1px dashed var(--border); padding-top:16px; display:none;}
  .reveal.show{display:block;}
  .reveal h4{font-size:.8rem; letter-spacing:1px; text-transform:uppercase; color:var(--muted); margin-bottom:6px; margin-top:14px;}
  .reveal h4:first-child{margin-top:0;}
  .reveal .model{font-size:.94rem; line-height:1.6;}
  .reveal .grid-eval{font-size:.9rem; line-height:1.55; color:var(--muted); background:var(--field); border-radius:10px; padding:12px 14px;}
  .chk-list{display:grid; gap:8px;}
  .chk-item{display:flex; align-items:flex-start; gap:10px; background:var(--field); border:1.5px solid var(--border); border-radius:10px; padding:11px 13px; cursor:pointer; font-size:.9rem; line-height:1.45; transition:border-color .12s, background .12s;}
  .chk-item:hover{border-color:var(--accent);}
  .chk-item input{width:18px; height:18px; margin-top:1px; accent-color:var(--ok); flex-shrink:0; cursor:pointer;}
  .chk-item input:checked + span{color:var(--ink); font-weight:600;}
  .chk-item span{color:var(--muted);}
  .voto-auto{margin-top:16px; background:var(--field); border:1px solid var(--border); border-radius:12px; padding:14px 16px;}
  .voto-head{font-size:.98rem; line-height:1.5;}
  .voto-head b{color:var(--accent); font-weight:800;}
  .voto-adj{display:flex; align-items:center; gap:10px; margin-top:10px; flex-wrap:wrap;}
  .voto-adj button{width:36px; height:36px; border:1.5px solid var(--border); background:var(--card); color:var(--accent); border-radius:10px; font-size:1.3rem; font-weight:800; cursor:pointer; line-height:1; font-family:inherit;}
  .voto-adj button:hover{border-color:var(--accent); background:var(--accent-soft);}
  .voto-adj span{font-size:.8rem; color:var(--muted);}
  .selfrate{display:flex; align-items:center; gap:10px; margin-top:14px; flex-wrap:wrap;}
  .selfrate label{font-weight:700; font-size:.9rem;}
  .selfrate select{font-family:inherit; font-size:1rem; padding:9px 12px; border:1.5px solid var(--border); border-radius:10px; background:var(--field); color:var(--ink); font-weight:700;}
  .simnote{font-size:.82rem; color:var(--muted); margin-top:10px; line-height:1.5;}

  /* ===== Navigazione fra le domande (griglia numerata) – 21.07.2026 ===== */
  .qrow{display:grid; grid-template-columns:1fr 172px; gap:18px; align-items:start;}
  .qside{background:var(--card); border:1px solid var(--border); border-radius:16px; padding:16px 14px; box-shadow:var(--shadow); position:sticky; top:16px;}
  .qgrid-head{font-size:.7rem; font-weight:800; letter-spacing:1.4px; text-transform:uppercase; color:var(--muted); margin-bottom:10px;}
  .qgrid{display:grid; grid-template-columns:repeat(4,1fr); gap:6px;}
  .gcell{position:relative; aspect-ratio:1; border:1.5px solid var(--border); background:var(--field); color:var(--muted); border-radius:9px; font-family:inherit; font-size:.82rem; font-weight:700; cursor:pointer; display:flex; align-items:center; justify-content:center; transition:border-color .12s, background .12s, color .12s;}
  .gcell:hover{border-color:var(--accent); color:var(--accent);}
  .gcell.done{background:var(--okbg); border-color:var(--ok); color:var(--ok);}
  .gcell.skip{background:var(--badbg); border-color:var(--bad); color:var(--bad);}
  .gcell.now{box-shadow:0 0 0 3px var(--accent-soft); border-color:var(--accent); color:var(--accent); font-weight:800;}
  .gcell .mk{position:absolute; top:-4px; right:-2px; font-size:.62rem; font-style:normal; color:var(--ok);}
  .gcell .fl{position:absolute; bottom:-4px; left:-3px; font-size:.6rem; font-style:normal;}
  .qgrid-leg{margin-top:12px; display:grid; gap:5px; font-size:.7rem; color:var(--muted);}
  .qgrid-leg span{display:flex; align-items:center; gap:6px;}
  .qgrid-leg i.lg{width:11px; height:11px; border-radius:3px; display:inline-block; font-style:normal; font-size:.62rem; line-height:1;}
  .qgrid-leg i.lg.done{background:var(--okbg); border:1.5px solid var(--ok);}
  .qgrid-leg i.lg.skip{background:var(--badbg); border:1.5px solid var(--bad);}
  .qgrid-leg i.lg.flag{border:none; background:none; width:auto;}
  .qnav{display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin-top:18px; padding-top:16px; border-top:1px solid var(--border);}
  .navbtn{background:var(--field); border:1.5px solid var(--border); color:var(--ink); border-radius:10px; padding:9px 14px; font-family:inherit; font-size:.86rem; font-weight:600; cursor:pointer; transition:border-color .12s, background .12s;}
  .navbtn:hover{border-color:var(--accent); color:var(--accent);}
  .navbtn.ghost{background:none; color:var(--muted);}
  .flagbtn{margin-left:auto; background:none; border:1.5px solid var(--border); color:var(--muted); border-radius:10px; padding:9px 14px; font-family:inherit; font-size:.86rem; font-weight:600; cursor:pointer; transition:all .12s;}
  .flagbtn:hover{border-color:var(--bad); color:var(--bad);}
  .flagbtn.on{background:var(--badbg); border-color:var(--bad); color:var(--bad);}
  .qwarn{margin-top:16px; background:var(--badbg); border-left:4px solid var(--bad); border-radius:12px; padding:14px 16px; font-size:.92rem;}
  .qwarn.hidden{display:none;}
  .qwarn p{margin-bottom:10px;}
  .qwarn div{display:flex; gap:8px; flex-wrap:wrap;}

  /* ===== Microfono nella simulazione ===== */
  .micbtn{display:inline-flex; align-items:center; gap:8px; margin-top:10px; background:var(--field); border:1.5px solid var(--border); color:var(--muted); border-radius:10px; padding:9px 14px; font-family:inherit; font-size:.86rem; font-weight:600; cursor:pointer; transition:all .12s;}
  .micbtn:hover{border-color:var(--accent); color:var(--accent);}
  .micbtn .micico{font-size:1rem; line-height:1;}
  .micbtn.on{background:var(--badbg); border-color:var(--bad); color:var(--bad); animation:micpulse 1.4s ease-in-out infinite;}
  @keyframes micpulse{0%,100%{box-shadow:0 0 0 0 rgba(226,59,83,.35);} 50%{box-shadow:0 0 0 6px rgba(226,59,83,0);}}

  @media (min-width:1024px){
    body:has(#quiz:not(.hidden)) .wrap{max-width:980px;}
  }
  @media (max-width:820px){
    .qrow{grid-template-columns:1fr; gap:14px;}
    .qside{order:-1; position:static; padding:14px;}
    .qgrid{grid-template-columns:repeat(auto-fill,minmax(38px,1fr));}
    .qgrid-leg{grid-auto-flow:column; grid-template-columns:none; justify-content:start; gap:14px;}
    .flagbtn{margin-left:0;}
  }

  /* ===== Correzione alla fine + resoconto filtrabile – 21.07.2026 ===== */
  .corrhint{font-size:.78rem; color:var(--muted); margin-top:8px; line-height:1.45;}
  .opt.sel{background:var(--accent-soft); border-color:var(--accent); color:var(--accent); font-weight:600;}
  .fillrow input.sel{border-color:var(--accent); background:var(--accent-soft);}
  .review .chips{justify-content:center;}
  .rev-item{position:relative; border-left:4px solid var(--border);}
  .rev-item.good{border-left-color:var(--ok);}
  .rev-item.bad{border-left-color:var(--bad);}
  .rev-item.blank{border-left-color:var(--muted);}
  .rev-item .revn{display:inline-flex; align-items:center; justify-content:center; min-width:20px; height:20px; margin-right:8px; border-radius:6px; background:var(--card); border:1px solid var(--border); font-size:.72rem; color:var(--muted); font-weight:700;}
  .rev-item .rt{margin-top:6px; color:var(--ink);}
  /* rientro dal ripasso di una singola domanda: un lampo per ritrovarla */
  .rev-item.rev-tornato{animation:revLampo 1.4s ease-out;}
  @keyframes revLampo{
    0%,100%{box-shadow:none;}
    15%{box-shadow:0 0 0 3px rgba(79,70,229,.45);}
    60%{box-shadow:0 0 0 3px rgba(79,70,229,.20);}
  }
  .rev-item.bad .rt b, .rev-item.blank .rt i{color:var(--bad);}
  .rev-item.good .rt b{color:var(--ok);}
  .rev-item .rex{margin-top:6px; color:var(--muted);}

  /* Bandierina disegnata (SVG) al posto dell'emoji: larghezza prevedibile,
     resta attaccata al testo su tutti i browser */
  .flagico{display:block; flex:none;}
  .qgrid-leg span{display:flex; align-items:center; gap:7px; line-height:1.2;}
  .qgrid-leg i.lg{flex:0 0 11px;}
  .qgrid-leg i.lg.flag{border:none; background:none; width:11px; height:11px; flex:0 0 11px; display:inline-flex; align-items:center; justify-content:center; color:var(--bad);}
  .flagbtn{display:inline-flex; align-items:center; gap:7px; line-height:1;}
  .flagbtn .flagico{color:var(--muted); transition:color .12s;}
  .flagbtn:hover .flagico, .flagbtn.on .flagico{color:var(--bad);}
  .gcell .fl{bottom:-3px; left:-3px; display:inline-flex; color:var(--bad); background:var(--card); border-radius:3px; padding:1px;}
  .simviste{font-size:.8rem; color:var(--muted); background:var(--field); border:1px solid var(--border); border-radius:10px; padding:9px 13px; margin-bottom:14px;}

  /* ===== Come sei andato per argomento – 21.07.2026 ===== */
  .argblock{margin-top:28px; text-align:left; background:var(--field); border:1px solid var(--border); border-radius:14px; padding:18px 18px 14px;}
  .argblock h3{font-size:1.05rem; font-weight:700; margin-bottom:8px;}
  .arg-tip{font-size:.92rem; line-height:1.5; margin-bottom:14px; color:var(--ink);}
  .arg-tip.ok{color:var(--ok);}
  .arg-row{display:grid; grid-template-columns:1fr 92px 44px; align-items:center; gap:10px; padding:6px 0; font-size:.86rem;}
  .arg-nome{color:var(--ink); line-height:1.35;}
  .arg-bar{height:8px; background:var(--track); border-radius:4px; overflow:hidden;}
  .arg-bar i{display:block; height:100%; border-radius:4px;}
  .arg-bar i.ok{background:var(--ok);} .arg-bar i.mid{background:var(--gold);} .arg-bar i.low{background:var(--bad);}
  .arg-num{text-align:right; font-weight:700; font-variant-numeric:tabular-nums;}
  .arg-num.ok{color:var(--ok);} .arg-num.mid{color:var(--gold);} .arg-num.low{color:var(--bad);}
  .arg-nota{font-size:.78rem; color:var(--muted); margin-top:10px;}
  @media (max-width:520px){
    .arg-row{grid-template-columns:1fr 56px 40px; font-size:.82rem;}
  }
  .chk-item.chiave{border-color:var(--accent); background:var(--accent-soft);}
  .chk-item.chiave span{color:var(--ink);}
  .chk-item .chiave-tag{display:inline-block; margin-left:8px; font-style:normal; font-size:.68rem; font-weight:700; letter-spacing:.6px; text-transform:uppercase; color:var(--accent); background:var(--card); border:1px solid var(--accent); border-radius:20px; padding:1px 8px; vertical-align:1px;}
  .voto-chiave{margin-top:8px; font-size:.86rem; line-height:1.45; color:var(--bad);}
  .voto-chiave.ok{color:var(--ok);}

  /* ===== Rivedere una domanda dal resoconto – 21.07.2026 ===== */
  .rev-hint{font-size:.8rem; color:var(--muted); margin-bottom:10px;}
  .rev-item{cursor:pointer; transition:border-color .12s, transform .08s;}
  .rev-item:hover{border-color:var(--accent);}
  .rev-item:active{transform:scale(.995);}
  .rev-item:focus-visible{outline:none; box-shadow:0 0 0 3px var(--accent-soft); border-color:var(--accent);}
  .rev-item .rq{display:flex; align-items:flex-start; gap:8px;}
  .rev-item .rev-go{margin-left:auto; font-style:normal; color:var(--accent); opacity:.5; flex-shrink:0;}
  .rev-item:hover .rev-go{opacity:1;}
  .sim-consiglio{font-size:.92rem; line-height:1.5; color:var(--ink); background:var(--field); border:1px solid var(--border); border-radius:10px; padding:11px 14px; margin:10px auto 4px; max-width:440px;}
  .sim-consiglio.ok{color:var(--ok); border-color:var(--ok);}

  /* ===== Piede di pagina delle pagine quiz – 26.07.2026 =====
     Chi arriva qui da Google non passa mai dalla home: senza questo blocco
     non trova privacy e termini, e non sa che esistono le altre materie. */
  .sitefoot{border-top:1px solid var(--border); margin-top:20px; padding:26px 20px 44px;}
  .sitefoot .inner{max-width:760px; margin:0 auto; color:var(--muted); font-size:.86rem; line-height:1.7;}
  .sitefoot h2{font-size:.78rem; font-weight:700; letter-spacing:.8px; text-transform:uppercase; color:var(--muted); margin-bottom:8px;}
  .sitefoot ul{list-style:none; margin:0 0 20px; padding:0; display:flex; flex-wrap:wrap; gap:8px 10px;}
  .sitefoot ul a{display:inline-block; text-decoration:none; color:var(--ink); font-weight:600; background:var(--card); border:1px solid var(--border); border-radius:20px; padding:7px 14px; transition:border-color .12s, color .12s;}
  .sitefoot ul a:hover{border-color:var(--accent); color:var(--accent);}
  .sitefoot .legal a{color:var(--accent); text-decoration:none;}
  .sitefoot .legal a:hover{text-decoration:underline;}
