/* Desembaralha — estilos dos jogos (usa as cores e fontes de style.css) */
.jg-topo{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;justify-content:space-between}
.jg-tit{font:800 18px/1.2 var(--display);margin:0}
.jg-modos,.jg-niveis{display:flex;flex-wrap:wrap;gap:8px}
.jg-modos button,.jg-niveis button{min-height:44px;font:700 15px var(--body);padding:8px 14px;border-radius:999px;border:2px solid var(--line);background:transparent;color:var(--ink);cursor:pointer}
.jg-modos button[aria-pressed="true"],.jg-niveis button[aria-pressed="true"]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.jg-barra{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:center}
.jg-barra .btn{min-height:44px}
.jg-info{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:15px;color:var(--muted);justify-content:center}
.jg-info b{color:var(--ink);font-variant-numeric:tabular-nums}
.jg-fim{border:2px solid var(--menta);border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:10px;align-items:center;text-align:center;background:var(--soft)}
.jg-fim .grande{font:800 24px/1.2 var(--display);margin:0}
.jg-st{display:flex;flex-wrap:wrap;gap:8px 16px;justify-content:center;font-size:14px;color:var(--muted)}
.jg-st b{display:block;font:800 22px var(--display);color:var(--ink)}
.status.bom{color:var(--menta)}
.jg-erro{color:var(--coral)}
.jg-sel{min-height:44px;font:600 16px var(--body);padding:8px 12px;border-radius:12px;border:2px solid var(--line);background:var(--surface);color:var(--ink)}
.jg-centro{display:flex;flex-direction:column;align-items:center;gap:12px}
:focus-visible{outline:3px solid var(--ceu);outline-offset:2px}

/* Teclado na tela */
.kb{display:flex;flex-direction:column;gap:6px;width:100%;max-width:520px;margin:0 auto;user-select:none}
.kb-l{display:flex;gap:5px;justify-content:center}
.kb-t{flex:1 1 0;min-width:0;max-width:46px;height:52px;border:0;border-radius:8px;background:var(--soft);color:var(--ink);font:800 17px var(--display);cursor:pointer;touch-action:manipulation;box-shadow:inset 0 -3px 0 rgba(0,0,0,.08)}
.kb-t.kb-g{flex:1.6 1 0;max-width:76px;font:700 13px var(--body)}
.kb-t:active{transform:translateY(2px)}
.kb-t.s0,.kb-t.no{background:var(--miss);color:var(--miss-ink)}
.kb-t.s1{background:var(--near);color:var(--tile-ink)}
.kb-t.s2,.kb-t.ok{background:var(--ok);color:var(--tile-ink)}
.kb-t:disabled{cursor:default;opacity:.85}

/* Palavra do dia */
.pd-grade{display:grid;gap:6px;margin:0 auto;width:min(100%,330px)}
.pd-l{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}
.pd-c{aspect-ratio:1;display:grid;place-items:center;border:2px solid var(--line);border-radius:10px;font:800 clamp(22px,7vw,30px)/1 var(--display);text-transform:uppercase;background:var(--surface);color:var(--ink);transition:background .25s,border-color .25s}
.pd-c.cheia{border-color:var(--ink);animation:jgpop .12s ease}
.pd-c.s0{background:var(--miss);border-color:var(--miss);color:var(--miss-ink)}
.pd-c.s1{background:var(--near);border-color:var(--near);color:var(--tile-ink)}
.pd-c.s2{background:var(--ok);border-color:var(--ok);color:var(--tile-ink)}
.pd-l.treme{animation:jgtreme .35s}
@keyframes jgpop{50%{transform:scale(1.08)}}
@keyframes jgtreme{20%,60%{transform:translateX(-6px)}40%,80%{transform:translateX(6px)}}
.pd-legenda{display:flex;flex-wrap:wrap;gap:6px 14px;justify-content:center;font-size:14px;color:var(--muted)}
.pd-legenda i{display:inline-block;width:14px;height:14px;border-radius:4px;vertical-align:-2px;margin-right:4px}

/* Forca */
.fc-palco{display:grid;grid-template-columns:minmax(120px,190px) 1fr;gap:16px;align-items:center}
.fc-svg{width:100%;height:auto;color:var(--ink)}
.fc-svg .p{opacity:0;transition:opacity .25s}
.fc-svg .p.on{opacity:1}
.fc-palavra{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}
.fc-let{width:34px;height:44px;border-bottom:4px solid var(--ink);display:grid;place-items:center;font:800 26px var(--display)}
.fc-let.perdida{color:var(--coral)}
.fc-esp{width:16px}
@media (max-width:560px){.fc-palco{grid-template-columns:110px 1fr;gap:10px}.fc-let{width:26px;font-size:21px}}

/* Caça-palavras */
.cp-area{display:grid;grid-template-columns:1fr 200px;gap:16px;align-items:start}
.cp-grade{--n:12;display:grid;grid-template-columns:repeat(var(--n),1fr);gap:2px;touch-action:none;user-select:none;width:100%;max-width:560px;margin:0 auto}
.cp-c{aspect-ratio:1;display:grid;place-items:center;font:800 clamp(13px,3.6vw,20px)/1 var(--display);border-radius:6px;cursor:pointer;background:var(--soft);color:var(--ink)}
.cp-c.sel,.cp-c.ini{background:var(--ceu);color:#fff}
.cp-c.achou.h0{background:var(--sol);color:var(--tile-ink)}.cp-c.achou.h1{background:var(--menta);color:var(--tile-ink)}.cp-c.achou.h2{background:#FF9F8F;color:var(--tile-ink)}.cp-c.achou.h3{background:#9CC2FF;color:var(--tile-ink)}.cp-c.achou.h4{background:#D4B8FF;color:var(--tile-ink)}
.cp-lista{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.cp-lista li{font:700 14px var(--body);padding:5px 10px;border-radius:8px;background:var(--soft)}
.cp-lista li.achou{text-decoration:line-through;opacity:.55}
@media (max-width:700px){.cp-area{grid-template-columns:1fr}}

/* Cruzadinha */
.cz-area{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:start}
.cz-grade{--w:10;display:grid;grid-template-columns:repeat(var(--w),minmax(0,40px));gap:2px;justify-content:center}
.cz-c{position:relative;aspect-ratio:1;border:2px solid var(--ink);border-radius:4px;background:var(--surface);color:var(--ink);padding:0;cursor:pointer;font:800 clamp(14px,4.2vw,20px) var(--display);text-transform:uppercase;min-width:0}
.cz-c.vazio{border:0;background:transparent;cursor:default}
.cz-c sup{position:absolute;top:1px;left:3px;font:700 10px var(--body)}
.cz-c.linha{background:#FFF1C9;color:#1B1A3A}
.cz-c.foco{background:var(--sol);color:#1B1A3A}
.cz-c.errada b{color:var(--coral)}
.cz-dicas{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.cz-dicas h3{margin:0 0 6px;font-size:16px}
.cz-dicas ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}
.cz-dicas button{all:unset;display:block;cursor:pointer;padding:6px 8px;border-radius:8px;font-size:15px;line-height:1.3}
.cz-dicas button:hover,.cz-dicas button.foco{background:var(--soft)}
.cz-dicas button.feita{opacity:.5;text-decoration:line-through}
.cz-dicas button:focus-visible{outline:3px solid var(--ceu)}
.cz-atual{min-height:2.6em;padding:10px 12px;border-radius:12px;background:var(--soft);font-size:15px}
@media (max-width:760px){.cz-area{grid-template-columns:1fr}.cz-dicas{grid-template-columns:1fr}}

/* Sudoku */
.sd-grade{display:grid;grid-template-columns:repeat(9,1fr);width:min(100%,450px);margin:0 auto;border:3px solid var(--ink);border-radius:8px;overflow:hidden;background:var(--ink);gap:1px}
.sd-c{aspect-ratio:1;border:0;background:var(--surface);color:var(--link);font:700 clamp(18px,5.4vw,26px) var(--display);padding:0;cursor:pointer;min-width:0}
.sd-c.fixo{color:var(--ink);font-weight:800}
.sd-c.bd{box-shadow:inset -2px 0 0 var(--ink)}.sd-c.bb{box-shadow:inset 0 -2px 0 var(--ink)}.sd-c.bd.bb{box-shadow:inset -2px -2px 0 var(--ink)}
.sd-c.viz{background:var(--soft)}
.sd-c.igual{background:#FFE7A6;color:#1B1A3A}
.sd-c.sel{background:var(--sol);color:#1B1A3A}
.sd-c.errada{color:var(--coral)!important}
.sd-n{display:grid;grid-template-columns:repeat(3,1fr);width:100%;height:100%;font:600 clamp(8px,2vw,11px)/1 var(--body);color:var(--muted)}
.sd-n i{font-style:normal;display:grid;place-items:center}
.sd-nums{display:grid;grid-template-columns:repeat(9,1fr);gap:5px;width:min(100%,450px);margin:0 auto}
.sd-nums button{min-height:52px;border:0;border-radius:10px;background:var(--soft);color:var(--ink);font:800 22px var(--display);cursor:pointer}
.sd-nums button.cheio{opacity:.35}
.sd-chk{display:flex;gap:10px;align-items:center;justify-content:center;font-size:15px;min-height:44px;cursor:pointer}.sd-chk input{width:22px;height:22px;flex:0 0 auto}

/* Soletra */
.sl-area{display:grid;grid-template-columns:minmax(260px,340px) 1fr;gap:20px;align-items:start}
.sl-entrada{min-height:46px;display:flex;justify-content:center;flex-wrap:wrap;font:800 30px var(--display);letter-spacing:.06em;text-transform:uppercase}
.sl-entrada .c{color:var(--coral)}.sl-entrada .x{opacity:.35}.sl-entrada .ph{font:500 16px var(--body);color:var(--muted);letter-spacing:0;text-transform:none;align-self:center}
.sl-flor{position:relative;width:260px;height:270px;margin:0 auto}
.sl-l{position:absolute;width:78px;height:78px;clip-path:polygon(25% 4%,75% 4%,100% 50%,75% 96%,25% 96%,0 50%);border:0;background:var(--soft);color:var(--ink);font:800 28px var(--display);cursor:pointer;left:91px;top:96px;text-transform:uppercase}
.sl-l.centro{background:var(--sol);color:#1B1A3A}
.sl-l.p0{top:14px}.sl-l.p1{top:55px;left:162px}.sl-l.p2{top:137px;left:162px}.sl-l.p3{top:178px}.sl-l.p4{top:137px;left:20px}.sl-l.p5{top:55px;left:20px}
.sl-l:active{transform:scale(.94)}
.sl-prog{height:10px;border-radius:99px;background:var(--soft);overflow:hidden}
.sl-prog i{display:block;height:100%;background:var(--menta);width:0;transition:width .3s}
.sl-lista{list-style:none;margin:0;padding:0;columns:3 120px;column-gap:16px;font-size:15px}
.sl-lista li{break-inside:avoid;padding:3px 0;border-bottom:1px solid var(--line)}
.sl-lista li.pang{font-weight:800;color:var(--coral)}
@media (max-width:720px){.sl-area{grid-template-columns:1fr}}

/* Hub de jogos */
.jg-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;list-style:none;margin:0;padding:0}
.jg-card{display:flex;flex-direction:column;gap:8px;height:100%;padding:18px;border-radius:18px;border:2px solid var(--line);background:var(--surface);color:var(--ink);text-decoration:none;transition:transform .15s,border-color .15s}
.jg-card:hover{transform:translateY(-2px);border-color:var(--ink)}
.jg-card .ic{font-size:34px;line-height:1}
.jg-card strong{font:800 20px var(--display)}
.jg-card ul{margin:0;padding-left:18px;font-size:15px;color:var(--muted)}
.jg-card .tag{align-self:flex-start;font:700 12px var(--body);padding:3px 9px;border-radius:99px;background:var(--sol);color:#1B1A3A}

@media (prefers-reduced-motion:reduce){.pd-c,.pd-l.treme,.kb-t,.jg-card{animation:none!important;transition:none!important}}
@media print{
  header.top,footer.rodape,.nm-lead,.nm-soc,.vitrine,.f-share,.consent,.jg-barra,.jg-modos,.jg-niveis,.kb,.noprint,.prose,.band .art,#cp-msg,#cp-fim{display:none!important}
  .tool{box-shadow:none;border:0}.cp-c{background:#fff!important;color:#000!important;border:1px solid #999}.cp-area{grid-template-columns:1fr}
}
