    /* CAPTCHA custom styling (subtle, minimal, matches form aesthetics) */
    .captcha-wrapper {
      background-color: #f8f9fa;
      border-left: 3px solid #1A2C25;
      padding: 0.85rem 1rem;
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      margin-bottom: 0.5rem;
    }
    .captcha-code {
      font-family: 'Courier New', 'Courier', monospace;
      font-size: 1.8rem;
      font-weight: bold;
      letter-spacing: 6px;
      background: #e9ecef;
      padding: 0.3rem 0.8rem;
      border-radius: 6px;
      color: #1A2C25;
      user-select: none;
      display: inline-block;
      border: 1px solid #dee2e6;
    }
    .captcha-input-group {
      flex: 2;
      min-width: 160px;
    }
    .captcha-input-group .form-control {
      border-radius: 0;
      border: 1px solid #ced4da;
    }
    .captcha-refresh {
      background: none;
      border: 1px solid #adb5bd;
      border-radius: 40px;
      width: 42px;
      height: 42px;
      font-size: 1.2rem;
      color: #2c5a4a;
      transition: all 0.2s;
      cursor: pointer;
      display: inline-flex;
      align-items: center;
      justify-content: center;
    }
    .captcha-refresh:hover {
      background-color: #e2e6ea;
      border-color: #1A2C25;
    }
    .captcha-error {
      font-size: 0.8rem;
      color: #dc3545;
      margin-top: 5px;
    }
    .form-message-global {
      margin-top: 1rem;
      padding: 0.75rem 1rem;
      border-radius: 0;
      font-size: 0.9rem;
    }
    hr {
      background-color: #dee2e6;
    }
    @media (max-width: 768px) {
      .captcha-wrapper {
        flex-direction: column;
        align-items: flex-start;
      }
      .btn-primary-cedar {
        width: 100%;
      }
      .form-wrapper .text-center.mt-4 button {
        width: 100% !important;
      }
    }
    .small.text-secondary {
      font-size: 0.75rem;
    }