/* Administração: escopo isolado para conservar os demais fluxos. */
#modal-admin { --admin-surface:#fff; --admin-muted:#526174; --admin-text:#182433; --admin-tint:#f4f6fa; --admin-border:#dce2e9; }
body.dark-mode #modal-admin { --admin-surface:#22272e; --admin-muted:#b9c4d2; --admin-text:#f1f4f8; --admin-tint:#191f27; --admin-border:#3c4858; }
#modal-admin .admin-wide { width:min(1200px,96vw); max-width:1200px; padding:24px; background:var(--admin-surface); color:var(--admin-text); }
#modal-admin .modal-close { float:right; margin:0 0 12px 16px; min-width:44px; min-height:44px; }
#modal-admin h3 { font-size:21px; padding-right:42px; }
#modal-admin h4 { color:var(--admin-text); }
#modal-admin .abas-admin { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; margin:20px 0 24px; padding:8px; border:1px solid var(--admin-border); background:var(--admin-tint); border-radius:12px; }
#modal-admin .abas-admin button { width:100%; margin:0; min-height:44px; padding:10px 12px; border:1px solid transparent; background:transparent; color:var(--admin-muted); font-size:13px; white-space:normal; }
#modal-admin .abas-admin button.ativo { color:#fff; background:#6941b9; box-shadow:0 2px 6px #0002; }
#modal-admin .abas-admin button:hover { border-color:#8d6acb; }
#modal-admin .box-cupom,#modal-admin .tutorial-admin { background:var(--admin-tint)!important; color:var(--admin-text); border:1px solid var(--admin-border)!important; border-radius:12px!important; padding:20px!important; margin:0 0 16px!important; }
#modal-admin .box-cupom p,#modal-admin .box-cupom label,#modal-admin .box-cupom small,#modal-admin .admin-descricao { color:var(--admin-muted)!important; line-height:1.6; }
#modal-admin input,#modal-admin select { background:var(--admin-surface); color:var(--admin-text); border:1px solid var(--admin-border); min-height:44px; max-width:100%; box-sizing:border-box; }
#modal-admin input[type=checkbox] { min-height:20px; width:20px; }
#modal-admin #admin-2fa-setup { background:var(--admin-surface)!important; border-color:var(--admin-border)!important; }
#modal-admin .admin-metricas { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
#modal-admin .admin-metricas>div { padding:16px; background:var(--admin-surface); border:1px solid var(--admin-border); border-radius:10px; }
#modal-admin .admin-metricas span { display:block; font-size:13px; color:var(--admin-muted); }
#modal-admin .admin-metricas strong { display:block; margin-top:6px; font-size:30px; color:#7952cb; }
body.dark-mode #modal-admin .admin-metricas strong { color:#bc9bef; }
#modal-admin .admin-descricao { font-size:13px; margin:12px 0 20px; }
#modal-admin .admin-filtros-visitas { grid-template-columns:repeat(2,minmax(0,1fr))!important; padding:16px; border:1px solid var(--admin-border); border-radius:10px; }
#modal-admin table { color:var(--admin-text); }
#modal-admin th { background:var(--admin-tint); color:var(--admin-text); }
#modal-admin td,#modal-admin th { border-color:var(--admin-border); padding:12px; }
#modal-admin .tutorial-admin button { margin-bottom:12px; }
#modal-admin #conteudo-aba-atendimento>button { width:auto; padding:12px 20px; }
#conteudo-aba-cupons .grid-2 { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin:20px 0; }
#conteudo-aba-cupons .grid-2 label { display:flex; flex-direction:column; gap:6px; font-size:14px; font-weight:600; }
#conteudo-aba-cupons .grid-2 input { width:100%; margin:0; }
#conteudo-aba-cupons .grid-2 small { font-size:12px; font-weight:400; }
.plano-resgate-cupom { padding:16px; margin:16px 0; border:1px solid #6f42c1; border-radius:12px; }
.plano-resgate-cupom label { display:block; font-weight:600; }
.plano-resgate-cupom input { display:block; width:100%; box-sizing:border-box; margin-top:8px; text-transform:uppercase; }
.plano-resgate-cupom p:empty { display:none; }
@media(max-width:640px) {
  #conteudo-aba-cupons .grid-2 { grid-template-columns:minmax(0,1fr); gap:16px; }
  #modal-admin .admin-wide { width:100%; padding:16px; }
  #modal-admin .abas-admin { grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; }
  #modal-admin .box-cupom,#modal-admin .tutorial-admin { padding:14px!important; }
  #modal-admin .admin-filtros-visitas { grid-template-columns:minmax(0,1fr)!important; }
  #modal-admin #admin-2fa-setup>div { grid-template-columns:minmax(0,1fr)!important; }
  #modal-admin .admin-metricas>div { padding:12px; }
}
