 @import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');
    * { font-family: 'Inter', sans-serif; }

    :root {
      --primary-gradient: linear-gradient(to right, #2563eb, #4f46e5);
    }

    .gradient-bg {
      background: var(--primary-gradient);

    }

    .gradient-text {
      background: var(--primary-gradient);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      background-clip: text;
    }

    .input-error {
      border-color: #f56565;
      box-shadow: 0 0 0 3px rgba(245, 101, 101, 0.1);
    }

    .error-message {
      opacity: 0;
      transform: translateY(-5px);
      transition: all 0.3s ease;
    }

    .error-message.show {
      opacity: 1;
      transform: translateY(0);
    }

    .btn-disabled {
      opacity: 0.7;
      cursor: not-allowed;
    }

    .password-toggle {
      cursor: pointer;
      transition: color 0.2s ease;
    }

    .password-toggle:hover {
      color: #667eea;
    }

    @media (min-width: 1024px) {
      .form-grid {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 1.25rem;
      }

      .form-grid > div:nth-child(1),
      .form-grid > div:nth-child(2) {
        grid-column: span 1;
      }

      .form-grid > div:nth-child(3) {
        grid-column: span 2;
      }

      .form-grid > div:nth-child(4),
      .form-grid > div:nth-child(5) {
        grid-column: span 1;
      }

      .form-grid > div:nth-child(6),
      .form-grid > div:nth-child(7) {
        grid-column: span 1;
      }
    }
