/* ============ ADMIN PORTAL ============ */
.admin-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(2,6,23,0.96);backdrop-filter:blur(20px);z-index:99999;align-items:flex-start;justify-content:center;overflow-y:auto;padding:20px}
.admin-content{background:linear-gradient(135deg,#0f172a 0%,#1e293b 100%);border:1px solid rgba(56,189,248,0.3);border-radius:16px;width:100%;max-width:1100px;margin:20px auto;padding:24px;color:#e2e8f0;animation:modalSlideUp 0.3s ease}
.admin-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,0.08);padding-bottom:16px;margin-bottom:20px;flex-wrap:wrap;gap:10px}
.admin-header h2{color:#38bdf8;font-size:22px;margin:0;display:flex;align-items:center;gap:10px}
.admin-close{background:rgba(239,68,68,0.15);border:1px solid rgba(239,68,68,0.4);color:#f87171;padding:8px 14px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600}
.admin-close:hover{background:rgba(239,68,68,0.25)}
.admin-refresh{background:rgba(56,189,248,0.15);border:1px solid rgba(56,189,248,0.4);color:#38bdf8;padding:8px 14px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;margin-right:8px}
.admin-refresh:hover{background:rgba(56,189,248,0.25)}
.admin-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-bottom:24px}
.admin-stat-card{background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);border-radius:12px;padding:16px;transition:all 0.2s}
.admin-stat-card:hover{border-color:rgba(56,189,248,0.4);transform:translateY(-2px)}
.admin-stat-label{font-size:12px;color:#94a3b8;text-transform:uppercase;letter-spacing:0.5px;margin-bottom:6px}
.admin-stat-value{font-size:26px;font-weight:800;color:#f1f5f9}
.admin-stat-value.green{color:#10b981}
.admin-stat-value.blue{color:#38bdf8}
.admin-stat-value.amber{color:#fbbf24}
.admin-stat-value.purple{color:#a78bfa}
.admin-stat-sub{font-size:11px;color:#64748b;margin-top:4px}
.admin-section{background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.06);border-radius:12px;padding:16px;margin-bottom:16px}
.admin-section-title{font-size:14px;font-weight:700;color:#cbd5e1;margin-bottom:12px;display:flex;align-items:center;gap:8px;text-transform:uppercase;letter-spacing:0.5px}
.admin-table{width:100%;border-collapse:collapse;font-size:13px}
.admin-table th{text-align:left;padding:10px 8px;color:#94a3b8;font-weight:600;border-bottom:1px solid rgba(255,255,255,0.08);text-transform:uppercase;font-size:11px;letter-spacing:0.5px}
.admin-table td{padding:10px 8px;border-bottom:1px solid rgba(255,255,255,0.04);color:#cbd5e1}
.admin-table tr:hover td{background:rgba(56,189,248,0.04)}
.admin-badge{display:inline-block;padding:3px 8px;border-radius:6px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:0.3px}
.admin-badge.completed{background:rgba(16,185,129,0.15);color:#10b981}
.admin-badge.pending{background:rgba(251,191,36,0.15);color:#fbbf24}
.admin-badge.failed{background:rgba(239,68,68,0.15);color:#f87171}
.admin-badge.no_confirmation{background:rgba(148,163,184,0.15);color:#94a3b8}
.admin-empty{text-align:center;padding:30px;color:#64748b;font-size:13px}
.admin-loading{text-align:center;padding:30px;color:#38bdf8;font-size:14px}
.admin-login{max-width:380px;margin:80px auto}
.admin-login h2{text-align:center;margin-bottom:8px}
.admin-login p{text-align:center;color:#94a3b8;font-size:13px;margin-bottom:20px}
.admin-login input{width:100%;padding:12px 14px;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.1);border-radius:10px;color:#f1f5f9;font-size:15px;margin-bottom:12px}
.admin-login input:focus{outline:none;border-color:#38bdf8}
.admin-login-btn{width:100%;padding:12px;background:linear-gradient(135deg,#38bdf8 0%,#0ea5e9 100%);color:white;border:none;border-radius:10px;font-size:15px;font-weight:700;cursor:pointer}
.admin-login-btn:hover{opacity:0.9}
.admin-login-error{color:#f87171;font-size:13px;text-align:center;margin-top:10px;display:none}
