/* ======================================
   Container pagina login
   - Fullscreen con gradient di sfondo
   - Centratore verticale/orizzontale della card
   ====================================== */
.login-page {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 100vh;
  padding: 1rem;
  background: linear-gradient(
    135deg,
    var(--primary-color),
    var(--secondary-color)
  );
}

/* ======================================
   Card di login
   - Sfondo bianco, ombra e bordi arrotondati
   - Dimensioni responsive per mobile e desktop
   ====================================== */
.login-card {
  background-color: #fff;
  padding: 2rem;
  max-width: 380px;
  width: 100%;
  border-radius: var(--border-radius);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  text-align: center;
}

/* ======================================
   Titolo card
   - Colore primario e margini per separazione
   ====================================== */
.login-card h2 {
  margin-bottom: 1.5rem;
  font-size: 1.75rem;
  color: var(--primary-color);
}

/* ======================================
   Form-group: wrapper dei campi
   - Spaziatura verticale e allineamento label
   ====================================== */
.form-group {
  text-align: left;
  margin-bottom: 1.25rem;
}
.form-group label {
  display: block;
  margin-bottom: 0.5rem;
  font-weight: 600;
}

/* ======================================
   Input di testo
   - Padding generoso, bordo e transizione su focus
   ====================================== */
.form-group input {
  width: 100%;
  padding: 0.75rem 1rem;
  font-size: 1rem;
  border: 1px solid #ccc;
  border-radius: var(--border-radius);
  transition: border-color var(--transition);
}
.form-group input:focus {
  outline: none;
  border-color: var(--primary-color);
}

/* ======================================
   Bottone di submit
   - Larghezza piena, dimensione testo maggiore
   ====================================== */
.login-card .btn-primary {
  width: 100%;
  padding: 0.6rem 0;
  font-size: 1.1rem;
  font-weight: 600;
}

/* ======================================
   Invito alla registrazione
   - Testo descrittivo e link stilizzato come button
   ====================================== */
.signup-text {
  margin-top: 1rem;
  font-size: 0.95rem;
  color: #666;
}
.signup-text .btn-link {
  background: none;
  border: none;
  color: var(--primary-color);
  text-decoration: underline;
  padding: 0;
  font-size: 0.95rem;
  cursor: pointer;
  transition: color var(--transition);
}
.signup-text .btn-link:hover {
  color: var(--secondary-color);
}

/* ======================================
   Responsive adjustments
   - Riduce padding della card su schermi stretti
   ====================================== */
@media (max-width: 600px) {
  .login-card {
    padding: 1rem;
  }
  .login-card h2 {
    font-size: 1.5rem;
  }
}
