/* GamesQuiz — stile "sticker pop" v1.0
   Card bianche con bordo spesso e ombra piena che si preme al tocco.
   Palette: viola elettrico, rosa bubblegum, giallo sole, lime.
   Mobile first, emoji native (le stesse di WhatsApp), zero webfont. */

.gq {
  --gq-ink: #241553;
  --gq-grape: #6C2BD9;
  --gq-bubble: #FF4D8D;
  --gq-sun: #FFC93C;
  --gq-lime: #3ECF8E;
  --gq-red: #FF5A5A;
  --gq-paper: #ffffff;
  position: relative;
  margin: 28px auto;
  max-width: 560px;
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  color: var(--gq-ink);
}

.gq * { box-sizing: border-box; }

.gq-card {
  background: var(--gq-paper);
  border: 3px solid var(--gq-ink);
  border-radius: 22px;
  box-shadow: 6px 6px 0 var(--gq-ink);
  padding: 22px 18px;
  text-align: center;
}

/* ---------- intro ---------- */
.gq-badge {
  display: inline-block;
  background: var(--gq-grape);
  color: #fff;
  font-weight: 800;
  letter-spacing: 2px;
  padding: 8px 20px;
  border-radius: 999px;
  border: 3px solid var(--gq-ink);
  box-shadow: 4px 4px 0 var(--gq-ink);
  transform: rotate(-2deg);
  font-size: 18px;
}
.gq-intro-sub { font-size: 17px; margin: 18px 0 6px; font-weight: 600; }

/* ---------- bottoni ---------- */
.gq-btn {
  display: inline-block;
  margin-top: 16px;
  background: var(--gq-bubble);
  color: #fff;
  font-size: 19px;
  font-weight: 800;
  padding: 14px 34px;
  border: 3px solid var(--gq-ink);
  border-radius: 999px;
  box-shadow: 5px 5px 0 var(--gq-ink);
  cursor: pointer;
  transition: transform .08s, box-shadow .08s;
  -webkit-tap-highlight-color: transparent;
}
.gq-btn:active { transform: translate(4px,4px); box-shadow: 1px 1px 0 var(--gq-ink); }
.gq-next, .gq-again { background: var(--gq-grape); }
.gq-again { font-size: 16px; padding: 11px 26px; }

/* ---------- trivia ---------- */
.gq-qhead { display: flex; align-items: center; justify-content: space-between; margin-bottom: 10px; }
.gq-qnum {
  background: var(--gq-sun);
  border: 2px solid var(--gq-ink);
  border-radius: 999px;
  font-weight: 800;
  font-size: 14px;
  padding: 4px 12px;
}
.gq-dots { display: flex; gap: 5px; }
.gq-dot { width: 9px; height: 9px; border-radius: 50%; background: #e4defa; border: 1.5px solid var(--gq-ink); }
.gq-dot.done { background: var(--gq-lime); }
.gq-dot.now { background: var(--gq-bubble); transform: scale(1.25); }

.gq-qtext { font-size: 20px; line-height: 1.35; margin: 12px 0 18px; font-weight: 800; }

.gq-opts { display: grid; gap: 10px; }
.gq-opt {
  background: #F6F3FF;
  border: 3px solid var(--gq-ink);
  border-radius: 16px;
  box-shadow: 4px 4px 0 var(--gq-ink);
  padding: 13px 14px;
  font-size: 17px;
  font-weight: 700;
  color: var(--gq-ink);
  cursor: pointer;
  text-align: left;
  transition: transform .08s, box-shadow .08s, background .15s;
  -webkit-tap-highlight-color: transparent;
}
.gq-opt:active { transform: translate(3px,3px); box-shadow: 1px 1px 0 var(--gq-ink); }
.gq-opt.ok { background: var(--gq-lime); color: #063; }
.gq-opt.ko { background: var(--gq-red); color: #fff; animation: gq-shake .35s; }
.gq-opt:disabled { cursor: default; opacity: .95; }

@keyframes gq-shake {
  0%,100% { transform: translateX(0); }
  25% { transform: translateX(-6px); }
  75% { transform: translateX(6px); }
}

.gq-explain {
  margin: 14px 0 0;
  font-size: 15px;
  background: #FFF6DC;
  border: 2px dashed var(--gq-sun);
  border-radius: 12px;
  padding: 10px 12px;
  text-align: left;
}

/* ---------- memory ---------- */
.gq-mbar { display: flex; justify-content: space-between; margin-bottom: 12px; }
.gq-mstat {
  background: var(--gq-sun);
  border: 2px solid var(--gq-ink);
  border-radius: 999px;
  font-weight: 800;
  font-size: 14px;
  padding: 5px 13px;
}
.gq-mgrid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
}
.gq-mcard {
  aspect-ratio: 1;
  background: none;
  border: 0;
  padding: 0;
  perspective: 500px;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}
.gq-minner {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  transform-style: preserve-3d;
  transition: transform .35s;
}
.gq-mcard.flip .gq-minner, .gq-mcard.match .gq-minner { transform: rotateY(180deg); }
.gq-mface {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 3px solid var(--gq-ink);
  border-radius: 14px;
  backface-visibility: hidden;
  font-size: clamp(24px, 8vw, 42px);
  overflow: hidden;
}
.gq-mback { background: var(--gq-grape); box-shadow: 3px 3px 0 var(--gq-ink); }
.gq-mfront { background: #fff; transform: rotateY(180deg); }
.gq-mfront img { width: 100%; height: 100%; object-fit: cover; }
.gq-mcard.match .gq-mfront { background: #E9FBF2; border-color: var(--gq-lime); }
.gq-mcard.match { animation: gq-pop .3s; }
@keyframes gq-pop { 50% { transform: scale(1.12); } }

/* ---------- verdetto ---------- */
.gq-vemoji { font-size: 74px; line-height: 1; animation: gq-drop .5s; }
@keyframes gq-drop {
  0% { transform: translateY(-40px) scale(.4); opacity: 0; }
  70% { transform: translateY(6px) scale(1.1); }
  100% { transform: translateY(0) scale(1); opacity: 1; }
}
.gq-vtitle { font-size: 26px; margin: 10px 0 4px; font-weight: 900; }
.gq-vtext { font-size: 16px; margin: 0 0 12px; }
.gq-vscore {
  display: inline-block;
  background: var(--gq-sun);
  border: 3px solid var(--gq-ink);
  border-radius: 999px;
  box-shadow: 4px 4px 0 var(--gq-ink);
  padding: 9px 22px;
  font-size: 18px;
}
.gq-vstats { font-size: 14px; margin: 14px 0 2px; min-height: 18px; color: #5c5482; }

/* ---------- condivisione ---------- */
.gq-share { margin-top: 12px; }
.gq-share-label { font-weight: 800; font-size: 15px; margin: 6px 0 10px; }
.gq-share-row { display: flex; gap: 8px; justify-content: center; flex-wrap: wrap; }
.gq-sbtn {
  display: inline-block;
  border: 3px solid var(--gq-ink);
  border-radius: 999px;
  box-shadow: 4px 4px 0 var(--gq-ink);
  padding: 10px 18px;
  font-size: 15px;
  font-weight: 800;
  text-decoration: none;
  cursor: pointer;
  transition: transform .08s, box-shadow .08s;
  -webkit-tap-highlight-color: transparent;
}
.gq-sbtn:active { transform: translate(3px,3px); box-shadow: 1px 1px 0 var(--gq-ink); }
.gq-wa { background: #25D366; color: #fff; }
.gq-tg { background: #229ED9; color: #fff; }
.gq-more { background: #fff; color: var(--gq-ink); }

/* ---------- pioggia emoji ---------- */
.gq-burst {
  position: absolute;
  top: -10px;
  pointer-events: none;
  animation: gq-fall 2.4s ease-in forwards;
  z-index: 3;
}
@keyframes gq-fall {
  to { transform: translateY(420px) rotate(340deg); opacity: 0; }
}

@media (prefers-reduced-motion: reduce) {
  .gq * { animation: none !important; transition: none !important; }
}

/* ================= v1.2: nuovi engine ================= */
.gq-hint { font-size: 14px; color: #5c5482; margin: 4px 0 12px; }
.gq-input {
  width: 100%; box-sizing: border-box;
  border: 3px solid var(--gq-ink); border-radius: 14px;
  padding: 12px 14px; font-size: 17px; font-weight: 700;
  margin: 6px 0 10px; text-align: center;
}
.gq-input:focus { outline: none; border-color: var(--gq-grape); }
.gq-input.ok { background: var(--gq-lime); }
.gq-input.ko { background: #ffd9d9; }
.gq-opt.sel { background: var(--gq-sun); }
.gq-explain.ok2 { background: #E9FBF2; border-color: var(--gq-lime); }

/* metti in ordine */
.gq-order { display: grid; gap: 8px; }
.gq-onum {
  display: inline-block; background: var(--gq-grape); color: #fff;
  border-radius: 999px; width: 24px; height: 24px; line-height: 24px;
  text-align: center; font-size: 13px; margin-right: 6px;
}

/* guess it */
.gq-guess-stage { display: flex; justify-content: center; margin-bottom: 10px; }
.gq-guess-img {
  max-width: 100%; max-height: 260px; border: 3px solid var(--gq-ink);
  border-radius: 16px; transition: filter .4s;
}
.gq-guess-emoji { font-size: 110px; line-height: 1.2; transition: filter .4s; }
.gq-hints { text-align: left; }

/* typerush */
.gq-found { display: flex; flex-wrap: wrap; gap: 6px; justify-content: center; margin-top: 8px; }
.gq-tag {
  border: 2px solid var(--gq-ink); border-radius: 999px;
  font-size: 13px; font-weight: 800; padding: 3px 11px;
}
.gq-tag.ok { background: var(--gq-lime); }
.gq-tag.ko { background: #ffd9d9; text-decoration: line-through; opacity: .7; }

/* wordle */
.gq-wgrid {
  display: grid; grid-template-columns: repeat(5, 52px);
  gap: 6px; justify-content: center; margin: 8px 0 14px;
}
.gq-wcell {
  width: 52px; height: 52px; border: 3px solid #d8ccf5; border-radius: 10px;
  display: flex; align-items: center; justify-content: center;
  font-size: 24px; font-weight: 900; background: #fff;
}
.gq-wcell.si { background: var(--gq-lime); border-color: var(--gq-ink); color: #063; }
.gq-wcell.quasi { background: var(--gq-sun); border-color: var(--gq-ink); }
.gq-wcell.no { background: #e7e2f5; }
.gq-kb { user-select: none; }
.gq-kb-row { display: flex; justify-content: center; gap: 4px; margin-bottom: 5px; }
.gq-key {
  border: 2px solid var(--gq-ink); border-radius: 8px; background: #fff;
  font-size: 14px; font-weight: 800; padding: 9px 0; width: 30px; cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}
.gq-key.wide { width: 46px; }
.gq-key.si { background: var(--gq-lime); }
.gq-key.quasi { background: var(--gq-sun); }
.gq-key.no { background: #cfc8e6; opacity: .6; }

/* cruciverba */
.gq-xgrid { display: grid; gap: 3px; justify-content: center; margin-bottom: 12px; }
.gq-xempty { width: 100%; aspect-ratio: 1; }
.gq-xcell {
  position: relative; width: 100%; aspect-ratio: 1; min-width: 30px;
  border: 2px solid var(--gq-ink); border-radius: 6px; background: #fff;
}
.gq-xnum {
  position: absolute; top: 1px; left: 3px; font-size: 9px;
  font-style: normal; font-weight: 800; color: var(--gq-grape);
}
.gq-xcell input {
  width: 100%; height: 100%; border: 0; text-align: center;
  font-size: 18px; font-weight: 900; background: none; text-transform: uppercase;
  color: var(--gq-ink);
}
.gq-xcell input:focus { outline: 3px solid var(--gq-bubble); border-radius: 4px; }
.gq-xcell input.ok { background: var(--gq-lime); }
.gq-xdefs { text-align: left; }
.gq-xdefs p { margin: 4px 0; }

/* poll: barre percentuali */
.gq-bar { display: flex; align-items: center; gap: 8px; margin: 9px 0; }
.gq-bar-label { flex: 0 0 38%; text-align: right; font-size: 14px; font-weight: 700; }
.gq-bar-track {
  flex: 1; height: 22px; background: #EDE7FB;
  border: 2px solid var(--gq-ink); border-radius: 999px; overflow: hidden;
}
.gq-bar-fill { display: block; height: 100%; background: var(--gq-grape); transition: width .6s; }
.gq-bar.hot .gq-bar-fill { background: var(--gq-bubble); }
.gq-bar-pct { flex: 0 0 42px; font-weight: 900; font-size: 14px; text-align: left; }

/* this or that */
.gq-duo { display: flex; flex-direction: column; gap: 8px; align-items: stretch; }
.gq-duo-btn { position: relative; font-size: 18px; padding: 18px 14px; text-align: center; }
.gq-duo-pct {
  display: block; margin-top: 4px; font-size: 22px; color: var(--gq-grape);
}
.gq-vs {
  align-self: center; background: var(--gq-sun); border: 2px solid var(--gq-ink);
  border-radius: 999px; font-weight: 900; font-size: 13px; padding: 3px 12px;
}

/* tier list */
.gq-tiers { display: grid; gap: 6px; margin-bottom: 12px; }
.gq-tier { display: flex; gap: 6px; }
.gq-tier-label {
  flex: 0 0 44px; border: 3px solid var(--gq-ink); border-radius: 12px;
  font-size: 20px; font-weight: 900; cursor: pointer; background: var(--gq-sun);
}
.gq-tier-label.t-s { background: #FF4D8D; color: #fff; }
.gq-tier-label.t-a { background: #FFC93C; }
.gq-tier-label.t-b { background: #3ECF8E; }
.gq-tier-label.t-c { background: #9AD0FF; }
.gq-tier-slot {
  flex: 1; min-height: 46px; border: 3px dashed #d8ccf5; border-radius: 12px;
  display: flex; flex-wrap: wrap; gap: 5px; padding: 5px; align-items: center;
}
.gq-pool { display: flex; flex-wrap: wrap; gap: 6px; justify-content: center; min-height: 40px; }
.gq-chip {
  border: 2px solid var(--gq-ink); border-radius: 999px; background: #fff;
  font-size: 14px; font-weight: 800; padding: 7px 13px; cursor: pointer;
  box-shadow: 3px 3px 0 var(--gq-ink);
  -webkit-tap-highlight-color: transparent;
}
.gq-chip.sel { background: var(--gq-bubble); color: #fff; transform: scale(1.06); }

/* listicle */
.gq-list { display: grid; gap: 7px; text-align: left; }
.gq-litem {
  display: flex; align-items: center; gap: 8px;
  border: 2px solid var(--gq-ink); border-radius: 12px; padding: 8px 10px; background: #fff;
}
.gq-lrank { font-weight: 900; color: var(--gq-grape); flex: 0 0 32px; }
.gq-ltext { flex: 1; font-size: 14px; font-weight: 700; }
.gq-lscore { font-weight: 900; font-size: 13px; color: #5c5482; }
.gq-lvote {
  border: 2px solid var(--gq-ink); border-radius: 8px; background: #fff;
  font-size: 15px; padding: 4px 8px; cursor: pointer;
}
.gq-lvote.sel { background: var(--gq-sun); }
.gq-lvote:disabled { opacity: .55; cursor: default; }
.gq-lvote.sel:disabled { opacity: 1; }

/* tap and find + differenze */
.gq-photo { position: relative; display: inline-block; max-width: 100%; }
.gq-photo img {
  max-width: 100%; border: 3px solid var(--gq-ink); border-radius: 14px; display: block;
}
.gq-zona {
  position: absolute; transform: translate(-50%, -50%);
  background: var(--gq-lime); border: 2px solid var(--gq-ink); border-radius: 999px;
  width: 30px; height: 30px; line-height: 27px; font-weight: 900; pointer-events: none;
  animation: gq-pop .3s;
}
.gq-diff { display: grid; gap: 10px; }
@media (min-width: 560px) { .gq-diff { grid-template-columns: 1fr 1fr; } }

/* classifica */
.gq-board { margin-top: 14px; }
.gq-board-form { display: flex; gap: 8px; justify-content: center; margin-bottom: 8px; }
.gq-nick {
  border: 3px solid var(--gq-ink); border-radius: 999px; padding: 9px 14px;
  font-size: 15px; font-weight: 700; width: 45%;
}
.gq-board-list {
  text-align: left; max-width: 300px; margin: 6px auto 0; padding-left: 26px;
  font-size: 14px; font-weight: 700;
}
.gq-board-list li { margin: 3px 0; }

/* ================= v1.2b: sudoku, ruota, slot ================= */
.gq-sgrid {
  display: grid; grid-template-columns: repeat(9, 1fr);
  max-width: 396px; margin: 0 auto; border: 3px solid var(--gq-ink);
  border-radius: 10px; overflow: hidden; background: var(--gq-ink); gap: 1px;
}
.gq-scell {
  position: relative; aspect-ratio: 1; background: #fff;
  display: flex; align-items: center; justify-content: center;
  font-size: 17px; font-weight: 800;
}
.gq-scell.fix { background: #F3EFFC; color: var(--gq-ink); }
.gq-scell.br { border-right: 3px solid var(--gq-ink); }
.gq-scell.bb { border-bottom: 3px solid var(--gq-ink); }
.gq-scell input {
  width: 100%; height: 100%; border: 0; text-align: center;
  font-size: 17px; font-weight: 900; color: var(--gq-grape); background: none;
}
.gq-scell input:focus { outline: 3px solid var(--gq-bubble); outline-offset: -3px; }
.gq-scell input.ok { background: var(--gq-lime); }

/* ruota della fortuna */
.gq-wheel-stage { position: relative; width: 240px; height: 240px; margin: 6px auto 12px; }
.gq-wheel {
  width: 100%; height: 100%; border-radius: 50%;
  border: 5px solid var(--gq-ink); box-shadow: 6px 6px 0 var(--gq-ink);
  position: relative;
}
.gq-wheel-label {
  position: absolute; left: 50%; top: 50%; margin-left: -12px; margin-top: -104px;
  width: 24px; text-align: center; font-size: 18px;
  transform-origin: 12px 104px;
}
.gq-wheel-pin {
  position: absolute; top: -16px; left: 50%; transform: translateX(-50%);
  font-size: 26px; color: var(--gq-ink); z-index: 2;
  text-shadow: 0 2px 0 #fff;
}
.gq-wheel-legend {
  display: flex; flex-wrap: wrap; gap: 6px; justify-content: center; margin-bottom: 10px;
}
.gq-wheel-legend .gq-tag { border-width: 3px; background: #fff; }

/* slot machine */
.gq-slot {
  display: flex; gap: 10px; justify-content: center; margin: 8px 0 14px;
}
.gq-reel {
  width: 76px; height: 76px; border: 4px solid var(--gq-ink); border-radius: 14px;
  background: #fff; box-shadow: inset 0 -10px 0 #EDE7FB, 4px 4px 0 var(--gq-ink);
  display: flex; align-items: center; justify-content: center; font-size: 40px;
}
.gq-reel.stop { animation: gq-pop .3s; }

/* ============================================================
   v1.7 — tema "Guida Misteriosa" per i giochi
   Override del tema sticker pop: carta, matita, acquerello.
   ============================================================ */
.gq{
  --gq-ink:#4D4030; --gq-grape:#79B865; --gq-bubble:#EE8A6E;
  --gq-sun:#F1C75B; --gq-lime:#8FCB7B; --gq-red:#E06A5A; --gq-paper:#FFFDF6;
  font-family:'Nunito',system-ui,sans-serif;
}
.gq-card{
  border-width:2.5px;
  border-radius:255px 18px 225px 18px/18px 225px 18px 255px;
  box-shadow:5px 6px 0 rgba(77,64,48,.16);
}
.gq-btn,.gq-start,.gq-next,.gq-again{
  font-family:'Baloo 2',sans-serif;
  border-radius:255px 15px 225px 15px/15px 225px 15px 255px;
  box-shadow:3px 3px 0 rgba(77,64,48,.22);
}
.gq-opt,.gq-sbtn,.gq-chip,.gq-key,.gq-input,.gq-nick{
  border-radius:18px 10px 16px 10px/10px 16px 10px 18px;
}
.gq-vtitle,.gq-qtext,.gq-intro-sub{font-family:'Baloo 2',sans-serif}
.gq-badge{
  background:var(--gq-bubble);color:var(--gq-paper);
  font-family:'Baloo 2',sans-serif;rotate:-2deg;
  border-radius:12px;box-shadow:2px 3px 0 rgba(77,64,48,.25);
}
.gq-vstats,.gq-share-label,.gq-hint{font-family:'Caveat',cursive;font-size:19px;color:#7A6A54}
.gq-bar-track{border-width:2px;background:#F3E7C9}
.gq-wcell{border-color:#E4D9BE;background:var(--gq-paper)}
.gq-wcell.no{background:#EFE6CE}
.gq-key.no{background:#E4D9BE}
.gq-mcard,.gq-mface{border-radius:16px 10px 18px 10px/10px 18px 10px 16px}
.gq-tier-slot{border-color:#E4D9BE}
.gq-litem{border-radius:14px 9px 16px 9px/9px 16px 9px 14px}

/* v1.9.4: il tasto GIRA sta tra la ruota e la legenda */
.gq-wheel-stage + .gq-btn { display: block; margin: 4px auto 14px; }

/* ============================================================
   v2.0 — GIOCO CUCINA con Chef Mia
   ============================================================ */
.gqk-cucina{position:relative;margin:-16px -16px 12px;padding:10px 10px 0;text-align:center;
  background:linear-gradient(#D3EEF2 0 62%,#C89B6A 62% 100%);
  border-radius:14px 14px 0 0;overflow:hidden}
.gqk-cucina::before{content:'';position:absolute;top:0;left:0;right:0;height:62%;
  background-image:linear-gradient(rgba(130,184,220,.4) 1px,transparent 1px),
    linear-gradient(90deg,rgba(130,184,220,.4) 1px,transparent 1px);
  background-size:30px 30px}
.gqk-mia{position:relative;height:150px;width:auto;display:inline-block;
  filter:drop-shadow(0 4px 6px rgba(77,64,48,.25))}
@keyframes gqk-hop{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
.gqk-cucina .gqk-mia{animation:gqk-hop 3.2s ease-in-out infinite}
@media (prefers-reduced-motion:reduce){.gqk-cucina .gqk-mia{animation:none}}
.gqk-mia-verdetto{height:120px;margin:0 auto 6px;display:block}

.gqk-dialogo{position:relative;margin:12px auto 10px;max-width:320px;background:var(--gq-paper,#FFFDF6);
  border:2.5px solid var(--gq-ink,#4D4030);border-radius:14px 14px 14px 4px;padding:9px 14px;
  font-family:'Baloo 2',sans-serif;font-weight:700;font-size:15px;text-align:center;
  box-shadow:3px 3px 0 rgba(77,64,48,.15)}
.gqk-passi{display:flex;gap:6px;justify-content:center;margin:0 0 12px}
.gqk-passo{width:32px;height:8px;border-radius:99px;border:2px solid var(--gq-ink,#4D4030);background:transparent}
.gqk-passo.fatto{background:#79B865}
.gqk-passo.ora{background:#F1C75B}
.gqk-stage{min-height:190px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}
.gqk-hint{text-align:center}
.gqk-verde{background:#79B865!important}
.gqk-conta{font-family:'Baloo 2',sans-serif;font-weight:700;font-size:14px;color:#7A6A54}

/* taglia */
.gqk-tagliere{position:relative;width:100%;max-width:320px;height:180px;background:#E8C99B;
  border:3px solid #9c7548;border-radius:14px;touch-action:none;cursor:crosshair;overflow:hidden}
.gqk-cibo-taglio{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  font-size:110px;pointer-events:none}
.gqk-linea{position:absolute;left:10%;right:10%;border-top:3px dashed rgba(77,64,48,.55)}
.gqk-linea.ok{border-top:3px solid #E5533C;box-shadow:0 0 0 2px rgba(229,83,60,.25)}

/* mescola */
.gqk-ciotola{width:190px;height:190px;border-radius:50%;border:3px solid var(--gq-ink,#4D4030);
  background:radial-gradient(circle,#F6E3B0,#E6C36A);touch-action:none;cursor:grab;
  display:flex;align-items:center;justify-content:center;font-size:60px;user-select:none}

/* friggi in padella */
.gqk-padella{position:relative;width:220px;height:150px;border-radius:50%/42%;
  background:radial-gradient(circle at 50% 42%,#5b5b66,#3a3a44);border:3px solid #26262e;
  display:flex;align-items:center;justify-content:center;
  box-shadow:inset 0 6px 14px rgba(0,0,0,.4)}
.gqk-padella::after{content:'';position:absolute;right:-56px;top:44%;width:62px;height:15px;
  background:#26262e;border-radius:8px}
.gqk-cibo-padella{font-size:62px;background:none;border:0;cursor:pointer;line-height:1;
  filter:saturate(.55) brightness(1.2);transition:filter .25s;padding:14px}
.gqk-cibo-padella.dorato{filter:saturate(1.25) brightness(.95)}
.gqk-cibo-padella.bruciando{filter:saturate(.8) brightness(.55)}

/* friggitrice ad aria */
.gqk-friggitrice{width:100%;max-width:320px;text-align:center}
.gqk-frigg-corpo{width:190px;height:190px;margin:0 auto;background:#4A4A55;border:3px solid var(--gq-ink,#4D4030);
  border-radius:24px;position:relative;box-shadow:inset 0 -10px 18px rgba(0,0,0,.3)}
.gqk-frigg-oblo{position:absolute;top:22px;left:22px;right:22px;height:92px;border-radius:14px;
  background:radial-gradient(circle at 50% 40%,#FFE9A8,#E8A24C);border:3px solid #2b2b33;
  display:flex;align-items:center;justify-content:center;overflow:hidden}
.gqk-frigg-cibo{font-size:44px;filter:saturate(.55) brightness(1.18);transition:filter .3s}
.gqk-frigg-cibo.cotto{filter:saturate(1.25) brightness(.92)}
.gqk-frigg-cibo.bruciato{filter:saturate(.45) brightness(.45)}
.gqk-frigg-display{position:absolute;bottom:16px;left:22px;right:22px;height:32px;background:#1b1b22;
  border-radius:8px;display:flex;align-items:center;justify-content:center;
  font-family:'Baloo 2',sans-serif;color:#7CF;font-size:16px;border:2px solid #000}
.gqk-frigg-barra{height:12px;background:#F3E7C9;border:2px solid var(--gq-ink,#4D4030);border-radius:99px;
  overflow:hidden;margin:14px auto 0;max-width:300px}
.gqk-frigg-fill{height:100%;width:0;background:linear-gradient(90deg,#F4B740,#E5533C)}
.gqk-frigg-zona{position:relative;max-width:300px;margin:5px auto 0;height:14px}
.gqk-frigg-zona .ok{position:absolute;height:100%;background:#E3F0D8;border:2px dashed #5FA843;border-radius:6px}

/* ============================================================
   v2.1 — ACCHIAPPA LA TALPA MATEMATICA (engine nativo)
   ============================================================ */
.gqt .gq-card, .gq-card.gqt{padding:10px}
.gqt-area{background:#7ec850;font-family:'Baloo 2',sans-serif;color:#fff;user-select:none;touch-action:manipulation}
.gqt-bar{display:flex;justify-content:space-between;padding:10px 16px;font-size:20px;font-weight:800;
  text-shadow:2px 2px 4px #000;background:rgba(0,0,0,.25);border-radius:10px;
  position:relative;z-index:20;margin:150px 10px 0}
.gqt-pos{position:absolute;width:100px;height:100px;transform:translate(-50%,-50%);z-index:5}
.gqt-pos-0{top:65%;left:35%}.gqt-pos-1{top:65%;left:65%}.gqt-pos-2{top:76%;left:50%}
.gqt-pos-3{top:88%;left:30%}.gqt-pos-4{top:88%;left:70%}
@media (max-width:600px){
  .gqt-pos-0{top:62%;left:26%}.gqt-pos-1{top:62%;left:74%}.gqt-pos-2{top:76%;left:50%}
  .gqt-pos-3{top:90%;left:22%}.gqt-pos-4{top:90%;left:78%}
}
.gqt-talpa{width:100%;height:100%;position:relative;cursor:pointer;opacity:0;transform:scale(0);
  transition:transform .4s cubic-bezier(.175,.885,.32,1.275),opacity .3s}
.gqt-talpa.attiva{opacity:1;transform:scale(1)}
.gqt-talpa.colpita,.gqt-talpa.missata{pointer-events:none}
.gqt-talpa-img{position:absolute;top:0;left:0;width:100%;height:100%;max-width:100%;
  object-fit:contain;object-position:bottom center;pointer-events:none;display:block}
.gqt-fumetto{position:absolute;top:-62px;left:50%;transform:translateX(-50%);background:#fffbe6;color:#000;
  padding:7px 11px;border-radius:12px;font-size:19px;font-weight:900;white-space:nowrap;border:3px solid #000;
  box-shadow:3px 3px 0 rgba(0,0,0,.2);pointer-events:none;opacity:0;transition:opacity .2s;z-index:10}
.gqt-talpa.attiva .gqt-fumetto{opacity:1}
.gqt-fumetto::after{content:'';position:absolute;bottom:-12px;left:50%;transform:translateX(-50%);
  border-width:12px 10px 0;border-style:solid;border-color:#000 transparent transparent}
.gqt-fumetto::before{content:'';position:absolute;bottom:-8px;left:50%;transform:translateX(-50%);
  border-width:10px 8px 0;border-style:solid;border-color:#fffbe6 transparent transparent;z-index:1}
@media (prefers-reduced-motion:reduce){.gqt-talpa{transition:none}}

/* v2.3.5: emoji bandiera ingrandite (solo loro) nel testo dei giochi */
.gq-flag{font-size:2em;line-height:1;vertical-align:middle;display:inline-block;margin:0 .05em}

/* v2.4.1: il "grande reveal" dell'immagine nel gioco Indovina */
.gq-guess-stage.gq-guess-won{animation:gq-reveal-pop .6s ease}
@keyframes gq-reveal-pop{0%{transform:scale(.94);opacity:.6}60%{transform:scale(1.03)}100%{transform:scale(1);opacity:1}}
.gq-guess-reveal{display:block;width:100%;max-width:320px;margin:0 auto 12px;border-radius:14px;
  border:3px solid var(--gq-ink,#4D4030);box-shadow:4px 5px 0 rgba(77,64,48,.18)}
@media (prefers-reduced-motion:reduce){.gq-guess-stage.gq-guess-won{animation:none}}

/* ============================================================
   v2.5 — IL GRATTACIELO (arcade anni 80/90)
   ============================================================ */
.gq-card.gqg{background:#191932;color:#e8e8ff;border-color:#2e2e57}
.gqg-title{font-family:'Courier New',monospace;font-weight:900;font-size:26px;text-align:center;
  letter-spacing:2px;color:#ffd94d;text-shadow:0 0 12px rgba(255,217,77,.5);margin:6px 0 2px}
.gqg-sub{text-align:center;color:#b9b9e6;margin:4px 0;font-weight:700}
.gqg-rules{text-align:center;color:#8f8fc4;font-size:14px;margin:6px 12px 12px}
.gqg-form{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:10px 0 4px}
.gqg-nome{max-width:260px;text-align:center;font-family:'Courier New',monospace;font-weight:800;
  background:#0f0f22;color:#ffd94d;border:2px solid #3d3d70;border-radius:10px}
.gqg-nome::placeholder{color:#6d6da0;font-weight:600}
.gqg-btn{background:#ffd94d;color:#191932;font-weight:900;letter-spacing:1px;border:none}
.gqg-btn:hover{background:#ffe373}
.gqg-msg{text-align:center;color:#ff9d9d;min-height:20px;font-size:14px;margin:4px 0}
.gqg-head{display:flex;justify-content:space-between;align-items:center;
  font-family:'Courier New',monospace;font-weight:900;font-size:19px;margin:2px 2px 6px}
.gqg-piano{color:#ffd94d;letter-spacing:1px}
.gqg-vite{font-size:17px;letter-spacing:2px}
.gqg-banda{text-align:center;color:#8f8fc4;font-size:13px;margin:0 0 8px}
.gqg .gq-qtext{color:#fff}
.gqg .gq-opt{background:#23234a;color:#e8e8ff;border-color:#3d3d70}
.gqg .gq-opt:hover{background:#2c2c5c}
.gqg-riavvia{display:block;margin:14px auto 2px;background:none;border:1px dashed #55558c;
  color:#8f8fc4;border-radius:8px;padding:6px 14px;cursor:pointer;font-size:13px}
.gqg-riavvia-conf{color:#ffd94d;border-color:#ffd94d;font-weight:800}
.gqg-final-piano{font-family:'Courier New',monospace;font-weight:900;font-size:44px;text-align:center;
  color:#ffd94d;text-shadow:0 0 18px rgba(255,217,77,.6);margin:6px 0}
.gqg-hof{margin-top:16px;background:#0f0f22;border:2px solid #3d3d70;border-radius:12px;padding:12px 10px}
.gqg-hof-title{font-family:'Courier New',monospace;text-align:center;color:#7ef0ff;font-weight:900;
  letter-spacing:3px;margin-bottom:8px;text-shadow:0 0 10px rgba(126,240,255,.5)}
.gqg-hof-empty{text-align:center;color:#8f8fc4;font-size:14px;margin:6px 0}
.gqg-hof-rows{display:flex;flex-direction:column;gap:2px;max-height:340px;overflow-y:auto}
.gqg-hof-row{display:flex;gap:8px;align-items:baseline;font-family:'Courier New',monospace;
  font-weight:800;font-size:15px;color:#c9c9f0;padding:3px 8px;border-radius:6px}
.gqg-hof-row.oro{color:#ffd94d}
.gqg-hof-row.argento{color:#dfe6ef}
.gqg-hof-row.bronzo{color:#e8a86e}
.gqg-hof-pos{min-width:32px;text-align:right}
.gqg-hof-nome{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-transform:uppercase}
.gqg-hof-piano{color:#7ef0ff}
.gqg-io{background:#26264f;outline:1px solid #7ef0ff;animation:gqg-blink 1.2s ease 3}
@keyframes gqg-blink{0%,100%{outline-color:#7ef0ff}50%{outline-color:transparent}}
@media (prefers-reduced-motion:reduce){.gqg-io{animation:none}}

/* v2.5.5: hint nome (niente più placeholder troncato) + recupero salvataggio HOF */
.gqg-hint{text-align:center;color:#8f8fc4;font-size:13px;margin:2px 0 8px;line-height:1.4}
.gqg-retry-hof{margin-top:12px;padding:10px;background:#0f0f22;border:1px dashed #55558c;border-radius:10px}
.gqg-retry-hof .gqg-form{margin:6px 0 0}

/* ============================================================
   v2.6 — LA TORRE (scalata stile Milionario, palette lilla)
   ============================================================ */
.gq-card.gqt2{background:#1a1530;color:#efe9ff;border-color:#3a2e5c}
.gqt2-title{font-family:'Courier New',monospace;font-weight:900;font-size:25px;text-align:center;
  letter-spacing:2px;color:#c9a6ff;text-shadow:0 0 14px rgba(201,166,255,.6);margin:6px 0 2px}
.gqt2-sub{text-align:center;color:#c3b8e6;margin:4px 0;font-weight:700}
.gqt2-rules{text-align:center;color:#9a8fc4;font-size:14px;margin:6px 12px 12px}
.gqt2-form{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:10px 0 4px}
.gqt2-nome{max-width:260px;text-align:center;font-family:'Courier New',monospace;font-weight:800;
  background:#120e24;color:#c9a6ff;border:2px solid #4a3d75;border-radius:10px}
.gqt2-nome::placeholder{color:#6d6099;font-weight:600}
.gqt2-btn{background:#c9a6ff;color:#1a1530;font-weight:900;letter-spacing:1px;border:none}
.gqt2-btn:hover{background:#dcc4ff}
.gqt2-hint{text-align:center;color:#9a8fc4;font-size:13px;margin:2px 0 8px;line-height:1.4}
.gqt2-msg{text-align:center;color:#ff9d9d;min-height:20px;font-size:14px;margin:4px 0}
/* barra di stato */
.gqt2-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:space-between;
  font-family:'Courier New',monospace;font-weight:900;margin:2px 2px 8px}
.gqt2-piano{color:#c9a6ff;font-size:18px;letter-spacing:1px}
.gqt2-vite{font-size:16px;letter-spacing:2px}
.gqt2-aiuti{display:flex;gap:6px}
.gqt2-aiuto{background:#2a2150;color:#efe9ff;border:2px solid #ffd94d;border-radius:8px;
  min-width:40px;height:34px;font-weight:900;font-size:13px;cursor:pointer;padding:0 6px;
  box-shadow:0 0 8px rgba(255,217,77,.3);transition:transform .1s}
.gqt2-aiuto:hover{transform:scale(1.08)}
.gqt2-aiuto.usato{opacity:.3;border-color:#555;box-shadow:none;cursor:default;text-decoration:line-through}
.gqt2-banda{text-align:center;color:#9a8fc4;font-size:13px;margin:0 0 8px}
.gqt2 .gq-qtext{color:#fff}
.gqt2-opts .gq-opt{background:#241d44;color:#efe9ff;border-color:#4a3d75}
.gqt2-opts .gq-opt:hover{background:#2e2658}
.gqt2-opts .gq-opt.gqt2-off{opacity:.25;text-decoration:line-through;pointer-events:none}
.gqt2-riavvia{display:block;margin:14px auto 2px;background:none;border:1px dashed #5a4d8c;
  color:#9a8fc4;border-radius:8px;padding:6px 14px;cursor:pointer;font-size:13px}
.gqt2-riavvia-conf{color:#ffd94d;border-color:#ffd94d;font-weight:800}
.gqt2-final-piano{font-family:'Courier New',monospace;font-weight:900;font-size:44px;text-align:center;
  color:#c9a6ff;text-shadow:0 0 18px rgba(201,166,255,.6);margin:6px 0}
/* animazione mascotte bonus */
.gqt2-cheer{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;
  background:rgba(20,14,40,.82);cursor:pointer;animation:gqt2-fade .3s ease}
@keyframes gqt2-fade{from{opacity:0}to{opacity:1}}
.gqt2-cheer-card{position:relative;text-align:center;max-width:90%}
.gqt2-cheer-neon{font-family:'Courier New',monospace;font-weight:900;font-size:30px;letter-spacing:2px;
  color:#ffd94d;text-shadow:0 0 10px #ffd94d,0 0 22px rgba(255,217,77,.7);margin-bottom:6px;
  animation:gqt2-pulse 1s ease infinite}
@keyframes gqt2-pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.06)}}
.gqt2-cheer-img{width:auto;height:260px;max-width:80vw;filter:drop-shadow(0 8px 20px rgba(201,166,255,.5))}
.gqt2-cheer-anim{animation:gqt2-bounce 2.2s ease}
@keyframes gqt2-bounce{0%{transform:translateY(60px) scale(.6);opacity:0}
  20%{transform:translateY(-18px) scale(1.05);opacity:1}35%{transform:translateY(0) scale(1)}
  50%{transform:translateY(-12px)}65%{transform:translateY(0)}80%{transform:translateY(-6px)}100%{transform:translateY(0)}}
.gqt2-cheer-sub{color:#efe9ff;font-weight:700;margin-top:8px;font-size:15px}
.gqt2-sparkles{position:absolute;inset:0;pointer-events:none;overflow:visible}
.gqt2-spark{position:absolute;top:40%;width:10px;height:10px;background:#ffd94d;border-radius:50%;
  box-shadow:0 0 8px #ffd94d;animation:gqt2-fly 1.4s ease-out forwards}
@keyframes gqt2-fly{0%{transform:translateY(0) scale(0);opacity:1}
  100%{transform:translateY(-160px) scale(1.4);opacity:0}}
/* pannelli aiuto: telefono */
.gqt2-help-ov{position:fixed;inset:0;z-index:9998;display:flex;align-items:center;justify-content:center;
  background:rgba(20,14,40,.82);cursor:pointer;animation:gqt2-fade .3s ease;padding:16px}
.gqt2-phone{background:#12241f;border:2px solid #4ad991;border-radius:16px;padding:16px 18px;max-width:340px;width:100%;
  box-shadow:0 0 30px rgba(74,217,145,.4)}
.gqt2-phone-top{font-family:'Courier New',monospace;font-weight:900;color:#4ad991;text-align:center;
  font-size:18px;margin-bottom:8px;letter-spacing:1px}
.gqt2-phone-status{text-align:center;color:#bfe8d6;font-style:italic;margin:6px 0 10px}
.gqt2-phone-row{display:flex;align-items:center;gap:8px;margin:5px 0;color:#eafff5;font-weight:800}
.gqt2-phone-row>span:first-child{width:20px}
.gqt2-phone-bar{flex:1;height:14px;background:#0c1a15;border-radius:7px;overflow:hidden}
.gqt2-phone-bar>i{display:block;height:100%;background:#4ad991;border-radius:7px;transition:width .8s ease}
.gqt2-phone-row.top{color:#4ad991}
.gqt2-phone-row.top .gqt2-phone-bar>i{background:#6effb0}
/* pannelli aiuto: pubblico (istogramma) */
.gqt2-audience{background:#241236;border:2px solid #c9a6ff;border-radius:16px;padding:16px 18px;max-width:360px;width:100%;
  box-shadow:0 0 30px rgba(201,166,255,.4)}
.gqt2-aud-top{font-family:'Courier New',monospace;font-weight:900;color:#c9a6ff;text-align:center;
  font-size:18px;margin-bottom:14px;letter-spacing:1px}
.gqt2-aud-body{display:flex;align-items:flex-end;justify-content:space-around;height:170px;gap:10px}
.gqt2-aud-col{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;flex:1;height:100%}
.gqt2-aud-pct{color:#efe9ff;font-weight:800;font-size:13px;margin-bottom:3px}
.gqt2-aud-bar{width:100%;max-width:46px;background:linear-gradient(#dcc4ff,#a06fff);border-radius:6px 6px 0 0;
  transition:height .7s cubic-bezier(.2,.8,.3,1);min-height:3px}
.gqt2-aud-let{margin-top:6px;font-family:'Courier New',monospace;font-weight:900;color:#9a8fc4}
.gqt2-aud-let.top{color:#ffd94d}
/* hall of fame */
.gqt2-hof{margin-top:16px;background:#120e24;border:2px solid #4a3d75;border-radius:12px;padding:12px 10px}
.gqt2-hof-title{font-family:'Courier New',monospace;text-align:center;color:#ffd94d;font-weight:900;
  letter-spacing:3px;margin-bottom:8px;text-shadow:0 0 10px rgba(255,217,77,.5)}
.gqt2-hof-empty{text-align:center;color:#9a8fc4;font-size:14px;margin:6px 0}
.gqt2-hof-rows{display:flex;flex-direction:column;gap:2px;max-height:340px;overflow-y:auto}
.gqt2-hof-row{display:flex;gap:8px;align-items:baseline;font-family:'Courier New',monospace;
  font-weight:800;font-size:15px;color:#c9c0f0;padding:3px 8px;border-radius:6px}
.gqt2-hof-row.oro{color:#ffd94d}.gqt2-hof-row.argento{color:#dfe6ef}.gqt2-hof-row.bronzo{color:#e8a86e}
.gqt2-hof-pos{min-width:32px;text-align:right}
.gqt2-hof-nome{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-transform:uppercase}
.gqt2-hof-piano{color:#c9a6ff}
.gqt2-io{background:#2a2150;outline:1px solid #ffd94d;animation:gqt2-blink 1.2s ease 3}
@keyframes gqt2-blink{0%,100%{outline-color:#ffd94d}50%{outline-color:transparent}}
.gqt2-retry{margin-top:12px;padding:10px;background:#120e24;border:1px dashed #5a4d8c;border-radius:10px}
@media (prefers-reduced-motion:reduce){
  .gqt2-cheer-neon,.gqt2-io{animation:none}
  .gqt2-cheer-anim{animation:gqt2-fade .3s ease}
}

/* ============================================================
   v2.9 — IL CASTELLO (gara a tempo, pietra e oro)
   ============================================================ */
.gq-card.gqc{background:#20242e;color:#e8eaf0;border-color:#3d4454}
.gqc-title{font-family:'Courier New',monospace;font-weight:900;font-size:24px;text-align:center;
  letter-spacing:2px;color:#ffd94d;text-shadow:0 0 14px rgba(255,217,77,.5);margin:6px 0 2px}
.gqc-sub{text-align:center;color:#b9c0d0;margin:4px 0;font-weight:700}
.gqc-rules{text-align:center;color:#8b93a7;font-size:14px;margin:6px 12px 12px;line-height:1.5}
.gqc-form{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:10px 0 4px}
.gqc-nome{max-width:260px;text-align:center;font-family:'Courier New',monospace;font-weight:800;
  background:#171a22;color:#ffd94d;border:2px solid #4d5568;border-radius:10px}
.gqc-nome::placeholder{color:#6b7488;font-weight:600}
.gqc-btn{background:#ffd94d;color:#20242e;font-weight:900;letter-spacing:1px;border:none}
.gqc-btn:hover{background:#ffe680}
.gqc-hint{text-align:center;color:#8b93a7;font-size:13px;margin:2px 0 8px}
.gqc-msg{text-align:center;color:#ffb3b3;min-height:20px;font-size:14px;margin:4px 0}
/* barra: cronometro, corrette, errori */
.gqc-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;
  font-family:'Courier New',monospace;font-weight:900;font-size:17px;margin:2px 2px 10px;
  background:#171a22;border:2px solid #3d4454;border-radius:10px;padding:6px 10px}
.gqc-timer{color:#ffd94d}
.gqc-punti{color:#6effb0}
.gqc-err{color:#ff8f8f}
.gqc .gq-qtext{color:#fff;text-align:center;font-size:19px;margin:6px 0 12px}
.gqc-opts .gq-opt{background:#2a2f3c;color:#e8eaf0;border-color:#4d5568}
.gqc-opts .gq-opt:hover{background:#343b4c}
.gqc-verdetto{text-align:center;font-family:'Courier New',monospace;font-weight:900;font-size:17px;
  margin-top:10px;animation:gqc-pop .25s ease}
.gqc-verdetto.ok{color:#6effb0}
.gqc-verdetto.ko{color:#ff8f8f}
.gqc-verdetto.salta{color:#b9c0d0}
@keyframes gqc-pop{from{transform:scale(.7);opacity:0}to{transform:scale(1);opacity:1}}
.gqc-salta{display:block;margin:12px auto 2px;background:none;border:1px dashed #5b6479;
  color:#8b93a7;border-radius:8px;padding:7px 18px;cursor:pointer;font-size:13px;font-weight:700}
.gqc-salta:hover{color:#ffd94d;border-color:#ffd94d}
/* schermata finale */
.gqc-final{display:flex;justify-content:center;gap:18px;margin:12px 0}
.gqc-final>div{text-align:center;background:#171a22;border:2px solid #3d4454;border-radius:12px;
  padding:10px 16px;min-width:78px}
.gqc-final b{display:block;font-family:'Courier New',monospace;font-size:24px;color:#ffd94d}
.gqc-final span{font-size:12px;color:#8b93a7;text-transform:uppercase;letter-spacing:1px}
/* albo */
.gqc-hof{margin-top:16px;background:#171a22;border:2px solid #4d5568;border-radius:12px;padding:12px 10px}
.gqc-hof-title{font-family:'Courier New',monospace;text-align:center;color:#ffd94d;font-weight:900;
  letter-spacing:3px;margin-bottom:8px;text-shadow:0 0 10px rgba(255,217,77,.4)}
.gqc-hof-empty{text-align:center;color:#8b93a7;font-size:14px;margin:6px 0}
.gqc-hof-rows{display:flex;flex-direction:column;gap:2px;max-height:340px;overflow-y:auto}
.gqc-hof-row{display:flex;gap:8px;align-items:baseline;font-family:'Courier New',monospace;
  font-weight:800;font-size:14px;color:#c6ccdb;padding:3px 8px;border-radius:6px}
.gqc-hof-row.oro{color:#ffd94d}.gqc-hof-row.argento{color:#dfe6ef}.gqc-hof-row.bronzo{color:#e8a86e}
.gqc-hof-pos{min-width:30px;text-align:right}
.gqc-hof-nome{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-transform:uppercase}
.gqc-hof-dati{font-size:12px;color:#8b93a7;white-space:nowrap}
.gqc-hof-row.oro .gqc-hof-dati{color:#c9a84a}
.gqc-io{background:#2a2f3c;outline:1px solid #ffd94d}
.gqc-retry{margin-top:12px;padding:10px;background:#171a22;border:1px dashed #5b6479;border-radius:10px}
@media (prefers-reduced-motion:reduce){.gqc-verdetto{animation:none}}

/* ============================================================
   v3.0 — IL MURO DEI RISULTATI (solo Name Generator)
   Niente punteggi, niente classifica: nome scritto + risultato.
   ============================================================ */
.gq-muro{margin:16px 0 4px;background:var(--carta2);border:2px dashed var(--grafite);
  border-radius:14px;padding:12px 10px}
.gq-muro-title{text-align:center;font-weight:900;letter-spacing:2px;color:var(--matita);
  margin-bottom:8px;font-size:15px}
.gq-muro-azione{text-align:center;margin-bottom:10px}
.gq-muro-btn{font-size:14px;padding:8px 16px}
.gq-muro-btn:disabled{opacity:.5;cursor:default}
.gq-muro-msg{margin:6px 0 0;font-size:13px;color:var(--grafite);min-height:16px}
.gq-muro-empty{text-align:center;color:var(--grafite);font-size:14px;margin:8px 0}
.gq-muro-rows{display:flex;flex-direction:column;gap:4px;max-height:320px;overflow-y:auto;
  padding:2px}
.gq-muro-row{display:flex;gap:8px;align-items:baseline;justify-content:space-between;
  background:var(--foglio);border:1.5px solid var(--grafite);border-radius:8px;
  padding:6px 10px;font-size:14px;box-shadow:2px 2px 0 rgba(77,64,48,.10)}
.gq-muro-nome{font-weight:800;color:var(--matita);overflow:hidden;text-overflow:ellipsis;
  white-space:nowrap;max-width:45%}
.gq-muro-ris{color:var(--grafite);text-align:right;overflow:hidden;text-overflow:ellipsis;
  white-space:nowrap}
.gq-muro-io{background:var(--verde-w);border-color:var(--verde);outline:2px solid var(--verde)}
/* v3.1 — biglietto inviato, in attesa di approvazione */
.gq-muro-inviato{color:var(--verde);font-weight:800}

/* ============================================================
   v3.2 — IN THE DARK (gara a tempo al buio, fascio di luce)
   ============================================================ */
.gq-card.gqd{background:#0d0f14;color:#e8eaf0;border-color:#2b3140}
.gqd-title{font-family:'Courier New',monospace;font-weight:900;font-size:23px;text-align:center;
  letter-spacing:2px;color:#ffd94d;text-shadow:0 0 18px rgba(255,217,77,.55);margin:6px 0 2px}
.gqd-sub{text-align:center;color:#b9c0d0;margin:4px 0;font-weight:700}
.gqd-rules{text-align:center;color:#8b93a7;font-size:14px;margin:6px 12px 12px;line-height:1.5}
.gqd-form{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:10px 0 4px}
.gqd-nome{max-width:260px;text-align:center;font-family:'Courier New',monospace;font-weight:800;
  background:#161a22;color:#ffd94d;border:2px solid #2b3140;border-radius:10px}
.gqd-nome::placeholder{color:#6b7488;font-weight:600}
.gqd-btn{background:#ffd94d;color:#0d0f14;font-weight:900;letter-spacing:1px;border:none}
.gqd-btn:hover{background:#ffe680}
.gqd-hint{text-align:center;color:#8b93a7;font-size:13px;margin:2px 0 8px}
.gqd-msg{text-align:center;color:#ffd94d;min-height:20px;font-size:14px;margin:4px 0;font-weight:700}
.gqd-attesa{text-align:center;color:#6effb0;font-weight:800;font-size:14px;margin:8px 12px}
/* barra */
.gqd-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;
  font-family:'Courier New',monospace;font-weight:900;font-size:17px;margin:2px 2px 10px;
  background:#161a22;border:2px solid #2b3140;border-radius:10px;padding:6px 10px}
.gqd-timer{color:#ffd94d} .gqd-punti{color:#6effb0} .gqd-err{color:#ff8f8f}
/* lo schermo 9:16 */
.gqd-schermo{position:relative;width:100%;max-width:330px;margin:0 auto;aspect-ratio:9/16;
  background:#000;border:2px solid #2b3140;border-radius:12px;overflow:hidden}
.gqd-schermo canvas{width:100%;height:100%;display:block}
.gqd-verdetto{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  font-size:70px;font-weight:900;opacity:0;pointer-events:none;text-shadow:0 0 26px rgba(0,0,0,.95)}
.gqd-verdetto.ok{color:#6effb0} .gqd-verdetto.ko{color:#ff8f8f} .gqd-verdetto.salta{color:#b9c0d0}
.gqd-verdetto.on{animation:gqd-flash .7s ease}
@keyframes gqd-flash{0%{opacity:0;transform:scale(.5)}30%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(1.15)}}
/* risposte */
.gqd-opts{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
.gqd-opt{padding:13px 8px;border-radius:10px;border:2px solid #2b3140;background:#161a22;
  color:#e8eaf0;font-size:15px;font-weight:700;cursor:pointer;transition:background .15s}
.gqd-opt:hover{background:#212836;border-color:#4d5568}
.gqd-opt.giusto{background:#1c4634;border-color:#6effb0;color:#6effb0}
.gqd-opt.sbagliato{background:#4a1f1f;border-color:#ff8f8f;color:#ff8f8f}
.gqd-salta{display:block;margin:12px auto 2px;background:none;border:1px dashed #4d5568;
  color:#8b93a7;border-radius:8px;padding:7px 18px;cursor:pointer;font-size:13px;font-weight:700}
.gqd-salta:hover{color:#ffd94d;border-color:#ffd94d}
/* finale */
.gqd-final{display:flex;justify-content:center;gap:14px;margin:12px 0}
.gqd-final>div{text-align:center;background:#161a22;border:2px solid #2b3140;border-radius:12px;
  padding:10px 14px;min-width:76px}
.gqd-final b{display:block;font-family:'Courier New',monospace;font-size:22px;color:#ffd94d}
.gqd-final span{font-size:12px;color:#8b93a7;text-transform:uppercase;letter-spacing:1px}
/* classifica */
.gqd-hof{margin-top:16px;background:#161a22;border:2px solid #2b3140;border-radius:12px;padding:12px 10px}
.gqd-hof-title{font-family:'Courier New',monospace;text-align:center;color:#ffd94d;font-weight:900;
  letter-spacing:2px;margin-bottom:8px;text-shadow:0 0 10px rgba(255,217,77,.4);font-size:14px}
.gqd-hof-empty{text-align:center;color:#8b93a7;font-size:14px;margin:6px 0}
.gqd-hof-rows{display:flex;flex-direction:column;gap:2px;max-height:340px;overflow-y:auto}
.gqd-hof-row{display:flex;gap:8px;align-items:baseline;font-family:'Courier New',monospace;
  font-weight:800;font-size:14px;color:#c6ccdb;padding:3px 8px;border-radius:6px}
.gqd-hof-row.oro{color:#ffd94d}.gqd-hof-row.argento{color:#dfe6ef}.gqd-hof-row.bronzo{color:#e8a86e}
.gqd-hof-pos{min-width:30px;text-align:right}
.gqd-hof-nome{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-transform:uppercase}
.gqd-hof-dati{font-size:12px;color:#8b93a7;white-space:nowrap}
.gqd-hof-row.oro .gqd-hof-dati{color:#c9a84a}
.gqd-io{background:#212836;outline:1px solid #ffd94d}
.gqd-retry{margin-top:12px;padding:10px;background:#161a22;border:1px dashed #4d5568;border-radius:10px}
@media (prefers-reduced-motion:reduce){.gqd-verdetto{animation:none}}

/* ============ TAROCCHI ============ */
.gq-tar{position:relative;max-width:480px;margin:0 auto;min-height:560px;
  background:#FBF3DF;border:2.5px solid #4D4030;border-radius:18px;overflow:hidden;
  font-family:'Nunito','Segoe UI',system-ui,sans-serif;color:#4D4030}
.gq-tar-prog{position:absolute;top:0;left:0;right:0;display:flex;gap:4px;padding:14px 16px 0;z-index:20}
.gq-tar-prog i{flex:1;height:5px;border-radius:3px;background:#F3E7C9}
.gq-tar-prog i.on{background:#8E7CC3}
.gq-tar-stage{position:relative;min-height:560px}
.gq-tar-schermo{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;
  padding:60px 22px 26px;opacity:0;transform:translateX(24px);transition:opacity .26s,transform .26s}
.gq-tar-schermo.attiva{opacity:1;transform:translateX(0)}
.gq-tar-schermo.esce{opacity:0;transform:translateX(-24px)}
.gq-tar-emoji{font-size:36px;text-align:center;margin-bottom:6px}
.gq-tar-dom{font-family:'Baloo 2','Nunito',sans-serif;font-weight:800;font-size:22px;
  text-align:center;line-height:1.2;margin:0 0 22px}
.gq-tar-opz{display:flex;flex-direction:column;gap:9px}
.gq-tar-opz.griglia{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}
.gq-tar-btn{padding:14px;font-size:15px;font-weight:800;font-family:inherit;border:2.5px solid #F3E7C9;
  border-radius:13px;background:#fff;color:#4D4030;cursor:pointer;text-align:left;
  display:flex;align-items:center;gap:9px;transition:transform .08s,border-color .15s,background .15s}
.gq-tar-opz.griglia .gq-tar-btn{justify-content:center;text-align:center;font-size:13px;padding:11px 3px}
.gq-tar-btn:active{transform:scale(.96)}
.gq-tar-btn.scelto{background:#EBE5F5;border-color:#8E7CC3}
.gq-tar-btn .em{font-size:20px}
.gq-tar-testo{display:flex;flex-direction:column;gap:13px}
.gq-tar-testo input{width:100%;padding:15px;font-size:18px;font-family:inherit;text-align:center;
  border:2.5px solid #F3E7C9;border-radius:13px;background:#fff;color:#4D4030}
.gq-tar-testo input:focus{outline:none;border-color:#8E7CC3}
.gq-tar-continua{width:100%;padding:14px;font-size:16px;font-weight:800;font-family:'Baloo 2','Nunito',sans-serif;
  background:#8E7CC3;color:#fff;border:none;border-radius:13px;box-shadow:0 4px 0 #6f5da8;cursor:pointer}
.gq-tar-continua:active{transform:translateY(3px);box-shadow:none}
.gq-tar-continua:disabled{opacity:.4}
.gq-tar-mescola{align-items:center;justify-content:center}
.gq-tar-mazzo{position:relative;width:150px;height:206px;margin:0 auto 20px}
.gq-tar-mazzo i{position:absolute;top:0;width:128px;height:196px;border-radius:14px;
  background:repeating-linear-gradient(45deg,#8E7CC3 0 8px,#7a68b0 8px 16px);
  border:3px solid #4D4030;box-shadow:2px 2px 0 rgba(77,64,48,.2)}
.gq-tar-mazzo i::after{content:"\2726";position:absolute;inset:0;display:flex;align-items:center;
  justify-content:center;font-size:36px;color:#F1C75B}
.gq-tar-mazzo .d1{left:0;animation:gqtA .9s ease-in-out infinite}
.gq-tar-mazzo .d2{left:8px;animation:gqtB .9s ease-in-out infinite}
.gq-tar-mazzo .d3{left:16px;animation:gqtC .9s ease-in-out infinite}
@keyframes gqtA{0%,100%{transform:rotate(-8deg) translateX(-14px)}50%{transform:rotate(6deg) translateX(10px)}}
@keyframes gqtB{0%,100%{transform:rotate(5deg) translateX(8px)}50%{transform:rotate(-7deg) translateX(-12px)}}
@keyframes gqtC{0%,100%{transform:rotate(-2deg)}50%{transform:rotate(3deg) translateY(-6px)}}
.gq-tar-mtxt{text-align:center;font-size:16px;font-weight:800;color:#7A6A54}
.gq-tar-esito{position:relative;inset:auto;justify-content:flex-start;padding-top:50px;overflow:visible}
/* in fase di esito il gioco cresce in altezza: immagine e testo in colonna,
   si scrolla la pagina normalmente invece di un riquadro interno che taglia */
.gq-tar.esito-attivo{min-height:0}
.gq-tar.esito-attivo .gq-tar-stage{min-height:0}
.gq-tar-carta{width:100%;max-width:230px;margin:0 auto;border-radius:18px;overflow:hidden;
  border:3px solid #4D4030;box-shadow:4px 5px 0 rgba(77,64,48,.16);background:#fff;
  animation:gqtEntra .5s cubic-bezier(.2,.9,.3,1.4)}
@keyframes gqtEntra{0%{transform:scale(.85);opacity:0}100%{transform:scale(1);opacity:1}}
.gq-tar-carta img{width:100%;height:auto !important;max-width:none;aspect-ratio:auto;display:block;object-fit:contain}
.gq-tar-fascia{padding:9px 12px 12px;text-align:center;background:#FBF0D0}
.gq-tar-num{font-size:10px;font-weight:800;letter-spacing:2px;color:#8a6d1f}
.gq-tar-nome{font-family:'Baloo 2','Nunito',sans-serif;font-weight:800;font-size:18px}
.gq-tar-lettura{margin:15px auto 0;max-width:340px;background:#fff;border:2px solid #F3E7C9;
  border-radius:14px;padding:15px 17px;font-size:15px;line-height:1.6}
.gq-tar-rifai{display:block;margin:16px auto 24px;background:none;border:2px dashed #7A6A54;
  color:#7A6A54;padding:10px 22px;border-radius:11px;font-weight:800;font-family:inherit;font-size:14px;cursor:pointer}

/* ============ TESTO NEL BUIO (palco testo + velo, riusa gqd-* per il resto) ============ */
.gqtx-palco{position:relative;background:#0d0f14;border:2px solid #2b3140;border-radius:12px;
  overflow:hidden;min-height:300px;margin:10px 0}
.gqtx-testo{position:relative;z-index:1;padding:30px 24px;
  font-family:'Caveat','Baloo 2',cursive;font-size:28px;line-height:1.55;
  color:#e8eaf0;text-align:left;user-select:none;-webkit-user-select:none}
.gqtx-velo{position:absolute;inset:0;z-index:2;pointer-events:none;
  background:radial-gradient(circle var(--raggio,70px) at var(--lx,50%) var(--ly,-40%),
    transparent 0%, transparent 55%, rgba(13,15,20,.75) 80%, #0d0f14 100%)}
.gqtx-alone{position:absolute;inset:0;z-index:3;pointer-events:none;mix-blend-mode:screen;
  background:radial-gradient(circle var(--raggio,70px) at var(--lx,50%) var(--ly,-40%),
    rgba(255,217,77,.18) 0%, transparent 65%)}
.gqtx-palco .gqd-verdetto{z-index:5}

/* ============ FORZA 4 ============ */
.gq4{--p1:#E63946;--p1d:#a8202c;--p2:#F1C75B;--p2d:#c19a2e;
  --blu:#3B4E9B;--blu-s:#2A3A78;--blu-l:#5567B8;
  text-align:center;font-family:'Nunito','Segoe UI',system-ui,sans-serif}
.gq4-title{font-family:'Baloo 2','Nunito',sans-serif;font-weight:800;font-size:26px;margin:6px 0 2px}
.gq4-sub{color:#7A6A54;font-size:15px;margin:0 0 16px}
.gq4-rules{font-size:14px;line-height:1.5;color:#7A6A54;max-width:420px;margin:0 auto 16px}
.gq4-hint{font-size:12px;color:#7A6A54;margin:8px 0 0}
.gq4-msg{font-size:13px;color:#E63946;margin:8px 0 0;min-height:18px}
.gq4-nota{font-size:13px;color:#7A6A54;margin:10px auto;max-width:380px}
.gq4-attesa{font-size:13px;color:#2f7d4f;font-weight:800;margin:10px 0}

/* form nome */
.gq4-form{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:6px}
.gq4-nome{padding:12px 14px;font-size:16px;font-family:inherit;border:2.5px solid #F3E7C9;
  border-radius:12px;background:#fff;color:#4D4030;max-width:220px;text-align:center}
.gq4-nome:focus{outline:none;border-color:var(--blu)}
.gq4-btn{background:var(--blu);color:#fff;font-weight:800;border:none;border-radius:12px;
  padding:13px 24px;font-size:16px;font-family:'Baloo 2','Nunito',sans-serif;cursor:pointer;
  box-shadow:0 4px 0 var(--blu-s)}
.gq4-btn:active{transform:translateY(3px);box-shadow:none}
.gq4-btn-mini{background:none;border:2px dashed #7A6A54;color:#7A6A54;padding:9px 18px;
  border-radius:10px;font-weight:800;font-family:inherit;font-size:13px;cursor:pointer;margin:6px 4px 0}
.gq4-btn-mini:hover{border-color:var(--blu);color:var(--blu)}

/* schermata rotazione */
.gq4-ruota{font-size:64px;animation:gq4gira 2s ease-in-out infinite;margin:10px 0}
@keyframes gq4gira{0%,100%{transform:rotate(0)}50%{transform:rotate(90deg)}}

/* scelte modalita e livello */
.gq4-scelte{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin:10px 0}
.gq4-scelta{flex:1 1 150px;max-width:220px;padding:18px 14px;font-size:34px;font-family:inherit;
  background:#fff;border:3px solid #F3E7C9;border-radius:16px;cursor:pointer;color:#4D4030;
  display:flex;flex-direction:column;align-items:center;gap:8px;transition:transform .1s,border-color .15s}
.gq4-scelta span{font-size:16px;font-weight:800;line-height:1.3}
.gq4-scelta small{font-size:12px;font-weight:400;color:#7A6A54}
.gq4-scelta:hover{border-color:var(--blu);transform:translateY(-2px)}
.gq4-scelta:active{transform:scale(.97)}
.gq4-scelta.hard{border-color:#E63946}
.gq4-scelta.hard:hover{border-color:#a8202c}

/* barra di stato */
.gq4-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;
  background:#FBF3DF;border:2px solid #F3E7C9;border-radius:12px;padding:8px 12px;margin-bottom:10px;
  font-size:14px;font-weight:800;color:#4D4030}
.gq4-bar-turno{display:flex;align-items:center;gap:6px}
.gq4-pallino{width:16px;height:16px;border-radius:50%;display:inline-block;border:2px solid #4D4030}
.gq4-pallino.p1{background:radial-gradient(circle at 35% 30%,#ff6b76,var(--p1))}
.gq4-pallino.p2{background:radial-gradient(circle at 35% 30%,#ffe08a,var(--p2))}

/* il tabellone */
.gq4-tabellone{display:grid;gap:2.2%;
  grid-template-columns:repeat(var(--cols,7),1fr);
  aspect-ratio:calc(var(--cols,7) / var(--rows,6));
  width:100%;max-width:min(96vw, calc(72vh * var(--cols,7) / var(--rows,6)));
  margin:0 auto;padding:2.2%;box-sizing:border-box;
  background:linear-gradient(160deg,var(--blu-l),var(--blu) 45%,var(--blu-s));
  border:3px solid #222c5e;border-radius:16px;
  box-shadow:0 6px 0 #1b2450, inset 0 2px 8px rgba(255,255,255,.25)}
.gq4-cella{position:relative;aspect-ratio:1;border-radius:50%;cursor:pointer;
  background:#FBF3DF;
  box-shadow:inset 0 3px 6px rgba(0,0,0,.35), inset 0 -2px 3px rgba(255,255,255,.5)}
.gq4-cella:hover{filter:brightness(1.04)}
.gq4-gettone{position:absolute;inset:0;border-radius:50%;border:2px solid rgba(0,0,0,.28);
  box-shadow:inset 0 -3px 6px rgba(0,0,0,.3), inset 0 3px 5px rgba(255,255,255,.45)}
.gq4-gettone.p1{background:radial-gradient(circle at 34% 28%,#ff7b85,var(--p1) 55%,var(--p1d))}
.gq4-gettone.p2{background:radial-gradient(circle at 34% 28%,#ffe89b,var(--p2) 55%,var(--p2d))}
.gq4-gettone.cade{animation:gq4cade .42s cubic-bezier(.55,.06,.68,1.35)}
@keyframes gq4cade{from{transform:translateY(var(--da,-300%))}to{transform:translateY(0)}}
.gq4-gettone.vince{animation:gq4lampeggia .8s ease-in-out infinite;z-index:2}
@keyframes gq4lampeggia{0%,100%{transform:scale(1);filter:brightness(1)}
  50%{transform:scale(1.09);filter:brightness(1.35)}}

.gq4-azioni{margin-top:12px}

/* esito */
.gq4-esito{margin-top:14px;padding-top:12px;border-top:2px dashed #F3E7C9}
.gq4-esito-titolo{font-family:'Baloo 2','Nunito',sans-serif;font-weight:800;font-size:24px;margin-bottom:4px}
.gq4-esito-sub{color:#7A6A54;font-size:15px;margin:0 0 12px}

/* classifica */
.gq4-hof{margin-top:16px;background:#FBF3DF;border:2px solid #F3E7C9;border-radius:14px;padding:12px 10px}
.gq4-hof-title{font-family:'Baloo 2','Nunito',sans-serif;font-weight:800;font-size:16px;margin-bottom:2px}
.gq4-hof-nota{font-size:11.5px;color:#7A6A54;margin:0 0 8px}
.gq4-hof-empty{font-size:13px;color:#7A6A54;margin:6px 0}
.gq4-hof-rows{max-height:260px;overflow-y:auto;text-align:left}
.gq4-hof-row{display:flex;align-items:center;gap:8px;padding:7px 9px;border-radius:9px;font-size:14px}
.gq4-hof-row:nth-child(odd){background:rgba(255,255,255,.6)}
.gq4-hof-row.oro{background:#FBF0D0;font-weight:800}
.gq4-hof-row.argento{background:#eceff3;font-weight:800}
.gq4-hof-row.bronzo{background:#f6e6d8;font-weight:800}
.gq4-hof-row.gq4-io{outline:2px solid var(--blu)}
.gq4-pos{min-width:26px;color:#7A6A54;font-weight:800}
.gq4-nome{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gq4-dati{font-size:12.5px;color:#7A6A54;white-space:nowrap}

/* ============ RUOTA E COLLEGA (contorno CMS; il gioco ha il suo CSS) ============ */
.gqrc{max-width:640px;margin:0 auto}
.gqrc-title{font-family:'Baloo 2','Nunito',sans-serif;font-weight:800;font-size:23px;
  text-align:center;letter-spacing:1px;margin-bottom:4px}
.gqrc-sub{text-align:center;color:#7A6A54;font-size:15px;margin:0 0 14px}
.gqrc-regole{background:#FFFDF6;border:2px solid #F3E7C9;border-radius:14px;
  padding:14px 16px;margin-bottom:16px;font-size:14.5px;line-height:1.5}
.gqrc-regole p{margin:0 0 11px}
.gqrc-regole p:last-child{margin-bottom:0}
.gqrc-regole b{color:#4D4030}
.gqrc-form{display:flex;gap:9px;flex-wrap:wrap;justify-content:center}
.gqrc-nome{flex:1;min-width:150px;padding:13px;font-size:16px;font-family:inherit;
  border:2.5px solid #F3E7C9;border-radius:12px;text-align:center}
.gqrc-nome:focus{outline:none;border-color:#8E7CC3}
.gqrc-btn{padding:13px 22px;font-size:16px;font-weight:800;
  font-family:'Baloo 2','Nunito',sans-serif;background:#8E7CC3;color:#fff;border:none;
  border-radius:12px;box-shadow:0 4px 0 #6f5da8;cursor:pointer}
.gqrc-btn:active{transform:translateY(3px);box-shadow:none}
.gqrc-hint{text-align:center;font-size:12px;color:#7A6A54;margin:9px 0 0}
.gqrc-msg{text-align:center;font-size:13.5px;color:#D93B3D;margin:7px 0 0;min-height:18px}

/* barra di stato durante la partita */
.gqrc-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;
  background:#FFFDF6;border:2px solid #F3E7C9;border-radius:12px;padding:9px 13px;
  font-size:14px;font-weight:800;margin-bottom:10px;flex-wrap:wrap}
.gqrc-bar-nome{color:#4D4030;max-width:40%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gqrc-bar-liv b,.gqrc-bar-tempo b{color:#8E7CC3}

/* il palco dove vive il gioco esterno: altezza generosa, niente sbordi */
.gq-rc-palco{position:relative;width:100%;height:520px;overflow:hidden;
  border:2px solid #4D4030;border-radius:14px;background:#0e1630}
.gqrc-attesa,.gqrc-errore{color:#e8eaf0;text-align:center;padding-top:40%;font-size:15px}
.gqrc-errore{color:#ffb4b4}

.gqrc-azioni{display:flex;gap:9px;justify-content:center;flex-wrap:wrap;margin-top:12px}
.gqrc-chiudi{padding:12px 20px;font-size:15px;font-weight:800;
  font-family:'Baloo 2','Nunito',sans-serif;background:#79B865;color:#fff;border:none;
  border-radius:12px;box-shadow:0 4px 0 #5d9a4c;cursor:pointer}
.gqrc-chiudi:active{transform:translateY(3px);box-shadow:none}
.gqrc-chiudi.conferma{background:#EE8A6E;box-shadow:0 4px 0 #c96e55}
.gqrc-ricomincia{padding:12px 18px;font-size:14px;font-weight:800;font-family:inherit;
  background:none;border:2px dashed #7A6A54;color:#7A6A54;border-radius:12px;cursor:pointer}
.gqrc-ricomincia.conferma{border-color:#D93B3D;color:#D93B3D;border-style:solid}

/* schermata finale */
.gqrc-final{display:flex;gap:12px;justify-content:center;margin:14px 0}
.gqrc-final div{background:#FFFDF6;border:2px solid #F3E7C9;border-radius:12px;
  padding:11px 18px;text-align:center;min-width:110px}
.gqrc-final b{display:block;font-family:'Baloo 2','Nunito',sans-serif;font-size:23px;color:#8E7CC3}
.gqrc-final span{font-size:12px;color:#7A6A54}
.gqrc-attesa-hof{text-align:center;color:#79B865;font-weight:800;font-size:14px;margin:8px 0}
.gqrc-nota{text-align:center;color:#7A6A54;font-size:13.5px;margin:8px 0}

/* classifica */
.gqrc-hof{margin-top:16px;background:#FFFDF6;border:2px solid #F3E7C9;border-radius:12px;padding:12px}
.gqrc-hof-title{text-align:center;font-family:'Baloo 2','Nunito',sans-serif;font-weight:800;
  font-size:14px;letter-spacing:1px;margin-bottom:9px;color:#4D4030}
.gqrc-hof-empty{text-align:center;color:#7A6A54;font-size:13.5px;margin:0}
.gqrc-hof-rows{display:flex;flex-direction:column;gap:5px;max-height:280px;overflow-y:auto}
.gqrc-hof-row{display:flex;align-items:center;gap:9px;padding:7px 10px;border-radius:9px;
  background:#FBF3DF;font-size:13.5px}
.gqrc-hof-row.oro{background:#FBF0D0;border:1.5px solid #F1C75B}
.gqrc-hof-row.argento{background:#EFEFEF;border:1.5px solid #C9C9C9}
.gqrc-hof-row.bronzo{background:#F6E6D8;border:1.5px solid #D8A87C}
.gqrc-hof-pos{font-weight:800;color:#8E7CC3;min-width:26px}
.gqrc-hof-nome{flex:1;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gqrc-hof-dati{color:#7A6A54;font-size:12.5px;white-space:nowrap}

@media (max-width:520px){
  .gq-rc-palco{height:440px}
  .gqrc-regole{font-size:13.5px}
}

/* ============ INDOVINA CHI (voto coi numeri stile WhatsApp) ============ */
.gqic{max-width:640px;margin:0 auto}
.gqic-domanda{font-family:'Baloo 2','Nunito',sans-serif;font-weight:800;font-size:20px;
  text-align:center;color:var(--gq-ink);margin-bottom:4px}
.gqic-invito{text-align:center;color:#7A6A54;font-size:14px;margin:0 0 16px}
.gqic-numeri{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
/* ogni numero: emoji grande + conteggio, con barra di sfondo proporzionale */
.gqic-num{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;
  gap:2px;min-width:64px;padding:12px 10px 9px;background:#FFFDF6;border:2.5px solid #F3E7C9;
  border-radius:14px;cursor:pointer;transition:transform .08s,border-color .15s;font-family:inherit}
.gqic-num:hover{border-color:var(--gq-grape)}
.gqic-num:active{transform:translateY(2px)}
.gqic-num::before{content:'';position:absolute;left:0;bottom:0;width:var(--perc,0%);height:5px;
  background:var(--gq-grape);transition:width .35s ease;border-radius:0 3px 0 0}
.gqic-num.ha-voti{border-color:#E4D8B8}
.gqic-num.mia{border-color:var(--gq-grape);background:#F4EFFA;box-shadow:0 3px 0 var(--gq-grape)}
.gqic-emo{font-size:30px;line-height:1}
.gqic-conta{font-weight:800;font-size:15px;color:var(--gq-grape);min-height:18px}
.gqic-tot{text-align:center;color:#7A6A54;font-size:13.5px;margin:14px 0 4px;font-weight:700}
.gqic-zona-sol{text-align:center;margin-top:14px}
.gqic-btn-sol{display:inline-block;padding:13px 26px;font-size:16px;font-weight:800;
  font-family:'Baloo 2','Nunito',sans-serif;background:var(--gq-grape);color:#fff;border:none;
  border-radius:12px;box-shadow:0 4px 0 rgba(0,0,0,.18);cursor:pointer;text-decoration:none;
  animation:gqic-appari .35s ease}
.gqic-btn-sol:active{transform:translateY(3px);box-shadow:none}
@keyframes gqic-appari{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media (max-width:520px){
  .gqic-num{min-width:56px;padding:10px 8px 8px}
  .gqic-emo{font-size:26px}
}

/* ============ INDOVINA LA SLIDE ============ */
.gqis{max-width:680px;margin:0 auto}
.gqis-title{font-family:'Baloo 2','Nunito',sans-serif;font-weight:800;font-size:22px;
  text-align:center;color:var(--gq-ink);letter-spacing:.5px;margin-bottom:4px}
.gqis-sub{text-align:center;color:#7A6A54;font-size:14.5px;margin:0 0 14px}
.gqis-regole{background:#FFFDF6;border:2px solid #F3E7C9;border-radius:14px;padding:13px 16px;
  margin-bottom:16px;font-size:14px;line-height:1.5}
.gqis-regole p{margin:0 0 9px}.gqis-regole p:last-child{margin-bottom:0}
.gqis-regole b{color:var(--gq-ink)}
.gqis-form{display:flex;gap:9px;flex-wrap:wrap;justify-content:center}
.gqis-nome{flex:1;min-width:150px;padding:13px;font-size:16px;font-family:inherit;
  border:2.5px solid #F3E7C9;border-radius:12px;text-align:center}
.gqis-nome:focus{outline:none;border-color:var(--gq-grape)}
.gqis-btn{padding:13px 22px;font-size:16px;font-weight:800;font-family:'Baloo 2','Nunito',sans-serif;
  background:var(--gq-grape);color:#fff;border:none;border-radius:12px;box-shadow:0 4px 0 rgba(0,0,0,.18);cursor:pointer}
.gqis-btn:active{transform:translateY(3px);box-shadow:none}
.gqis-hint{text-align:center;font-size:12px;color:#7A6A54;margin:9px 0 0}
.gqis-msg{text-align:center;font-size:13.5px;color:var(--gq-red);margin:7px 0 0;min-height:18px}

/* barra di stato */
.gqis-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;
  background:#FFFDF6;border:2px solid #F3E7C9;border-radius:12px;padding:9px 13px;
  font-size:14px;font-weight:800;margin-bottom:10px;flex-wrap:wrap}
.gqis-bar-nome{color:var(--gq-ink);max-width:38%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gqis-bar-prog b,.gqis-bar-tempo b{color:var(--gq-grape)}

/* tastini numerati */
.gqis-numeri{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-bottom:10px}
.gqis-n{width:34px;height:34px;border-radius:9px;border:2px solid #E4D8B8;background:#FFFDF6;
  font-weight:800;font-family:inherit;font-size:14px;color:var(--gq-ink);cursor:pointer;transition:transform .06s}
.gqis-n.ora{border-color:var(--gq-grape);box-shadow:0 0 0 2px rgba(121,184,101,.3)}
.gqis-n.fatta-ok{background:var(--gq-grape);color:#fff;border-color:var(--gq-grape);opacity:.85}
.gqis-n.fatta-no{background:var(--gq-red);color:#fff;border-color:var(--gq-red);opacity:.85}
.gqis-n:disabled{cursor:default}

/* palco galleria wide */
.gqis-palco{display:flex;align-items:center;gap:8px;margin-bottom:12px}
.gqis-imgwrap{position:relative;flex:1;border-radius:14px;overflow:hidden;
  background:#ffffff;border:2px solid var(--gq-ink)}
/* formato dell'immagine (default wide, come prima). quadrato/verticale non tagliano i bordi */
.gqis-w{aspect-ratio:16/9}
.gqis-q{aspect-ratio:1/1;max-width:340px;margin-left:auto;margin-right:auto}
.gqis-v{aspect-ratio:3/4;max-width:300px;margin-left:auto;margin-right:auto}
.gqis-img{width:100%;height:100%;object-fit:cover;display:block}
.gqis-q .gqis-img,.gqis-v .gqis-img{object-fit:contain}
.gqis-velo{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  font-family:'Baloo 2','Nunito',sans-serif;font-weight:800;font-size:22px;color:#fff;
  text-align:center;padding:12px;opacity:0;transition:opacity .2s;pointer-events:none}
.gqis-velo.mostra{opacity:1}
.gqis-velo.ok{background:rgba(121,184,101,.86)}
.gqis-velo.ko{background:rgba(224,106,90,.86)}
.gqis-freccia{flex:0 0 auto;width:44px;height:44px;border-radius:50%;border:2px solid var(--gq-ink);
  background:#FFFDF6;font-size:26px;line-height:1;font-weight:800;color:var(--gq-ink);cursor:pointer;
  display:flex;align-items:center;justify-content:center}
.gqis-freccia:active{transform:scale(.92)}

/* tasti-nome */
.gqis-nomi{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.gqis-nome-btn{padding:10px 15px;font-size:14.5px;font-weight:700;font-family:inherit;
  background:#FFFDF6;border:2.5px solid #E4D8B8;border-radius:11px;color:var(--gq-ink);cursor:pointer;
  transition:transform .06s,background .15s,border-color .15s}
.gqis-nome-btn:active{transform:translateY(2px)}
.gqis-nome-btn.giusto{background:var(--gq-grape);color:#fff;border-color:var(--gq-grape)}
.gqis-nome-btn.sbagliato{background:var(--gq-red);color:#fff;border-color:var(--gq-red);animation:gqis-shake .3s}
.gqis-nome-btn.bloccato{background:#EAF4E4;border-color:var(--gq-grape);color:var(--gq-grape);
  cursor:default;opacity:.7}
@keyframes gqis-shake{0%,100%{transform:translateX(0)}25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}

/* schermata finale */
.gqis-final{display:flex;gap:12px;justify-content:center;margin:14px 0;flex-wrap:wrap}
.gqis-final div{background:#FFFDF6;border:2px solid #F3E7C9;border-radius:12px;padding:11px 18px;
  text-align:center;min-width:96px}
.gqis-final b{display:block;font-family:'Baloo 2','Nunito',sans-serif;font-size:24px;color:var(--gq-grape)}
.gqis-final span{font-size:12px;color:#7A6A54}
.gqis-attesa{text-align:center;color:var(--gq-grape);font-weight:800;font-size:14px;margin:8px 0}
.gqis-nota{text-align:center;color:#7A6A54;font-size:13.5px;margin:8px 0}

/* classifica */
.gqis-hof{margin-top:16px;background:#FFFDF6;border:2px solid #F3E7C9;border-radius:12px;padding:12px}
.gqis-hof-title{text-align:center;font-family:'Baloo 2','Nunito',sans-serif;font-weight:800;
  font-size:14px;letter-spacing:.5px;margin-bottom:9px;color:var(--gq-ink)}
.gqis-hof-empty{text-align:center;color:#7A6A54;font-size:13.5px;margin:0}
.gqis-hof-rows{display:flex;flex-direction:column;gap:5px;max-height:280px;overflow-y:auto}
.gqis-hof-row{display:flex;align-items:center;gap:9px;padding:7px 10px;border-radius:9px;background:#FBF3DF;font-size:13.5px}
.gqis-hof-row.oro{background:#FBF0D0;border:1.5px solid #F1C75B}
.gqis-hof-row.argento{background:#EFEFEF;border:1.5px solid #C9C9C9}
.gqis-hof-row.bronzo{background:#F6E6D8;border:1.5px solid #D8A87C}
.gqis-hof-row.mio{outline:2px solid var(--gq-grape)}
.gqis-hof-pos{font-weight:800;color:var(--gq-grape);min-width:26px}
.gqis-hof-nome{flex:1;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gqis-hof-dati{color:#7A6A54;font-size:12.5px;white-space:nowrap}
@media (max-width:520px){
  .gqis-freccia{width:38px;height:38px;font-size:22px}
  .gqis-n{width:30px;height:30px;font-size:13px}
}

/* ============ MOST WANTED (trova il ricercato travestito) ============ */
.gqmw{max-width:600px;margin:0 auto}
.gqmw-title{font-family:'Baloo 2','Nunito',sans-serif;font-weight:800;font-size:24px;text-align:center;
  color:#E06A5A;letter-spacing:1px;margin-bottom:4px}
.gqmw-sub{text-align:center;color:#7A6A54;font-size:14.5px;margin:0 0 16px;line-height:1.5}
/* foto originale */
.gqmw-orig{position:relative;width:180px;margin:0 auto 6px;border-radius:14px;overflow:hidden;
  border:3px solid #E06A5A;background:#241553}
.gqmw-orig-img{width:100%;height:100%;display:block;object-fit:contain}
.gqmw-orig-tag{position:absolute;bottom:0;left:0;right:0;background:#E06A5A;color:#fff;
  font-family:'Baloo 2','Nunito',sans-serif;font-weight:800;font-size:12px;text-align:center;
  padding:4px 0;letter-spacing:1px}
.gqmw-vs{text-align:center;font-weight:800;color:#4D4030;font-size:15px;margin:14px 0 10px}
/* slide travestimenti */
.gqmw-palco{display:flex;align-items:center;gap:8px;margin-bottom:10px}
.gqmw-slide{position:relative;flex:1;max-width:280px;margin:0 auto;
  border-radius:14px;overflow:hidden;background:#241553;border:2px solid #4D4030}
.gqmw-slide-img{width:100%;height:100%;object-fit:contain;display:block}
/* i tre formati: il riquadro prende la proporzione scelta, l'immagine si vede
   intera (object-fit:contain). Applicati sia all'originale sia alla slide. */
.gqmw-v{aspect-ratio:9/16}
.gqmw-q{aspect-ratio:1/1}
.gqmw-w{aspect-ratio:16/9}
/* per il formato wide l'originale puo essere piu largo, cosi si legge meglio */
.gqmw-orig.gqmw-w{width:240px}
.gqmw-orig.gqmw-q{width:200px}
.gqmw-numero{position:absolute;top:8px;left:8px;width:34px;height:34px;border-radius:50%;
  background:#F1C75B;color:#4D4030;font-family:'Baloo 2','Nunito',sans-serif;font-weight:800;
  font-size:18px;display:flex;align-items:center;justify-content:center;border:2px solid #4D4030}
.gqmw-velo{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  font-family:'Baloo 2','Nunito',sans-serif;font-weight:800;font-size:26px;color:#fff;opacity:0;
  transition:opacity .25s;pointer-events:none;text-align:center;padding:10px}
.gqmw-velo.mostra{opacity:1}
.gqmw-velo.ok{background:rgba(121,184,101,.88)}
.gqmw-velo.ko{background:rgba(224,106,90,.88)}
.gqmw-freccia{flex:0 0 auto;width:42px;height:42px;border-radius:50%;border:2px solid #4D4030;
  background:#FFFDF6;font-size:24px;font-weight:800;color:#4D4030;cursor:pointer;
  display:flex;align-items:center;justify-content:center}
.gqmw-freccia:active{transform:scale(.92)}
.gqmw-freccia:disabled{opacity:.4;cursor:default}
/* puntini navigazione */
.gqmw-punti{display:flex;gap:7px;justify-content:center;margin-bottom:14px}
.gqmw-punto{width:26px;height:26px;border-radius:50%;border:2px solid #E4D8B8;background:#FFFDF6;
  font-weight:800;font-size:12px;color:#7A6A54;cursor:pointer}
.gqmw-punto.on{border-color:#E06A5A;color:#E06A5A;background:#FBEBE7}
.gqmw-punto:disabled{cursor:default}
/* tasti di scelta */
.gqmw-scelte{display:flex;flex-wrap:wrap;gap:9px;justify-content:center}
.gqmw-scelta{padding:12px 20px;font-size:16px;font-weight:800;font-family:'Baloo 2','Nunito',sans-serif;
  background:#FFFDF6;border:2.5px solid #E4D8B8;border-radius:12px;color:#4D4030;cursor:pointer;
  transition:transform .06s,border-color .15s}
.gqmw-scelta:active{transform:translateY(2px)}
.gqmw-scelta:hover:not(:disabled){border-color:#E06A5A}
.gqmw-scelta:disabled{cursor:default}
.gqmw-scelta.giusto{background:#79B865;color:#fff;border-color:#79B865}
.gqmw-scelta.sbagliato{background:#E06A5A;color:#fff;border-color:#E06A5A}
/* esito */
.gqmw-esito{display:none;margin-top:16px}
.gqmw-esito.mostra{display:block;animation:gqmw-appari .35s ease}
.gqmw-verdetto{text-align:center;font-family:'Baloo 2','Nunito',sans-serif;font-weight:800;
  font-size:19px;padding:10px;border-radius:12px;margin-bottom:12px}
.gqmw-verdetto.ok{background:#EAF4E4;color:#5d9a4c}
.gqmw-verdetto.ko{background:#FBEBE7;color:#E06A5A}
.gqmw-spiega{background:#FFFDF6;border:2px solid #F3E7C9;border-radius:12px;padding:13px 16px;
  font-size:14.5px;line-height:1.55;color:#4D4030}
.gqmw-spiega b{color:#E06A5A}
@keyframes gqmw-appari{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media (max-width:520px){
  .gqmw-orig{width:140px}
  .gqmw-freccia{width:36px;height:36px;font-size:20px}
}

/* ============ SONDAGGIO: miniature opzionali per opzione ============ */
.gq-opt-img{display:flex;align-items:center;gap:12px;text-align:left}
.gq-opt-thumb{width:44px;height:44px;border-radius:9px;object-fit:cover;flex:0 0 auto;
  border:2px solid rgba(0,0,0,.08)}
.gq-opt-img span{flex:1}
/* miniatura accanto alla barra dei risultati: resta nel flex originale,
   come primo elemento prima della label */
.gq-bar.gq-pct-img .gq-pct-thumb{flex:0 0 auto;width:38px;height:38px;border-radius:8px;
  object-fit:cover;border:2px solid rgba(0,0,0,.08)}
.gq-bar.gq-pct-img .gq-bar-label{flex:0 0 30%}

/* ============ CASTELLO: tasti Stop/Riavvia (tieni premuto) + moderazione ============ */
.gqc-azioni{display:flex;gap:10px;justify-content:center;margin-top:12px}
.gqc-hold{position:relative;overflow:hidden;flex:1;max-width:180px;padding:12px 16px;
  border:2px solid #C9BCA0;border-radius:12px;background:#FFFDF6;cursor:pointer;
  font-family:'Baloo 2','Nunito',sans-serif;font-weight:800;font-size:14px;color:#7A6A54;
  user-select:none;-webkit-user-select:none;touch-action:none}
.gqc-hold-fill{position:absolute;left:0;top:0;bottom:0;width:0%;z-index:0}
.gqc-hold-txt{position:relative;z-index:1}
.gqc-stop .gqc-hold-fill{background:rgba(224,106,90,.28)}
.gqc-restart .gqc-hold-fill{background:rgba(142,124,195,.28)}
.gqc-stop.gqc-holding{border-color:#E06A5A;color:#E06A5A}
.gqc-restart.gqc-holding{border-color:#8E7CC3;color:#8E7CC3}
.gqc-hold:active{transform:translateY(1px)}
.gqc-moderazione{margin:14px auto 4px;max-width:420px;text-align:center;
  background:#FFF6E6;border:2px solid #F1C75B;border-radius:12px;padding:11px 16px;
  font-family:'Nunito',sans-serif;font-weight:800;font-size:14px;color:#8a6d1f}

/* =========================== OROSCOPO DEL GIORNO =========================== */
.gqoro-head{text-align:center;margin-bottom:6px}
.gqoro-badge{display:inline-block;background:#8E7CC3;color:#fff;font-family:'Baloo 2',sans-serif;
  font-weight:800;font-size:13px;padding:5px 14px;border-radius:999px;letter-spacing:.5px}
.gqoro-title{font-family:'Baloo 2',sans-serif;font-weight:800;font-size:25px;margin:12px 0 4px;color:#4D4030}
.gqoro-data-top{color:#8E7CC3;font-weight:800;font-size:14px;margin-bottom:2px}
.gqoro-sub{color:#7A6A54;font-size:15px;margin:0 0 6px}
.gqoro-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:18px}
.gqoro-segno{background:#FBF3DF;border:2px solid #F3E7C9;border-radius:15px;padding:14px 6px 11px;
  text-align:center;cursor:pointer;transition:transform .12s,border-color .12s,background .12s;
  display:flex;flex-direction:column;align-items:center;font-family:inherit}
.gqoro-segno:hover{transform:translateY(-3px);border-color:#8E7CC3;background:#fff}
.gqoro-glyph{font-size:30px;line-height:1;color:#8E7CC3}
.gqoro-nome{font-family:'Baloo 2',sans-serif;font-weight:700;font-size:14px;margin-top:7px;color:#4D4030}
.gqoro-date{font-size:11px;color:#7A6A54;margin-top:2px}
/* scheda risultato */
.gqoro-res-top{text-align:center;border-bottom:1px dashed #F3E7C9;padding-bottom:16px;margin-bottom:14px}
.gqoro-res-glyph{font-size:58px;line-height:1;color:#8E7CC3}
.gqoro-res-segno{font-family:'Baloo 2',sans-serif;font-weight:800;font-size:26px;margin:4px 0 2px;color:#4D4030}
.gqoro-res-data{display:inline-block;background:#F1C75B;color:#4D4030;font-weight:800;font-size:13px;
  padding:5px 14px;border-radius:999px;margin-top:6px;font-family:'Baloo 2',sans-serif}
.gqoro-stelle{text-align:center;font-size:20px;margin:2px 0 12px;letter-spacing:3px;color:#F1C75B}
.gqoro-testo{font-size:16.5px;line-height:1.65;color:#5b5040;text-align:center;padding:0 6px;margin:0 0 8px}
.gqoro-again{display:block;margin:14px auto 0;background:transparent;border:none;color:#8E7CC3;
  font-family:'Baloo 2',sans-serif;font-weight:800;font-size:15px;cursor:pointer;text-decoration:underline}

/* =========================== HAI MAI... =========================== */
.gqhm-domanda{font-family:'Baloo 2',sans-serif;font-weight:800;font-size:22px;line-height:1.3;
  color:#4D4030;text-align:center;margin:10px 0 22px;min-height:60px;
  display:flex;align-items:center;justify-content:center}
/* i due tasti SI/NO: sempre affiancati, grandi, su mobile e desktop */
.gqhm-duo{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.gqhm-btn{border:none;border-radius:16px;color:#fff;font-family:'Baloo 2',sans-serif;
  font-weight:800;font-size:30px;letter-spacing:1px;padding:34px 0;cursor:pointer;
  transition:transform .1s,filter .1s;box-shadow:0 4px 0 rgba(0,0,0,.12)}
.gqhm-btn:hover{filter:brightness(1.05)}
.gqhm-btn:active{transform:translateY(2px);box-shadow:0 2px 0 rgba(0,0,0,.12)}
.gqhm-si{background:#5BBE5B}
.gqhm-no{background:#E0574B}
/* riepilogo finale */
.gqhm-fine .gq-vemoji{text-align:center;font-size:44px}
.gqhm-riepilogo{margin:18px 0 6px;text-align:left}
.gqhm-riga{padding:12px 0;border-bottom:1px solid #F3E7C9}
.gqhm-riga:last-child{border-bottom:none}
.gqhm-riga-dom{font-weight:800;color:#4D4030;font-size:15px;margin-bottom:8px}
.gqhm-barre{display:flex;flex-direction:column;gap:6px}
.gqhm-barra{position:relative;background:#F3E7C9;border-radius:8px;overflow:hidden;height:26px}
.gqhm-fill{position:absolute;left:0;top:0;bottom:0;border-radius:8px;transition:width .5s ease}
.gqhm-fill-si{background:rgba(91,190,91,.5)}
.gqhm-fill-no{background:rgba(224,87,75,.45)}
.gqhm-barra-lab{position:absolute;left:10px;top:0;bottom:0;display:flex;align-items:center;
  font-weight:800;font-size:13px;color:#4D4030;z-index:1}
.gqhm-again{display:block;margin:16px auto 0;background:#8E7CC3;border:none;color:#fff;
  font-family:'Baloo 2',sans-serif;font-weight:800;font-size:15px;padding:12px 28px;
  border-radius:13px;cursor:pointer}

/* ====== SCRIVI LA RISPOSTA: immagine nella domanda + spiegazione ====== */
.gqta-img{margin:0 auto 14px;border-radius:14px;overflow:hidden;background:#241553;
  border:2px solid #F3E7C9;max-width:320px}
.gqta-img-el{width:100%;height:100%;object-fit:contain;display:block}
.gqta-v{aspect-ratio:9/16;max-width:240px}
.gqta-q{aspect-ratio:1/1;max-width:300px}
.gqta-w{aspect-ratio:16/9;max-width:380px}
.gqta-spiega{margin:12px 0 0;background:#FFF6E6;border:1px solid #F1C75B;border-radius:10px;
  padding:10px 14px;color:#5b5040;font-size:14.5px;line-height:1.55}

/* barra di progresso continua (giochi con tanti step, es. Hai mai 30 domande) */
.gq-dots { flex-wrap: wrap; }
.gq-prog { flex: 1; height: 10px; background: #e4defa; border: 1.5px solid var(--gq-ink);
  border-radius: 999px; overflow: hidden; margin-left: 10px; min-width: 0; }
.gq-prog-fill { height: 100%; background: var(--gq-lime); border-radius: 999px;
  transition: width .3s ease; }

/* v3.30 — Muro dei Risultati: frecce di paginazione (◂ pagina X di Y ▸) */
.gq-muro-pager{display:flex;align-items:center;justify-content:center;gap:14px;margin:10px 0 2px}
.gq-muro-freccia{font-size:18px;line-height:1;padding:6px 14px;cursor:pointer;
  background:var(--foglio);color:var(--matita);border:2px solid var(--grafite);
  border-radius:10px;box-shadow:2px 2px 0 rgba(77,64,48,.12);font-weight:900}
.gq-muro-freccia:hover:not(:disabled){transform:translateY(-1px)}
.gq-muro-freccia:disabled{opacity:.35;cursor:default;box-shadow:none}
.gq-muro-pag{font-size:13px;font-weight:800;color:var(--grafite);min-width:110px;text-align:center}

/* v3.38 — DESKTOP: i giochi salgono da 560px a 720px (mobile/tablet invariati).
   Sotto i 1024px resta tutto com'era. */
@media (min-width:1024px){
  .gq{max-width:720px}
}

/* v3.47 — Lui o Lei: schermata di scelta del percorso (bivio) */
.gqll-scelta{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin:18px 0 4px}
.gqll-btn{flex:1 1 130px;max-width:180px;display:flex;flex-direction:column;align-items:center;gap:8px;
  padding:20px 14px;border:2px solid var(--grafite,#b9a77f);border-radius:16px;background:var(--foglio,#FBF3DF);
  cursor:pointer;font-family:inherit;transition:transform .12s,box-shadow .12s;box-shadow:3px 3px 0 rgba(77,64,48,.14)}
.gqll-btn:hover{transform:translateY(-2px);box-shadow:4px 6px 0 rgba(77,64,48,.18)}
.gqll-emoji{font-size:46px;line-height:1}
.gqll-label{font-size:19px;font-weight:800;color:var(--matita,#4d4030)}
.gqll-lui{background:#E9F0FB;border-color:#8fb4e6}
.gqll-lei{background:#FBE9F1;border-color:#e69fc2}

/* ====== PERCORSO: avventura a bivi, storia a piu' finali ====== */
.gqpc-intro{background:linear-gradient(180deg,#f3f8f1 0%,#ffffff 60%)}
.gqpc-title{font-size:23px;font-weight:900;margin:14px 0 2px;line-height:1.2;color:var(--gq-ink)}
/* testo-storia: piu' leggibile della domanda-quiz (allineato a sinistra, meno bold) */
.gqpc .gqpc-text{font-size:18px;line-height:1.5;font-weight:600;text-align:left;margin:10px 0 16px}
.gqpc-opt{font-weight:700}
.gqpc-opt::before{content:"👉 ";opacity:.65}
/* schermata di scelta iniziale: bottoni sesso in stile "sticker" */
.gqpc-choice{box-shadow:4px 4px 0 var(--gq-ink);border:3px solid var(--gq-ink)}
.gqpc-choice:hover{transform:translateY(-2px)}

/* --- finale: card colorata in base all'esito --- */
.gqpc-fine{border-width:3px}
.gqpc-fine.gqpc-bene{box-shadow:6px 6px 0 #1c9c66;border-color:#1c9c66;background:linear-gradient(180deg,#eefbf4 0%,#fff 55%)}
.gqpc-fine.gqpc-male{box-shadow:6px 6px 0 #b23b3b;border-color:#b23b3b;background:linear-gradient(180deg,#fdeeee 0%,#fff 55%)}
.gqpc-fine.gqpc-neutro{box-shadow:6px 6px 0 #b98a12;border-color:#b98a12;background:linear-gradient(180deg,#fff8e8 0%,#fff 55%)}

.gqpc-badge{display:inline-block;margin:2px 0 10px;padding:6px 16px;border-radius:999px;
  font-weight:900;font-size:14px;letter-spacing:.5px;border:2.5px solid var(--gq-ink);
  box-shadow:3px 3px 0 var(--gq-ink)}
.gqpc-badge-bene{background:var(--gq-lime);color:#063}
.gqpc-badge-male{background:var(--gq-red);color:#fff}
.gqpc-badge-neutro{background:var(--gq-sun);color:#5b4600}
.gqpc-ftext{font-size:16px;line-height:1.55;text-align:left;margin:6px 2px 4px}

/* --- riepilogo del percorso fatto --- */
.gqpc-recap{margin:12px 0 4px;text-align:left;background:#fbfaff;border:2px solid #e4defa;
  border-radius:14px;padding:4px 12px}
.gqpc-recap-sum{cursor:pointer;font-weight:800;font-size:14px;padding:8px 2px;list-style:none;
  color:var(--gq-grape)}
.gqpc-recap-sum::-webkit-details-marker{display:none}
.gqpc-recap[open] .gqpc-recap-sum{margin-bottom:4px}
.gqpc-steps{margin:0 0 10px;padding:0 0 0 22px}
.gqpc-steps li{font-size:14px;line-height:1.45;margin:5px 0;color:#4a4470}

/* ================= LA GHIGLIOTTINA ================= */
.gqgh-intro { background: linear-gradient(160deg,#fff 0%,#fdeef0 100%); }
.gqgh-title { margin: 6px 0 2px; font-size: 22px; font-weight: 900; color: var(--gq-ink); }

.gqgh-consegna {
  text-align: center; font-weight: 800; color: var(--gq-ink);
  margin: 2px 0 14px; font-size: 15.5px;
}

/* le 5 parole-indizio */
.gqgh-indizi {
  display: flex; flex-wrap: wrap; gap: 10px; justify-content: center;
  margin: 4px 0 16px;
}
.gqgh-word {
  background: var(--gq-sun);
  border: 3px solid var(--gq-ink);
  box-shadow: 4px 4px 0 var(--gq-ink);
  border-radius: 12px;
  padding: 10px 14px;
  font-weight: 900; font-size: 16px; color: var(--gq-ink);
  text-transform: lowercase; letter-spacing: .3px;
}

/* pattern dell'aiuto (S • • • E) */
.gqgh-hint {
  display: flex; flex-direction: column; align-items: center; gap: 3px;
  margin: 2px 0 14px;
}
.gqgh-pat {
  font-weight: 900; font-size: 26px; letter-spacing: 4px; color: var(--gq-grape);
  background: #f3edff; border: 3px dashed var(--gq-grape);
  border-radius: 12px; padding: 8px 16px; text-transform: uppercase;
}
.gqgh-note { font-size: 12px; font-weight: 700; color: #8a7fb0; }

/* input della risposta */
.gqgh-inrow { margin: 4px 0 12px; }
.gqgh-input {
  width: 100%; box-sizing: border-box;
  border: 3px solid var(--gq-ink);
  box-shadow: 4px 4px 0 var(--gq-ink);
  border-radius: 12px;
  padding: 14px 16px;
  font-size: 18px; font-weight: 800; color: var(--gq-ink);
  text-align: center; background: #fff; outline: none;
}
.gqgh-input:focus { border-color: var(--gq-grape); box-shadow: 4px 4px 0 var(--gq-grape); }
.gqgh-input::placeholder { color: #b9b2d6; font-weight: 600; }

.gqgh-actions { display: flex; gap: 10px; align-items: stretch; }
.gqgh-aiuto {
  flex: 0 0 auto; background: var(--gq-sun); color: var(--gq-ink);
  border: 3px solid var(--gq-ink); box-shadow: 4px 4px 0 var(--gq-ink);
}
.gqgh-aiuto.gqgh-used { opacity: .45; }
.gqgh-ok { flex: 1 1 auto; background: var(--gq-lime); }

/* verdetto */
.gqgh-fine.gqgh-ok  { border-color: #1c9c66; box-shadow: 7px 7px 0 #1c9c66; }
.gqgh-fine.gqgh-no  { border-color: #b23b3b; box-shadow: 7px 7px 0 #b23b3b; }

.gqgh-sol {
  display: flex; flex-direction: column; align-items: center; gap: 2px; margin: 6px 0 12px;
}
.gqgh-sol-label { font-size: 12.5px; font-weight: 800; color: #8a7fb0; text-transform: uppercase; letter-spacing: .5px; }
.gqgh-sol-word {
  font-size: 30px; font-weight: 900; color: var(--gq-grape);
  letter-spacing: 1px;
}
.gqgh-links {
  list-style: none; padding: 0; margin: 4px 0 14px;
  display: flex; flex-direction: column; gap: 6px; text-align: left;
}
.gqgh-links li {
  background: #f7f4ff; border: 2px solid var(--gq-ink); border-radius: 10px;
  padding: 8px 12px; font-weight: 700; color: var(--gq-ink); font-size: 14.5px;
}
.gqgh-links li::before { content: "🔗 "; }
.gqgh-pen  { color: #b23b3b; font-weight: 800; font-size: 13px; }
.gqgh-full { color: #1c9c66; font-weight: 800; font-size: 13px; }
.gqgh-cambia { margin-top: 8px; background: #efeafd; color: var(--gq-ink); border: 2px solid var(--gq-ink); box-shadow: none; }

/* ---- Ghigliottina: montepremi, round, hall of fame ---- */
.gqgh-montebadge {
  display: inline-block; margin: 8px auto 2px; background: var(--gq-lime);
  border: 3px solid var(--gq-ink); box-shadow: 4px 4px 0 var(--gq-ink);
  border-radius: 12px; padding: 8px 14px; font-weight: 900; color: var(--gq-ink); font-size: 15px;
}
.gqgh-top { display: flex; justify-content: space-between; align-items: center; gap: 8px; margin-bottom: 8px; }
.gqgh-liv { font-weight: 900; color: var(--gq-ink); font-size: 14px; }
.gqgh-premio {
  font-weight: 900; color: #0f7a4d; background: #e6fbf1; border: 2px solid #1c9c66;
  border-radius: 10px; padding: 4px 10px; font-size: 15px;
}
.gqgh-prog5 { display: flex; gap: 6px; justify-content: center; margin: 4px 0 8px; }
.gqgh-prog5 span { width: 26px; height: 9px; border-radius: 6px; background: #e4defa; border: 2px solid var(--gq-ink); }
.gqgh-prog5 span.done { background: var(--gq-lime); }
.gqgh-round-n { text-align: center; font-weight: 800; color: #8a7fb0; font-size: 13px; margin: 0 0 8px; text-transform: uppercase; letter-spacing: .5px; }
.gqgh-frase { text-align: center; font-weight: 900; color: var(--gq-ink); font-size: 21px; margin: 6px 0 16px; }
.gqgh-blank {
  display: inline-block; min-width: 46px; text-align: center; color: var(--gq-grape);
  border-bottom: 4px solid var(--gq-grape); font-weight: 900;
}
.gqgh-due { display: flex; flex-direction: column; gap: 10px; }
.gqgh-due-btn { text-align: center; font-size: 18px; font-weight: 900; text-transform: lowercase; }
.gqgh-due-btn.gqgh-right { background: var(--gq-lime); border-color: #1c9c66; box-shadow: 4px 4px 0 #1c9c66; }
.gqgh-due-btn.gqgh-wrong { background: #ffd7d7; border-color: #b23b3b; box-shadow: 4px 4px 0 #b23b3b; }
.gqgh-esitoround { text-align: center; font-weight: 900; margin: 12px 0 4px; font-size: 16px; }
.gqgh-er-ok { color: #0f7a4d; }
.gqgh-er-no { color: #b23b3b; }
.gqgh-got { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; justify-content: center; margin-top: 14px; }
.gqgh-got-label { font-size: 12px; font-weight: 800; color: #8a7fb0; text-transform: uppercase; letter-spacing: .5px; width: 100%; text-align: center; }
.gqgh-chip { background: var(--gq-sun); border: 2px solid var(--gq-ink); border-radius: 10px; padding: 4px 10px; font-weight: 800; font-size: 13.5px; color: var(--gq-ink); }
.gqgh-meta { text-align: center; color: #8a7fb0; font-weight: 700; font-size: 13px; margin: 2px 0 8px; }
.gqgh-board { margin-top: 12px; }
.gqgh-board .gq-share-label { margin-top: 10px; }

/* ---- Ghigliottina: stato salvataggio / classifica ---- */
.gqgh-saved { text-align: center; font-weight: 800; color: #0f7a4d; font-size: 13.5px; margin: 8px 0 2px; }
.gqgh-board-empty { text-align: center; color: #8a7fb0; font-weight: 700; font-size: 14px; padding: 6px 0; }
.gq-board-list .gqgh-me {
  background: var(--gq-sun); border-radius: 8px; outline: 2px solid var(--gq-ink);
  font-weight: 900;
}

/* ---- Ghigliottina: pannello Hall of Fame persistente ---- */
.gqgh-hof-panel { margin-top: 16px; border-top: 3px dashed #e0d8fb; padding-top: 12px; }
.gqgh-hof-tabs { display: flex; gap: 8px; justify-content: center; margin-bottom: 10px; }
.gqgh-hof-tab {
  border: 3px solid var(--gq-ink); background: #fff; border-radius: 10px; padding: 6px 12px;
  font-weight: 800; color: var(--gq-ink); cursor: pointer; box-shadow: 3px 3px 0 var(--gq-ink);
}
.gqgh-hof-tab.on { background: var(--gq-sun); }
.gqgh-hof-rows { display: flex; flex-direction: column; gap: 5px; }
.gqgh-hof-row {
  display: flex; align-items: center; gap: 8px; background: #f7f4ff;
  border: 2px solid #e0d8fb; border-radius: 9px; padding: 7px 10px; font-size: 14px;
}
.gqgh-hof-row .gqgh-hof-pos { width: 34px; color: #8a7fb0; font-weight: 800; }
.gqgh-hof-row .gqgh-hof-nome { flex: 1 1 auto; font-weight: 800; color: var(--gq-ink); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.gqgh-hof-row .gqgh-hof-punti { font-weight: 900; color: #0f7a4d; }
.gqgh-hof-row.oro { background: #fff6d6; border-color: #f0c93c; }
.gqgh-hof-row.argento { background: #f1f2f5; border-color: #c9ced6; }
.gqgh-hof-row.bronzo { background: #f8ecdf; border-color: #d8a877; }
.gqgh-hof-row.mio { outline: 3px solid var(--gq-bubble); }
