/**
 * Auth / guest pages background — device automation theme.
 * Used on login, register, waitlist, password reset (all pages using layouts.app).
 */

/* Override default login-page background so our gradient shows */
body.login-page {
  background: #0f172a !important;
}

/* Base: full-viewport dark gradient with brand accents */
.auth-page-bg,
body.login-page .c-app {
  position: relative;
  min-height: 100vh;
  overflow-x: hidden;
}

.auth-page-bg::before,
body.login-page .c-app::before {
  content: '';
  position: fixed;
  inset: 0;
  z-index: 0;
  background: linear-gradient(
    135deg,
    #0f172a 0%,
    #1e293b 25%,
    #1e1b4b 50%,
    #312e81 75%,
    #0f172a 100%
  );
  background-size: 400% 400%;
  animation: authBgGradient 18s ease infinite;
}

/* Subtle animated gradient shift */
@keyframes authBgGradient {
  0%, 100% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
}

/* Soft glowing orbs — "nodes" / connectivity feel */
.auth-page-bg::after,
body.login-page .c-app::after {
  content: '';
  position: fixed;
  inset: 0;
  z-index: 0;
  background-image:
    radial-gradient(ellipse 80% 50% at 20% 20%, rgba(30, 111, 255, 0.12) 0%, transparent 50%),
    radial-gradient(ellipse 60% 40% at 80% 80%, rgba(124, 58, 237, 0.1) 0%, transparent 50%),
    radial-gradient(ellipse 50% 30% at 60% 10%, rgba(63, 169, 245, 0.08) 0%, transparent 45%);
  pointer-events: none;
}

/* Optional: very subtle grid (automation / graph feel) */
.auth-page-bg .auth-bg-grid,
body.login-page .c-app .auth-bg-grid {
  position: fixed;
  inset: 0;
  z-index: 0;
  background-image:
    linear-gradient(rgba(30, 111, 255, 0.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(30, 111, 255, 0.03) 1px, transparent 1px);
  background-size: 48px 48px;
  pointer-events: none;
}

/* Content above background */
.auth-page-bg .container,
body.login-page .c-app .container {
  position: relative;
  z-index: 1;
}

/* Ensure auth cards stay readable on dark bg */
body.login-page .c-app .row {
  background: transparent;
}
