/* Lost Communications Bullhorn Apply — application form
   Intentionally light-touch: inherits the theme's brand variables where present
   (--ps-color-primary etc. from the progression-search-child theme) and falls back
   to neutral defaults so the form is usable on any theme. */

.lostcom-bullhorn-apply-form {
    margin: 2rem 0;
    padding: 1.75rem;
    border: 1px solid #e3e6ea;
    border-radius: 8px;
    background: #fff;
}

.lostcom-bullhorn-apply-form .lcbh-form-title {
    margin: 0 0 1rem;
    font-size: 1.35rem;
}

.lcbh-form .lcbh-field {
    margin-bottom: 1rem;
}

.lcbh-form label {
    display: block;
    font-weight: 600;
    margin-bottom: 0.35rem;
}

.lcbh-form .lcbh-field-checkbox label {
    font-weight: 400;
    display: flex;
    gap: 0.5rem;
    align-items: flex-start;
}

.lcbh-form input[type="text"],
.lcbh-form input[type="email"],
.lcbh-form input[type="tel"],
.lcbh-form input[type="url"],
.lcbh-form input[type="file"],
.lcbh-form textarea {
    width: 100%;
    max-width: 100%;
    padding: 0.6rem 0.75rem;
    border: 1px solid #c7ccd1;
    border-radius: 5px;
    font-size: 1rem;
    box-sizing: border-box;
}

.lcbh-form input:focus,
.lcbh-form textarea:focus {
    outline: 2px solid var(--ps-color-primary, #1a4d8e);
    outline-offset: 1px;
    border-color: var(--ps-color-primary, #1a4d8e);
}

.lcbh-form .lcbh-req {
    color: #c5221f;
}

.lcbh-button {
    background: var(--ps-color-primary, #1a4d8e);
    color: #fff;
    border: 0;
    padding: 0.75rem 1.6rem;
    border-radius: 5px;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    transition: filter 0.15s ease;
}

.lcbh-button:hover { filter: brightness(1.08); }
.lcbh-button[disabled] { opacity: 0.6; cursor: progress; }

.lcbh-notice {
    padding: 0.85rem 1rem;
    border-radius: 5px;
    margin-bottom: 1.25rem;
    font-size: 0.95rem;
}
.lcbh-notice-success { background: #e6f4ea; color: #137333; border: 1px solid #b7dfc2; }
.lcbh-notice-error   { background: #fce8e6; color: #c5221f; border: 1px solid #f3c0bd; }

.lcbh-field-error input,
.lcbh-field-error textarea { border-color: #c5221f; }
.lcbh-inline-error { color: #c5221f; font-size: 0.85rem; margin-top: 0.25rem; }
