/* App da plataforma BookingMax — super-admin e autocadastro.
   Tokens no :root; tema escuro pelo sistema. Sem framework: a tela é pequena. */
:root {
  --fundo: #f6f7f9; --papel: #ffffff; --texto: #16181d; --suave: #5b6270; --linha: #e2e5ea;
  --marca: #1f5eff; --marca-t: #ffffff; --ok: #137a3a; --alerta: #a15c00; --erro: #b3261e;
  --raio: 10px; --sombra: 0 1px 2px rgba(16, 24, 40, .06), 0 1px 3px rgba(16, 24, 40, .08);
  color-scheme: light dark;
}
@media (prefers-color-scheme: dark) {
  :root { --fundo: #111318; --papel: #1a1d24; --texto: #eceef2; --suave: #a2a9b6; --linha: #2c313b;
    --marca: #6b95ff; --marca-t: #0b0d12; --ok: #57c485; --alerta: #f0b35a; --erro: #ff8a80; }
}
* { box-sizing: border-box; }
body { margin: 0; background: var(--fundo); color: var(--texto);
  font: 15px/1.55 system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; }
a { color: var(--marca); }
.topo { display: flex; justify-content: space-between; align-items: center; gap: 1rem;
  padding: .75rem 1rem; background: var(--papel); border-bottom: 1px solid var(--linha); }
.marca { font-weight: 700; letter-spacing: .01em; }
.marca span { color: var(--suave); font-weight: 500; }
main { max-width: 1180px; margin: 0 auto; padding: 1rem; }
.cartao { background: var(--papel); border: 1px solid var(--linha); border-radius: var(--raio);
  box-shadow: var(--sombra); padding: 1rem 1.25rem; margin: 0 0 1rem; }
h1 { font-size: 1.35rem; margin: .25rem 0 .75rem; } h2 { font-size: 1.1rem; margin: 0 0 .75rem; }
.suave { color: var(--suave); }
.hidden { display: none !important; }
button, .botao { font: inherit; border: 1px solid var(--linha); background: var(--papel); color: var(--texto);
  border-radius: 8px; padding: .45rem .9rem; cursor: pointer; text-decoration: none; display: inline-block; }
button.primario, .botao.primario { background: var(--marca); color: var(--marca-t); border-color: var(--marca); }
button.perigo { color: var(--erro); border-color: var(--erro); }
button:disabled { opacity: .55; cursor: progress; }
input, select { font: inherit; padding: .45rem .6rem; border: 1px solid var(--linha); border-radius: 8px;
  background: var(--fundo); color: var(--texto); min-width: 0; }
label { display: grid; gap: .25rem; font-size: .9rem; }
.linha { display: flex; flex-wrap: wrap; gap: .75rem; align-items: end; }
.linha > label { flex: 1 1 180px; }
.msg { margin: .5rem 0 0; font-size: .92rem; } .msg.erro { color: var(--erro); } .msg.ok { color: var(--ok); }
.tabela { width: 100%; border-collapse: collapse; font-size: .92rem; }
.tabela th, .tabela td { text-align: left; padding: .5rem .45rem; border-bottom: 1px solid var(--linha); vertical-align: top; }
.tabela th { color: var(--suave); font-weight: 600; font-size: .82rem; text-transform: uppercase; letter-spacing: .03em; }
.selo { display: inline-block; padding: .05rem .5rem; border-radius: 999px; font-size: .8rem; border: 1px solid currentColor; }
.selo.active { color: var(--ok); } .selo.suspended { color: var(--erro); } .selo.provisioning, .selo.trial { color: var(--alerta); }
.acoes { display: flex; flex-wrap: wrap; gap: .35rem; }
.acoes button { padding: .25rem .6rem; font-size: .85rem; }
.painel-extra { background: var(--fundo); border-radius: 8px; padding: .75rem; margin-top: .5rem; }
.passos { display: flex; gap: .5rem; flex-wrap: wrap; margin: 0 0 1rem; padding: 0; list-style: none; }
.passos li { font-size: .85rem; color: var(--suave); border: 1px solid var(--linha); border-radius: 999px; padding: .15rem .7rem; }
.passos li.atual { color: var(--marca); border-color: var(--marca); font-weight: 600; }
.passos li.feito { color: var(--ok); }
.segredo { font-family: ui-monospace, monospace; word-break: break-all; background: var(--fundo); padding: .4rem .6rem; border-radius: 6px; }
.endereco { font-family: ui-monospace, monospace; color: var(--suave); }
@media (max-width: 720px) { .tabela thead { display: none; } .tabela td { display: block; border: 0; padding: .2rem 0; }
  .tabela tr { display: block; border-bottom: 1px solid var(--linha); padding: .5rem 0; } }
