:root{
  --a-bg:#050806;
  --a-panel:#0a120e;
  --a-panel2:#0d1812;
  --a-line:rgba(94,240,170,.14);
  --a-green:#5cf0aa;
  --a-cyan:#69e8dd;
  --a-gold:#e4bd76;
  --a-red:#ff7289;
  --a-text:#edf9f2;
  --a-muted:#81988c;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%}
body{
  color:var(--a-text);
  background:
    radial-gradient(circle at 10% 5%,rgba(92,240,170,.08),transparent 24%),
    #050806;
  font-family:Inter,Segoe UI,Arial,sans-serif
}
button,input,select,textarea{font:inherit}
.admin-shell{
  min-height:100vh;
  display:grid;
  grid-template-columns:260px minmax(0,1fr)
}
.admin-sidebar{
  min-height:100vh;
  position:sticky;top:0;
  padding:20px 15px;
  border-right:1px solid var(--a-line);
  background:#060b08
}
.admin-brand{
  display:flex;align-items:center;gap:12px;
  padding:8px;text-decoration:none
}
.admin-brand img{width:44px;height:44px}
.admin-brand strong{display:block;font-size:14px}
.admin-brand small{
  display:block;margin-top:4px;color:var(--a-green);
  font-size:8px;font-weight:900;letter-spacing:.12em;text-transform:uppercase
}
.admin-nav{display:grid;gap:6px;margin-top:28px}
.admin-nav button,.admin-nav a{
  min-height:44px;
  display:flex;align-items:center;gap:10px;
  border:0;border-radius:11px;padding:0 12px;
  color:#8ca196;background:transparent;text-decoration:none;cursor:pointer;text-align:left
}
.admin-nav button:hover,.admin-nav a:hover,.admin-nav button.active{
  color:#fff;background:rgba(92,240,170,.075)
}
.admin-nav i{width:20px;color:var(--a-green);font-style:normal}
.admin-main{min-width:0;padding:28px}
.admin-topbar{
  display:flex;align-items:center;justify-content:space-between;
  gap:20px;margin-bottom:26px
}
.admin-topbar h1{margin:0;font-size:34px;letter-spacing:-.045em}
.admin-topbar p{margin:7px 0 0;color:var(--a-muted);font-size:12px}
.admin-user{
  display:flex;align-items:center;gap:10px;padding:8px 11px;
  border:1px solid var(--a-line);border-radius:14px;background:var(--a-panel)
}
.admin-avatar{
  width:38px;height:38px;display:grid;place-items:center;border-radius:50%;
  color:#03100a;background:linear-gradient(135deg,var(--a-green),var(--a-cyan));font-weight:900
}
.admin-user strong{display:block;font-size:11px}
.admin-user small{display:block;margin-top:3px;color:var(--a-muted);font-size:8px}
.admin-view{display:none}
.admin-view.active{display:block}
.stat-grid{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:22px
}
.stat-card{
  min-height:128px;padding:20px;border:1px solid var(--a-line);border-radius:18px;
  background:linear-gradient(150deg,rgba(92,240,170,.035),transparent 55%),var(--a-panel);
  box-shadow:0 22px 60px rgba(0,0,0,.25)
}
.stat-card small{
  color:var(--a-muted);font-size:8px;font-weight:900;letter-spacing:.12em;text-transform:uppercase
}
.stat-card strong{
  display:block;margin-top:16px;font-size:36px;letter-spacing:-.04em
}
.admin-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:16px}
.admin-card{
  min-width:0;border:1px solid var(--a-line);border-radius:18px;
  background:var(--a-panel);overflow:hidden
}
.admin-card-head{
  min-height:61px;display:flex;align-items:center;justify-content:space-between;
  gap:12px;padding:0 17px;border-bottom:1px solid var(--a-line)
}
.admin-card-head strong{font-size:13px}
.admin-card-head small{color:var(--a-muted);font-size:9px}
.admin-card-body{padding:15px}
.data-table{width:100%;border-collapse:collapse}
.data-table th{
  padding:10px;color:#6f8579;font-size:8px;letter-spacing:.09em;
  text-align:left;text-transform:uppercase
}
.data-table td{
  padding:11px 10px;border-top:1px solid rgba(255,255,255,.045);
  color:#c4d5cc;font-size:11px;vertical-align:middle
}
.badge{
  display:inline-flex;align-items:center;min-height:24px;padding:0 8px;
  border-radius:999px;color:var(--a-green);background:rgba(92,240,170,.08);
  font-size:8px;font-weight:900;text-transform:uppercase
}
.badge.muted,.badge.suspended{color:var(--a-gold);background:rgba(228,189,118,.08)}
.badge.banned{color:var(--a-red);background:rgba(255,114,137,.08)}
.toolbar{
  display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-bottom:14px
}
.toolbar input,.toolbar select{
  min-height:42px;border:1px solid var(--a-line);border-radius:10px;outline:0;
  padding:0 12px;color:var(--a-text);background:var(--a-panel)
}
.toolbar input{min-width:260px;flex:1}
.toolbar button,.action-button{
  min-height:40px;border:1px solid var(--a-line);border-radius:10px;
  padding:0 12px;color:#b4c6bc;background:rgba(255,255,255,.025);cursor:pointer
}
.toolbar button:hover,.action-button:hover{color:var(--a-green);border-color:rgba(92,240,170,.35)}
.action-danger:hover{color:var(--a-red);border-color:rgba(255,114,137,.35)}
.user-actions{display:flex;flex-wrap:wrap;gap:6px}
.user-actions select{
  min-height:34px;border:1px solid var(--a-line);border-radius:8px;
  color:#c7d8cf;background:#08100c;font-size:9px
}
.message-admin{
  display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;
  padding:14px;border-top:1px solid rgba(255,255,255,.045)
}
.message-admin:first-child{border-top:0}
.message-admin strong{font-size:11px}
.message-admin small{display:block;margin-top:4px;color:var(--a-muted);font-size:8px}
.message-admin p{
  max-width:900px;margin:9px 0 0;color:#b8cac0;font-size:11px;line-height:1.65;
  white-space:pre-wrap;word-break:break-word
}
.report-card{
  padding:15px;border:1px solid var(--a-line);border-radius:14px;margin-bottom:10px;
  background:rgba(255,255,255,.015)
}
.report-card h3{margin:0 0 7px;font-size:13px}
.report-card p{margin:7px 0;color:#b9cbc1;font-size:11px;line-height:1.6}
.report-meta{color:var(--a-muted);font-size:8px}
.report-actions{display:flex;gap:7px;margin-top:11px}
.report-actions button{
  min-height:34px;border:1px solid var(--a-line);border-radius:8px;
  padding:0 10px;color:#b7c9bf;background:transparent;cursor:pointer
}
.modal-backdrop{
  position:fixed;z-index:50;inset:0;display:none;place-items:center;
  padding:20px;background:rgba(0,0,0,.72);backdrop-filter:blur(8px)
}
.modal-backdrop.open{display:grid}
.modal{
  width:min(500px,100%);padding:22px;border:1px solid var(--a-line);
  border-radius:18px;background:#0b1510;box-shadow:0 30px 100px rgba(0,0,0,.7)
}
.modal h2{margin:0 0 9px;font-size:24px}
.modal p{margin:0 0 16px;color:var(--a-muted);font-size:11px;line-height:1.6}
.modal textarea{
  width:100%;min-height:120px;border:1px solid var(--a-line);border-radius:11px;
  outline:0;padding:12px;color:var(--a-text);background:rgba(0,0,0,.25);resize:vertical
}
.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}
.modal-actions button{
  min-height:40px;border-radius:10px;padding:0 14px;cursor:pointer
}
.modal-cancel{border:1px solid var(--a-line);color:#afc1b7;background:transparent}
.modal-confirm{border:0;color:#03100a;background:var(--a-green);font-weight:900}
.admin-toast{
  position:fixed;z-index:60;right:18px;bottom:18px;max-width:390px;
  padding:13px 15px;border:1px solid var(--a-line);border-radius:12px;
  color:#dcebe3;background:#0c1712;opacity:0;transform:translateY(12px);
  pointer-events:none;transition:.25s ease
}
.admin-toast.show{opacity:1;transform:none}
.admin-toast.error{color:#ffd9df;border-color:rgba(255,114,137,.35)}
.empty-admin{padding:34px;color:var(--a-muted);font-size:12px;text-align:center}
@media(max-width:1100px){
  .stat-grid{grid-template-columns:1fr 1fr}
  .admin-grid{grid-template-columns:1fr}
}
@media(max-width:760px){
  .admin-shell{grid-template-columns:1fr}
  .admin-sidebar{min-height:auto;position:static;border-right:0;border-bottom:1px solid var(--a-line)}
  .admin-nav{grid-template-columns:repeat(2,1fr)}
  .admin-main{padding:18px 12px}
  .admin-topbar{align-items:flex-start}
  .stat-grid{grid-template-columns:1fr 1fr}
  .data-table{display:block;overflow:auto}
}

/* ETAPA 10.2 — contador adicional de eventos */
.stat-grid{
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
}


/* v16.3 — Apoiadores e editor Plus integrados ao painel principal */
[data-admin-view="supporters"]{max-width:1500px}
[data-admin-view="supporters"] .support-kicker{display:inline-flex;width:max-content;padding:6px 9px}
.admin-support-heading{margin-bottom:18px}
.admin-support-heading h1{margin:8px 0 5px;font-size:clamp(26px,3vw,42px)}
.admin-support-heading p{margin:0;color:#7f978c;max-width:760px;line-height:1.6}
.support-admin-help{margin-bottom:14px}
.support-admin-help p{margin:6px 0 0;color:#7f978c;line-height:1.55}
.plus-editor-intro code{color:#69efbd;background:#07140f;border:1px solid rgba(101,239,189,.12);padding:2px 5px;border-radius:5px}
.support-post-list-head{padding:12px;border-bottom:1px solid rgba(255,255,255,.06)}
.support-editor-grid{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:12px}
.support-editor-wide{grid-column:1/-1}
.support-file-label{grid-template-columns:1fr auto!important;align-items:end}
.support-file-label input{grid-column:1/-1}
.support-admin-actions .danger{border-color:rgba(255,95,112,.25)!important;color:#ff8895!important}
@media(max-width:850px){.support-editor-grid{grid-template-columns:1fr}.support-editor-wide{grid-column:auto}.support-file-label{grid-template-columns:1fr!important}}
