/* Estiliza JetFormBuilder + login nativo no visual wb-ds */

/* ----- layout das linhas ----- */
.jet-form-builder-row{display:flex;flex-direction:column;gap:7px;margin-bottom:16px}
.jet-form-builder__label,.jet-form-builder__label-text{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.jet-form-builder__required{color:var(--gold-text);margin-left:2px}
.jet-form-builder__field-wrap{width:100%}
.jet-form-builder__desc{font-size:11.5px;color:var(--muted)}

/* ----- inputs / select / textarea ----- */
.jet-form-builder__field.text-field,
.jet-form-builder__field.date-field,
.jet-form-builder__field.number-field,
.jet-form-builder__field.select-field,
.jet-form-builder__field input[type=text],
.jet-form-builder__field input[type=email],
.jet-form-builder__field input[type=tel],
.jet-form-builder__field input[type=url],
.jet-form-builder__field input[type=number],
.jet-form-builder__field input[type=password],
.jet-form-builder__field input[type=date],
textarea.jet-form-builder__field{
  width:100%;padding:13px 14px;border:1px solid var(--border);border-radius:var(--r-lg);
  background:var(--surface);font-size:15px;color:var(--secondary);font-family:inherit;line-height:1.4;
  transition:border-color .15s,box-shadow .15s;
}
textarea.jet-form-builder__field{min-height:120px;resize:vertical;line-height:1.6}
.jet-form-builder__field:focus{outline:0;border-color:var(--gold);box-shadow:0 0 0 3px rgba(196,153,74,.15)}
.jet-form-builder__field::placeholder{color:#bdbcb8}

/* select com seta */
select.jet-form-builder__field{
  -webkit-appearance:none;appearance:none;padding-right:36px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23636362' stroke-width='2.5'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 13px center;
}

/* ----- checkbox / radio (comodidades, selo, finalidade) como chips ----- */
.checkradio-wrap{display:flex;flex-wrap:wrap;gap:8px}
.checkradio-wrap .jet-form-builder__field-label{margin:0}
.checkradio-wrap label.jet-form-builder__field-label{
  display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-size:13.5px;color:var(--secondary);
  border:1px solid var(--border);border-radius:100px;padding:8px 14px;background:var(--surface);
  text-transform:none;letter-spacing:0;font-weight:500;line-height:1;
}
.checkradio-wrap input{accent-color:var(--gold);margin:0}

/* ----- botão submit ----- */
.jet-form-builder__action-button.jet-form-builder__submit{
  width:100%;padding:15px 24px;min-height:48px;border:0;border-radius:var(--r-lg);
  background:#111;color:#fff;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;
  cursor:pointer;box-shadow:0 4px 16px rgba(17,17,17,.18);transition:transform .15s;margin-top:8px;
}
.jet-form-builder__action-button.jet-form-builder__submit:hover{transform:translateY(-2px)}

/* ----- mensagens ----- */
.jet-form-builder-messages-wrap{margin-top:12px;font-size:14px}
.jet-form-builder-messages-wrap .jet-form-builder-message--success{color:#1a7f37}
.jet-form-builder-messages-wrap .jet-form-builder-message--error,
.jet-form-builder__fields-error{color:var(--danger)}

/* upload */
.jet-form-builder-file-upload__input,.jet-form-builder__field[type=file]{padding:10px;border:1px dashed var(--border-md);border-radius:var(--r-lg);background:var(--surface-2)}

/* form de cadastro: largura confortável + 2 colunas nos campos curtos (como o mock) */
.wb-pagewrap .jet-form-builder{max-width:760px;display:flex;flex-wrap:wrap;gap:0 16px;align-items:flex-start}
.wb-pagewrap .jet-form-builder > .jet-form-builder-row,
.wb-pagewrap .jet-form-builder .jet-form-builder-row{width:100%}
.wb-pagewrap .jet-form-builder .jet-form-builder-row:has([data-field-name="wb_tipo"]),
.wb-pagewrap .jet-form-builder .jet-form-builder-row:has([data-field-name="wb_finalidade"]),
.wb-pagewrap .jet-form-builder .jet-form-builder-row:has([data-field-name="wb_quartos"]),
.wb-pagewrap .jet-form-builder .jet-form-builder-row:has([data-field-name="wb_suites"]),
.wb-pagewrap .jet-form-builder .jet-form-builder-row:has([data-field-name="wb_banheiros"]),
.wb-pagewrap .jet-form-builder .jet-form-builder-row:has([data-field-name="wb_vagas"]),
.wb-pagewrap .jet-form-builder .jet-form-builder-row:has([data-field-name="wb_area_util"]),
.wb-pagewrap .jet-form-builder .jet-form-builder-row:has([data-field-name="wb_area_total"]),
.wb-pagewrap .jet-form-builder .jet-form-builder-row:has([data-field-name="wb_cep"]),
.wb-pagewrap .jet-form-builder .jet-form-builder-row:has([data-field-name="wb_bairro"]),
.wb-pagewrap .jet-form-builder .jet-form-builder-row:has([data-field-name="wb_cidade"]),
.wb-pagewrap .jet-form-builder .jet-form-builder-row:has([data-field-name="wb_uf"]),
.wb-pagewrap .jet-form-builder .jet-form-builder-row:has([data-field-name="wb_valor_venda"]),
.wb-pagewrap .jet-form-builder .jet-form-builder-row:has([data-field-name="wb_condominio"]),
.wb-pagewrap .jet-form-builder .jet-form-builder-row:has([data-field-name="wb_iptu"]),
.wb-pagewrap .jet-form-builder .jet-form-builder-row:has([data-field-name="wb_status_anuncio"]){width:calc(50% - 8px)}
/* títulos de seção numerados (Heading blocks: Dados principais, Características, ...) */
.wb-pagewrap .jet-form-builder{counter-reset:wbsec}
.wb-pagewrap .jet-form-builder h2,.wb-pagewrap .jet-form-builder h3,.wb-pagewrap .jet-form-builder h4{
  width:100%;display:flex;align-items:center;gap:10px;
  font-size:13px;font-weight:800;letter-spacing:.02em;margin:30px 0 14px;padding-bottom:10px;
  border-bottom:1px solid var(--border);color:var(--text)
}
.wb-pagewrap .jet-form-builder h2::before,.wb-pagewrap .jet-form-builder h3::before,.wb-pagewrap .jet-form-builder h4::before{
  counter-increment:wbsec;content:counter(wbsec);
  width:24px;height:24px;border-radius:50%;background:#111;color:#fff;
  display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex:0 0 auto
}
.wb-pagewrap .jet-form-builder h2:first-child,.wb-pagewrap .jet-form-builder h3:first-child{margin-top:0}

/* ----- sidebar de filtros do catálogo: empilhar opções ----- */
.filters .check{display:flex;width:100%;margin-bottom:8px}
.filters .filter-g:first-of-type{padding-top:0}
.filters .range-row .input{padding:10px 12px;font-size:14px}
.filters select.select{width:100%}
.filters .chips{margin-top:2px}

/* ----- botão flutuante de WhatsApp ----- */
.wb-wa-float{position:fixed;right:20px;bottom:20px;z-index:140;width:56px;height:56px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;background:#25D366;color:#fff;
  box-shadow:0 8px 24px rgba(37,211,102,.42);transition:transform .2s ease, box-shadow .2s ease}
.wb-wa-float:hover{transform:translateY(-3px) scale(1.04);box-shadow:0 12px 30px rgba(37,211,102,.5)}
@media(max-width:600px){.wb-wa-float{width:50px;height:50px;right:14px;bottom:14px}}

/* ----- tabelas do painel viram cards no mobile (sem scroll horizontal) ----- */
@media(max-width:640px){
  .adm-card{background:transparent;border:0;border-radius:0;box-shadow:none;overflow:visible}
  .adm-scroll{overflow-x:visible}
  .adm-table{min-width:0;display:block}
  .adm-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .adm-table tbody,.adm-table tr,.adm-table td{display:block;width:auto}
  .adm-table tr{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--sh-card);margin-bottom:12px;overflow:hidden}
  .adm-table td{display:flex;align-items:center;justify-content:space-between;gap:14px;white-space:normal;text-align:right;padding:11px 14px;border-bottom:1px solid var(--border)}
  .adm-table tr td:last-child{border-bottom:0}
  .adm-table td::before{content:attr(data-label);font-weight:700;text-transform:uppercase;font-size:10px;letter-spacing:.06em;color:var(--muted);text-align:left;flex:0 0 38%}
  .adm-table td .acts{justify-content:flex-end}
  .adm-table td:first-child{justify-content:flex-start;text-align:left;background:var(--surface-2)}
  .adm-table td:first-child::before{display:none}
  .adm-table td:first-child .u{justify-content:flex-start;width:100%;text-align:left}
  .adm-table td:first-child .nm,.adm-table td:first-child .em{text-align:left}
}

/* ----- container das páginas de painel (dashboard, cadastros) ----- */
.wb-pagewrap{max-width:var(--maxw);margin:0 auto;padding:40px 32px 80px}
@media(max-width:640px){.wb-pagewrap{padding:28px 18px 56px}}
