  /* Sfondo pagina generale */
  .auth-page {
    min-height: 100vh;
    background: #e5edf8;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px;
  }

  /* Contenitore principale “card grande” */
  .auth-shell {
    width: 100%;
    max-width: 1120px;
  }

  .auth-layout {
    background: #ffffff;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 18px 40px rgba(15, 23, 42, 0.15);
  }

  /* Colonna sinistra (form) */
  .auth-panel-left {
    padding: 40px 32px;
  }

  @media (min-width: 768px) {
    .auth-panel-left {
      padding: 48px 56px;
    }
  }

  .auth-logo {
    max-width: auto;
    max-height: 150px;
   
  }

  .auth-welcome-title {
    font-size: 1.6rem;
    font-weight: 600;
    margin-bottom: .25rem;
  }

  .auth-welcome-sub {
    font-size: 0.95rem;
    color: #6b7280;
  }

  .auth-label {
    font-weight: 500;
    font-size: 0.93rem;
  }

  .auth-input::placeholder {
    color: #9ca3af;
    font-size: 0.9rem;
  }

  .auth-footer-small {
    font-size: 0.78rem;
    color: #9ca3af;
  }

  /* Colonna destra (illustrazione) */
  .auth-panel-right {
    background: linear-gradient(135deg, #1674ff, #39b0ff);
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
  }

  .auth-panel-right::before {
    content: "";
    position: absolute;
    inset: 18px;
    border-radius: 24px;
    border: 1px solid rgba(255, 255, 255, 0.15);
  }

  .auth-hero-img {
    position: relative;
    max-width: 90%;
    height: auto;
    z-index: 1;
  }

  @media (max-width: 767.98px) {
    .auth-page {
      padding: 8px;
    }
    .auth-panel-left {
      padding: 28px 20px 32px;
    }
  }