
/* Selector is deliberately doubled (.cf-company-filter-form.cf-company-filter-form) and
   every layout property is !important. This form renders inside the theme's .cf-page-wrap
   wrapper, which carries a later, higher-priority fallback rule for ANY <form> inside it
   (".cf-page-wrap form { grid-template-columns:repeat(12,…) !important }" in style.css,
   intended for raw shortcode markup with no dedicated class). Without matching or beating
   that rule's specificity, this form's intended 2-column layout was silently discarded in
   favour of an unstyled 12-column grid, collapsing every field to ~1/12 of the row width. */
.cf-company-filter-form.cf-company-filter-form {
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:12px !important;
    align-items:end !important;
    margin:0 !important;
}
.cf-company-filter-form.cf-company-filter-form #cf-company-search { grid-column:1 / -1 !important; }
.cf-company-filter-form.cf-company-filter-form .cf-inline-check { align-self:center !important; }
/* Self-contained sizing: this form is not inside .cf-card and its inputs carry no
   type="text" attribute, so it cannot rely on the theme's shared .cf-card input rules —
   without this it was falling back to bare, unstyled, browser-default-width form controls. */
.cf-company-filter-form.cf-company-filter-form input,
.cf-company-filter-form.cf-company-filter-form select {
    width:100% !important;
    min-width:0 !important;
    min-height:46px !important;
    box-sizing:border-box !important;
    padding:11px 13px !important;
    border:1px solid #cfd8e6 !important;
    border-radius:9px !important;
    background:#fff !important;
    color:#14233f !important;
    font-size:14px !important;
    grid-column:auto !important;
}
.cf-company-filter-form.cf-company-filter-form input:focus,
.cf-company-filter-form.cf-company-filter-form select:focus {
    outline:none;
    border-color:#244da6 !important;
    box-shadow:0 0 0 3px rgba(36,77,166,.10) !important;
}
.cf-company-filter-form.cf-company-filter-form .cf-btn,
.cf-company-filter-form.cf-company-filter-form button {
    grid-column:auto !important;
}
@media (max-width:700px){
    .cf-company-filter-form.cf-company-filter-form{grid-template-columns:1fr !important;}
    .cf-company-filter-form.cf-company-filter-form #cf-company-search{grid-column:auto !important;}
}
/* Honeypot field for public forms (e.g. Contact): present in the markup for bots that
   fill in every field, invisible and unreachable for real visitors and screen readers. */
.cf-hp-field { position:absolute !important; left:-9999px !important; top:-9999px !important; width:1px; height:1px; overflow:hidden; }

.cf-video-recorder {
    overflow:visible !important;
}
.cf-video-stage {
    position:relative;
    background:#0f172a;
    border-radius:14px;
    min-height:240px;
    overflow:hidden;
}
#cf-video-preview {
    display:block;
    width:100%;
    max-height:420px;
    background:#0f172a;
}
#cf-video-placeholder {
    position:absolute;
    inset:0;
    display:grid;
    place-items:center;
    color:#94a3b8;
    pointer-events:none;
}
.cf-video-controls {
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    align-items:center;
    margin:14px 0;
}
.cf-video-controls .cf-btn,
.cf-video-recorder .cf-btn {
    pointer-events:auto !important;
    cursor:pointer !important;
}
.cf-page-wrap form#cf-video-form,
.cf-app-shell form#cf-video-form,
.cf-candidate-portal form#cf-video-form,
.cf-platform-page form#cf-video-form,
#cf-video-form.cf-video-form {
    display:flex !important;
    flex-direction:column !important;
    grid-template-columns:none !important;
    gap:12px !important;
    align-items:stretch !important;
    max-width:640px !important;
    width:100% !important;
    margin:0 !important;
}
#cf-video-form input[type=hidden],
#cf-video-form input[type=file] {
    display:none !important;
}
#cf-video-form #cf-submit-video,
#cf-video-form .cf-video-share {
    pointer-events:auto !important;
    min-height:46px !important;
    width:max-content !important;
    max-width:100% !important;
    white-space:nowrap !important;
    align-self:flex-start !important;
    opacity:1 !important;
    cursor:pointer !important;
}
#cf-video-form #cf-submit-video[aria-disabled="true"] {
    opacity:.72 !important;
}
#cf-video-form #cf-submit-video.is-ready,
#cf-video-form #cf-submit-video[aria-disabled="false"] {
    opacity:1 !important;
}
.cf-video-status.error {
    color:#b42318;
    font-weight:700;
}
.cf-username-locked {
    display:flex;
    flex-direction:column;
    gap:6px;
    margin:10px 0 0;
}
.cf-username-locked input {
    background:#f4f6fa !important;
    color:#5c6578 !important;
    cursor:not-allowed;
}
