/* Il Raccoglitore · Gioca */
:root{
  --bg1:#120f2e; --bg2:#1d1a4a; --ink:#f4f2ff; --soft:#b9b4e6; --card:rgba(255,255,255,.07); --card2:rgba(255,255,255,.12);
  --line:rgba(255,255,255,.16); --ok:#2fd27a; --ko:#ff5470; --gold:#ffc83d; --acc:#7c5cff; --acc2:#22d3ee;
  --title:'Fredoka', system-ui, sans-serif; --text:'Atkinson Hyperlegible', system-ui, sans-serif;
  --r:22px; --fs:18px; --shadow:0 18px 40px rgba(5,3,30,.45);
}
*{ box-sizing:border-box; }
[hidden]{ display:none !important; }
html{ -webkit-text-size-adjust:100%; }
body{ margin:0; min-height:100vh; font:var(--fs)/1.45 var(--text); color:var(--ink); background:radial-gradient(1200px 700px at 80% -10%, #3a2a8a 0%, transparent 60%), radial-gradient(900px 600px at -10% 110%, #0e5a7a 0%, transparent 55%), linear-gradient(160deg, var(--bg1), var(--bg2)); background-attachment:fixed; overflow-x:hidden; }
button{ font:inherit; color:inherit; cursor:pointer; }
a{ color:inherit; }
:focus-visible{ outline:3px solid var(--gold); outline-offset:3px; border-radius:10px; }
.sky{ position:fixed; inset:0; pointer-events:none; z-index:-1; background-image:radial-gradient(1.5px 1.5px at 20% 30%, #fff8, transparent), radial-gradient(1px 1px at 70% 20%, #fff6, transparent), radial-gradient(1.5px 1.5px at 40% 80%, #fff5, transparent), radial-gradient(1px 1px at 85% 65%, #fff7, transparent), radial-gradient(1px 1px at 10% 70%, #fff5, transparent), radial-gradient(2px 2px at 55% 50%, #fff4, transparent); background-size:420px 420px; animation:drift 90s linear infinite; }
@keyframes drift{ to{ background-position:420px 840px; } }

/* barra in alto */
.g-top{ position:sticky; top:0; z-index:20; display:flex; align-items:center; gap:10px; padding:10px max(16px, env(safe-area-inset-left)); background:rgba(18,15,46,.72); backdrop-filter:blur(12px); border-bottom:1px solid var(--line); }
.g-logo{ font-family:var(--title); font-weight:700; font-size:1.05em; text-decoration:none; white-space:nowrap; }
.g-badge{ font-family:var(--title); font-weight:600; padding:4px 12px; border-radius:99px; background:linear-gradient(90deg, var(--acc), var(--acc2)); font-size:.85em; }
.g-tools{ margin-left:auto; display:flex; gap:8px; }
.g-tool{ border:1px solid var(--line); background:var(--card); border-radius:99px; padding:7px 13px; font-weight:700; font-size:.9em; display:flex; gap:6px; align-items:center; }
.g-tool[aria-pressed="true"]{ background:var(--card2); border-color:#fff6; }
#tCalm[aria-pressed="true"]{ background:#ffe08a; color:#2a1e00; border-color:#ffe08a; }
@media (max-width:520px){ .g-logo span{ display:none; } .g-tool span{ display:none; } }

main{ max-width:1100px; margin:0 auto; padding:22px 16px 60px; outline:none; }
h1,h2,h3{ font-family:var(--title); line-height:1.15; margin:0; }
.muted{ color:var(--soft); }

/* intestazione dell'argomento */
.hero{ display:flex; gap:18px; align-items:center; flex-wrap:wrap; margin:6px 0 18px; }
.hero .big{ font-size:3.2em; filter:drop-shadow(0 8px 18px rgba(0,0,0,.4)); }
.hero h1{ font-size:clamp(1.5em, 4vw, 2.3em); }
.hero .sub{ color:var(--soft); margin-top:4px; }
.hero .back{ display:inline-block; margin-bottom:6px; color:var(--soft); text-decoration:none; font-weight:700; font-size:.9em; }
.hero .back:hover{ color:var(--ink); }
.lv{ display:flex; gap:8px; flex-wrap:wrap; margin:0 0 22px; align-items:center; }
.lv b{ font-family:var(--title); margin-right:4px; }
.lv button{ border:2px solid var(--line); background:var(--card); border-radius:14px; padding:8px 14px; font-weight:700; }
.lv button[aria-pressed="true"]{ background:#fff; color:#1d1a4a; border-color:#fff; }

/* griglia dei giochi */
.games{ display:grid; grid-template-columns:repeat(auto-fill, minmax(230px, 1fr)); gap:16px; }
.tile{ position:relative; text-align:left; border:0; border-radius:var(--r); padding:18px 18px 16px; min-height:170px; color:#fff; background:var(--g, linear-gradient(135deg,#7c5cff,#22d3ee)); box-shadow:var(--shadow); overflow:hidden; display:flex; flex-direction:column; gap:6px; transition:transform .18s ease, box-shadow .18s ease; isolation:isolate; }
.tile::after{ content:''; position:absolute; inset:auto -40px -60px auto; width:180px; height:180px; border-radius:50%; background:rgba(255,255,255,.14); z-index:-1; transition:transform .3s; }
.tile:hover{ transform:translateY(-4px) rotate(-.4deg); box-shadow:0 24px 50px rgba(5,3,30,.55); }
.tile:hover::after{ transform:scale(1.25); }
.tile .ico{ font-size:2.6em; line-height:1; filter:drop-shadow(0 6px 10px rgba(0,0,0,.25)); }
.tile h3{ font-size:1.3em; }
.tile p{ margin:0; font-size:.9em; opacity:.92; }
.tile .meta{ margin-top:auto; display:flex; gap:8px; flex-wrap:wrap; font-size:.78em; font-weight:700; }
.tile .meta span{ background:rgba(0,0,0,.22); padding:3px 9px; border-radius:99px; }
.tile[disabled]{ filter:grayscale(.9); opacity:.45; cursor:not-allowed; transform:none; }
.tile .new{ position:absolute; top:12px; right:12px; background:var(--gold); color:#2a1e00; font-weight:700; font-size:.7em; padding:3px 8px; border-radius:99px; }

/* scelta dell'argomento */
.pick{ display:grid; gap:12px; }
.chips{ display:flex; flex-wrap:wrap; gap:8px; }
.chip{ border:2px solid var(--line); background:var(--card); border-radius:14px; padding:9px 14px; font-weight:700; }
.chip[aria-pressed="true"]{ background:#fff; color:#1d1a4a; }
.list{ display:grid; grid-template-columns:repeat(auto-fill, minmax(250px,1fr)); gap:10px; }
.list a{ display:flex; gap:10px; align-items:center; padding:12px 14px; border-radius:16px; background:var(--card); border:1px solid var(--line); text-decoration:none; font-weight:700; }
.list a:hover{ background:var(--card2); }
.search{ width:100%; padding:14px 16px; border-radius:16px; border:2px solid var(--line); background:rgba(0,0,0,.25); color:var(--ink); font:inherit; }

/* schermata di gioco */
.stage{ position:relative; }
.hud{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-bottom:14px; }
.hud .x{ border:1px solid var(--line); background:var(--card); border-radius:14px; padding:8px 12px; font-weight:700; }
.hud .name{ font-family:var(--title); font-size:1.25em; display:flex; gap:8px; align-items:center; }
.hud .pill{ background:var(--card); border:1px solid var(--line); border-radius:99px; padding:6px 12px; font-weight:700; font-variant-numeric:tabular-nums; display:flex; gap:6px; align-items:center; }
.hud .sp{ flex:1; }
.pill.combo{ background:linear-gradient(90deg,#ff7a18,#ffb800); color:#2a1100; border:0; transform-origin:center; }
.pill.combo.bump{ animation:bump .35s ease; }
@keyframes bump{ 40%{ transform:scale(1.25); } }
.bar{ height:8px; background:rgba(255,255,255,.1); border-radius:99px; overflow:hidden; margin:-4px 0 16px; }
.bar i{ display:block; height:100%; width:0; background:linear-gradient(90deg, var(--acc2), var(--acc)); border-radius:99px; transition:width .4s ease; }
.timer i{ background:linear-gradient(90deg, #ffb800, #ff5470); transition:width .25s linear; }

.qbox{ background:var(--card); border:1px solid var(--line); border-radius:var(--r); padding:16px 18px; margin-bottom:14px; display:flex; gap:12px; align-items:flex-start; box-shadow:var(--shadow); }
.qbox .q{ font-family:var(--title); font-weight:600; font-size:1.25em; flex:1; }
.say{ display:inline-grid; vertical-align:middle; flex:none; border:1px solid var(--line); background:var(--card2); border-radius:50%; width:42px; height:42px; place-items:center; font-size:1.1em; }

.opts{ display:grid; grid-template-columns:repeat(auto-fit, minmax(220px,1fr)); gap:12px; }
.opt{ border:2px solid var(--line); background:var(--card); border-radius:18px; padding:16px 18px; text-align:left; font-weight:700; font-size:1.05em; display:flex; gap:12px; align-items:center; transition:transform .12s, background .2s, border-color .2s; min-height:64px; }
.opt:hover{ transform:translateY(-2px); background:var(--card2); }
.opt .k{ flex:none; width:34px; height:34px; border-radius:10px; display:grid; place-items:center; background:rgba(255,255,255,.12); font-family:var(--title); }
.opt.ok{ background:rgba(47,210,122,.25); border-color:var(--ok); }
.opt.ko{ background:rgba(255,84,112,.22); border-color:var(--ko); animation:shake .4s; }
.opt.dim{ opacity:.35; }
@keyframes shake{ 20%,60%{ transform:translateX(-6px); } 40%,80%{ transform:translateX(6px); } }

.btn{ border:0; border-radius:16px; padding:14px 22px; font-family:var(--title); font-weight:600; font-size:1.1em; background:linear-gradient(135deg, var(--acc), #a46bff); color:#fff; box-shadow:0 10px 24px rgba(124,92,255,.4); transition:transform .12s; }
.btn:hover{ transform:translateY(-2px); }
.btn.ghost{ background:var(--card); box-shadow:none; border:1px solid var(--line); }
.btn.go{ background:linear-gradient(135deg,#16c172,#2fd27a); box-shadow:0 10px 24px rgba(47,210,122,.35); }
.row{ display:flex; gap:10px; flex-wrap:wrap; align-items:center; }
.center{ text-align:center; }

/* astro-quiz */
.space{ position:relative; width:100%; height:min(62vh, 560px); border-radius:var(--r); overflow:hidden; background:radial-gradient(circle at 50% 120%, #2b1d6b, #07051a 70%); border:1px solid var(--line); touch-action:none; box-shadow:var(--shadow); }
.space canvas{ width:100%; height:100%; display:block; }
.space .help{ position:absolute; left:12px; bottom:10px; font-size:.8em; color:#fff9; pointer-events:none; }

/* memory */
.mem{ display:grid; gap:12px; grid-template-columns:repeat(var(--cols,4), 1fr); perspective:1000px; }
.card{ position:relative; aspect-ratio:4/3; border:0; background:none; padding:0; }
.card .in{ position:absolute; inset:0; transition:transform .5s cubic-bezier(.2,.8,.2,1.2); transform-style:preserve-3d; }
.card.open .in, .card.done .in{ transform:rotateY(180deg); }
.card .f, .card .b{ position:absolute; inset:0; border-radius:18px; backface-visibility:hidden; display:grid; place-items:center; padding:10px; text-align:center; font-weight:700; box-shadow:var(--shadow); }
.card .f{ background:linear-gradient(135deg,#7c5cff,#5b3df5); font-size:2em; border:2px solid #ffffff30; }
.card .f::before{ content:'?'; font-family:var(--title); opacity:.85; }
.card .b{ transform:rotateY(180deg); background:#fff; color:#1d1a4a; font-size:clamp(.72em, 1.6vw, 1em); line-height:1.25; overflow:hidden; }
.card .b.w{ background:linear-gradient(135deg,#fff7d6,#ffe9a3); font-family:var(--title); font-size:clamp(.85em,2vw,1.2em); }
.card .b .e{ display:block; font-size:1.6em; margin-bottom:2px; }
.card.done .b{ background:linear-gradient(135deg,#bff7d8,#7ee8b0); }
.card.done{ animation:pop .4s; }
@keyframes pop{ 50%{ transform:scale(1.08); } }
@media (max-width:620px){ .mem{ grid-template-columns:repeat(var(--colsS,3), 1fr); } .card{ aspect-ratio:1; } }

/* vero o falso */
.vf-wrap{ display:grid; place-items:center; min-height:min(56vh,480px); position:relative; }
.vf-card{ width:min(560px, 100%); min-height:250px; background:#fff; color:#1d1a4a; border-radius:28px; padding:28px; display:grid; place-items:center; text-align:center; font-family:var(--title); font-weight:600; font-size:1.45em; box-shadow:0 30px 60px rgba(0,0,0,.45); touch-action:pan-y; user-select:none; transition:transform .25s ease, opacity .25s; position:relative; }
.vf-card .tag{ position:absolute; top:16px; font-size:.6em; padding:4px 12px; border-radius:99px; opacity:0; transition:opacity .15s; }
.vf-card .tag.t{ right:16px; background:var(--ok); color:#fff; } .vf-card .tag.f{ left:16px; background:var(--ko); color:#fff; }
.vf-card.out-r{ transform:translateX(130%) rotate(18deg); opacity:0; } .vf-card.out-l{ transform:translateX(-130%) rotate(-18deg); opacity:0; }
.vf-btns{ display:flex; gap:16px; justify-content:center; margin-top:18px; }
.vf-btns button{ width:min(200px, 42vw); border:0; border-radius:20px; padding:18px; font-family:var(--title); font-size:1.25em; font-weight:700; color:#fff; box-shadow:var(--shadow); }
.vf-btns .no{ background:linear-gradient(135deg,#ff5470,#ff7a59); } .vf-btns .si{ background:linear-gradient(135deg,#16c172,#2fd27a); }
.flash{ position:fixed; inset:0; pointer-events:none; z-index:30; opacity:0; transition:opacity .25s; }
.flash.ok{ background:radial-gradient(circle, rgba(47,210,122,.35), transparent 60%); opacity:1; }
.flash.ko{ background:radial-gradient(circle, rgba(255,84,112,.35), transparent 60%); opacity:1; }
.corr{ margin-top:12px; min-height:1.6em; text-align:center; color:var(--soft); font-weight:700; }

/* indovina la parola */
.hang{ display:grid; gap:18px; }
.lives{ font-size:1.6em; letter-spacing:4px; }
.slots{ display:flex; flex-wrap:wrap; gap:8px; justify-content:center; }
.slot{ width:clamp(30px, 6vw, 48px); height:clamp(42px, 8vw, 60px); border-radius:12px; background:var(--card); border:2px solid var(--line); display:grid; place-items:center; font-family:var(--title); font-weight:700; font-size:clamp(1.2em,3vw,1.7em); }
.slot.on{ background:#fff; color:#1d1a4a; animation:pop .3s; }
.slot.gap{ background:none; border:0; width:14px; }
.slot.miss{ background:rgba(255,84,112,.25); border-color:var(--ko); }
.kb{ display:flex; flex-wrap:wrap; gap:7px; justify-content:center; max-width:760px; margin:0 auto; }
.kb button{ width:clamp(36px, 8vw, 52px); height:clamp(42px, 9vw, 54px); border-radius:12px; border:1px solid var(--line); background:var(--card2); font-family:var(--title); font-weight:700; font-size:1.15em; }
.kb button.y{ background:var(--ok); color:#fff; border-color:var(--ok); } .kb button.n{ background:rgba(255,84,112,.35); opacity:.6; }

/* cerca le parole */
.ws{ display:grid; grid-template-columns:minmax(0,1fr) 240px; gap:18px; align-items:start; }
@media (max-width:760px){ .ws{ grid-template-columns:1fr; } }
.grid{ width:min(100%, 68vh); justify-self:center; display:grid; grid-template-columns:repeat(var(--n), 1fr); gap:4px; background:var(--card); padding:10px; border-radius:var(--r); border:1px solid var(--line); touch-action:none; user-select:none; }
.grid span{ aspect-ratio:1; display:grid; place-items:center; border-radius:9px; font-family:var(--title); font-weight:700; font-size:clamp(.85em, 2.6vw, 1.35em); background:rgba(255,255,255,.06); transition:background .15s, transform .1s; }
.grid span.sel{ background:var(--gold); color:#2a1e00; transform:scale(1.06); }
.grid span.f{ color:#fff; }
.words{ display:flex; flex-wrap:wrap; gap:8px; }
.words span{ padding:7px 12px; border-radius:12px; background:var(--card); border:1px solid var(--line); font-weight:700; }
.words span.f{ text-decoration:line-through; opacity:.55; background:rgba(47,210,122,.18); }
.words small{ display:block; font-weight:400; color:var(--soft); font-size:.8em; }

/* metti in ordine */
.ord{ display:grid; gap:10px; max-width:760px; margin:0 auto; }
.it{ display:flex; gap:12px; align-items:center; padding:14px 14px; border-radius:18px; background:var(--card); border:2px solid var(--line); font-weight:700; touch-action:none; user-select:none; cursor:grab; transition:background .2s, border-color .2s; }
.it .h{ font-size:1.2em; opacity:.6; }
.it .t{ flex:1; }
.it .mv{ display:flex; gap:4px; }
.it .mv button{ border:1px solid var(--line); background:var(--card2); border-radius:10px; width:38px; height:38px; }
.it.drag{ background:var(--card2); border-color:#fff8; box-shadow:var(--shadow); cursor:grabbing; z-index:3; position:relative; }
.it.ok{ border-color:var(--ok); background:rgba(47,210,122,.18); } .it.ko{ border-color:var(--ko); background:rgba(255,84,112,.14); }
.it .d{ font-family:var(--title); font-size:.85em; color:var(--gold); }

/* grande quiz */
.show{ display:grid; grid-template-columns:minmax(0,1fr) 210px; gap:18px; }
@media (max-width:820px){ .show{ grid-template-columns:1fr; } .ladder{ display:none; } }
.show .qbox{ background:linear-gradient(135deg,#2a1f6e,#3b2a9b); border:2px solid #8e7bff66; min-height:120px; align-items:center; }
.show .opt{ background:linear-gradient(135deg,#1b1546,#271e63); border:2px solid #8e7bff55; border-radius:40px; }
.show .opt.sel{ background:linear-gradient(135deg,#ff9f1c,#ffbf47); color:#2a1100; border-color:#ffbf47; }
.ladder{ list-style:none; margin:0; padding:10px; border-radius:var(--r); background:var(--card); border:1px solid var(--line); display:flex; flex-direction:column-reverse; gap:4px; font-family:var(--title); font-weight:600; }
.ladder li{ padding:6px 12px; border-radius:10px; display:flex; justify-content:space-between; color:var(--soft); }
.ladder li.safe{ color:#fff; }
.ladder li.on{ background:linear-gradient(90deg,#ff9f1c,#ffbf47); color:#2a1100; }
.ladder li.done{ color:var(--ok); }
.life{ display:flex; gap:10px; margin-bottom:12px; }
.life button{ border:2px solid #8e7bff88; background:#1b1546; border-radius:99px; padding:8px 14px; font-weight:700; }
.life button[disabled]{ opacity:.3; text-decoration:line-through; }

/* palloncini */
.sky-game{ position:relative; height:min(62vh, 560px); border-radius:var(--r); overflow:hidden; background:linear-gradient(180deg,#5ec8ff 0%, #b8ecff 70%, #e8fbff 100%); border:1px solid var(--line); box-shadow:var(--shadow); touch-action:manipulation; }
.sky-game .cloud{ position:absolute; width:160px; height:50px; background:#fff; border-radius:50px; opacity:.85; animation:cloud linear infinite; }
.sky-game .cloud::before, .sky-game .cloud::after{ content:''; position:absolute; background:#fff; border-radius:50%; }
.sky-game .cloud::before{ width:70px; height:70px; left:22px; top:-34px; } .sky-game .cloud::after{ width:56px; height:56px; left:78px; top:-24px; }
@keyframes cloud{ from{ transform:translateX(-200px); } to{ transform:translateX(1300px); } }
.balloon{ position:absolute; width:clamp(110px, 18vw, 150px); border:0; background:none; padding:0; color:#fff; text-align:center; will-change:transform; }
.balloon .bb{ display:grid; place-items:center; aspect-ratio:.85; border-radius:50% 50% 46% 46%; background:radial-gradient(circle at 32% 28%, #ffffffaa 0 8%, transparent 9%), var(--c, #ff5470); box-shadow:inset -10px -14px 0 rgba(0,0,0,.12); padding:12px; font-family:var(--title); font-weight:700; font-size:clamp(.8em, 1.8vw, 1.05em); line-height:1.15; text-shadow:0 1px 2px rgba(0,0,0,.35); }
.balloon .str{ display:block; width:2px; height:46px; margin:0 auto; background:#ffffffaa; }
.balloon.pop{ animation:popb .3s forwards; pointer-events:none; }
@keyframes popb{ to{ transform:scale(1.6); opacity:0; } }
.def{ position:absolute; left:12px; right:12px; top:12px; z-index:2; background:rgba(255,255,255,.92); color:#1d1a4a; border-radius:18px; padding:12px 16px; font-family:var(--title); font-weight:600; font-size:1.15em; display:flex; gap:10px; align-items:center; box-shadow:0 10px 24px rgba(0,0,0,.18); }

/* completa la frase */
.cz{ max-width:820px; margin:0 auto; display:grid; gap:18px; }
.sent{ background:#fff; color:#1d1a4a; border-radius:24px; padding:26px; font-size:1.35em; font-weight:700; line-height:1.6; box-shadow:var(--shadow); text-align:center; }
.blank{ display:inline-block; min-width:120px; border-bottom:4px dashed #7c5cff; margin:0 6px; color:#7c5cff; }
.blank.ok{ border-color:var(--ok); color:#11924f; border-bottom-style:solid; }
.pool{ display:flex; flex-wrap:wrap; gap:10px; justify-content:center; }
.pool button{ border:0; border-radius:16px; padding:12px 18px; background:linear-gradient(135deg,#fff7d6,#ffe9a3); color:#2a1e00; font-family:var(--title); font-weight:700; font-size:1.1em; box-shadow:0 8px 18px rgba(0,0,0,.25); }
.pool button.ko{ animation:shake .4s; background:#ffc2cc; }

/* fine partita */
.end{ max-width:560px; margin:20px auto; text-align:center; background:var(--card); border:1px solid var(--line); border-radius:28px; padding:30px 22px; box-shadow:var(--shadow); }
.end .stars{ font-size:3.2em; letter-spacing:6px; margin:6px 0; }
.end .stars i{ font-style:normal; display:inline-block; opacity:.25; transform:scale(.6); transition:all .4s cubic-bezier(.3,1.6,.5,1); }
.end .stars i.on{ opacity:1; transform:scale(1); filter:drop-shadow(0 0 14px #ffc83d99); }
.end .pts{ font-family:var(--title); font-size:2.6em; font-weight:700; background:linear-gradient(90deg,#ffc83d,#ff7a18); -webkit-background-clip:text; background-clip:text; color:transparent; }
.end .rec{ display:inline-block; margin-top:6px; padding:5px 12px; border-radius:99px; background:var(--gold); color:#2a1e00; font-weight:700; }
.end .row{ justify-content:center; margin-top:20px; }
.review{ text-align:left; margin-top:18px; font-size:.92em; }
.review li{ margin:6px 0; }

#confetti{ position:fixed; inset:0; width:100%; height:100%; pointer-events:none; z-index:40; }
.toast{ position:fixed; left:50%; bottom:24px; transform:translateX(-50%) translateY(20px); background:#fff; color:#1d1a4a; padding:10px 18px; border-radius:99px; font-weight:700; opacity:0; transition:all .25s; z-index:50; box-shadow:var(--shadow); pointer-events:none; }
.toast.on{ opacity:1; transform:translateX(-50%); }
.intro{ max-width:640px; margin:30px auto; text-align:center; }
.intro .big{ font-size:4em; }
.intro p{ color:var(--soft); }
.kbd{ display:inline-block; padding:1px 7px; border:1px solid var(--line); border-radius:6px; font-size:.85em; background:var(--card); }

/* modalità tranquilla: colori calmi, testo grande, nessuna animazione */
body.calm{ --fs:21px; --bg1:#fbf6ea; --bg2:#f3ead4; --ink:#1f1a12; --soft:#5b5140; --card:#ffffff; --card2:#fff4d6; --line:#e2d6b8; --shadow:0 6px 16px rgba(80,60,20,.12); background:var(--bg1); }
body.calm .sky{ display:none; }
body.calm .g-top{ background:#fffaf0ee; }
body.calm .space{ background:#20264a; }
body.calm .lv button[aria-pressed="true"], body.calm .chip[aria-pressed="true"]{ background:#1f1a12; color:#fff; }
body.calm .show .qbox, body.calm .show .opt{ background:#fff; color:#1f1a12; border-color:var(--line); }
body.calm .show .opt.sel{ background:#ffe08a; }
body.calm .ladder li.on{ background:#ffe08a; }
body.calm .life button{ background:#fff; }
body.calm *, body.calm *::before, body.calm *::after{ animation-duration:.001s !important; transition-duration:.001s !important; }
@media (prefers-reduced-motion: reduce){ *, *::before, *::after{ animation-duration:.001s !important; transition-duration:.001s !important; } }

/* contenuti delle pagine (anche per i motori di ricerca) */
.crumbs{ font-size:.85em; color:var(--soft); margin:0 0 10px; }
.crumbs a{ color:var(--soft); text-decoration:none; } .crumbs a:hover{ color:var(--ink); text-decoration:underline; }
.seo-p{ color:var(--soft); max-width:820px; margin:0 0 20px; }
.seo-h{ font-size:1.25em; margin:28px 0 10px; }
.seo-list{ margin:0; padding-left:1.2em; color:var(--soft); columns:2 280px; column-gap:28px; }
.seo-list li{ margin:4px 0; break-inside:avoid; } .seo-list b{ color:var(--ink); }
.seo-links a{ color:var(--acc2); font-weight:700; text-decoration:none; } .seo-links a:hover{ text-decoration:underline; }
body.calm .seo-links a{ color:#6d28d9; }
div.tile{ cursor:default; }
