/* Ajustes solicitados para cadastro, cards, visualização e compartilhamento de vagas. */

/* 1. Mantém visível a barra de edição da descrição da vaga. */
#submit-job-form .fieldset-job_description .wp-editor-wrap,
#submit-job-form .fieldset-job_description .mce-tinymce,
#submit-job-form .fieldset-job_description .mce-top-part,
#submit-job-form .fieldset-job_description .mce-toolbar-grp{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
}
#submit-job-form .fieldset-job_description .mce-toolbar-grp{
    min-height:38px!important;
}

/* 5. Usa o selo verde NOVA que já existe no card e mantém compartilhar no canto oposto. */
.job_listing{
    position:relative;
}
.job_listing .vdv-existing-new-badge{
    position:absolute!important;
    left:10px!important;
    top:10px!important;
    right:auto!important;
    bottom:auto!important;
    z-index:12!important;
    margin:0!important;
    transform:none!important;
}
.job_listing .vdv-hide-old-new-badge{
    display:none!important;
}
.job_listing .vdv-card-share{
    position:absolute;
    top:10px;
    right:10px;
    z-index:12;
    width:30px;
    height:30px;
    min-width:30px;
    padding:0;
    border:1px solid rgba(11,37,69,.14);
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#fff;
    color:#0b2545;
    box-shadow:0 4px 12px rgba(0,0,0,.10);
    cursor:pointer;
}
.job_listing .vdv-card-share svg{
    display:block;
    width:17px;
    height:17px;
    fill:none;
    stroke:currentColor;
    shape-rendering:geometricPrecision;
}

/* 5. Botão compartilhar ao lado do candidatar-se na vaga publicada. */
.single_job_listing .job_application.application{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:10px;
}
.single_job_listing .job_application.application .application_details{
    flex-basis:100%;
}
.vdv-single-share.button,
.vdv-single-image.button{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:7px!important;
}
.vdv-single-share svg{
    display:block;
    width:17px;
    height:17px;
    fill:none;
    stroke:currentColor;
    shape-rendering:geometricPrecision;
}
.vdv-application-phone{
    margin:8px 0 0;
}

/* 6. Pré-visualização usa o mesmo bloco da vaga publicada, sem caixa extra conflitante. */
#job_preview .job_listing_preview.single_job_listing{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
}
#job_preview .job_listing_preview.single_job_listing>h1{
    display:none!important;
}
#job_preview .job_listing_preview_title{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:10px;
    margin-bottom:24px;
}
#job_preview .job_listing_preview_title h2{
    width:100%;
    order:-1;
    margin:0 0 8px;
}

/* 7. Botões após publicação, posicionados junto ao link existente de ver vaga. */
.vdv-submitted-action-row{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:10px;
    margin-top:14px;
}
.vdv-submitted-action-row>a,
.vdv-submitted-action-row>button{
    margin:0!important;
}
.vdv-submitted-extra-actions{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:10px;
    margin-top:14px;
}
.vdv-submitted-extra-actions>button{
    margin:0!important;
}


.vdv-image-modal{
    box-sizing:border-box;
    position:fixed;
    inset:0;
    z-index:999999;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:24px;
    background:rgba(3,15,30,.82);
}
.vdv-image-modal[hidden]{display:none!important}
.vdv-image-modal *{box-sizing:border-box}
.vdv-image-modal__dialog{
    position:relative;
    width:min(560px,calc(100vw - 32px));
    max-width:560px;
    max-height:92vh;
    overflow:auto;
    border-radius:20px;
    background:#fff;
    padding:26px;
    box-shadow:0 24px 70px rgba(0,0,0,.28);
}
.vdv-image-modal__dialog h3{
    margin:0 46px 6px 0;
    color:#0b2545;
    font-size:22px;
    line-height:1.2;
}
.vdv-image-modal__hint{
    margin:0 46px 20px 0;
    color:#667085;
    font-size:13px;
    line-height:1.45;
}
.vdv-image-modal__close{
    position:absolute;
    right:18px;
    top:18px;
    z-index:2;
    width:36px;
    height:36px;
    border:1px solid #e4e7ec;
    border-radius:50%;
    background:#fff;
    color:#0b2545;
    font-size:23px;
    line-height:1;
    cursor:pointer;
    box-shadow:0 3px 12px rgba(0,0,0,.10);
}
.vdv-story-template-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
}
.vdv-story-template-option{
    appearance:none;
    -webkit-appearance:none;
    min-height:76px;
    display:flex;
    align-items:center;
    gap:12px;
    width:100%;
    padding:12px 14px;
    border:1px solid #dce3ec;
    border-radius:15px;
    background:#fff;
    color:#0b2545;
    text-align:left;
    cursor:pointer;
    transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease;
}
.vdv-story-template-option:hover,
.vdv-story-template-option:focus-visible{
    border-color:#00a3ff;
    box-shadow:0 8px 22px rgba(0,93,180,.12);
    transform:translateY(-1px);
    outline:none;
}
.vdv-story-template-option:disabled{
    opacity:.62;
    cursor:wait;
    transform:none;
}
.vdv-story-template-option strong{
    font-size:14px;
    line-height:1.2;
}
.vdv-story-template-swatch{
    --vdv-story-color:#00a3ff;
    --vdv-story-accent:var(--vdv-story-color);
    width:42px;
    height:42px;
    flex:0 0 42px;
    border-radius:12px;
    border:2px solid rgba(255,255,255,.9);
    background:linear-gradient(135deg,var(--vdv-story-color) 0 62%,var(--vdv-story-accent) 62% 100%);
    box-shadow:0 0 0 1px rgba(11,37,69,.10),0 5px 12px rgba(0,0,0,.12);
}
.vdv-story-template-option.is-loading .vdv-story-template-swatch{
    animation:vdvStoryPulse .75s ease-in-out infinite alternate;
}

.vdv-story-template-option.is-selected{
    border-color:#00a3ff;
    box-shadow:0 0 0 3px rgba(0,163,255,.14),0 8px 22px rgba(0,93,180,.12);
}
.vdv-story-generate-btn{
    width:100%;
    min-height:48px;
    margin-top:16px!important;
    display:flex!important;
    align-items:center;
    justify-content:center;
    font-weight:800!important;
}
.vdv-story-generate-btn:disabled{
    opacity:.48;
    cursor:not-allowed;
}
.vdv-story-generate-status{
    min-height:20px;
    margin-top:15px;
    color:#475467;
    font-size:13px;
    font-weight:700;
    text-align:center;
}
@keyframes vdvStoryPulse{
    from{transform:scale(.93);opacity:.72}
    to{transform:scale(1.04);opacity:1}
}

@media(max-width:767px){
    .job_listing .vdv-new-badge{top:7px;left:7px}
    .job_listing .vdv-card-share{top:7px;right:7px}
    .single_job_listing .job_application.application .application_button,
    .single_job_listing .job_application.application .vdv-single-share,
    .single_job_listing .job_application.application .vdv-single-image{width:100%}
    .vdv-submitted-action-row{align-items:stretch}
    .vdv-submitted-action-row>*{flex:1 1 100%;text-align:center}
    .vdv-submitted-extra-actions>*{flex:1 1 100%;text-align:center}
    .vdv-image-modal{padding:10px;align-items:center}
    .vdv-image-modal__dialog{width:calc(100vw - 20px);max-width:100%;max-height:calc(100dvh - 20px);border-radius:18px;padding:20px 14px calc(18px + env(safe-area-inset-bottom))}
    .vdv-story-template-grid{grid-template-columns:1fr 1fr;gap:10px}
    .vdv-story-template-option{min-height:70px;padding:10px}
    .vdv-story-template-swatch{width:38px;height:38px;flex-basis:38px}
}

/* V2.9.19: botão do gerador diretamente na página da vaga. */
.single_job_listing .vdv-single-image-actions{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:10px;
    margin-top:16px;
}
.single_job_listing .vdv-single-image-actions .vdv-single-image{
    margin:0!important;
}
@media(max-width:767px){
    .single_job_listing .vdv-single-image-actions .vdv-single-image{
        width:100%;
    }
}

/* V2.14.1 — integridade visual dos cards, ações e modal de vagas */
.job_listing,.job_listing *,.single_job_listing,.single_job_listing *,.vdv-image-modal,.vdv-image-modal *{box-sizing:border-box}
.job_listing{min-width:0;max-width:100%}
.job_listing h1,.job_listing h2,.job_listing h3,.job_listing p,.job_listing span,.job_listing small,.job_listing strong{max-width:100%;overflow-wrap:anywhere}
.job_listing [data-vdv-card-align-role]{box-sizing:border-box}
.single_job_listing .job_application.application,.single_job_listing .vdv-single-image-actions,.vdv-submitted-action-row,.vdv-submitted-extra-actions{max-width:100%}
.single_job_listing .job_application.application>*{max-width:100%;box-sizing:border-box}
.vdv-story-template-option{min-width:0;max-width:100%}
.vdv-story-template-option strong{min-width:0;overflow-wrap:anywhere}
@media(max-width:767px){.vdv-submitted-action-row>a,.vdv-submitted-action-row>button,.vdv-submitted-extra-actions>button{width:100%!important;max-width:100%!important}}


/* V2.14.1 — auditoria final mobile das ações de vaga */
.vdv-submitted-action-row,.vdv-submitted-extra-actions,.single_job_listing .job_application.application,.single_job_listing .vdv-single-image-actions{min-width:0;box-sizing:border-box}
.vdv-submitted-action-row>*,.vdv-submitted-extra-actions>*,.single_job_listing .job_application.application>*,.single_job_listing .vdv-single-image-actions>*{min-width:0;max-width:100%;box-sizing:border-box}
@media(max-width:420px){
  .vdv-story-template-grid{grid-template-columns:1fr}
  .vdv-single-share.button,.vdv-single-image.button,.vdv-submitted-action-row>a,.vdv-submitted-action-row>button,.vdv-submitted-extra-actions>button{white-space:normal!important;line-height:1.25!important}
}

/* V2.14.1 — integridade de contatos na candidatura pública */
.single_job_listing .job_application.application,
.single_job_listing .job_application.application .application_details{
    min-width:0!important;
    width:100%;
    max-width:100%!important;
    box-sizing:border-box!important;
}
.single_job_listing .job_application.application .application_details,
.single_job_listing .job_application.application .application_details p,
.single_job_listing .job_application.application .application_details a,
.single_job_listing .job_application.application .vdv-application-phone{
    overflow-wrap:anywhere!important;
    word-break:normal!important;
    max-width:100%!important;
}

/* V2.14.2 — perguntas eliminatórias no formulário público de publicação */
.job-manager-form .vdv-job-screening-builder{
  margin-top:24px!important;
  padding:20px!important;
  border:1px solid #dfe6ee!important;
  border-radius:12px!important;
  background:#fbfcfe!important;
  box-sizing:border-box!important;
}
.job-manager-form .vdv-job-screening-builder>.field{width:100%!important;max-width:100%!important;box-sizing:border-box!important}
.job-manager-form .vdv-job-screening-builder .description{margin:0 0 14px!important;color:#667085!important;line-height:1.55!important}
.job-manager-form .vdv-job-screening-list{display:grid!important;gap:14px!important;width:100%!important;min-width:0!important}
.job-manager-form .vdv-job-screening-row{padding:16px!important;border:1px solid #e4e9f0!important;border-radius:10px!important;background:#fff!important;min-width:0!important;box-sizing:border-box!important}
.job-manager-form .vdv-job-screening-row label{display:block!important;margin:0 0 12px!important;min-width:0!important}
.job-manager-form .vdv-job-screening-row input:not([type="checkbox"]),
.job-manager-form .vdv-job-screening-row select,
.job-manager-form .vdv-job-screening-row textarea{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}
.job-manager-form .vdv-job-screening-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;min-width:0!important}
.job-manager-form .vdv-job-screening-checks{display:flex!important;gap:18px!important;flex-wrap:wrap!important;align-items:center!important;margin:4px 0 12px!important}
.job-manager-form .vdv-job-screening-checks label{display:inline-flex!important;align-items:center!important;gap:7px!important;margin:0!important;width:auto!important}
.job-manager-form .vdv-job-screening-checks input[type="checkbox"]{width:18px!important;height:18px!important;min-width:18px!important;max-width:18px!important;margin:0!important;padding:0!important}
.job-manager-form .vdv-screening-add{margin-top:14px!important}
.job-manager-form .vdv-screening-remove{margin-top:2px!important}
@media(max-width:760px){
  .job-manager-form .vdv-job-screening-grid{grid-template-columns:1fr!important}
  .job-manager-form .vdv-screening-add,.job-manager-form .vdv-screening-remove{width:100%!important}
}

/* Gate da candidatura externa e perguntas públicas */
.vdv-company-public .vdv-external-screening-form .vdv-form-actions{margin-top:18px!important}
.vdv-company-public .vdv-external-contact-revealed{display:grid!important;gap:12px!important;min-width:0!important}
.vdv-company-public .vdv-external-contact-revealed .vdv-main-btn,
.vdv-company-public .vdv-external-contact-revealed .vdv-secondary-btn{margin:0!important;max-width:100%!important;white-space:normal!important;text-align:center!important}


/* V2.14.3 — perguntas eliminatórias dentro do próprio “Candidatar-se” */
.single_job_listing .application_details .vdv-inline-screening-gate{
    width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;
    padding:18px!important;margin:0!important;border:1px solid #dfe6ee!important;border-radius:12px!important;background:#fff!important;
}
.single_job_listing .application_details .vdv-inline-screening-intro{margin:0 0 16px!important}
.single_job_listing .application_details .vdv-inline-screening-intro strong{display:block!important;color:#0f2f59!important;font-size:16px!important;line-height:1.35!important;margin-bottom:6px!important}
.single_job_listing .application_details .vdv-inline-screening-intro p{margin:0!important;color:#667085!important;line-height:1.55!important}
.single_job_listing .application_details .vdv-inline-screening-form,
.single_job_listing .application_details .vdv-inline-screening-questions{display:grid!important;gap:14px!important;width:100%!important;min-width:0!important;box-sizing:border-box!important}
.single_job_listing .application_details .vdv-inline-screening-question{display:grid!important;gap:7px!important;margin:0!important;min-width:0!important;color:#182230!important;font-weight:700!important}
.single_job_listing .application_details .vdv-inline-screening-question span{display:block!important;line-height:1.4!important}
.single_job_listing .application_details .vdv-inline-screening-question em{color:#d92d20!important;font-style:normal!important;margin-left:3px!important}
.single_job_listing .application_details .vdv-inline-screening-question input,
.single_job_listing .application_details .vdv-inline-screening-question select{
    width:100%!important;max-width:100%!important;min-width:0!important;height:46px!important;padding:0 12px!important;
    border:1px solid #d7e0ea!important;border-radius:8px!important;background:#fff!important;box-sizing:border-box!important;color:#172033!important;
}
.single_job_listing .application_details .vdv-inline-screening-result:empty{display:none!important}
.single_job_listing .application_details .vdv-inline-screening-message{padding:13px 14px!important;border-radius:8px!important;line-height:1.5!important;overflow-wrap:anywhere!important}
.single_job_listing .application_details .vdv-inline-screening-message p{margin:7px 0 0!important}
.single_job_listing .application_details .vdv-inline-screening-message.is-warning{background:#fffaeb!important;border:1px solid #fedf89!important;color:#7a2e0e!important}
.single_job_listing .application_details .vdv-inline-screening-message.is-error{background:#fef3f2!important;border:1px solid #fecdca!important;color:#912018!important}
.single_job_listing .application_details .vdv-inline-screening-submit,
.single_job_listing .application_details .vdv-inline-contact-primary,
.single_job_listing .application_details .vdv-inline-contact-secondary{
    width:100%!important;max-width:100%!important;min-height:44px!important;height:auto!important;padding:11px 16px!important;margin:0!important;
    display:inline-flex!important;align-items:center!important;justify-content:center!important;white-space:normal!important;text-align:center!important;line-height:1.3!important;box-sizing:border-box!important;
}
.single_job_listing .application_details .vdv-inline-screening-submit,
.single_job_listing .application_details .vdv-inline-contact-primary{background:#25d366!important;border-color:#25d366!important;color:#fff!important}
.single_job_listing .application_details .vdv-inline-contact-secondary{background:#fff!important;border:1px solid #25d366!important;color:#117a3a!important}
.single_job_listing .application_details .vdv-inline-contact-revealed{display:grid!important;gap:12px!important;width:100%!important;min-width:0!important;box-sizing:border-box!important}
.single_job_listing .application_details .vdv-inline-screening-success{padding:14px!important;border:1px solid #abefc6!important;border-radius:9px!important;background:#ecfdf3!important;color:#067647!important}
.single_job_listing .application_details .vdv-inline-screening-success p{margin:5px 0 0!important}
.single_job_listing .application_details .vdv-inline-contact-text{margin:0!important;overflow-wrap:anywhere!important}
@media(max-width:520px){
    .single_job_listing .application_details .vdv-inline-screening-gate{padding:14px!important}
}

/* V2.14.4 — após a triagem, preservar o visual nativo da candidatura */
.single_job_listing .application_details .vdv-inline-native-application-details{
  width:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box!important;
}
.single_job_listing .application_details .vdv-inline-native-application-details>p{
  margin:0!important;overflow-wrap:anywhere!important;word-break:break-word!important;
}
.single_job_listing .application_details .vdv-inline-native-application-details a{
  max-width:100%!important;overflow-wrap:anywhere!important;word-break:break-word!important;
}


/* V2.14.5 — trava definitiva da candidatura externa com perguntas. */
.single_job_listing .job_application[data-vdv-screening-required="1"] .application_details.vdv-screening-open,
.single-job_listing .job_application[data-vdv-screening-required="1"] .application_details.vdv-screening-open{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
}
.single_job_listing .job_application[data-vdv-screening-required="1"] .application_details[data-vdv-screening-locked="1"],
.single-job_listing .job_application[data-vdv-screening-required="1"] .application_details[data-vdv-screening-locked="1"]{
  pointer-events:auto!important;
}


/* V2.14.6 — perguntas com o mesmo visual nativo da candidatura */
.single_job_listing .application_details .vdv-inline-screening-gate,
.single-job_listing .application_details .vdv-inline-screening-gate{
  width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;
  margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;
}
.single_job_listing .application_details .vdv-inline-screening-intro,
.single-job_listing .application_details .vdv-inline-screening-intro{margin:0 0 18px!important;padding:0!important}
.single_job_listing .application_details .vdv-inline-screening-intro strong,
.single-job_listing .application_details .vdv-inline-screening-intro strong{
  display:block!important;margin:0 0 5px!important;color:inherit!important;font:inherit!important;font-weight:700!important;font-size:16px!important;line-height:1.4!important;
}
.single_job_listing .application_details .vdv-inline-screening-intro p,
.single-job_listing .application_details .vdv-inline-screening-intro p{margin:0!important;color:inherit!important;opacity:.78!important;line-height:1.5!important}
.single_job_listing .application_details .vdv-inline-screening-questions,
.single-job_listing .application_details .vdv-inline-screening-questions{gap:16px!important}
.single_job_listing .application_details .vdv-inline-screening-question,
.single-job_listing .application_details .vdv-inline-screening-question{color:inherit!important;font-weight:400!important}
.single_job_listing .application_details .vdv-inline-screening-question-title,
.single-job_listing .application_details .vdv-inline-screening-question-title{
  display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important;font-weight:600!important;line-height:1.4!important;
}
.single_job_listing .application_details .vdv-inline-required-badge,
.single-job_listing .application_details .vdv-inline-required-badge{
  display:inline-flex!important;align-items:center!important;width:auto!important;max-width:100%!important;margin:0!important;padding:2px 7px!important;
  border-radius:999px!important;background:#f2f4f7!important;color:#475467!important;font-size:11px!important;font-weight:700!important;line-height:1.35!important;white-space:nowrap!important;
}
.single_job_listing .application_details .vdv-inline-screening-question input,
.single_job_listing .application_details .vdv-inline-screening-question select,
.single-job_listing .application_details .vdv-inline-screening-question input,
.single-job_listing .application_details .vdv-inline-screening-question select{
  width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;
}
.single_job_listing .application_details .vdv-inline-screening-submit,
.single-job_listing .application_details .vdv-inline-screening-submit{
  width:auto!important;max-width:100%!important;min-height:0!important;height:auto!important;margin-top:2px!important;
  background:initial!important;border-color:initial!important;color:initial!important;
}
@media(max-width:520px){
  .single_job_listing .application_details .vdv-inline-screening-gate,
  .single-job_listing .application_details .vdv-inline-screening-gate{padding:0!important}
  .single_job_listing .application_details .vdv-inline-screening-submit,
  .single-job_listing .application_details .vdv-inline-screening-submit{width:100%!important}
}

/* V2.14.8 — perguntas dentro do MESMO visual nativo da candidatura, 1 por linha */
.single_job_listing .application_details .vdv-inline-screening-gate,
.single-job_listing .application_details .vdv-inline-screening-gate{
  display:block!important;
  float:none!important;
  clear:both!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  box-sizing:border-box!important;
  text-align:left!important;
}
.single_job_listing .application_details .vdv-inline-screening-intro,
.single-job_listing .application_details .vdv-inline-screening-intro{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  text-align:left!important;
}
.single_job_listing .application_details .vdv-inline-screening-native-message,
.single-job_listing .application_details .vdv-inline-screening-native-message{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  color:inherit!important;
  font-family:inherit!important;
  font-size:inherit!important;
  font-style:inherit!important;
  font-weight:inherit!important;
  line-height:inherit!important;
  letter-spacing:inherit!important;
  text-align:left!important;
  overflow-wrap:anywhere!important;
}
.single_job_listing .application_details .vdv-inline-screening-native-message strong,
.single-job_listing .application_details .vdv-inline-screening-native-message strong{
  display:inline!important;
  margin:0!important;
  padding:0!important;
  color:inherit!important;
  font:inherit!important;
  font-weight:700!important;
}
.single_job_listing .application_details .vdv-inline-screening-separator,
.single-job_listing .application_details .vdv-inline-screening-separator{
  display:block!important;
  width:100%!important;
  height:0!important;
  margin:32px 0!important;
  padding:0!important;
  border:0!important;
  border-top:1px solid #e1e5e9!important;
  background:transparent!important;
}
.single_job_listing .application_details .vdv-inline-screening-form,
.single-job_listing .application_details .vdv-inline-screening-form{
  display:block!important;
  float:none!important;
  clear:both!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  box-sizing:border-box!important;
  text-align:left!important;
}
.single_job_listing .application_details .vdv-inline-screening-questions,
.single-job_listing .application_details .vdv-inline-screening-questions{
  display:flex!important;
  flex-direction:column!important;
  flex-wrap:nowrap!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  float:none!important;
  clear:both!important;
  grid-template-columns:1fr!important;
  grid-auto-flow:row!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  gap:24px!important;
  margin:0 0 28px!important;
  padding:0!important;
  box-sizing:border-box!important;
}
.single_job_listing .application_details .vdv-inline-screening-question,
.single-job_listing .application_details .vdv-inline-screening-question{
  display:flex!important;
  flex:0 0 auto!important;
  flex-direction:column!important;
  flex-wrap:nowrap!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  float:none!important;
  clear:both!important;
  position:static!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  gap:10px!important;
  margin:0!important;
  padding:0!important;
  box-sizing:border-box!important;
  text-align:left!important;
}
.single_job_listing .application_details .vdv-inline-screening-question-title,
.single-job_listing .application_details .vdv-inline-screening-question-title{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:flex-start!important;
  float:none!important;
  clear:both!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  gap:8px!important;
  margin:0!important;
  padding:0!important;
  color:inherit!important;
  font-family:inherit!important;
  font-size:inherit!important;
  line-height:1.45!important;
  font-weight:600!important;
  text-align:left!important;
  overflow-wrap:anywhere!important;
}
.single_job_listing .application_details .vdv-inline-screening-question input,
.single_job_listing .application_details .vdv-inline-screening-question select,
.single-job_listing .application_details .vdv-inline-screening-question input,
.single-job_listing .application_details .vdv-inline-screening-question select{
  display:block!important;
  float:none!important;
  clear:both!important;
  position:static!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  height:52px!important;
  margin:0!important;
  padding:0 16px!important;
  border:1px solid #d9dee3!important;
  border-radius:6px!important;
  background:#fff!important;
  color:#343a40!important;
  font-family:inherit!important;
  font-size:inherit!important;
  line-height:1.4!important;
  text-align:left!important;
  box-sizing:border-box!important;
  box-shadow:none!important;
}
.single_job_listing .application_details .vdv-inline-required-badge,
.single-job_listing .application_details .vdv-inline-required-badge{
  display:inline-flex!important;
  flex:0 0 auto!important;
  align-items:center!important;
  width:auto!important;
  max-width:max-content!important;
  margin:0!important;
  padding:3px 8px!important;
  border-radius:999px!important;
  background:#f2f4f7!important;
  color:#475467!important;
  font-size:11px!important;
  line-height:1.3!important;
  font-weight:700!important;
  white-space:nowrap!important;
}
.single_job_listing .application_details .vdv-inline-screening-result,
.single-job_listing .application_details .vdv-inline-screening-result{
  display:block!important;
  float:none!important;
  clear:both!important;
  width:100%!important;
  max-width:100%!important;
  margin:0 0 22px!important;
  padding:0!important;
  box-sizing:border-box!important;
}
.single_job_listing .application_details .vdv-inline-screening-result:empty,
.single-job_listing .application_details .vdv-inline-screening-result:empty{
  display:none!important;
  margin:0!important;
}
.single_job_listing .application_details .vdv-inline-screening-submit,
.single-job_listing .application_details .vdv-inline-screening-submit{
  display:inline-flex!important;
  float:none!important;
  clear:both!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  max-width:100%!important;
  min-height:52px!important;
  height:auto!important;
  margin:0!important;
  padding:14px 28px!important;
  border:0!important;
  border-radius:6px!important;
  background:#25d366!important;
  color:#fff!important;
  font-family:inherit!important;
  font-size:inherit!important;
  line-height:1.35!important;
  font-weight:700!important;
  text-align:center!important;
  text-decoration:none!important;
  white-space:normal!important;
  box-sizing:border-box!important;
  cursor:pointer!important;
  box-shadow:none!important;
}
@media(max-width:520px){
  .single_job_listing .application_details .vdv-inline-screening-separator,
  .single-job_listing .application_details .vdv-inline-screening-separator{margin:24px 0!important}
  .single_job_listing .application_details .vdv-inline-screening-questions,
  .single-job_listing .application_details .vdv-inline-screening-questions{gap:20px!important;margin-bottom:24px!important}
  .single_job_listing .application_details .vdv-inline-screening-submit,
  .single-job_listing .application_details .vdv-inline-screening-submit{width:100%!important}
}


/* V2.14.9 — tela de perguntas 100% no mesmo bloco nativo da candidatura.
   A estrutura visual externa continua sendo .application_details do tema.
   Estas regras só impedem que tema/plugin transforme as perguntas em colunas
   ou centralize o conteúdo quando a triagem estiver ativa. */
html body .single_job_listing .job_application.application .application_details[data-vdv-screening-locked="1"],
html body .single-job_listing .job_application.application .application_details[data-vdv-screening-locked="1"]{
  text-align:left!important;
}
html body .single_job_listing .application_details .vdv-inline-screening-gate,
html body .single-job_listing .application_details .vdv-inline-screening-gate{
  display:block!important;
  float:none!important;
  clear:both!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  box-sizing:border-box!important;
  text-align:left!important;
}
html body .single_job_listing .application_details .vdv-inline-screening-intro,
html body .single-job_listing .application_details .vdv-inline-screening-intro,
html body .single_job_listing .application_details .vdv-inline-screening-native-message,
html body .single-job_listing .application_details .vdv-inline-screening-native-message{
  display:block!important;
  float:none!important;
  clear:both!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  text-align:left!important;
  box-sizing:border-box!important;
}
html body .single_job_listing .application_details .vdv-inline-screening-native-message,
html body .single-job_listing .application_details .vdv-inline-screening-native-message{
  color:inherit!important;
  font-family:inherit!important;
  font-size:inherit!important;
  font-style:inherit!important;
  font-weight:inherit!important;
  line-height:inherit!important;
  letter-spacing:inherit!important;
}
html body .single_job_listing .application_details .vdv-inline-screening-native-message strong,
html body .single-job_listing .application_details .vdv-inline-screening-native-message strong{
  display:inline!important;
  color:inherit!important;
  font:inherit!important;
  font-weight:700!important;
}
html body .single_job_listing .application_details .vdv-inline-screening-separator,
html body .single-job_listing .application_details .vdv-inline-screening-separator{
  display:block!important;
  float:none!important;
  clear:both!important;
  width:100%!important;
  height:0!important;
  margin:32px 0!important;
  padding:0!important;
  border:0!important;
  border-top:1px solid #e1e5e9!important;
  background:transparent!important;
}
html body .single_job_listing .application_details .vdv-inline-screening-form,
html body .single-job_listing .application_details .vdv-inline-screening-form,
html body .single_job_listing .application_details .vdv-inline-screening-questions,
html body .single-job_listing .application_details .vdv-inline-screening-questions{
  display:block!important;
  float:none!important;
  clear:both!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  grid-template-columns:none!important;
  columns:auto!important;
  column-count:1!important;
  box-sizing:border-box!important;
  text-align:left!important;
}
html body .single_job_listing .application_details .vdv-inline-screening-question,
html body .single-job_listing .application_details .vdv-inline-screening-question{
  display:block!important;
  float:none!important;
  clear:both!important;
  position:static!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0 0 24px!important;
  padding:0!important;
  box-sizing:border-box!important;
  break-inside:avoid!important;
  text-align:left!important;
}
html body .single_job_listing .application_details .vdv-inline-screening-question-title,
html body .single-job_listing .application_details .vdv-inline-screening-question-title{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:flex-start!important;
  float:none!important;
  clear:both!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0 0 9px!important;
  padding:0!important;
  gap:8px!important;
  color:inherit!important;
  font-family:inherit!important;
  line-height:1.45!important;
  font-weight:600!important;
  text-align:left!important;
  box-sizing:border-box!important;
}
html body .single_job_listing .application_details .vdv-inline-screening-question input:not([type="hidden"]),
html body .single_job_listing .application_details .vdv-inline-screening-question select,
html body .single-job_listing .application_details .vdv-inline-screening-question input:not([type="hidden"]),
html body .single-job_listing .application_details .vdv-inline-screening-question select{
  display:block!important;
  float:none!important;
  clear:both!important;
  position:static!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  height:54px!important;
  margin:0!important;
  padding:0 16px!important;
  box-sizing:border-box!important;
}
html body .single_job_listing .application_details .vdv-inline-screening-result,
html body .single-job_listing .application_details .vdv-inline-screening-result{
  display:block!important;
  float:none!important;
  clear:both!important;
  width:100%!important;
  max-width:100%!important;
  margin:0 0 22px!important;
  padding:0!important;
  box-sizing:border-box!important;
}
html body .single_job_listing .application_details .vdv-inline-screening-result:empty,
html body .single-job_listing .application_details .vdv-inline-screening-result:empty{
  display:none!important;
  margin:0!important;
}
html body .single_job_listing .application_details .vdv-inline-screening-submit,
html body .single-job_listing .application_details .vdv-inline-screening-submit{
  float:none!important;
  clear:both!important;
  margin:0!important;
  max-width:100%!important;
}
@media(max-width:520px){
  html body .single_job_listing .application_details .vdv-inline-screening-separator,
  html body .single-job_listing .application_details .vdv-inline-screening-separator{margin:24px 0!important}
  html body .single_job_listing .application_details .vdv-inline-screening-question,
  html body .single-job_listing .application_details .vdv-inline-screening-question{margin-bottom:20px!important}
  html body .single_job_listing .application_details .vdv-inline-screening-submit,
  html body .single-job_listing .application_details .vdv-inline-screening-submit{width:100%!important}
}


/* ==========================================================================
   V2.15.0 — RESTAURAÇÃO NATIVA REAL DA CANDIDATURA
   O conteúdo original do tema permanece intocado como filho direto de
   .application_details. Durante a triagem, apenas fica oculto.
   ========================================================================== */
html body .single_job_listing .application_details[data-vdv-screening-locked="1"] > :not(.vdv-inline-screening-gate),
html body .single-job_listing .application_details[data-vdv-screening-locked="1"] > :not(.vdv-inline-screening-gate){
  display:none!important;
}
html body .single_job_listing .application_details[data-vdv-screening-locked="1"] > .vdv-inline-screening-gate,
html body .single-job_listing .application_details[data-vdv-screening-locked="1"] > .vdv-inline-screening-gate{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  float:none!important;
  clear:both!important;
}
html body .single_job_listing .application_details .vdv-inline-screening-questions,
html body .single-job_listing .application_details .vdv-inline-screening-questions{
  display:block!important;
  grid-template-columns:none!important;
  grid-auto-flow:row!important;
  columns:1!important;
  column-count:1!important;
}
html body .single_job_listing .application_details .vdv-inline-screening-questions > .vdv-inline-screening-question,
html body .single-job_listing .application_details .vdv-inline-screening-questions > .vdv-inline-screening-question{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  flex:0 0 100%!important;
  grid-column:1 / -1!important;
  float:none!important;
  clear:both!important;
}

/* V2.15.3 — candidatura/listagem pública responsiva */
@media(max-width:1024px){
  .single_job_listing,.single-job_listing,
  .single_job_listing .job_application,.single-job_listing .job_application,
  .single_job_listing .application_details,.single-job_listing .application_details,
  .single_job_listing .vdv-inline-screening-gate,.single-job_listing .vdv-inline-screening-gate{
    min-width:0!important;max-width:100%!important;box-sizing:border-box!important;
  }
  .single_job_listing .application_details a,.single-job_listing .application_details a,
  .single_job_listing .application_details p,.single-job_listing .application_details p,
  .single_job_listing .application_details strong,.single-job_listing .application_details strong{
    overflow-wrap:anywhere!important;word-break:normal!important;
  }
  .vdv-image-modal__dialog{max-width:calc(100vw - 28px)!important;box-sizing:border-box!important}
}
@media(max-width:760px){
  .single_job_listing .job_application>.application_button,
  .single-job_listing .job_application>.application_button,
  .single_job_listing .job_application>.vdv-single-share,
  .single-job_listing .job_application>.vdv-single-share,
  .single_job_listing .job_application>.vdv-single-image,
  .single-job_listing .job_application>.vdv-single-image{
    max-width:100%!important;white-space:normal!important;height:auto!important;min-height:46px!important;
  }
  .single_job_listing .application_details .vdv-inline-screening-submit,
  .single-job_listing .application_details .vdv-inline-screening-submit{width:100%!important}
}


/* V2.15.4 — o painel simples duplicado nunca deve reaparecer após a triagem.
   O clique do botão final contém "candidatar" e alguns temas tentam reabrir
   .application_details; este estado mantém somente o painel rico/original visível. */
.single_job_listing .application_details[data-vdv-duplicate-application-hidden="1"],
.single-job_listing .application_details[data-vdv-duplicate-application-hidden="1"]{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  height:0!important;
  min-height:0!important;
  max-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  overflow:hidden!important;
  pointer-events:none!important;
}


/* ================================================================
   V2.22.5 — PESQUISA DE VAGAS: SKELETON/SHIMMER VERDE RESPONSIVO
   ================================================================ */
.job_listings.vdv-job-search-skeleton-host{
    --vdv-search-green:#25d366;
    --vdv-search-green-dark:#16a34a;
    --vdv-search-green-soft:#eafbf0;
    --vdv-search-green-mid:#d8f7e3;
    position:relative!important;
}
.job_listings>.vdv-job-search-skeleton[hidden]{display:none!important}
.job_listings>.vdv-job-search-skeleton{
    box-sizing:border-box!important;
    position:absolute!important;
    z-index:80!important;
    left:0!important;
    right:0!important;
    /* Mantém a barra/filtros visíveis e cobre somente a região de resultados. */
    top:var(--vdv-skeleton-top,118px)!important;
    min-height:420px!important;
    padding:18px 0 26px!important;
    background:rgba(255,255,255,.97)!important;
    backdrop-filter:blur(1.5px);
    -webkit-backdrop-filter:blur(1.5px);
    pointer-events:none!important;
}
.job_listings.vdv-job-search-is-loading ul.job_listings,
.job_listings.vdv-job-search-is-loading .job-manager-pagination,
.job_listings.vdv-job-search-is-loading .load_more_jobs,
.job_listings.vdv-job-search-is-loading .showing_jobs{
    opacity:.08!important;
    transition:opacity .12s ease!important;
}
.vdv-job-search-skeleton-status{
    display:flex!important;
    align-items:center!important;
    gap:9px!important;
    margin:0 0 14px!important;
    color:#166534!important;
    font-size:13px!important;
    line-height:1.3!important;
}
.vdv-job-search-skeleton-dot{
    width:9px!important;
    height:9px!important;
    flex:0 0 9px!important;
    border-radius:50%!important;
    background:var(--vdv-search-green)!important;
    box-shadow:0 0 0 5px rgba(37,211,102,.12)!important;
    animation:vdvSearchDot 1s ease-in-out infinite alternate;
}
.vdv-job-search-skeleton-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:14px!important;
    width:100%!important;
}
.vdv-job-search-skeleton-card{
    box-sizing:border-box!important;
    min-width:0!important;
    min-height:148px!important;
    display:grid!important;
    grid-template-columns:64px minmax(0,1fr) 96px!important;
    align-items:center!important;
    gap:16px!important;
    padding:20px!important;
    border:1px solid rgba(37,211,102,.20)!important;
    border-radius:16px!important;
    background:#fff!important;
    box-shadow:0 8px 28px rgba(22,163,74,.065)!important;
    overflow:hidden!important;
}
.vdv-job-search-shimmer{
    position:relative!important;
    overflow:hidden!important;
    display:block!important;
    background:linear-gradient(90deg,var(--vdv-search-green-soft) 0%,var(--vdv-search-green-mid) 48%,var(--vdv-search-green-soft) 100%)!important;
    background-size:220% 100%!important;
    animation:vdvSearchShimmer 1.15s linear infinite!important;
}
.vdv-job-search-skeleton-logo{width:58px!important;height:58px!important;border-radius:14px!important}
.vdv-job-search-skeleton-copy{display:grid!important;gap:10px!important;min-width:0!important}
.vdv-job-search-skeleton-line{height:11px!important;border-radius:999px!important;width:86%!important}
.vdv-job-search-skeleton-line.is-title{height:17px!important;width:72%!important}
.vdv-job-search-skeleton-line.is-company{width:52%!important}
.vdv-job-search-skeleton-line.is-place{width:39%!important}
.vdv-job-search-skeleton-meta{display:flex!important;gap:8px!important;margin-top:3px!important}
.vdv-job-search-skeleton-pill{width:92px!important;height:23px!important;border-radius:999px!important}
.vdv-job-search-skeleton-pill.is-short{width:68px!important}
.vdv-job-search-skeleton-action{width:92px!important;height:38px!important;border-radius:10px!important;justify-self:end!important}
@keyframes vdvSearchShimmer{
    0%{background-position:200% 0}
    100%{background-position:-20% 0}
}
@keyframes vdvSearchDot{from{opacity:.45;transform:scale(.84)}to{opacity:1;transform:scale(1.08)}}

@media(max-width:1024px){
    .vdv-job-search-skeleton-grid{grid-template-columns:1fr!important}
    .job_listings>.vdv-job-search-skeleton{top:var(--vdv-skeleton-top,150px)!important}
}
@media(max-width:767px){
    .job_listings>.vdv-job-search-skeleton{
        top:var(--vdv-skeleton-top,220px)!important;
        min-height:520px!important;
        padding:14px 0 20px!important;
    }
    .vdv-job-search-skeleton-grid{gap:10px!important}
    .vdv-job-search-skeleton-card{
        min-height:118px!important;
        grid-template-columns:48px minmax(0,1fr)!important;
        gap:12px!important;
        padding:15px!important;
        border-radius:14px!important;
    }
    .vdv-job-search-skeleton-grid .vdv-job-search-skeleton-card:nth-child(n+5){display:none!important}
    .vdv-job-search-skeleton-logo{width:46px!important;height:46px!important;border-radius:12px!important}
    .vdv-job-search-skeleton-line.is-title{height:15px!important;width:82%!important}
    .vdv-job-search-skeleton-action{display:none!important}
    .vdv-job-search-skeleton-status{margin-bottom:11px!important;padding-left:2px!important}
}
@media(max-width:420px){
    .vdv-job-search-skeleton-grid .vdv-job-search-skeleton-card:nth-child(n+4){display:none!important}
    .job_listings>.vdv-job-search-skeleton{top:var(--vdv-skeleton-top,240px)!important}
}
@media(prefers-reduced-motion:reduce){
    .vdv-job-search-shimmer,.vdv-job-search-skeleton-dot{animation:none!important}
    .vdv-job-search-shimmer{background:var(--vdv-search-green-soft)!important}
}

/* ========================================================================== 
   V2.22.6 — PESQUISA REAL + MOBILE/TABLET RESPONSIVO
   Mantém desktop (>1024px) intacto. Reforça busca, filtros e listagens em
   telas menores e inclui loading visível mesmo quando a busca recarrega página.
   ========================================================================== */
.vdv-global-search-skeleton[hidden]{display:none!important}
.vdv-global-search-skeleton{
  --vdv-search-green:#25d366;
  --vdv-search-green-dark:#159447;
  --vdv-search-green-soft:#eefbf3;
  --vdv-search-green-mid:#d5f6e1;
  position:fixed!important;
  inset:0!important;
  z-index:2147480000!important;
  overflow:auto!important;
  overscroll-behavior:contain!important;
  background:rgba(255,255,255,.985)!important;
  padding:clamp(22px,4vw,52px)!important;
  box-sizing:border-box!important;
}
.vdv-global-search-shell{width:min(1120px,100%)!important;margin:0 auto!important;box-sizing:border-box!important}
.vdv-global-search-top{display:grid!important;grid-template-columns:minmax(0,1fr) 220px!important;gap:14px!important;margin:0 0 24px!important}
.vdv-global-search-searchbar,.vdv-global-search-filter{display:block!important;height:54px!important;border-radius:16px!important}
.vdv-global-search-status{display:flex!important;align-items:center!important;gap:10px!important;color:#166534!important;font-size:14px!important;margin-bottom:16px!important}
.vdv-global-search-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
.vdv-global-search-card{display:grid!important;grid-template-columns:58px minmax(0,1fr)!important;align-items:center!important;gap:15px!important;min-width:0!important;min-height:136px!important;padding:18px!important;border:1px solid rgba(37,211,102,.18)!important;border-radius:17px!important;background:#fff!important;box-shadow:0 8px 28px rgba(22,163,74,.06)!important;box-sizing:border-box!important}
.vdv-global-search-logo{width:54px!important;height:54px!important;border-radius:14px!important}
.vdv-global-search-copy{display:grid!important;gap:9px!important;min-width:0!important}
.vdv-global-search-line{display:block!important;height:11px!important;border-radius:999px!important;width:80%!important}
.vdv-global-search-line.is-title{height:16px!important;width:72%!important}
.vdv-global-search-line.is-medium{width:55%!important}
.vdv-global-search-line.is-short{width:38%!important}
.vdv-global-search-pills{display:flex!important;gap:8px!important;margin-top:4px!important}
.vdv-global-search-pill{display:block!important;width:90px!important;height:22px!important;border-radius:999px!important}
.vdv-global-search-pill.is-short{width:62px!important}
html.vdv-search-loading-active,body.vdv-search-loading-active{overflow:hidden!important}

/* Tablet: apenas abaixo de 1024 px. */
@media(max-width:1024px){
  html,body{max-width:100%!important;overflow-x:hidden!important}
  body *{box-sizing:border-box}

  /* Contêineres públicos de busca/listagem nunca podem ultrapassar a viewport. */
  .job_listings:not(ul):not(ol),
  .job_filters,
  .job_filters .search_jobs,
  .search_jobs,
  ul.job_listings,
  .job-manager-pagination,
  .showing_jobs{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }

  /* Remove floats/medidas fixas tradicionais do WP Job Manager em tablet. */
  .job_filters .search_jobs,
  .job_listings .search_jobs{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important;
    align-items:stretch!important;
  }
  .job_filters .search_jobs>div,
  .job_listings .search_jobs>div,
  .search_jobs .search_keywords,
  .search_jobs .search_location,
  .search_jobs .search_categories,
  .search_jobs .search_region,
  .search_jobs .search_submit{
    float:none!important;
    clear:none!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    box-sizing:border-box!important;
  }
  .search_jobs .search_submit{grid-column:1/-1!important}

  .job_filters input[type="text"],
  .job_filters input[type="search"],
  .job_filters input[type="submit"],
  .job_filters select,
  .search_jobs input[type="text"],
  .search_jobs input[type="search"],
  .search_jobs input[type="submit"],
  .search_jobs select,
  .search_jobs button[type="submit"]{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    min-height:50px!important;
    margin:0!important;
    box-sizing:border-box!important;
  }

  /* Ícone/botão da pesquisa com respiro da borda em touch. */
  .search_jobs .search_submit button,
  .search_jobs .search_submit input[type="submit"],
  .job_filters .search_submit button,
  .job_filters .search_submit input[type="submit"],
  form.job-search-form button[type="submit"],
  form.job_search_form button[type="submit"]{
    min-height:50px!important;
    padding-left:20px!important;
    padding-right:20px!important;
    border-radius:12px!important;
    touch-action:manipulation!important;
  }
  .search_jobs .search_submit button svg,
  .search_jobs .search_submit button i,
  .job_filters .search_submit button svg,
  .job_filters .search_submit button i,
  form.job-search-form button[type="submit"] svg,
  form.job-search-form button[type="submit"] i,
  form.job_search_form button[type="submit"] svg,
  form.job_search_form button[type="submit"] i{
    margin-left:6px!important;
    margin-right:6px!important;
    flex:0 0 auto!important;
  }

  /* Ícones internos do campo não ficam colados à borda. */
  .search_keywords,.search_location{position:relative!important}
  .search_keywords>i,.search_keywords>svg,.search_keywords>.search-icon,
  .search_location>i,.search_location>svg,.search_location>.search-icon{
    left:16px!important;
    right:auto!important;
  }
  .search_keywords>i~input,.search_keywords>svg~input,.search_keywords>.search-icon~input,
  .search_location>i~input,.search_location>svg~input,.search_location>.search-icon~input{
    padding-left:46px!important;
  }

  /* Listas/cards sem estouro horizontal. */
  ul.job_listings>li.job_listing,
  ul.job_listings>li.job_listing>a,
  .job_listing,
  .job_listing>a{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }
  .job_listing img{max-width:100%;height:auto}
  .job_listing h1,.job_listing h2,.job_listing h3,.job_listing p,
  .job_listing span,.job_listing strong,.job_listing small,.job_listing a{
    overflow-wrap:anywhere!important;
    word-break:normal!important;
  }
  .job-manager-pagination ul,
  .job-manager-pagination .page-numbers{
    max-width:100%!important;
    flex-wrap:wrap!important;
  }

  .vdv-global-search-skeleton{padding:26px 22px!important}
  .vdv-global-search-top{grid-template-columns:minmax(0,1fr) minmax(180px,34%)!important}
  .vdv-global-search-grid{grid-template-columns:1fr!important}
  .vdv-global-search-card{min-height:124px!important}
}

/* Celular: uma coluna, touch targets maiores e ícone afastado da borda. */
@media(max-width:767px){
  .job_filters .search_jobs,
  .job_listings .search_jobs{
    grid-template-columns:minmax(0,1fr)!important;
    gap:10px!important;
  }
  .search_jobs .search_submit{grid-column:auto!important}

  .job_filters input[type="text"],
  .job_filters input[type="search"],
  .job_filters input[type="submit"],
  .job_filters select,
  .search_jobs input[type="text"],
  .search_jobs input[type="search"],
  .search_jobs input[type="submit"],
  .search_jobs select,
  .search_jobs button[type="submit"]{
    min-height:52px!important;
    font-size:16px!important; /* evita zoom automático no iOS */
    border-radius:12px!important;
  }

  .search_jobs .search_submit button,
  .search_jobs .search_submit input[type="submit"],
  .job_filters .search_submit button,
  .job_filters .search_submit input[type="submit"],
  form.job-search-form button[type="submit"],
  form.job_search_form button[type="submit"]{
    min-height:52px!important;
    padding-left:24px!important;
    padding-right:24px!important;
  }
  .search_jobs .search_submit button svg,
  .search_jobs .search_submit button i,
  .job_filters .search_submit button svg,
  .job_filters .search_submit button i,
  form.job-search-form button[type="submit"] svg,
  form.job-search-form button[type="submit"] i,
  form.job_search_form button[type="submit"] svg,
  form.job_search_form button[type="submit"] i{
    margin-left:8px!important;
    margin-right:8px!important;
  }

  .job_listing .vdv-card-share{
    top:10px!important;
    right:10px!important;
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
  }
  .job_listing .vdv-existing-new-badge{top:10px!important;left:10px!important}

  .showing_jobs{font-size:13px!important;line-height:1.4!important}
  .load_more_jobs{width:100%!important;min-height:48px!important;text-align:center!important}

  .vdv-global-search-skeleton{padding:18px 14px!important}
  .vdv-global-search-top{grid-template-columns:1fr!important;gap:10px!important;margin-bottom:18px!important}
  .vdv-global-search-filter{height:46px!important;width:66%!important}
  .vdv-global-search-status{font-size:13px!important;margin-bottom:12px!important}
  .vdv-global-search-grid{gap:10px!important}
  .vdv-global-search-card{grid-template-columns:48px minmax(0,1fr)!important;gap:12px!important;min-height:112px!important;padding:14px!important;border-radius:14px!important}
  .vdv-global-search-logo{width:46px!important;height:46px!important;border-radius:12px!important}
  .vdv-global-search-line.is-title{height:14px!important;width:82%!important}
  .vdv-global-search-grid .vdv-global-search-card:nth-child(n+5){display:none!important}
}

@media(max-width:420px){
  .vdv-global-search-skeleton{padding:14px 10px!important}
  .vdv-global-search-grid .vdv-global-search-card:nth-child(n+4){display:none!important}
  .search_jobs .search_submit button,
  .search_jobs .search_submit input[type="submit"],
  .job_filters .search_submit button,
  .job_filters .search_submit input[type="submit"]{padding-left:22px!important;padding-right:22px!important}
}

@supports (overflow:clip){
  @media(max-width:1024px){html,body{overflow-x:clip!important}}
}

/* V2.22.6 — seletores independentes do tema, marcados via JavaScript. */
@media(max-width:1024px){
  .vdv-public-job-search-form{
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }
  .vdv-public-job-search-form input,
  .vdv-public-job-search-form select,
  .vdv-public-job-search-form button{
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  .vdv-public-job-search-submit{
    min-width:50px!important;
    min-height:50px!important;
    padding-left:18px!important;
    padding-right:18px!important;
    touch-action:manipulation!important;
  }
  .vdv-public-job-search-submit svg,
  .vdv-public-job-search-submit i,
  .vdv-public-job-search-submit .icon,
  .vdv-public-job-search-submit [class*="icon"]{
    margin-left:6px!important;
    margin-right:6px!important;
  }
}
@media(max-width:767px){
  .vdv-public-job-search-form input[type="text"],
  .vdv-public-job-search-form input[type="search"],
  .vdv-public-job-search-form select{font-size:16px!important}
  .vdv-public-job-search-submit{
    min-width:54px!important;
    min-height:52px!important;
    padding-left:22px!important;
    padding-right:22px!important;
  }
  .vdv-public-job-search-submit.vdv-search-submit-is-absolute{right:10px!important}
  .vdv-public-job-search-submit svg,
  .vdv-public-job-search-submit i,
  .vdv-public-job-search-submit .icon,
  .vdv-public-job-search-submit [class*="icon"]{
    margin-left:8px!important;
    margin-right:8px!important;
  }
}


/* V2.22.7 — ajuste fino do botão da pesquisa no celular. */
@media(max-width:767px){
  .vdv-public-job-search-form{
    margin-left:auto!important;
    margin-right:auto!important;
  }

  .vdv-public-job-search-form .vdv-public-job-search-submit-wrap,
  .vdv-public-job-search-form .search_submit{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-left:auto!important;
    margin-right:auto!important;
    box-sizing:border-box!important;
  }

  .vdv-public-job-search-form .vdv-public-job-search-submit,
  .vdv-public-job-search-form button.vdv-public-job-search-submit,
  .vdv-public-job-search-form input.vdv-public-job-search-submit[type="submit"]{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    min-height:52px!important;
    margin:0 auto!important;
    padding:0 18px!important;
    text-align:center!important;
    justify-content:center!important;
    align-items:center!important;
    gap:8px!important;
    box-sizing:border-box!important;
  }

  .vdv-public-job-search-form button.vdv-public-job-search-submit{
    display:flex!important;
  }

  /* desfaz o deslocamento lateral exagerado da 2.22.6 */
  .vdv-public-job-search-form .vdv-public-job-search-submit.vdv-search-submit-is-absolute{
    right:auto!important;
  }

  .vdv-public-job-search-form .vdv-public-job-search-submit svg,
  .vdv-public-job-search-form .vdv-public-job-search-submit i,
  .vdv-public-job-search-form .vdv-public-job-search-submit .icon,
  .vdv-public-job-search-form .vdv-public-job-search-submit [class*="icon"]{
    margin-left:0!important;
    margin-right:0!important;
    flex:0 0 auto!important;
  }
}


/* ==========================================================================
   V2.22.8 — BUSCA REAL: TEXTO CENTRALIZADO + MESMA LARGURA + SHIMMER VISÍVEL
   O efeito é aplicado diretamente aos controles detectados pelo JavaScript.
   Celular: somente botão PESQUISAR. Tablet/Desktop: os três controles.
   ========================================================================== */
@keyframes vdvSearchControlSweep{
  0%{transform:translate3d(-180%,0,0) skewX(-18deg);opacity:0}
  12%{opacity:1}
  58%{opacity:1}
  74%,100%{transform:translate3d(520%,0,0) skewX(-18deg);opacity:0}
}

.vdv-public-job-search-form .vdv-search-control-host{
  position:relative!important;
  overflow:hidden!important;
  isolation:isolate!important;
  box-sizing:border-box!important;
}
.vdv-public-job-search-form .vdv-search-control-host::after{
  content:"";
  position:absolute;
  z-index:30;
  pointer-events:none;
  top:-35%;
  bottom:-35%;
  left:0;
  width:28%;
  border-radius:999px;
  background:linear-gradient(90deg,rgba(37,211,102,0),rgba(37,211,102,.08),rgba(37,211,102,.32),rgba(255,255,255,.68),rgba(37,211,102,.24),rgba(37,211,102,0));
  filter:blur(.2px);
  transform:translate3d(-180%,0,0) skewX(-18deg);
  animation:vdvSearchControlSweep 3.1s ease-in-out infinite;
}
.vdv-public-job-search-form.vdv-search-running .vdv-search-control-host::after{
  animation-duration:1.05s!important;
  background:linear-gradient(90deg,rgba(37,211,102,0),rgba(37,211,102,.14),rgba(37,211,102,.42),rgba(255,255,255,.78),rgba(37,211,102,.34),rgba(37,211,102,0));
}

/* Tablet e computador: varredura nos três controles. */
@media(min-width:768px){
  .vdv-public-job-search-form .vdv-search-keyword-host::after,
  .vdv-public-job-search-form .vdv-search-location-host::after,
  .vdv-public-job-search-form .vdv-search-submit-host::after{display:block!important}
}

/* Celular: os 3 controles ficam exatamente do mesmo tamanho e com texto central. */
@media(max-width:767px){
  .vdv-public-job-search-form{
    width:100%!important;
    max-width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  .vdv-public-job-search-form .vdv-search-keyword-host,
  .vdv-public-job-search-form .vdv-search-location-host,
  .vdv-public-job-search-form .vdv-search-submit-host,
  .vdv-public-job-search-form .search_keywords,
  .vdv-public-job-search-form .search_location,
  .vdv-public-job-search-form .search_region,
  .vdv-public-job-search-form .search_submit{
    display:block!important;
    float:none!important;
    clear:none!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-left:auto!important;
    margin-right:auto!important;
    box-sizing:border-box!important;
  }

  .vdv-public-job-search-form .vdv-public-job-search-keyword,
  .vdv-public-job-search-form .vdv-public-job-search-location,
  .vdv-public-job-search-form .vdv-public-job-search-submit{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    min-height:52px!important;
    margin:0!important;
    box-sizing:border-box!important;
  }

  .vdv-public-job-search-form .vdv-public-job-search-keyword{
    text-align:center!important;
    padding-left:14px!important;
    padding-right:14px!important;
  }
  .vdv-public-job-search-form .vdv-public-job-search-keyword::placeholder{
    text-align:center!important;
    opacity:1!important;
  }
  .vdv-public-job-search-form .vdv-public-job-search-location{
    text-align:center!important;
    text-align-last:center!important;
    padding-left:14px!important;
    padding-right:14px!important;
  }
  .vdv-public-job-search-form .vdv-public-job-search-location::placeholder{
    text-align:center!important;
    opacity:1!important;
  }
  .vdv-public-job-search-form .search_location .select2-container,
  .vdv-public-job-search-form .search_region .select2-container,
  .vdv-public-job-search-form .vdv-search-location-host .select2-container{
    width:100%!important;
    max-width:100%!important;
  }
  .vdv-public-job-search-form .search_location .select2-selection__rendered,
  .vdv-public-job-search-form .search_region .select2-selection__rendered,
  .vdv-public-job-search-form .vdv-search-location-host .select2-selection__rendered,
  .vdv-public-job-search-form .search_location .chosen-single span,
  .vdv-public-job-search-form .search_region .chosen-single span{
    text-align:center!important;
    width:100%!important;
    padding-left:24px!important;
    padding-right:24px!important;
    box-sizing:border-box!important;
  }

  .vdv-public-job-search-form .vdv-public-job-search-submit,
  .vdv-public-job-search-form button.vdv-public-job-search-submit,
  .vdv-public-job-search-form input.vdv-public-job-search-submit[type="submit"]{
    position:relative!important;
    inset:auto!important;
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    text-align:center!important;
    padding:0 18px!important;
    gap:8px!important;
  }
  .vdv-public-job-search-form input.vdv-public-job-search-submit[type="submit"]{display:block!important}

  /* No celular a varredura existe SOMENTE no botão Pesquisar. */
  .vdv-public-job-search-form .vdv-search-keyword-host::after,
  .vdv-public-job-search-form .vdv-search-location-host::after{
    display:none!important;
    animation:none!important;
  }
  .vdv-public-job-search-form .vdv-search-submit-host::after{display:block!important}
}

@media(prefers-reduced-motion:reduce){
  .vdv-public-job-search-form .vdv-search-control-host::after{animation:none!important;display:none!important}
}

/* ========================================================================== 
   V2.22.10 — AJUSTE PONTUAL DA BUSCA
   SOMENTE: restaura o tamanho visual no notebook e deixa o shimmer justo.
   Não altera layout/centralização/campos/botão no celular.
   ========================================================================== */
@keyframes vdvSearchControlSweepTight{
  0%{background-position:190% 0;opacity:0}
  8%{opacity:1}
  78%{opacity:1}
  100%{background-position:-90% 0;opacity:0}
}

/* O brilho ocupa exatamente a caixa do controle, sem faixa maior por fora. */
.vdv-public-job-search-form .vdv-search-control-host::after{
  top:0!important;
  right:0!important;
  bottom:0!important;
  left:0!important;
  width:100%!important;
  height:100%!important;
  border-radius:inherit!important;
  filter:none!important;
  transform:none!important;
  background:
    linear-gradient(
      108deg,
      rgba(37,211,102,0) 0%,
      rgba(37,211,102,0) 43%,
      rgba(37,211,102,.08) 46%,
      rgba(37,211,102,.24) 48.5%,
      rgba(255,255,255,.56) 50%,
      rgba(37,211,102,.20) 51.5%,
      rgba(37,211,102,.06) 54%,
      rgba(37,211,102,0) 57%,
      rgba(37,211,102,0) 100%
    )!important;
  background-size:260% 100%!important;
  background-repeat:no-repeat!important;
  animation:vdvSearchControlSweepTight 2.9s ease-in-out infinite!important;
}
.vdv-public-job-search-form.vdv-search-running .vdv-search-control-host::after{
  animation-duration:1.15s!important;
}

/* Notebook/tablet/desktop: remove somente o recorte que encurtava o controle.
   Nenhuma largura, altura, padding ou posicionamento do layout é redefinido. */
@media(min-width:768px){
  .vdv-public-job-search-form .vdv-search-control-host{
    overflow:visible!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .vdv-public-job-search-form .vdv-search-control-host::after{
    animation:none!important;
    display:none!important;
  }
}


/* ========================================================================== 
   V2.22.15 — CARDS E BUSCA DO TABLET NO PADRÃO MOBILE
   Tablet mantém uma vaga por linha e filtros empilhados, apenas com respiro maior.
   ========================================================================== */
@media (min-width:768px) and (max-width:1024px){
  .job_filters .search_jobs,
  .job_listings .search_jobs,
  .search_jobs{
    grid-template-columns:minmax(0,1fr)!important;
    gap:12px!important;
  }
  .search_jobs .search_submit{grid-column:auto!important}

  ul.job_listings{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:16px!important;
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    padding-left:0!important;
    padding-right:0!important;
  }
  ul.job_listings>li.job_listing{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-left:0!important;
    margin-right:0!important;
  }
  ul.job_listings>li.job_listing>a{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }
  /* Neutraliza layouts de duas colunas do tema sem redesenhar o card. */
  .job_listings .job_listing:nth-child(n),
  ul.job_listings>li.job_listing:nth-child(n){
    grid-column:1/-1!important;
  }
  .vdv-job-search-skeleton-grid,
  .vdv-global-search-grid{grid-template-columns:minmax(0,1fr)!important}
}
