/* ==================== ADMIN PANEL ==================== */
.admin-body{ background:var(--bg); min-height:100vh; }

.admin-login-wrap{
  min-height:100vh; display:flex; align-items:center; justify-content:center; padding:20px;
}
.admin-login-box{
  background:var(--panel); border:1px solid var(--line); border-radius:16px;
  padding:34px 32px; max-width:380px; width:100%;
}
.admin-login-box h1{ font-family:'Orbitron'; font-size:1.3rem; margin-bottom:4px; }
.admin-login-box .sub{ color:var(--muted); font-size:0.85rem; margin-bottom:22px; }

.admin-shell{ display:flex; min-height:100vh; }
.admin-sidebar{
  width:220px; flex-shrink:0; background:var(--panel); border-right:1px solid var(--line);
  padding:22px 0; display:flex; flex-direction:column;
}
.admin-sidebar .brand{ font-family:'Orbitron'; font-weight:900; padding:0 22px 22px; font-size:1.05rem; }
.admin-nav-item{
  padding:12px 22px; cursor:pointer; color:var(--muted); font-family:'Rajdhani'; font-weight:700;
  font-size:0.95rem; border-left:3px solid transparent;
}
.admin-nav-item:hover{ color:var(--text); }
.admin-nav-item.active{ color:var(--cyan); border-left-color:var(--cyan); background:rgba(51,225,237,0.06); }
.admin-nav-spacer{ flex:1; }
.admin-logout{ padding:12px 22px; cursor:pointer; color:var(--magenta); font-weight:700; font-size:0.9rem; }

.admin-main{ flex:1; padding:32px 40px; max-width:1100px; }
.admin-main h2{ font-family:'Orbitron'; font-size:1.3rem; margin-bottom:6px; }
.admin-main .section-sub{ color:var(--muted); font-size:0.88rem; margin-bottom:24px; }

.admin-card{
  background:var(--panel); border:1px solid var(--line); border-radius:14px;
  padding:20px 22px; margin-bottom:18px;
}
.admin-card h3{ font-size:1rem; margin-bottom:14px; font-family:'Rajdhani'; font-weight:700; }

.admin-table{ width:100%; border-collapse:collapse; font-size:0.88rem; }
.admin-table th{ text-align:left; color:var(--muted); font-weight:600; padding:8px 10px; border-bottom:1px solid var(--line); }
.admin-table td{ padding:9px 10px; border-bottom:1px solid rgba(255,255,255,0.05); vertical-align:middle; }
.admin-table tr:hover td{ background:rgba(255,255,255,0.02); }

.badge-status{ padding:3px 9px; border-radius:20px; font-size:0.75rem; font-weight:700; }
.badge-status.pending{ background:rgba(255,210,63,0.15); color:var(--gold); }
.badge-status.completed{ background:rgba(51,225,135,0.15); color:#33e187; }
.badge-status.failed, .badge-status.refunded{ background:rgba(255,90,90,0.15); color:#ff5a5a; }

.admin-btn{
  background:var(--bg-alt); border:1px solid var(--line); color:var(--text);
  border-radius:8px; padding:6px 12px; font-size:0.8rem; font-weight:700; cursor:pointer;
  font-family:'Rajdhani'; margin-right:6px;
}
.admin-btn:hover{ border-color:var(--cyan); }
.admin-btn.danger:hover{ border-color:#ff5a5a; color:#ff5a5a; }
.admin-btn.primary{ background:var(--cyan); color:#04121a; border-color:var(--cyan); }

.admin-toolbar{ display:flex; gap:10px; margin-bottom:16px; align-items:center; flex-wrap:wrap; }
.admin-toolbar input, .admin-toolbar select{
  background:var(--bg-alt); border:1px solid var(--line); border-radius:8px; color:var(--text);
  padding:8px 12px; font-family:'Inter'; font-size:0.85rem;
}
.admin-toolbar .spacer{ flex:1; }

.admin-form-grid{ display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.admin-form-grid .full{ grid-column:1/-1; }
.admin-form-field label{ display:block; font-size:0.8rem; color:var(--muted); margin-bottom:5px; font-weight:600; }
.admin-form-field input, .admin-form-field textarea, .admin-form-field select{
  width:100%; background:var(--bg-alt); border:1px solid var(--line); border-radius:8px;
  color:var(--text); padding:9px 11px; font-family:'Inter'; font-size:0.88rem;
}
.admin-form-field textarea{ min-height:80px; resize:vertical; }
.toggle-inline{ display:flex; align-items:center; gap:8px; margin-top:4px; }

.admin-msg{ font-size:0.85rem; margin-top:10px; }
.admin-msg.ok{ color:#33e187; }
.admin-msg.err{ color:#ff5a5a; }

.feature-list-editor .feature-row{ display:flex; gap:8px; margin-bottom:8px; }
.feature-list-editor .feature-row input{ flex:1; }
.small-x{ cursor:pointer; color:var(--muted); padding:0 8px; }
.small-x:hover{ color:#ff5a5a; }

@media (max-width: 800px){
  .admin-shell{ flex-direction:column; }
  .admin-sidebar{ width:100%; flex-direction:row; overflow-x:auto; padding:12px; }
  .admin-sidebar .brand{ display:none; }
  .admin-nav-spacer{ display:none; }
  .admin-main{ padding:20px; }
  .admin-form-grid{ grid-template-columns:1fr; }
}
