/* Login Page CSS - stili specifici della login page (componenti base da global.css) */

.login-page { min-height: 100vh; display:flex; align-items:center; justify-content:center; padding: var(--space-24); background: linear-gradient(135deg, #003d3e 0%, #005b5c 50%, #238081 100%); }
:root[data-theme="dark"] .login-page { background: linear-gradient(135deg, #062e2f 0%, #0b4a4b 50%, #1a6d6e 100%); }

.login-container { width:100%; max-width: 440px; }
.login-card { background: var(--color-surface); border-radius: var(--radius-lg); padding: var(--space-32); box-shadow: var(--shadow-lg); border: 1px solid var(--color-card-border); }
.login-logo { text-align:center; margin-bottom: var(--space-24); }
.login-logo .logo-img { width: 120px; height: 120px; object-fit: contain; display:inline-block; filter: drop-shadow(0 4px 12px rgba(0,0,0,0.15)); }
.login-title { font-size: var(--font-size-3xl); font-weight: var(--font-weight-bold); text-align:center; margin-bottom: var(--space-24); }
.login-form { display:flex; flex-direction:column; gap: var(--space-16); }

.input-icon { position: relative; }
.input-icon svg { position:absolute; left: var(--space-16); top: 50%; transform: translateY(-50%); pointer-events:none; color: var(--color-text-secondary); }
.form-input { width:100%; padding: var(--space-12) var(--space-16) var(--space-12) 44px; }

.form-check { display:flex; align-items:center; gap: var(--space-12); }
.form-checkbox { width: 18px; height: 18px; accent-color: var(--color-primary); border-radius: var(--radius-sm); }
.error-message { color: var(--color-error); font-size: var(--font-size-sm); }

.btn-block { width:100%; }
.link-secondary { color: var(--color-text-secondary); font-size: var(--font-size-sm); }
.link-secondary:hover { color: var(--color-primary); }
.login-footer { text-align:center; margin-top: var(--space-16); }
.login-info { text-align:center; margin-top: var(--space-24); color: var(--color-text-secondary); font-size: var(--font-size-sm); }

@media (max-width: 768px) {
  .login-page { padding: var(--space-16); }
  .login-card { padding: var(--space-24); }
}
