/* Portal Proença&Ferraz 2.3.3 — localização, municípios e WhatsApp. */
.pfo-page-title-hidden,
body.page .entry-title,
body.page .page-title,
body.page .wp-block-post-title,
body.page article > header.entry-header,
body.page main > .page-header,
body.page .pfi-page-heading {
  display: none !important;
}

.pfo-state-select,
.pfo-city-select {
  width: 100%;
}

.pfo-location-editor {
  grid-column: 1 / -1;
  border: 1px solid rgba(148, 163, 184, .24);
  border-radius: 18px;
  background: linear-gradient(145deg, rgba(9, 24, 33, .96), rgba(4, 13, 20, .96));
  padding: 18px;
  display: grid;
  gap: 14px;
}

.pfo-location-editor__heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
}

.pfo-location-editor__heading > div:first-child {
  display: grid;
  gap: 5px;
}

.pfo-location-editor__heading strong {
  color: #f8fafc;
  font-size: 1rem;
}

.pfo-location-editor__heading span,
.pfo-location-attribution,
.pfo-location-editor__status {
  color: #9fb0bd;
  font-size: .84rem;
  line-height: 1.5;
}

.pfo-location-editor__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.pfo-location-map {
  width: 100%;
  min-height: 280px;
  overflow: hidden;
  border: 1px solid rgba(148, 163, 184, .2);
  border-radius: 16px;
  background: radial-gradient(circle at center, rgba(22, 73, 96, .32), rgba(3, 8, 13, .95));
}

.pfo-location-map iframe {
  display: block;
  width: 100%;
  min-height: 320px;
  border: 0;
  background: #dce5e9;
}

.pfo-location-map__empty {
  min-height: 280px;
  padding: 28px;
  display: grid;
  place-content: center;
  justify-items: center;
  text-align: center;
  gap: 7px;
  color: #b9c7d0;
}

.pfo-location-map__empty > span {
  width: 54px;
  height: 54px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: rgba(42, 119, 157, .18);
  color: #66d9ff;
  font-size: 1.65rem;
}

.pfo-location-map__empty strong {
  color: #f8fafc;
}

.pfo-location-map__empty small {
  max-width: 460px;
  color: #93a8b6;
  line-height: 1.5;
}

.pfo-location-editor__status.is-success { color: #7ee2a8; }
.pfo-location-editor__status.is-error { color: #ff9797; }
.pfo-location-editor__status.is-working { color: #79d9ff; }

.pfo-profile-location {
  overflow: hidden;
}

.pfo-profile-location .pfo-location-map {
  margin-top: 12px;
}

.pfo-location-attribution {
  display: block;
  margin-top: 8px;
}

.pfo-location-attribution a {
  color: #66d9ff;
}

.pfo-whatsapp-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #71e59c !important;
  font-weight: 700;
  text-decoration: none;
}

.pfo-whatsapp-link:hover {
  color: #a6f4c2 !important;
  text-decoration: underline;
}

.pfo-whatsapp-icon {
  width: 20px;
  height: 20px;
  flex: 0 0 auto;
}

.pfo-field-with-icon {
  position: relative;
}

.pfo-field-with-icon label {
  position: relative;
  display: block;
}

.pfo-field-with-icon > .pfo-whatsapp-icon,
.pfo-field-with-icon label > .pfo-whatsapp-icon {
  position: absolute;
  right: 12px;
  bottom: 13px;
  color: #71e59c;
  pointer-events: none;
}

.pfo-field-with-icon input {
  padding-right: 42px !important;
}

.pfo-whatsapp-preview {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  width: fit-content;
  margin: 7px 0 8px;
  padding: 7px 10px;
  border: 1px solid rgba(113, 229, 156, .34);
  border-radius: 999px;
  background: rgba(31, 164, 91, .1);
  color: #8ef0b2 !important;
  font-size: .84rem;
  font-weight: 700;
  line-height: 1;
  text-decoration: none !important;
}

.pfo-whatsapp-preview[hidden] {
  display: none !important;
}

.pfo-whatsapp-preview svg {
  width: 17px;
  height: 17px;
}

.pfo-whatsapp-preview small {
  color: #b6c8bf;
  font-size: .72rem;
  font-weight: 500;
}

.pfo-whatsapp-preview:hover {
  border-color: rgba(113, 229, 156, .65);
  background: rgba(31, 164, 91, .18);
  color: #c8fbd9 !important;
}

@media (max-width: 780px) {
  .pfo-location-editor__heading {
    display: grid;
  }
  .pfo-location-editor__actions {
    justify-content: stretch;
  }
  .pfo-location-editor__actions .pfo-button {
    width: 100%;
  }
  .pfo-location-map,
.pfo-location-map__empty {
    min-height: 230px;
  }
  .pfo-location-map iframe {
    min-height: 270px;
  }
}
