/* SpaceAI Ops Custom Login Page Styles */

/* Background gradient */
body.frappe-login-page {
  background: linear-gradient(135deg, #059669 0%, #047857 50%, #065f46 100%) !important;
  min-height: 100vh;
}

/* Login card */
.frappe-login-page .page-card {
  background: white !important;
  border-radius: 1rem !important;
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25) !important;
  border: none !important;
  padding: 2.5rem !important;
  max-width: 420px !important;
}

/* Title/Brand */
.frappe-login-page .page-card-head {
  text-align: center !important;
  margin-bottom: 1.5rem !important;
}

.frappe-login-page .page-card-head .page-card-title {
  color: #059669 !important;
  font-size: 1.75rem !important;
  font-weight: 700 !important;
}

/* Form inputs */
.frappe-login-page .form-control {
  border: 1px solid #e5e7eb !important;
  border-radius: 0.5rem !important;
  padding: 0.75rem 1rem !important;
  font-size: 1rem !important;
  transition: all 0.2s !important;
}

.frappe-login-page .form-control:focus {
  border-color: #059669 !important;
  box-shadow: 0 0 0 3px rgba(5, 150, 105, 0.15) !important;
  outline: none !important;
}

/* Labels */
.frappe-login-page .form-group label {
  color: #374151 !important;
  font-weight: 500 !important;
  margin-bottom: 0.5rem !important;
}

/* Login button */
.frappe-login-page .btn-primary,
.frappe-login-page .btn-primary-dark {
  background: linear-gradient(135deg, #059669, #047857) !important;
  border: none !important;
  border-radius: 0.5rem !important;
  padding: 0.75rem 1.5rem !important;
  font-weight: 600 !important;
  font-size: 1rem !important;
  width: 100% !important;
  transition: all 0.2s !important;
}

.frappe-login-page .btn-primary:hover,
.frappe-login-page .btn-primary-dark:hover {
  background: linear-gradient(135deg, #047857, #065f46) !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 12px rgba(5, 150, 105, 0.4) !important;
}

/* Links */
.frappe-login-page a {
  color: #059669 !important;
}

.frappe-login-page a:hover {
  color: #047857 !important;
  text-decoration: underline !important;
}

/* Forgot password link */
.frappe-login-page .forgot-password-message {
  text-align: center !important;
  margin-top: 1rem !important;
}

/* Error messages */
.frappe-login-page .alert-danger {
  background-color: #fef2f2 !important;
  border: 1px solid #fecaca !important;
  color: #dc2626 !important;
  border-radius: 0.5rem !important;
}

/* Footer text */
.frappe-login-page .page-footer {
  color: rgba(255, 255, 255, 0.8) !important;
  text-align: center !important;
  margin-top: 2rem !important;
}

/* Logo placeholder */
.frappe-login-page .page-card::before {
  content: '';
  display: block;
  width: 80px;
  height: 80px;
  margin: 0 auto 1.5rem;
  background: linear-gradient(135deg, #059669, #047857);
  border-radius: 1rem;
}

/* Powered by text */
.frappe-login-page .powered-by {
  color: rgba(255, 255, 255, 0.7) !important;
  font-size: 0.875rem !important;
  text-align: center !important;
  margin-top: 1.5rem !important;
}

/* Social login buttons */
.frappe-login-page .social-logins .btn {
  border-radius: 0.5rem !important;
  margin-bottom: 0.5rem !important;
}

/* Divider */
.frappe-login-page .or-divider {
  color: #9ca3af !important;
  margin: 1.5rem 0 !important;
}

/* Hide Frappe branding if desired */
.frappe-login-page .powered {
  opacity: 0.5;
}

/* Mobile responsiveness */
@media (max-width: 480px) {
  .frappe-login-page .page-card {
    margin: 1rem !important;
    padding: 1.5rem !important;
  }
}
