/* ====== AUTH + ADMIN ====== */
.auth-page { min-height:calc(100vh - 70px); display:flex; align-items:center; justify-content:center; padding:2rem; }
.auth-box {
    background:var(--bg-card);
    backdrop-filter:blur(20px) saturate(1.5);
    -webkit-backdrop-filter:blur(20px) saturate(1.5);
    border:1px solid var(--border-bright); border-radius:24px; padding:2.5rem;
    width:100%; max-width:480px;
    box-shadow:0 0 80px rgba(0,0,0,0.3);
    animation:authIn 0.5s cubic-bezier(0.34,1.56,0.64,1); position:relative; overflow:hidden;
}
@keyframes authIn { from{opacity:0;transform:scale(0.9) translateY(20px);} to{opacity:1;transform:scale(1) translateY(0);} }
.auth-box::before { content:''; position:absolute; top:-1px; left:-1px; right:-1px; height:3px; background:linear-gradient(90deg,var(--accent2),var(--accent),var(--accent3)); }
.auth-logo { text-align:center; margin-bottom:2rem; }
.auth-logo-icon { width:70px; height:70px; background:linear-gradient(135deg,var(--accent2),var(--accent)); border-radius:20px; display:inline-flex; align-items:center; justify-content:center; font-size:2rem; margin-bottom:1rem; box-shadow:0 0 40px rgba(0,0,0,0.3); animation:logoGlow 3s ease-in-out infinite; }
.auth-title { font-family:'Sour Gummy',serif; font-size:1.3rem; font-weight:900; margin-bottom:0.25rem; background:linear-gradient(90deg,var(--accent),var(--text-primary)); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
.auth-subtitle { color:var(--text-muted); font-size:0.88rem; }
.auth-divider { display:flex; align-items:center; gap:1rem; margin:1.25rem 0; color:var(--text-muted); font-size:0.8rem; }
.auth-divider::before, .auth-divider::after { content:''; flex:1; height:1px; background:var(--border); }
.password-strength { height:4px; border-radius:4px; margin-top:0.5rem; background:rgba(255,255,255,0.05); overflow:hidden; }
.password-strength-bar { height:100%; border-radius:4px; transition:width 0.3s,background 0.3s; width:0%; }
.strength-label { font-size:0.75rem; color:var(--text-muted); margin-top:0.3rem; text-align:right; }

/* ====== ADMIN PANEL ====== */
.admin-container { max-width:1200px; margin:0 auto; padding:2rem 2rem 4rem; }
.admin-tabs { display:flex; gap:0.5rem; flex-wrap:wrap; margin-bottom:2rem; }
.tab-btn { padding:0.5rem 1.25rem; border-radius:20px; border:1px solid var(--border); background:transparent; color:var(--text-secondary); font-family:'Sour Gummy',sans-serif; font-size:0.88rem; font-weight:700; cursor:pointer; transition:0.3s; letter-spacing:1px; text-transform:uppercase; }
.tab-btn.active, .tab-btn:hover { background:rgba(255,255,255,0.06); border-color:var(--border-bright); color:var(--accent); }
.tab-panel { display:none; }
.tab-panel.active { display:block; }
.users-table { width:100%; border-collapse:collapse; }
.users-table th { padding:0.75rem 1rem; text-align:left; font-size:0.72rem; color:var(--text-muted); letter-spacing:2px; text-transform:uppercase; border-bottom:1px solid var(--border); }
.users-table td { padding:0.75rem 1rem; border-bottom:1px solid var(--border); vertical-align:middle; color:var(--text-primary); }
.users-table tr:hover td { background:rgba(255,255,255,0.03); }
.users-table select { padding:0.3rem 0.6rem; border-radius:6px; border:1px solid var(--border); background:var(--bg-secondary); color:var(--text-primary); font-family:'DM Sans',sans-serif; font-size:0.85rem; cursor:pointer; outline:none; }
.stat-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(200px,1fr)); gap:1.25rem; margin-bottom:2rem; }
.stat-card { background:var(--bg-card); backdrop-filter:blur(14px); border:1px solid var(--border); border-radius:16px; padding:1.5rem; text-align:center; transition:0.3s; }
.stat-card:hover { border-color:var(--border-bright); transform:translateY(-3px); box-shadow:0 10px 30px rgba(0,0,0,0.2); }
.stat-card-num { font-family:'Sour Gummy',serif; font-size:2rem; font-weight:900; color:var(--accent); }
.stat-card-label { font-size:0.78rem; color:var(--text-muted); margin-top:0.25rem; letter-spacing:1px; text-transform:uppercase; }
.admin-header { margin-bottom:2rem; }

/* Badge gamer */
.badge-gamer { background:rgba(59,130,246,0.18); color:#60a5fa; border:1px solid rgba(59,130,246,0.4); }
