.oabmsmap-wrap{font-family:inherit;color:#242C44;position:relative}
.oabmsmap-toolbar{display:flex;gap:16px;align-items:flex-end;justify-content:space-between;margin:10px 0 14px}
.oabmsmap-search{display:flex;flex-direction:column;gap:6px;min-width:260px}
.oabmsmap-label{font-size:12px;font-weight:700;opacity:.9}
.oabmsmap-input{border:1px solid rgba(36,44,68,.25);border-radius:10px;padding:10px 12px;outline:none;width:100%}
.oabmsmap-input:focus{border-color:rgba(36,44,68,.55);box-shadow:0 0 0 3px rgba(36,44,68,.08)}
.oabmsmap-hint{font-size:13px;opacity:.75}

.oabmsmap-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:14px}
@media (max-width:980px){.oabmsmap-map{min-height:640px}}

.oabmsmap-map{border:1px solid rgba(36,44,68,.12);border-radius:14px;background:#fff;position:relative;overflow:hidden;min-height:720px}
.oabmsmap-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:14px;opacity:.7}

/* Centraliza o SVG no card sem tirar ele da tela */
.oabmsmap-svg{
  display:flex;
  align-items:center;
  justify-content:center;
}

/* Card do mapa vira referência para o host absoluto */
.oabmsmap-map{
  min-height: 0 !important;
  height: 720px !important;      /* ajuste aqui: 480 / 520 / 560 */
  max-height: 720px !important;  /* garante que não estoura */
}

/* Reduz o tamanho do mapa interno (zoom out) */
.oabmsmap-svg svg{
  width:100%;
  height:100%;
  display:block;

  transform: scale(1) translateY(-3px);         /* <-- aqui controla o tamanho do mapa */
  transform-origin: 50% 50%;
  transform-box: fill-box;         /* importante para SVG */
}

@media (max-width:980px){
  .oabmsmap-svg svg{
    transform: scale(0.92);
  }
}

/* Tooltip */
.oabmsmap-tooltip{
  position:fixed;z-index:999999;
  background:#242C44;color:#fff;
  padding:6px 10px;border-radius:10px;
  font-size:12px;line-height:1;white-space:nowrap;
  box-shadow:0 10px 30px rgba(0,0,0,.18);
  transform:translate(10px, 12px);
  pointer-events:none;
  opacity:0;
  transition:opacity .12s ease;
}
.oabmsmap-tooltip.is-on{opacity:1}

/* Painel lateral */
.oabmsmap-panel{border:1px solid rgba(36,44,68,.12);border-radius:14px;background:#fff;overflow:hidden}
.oabmsmap-panel-title{padding:12px 14px;font-weight:800;border-bottom:1px solid rgba(36,44,68,.10)}
.oabmsmap-items{max-height:560px;overflow:auto;padding:10px 10px}
.oabmsmap-item{border:1px solid rgba(36,44,68,.12);border-radius:12px;padding:10px 10px;margin-bottom:10px;cursor:pointer;transition:transform .12s ease, box-shadow .12s ease}
.oabmsmap-item:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(0,0,0,.08)}
.oabmsmap-item-title{font-weight:800}
.oabmsmap-item-sub{font-size:12px;opacity:.75;margin-top:2px}

/* Modal base */
.oabmsmap-modal,.oabmsmap-submodal{position:fixed;inset:0;z-index:999999;display:none}
.oabmsmap-modal[aria-hidden="false"],.oabmsmap-submodal[aria-hidden="false"]{display:block}
.oabmsmap-modal-backdrop,.oabmsmap-submodal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.55)}

.oabmsmap-modal-card{
  position:absolute;left:50%;top:50%;
  transform:translate(-50%,-50%);
  width:min(980px,92vw);
  max-height:86vh;
  overflow:auto;
  background:#fff;
  border-radius:16px;
  border:1px solid rgba(36,44,68,.12);
  box-shadow:0 18px 60px rgba(0,0,0,.18)
}

.oabmsmap-modal-close{
  position:absolute;right:14px;top:14px;
  width:44px;height:44px;border-radius:12px;border:0;
  background:#b0161b;color:#fff;
  cursor:pointer;
  display:flex;align-items:center;justify-content:center; /* centraliza o X */
  font-size:22px;line-height:1;font-weight:900;
}

.oabmsmap-modal-header{padding:16px 18px 12px;border-bottom:1px solid rgba(36,44,68,.10)}
.oabmsmap-modal-title{font-size:18px;font-weight:900}
.oabmsmap-modal-subtitle{font-size:13px;opacity:.75;margin-top:2px}
.oabmsmap-modal-body{padding:14px 18px 18px;display:grid;gap:12px}

.oabmsmap-block{border:1px solid rgba(36,44,68,.10);border-radius:14px;padding:12px 12px;background:#fff}
.oabmsmap-block-title{font-weight:900;margin-bottom:10px;font-size:13px}

.oabmsmap-kv{display:grid;grid-template-columns:120px 1fr;gap:10px;padding:6px 0;border-bottom:1px dashed rgba(36,44,68,.12)}
.oabmsmap-kv:last-child{border-bottom:none}
.oabmsmap-k{font-size:12px;opacity:.75;font-weight:800}
.oabmsmap-v{font-size:13px}

.oabmsmap-muted{opacity:.7;font-size:12px}

/* Botões */
.oabmsmap-btn{
  display:inline-flex;align-items:center;gap:8px;
  border:1px solid rgba(36,44,68,.18);
  padding:10px 12px;border-radius:12px;
  text-decoration:none;color:#242C44;
  font-weight:800;font-size:13px;
}
.oabmsmap-btn:hover{box-shadow:0 12px 28px rgba(0,0,0,.08)}

/* WhatsApp botão elegante */
.oabmsmap-btn-wpp{
  display:inline-flex;align-items:center;gap:10px;
  background:#fff;
  border:1px solid rgba(36,44,68,.18);
  padding:10px 14px;border-radius:14px;
  text-decoration:none;color:#242C44;
  font-weight:900;font-size:13px;
}
.oabmsmap-btn-wpp:hover{box-shadow:0 12px 28px rgba(0,0,0,.08)}
.oabmsmap-wpp-ico{
  width:18px;height:18px;display:inline-block;
  background:no-repeat center/contain;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath fill='%2325D366' d='M19.11 17.53c-.26-.13-1.53-.75-1.77-.84-.24-.09-.41-.13-.58.13-.17.26-.67.84-.82 1.01-.15.17-.3.2-.56.07-.26-.13-1.09-.4-2.08-1.29-.77-.69-1.29-1.54-1.44-1.8-.15-.26-.02-.4.11-.53.12-.12.26-.3.39-.45.13-.15.17-.26.26-.43.09-.17.04-.32-.02-.45-.06-.13-.58-1.4-.8-1.92-.21-.5-.43-.43-.58-.44h-.5c-.17 0-.45.06-.69.32-.24.26-.91.89-.91 2.18 0 1.29.94 2.54 1.07 2.72.13.17 1.85 2.83 4.48 3.97.63.27 1.12.43 1.5.55.63.2 1.2.17 1.65.1.5-.07 1.53-.63 1.75-1.24.22-.61.22-1.13.15-1.24-.06-.11-.24-.17-.5-.3z'/%3E%3Cpath fill='%2325D366' d='M16.01 3C9.38 3 4 8.38 4 15.01c0 2.1.55 4.15 1.6 5.96L4 29l8.25-1.56c1.73.94 3.68 1.43 5.76 1.43C24.64 28.87 30 23.49 30 16.86 30 10.23 22.64 3 16.01 3zm0 23.12c-1.92 0-3.71-.51-5.26-1.4l-.38-.22-4.89.93.96-4.77-.25-.39c-1.03-1.6-1.57-3.46-1.57-5.39C4.62 9.52 9.67 4.48 16.01 4.48S27.4 9.52 27.4 15.87c0 6.34-5.05 10.25-11.39 10.25z'/%3E%3C/svg%3E");
}

/* Diretoria - tabela elegante */
.oabmsmap-dir-table{display:grid;gap:8px}
.oabmsmap-dir-row{
  display:grid;grid-template-columns:220px 1fr 120px;
  gap:10px;align-items:center;
  background:rgba(36,44,68,.04);
  border:1px solid rgba(36,44,68,.10);
  border-radius:12px;
  padding:10px 12px;
}
@media (max-width:720px){
  .oabmsmap-dir-row{grid-template-columns:1fr}
}
.oabmsmap-dir-role{font-weight:900;font-size:12px;opacity:.85}
.oabmsmap-dir-name{font-weight:900}
.oabmsmap-dir-oab{font-size:12px;opacity:.8;text-align:right}
@media (max-width:720px){.oabmsmap-dir-oab{text-align:left}}

/* Related list */
.oabmsmap-related{display:grid;gap:10px}
.oabmsmap-relitem{
  display:flex;justify-content:space-between;gap:12px;align-items:center;
  border:1px solid rgba(36,44,68,.10);
  border-radius:12px;
  padding:10px 12px;
}
.oabmsmap-relmeta{font-size:12px;opacity:.7;margin-top:2px}
.oabmsmap-badge{
  display:inline-flex;align-items:center;
  padding:6px 10px;border-radius:999px;
  font-size:12px;font-weight:900;
  border:1px solid rgba(36,44,68,.14);
  background:rgba(36,44,68,.04);
}
.oabmsmap-badge.is-auto{background:rgba(37,211,102,.10);border-color:rgba(37,211,102,.25)}

/* Submodal */
.oabmsmap-submodal-card{
  position:absolute;left:50%;top:50%;
  transform:translate(-50%,-50%);
  width:min(820px,92vw);
  max-height:80vh;
  overflow:auto;
  background:#fff;
  border-radius:16px;
  border:1px solid rgba(36,44,68,.12);
  box-shadow:0 18px 60px rgba(0,0,0,.18)
}
.oabmsmap-submodal-close{
  position:absolute;right:14px;top:14px;
  width:44px;height:44px;border-radius:12px;border:0;
  background:#b0161b;color:#fff;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  font-size:22px;line-height:1;font-weight:900;
}
.oabmsmap-submodal-header{padding:16px 18px 12px;border-bottom:1px solid rgba(36,44,68,.10)}
.oabmsmap-submodal-title{font-size:18px;font-weight:900}
.oabmsmap-submodal-subtitle{font-size:13px;opacity:.75;margin-top:2px}
.oabmsmap-submodal-body{padding:14px 18px 18px;display:grid;gap:10px}

.oabmsmap-banner{
  padding:10px 12px;border-radius:12px;
  font-weight:900;font-size:13px;
  background:rgba(37,211,102,.12);
  border:1px solid rgba(37,211,102,.25);
}

/* ------------------------------------------------------------------
   ✅ AJUSTES PARA LINHA DE E-MAIL (MODAL PRINCIPAL)
   - Alinha texto + botão
   - Evita quebrar no mobile
   - Remove dependência de margin-left inline
------------------------------------------------------------------- */

/* A área de valor (coluna 2) pode ter múltiplos elementos. */
.oabmsmap-kv .oabmsmap-v{
  min-width:0; /* evita overflow em strings longas */
}

/* Linha do e-mail: garante quebra e alinhamento */
.oabmsmap-kv .oabmsmap-v [data-field="email"]{
  word-break:break-word;
}

/* Botão e placeholder do e-mail: padrão consistente */
.oabmsmap-kv .oabmsmap-v [data-field="email_btn"],
.oabmsmap-kv .oabmsmap-v [data-field="email_empty"]{
  margin-left:10px;
}

/* Em telas pequenas, empilha melhor quando necessário */
@media (max-width:520px){
  .oabmsmap-kv{grid-template-columns:1fr;gap:6px}
  .oabmsmap-kv .oabmsmap-v [data-field="email_btn"],
  .oabmsmap-kv .oabmsmap-v [data-field="email_empty"]{
    margin-left:0;
    margin-top:8px;
    display:inline-flex;
  }
}
