/* ===== Login / Register ===== */
.auth-wrap{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;padding:40px 16px;
  background:radial-gradient(600px 400px at 50% 0%,rgba(140,220,40,.14),transparent 70%)}
.auth-card{width:100%;max-width:420px;padding:36px 32px;border-radius:28px;
  background:linear-gradient(160deg,rgba(255,255,255,.07),rgba(255,255,255,.02));border:1px solid var(--border);
  box-shadow:0 30px 80px rgba(0,0,0,.5);backdrop-filter:blur(20px)}
.auth-title{font-size:1.8rem;font-weight:600;letter-spacing:-.04em;line-height:1.1;margin:28px 0 6px}
.auth-sub{color:var(--text-2);font-size:.92rem;font-weight:300;margin-bottom:24px}
.auth-form{display:flex;flex-direction:column;gap:16px}
.auth-form label{display:flex;flex-direction:column;gap:7px;font-size:.82rem;font-weight:500;color:var(--text-2)}
.auth-form small{font-size:.75rem;color:var(--muted);font-weight:400}
.auth-form input{width:100%;font:inherit;font-size:.95rem;color:var(--text);padding:13px 16px;border-radius:14px;
  background:rgba(0,0,0,.3);border:1px solid var(--border);outline:none;transition:border-color .2s,box-shadow .2s}
.auth-form input:focus{border-color:rgba(196,241,53,.6);box-shadow:0 0 0 4px rgba(196,241,53,.12)}
.pw-field{position:relative;display:block}
.pw-field input{padding-right:48px}
.pw-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:34px;height:34px;border:0;border-radius:10px;background:transparent;cursor:pointer;opacity:.6;font-size:.95rem}
.pw-toggle:hover{opacity:1;background:var(--glass)}
.auth-submit{margin-top:8px;padding:15px;font-size:.95rem;border-radius:14px}
.auth-errors{margin-bottom:18px;padding:12px 16px;border-radius:14px;background:rgba(255,90,70,.1);border:1px solid rgba(255,90,70,.3);color:#ffb4a8;font-size:.85rem;display:flex;flex-direction:column;gap:4px}
.auth-alt{margin-top:22px;text-align:center;font-size:.88rem;color:var(--text-2)}
.auth-alt a,.auth-back:hover{color:var(--lime)}
.auth-back{font-size:.85rem;color:var(--muted)}

/* ===== Admin ===== */
.admin-wrap{max-width:1200px;margin:0 auto;padding:24px 16px 80px}
.admin-head{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;padding:14px 18px;border-radius:999px;background:var(--glass);border:1px solid var(--border);margin-bottom:24px}
.admin-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.admin-me{font-size:.85rem;color:var(--text-2);margin-right:6px}
.admin-me b{color:var(--lime)}
.table-wrap{overflow-x:auto;border-radius:20px;border:1px solid var(--border);background:var(--glass)}
.admin-table{width:100%;border-collapse:collapse;font-size:.88rem;min-width:720px}
.admin-table th{text-align:left;font-weight:500;color:var(--muted);font-size:.78rem;padding:14px 16px;border-bottom:1px solid var(--border)}
.admin-table td{padding:12px 16px;border-bottom:1px solid var(--border);color:var(--text-2)}
.admin-table tr:last-child td{border-bottom:0}
.admin-table td b{color:var(--text);font-weight:600}
.role-tag{font-size:.72rem;font-weight:700;padding:3px 10px;border-radius:999px;background:var(--glass-2);color:var(--text-2)}
.role-tag.admin{background:rgba(196,241,53,.15);color:var(--lime)}
.btn-sm{padding:6px 12px;font-size:.75rem}
.muted{color:var(--muted)}

@media (max-width:480px){
  .auth-card{padding:28px 20px;border-radius:22px}
  .admin-head{border-radius:22px}
}
