/* painel do administrador (usa os tokens de app.css) */
body.adm { display: block; min-height: 100%; }
.adm-main { max-width: 1100px; margin: 0 auto; padding: 16px; }
.adm-abas { margin-bottom: 16px; display: inline-flex; }
.adm-resumo { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 12px; }
.adm-resumo .badge { font-size: 13px; }
.adm-filtros { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 12px; }
.adm-filtros input, .adm-filtros select {
  padding: 7px 10px; border: 1px solid var(--line); border-radius: 8px; background: var(--panel);
}
.adm-filtros input { flex: 1; min-width: 200px; }
.adm-tabela-wrap { overflow-x: auto; background: var(--panel); border: 1px solid var(--line); border-radius: var(--radius); }
.adm-tabela { width: 100%; border-collapse: collapse; font-size: 13px; }
.adm-tabela th, .adm-tabela td { padding: 9px 12px; text-align: left; border-bottom: 1px solid var(--line); vertical-align: middle; }
.adm-tabela th { font-size: 12px; color: var(--muted); font-weight: 600; background: var(--soft); white-space: nowrap; }
.adm-tabela tr:last-child td { border-bottom: 0; }
.adm-quem { display: flex; align-items: center; gap: 10px; min-width: 220px; }
.adm-quem img { width: 30px; height: 30px; border-radius: 50%; flex: none; }
.adm-quem span { display: flex; flex-direction: column; line-height: 1.25; }
.adm-acoes { display: flex; flex-wrap: wrap; gap: 4px; justify-content: flex-end; }
.adm-vazio { padding: 24px; text-align: center; color: var(--muted); }
.st { font-size: 12px; padding: 2px 9px; border-radius: 99px; border: 1px solid var(--line); white-space: nowrap; }
.st.ativo { color: #177245; border-color: #9bd5b4; }
.st.vencido, .st.pendente { color: #8a5b00; border-color: #f0cf87; }
.st.bloqueado, .st.erro { color: #b3261e; border-color: #f2a39d; }
.adm-form { max-width: 460px; }
.adm-form .field input { width: 100%; padding: 7px 10px; border: 1px solid var(--line); border-radius: 8px; background: var(--panel); }
.adm-marcas { display: flex; flex-wrap: wrap; gap: 6px; margin: 10px 0; }
code { font-size: 12px; background: var(--soft); padding: 1px 5px; border-radius: 4px; word-break: break-all; }
.adm-modal { position: fixed; inset: 0; z-index: 60; background: rgba(0,0,0,.45); display: flex; align-items: center; justify-content: center; padding: 16px; }
.adm-modal .card { width: 100%; max-width: 340px; }
.adm-modal .field input { width: 100%; padding: 7px 10px; border: 1px solid var(--line); border-radius: 8px; background: var(--panel); }
