/* Login page styles extracted from client/login.html */
.login-hero { position: relative; min-height: calc(100vh - 80px); display: flex; align-items: center; justify-content: center; overflow: hidden; flex-direction: column; }
#login-wireframe { position: absolute; inset: 0; width: 100%; height: 100%; display: block; z-index: 0; }
.login-card-wrap { position: relative; z-index: 1; width: 100%; max-width: 520px; }
.login-card-wrap .card { backdrop-filter: blur(6px); background: rgba(20,24,28,0.86); box-shadow: 0 12px 36px rgba(0,0,0,0.35); border: 1px solid rgba(255,255,255,0.06); color: #e6ebf2; }
.login-card-wrap h2 { color: #e9eef6; letter-spacing: 0.2px; }
.login-card-wrap .form-label { color: #aeb8c6; font-weight: 600; }
.login-card-wrap .form-control { background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.12); color: #e9eef6; }
.login-card-wrap .form-control:focus { background: rgba(255,255,255,0.08); border-color: #EF7D4E; box-shadow: 0 0 0 0.2rem rgba(239,125,78,0.25); color: #ffffff; }
.login-card-wrap .form-control::placeholder { color: #94a0b2; }
.login-card-wrap .btn-primary { background: #EF7D4E; border-color: #EF7D4E; box-shadow: 0 6px 16px rgba(239,125,78,0.35); font-weight: 700; }
.login-card-wrap .btn-primary:hover { background: #e66f3c; border-color: #e66f3c; }
.login-card-wrap .btn-primary:active, .login-card-wrap .btn-primary:focus { background: #de6a39; border-color: #de6a39; box-shadow: 0 0 0 0.2rem rgba(239,125,78,0.35); }
.login-card-wrap .alert { background: rgba(239,125,78,0.12); color: #ffd9c9; border-color: rgba(239,125,78,0.35); }
/* Hide global navbar on this page */
nav.navbar { display: none !important; }
/* Card logo */
.login-logo { display: block; margin: 0 auto 1px; width: clamp(150px, 24vw, 280px); height: auto; opacity: 0.98; filter: drop-shadow(0 6px 16px rgba(239,125,78,0.2)); }
.login-subcopy { color: #9aa6b8; font-size: 0.95rem; margin-top: 10px; opacity: 0.9; }
@media (max-width: 576px) { .login-card-wrap { padding: 0 16px; } }
@media (prefers-reduced-motion: reduce) { #login-wireframe { display: none; } }
/* VMI Spotlight Text */
.vmi-spotlight { position: relative; width: 100%; display: flex; align-items: center; justify-content: center; pointer-events: none; z-index: 0; margin-bottom: 12px; }
.vmi-spotlight h1 { font-family: 'Arial Black', sans-serif; font-weight: 900; text-transform: uppercase; font-size: 9vw; line-height: 1; margin: 0; white-space: nowrap; user-select: none; letter-spacing: 0.04em; }
.vmi-spotlight .dim-text { color: #14181C; opacity: 0.8; filter: blur(1.5px); }
.vmi-spotlight .light-text { color: transparent; background-image: radial-gradient(circle 300px at var(--x, -50%) var(--y, -50%), rgba(239,125,78,1) 0%, rgba(239,125,78,0.15) 60%, transparent 100%); background-clip: text; -webkit-background-clip: text; opacity: 0; transition: opacity 700ms ease-in-out; }
.vmi-spotlight .light-text.no-glow { background-image: none; }
/* Mobile tuning: larger word and wider glow to avoid cut-off */
@media (max-width: 576px) {
  .vmi-spotlight h1 { font-size: clamp(56px, 18vw, 112px); }
  .vmi-spotlight .light-text { background-image: radial-gradient(circle 380px at var(--x, -50%) var(--y, -50%), rgba(239,125,78,1) 0%, rgba(239,125,78,0.15) 60%, transparent 100%); }
}
