/* Fondo verde menta suave, acotado al formulario de publicación de HivePress. */
body.vl-publicar-activo { background: #eefaf4 !important; }
body.vl-publicar-activo .hp-page__content,
body.vl-publicar-activo main.site-main {
  background: linear-gradient(180deg,#e4f8ef 0%,#f2fcf7 60%,#fff 100%) !important;
}
body.vl-publicar-activo .hp-form--listing-submit,
body.vl-publicar-activo .hp-form--listing-update {
  max-width: 860px;
  margin: 16px auto 100px !important;
  padding: 26px !important;
  background: #fff !important;
  border: 1px solid #cce9d9 !important;
  border-radius: 23px !important;
  box-shadow: 0 14px 32px rgba(0,105,73,.08);
}
body.vl-publicar-activo .hp-form--listing-submit .hp-form__field,
body.vl-publicar-activo .hp-form--listing-update .hp-form__field { margin-bottom: 15px; }
body.vl-publicar-activo .hp-form--listing-submit label,
body.vl-publicar-activo .hp-form--listing-update label {
  color: #155b47 !important; font-weight: 700; letter-spacing: 0;
}
body.vl-publicar-activo .hp-form--listing-submit input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
body.vl-publicar-activo .hp-form--listing-submit select,
body.vl-publicar-activo .hp-form--listing-submit textarea,
body.vl-publicar-activo .hp-form--listing-update input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
body.vl-publicar-activo .hp-form--listing-update select,
body.vl-publicar-activo .hp-form--listing-update textarea {
  background: #fcfffd !important; border: 1px solid #c9dfd3 !important;
  color: #1d3029 !important; min-height: 47px;
  border-radius: 13px !important; box-shadow: none !important;
}
body.vl-publicar-activo .hp-form--listing-submit input:focus,
body.vl-publicar-activo .hp-form--listing-submit select:focus,
body.vl-publicar-activo .hp-form--listing-submit textarea:focus,
body.vl-publicar-activo .hp-form--listing-update input:focus,
body.vl-publicar-activo .hp-form--listing-update select:focus,
body.vl-publicar-activo .hp-form--listing-update textarea:focus {
  border-color: #05856a !important; outline: 2px solid rgba(8,132,104,.12);
}
body.vl-publicar-activo .hp-form--listing-submit button[type="submit"],
body.vl-publicar-activo .hp-form--listing-submit .hp-form__button,
body.vl-publicar-activo .hp-form--listing-update button[type="submit"],
body.vl-publicar-activo .hp-form--listing-update .hp-form__button {
  background: #078469 !important; color: #fff !important;
  border: 0 !important; border-radius: 24px !important;
  box-shadow: 0 6px 16px rgba(8,132,104,.2);
}
body.vl-publicar-activo .vl-usps-title {
  color: #035945; font-size: 17px; font-weight: 800;
  background: linear-gradient(100deg,#d4f4e4,#f2fff9);
  border-left: 4px solid #078469; border-radius: 13px;
  padding: 14px 16px; margin: 21px 0 14px;
}
body.vl-publicar-activo .vl-usps-field {
  padding: 12px 13px; border-radius: 12px;
  background: #f5fcf8; border: 1px solid #dfefe6;
}
body.vl-publicar-activo .vl-usps-field.vl-private-zip { background: #fbfdfb; }
body.vl-publicar-activo .vl-usps-field.vl-private-zip label::before {
  content: '🔒 '; font-size: 12px;
}
body.vl-publicar-activo .vl-usps-hidden,
body.vl-publicar-activo .vl-unused-combined { display: none !important; }
body.vl-publicar-activo .vl-usps-note {
  margin: 5px 0 15px; padding: 11px 13px;
  background: #fff8e8; border: 1px solid #f2e6be;
  color: #69562b; border-radius: 11px; font-size: 13px; line-height: 1.55;
}
body.vl-publicar-activo .vl-location-field {
  background: #f0fbf4; border: 1px solid #d4eee0;
  border-radius: 12px; padding: 10px 12px;
}
@media (max-width:767px) {
  body.vl-publicar-activo .hp-form--listing-submit,
  body.vl-publicar-activo .hp-form--listing-update {
    margin: 7px 9px 100px !important;
    padding: 16px 13px !important; border-radius: 19px !important;
  }
  body.vl-publicar-activo .vl-usps-title { font-size: 16px; }
  body.vl-publicar-activo .hp-form--listing-submit .hp-form__field,
  body.vl-publicar-activo .hp-form--listing-update .hp-form__field { margin-bottom: 13px; }
}

/* v1.3: Medidas juntas, en una sola fila incluso en teléfono. */
body.vl-publicar-activo .vl-usps-dimensions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  padding: 12px;
  margin: 0 0 16px;
  background: #eefaf4;
  border: 1px solid #cbeadd;
  border-radius: 14px;
}
body.vl-publicar-activo .vl-usps-dimensions.vl-usps-hidden { display: none !important; }
body.vl-publicar-activo .vl-usps-dimensions-label {
  grid-column: 1 / -1;
  color: #075f4b;
  font-size: 14px;
  font-weight: 800;
  margin-bottom: 2px;
}
body.vl-publicar-activo .vl-usps-dimensions > .hp-form__field,
body.vl-publicar-activo .vl-usps-dimensions > .hp-field {
  min-width: 0;
  width: 100%;
  padding: 8px !important;
  margin: 0 !important;
  border-radius: 10px !important;
  background: #fff !important;
}
body.vl-publicar-activo .vl-usps-dimensions label {
  display: block;
  font-size: 12px !important;
  line-height: 1.3;
  margin-bottom: 5px !important;
}
body.vl-publicar-activo .vl-usps-dimensions input {
  width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  min-height: 42px !important;
  padding: 7px 8px !important;
  font-size: 15px !important;
}
body.vl-publicar-activo .vl-usps-asterisk { color: #c63b31; font-weight: 800; }
body.vl-publicar-activo .vl-usps-required { border-color: #b7e1ce; }
body.vl-publicar-activo .vl-usps-required input:invalid,
body.vl-publicar-activo .vl-usps-required select:invalid { border-color: #d8a09e !important; }
body.vl-publicar-activo .vl-usps-note[hidden] { display: none !important; }
@media (max-width:380px) {
  body.vl-publicar-activo .vl-usps-dimensions { gap: 6px; padding: 8px; }
  body.vl-publicar-activo .vl-usps-dimensions > .hp-form__field { padding: 6px !important; }
  body.vl-publicar-activo .vl-usps-dimensions label { font-size: 11px !important; }
}

/* v1.4 — formulario móvil más compacto, fotos al principio y dos columnas ubicación. */
body.vl-publicar-activo .hp-form--listing-submit {
  padding: 19px 18px !important;
}
body.vl-publicar-activo .hp-form--listing-submit .hp-form__field {
  margin-bottom: 11px;
}
body.vl-publicar-activo .hp-form--listing-submit .hp-form__field > label {
  display: block;
  margin-bottom: 6px;
  font-size: 13px;
  line-height: 1.3;
}
body.vl-publicar-activo .hp-form--listing-submit .hp-form__field > .hp-field__description {
  margin-bottom: 7px;
  font-size: 12px;
  line-height: 1.4;
}
body.vl-publicar-activo .hp-form--listing-submit input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
body.vl-publicar-activo .hp-form--listing-submit select { min-height: 44px; }
body.vl-publicar-activo .hp-form--listing-submit .vl-v14-photos {
  background: #f0fbf5;
  border: 1px solid #d1eedf;
  border-radius: 13px;
  padding: 13px;
}
body.vl-publicar-activo .hp-form--listing-submit .vl-v14-photos .hp-field__description {
  color: #3d725c;
}
body.vl-publicar-activo .hp-form--listing-submit .vl-v14-location-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0 0 12px;
}
body.vl-publicar-activo .hp-form--listing-submit .vl-v14-location-row > .hp-form__field {
  min-width: 0;
  margin: 0 !important;
  padding: 10px !important;
}
body.vl-publicar-activo .hp-form--listing-submit .vl-v14-location-row input,
body.vl-publicar-activo .hp-form--listing-submit .vl-v14-location-row select {
  min-width: 0;
  width: 100%;
  padding-left: 9px !important;
  padding-right: 9px !important;
  box-sizing: border-box;
}
body.vl-publicar-activo .hp-form--listing-submit .vl-v14-price {
  border: 1px solid #c9ead9;
  border-radius: 13px;
  padding: 12px;
  background: #f2fcf7;
}
body.vl-publicar-activo .hp-form--listing-submit .vl-usps-title {
  margin-top: 13px;
  margin-bottom: 10px;
  padding: 11px 13px;
}
body.vl-publicar-activo .hp-form--listing-submit .vl-usps-field {
  padding: 10px 11px;
}
body.vl-publicar-activo .hp-form--listing-submit .vl-usps-dimensions {
  margin-bottom: 10px;
  padding: 9px;
}
body.vl-publicar-activo .hp-form--listing-submit .vl-v14-footer {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 10px;
  align-items: stretch;
}
body.vl-publicar-activo .hp-form--listing-submit .vl-v14-footer > button[type="submit"],
body.vl-publicar-activo .hp-form--listing-submit .vl-v14-footer > input[type="submit"] {
  border-radius: 15px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 12px 6px !important;
  font-size: 15px;
}
body.vl-publicar-activo .hp-form--listing-submit .vl-v14-save-draft {
  color: #04634e !important;
  border: 2px solid #078469 !important;
  background: #fff !important;
  border-radius: 15px !important;
  padding: 12px 6px !important;
  font-size: 15px;
  font-weight: 750;
  width: 100%;
  box-shadow: none !important;
  cursor: pointer;
}
body.vl-publicar-activo .hp-form--listing-submit .vl-v14-save-draft:disabled,
body.vl-publicar-activo .hp-form--listing-submit .vl-v14-recover-draft:disabled { opacity: .55; cursor: wait; }
body.vl-publicar-activo .hp-form--listing-submit .vl-v14-draft-extra {
  grid-column: 1 / -1;
  padding: 2px 3px 0;
}
body.vl-publicar-activo .hp-form--listing-submit .vl-v14-recover-draft {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  color: #087b62 !important;
  text-decoration: underline;
  font-size: 13px;
  padding: 2px 0 !important;
  cursor: pointer;
}
body.vl-publicar-activo .hp-form--listing-submit .vl-v14-draft-status {
  color: #446057;
  font-size: 12px;
  line-height: 1.4;
  margin: 4px 0 0 !important;
}
body.vl-publicar-activo .hp-form--listing-submit .vl-v14-draft-status.vl-v14-error { color: #a22b22; }
@media (max-width: 767px) {
  body.vl-publicar-activo .hp-form--listing-submit {
    padding: 14px 12px !important;
  }
}
@media (max-width: 360px) {
  body.vl-publicar-activo .hp-form--listing-submit .vl-v14-location-row { gap: 7px; }
  body.vl-publicar-activo .hp-form--listing-submit .vl-v14-location-row > .hp-form__field { padding: 7px !important; }
  body.vl-publicar-activo .hp-form--listing-submit .vl-v14-footer { gap: 7px; }
  body.vl-publicar-activo .hp-form--listing-submit .vl-v14-footer > button { font-size: 13px !important; }
}


/* v1.5 — Dirección privada, mapa aproximado y fondo esmeralda suave. */
body.vl-publicar-activo .vl-v15-location-hidden { display: none !important; }
body.vl-publicar-activo .vl-v15-map-note {
  margin: 0 0 14px !important; padding: 8px 11px; background: #eefbf4;
  border: 1px solid #cde9da; color: #376f5a; border-radius: 11px;
  font-size: 12px; line-height: 1.5;
}
body.vl-publicar-activo .vl-v15-map-note.vl-v15-map-warning {
  background: #fff7e9; border-color: #eacb86; color: #744e15;
}
body.vl-publicar-activo .vl-v15-origin {
  padding: 13px; margin: 11px 0 17px; border: 1px solid #b9e7d2;
  border-radius: 15px; background: #f4fcf8;
}
body.vl-publicar-activo .vl-v15-origin[hidden] { display: none !important; }
body.vl-publicar-activo .vl-v15-origin summary {
  color: #065f4b; font-size: 15px; font-weight: 800; cursor: pointer;
}
body.vl-publicar-activo .vl-v15-private-desc {
  color: #526d63; font-size: 12px; line-height: 1.6; margin: 9px 0 !important;
}
body.vl-publicar-activo .vl-v15-private-grid {
  display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px;
}
body.vl-publicar-activo .vl-v15-private-field {
  display: flex !important; flex-direction: column; min-width: 0;
  color: #215a48; font-size: 12px !important; gap: 5px;
}
body.vl-publicar-activo .vl-v15-private-field:first-child,
body.vl-publicar-activo .vl-v15-private-field:nth-child(2) { grid-column: 1 / -1; }
body.vl-publicar-activo .vl-v15-private-field input {
  width: 100%; min-width: 0; box-sizing: border-box;
  border: 1px solid #bfdccd !important; border-radius: 11px !important;
  padding: 10px !important; background: #fff !important; font-size: 15px;
}
body.vl-publicar-activo .vl-v15-private-controls { margin-top: 12px; }
body.vl-publicar-activo .vl-v15-save-origin {
  background: #078469 !important; color: #fff !important; border: 0 !important;
  border-radius: 13px !important; padding: 10px 15px !important;
  font-size: 14px; font-weight: 700; cursor: pointer;
}
body.vl-publicar-activo .vl-v15-save-origin:disabled { opacity: .65; }
body.vl-publicar-activo .vl-v15-private-status {
  color: #537366; font-size: 12px; line-height: 1.5; margin: 8px 0 0 !important;
}
body.vl-publicar-activo .vl-v15-private-status.vl-v15-error { color: #b13c35; }
@media (max-width: 370px) {
  body.vl-publicar-activo .vl-v15-origin { padding: 10px; }
  body.vl-publicar-activo .vl-v15-private-grid { gap: 7px; }
}


/* v1.6 — Tarjeta privada USPS en Perfil > Ajustes (no modifica otros formularios). */
.vl-v16-usps-settings {
  box-sizing:border-box; max-width:100%; margin:24px 0 12px;
  padding:clamp(18px,4vw,28px); border:1px solid #cfe8dd;
  background:linear-gradient(145deg,#ecfff5 0%,#f5fcf8 55%,#fff 100%);
  border-radius:24px; color:#183c32;
  box-shadow:0 9px 26px rgba(10,91,74,.07);
}
.vl-v16-usps-settings *, .vl-v16-usps-settings *::before, .vl-v16-usps-settings *::after { box-sizing:border-box; }
.vl-v16-usps-heading { display:flex; align-items:flex-start; gap:12px; margin-bottom:20px; }
.vl-v16-usps-ico { width:48px;height:48px;display:grid;place-items:center; flex:none; border-radius:14px; background:#cbf2e4; font-size:26px; }
.vl-v16-usps-settings h2 { font-size:clamp(21px,4.6vw,28px); line-height:1.2; color:#076450; margin:0 0 5px; font-weight:800; }
.vl-v16-usps-heading p { font-size:14px; line-height:1.5; color:#506b61; margin:0; }
.vl-v16-usps-form { display:grid; gap:15px; }
.vl-v16-usps-form label { display:flex; flex-direction:column; gap:7px; min-width:0; color:#214d40; font-weight:750; font-size:14px; line-height:1.3; }
.vl-v16-usps-form label span { color:#c43e39; }
.vl-v16-usps-form input[type="text"], .vl-v16-usps-form select {
  width:100%; min-width:0; max-width:100%; height:53px; padding:0 15px; border:1px solid #cce3d9;
  background:#fff; border-radius:14px; color:#263a32; font-size:16px; font-weight:400;
  outline-offset:2px; box-shadow:none;
}
.vl-v16-usps-form input:focus, .vl-v16-usps-form select:focus { border-color:#07836e; outline:2px solid #99e0c8; }
.vl-v16-usps-form .vl-v16-usps-row { display:grid; grid-template-columns: 1fr 1fr; gap:12px; }
.vl-v16-usps-privacy { margin:3px 0 0; background:#e2f8ed; border:1px solid #c9ebd9; color:#336553; border-radius:12px; padding:12px 14px; font-size:13px; line-height:1.55; }
.vl-v16-usps-settings .vl-v16-usps-save { width:100%; min-height:54px; border:0; border-radius:14px; background:#07866f; color:#fff; font-size:17px; font-weight:800; cursor:pointer; padding:12px; }
.vl-v16-usps-settings .vl-v16-usps-save:focus-visible { outline:3px solid #b2e2a2; outline-offset:3px; }
.vl-v16-usps-settings .vl-v16-usps-save:hover { background:#036e5b; color:#fff; }
.vl-v16-usps-footnote { color:#638075; font-size:13px; text-align:center; line-height:1.5; margin:0; }
.vl-v16-usps-notice { border-radius:12px; padding:12px 14px; font-size:14px; margin:0 0 16px; }
.vl-v16-usps-good { background:#d6f8e5; color:#125b40; }
.vl-v16-usps-bad { background:#fff1e6; color:#8c3c27; }
@media (max-width:420px) {
  .vl-v16-usps-settings { padding:16px 13px; border-radius:19px; }
  .vl-v16-usps-form .vl-v16-usps-row { gap:9px; }
  .vl-v16-usps-form input[type="text"], .vl-v16-usps-form select { padding:0 10px; }
}
