    body {
      margin: 0;
      padding: 0;
      font-family: 'Plus Jakarta Sans';
      background-color: #f4f6f8;
    }

    /* Styles for specific cards/forms, not global containers */
    .card-dark-bg .card-header,
    .card-dark-bg .card-body {
        background: #33263A;
        color: #fff;
    }

    .card-dark-bg h1,
    .card-dark-bg h3,
    .card-dark-bg label {
      color: #fff;
    }

    .card-dark-bg input[type="password"],
    .card-dark-bg input[type="text"],
    .card-dark-bg input[type="email"],
    .card-dark-bg textarea {
      background-color: #4a3a4d; /* Slightly lighter dark for input fields */
      color: #fff;
      border: 1px solid #5c4b5f;
    }

    .card-dark-bg input[type="password"]::placeholder,
    .card-dark-bg input[type="text"]::placeholder,
    .card-dark-bg input[type="email"]::placeholder,
    .card-dark-bg textarea::placeholder {
        color: #ccc;
    }

    .card-dark-bg .form-control:focus {
        border-color: #FE8723;
        box-shadow: 0 0 0 0.25rem rgba(254, 135, 35, 0.25);
    }

    .card-dark-bg .btn-primary {
      background-color: #FE8723;
      border-color: #FE8723;
    }

    .card-dark-bg .btn-primary:hover {
      background-color: #e07a1f;
      border-color: #e07a1f;
    }

    .card-dark-bg .btn-link {
        color: #FE8723;
    }

    .card-dark-bg .btn-link:hover {
        color: #e07a1f;
    }

    .card-dark-bg .invalid-feedback {
        color: #ff6b6b;
    }

    .card-dark-bg .form-check-input:checked {
        background-color: #FE8723;
        border-color: #FE8723;
    }

    .card-dark-bg .form-check-label {
        color: #fff;
    }

    h1, h3 {
      text-align: center;
      margin-bottom: 1.5rem;
    }

    label {
      display: block;
      margin-bottom: 0.5rem;
      font-weight: 500;
    }

    input[type="password"], input[type="text"] {
      width: 100%;
      padding: 0.6rem;
      margin-bottom: 1.2rem;
      border: 1px solid #ccc;
      border-radius: 6px;
      font-size: 1rem;
    }

    .error {
      color: red;
      font-size: 0.9rem;
      margin-bottom: 1rem;
      display: none;
    }

    button {
      width: 100%;
      padding: 0.75rem;
      background-color: #FE8723;
      color: white;
      font-size: 1rem;
      border: none;
      border-radius: 6px;
      cursor: pointer;
      transition: background 0.2s ease-in-out;
    }

    button:hover {
      background-color: #0056b3;
    }

    .close {
        width: auto;
    }

    .toggle {
      font-size: 0.8rem;
      margin-top: -1rem;
      margin-bottom: 1rem;
      cursor: pointer;
      color: #FE8723;
      text-align: right;
    }

    .banner {
      margin: -2rem -2.5rem -1.5rem -2.5rem;
      overflow: hidden;
      border-top-left-radius: 10px;
      border-top-right-radius: 10px;
    }

    .banner img {
      width: 100%;
      height: auto;
      display: block;
    }

    .capitalize-words,
    .form-control.capitalize-words {
        text-transform: capitalize;
    }