:root { --primary: #00f2ff; --dark: #0f172a; --glass: rgba(255, 255, 255, 0.05); }
body { background: var(--dark); }

/* Auth card layout used by register and login pages */
.auth-wrapper { min-height: calc(100vh - 120px); display: grid; place-items: center; padding: 2rem; }
.auth-card { background: var(--glass); backdrop-filter: blur(20px); border: 1px solid rgba(255,255,255,0.08); padding: 2.5rem; border-radius: 20px; width: 100%; max-width: 480px; color: #fff; }
.auth-card h1, .auth-card h2 { font-family: 'Montserrat', sans-serif; margin-bottom: 1.25rem; text-align: center; }
.field, .form-group { margin-bottom: 0.9rem; }
label { display: block; font-size: 0.85rem; color: #94a3b8; margin-bottom: 0.4rem; }
input[type="text"], input[type="email"], input[type="password"], .form-control, .input-field { width: 100%; background: rgba(0,0,0,0.25); border: 1px solid rgba(255,255,255,0.06); padding: 0.75rem; border-radius: 8px; color: #fff; }
.btn-auth { width: 100%; margin-top: 0.8rem;  }
.btn-auth, .btn-primary { background: var(--primary); border: none; padding: 0.95rem; border-radius: 8px; font-weight: 700; cursor: pointer; color: #041022; }
.link { text-align: center; margin-top: 1rem; font-size: 0.92rem; color: #94a3b8; }
.link a { color: var(--primary); text-decoration: none; }
.inline-errors { margin-top: 0.8rem; }
.alert { color: #071023; background: #fde68a; border-radius: 6px; padding: .6rem .9rem; }

/* Responsive tweaks */
@media (max-width: 480px) {
  .auth-card { padding: 1.5rem; border-radius: 14px; }
}
