  :root {
      --primary-color: #1f2937;
      --accent-color: #E53A3C;
      --card-bg: #f1f5f9;
      --border-color: #e5e7eb;
      --text-secondary: #6b7280;
  }

  body {
      font-family: 'Barlow', sans-serif;
      min-height: 100vh;
  }

  .auth-container {
      min-height: 100vh;
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 4rem;
      padding-top: 10rem;
  }

  .auth-card {
      background: white;
      border-radius: 1rem;
      box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
      padding: 3rem;
      width: 100%;
      max-width: 500px;
      border: 1px solid var(--border-color);
  }

  .auth-header {
      text-align: center;
      margin-bottom: 2rem;
  }

  .auth-title {
      font-weight: 700;
      font-size: 2rem;
      color: var(--primary-color);
      margin-bottom: 0.5rem;
  }

  .auth-subtitle {
      color: var(--text-secondary);
      font-size: 1rem;
  }

  .form-floating {
      margin-bottom: 1.5rem;
  }

  .form-control {
      border: 2px solid var(--border-color);
      border-radius: 0.5rem;
      padding: 0.875rem 1rem;
      font-size: 1rem;
      transition: all 0.2s ease;
      background-color: var(--card-bg);
  }

  .form-control:focus {
      border-color: var(--accent-color);
      box-shadow: 0 0 0 3px rgba(139, 92, 246, 0.1);
      background-color: white;
  }

  .form-floating>label {
      color: var(--text-secondary);
      font-weight: 500;
  }

  .password-field {
      position: relative;
  }

  .password-toggle {
      position: absolute;
      right: 1rem;
      top: 50%;
      transform: translateY(-50%);
      background: none;
      border: none;
      color: var(--text-secondary);
      cursor: pointer;
      z-index: 10;
  }

  .btn-primary-login {
      background-color: var(--accent-color);
      border-color: var(--accent-color);
      border-radius: 0.5rem;
      padding: 0.875rem 2rem;
      font-weight: 600;
      font-size: 1rem;
      transition: all 0.2s ease;
      width: 100%;
      color: #FFFFFF;
  }

  .btn-primary-login:hover {
      background-color: #E53A3C;
      border-color: #E53A3C;
      transform: translateY(-1px);
  }

  .forgot-password {
      color: var(--accent-color);
      text-decoration: none;
      font-weight: 500;
      transition: color 0.2s ease;
  }

  .forgot-password:hover {
      color: #E53A3C;
  }

  .divider {
      text-align: center;
      margin: 2rem 0;
      position: relative;
      color: var(--text-secondary);
  }

  .divider::before {
      content: '';
      position: absolute;
      top: 50%;
      left: 0;
      right: 0;
      height: 1px;
      background-color: var(--border-color);
  }

  .divider span {
      background-color: white;
      padding: 0 1rem;
  }

  .signup-link {
      text-align: center;
      margin-top: 2rem;
      color: var(--text-secondary);
  }

  .signup-link a {
      color: var(--accent-color);
      text-decoration: none;
      font-weight: 600;
  }

  .signup-link a:hover {
      color: black;
  }

  .security-badge {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 0.5rem;
      color: var(--text-secondary);
      font-size: 0.875rem;
      margin-top: 1rem;
  }

  .remember-me {
      display: flex;
      align-items: center;
      justify-content: space-between;
      margin-bottom: 1.5rem;
  }

  .form-check-input:checked {
      background-color: var(--accent-color);
      border-color: var(--accent-color);
  }

  @media (max-width: 576px) {
      .auth-container {
          padding-left: 0 !important;
          padding-right: 0 !important;
      }

      .auth-card {
          padding: 2rem 1.5rem;
          margin: 1rem;
      }

      .auth-title {
          font-size: 1.75rem;
      }
  }