/* ═══════════════════════════════════════════════════════
   AUTH THEMES — login.php / register.php theme overrides
   Base styles remain in auth.css; these override per theme
═══════════════════════════════════════════════════════ */

/* ── THEME: dark (default, no changes) ─────────────────── */
body.auth-theme-dark { /* default, inherits auth.css */ }

/* ══════════════════════════════════════════════════════════
   THEME: glass — Glassmorphism frosted card over colorful blobs
══════════════════════════════════════════════════════════ */
body.auth-theme-glass {
  background: #0e0618;
  min-height: 100vh;
  position: relative;
  overflow-x: hidden;
}
body.auth-theme-glass::before,
body.auth-theme-glass::after {
  content: '';
  position: fixed;
  border-radius: 50%;
  filter: blur(80px);
  pointer-events: none;
  z-index: 0;
}
body.auth-theme-glass::before {
  width: 600px; height: 600px;
  top: -200px; left: -150px;
  background: radial-gradient(circle, rgba(108,92,231,.55), rgba(162,155,254,.2) 60%, transparent);
  animation: glassBlob1 8s ease-in-out infinite alternate;
}
body.auth-theme-glass::after {
  width: 500px; height: 500px;
  bottom: -150px; right: -100px;
  background: radial-gradient(circle, rgba(0,230,118,.35), rgba(0,184,216,.2) 60%, transparent);
  animation: glassBlob2 10s ease-in-out infinite alternate;
}
@keyframes glassBlob1 { 0%{transform:translate(0,0) scale(1)} 100%{transform:translate(80px,60px) scale(1.15)} }
@keyframes glassBlob2 { 0%{transform:translate(0,0) scale(1)} 100%{transform:translate(-60px,-40px) scale(1.2)} }

/* Extra blob */
body.auth-theme-glass .auth-blob-extra {
  display: block; position: fixed;
  width: 400px; height: 400px; border-radius: 50%;
  top: 40%; left: 30%;
  background: radial-gradient(circle, rgba(255,71,87,.25), transparent 70%);
  filter: blur(60px);
  pointer-events: none; z-index: 0;
  animation: glassBlob3 12s ease-in-out infinite alternate;
}
@keyframes glassBlob3 { 0%{transform:translate(0,0)} 100%{transform:translate(-40px,50px)} }

body.auth-theme-glass .auth-wrap,
body.auth-theme-glass .auth-topbar,
body.auth-theme-glass .auth-card { position: relative; z-index: 1; }

body.auth-theme-glass .auth-card {
  background: rgba(15, 10, 30, 0.55) !important;
  backdrop-filter: blur(24px) saturate(180%);
  -webkit-backdrop-filter: blur(24px) saturate(180%);
  border: 1px solid rgba(255,255,255,.12) !important;
  box-shadow: 0 8px 48px rgba(0,0,0,.4), inset 0 1px 0 rgba(255,255,255,.08) !important;
}
body.auth-theme-glass .auth-input {
  background: rgba(255,255,255,.06) !important;
  border-color: rgba(255,255,255,.12) !important;
}
body.auth-theme-glass .auth-btn {
  background: linear-gradient(135deg,rgba(108,92,231,.9),rgba(162,155,254,.8)) !important;
  backdrop-filter: blur(8px);
}

/* ══════════════════════════════════════════════════════════
   THEME: neon — Cyberpunk neon on pure black
══════════════════════════════════════════════════════════ */
body.auth-theme-neon {
  background: #000 !important;
  background-image:
    linear-gradient(rgba(0,255,200,.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0,255,200,.03) 1px, transparent 1px) !important;
  background-size: 32px 32px !important;
}
body.auth-theme-neon .auth-card {
  background: rgba(0,8,16,.92) !important;
  border: 1px solid rgba(0,255,200,.3) !important;
  box-shadow: 0 0 40px rgba(0,255,200,.08), 0 0 80px rgba(0,255,200,.04), inset 0 0 30px rgba(0,255,200,.02) !important;
}
body.auth-theme-neon .auth-title {
  color: #00ffc8 !important;
  text-shadow: 0 0 20px rgba(0,255,200,.6), 0 0 40px rgba(0,255,200,.3);
  font-family: 'Courier New', monospace !important;
  letter-spacing: .08em;
}
body.auth-theme-neon .auth-sub { color: rgba(0,255,200,.5) !important; font-family: monospace; }
body.auth-theme-neon .auth-label { color: rgba(0,255,200,.7) !important; font-family: monospace; font-size: .75rem; letter-spacing: .08em; }
body.auth-theme-neon .auth-input {
  background: rgba(0,20,16,.8) !important;
  border-color: rgba(0,255,200,.25) !important;
  color: #00ffc8 !important;
  font-family: 'Courier New', monospace;
  caret-color: #00ffc8;
}
body.auth-theme-neon .auth-input:focus {
  border-color: #00ffc8 !important;
  box-shadow: 0 0 0 3px rgba(0,255,200,.12) !important;
}
body.auth-theme-neon .auth-input-icon { color: rgba(0,255,200,.5) !important; }
body.auth-theme-neon .auth-btn {
  background: transparent !important;
  border: 1.5px solid #00ffc8 !important;
  color: #00ffc8 !important;
  font-family: monospace !important;
  letter-spacing: .1em;
  text-transform: uppercase;
  box-shadow: 0 0 20px rgba(0,255,200,.15), inset 0 0 20px rgba(0,255,200,.04) !important;
  transition: all .2s !important;
}
body.auth-theme-neon .auth-btn:hover {
  background: rgba(0,255,200,.1) !important;
  box-shadow: 0 0 40px rgba(0,255,200,.3), inset 0 0 20px rgba(0,255,200,.08) !important;
}
body.auth-theme-neon .auth-topbar {
  background: rgba(0,5,10,.95) !important;
  border-bottom: 1px solid rgba(0,255,200,.15) !important;
}
body.auth-theme-neon .auth-topbar-brand span { color: #00ffc8 !important; text-shadow: 0 0 10px rgba(0,255,200,.5); }
body.auth-theme-neon .auth-logo img { filter: drop-shadow(0 0 14px rgba(0,255,200,.5)); }
/* Scanline overlay */
body.auth-theme-neon::after {
  content: '';
  position: fixed; inset: 0; pointer-events: none; z-index: 9999;
  background: repeating-linear-gradient(0deg, transparent, transparent 2px, rgba(0,255,200,.015) 3px, transparent 4px);
}

/* ══════════════════════════════════════════════════════════
   THEME: aurora — Aurora borealis animated gradient
══════════════════════════════════════════════════════════ */
body.auth-theme-aurora {
  background: #040b12 !important;
  position: relative;
}
body.auth-theme-aurora::before {
  content: '';
  position: fixed; inset: 0; pointer-events: none; z-index: 0;
  background:
    radial-gradient(ellipse 140% 60% at 50% -10%, rgba(0,230,118,.18) 0%, transparent 60%),
    radial-gradient(ellipse 80% 50% at 20% 110%, rgba(108,92,231,.2) 0%, transparent 50%),
    radial-gradient(ellipse 60% 40% at 80% 100%, rgba(0,184,216,.15) 0%, transparent 50%);
  animation: auroraShift 12s ease-in-out infinite alternate;
}
@keyframes auroraShift {
  0%   { background-position: 0% 50%;   transform: scaleY(1); }
  50%  { background-position: 100% 50%; transform: scaleY(1.05); }
  100% { background-position: 0% 50%;   transform: scaleY(1); }
}
body.auth-theme-aurora .auth-wrap,
body.auth-theme-aurora .auth-topbar { position: relative; z-index: 1; }
body.auth-theme-aurora .auth-card {
  background: rgba(4,18,22,.85) !important;
  border: 1px solid rgba(0,230,118,.18) !important;
  box-shadow: 0 8px 48px rgba(0,0,0,.5), 0 0 60px rgba(0,230,118,.05) !important;
  backdrop-filter: blur(12px);
}
body.auth-theme-aurora .auth-title {
  background: linear-gradient(135deg, #00e676, #00bcd4, #6c5ce7) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
}
body.auth-theme-aurora .auth-btn {
  background: linear-gradient(135deg, #00b894, #00e676) !important;
  color: #0a1a10 !important;
  font-weight: 800 !important;
}
body.auth-theme-aurora .auth-input:focus {
  border-color: #00e676 !important;
  box-shadow: 0 0 0 3px rgba(0,230,118,.14) !important;
}
body.auth-theme-aurora .auth-topbar {
  background: rgba(4,18,22,.9) !important;
  border-bottom: 1px solid rgba(0,230,118,.12) !important;
}

/* ══════════════════════════════════════════════════════════
   THEME: classic — Clean white / professional light
══════════════════════════════════════════════════════════ */
body.auth-theme-classic {
  background: #f0f2f8 !important;
}
body.auth-theme-classic .auth-topbar {
  background: #fff !important;
  border-bottom: 1px solid #e0e4ee !important;
  box-shadow: 0 1px 8px rgba(0,0,0,.06) !important;
}
body.auth-theme-classic .auth-topbar-brand span { color: #1a1d2e !important; }
body.auth-theme-classic .auth-topbar a { color: #5c6488 !important; }
body.auth-theme-classic .auth-topbar .atcta {
  background: #4a6cf7 !important;
  color: #fff !important;
  border-radius: 8px !important;
  padding: 6px 14px !important;
}
body.auth-theme-classic .auth-card {
  background: #ffffff !important;
  border: 1px solid #e0e4ee !important;
  box-shadow: 0 4px 24px rgba(0,0,0,.08) !important;
  color: #1a1d2e !important;
}
body.auth-theme-classic .auth-title { color: #1a1d2e !important; }
body.auth-theme-classic .auth-sub   { color: #5c6488 !important; }
body.auth-theme-classic .auth-sub .sitename { color: #4a6cf7 !important; }
body.auth-theme-classic .auth-label { color: #3a3f5e !important; }
body.auth-theme-classic .auth-label-hint { color: #888 !important; }
body.auth-theme-classic .auth-input {
  background: #f6f8ff !important;
  border: 1.5px solid #d4d9ee !important;
  color: #1a1d2e !important;
}
body.auth-theme-classic .auth-input::placeholder { color: #9ca3c0 !important; }
body.auth-theme-classic .auth-input:focus {
  border-color: #4a6cf7 !important;
  box-shadow: 0 0 0 3px rgba(74,108,247,.12) !important;
  background: #fff !important;
}
body.auth-theme-classic .auth-input-icon { color: #9ca3c0 !important; }
body.auth-theme-classic .auth-eye-btn    { color: #9ca3c0 !important; }
body.auth-theme-classic .auth-btn {
  background: linear-gradient(135deg, #4a6cf7, #6c5ce7) !important;
  color: #fff !important;
}
body.auth-theme-classic .auth-btn:hover { filter: brightness(1.08) !important; }
body.auth-theme-classic .auth-switch      { color: #5c6488 !important; }
body.auth-theme-classic .auth-switch a    { color: #4a6cf7 !important; }
body.auth-theme-classic .auth-forgot a    { color: #4a6cf7 !important; }
body.auth-theme-classic .auth-divider span {
  background: #fff !important;
  color: #9ca3c0 !important;
}
body.auth-theme-classic .auth-divider::before { background: #e0e4ee !important; }
body.auth-theme-classic .auth-alert-error {
  background: rgba(255,71,87,.07) !important;
  border-color: rgba(255,71,87,.2) !important;
  color: #c0392b !important;
}
body.auth-theme-classic .auth-alert-success {
  background: rgba(0,184,92,.07) !important;
  border-color: rgba(0,184,92,.2) !important;
  color: #1a7a45 !important;
}
/* Classic captcha box */
body.auth-theme-classic .captcha-box {
  background: #f6f8ff !important;
  border-color: #d4d9ee !important;
}
body.auth-theme-classic .captcha-question { color: #1a1d2e !important; }
