.mi-jogo{--tinta:#1e1b4b;--papel:#fff8e7;--ouro:#ffc93c;--rosa:#ff4f8b;
  margin:16px auto;
  width:min(460px,100%,max(300px,calc((100vh - 32px) * 5 / 7)));
  width:min(460px,100%,max(300px,calc((100dvh - 32px) * 5 / 7)));
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--papel);line-height:1.4;
  -webkit-user-select:none;user-select:none;box-sizing:border-box;-webkit-touch-callout:none}
.mi-jogo *,.mi-jogo *::before,.mi-jogo *::after{box-sizing:border-box}

.mi-jogo .mi-palco{position:relative;width:100%;aspect-ratio:5/7;border-radius:18px;overflow:hidden;
  background:linear-gradient(165deg,#7c6cf0 0%,#4338ca 100%);box-shadow:0 10px 30px rgba(46,38,144,.35);
  display:flex;flex-direction:column;padding:14px}
.mi-jogo .mi-palco.mi-tremer{animation:mi-tremer .45s}
@keyframes mi-tremer{20%{transform:translate(-6px,2px)}40%{transform:translate(5px,-3px)}60%{transform:translate(-4px,1px)}80%{transform:translate(3px,0)}}

.mi-jogo .mi-topo{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:2px 4px 10px}
.mi-jogo .mi-dado{display:flex;flex-direction:column;line-height:1.1}
.mi-jogo .mi-dado:last-child{align-items:flex-end}
.mi-jogo .mi-dado span{font-size:12px;opacity:.8}
.mi-jogo .mi-dado b{font-size:22px;font-weight:800;font-variant-numeric:tabular-nums}
.mi-jogo .mi-nivel{font-size:13px;font-weight:700;background:rgba(255,255,255,.16);padding:5px 12px;border-radius:999px}

.mi-jogo .mi-area{position:relative;flex:1 1 auto;min-height:0;display:flex;align-items:center;justify-content:center}
.mi-jogo .mi-grade{display:grid;gap:3px;padding:5px;background:rgba(20,10,70,.35);border-radius:14px;transition:opacity .2s}
.mi-jogo .mi-grade.mi-esperando{opacity:.55}

.mi-jogo .mi-grade button.mi-c{appearance:none;-webkit-appearance:none;display:grid!important;place-items:center;
  width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;max-width:none!important;
  margin:0!important;padding:0!important;border:0!important;border-radius:6px;line-height:1!important;letter-spacing:0;text-transform:none;
  background:linear-gradient(160deg,#b9afff,#8b7cf6);box-shadow:inset 0 -3px 0 rgba(40,20,120,.35),inset 0 2px 0 rgba(255,255,255,.35);
  font:800 var(--fs,16px) system-ui,sans-serif!important;color:var(--tinta);cursor:pointer;-webkit-tap-highlight-color:transparent;
  transition:transform .08s}
.mi-jogo .mi-grade button.mi-c:active{transform:scale(.92)}
.mi-jogo .mi-grade button.mi-c:focus-visible{outline:3px solid var(--ouro);outline-offset:1px}
.mi-jogo .mi-grade button.mi-c.mi-aberta{background:#f3f1ff;box-shadow:inset 0 0 0 1px rgba(67,56,202,.12);cursor:default;animation:mi-abre .28s both}
.mi-jogo .mi-grade button.mi-c.mi-aberta:active{transform:none}
@keyframes mi-abre{from{transform:scale(.55);opacity:.2}to{transform:none;opacity:1}}
.mi-jogo .mi-c svg{width:72%;height:72%;display:block;pointer-events:none}
.mi-jogo .mi-c.mi-bandeira svg{animation:mi-pula .25s}
@keyframes mi-pula{from{transform:scale(.3) translateY(6px)}to{transform:none}}
.mi-jogo .mi-grade button.mi-c.mi-mina{background:#ffd7dc;animation:mi-abre .3s both}
.mi-jogo .mi-grade button.mi-c.mi-boom{background:#ef4444;animation:mi-boom .5s both}
@keyframes mi-boom{0%{transform:scale(1)}40%{transform:scale(1.35)}100%{transform:scale(1)}}
.mi-jogo .mi-grade button.mi-c.mi-errada{background:#fde68a}
.mi-jogo .mi-grade button.mi-c.mi-vitoria{animation:mi-onda .5s both}
@keyframes mi-onda{50%{transform:scale(1.12);background:#c8f7dc}}

.mi-jogo .mi-barra{display:flex;gap:8px;justify-content:center;padding-top:12px}
.mi-jogo .mi-barra button{font-size:14px;padding:8px 14px;background:rgba(255,255,255,.16);color:var(--papel);box-shadow:none}
.mi-jogo .mi-barra button[aria-pressed="true"]{background:var(--ouro);color:var(--tinta)}
.mi-jogo .mi-barra button:active{transform:none}

.mi-jogo .mi-tela{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;
  text-align:center;padding:22px;background:rgba(30,27,75,.9);overflow-y:auto;transition:opacity .25s,visibility .25s}
.mi-jogo .mi-tela.mi-oculta{opacity:0;visibility:hidden;pointer-events:none}

.mi-jogo h2,.mi-jogo h3{font-family:Georgia,"Times New Roman",serif;font-weight:700;color:var(--papel);text-transform:none;
  letter-spacing:-.5px;line-height:1;margin:0 0 10px;padding:0;border:0;background:none}
.mi-jogo h2{font-size:clamp(28px,8vw,40px);transform:rotate(-3deg)}
.mi-jogo h3{font-size:28px}
.mi-jogo [data-tela="fim"] h2{font-size:32px}
.mi-jogo p{margin:5px 0;font-size:15px;line-height:1.45;max-width:32ch;color:#e6e3ff}

.mi-jogo button{font:inherit;font-weight:700;font-size:17px;line-height:1.2;margin:0;padding:12px 26px;border:0;border-radius:999px;cursor:pointer;
  background:var(--ouro);color:var(--tinta);box-shadow:0 5px 0 #c9951a;text-transform:none;letter-spacing:normal;transition:transform .08s,box-shadow .08s}
.mi-jogo button:active{transform:translateY(4px);box-shadow:0 1px 0 #c9951a}
.mi-jogo button:focus-visible{outline:3px solid var(--papel);outline-offset:3px}
.mi-jogo button:disabled{opacity:.6;cursor:wait}

.mi-jogo .mi-niveis{display:flex;gap:8px;width:100%;max-width:340px;margin:14px 0 10px}
.mi-jogo .mi-niveis button{flex:1;padding:10px 4px;font-size:16px;display:flex;flex-direction:column;align-items:center;border-radius:14px}
.mi-jogo .mi-niveis small{font-size:12px;font-weight:600;opacity:.8;margin-top:2px}
.mi-jogo .mi-niveis [data-nivel="facil"]{background:#3ddc97;box-shadow:0 5px 0 #23935f}
.mi-jogo .mi-niveis [data-nivel="normal"]{background:var(--ouro)}
.mi-jogo .mi-niveis [data-nivel="dificil"]{background:var(--rosa);color:#fff;box-shadow:0 5px 0 #a8265a}
.mi-jogo .mi-niveis button:active{box-shadow:none}

.mi-jogo .mi-link{background:none;box-shadow:none;color:var(--papel);text-decoration:underline;text-underline-offset:3px;font-size:15px;padding:8px 12px}
.mi-jogo .mi-link:active{transform:none;box-shadow:none}
.mi-jogo .mi-dica{font-size:12px;opacity:.85}

.mi-jogo .mi-abas{display:flex;gap:6px;margin:6px 0 14px}
.mi-jogo .mi-abas button{background:rgba(255,255,255,.14);color:var(--papel);box-shadow:none;font-size:14px;padding:7px 14px}
.mi-jogo .mi-abas button[aria-selected="true"]{background:var(--papel);color:var(--tinta)}

.mi-jogo ol.mi-lista{list-style:none;margin:0 0 6px;padding:0;width:100%;max-width:320px;text-align:left}
.mi-jogo .mi-lista li{display:flex;align-items:center;gap:10px;margin:0;padding:6px 10px;border-radius:8px;font-size:15px;color:var(--papel)}
.mi-jogo .mi-lista li:nth-child(odd){background:rgba(255,255,255,.08)}
.mi-jogo .mi-lista .mi-pos{width:24px;font-weight:800;color:var(--ouro);text-align:right}
.mi-jogo .mi-lista .mi-nome{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mi-jogo .mi-lista small{font-size:12px;opacity:.7}
.mi-jogo .mi-lista b{font-variant-numeric:tabular-nums}
.mi-jogo .mi-lista li.mi-eu{background:var(--ouro);color:var(--tinta)}
.mi-jogo .mi-lista li.mi-eu .mi-pos{color:var(--tinta)}
.mi-jogo .mi-lista li.mi-vazio{justify-content:center;opacity:.8;background:none}

.mi-jogo .mi-form{width:100%;max-width:320px;margin:8px 0 10px}
.mi-jogo .mi-form[hidden]{display:none}
.mi-jogo .mi-form label{display:block;font-size:14px;margin-bottom:6px;color:var(--ouro);font-weight:700}
.mi-jogo .mi-linha{display:flex;gap:6px}
.mi-jogo .mi-form input,.mi-jogo .mi-form input[type="text"]{
  display:block!important;flex:1 1 auto!important;width:auto!important;min-width:0!important;max-width:none!important;height:auto!important;
  margin:0!important;padding:10px 12px!important;font:inherit!important;font-size:16px!important;line-height:1.3!important;
  border:2px solid #fff8e7!important;border-radius:10px!important;background:#fff8e7!important;color:#1e1b4b!important;
  -webkit-text-fill-color:#1e1b4b!important;box-shadow:none!important;opacity:1!important;visibility:visible!important;
  -webkit-appearance:none!important;appearance:none!important;text-align:left!important;-webkit-user-select:text;user-select:text}
.mi-jogo .mi-form input::placeholder{color:#7471a3!important;-webkit-text-fill-color:#7471a3!important;opacity:1!important}
.mi-jogo .mi-form input:focus{border-color:#ffc93c!important;outline:none!important}
.mi-jogo .mi-form button{font-size:15px;padding:10px 16px;border-radius:10px;box-shadow:0 3px 0 #c9951a}
.mi-jogo .mi-msg{font-size:13px;min-height:1.2em;color:#ffd0e2;margin:6px 0 0;max-width:none}

.mi-jogo .mi-grande{font-family:Georgia,serif;font-size:52px;font-weight:700;line-height:1;color:var(--ouro);margin:2px 0 6px;font-variant-numeric:tabular-nums}
.mi-jogo .mi-acoes{display:flex;gap:10px;align-items:center;margin-top:10px}

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

.mi-jogo ol.mi-lista[hidden]{display:none}
.mi-jogo .mi-lista li.mi-vazio{text-align:center;line-height:1.35}
