/* Sala giochi Scratch: aggiunte a base.css (stessa grafica dei laboratori del 16 ottobre). */
:root{--g:var(--soft);--g-ink:var(--accent);--card-line:oklch(25% .035 290)}
.tema-lime{--g:oklch(94% .1 115);--g-ink:oklch(42% .11 130)}
.tema-viola{--g:oklch(93% .05 300);--g-ink:oklch(44% .17 300)}
.tema-lava{--g:oklch(93% .05 40);--g-ink:oklch(47% .16 35)}
.tema-oro{--g:oklch(94% .08 90);--g-ink:oklch(45% .09 75)}
.tema-cielo{--g:oklch(94% .04 235);--g-ink:oklch(44% .13 250)}
.tema-rosa{--g:oklch(94% .04 350);--g-ink:oklch(47% .16 355)}
.tema-prato{--g:oklch(94% .06 150);--g-ink:oklch(42% .1 155)}
.tema-acqua{--g:oklch(94% .05 200);--g-ink:oklch(42% .08 210)}
.tema-notte{--g:oklch(93% .03 265);--g-ink:oklch(42% .12 270)}

header .brand{color:var(--ink)}
.tip-menu{display:grid;gap:0}
.tip-menu a{padding:14px 0;border-bottom:1px solid var(--line);text-decoration:none}
.tip-menu a:last-child{border-bottom:0}
.tip-menu b,.tip-menu span{display:block}
.tip-menu span{font-size:.9rem;color:var(--ink)}
.tip-banner{background:var(--soft);padding:28px;border-radius:16px}
.tip-demo{margin:28px 0;padding:24px;border:2px solid var(--ink);border-radius:14px;background:var(--soft)}
.demo-values{display:flex;flex-wrap:wrap;gap:12px 32px}
.demo-values span{display:grid;gap:2px}
.demo-values strong{font-size:1.7rem;font-variant-numeric:tabular-nums}
.tip-demo progress{display:block;width:100%;height:18px;margin:8px 0 20px;accent-color:var(--accent)}
.tip-demo button:disabled{opacity:.6;cursor:wait}
.tip-demo [role=status]{min-height:3em}
#turni h3,#livelli h3{margin-top:30px}
.tip-demo h3{margin-top:0!important}
.hero h1 em{font-style:normal;background:linear-gradient(transparent 58%,oklch(88% .15 95) 58%);padding:0 .08em}
.hero .actions{margin-top:22px}

/* Le 2 ore */
.timeline{list-style:none;padding:0;margin:0}
.timeline li{display:grid;grid-template-columns:3.4em 1fr;gap:10px;align-items:baseline;margin:0;padding:9px 0;border-bottom:1px dashed var(--line)}
.timeline li:last-child{border-bottom:0}
.timeline b{font-size:1.05rem;color:var(--accent)}

/* Inizio, ciclo, fine */
.tre{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:22px}
.pezzo{background:white;border:1px solid var(--line);border-radius:14px;padding:20px;min-width:0}
.pezzo .num{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--accent);color:white;font-weight:bold;margin-bottom:8px}
.pezzo p{font-size:.95rem}

/* Galleria */
.filtri{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 22px}
.galleria{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.game-card{position:relative;display:flex;flex-direction:column;background:var(--g);border:2px solid var(--card-line);border-radius:16px;padding:20px 20px 16px;box-shadow:5px 5px 0 var(--card-line);transition:transform .12s,box-shadow .12s}
.game-card:hover,.game-card:focus-within{transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--card-line)}
.game-card .card-icon .icona{width:76px;height:76px;color:var(--card-line)}
.game-card h3{font-size:1.45rem;margin:4px 0 10px}
.game-card h3 a{color:inherit;text-decoration:none}
.game-card .stretched::after{content:'';position:absolute;inset:0;border-radius:14px}
.game-card .stretched:focus-visible{outline:none}
.game-card:focus-within{outline:3px solid var(--accent);outline-offset:4px}
.game-card p{font-size:.95rem;margin-bottom:10px}
.game-card .ispirato{font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;margin:10px 0 0}
.game-card .impari{font-size:.85rem}
.card-foot{margin-top:auto;padding-top:12px;border-top:1.5px solid color-mix(in oklch,var(--card-line) 25%,transparent);display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:.85rem}
.card-foot .vai{margin-left:auto;font-weight:bold}
.stelle{color:oklch(55% .15 70);letter-spacing:.06em;margin-right:6px}
.stelle .off{opacity:.28}
.livello{font-weight:bold}
.game-card.tema-notte{background:oklch(29% .05 265);color:oklch(97% .01 265);--card-line-in:white}
.game-card.tema-notte .card-icon .icona{color:oklch(97% .01 265)}
.game-card.tema-notte .stelle{color:oklch(85% .14 85)}
.game-card.tema-notte .card-foot{border-top-color:oklch(60% .03 265)}

/* Tabelle */
.tabella{overflow-x:auto}
table{border-collapse:collapse;width:100%;font-size:.95rem;background:white;border-radius:10px;overflow:hidden}
th,td{text-align:left;padding:11px 14px;border-bottom:1px solid var(--line);vertical-align:top}
thead th{background:var(--soft);font-size:.85rem}
tbody th{white-space:nowrap}

.regole{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.regole>div{border-top:4px solid var(--accent);padding-top:12px}
.regole p{font-size:.95rem}

/* Pagina del gioco */
.gioco-hero{padding-top:26px}
.back{margin:0 0 14px;font-size:.9rem}
.tag-gioco{background:var(--g);color:var(--g-ink)}
.meta{display:flex;flex-wrap:wrap;gap:6px 20px;align-items:center;font-size:.95rem}
.gioco-hero .brief{background:var(--g);border:2px solid var(--card-line);box-shadow:5px 5px 0 var(--card-line)}
.brief-icon .icona{width:64px;height:64px;color:var(--card-line);float:right;margin:-6px -4px 6px 12px}
.brief h2{font-size:1.35rem}
.brief p{font-size:.95rem;margin-bottom:10px}
.serve{padding-left:20px;font-size:.95rem}
.serve li{margin-bottom:5px}
.indice-passi{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px;font-size:.9rem}
.indice-passi a{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:white;border:1.5px solid var(--card-line);color:var(--ink);text-decoration:none;font-weight:bold}
.indice-passi a:hover{background:var(--ink);color:white}
[class*=tema-] .step-title span{background:var(--g-ink)}
.step-body{max-width:900px;margin-top:18px}
.section.tuo{background:linear-gradient(var(--g),var(--g)) no-repeat;background-size:100% 100%;border-radius:18px;padding:36px 28px;border-top:0;margin:20px auto}

.scheda{display:grid;grid-template-columns:1fr 1fr;gap:4px 22px}
.scheda label{font-size:.95rem}

figure.script{margin:18px 0 22px;padding:0;min-width:0}
figure.script figcaption{font-size:.9rem;color:var(--muted)}
.chip{display:inline-block;background:white;border:1.5px solid var(--ink);color:var(--ink);font-weight:bold;border-radius:999px;padding:0 10px;margin-left:4px}
.chip.stage{border-style:dashed}
.dove{font-style:italic}
pre.blocks{background:white;padding:14px 0 6px;margin:6px 0 0;border-radius:0}
.pezzo pre.blocks{padding:8px 0 0}
.prova{background:var(--okbg);color:var(--ok);padding:12px 16px;border-radius:8px}
.turno{font-size:.9rem;color:var(--muted);border-left:3px solid var(--line);padding-left:12px}
.notice{font-size:.95rem}
.leggere{background:var(--soft);border-color:transparent}
.cat{display:inline-flex;align-items:center;gap:6px;margin:2px 10px 2px 0;font-weight:bold;font-size:.9rem;white-space:nowrap}
.cat::before{content:'';width:.85em;height:.85em;border-radius:50%;background:var(--c);border:1px solid oklch(0% 0 0/.15)}
.situazioni{--c:#ffbf00}.movimento{--c:#4c97ff}.aspetto{--c:#9966ff}.suono{--c:#cf63cf}.controllo{--c:#ffab19}.sensori{--c:#5cb1d6}.operatori{--c:#59c059}.variabili{--c:#ff8c1a}
.idee li{margin-bottom:9px}
.sfida summary::before{content:'＋ ';color:var(--g-ink)}
.sfida[open] summary::before{content:'－ '}
.finito{display:flex;gap:20px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-top:28px;padding:20px 22px;border:2px dashed var(--line);border-radius:14px}
.finito h3{margin-bottom:6px}
.finito p{font-size:.92rem;margin:0}
.finito>div{flex:1 1 380px}
.evidence ol li{margin-bottom:8px}
.checkpoint input{width:20px;height:20px;flex:none;margin-top:4px;accent-color:var(--g-ink)}

@media(max-width:1000px){.regole{grid-template-columns:1fr 1fr}.tre{grid-template-columns:1fr}.galleria{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.galleria{grid-template-columns:1fr}}
@media(max-width:650px){.scheda{grid-template-columns:1fr}.regole{grid-template-columns:1fr}.section.tuo{padding:26px 16px;border-radius:12px}.game-card{box-shadow:4px 4px 0 var(--card-line)}.brief-icon .icona{width:52px;height:52px}tbody th{white-space:normal}}
@media(prefers-reduced-motion:reduce){.game-card{transition:none}.game-card:hover{transform:none}}
@media print{.game-card{box-shadow:none}.section.tuo{background:none}.finito,.indice-passi,.filtri{display:none}}

/* Vetrina di Arena Camuna */
.vetrina{display:grid;grid-template-columns:1fr 1.15fr;gap:34px;align-items:center}
.vetrina-foto{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.vetrina-foto img{width:100%;height:auto;border-radius:12px;border:2px solid var(--card-line);box-shadow:4px 4px 0 var(--card-line);display:block}
.vetrina-foto img:first-child{grid-column:1/-1}
.comandi{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:8px 18px;font-size:.92rem}
kbd{font-family:ui-monospace,Consolas,monospace;font-size:.85em;background:white;border:1.5px solid var(--ink);border-bottom-width:3px;border-radius:6px;padding:1px 7px}
@media(max-width:900px){.vetrina{grid-template-columns:1fr}}

/* Lista dei giochi da scaricare */
.lista-download{list-style:none;padding:0;margin:28px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.lista-download li{display:flex;align-items:center;gap:12px;margin:0;padding:10px 12px;background:var(--g);border:2px solid var(--card-line);border-radius:12px}
.lista-download li.tema-notte{background:oklch(29% .05 265);color:oklch(97% .01 265)}
.lista-download li.tema-notte a:not(.button){color:white}
.lista-download .mini-icona .icona{width:42px;height:42px;color:var(--card-line);display:block}
.lista-download li.tema-notte .mini-icona .icona{color:white}
.lista-download .nome{flex:1;min-width:0;font-weight:bold;line-height:1.25}
.lista-download .nome a{color:inherit;text-decoration:none}
.lista-download .nome small{display:block;font-weight:normal;font-size:.78rem;opacity:.85}
.lista-download .button{min-height:40px;padding:6px 12px;font-size:.85rem;white-space:nowrap}
#scarica .vetrina{margin-top:22px;padding:24px;background:white;border:1px solid var(--line);border-radius:16px}
@media(max-width:1000px){.lista-download{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.lista-download{grid-template-columns:1fr}#scarica .vetrina{padding:16px}}
