/* ---------------------------------------------------------------------------
   Show do Milimetro - visual
   Identidade Projeto Marcenaria, isolada dentro de #pm-milimetro.
   --------------------------------------------------------------------------- */

#pm-milimetro{
  --ground:#FDF4E3; --panel:#FFFFFF; --panel-2:#FAF2E2;
  --ink:#3C3431; --ink-2:#5B4438; --muted:#7A6455;
  --rule:#E6D8C0; --rule-2:#F0E6D4;
  --brown:#705446; --brown-fg:#FFF9EE; --brown-soft:#F3E7D2;
  --tan:#E1C391; --tan-ink:#2E2724;
  --ok:#4F6E3A; --ok-soft:#EAF0E2; --bad:#A8452A; --bad-soft:#FBEADF;
  --warn:#96651F;
  --sombra:0 1px 2px rgba(60,52,49,.06),0 10px 28px -16px rgba(60,52,49,.28);

  color-scheme:light; position:relative;
  background:var(--ground); color:var(--ink); text-align:left;
  font:400 15px/1.5 "Roboto",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  border-radius:14px; max-width:820px; margin:0 auto;
}
#pm-milimetro *{box-sizing:border-box}
#pm-milimetro h1,#pm-milimetro h2,#pm-milimetro h3,#pm-milimetro p,
#pm-milimetro ol,#pm-milimetro ul{margin:0;padding:0;list-style:none;text-transform:none}
#pm-milimetro h1,#pm-milimetro h2,#pm-milimetro h3{
  font-family:"Montserrat","Roboto",sans-serif;letter-spacing:-.015em;color:var(--ink)}
#pm-milimetro button{font:inherit;margin:0;min-height:0;line-height:1;cursor:pointer;
  text-transform:none;letter-spacing:normal;box-shadow:none;-webkit-appearance:none;appearance:none}
#pm-milimetro img{max-width:100%;height:auto;display:block}
#pm-milimetro a{color:var(--brown)}
#pm-milimetro :focus-visible{outline:2px solid var(--brown);outline-offset:2px}
#pm-milimetro [hidden]{display:none!important}
#pm-milimetro .mono{font-family:"Roboto Mono",monospace;font-variant-numeric:tabular-nums}

/* ---------- topo ---------- */
#pm-milimetro .topo{display:flex;gap:11px;align-items:center;padding:13px 16px;
  border-bottom:1px solid var(--rule);flex-wrap:wrap}
#pm-milimetro .topo img{width:42px;height:42px;border-radius:50%;flex:none}
#pm-milimetro .topo h1{font-size:19px;font-weight:900;line-height:1.05}
#pm-milimetro .topo .sub{font:500 10.5px/1.3 "Montserrat",sans-serif;letter-spacing:.11em;
  text-transform:uppercase;color:var(--muted)}
#pm-milimetro .topo .agora{margin-left:auto;text-align:right;flex:none}
#pm-milimetro .topo .agora b{display:block;font:900 22px/1 "Montserrat",sans-serif;
  color:var(--brown);font-variant-numeric:tabular-nums}
#pm-milimetro .topo .agora span{font:500 10px/1.4 "Montserrat",sans-serif;letter-spacing:.1em;
  text-transform:uppercase;color:var(--muted)}

/* ---------- a trena ---------- */
#pm-milimetro .trena{display:flex;gap:2px;padding:11px 16px;background:var(--panel-2);
  border-bottom:1px solid var(--rule);overflow-x:auto}
#pm-milimetro .dg{flex:1 1 0;min-width:38px;border-radius:5px;padding:6px 3px;text-align:center;
  background:var(--panel);border:1px solid var(--rule);
  font:500 10px/1.25 "Roboto Mono",monospace;color:var(--muted);white-space:nowrap}
#pm-milimetro .dg.feito{background:var(--brown);border-color:var(--brown);color:var(--brown-fg);
  font-weight:600}
#pm-milimetro .dg.aqui{background:var(--tan);border-color:var(--tan);color:var(--tan-ink);
  font-weight:600;box-shadow:0 0 0 2px var(--brown)}
#pm-milimetro .dg.porta{border-color:var(--warn);border-width:2px}

/* ---------- pergunta ---------- */
#pm-milimetro .mesa{padding:16px}
#pm-milimetro .cab{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;margin-bottom:12px}
#pm-milimetro .chip{font:600 10px/1 "Montserrat",sans-serif;letter-spacing:.09em;
  text-transform:uppercase;background:var(--brown-soft);color:var(--ink-2);
  padding:6px 10px;border-radius:999px}
#pm-milimetro .chip.n{background:var(--panel);border:1px solid var(--rule);color:var(--muted)}
#pm-milimetro .q{font:700 20px/1.35 "Montserrat",sans-serif;margin-bottom:16px;text-wrap:balance}
#pm-milimetro .alts{display:grid;gap:9px}
#pm-milimetro .alt{display:flex;gap:11px;align-items:flex-start;text-align:left;width:100%;
  padding:14px 15px;border-radius:11px;border:1px solid var(--rule);background:var(--panel);
  color:var(--ink);font:500 15px/1.4 "Roboto",sans-serif}
#pm-milimetro .alt:hover:not(:disabled){border-color:var(--brown);background:var(--brown-soft)}
#pm-milimetro .alt b{flex:none;width:24px;height:24px;border-radius:50%;background:var(--brown-soft);
  color:var(--ink-2);font:700 12px/24px "Montserrat",sans-serif;text-align:center}
#pm-milimetro .alt.riscada{opacity:.4;text-decoration:line-through;pointer-events:none}
#pm-milimetro .alt.certa{background:var(--ok-soft);border-color:var(--ok)}
#pm-milimetro .alt.certa b{background:var(--ok);color:#fff}
#pm-milimetro .alt.errada{background:var(--bad-soft);border-color:var(--bad)}
#pm-milimetro .alt.errada b{background:var(--bad);color:#fff}
#pm-milimetro .alt .voto{margin-left:auto;flex:none;font:600 12px/1 "Roboto Mono",monospace;
  color:var(--muted)}
#pm-milimetro .alt:disabled{cursor:default}

/* ---------- ajudas ---------- */
#pm-milimetro .ajudas{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;
  padding-top:14px;border-top:1px solid var(--rule)}
#pm-milimetro .aj{display:flex;flex-direction:column;gap:2px;align-items:flex-start;
  padding:10px 13px;border-radius:10px;border:1px solid var(--rule);background:var(--panel);
  color:var(--ink)}
#pm-milimetro .aj:hover:not(:disabled){border-color:var(--brown);background:var(--brown-soft)}
#pm-milimetro .aj strong{font:600 12.5px/1.2 "Montserrat",sans-serif}
#pm-milimetro .aj span{font:400 10.5px/1.2 "Roboto",sans-serif;color:var(--muted)}
#pm-milimetro .aj:disabled{opacity:.4;cursor:not-allowed}
#pm-milimetro .aj.parar{margin-left:auto;border-color:var(--warn)}
#pm-milimetro .aj.parar strong{color:var(--warn)}

/* ---------- caixas de aviso ---------- */
#pm-milimetro .mestre,#pm-milimetro .resu{border-radius:0 11px 11px 0;padding:12px 14px;
  margin-top:14px;font-size:14px;line-height:1.5}
#pm-milimetro .mestre{background:var(--brown-soft);border-left:3px solid var(--brown);
  color:var(--ink-2)}
#pm-milimetro .mestre b{display:block;font:600 11px/1.3 "Montserrat",sans-serif;
  letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:4px}
#pm-milimetro .resu{background:var(--panel-2);border-left:3px solid var(--ok)}
#pm-milimetro .resu.nao{border-left-color:var(--bad)}
#pm-milimetro .resu strong{display:block;font:700 15px/1.3 "Montserrat",sans-serif;margin-bottom:3px}
#pm-milimetro .resu a{display:inline-block;margin-top:9px;padding:9px 14px;border-radius:9px;
  background:var(--brown);color:var(--brown-fg);text-decoration:none;
  font:600 12.5px/1 "Roboto",sans-serif}
#pm-milimetro .segue{display:flex;justify-content:flex-end;margin-top:14px}

/* ---------- botoes ---------- */
#pm-milimetro .b{font:600 14px/1 "Roboto",sans-serif;padding:13px 20px;border-radius:10px;
  border:1px solid var(--rule);background:var(--panel);color:var(--ink)}
#pm-milimetro .b-p{background:var(--brown);border-color:var(--brown);color:var(--brown-fg)}
#pm-milimetro .b-p:hover{filter:brightness(1.1)}
#pm-milimetro .b-g{border:0;background:none;color:var(--muted);padding:13px 8px}

/* ---------- fim de jogo ---------- */
#pm-milimetro .fim{position:absolute;inset:0;z-index:50;display:flex;align-items:center;
  justify-content:center;padding:16px;background:rgba(60,52,49,.55)}
#pm-milimetro .cart{background:var(--panel);border-radius:14px;box-shadow:var(--sombra);
  padding:22px;max-width:460px;width:100%;max-height:100%;overflow:auto}
#pm-milimetro .cart h3{font-size:21px;font-weight:900;margin-bottom:3px}
#pm-milimetro .cart .obs{font-size:13.5px;color:var(--muted);line-height:1.5;margin-bottom:16px}
#pm-milimetro .medalha{background:var(--brown-soft);border-radius:12px;padding:16px;
  text-align:center;margin-bottom:15px}
#pm-milimetro .medalha .med{font:900 40px/1 "Montserrat",sans-serif;color:var(--brown);
  font-variant-numeric:tabular-nums}
#pm-milimetro .medalha .tit{font:600 13px/1.3 "Montserrat",sans-serif;letter-spacing:.12em;
  text-transform:uppercase;color:var(--ink-2);margin-top:5px}
#pm-milimetro .cupom{border:2px dashed var(--brown);border-radius:11px;padding:13px;
  text-align:center;margin-bottom:15px;background:var(--panel-2)}
#pm-milimetro .cupom span{display:block;font-size:12.5px;color:var(--ink-2);margin-bottom:6px}
#pm-milimetro .cupom code{font:700 19px/1 "Roboto Mono",monospace;letter-spacing:.08em;
  color:var(--brown)}
#pm-milimetro .cta{border:1px solid var(--rule);border-left:3px solid var(--brown);
  border-radius:0 10px 10px 0;background:var(--brown-soft);padding:12px 14px;margin:15px 0 0;
  font-size:13px;color:var(--ink-2);line-height:1.45}
#pm-milimetro .acoes{display:flex;flex-wrap:wrap;gap:8px}
#pm-milimetro .toast{position:absolute;left:50%;transform:translateX(-50%);top:12px;z-index:60;
  background:var(--ink);color:var(--ground);padding:10px 15px;border-radius:9px;
  font:500 13px/1.35 "Roboto",sans-serif;max-width:88%;text-align:center;
  box-shadow:0 8px 24px -10px rgba(0,0,0,.5)}
#pm-milimetro .carregando{padding:48px 20px;text-align:center;color:var(--muted);font-size:14px}

@media (max-width:560px){
  #pm-milimetro{border-radius:0}
  #pm-milimetro .topo{padding:11px 12px}
  #pm-milimetro .mesa{padding:13px 12px}
  #pm-milimetro .q{font-size:17px}
  #pm-milimetro .alt{padding:13px;font-size:14.5px}
  #pm-milimetro .trena{padding:9px 12px}
  #pm-milimetro .dg{min-width:34px;font-size:9px}
  #pm-milimetro .aj{flex:1 1 auto}
  #pm-milimetro .aj.parar{margin-left:0}
  #pm-milimetro .cart{padding:16px}
}
@media (prefers-reduced-motion:reduce){#pm-milimetro *{animation:none!important;transition:none!important}}
