/* Estilo comum: /admin, /admin/setup, /revenda e /ativar (mesma cara do site de listas). */
:root { --bg:#070d22; --card:rgba(22,40,90,.62); --line:rgba(255,255,255,.14); --tx:#e8eefc; --tx2:#a9bbdf; --ac:#38bdf8; --bad:#ff8a8a; --ok:#4ade80; --warn:#facc15; }
* { box-sizing:border-box; }
html { -webkit-text-size-adjust:100%; }
body { margin:0; min-height:100vh; color:var(--tx); background-color:var(--bg);
  background-image:radial-gradient(ellipse at 50% 0%, #1d3f8a 0%, #0d1b44 45%, #070d22 100%); background-attachment:fixed;
  font:16px/1.55 -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; }
a { color:var(--ac); }
main { max-width:560px; margin:0 auto; padding:24px 16px 40px; }
main.wide { max-width:1100px; }
.logo { display:block; width:200px; max-width:60%; margin:8px auto 4px; }
h1 { font-size:24px; text-align:center; margin:8px 0 4px; }
.sub { text-align:center; color:var(--tx2); margin:0 0 20px; }
.card { background:var(--card); border:1px solid var(--line); border-radius:14px; padding:20px 18px; margin:0 0 18px; }
.card h2 { font-size:18px; margin:0 0 12px; }
.card h3 { font-size:16px; margin:16px 0 8px; }
label { display:block; font-size:14px; color:var(--tx2); margin:12px 0 4px; }
input, select, textarea { width:100%; font:inherit; color:#fff; background:rgba(5,10,30,.75); border:1px solid rgba(255,255,255,.22); border-radius:10px; padding:11px 12px; }
textarea { min-height:80px; resize:vertical; }
input:focus, select:focus, textarea:focus { outline:none; border-color:var(--ac); box-shadow:0 0 0 3px rgba(56,189,248,.3); }
.big { font-size:20px; letter-spacing:2px; font-weight:700; text-align:center; font-variant-numeric:tabular-nums; }
.row { display:flex; gap:12px; flex-wrap:wrap; }
.row > div { flex:1; min-width:160px; }
.btn { display:inline-block; width:100%; margin-top:16px; font:inherit; font-weight:700; color:#fff; text-align:center; text-decoration:none;
  background:linear-gradient(160deg,#38bdf8 0%,#2563eb 55%,#4338ca 100%); border:0; border-radius:10px; padding:13px; cursor:pointer; }
.btn:disabled { opacity:.6; cursor:default; }
.btn.ghost { background:transparent; border:1px solid var(--line); font-weight:600; }
.btn.sm { width:auto; margin:0; padding:7px 12px; font-size:14px; }
.btn.red { background:#7f1d1d; } .btn.green { background:#166534; }
.tabs { display:flex; gap:8px; margin:0 0 16px; flex-wrap:wrap; }
.tab { flex:1; min-width:110px; font:inherit; font-weight:600; color:var(--tx); background:rgba(5,10,30,.6); border:1px solid var(--line); border-radius:10px; padding:10px; cursor:pointer; }
.tab.on { background:#1f6fe0; border-color:#fff; color:#fff; }
.msg { min-height:22px; margin-top:12px; font-size:15px; }
.msg.bad { color:var(--bad); } .msg.ok { color:var(--ok); }
.hint { font-size:14px; color:var(--tx2); margin:6px 0 0; }
.hidden { display:none !important; }
.stats { display:grid; grid-template-columns:repeat(auto-fit, minmax(150px, 1fr)); gap:12px; }
.stat { background:rgba(5,10,30,.55); border:1px solid var(--line); border-radius:12px; padding:12px; }
.stat b { display:block; font-size:24px; } .stat span { color:var(--tx2); font-size:13px; }
.tbl { width:100%; overflow-x:auto; }
table { width:100%; border-collapse:collapse; font-size:14px; }
th, td { padding:8px 6px; border-bottom:1px solid var(--line); text-align:left; vertical-align:top; }
th { color:var(--tx2); font-weight:600; white-space:nowrap; }
td .btn.sm { margin:2px 2px 2px 0; }
.pill { display:inline-block; padding:2px 9px; border-radius:99px; font-size:12px; font-weight:700; white-space:nowrap; }
.p-active, .p-paid { background:#143b25; color:#7ee2a8; } .p-trial, .p-pending { background:#3b3a14; color:#f6e27a; }
.p-expired, .p-blocked, .p-rejected, .p-cancelled { background:#3b1420; color:#ff8a8a; } .p-free { background:#13304d; color:#7dd3fc; }
.balance { font-size:34px; font-weight:800; text-align:center; } .balance small { font-size:15px; color:var(--tx2); font-weight:400; }
.qr { display:block; width:240px; max-width:100%; margin:12px auto; background:#fff; border-radius:12px; padding:8px; }
.copy { font-family:Consolas, monospace; font-size:12px; word-break:break-all; background:rgba(5,10,30,.75); border-radius:8px; padding:10px; }
.devbox { background:rgba(5,10,30,.55); border:1px solid var(--line); border-radius:12px; padding:12px; margin-top:12px; }
.devbox p { margin:4px 0; }
.top { display:flex; justify-content:space-between; align-items:center; gap:12px; flex-wrap:wrap; margin-bottom:12px; }
.top img { height:34px; }
.cap { display:flex; gap:10px; align-items:center; }
.cap .img { background:#0b1430; border-radius:8px; height:56px; width:170px; flex:none; overflow:hidden; cursor:pointer; }
.cap .img svg { width:100%; height:100%; display:block; }
footer { max-width:560px; margin:0 auto; padding:0 16px 32px; color:var(--tx2); font-size:13px; text-align:center; }
@media (max-width:600px) { th, td { font-size:13px; padding:6px 4px; } .balance { font-size:28px; } }
