*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,Segoe UI,sans-serif;background:#0b1020;color:#f8fafc}a{color:inherit;text-decoration:none}.top{display:flex;justify-content:space-between;gap:16px;padding:22px 32px;background:#111827;border-bottom:1px solid rgba(255,255,255,.1)}.brand{font-weight:900}.top nav{display:flex;gap:16px;align-items:center}.link{background:none;border:0;color:white;cursor:pointer}main{width:min(1180px,100%);margin:auto;padding:32px 20px}.hero,.auth,.card,.plan,.thanks{border:1px solid rgba(255,255,255,.12);border-radius:28px;background:rgba(15,23,42,.82);box-shadow:0 24px 90px rgba(0,0,0,.28)}.hero{padding:46px;background:radial-gradient(circle at top left,rgba(239,68,68,.3),transparent 34rem),rgba(15,23,42,.82)}.compact{padding:30px}.hero h1,.auth h1,.thanks h1{font-size:clamp(34px,6vw,62px);line-height:1;letter-spacing:-.05em;margin:14px 0}.hero p,.auth p,.thanks p{color:#cbd5e1;font-size:18px;line-height:1.7}.pill,.tag{display:inline-flex;padding:8px 12px;border-radius:999px;background:rgba(249,115,22,.16);color:#fed7aa;font-weight:800;font-size:13px;text-transform:uppercase}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:24px}.plan,.card{padding:24px}.plan{display:flex;flex-direction:column;gap:12px}.plan h2{font-size:24px;margin:4px 0}.price{font-size:34px}.plan ul{line-height:1.7;color:#e2e8f0}button,.button{border:0;border-radius:999px;background:linear-gradient(135deg,#ef4444,#f97316);color:white;font-weight:900;padding:14px 20px;cursor:pointer;display:inline-flex;justify-content:center}.secondary{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.14)}.auth{width:min(520px,100%);margin:50px auto;padding:34px}.form{display:grid;gap:16px;margin-top:22px}.form label{display:grid;gap:8px;color:#cbd5e1}.form input{border:1px solid rgba(255,255,255,.12);background:#020617;color:white;border-radius:16px;padding:14px 16px;font-size:16px}.flash{width:min(700px,calc(100% - 32px));margin:16px auto 0;padding:12px 18px;border:1px solid rgba(239,68,68,.35);border-radius:16px;background:rgba(239,68,68,.12)}.center{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at top left,rgba(34,197,94,.25),transparent 32rem),#0b1020;padding:20px}.thanks{width:min(680px,100%);padding:42px;text-align:center}.check{width:80px;height:80px;border-radius:999px;background:linear-gradient(135deg,#22c55e,#14b8a6);display:grid;place-items:center;font-size:48px;font-weight:900;margin:auto}.actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:24px}.row{display:grid;grid-template-columns:1fr auto auto auto;gap:14px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.08)}code{color:#fde68a}.stat{font-size:42px}@media(max-width:720px){.top{flex-direction:column}.top nav{flex-wrap:wrap}.row{grid-template-columns:1fr}}


/* Admin profissional */
.admin-body{margin:0;background:#0b1020;color:#e2e8f0;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;min-height:100vh}
.admin-topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 24px;background:rgba(15,23,42,.92);border-bottom:1px solid rgba(148,163,184,.18);backdrop-filter:blur(16px)}
.admin-logo{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font-weight:800;white-space:nowrap}
.admin-logo span,.brand{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,#ef4444,#f97316);box-shadow:0 14px 30px rgba(249,115,22,.25)}
.admin-nav{display:flex;align-items:center;gap:8px;overflow:auto}
.admin-nav a{color:#cbd5e1;text-decoration:none;padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);white-space:nowrap}
.admin-nav a:hover{background:rgba(255,255,255,.1);color:#fff}
.admin-main{width:100%;max-width:none;padding:24px;box-sizing:border-box}
.admin-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:20px;padding:24px;border-radius:26px;background:linear-gradient(135deg,rgba(239,68,68,.18),rgba(20,184,166,.12));border:1px solid rgba(255,255,255,.10)}
.admin-hero h1{font-size:clamp(32px,4vw,58px);line-height:1;margin:8px 0;letter-spacing:-.04em}
.admin-hero p{color:#94a3b8;margin:0;font-size:17px}
.hero-actions{display:flex;gap:10px;flex-wrap:wrap}
.admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-bottom:18px}
.admin-grid.two{grid-template-columns:repeat(auto-fit,minmax(420px,1fr))}.admin-grid.three{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.muted{color:#94a3b8;font-size:14px;line-height:1.5}
.admin-card{background:rgba(15,23,42,.78);border:1px solid rgba(148,163,184,.18);border-radius:22px;padding:20px;box-shadow:0 20px 80px rgba(0,0,0,.22)}
.admin-card h2{margin:0 0 16px}
.stats .admin-card strong{display:block;font-size:36px;margin-top:8px}
.stats .admin-card small{color:#94a3b8;text-transform:uppercase;letter-spacing:.08em}
.btn,button{border:0;border-radius:999px;padding:11px 16px;background:linear-gradient(135deg,#ef4444,#f97316);color:white;font-weight:800;text-decoration:none;cursor:pointer}
.btn.secondary{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.12)}
button.danger,.danger{background:linear-gradient(135deg,#b91c1c,#ef4444)}
.form-grid,.filters{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.form-grid input,.form-grid select,.filters input,.filters select,.catalog-form input,.catalog-form select,.catalog-form textarea,.mini-form input,.mini-form select{background:#020617;color:#e2e8f0;border:1px solid rgba(148,163,184,.25);border-radius:14px;padding:12px;min-width:180px}
.catalog-form{display:grid;gap:12px}
.catalog-form textarea{min-height:90px;width:100%;box-sizing:border-box}
.catalog-form.compact{margin-top:12px}
.check{display:flex;align-items:center;gap:8px;color:#cbd5e1}
.table-wrap{overflow:auto}
table{width:100%;border-collapse:collapse}
th,td{padding:12px;border-bottom:1px solid rgba(148,163,184,.14);text-align:left;vertical-align:top}
th{color:#94a3b8;font-size:12px;text-transform:uppercase;letter-spacing:.08em}
code{background:rgba(255,255,255,.08);padding:3px 7px;border-radius:8px}
.chip{display:inline-flex;margin:3px;padding:6px 9px;border-radius:999px;background:rgba(255,255,255,.08);color:#cbd5e1;font-size:12px}
.status{display:inline-flex;padding:6px 10px;border-radius:999px;background:rgba(148,163,184,.16);font-weight:800}
.status.pago,.status.ativo{background:rgba(34,197,94,.18);color:#86efac}
.status.pendente{background:rgba(234,179,8,.18);color:#fde68a}
.status.vencido,.status.desativado{background:rgba(239,68,68,.18);color:#fca5a5}
.plans-list{display:grid;gap:14px}
.plan-admin{display:grid;grid-template-columns:1fr auto;gap:16px;padding:16px;border:1px solid rgba(148,163,184,.16);border-radius:18px;background:rgba(255,255,255,.03)}
.plan-admin h3{margin:0 0 6px}
.mini-form{display:grid;gap:8px;margin-top:10px}
.flash-wrap{display:grid;gap:8px;margin-bottom:16px}
.flash{padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.08)}
.flash.ok{border:1px solid rgba(34,197,94,.35)}
.flash.error{border:1px solid rgba(239,68,68,.35)}
.login-screen{min-height:100vh;display:grid;place-items:center;background:#0b1020;color:#fff;font-family:Inter,system-ui}
.login-card{width:min(420px,calc(100% - 32px));display:grid;gap:14px;padding:28px;border-radius:28px;background:#111827;border:1px solid rgba(255,255,255,.12);box-shadow:0 30px 90px rgba(0,0,0,.35)}
.login-card input{padding:14px;border-radius:14px;border:1px solid rgba(255,255,255,.12);background:#020617;color:white}
.notice{padding:10px 12px;border-radius:14px;background:rgba(20,184,166,.12);border:1px solid rgba(20,184,166,.25);margin:12px 0}
.token-card{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:12px;border-radius:14px;background:rgba(255,255,255,.05);margin-bottom:8px}
@media(max-width:700px){.admin-topbar{align-items:flex-start;flex-direction:column}.admin-grid.two{grid-template-columns:1fr}.plan-admin{grid-template-columns:1fr}.admin-main{padding:14px}}

.section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:14px}
.pagination{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.pagination.bottom{margin-top:16px;justify-content:center}
.page-indicator,.page-ellipsis{color:#cbd5e1;font-weight:700}
.btn.disabled{opacity:.45;cursor:not-allowed;background:rgba(255,255,255,.05);box-shadow:none}
.btn.current{background:linear-gradient(135deg,#22c55e,#14b8a6);box-shadow:none}
.sub-admin-box{padding:10px;border:1px solid rgba(148,163,184,.14);border-radius:14px;background:rgba(255,255,255,.035);margin-bottom:8px}
.sub-admin-box summary{cursor:pointer;color:#fde68a;margin-top:6px}
.status.expirado{background:rgba(239,68,68,.18);color:#fca5a5}
.status.inativo{background:rgba(148,163,184,.18);color:#cbd5e1}

/* Correção: checkbox do admin não pode herdar o ícone verde da tela de pagamento */
.admin-body label.check,
.admin-body .check {
  width: auto;
  height: auto;
  min-width: 0;
  min-height: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  margin: 0;
  padding: 0;
  color: #cbd5e1;
  font-size: 13px;
  line-height: 1.25;
  font-weight: 700;
  text-transform: none;
  letter-spacing: 0;
  white-space: normal;
  flex: 0 1 auto;
}

.admin-body label.check input[type="checkbox"],
.admin-body .check input[type="checkbox"] {
  width: 16px;
  height: 16px;
  min-width: 16px;
  max-width: 16px;
  padding: 0;
  margin: 0;
  border-radius: 4px;
  accent-color: #22c55e;
  flex: 0 0 16px;
}

.admin-body .form-grid label.check {
  min-width: 220px;
}

.admin-body .mini-form label.check,
.admin-body .filters label.check {
  min-width: 0;
}
.danger-zone{border-top:1px solid rgba(239,68,68,.22);padding-top:10px;margin-top:10px}
.danger-zone small{display:block}
button.secondary{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.12)}
.inline-checks{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}
.inline-checks .check{padding:8px 10px;border:1px solid rgba(148,163,184,.18);border-radius:999px;background:rgba(15,23,42,.6)}

.product-card{overflow:hidden}
.product-cover-wrap{position:relative;margin:-24px -24px 0;border-bottom:1px solid rgba(255,255,255,.08);background:#020617}
.product-cover{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.product-badge{position:absolute;top:14px;left:14px}
.plan-admin.with-cover{grid-template-columns:220px 1fr auto;align-items:start}
.plan-cover-col{display:grid;gap:10px}
.plan-cover{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:16px;border:1px solid rgba(148,163,184,.18);background:#020617}
.chip-strong{background:rgba(34,197,94,.14);color:#bbf7d0;font-weight:800}
.metric-period-card strong{font-size:28px}
.metric-period-meta{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-top:8px;color:#94a3b8;font-size:13px}
.period-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.chart-card canvas{min-height:320px;max-height:320px}
.compact-table table td,.compact-table table th{padding:10px}
@media(max-width:900px){.plan-admin.with-cover{grid-template-columns:1fr}}
