/* Govazdner Desktop Contact Panel */
@media (min-width: 768px) {
  body.gvmap-enabled.single-listivo_listing .gvmap-desktop-contact-actions {
    display: grid;
    grid-template-columns: minmax(0,1fr) minmax(0,1fr);
    gap: 10px;
    padding: 18px 28px 24px;
    border-top: 1px solid #eef2f5;
  }

  body.gvmap-enabled.single-listivo_listing .gvmap-contact-main-button {
    min-height: var(--gvmap-contact-button-height, 56px);
    border: 0;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 0 18px;
    font-size: 16px;
    font-weight: 700;
    cursor: pointer;
    transition: transform .12s ease, opacity .15s ease;
  }

  body.gvmap-enabled.single-listivo_listing .gvmap-contact-main-button:active { transform: scale(.985); }
  body.gvmap-enabled.single-listivo_listing .gvmap-contact-main-button svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }

  body.gvmap-enabled.single-listivo_listing .gvmap-contact-main-button--message { background: #1677f2; color: #fff; }
  body.gvmap-enabled.single-listivo_listing .gvmap-contact-main-button--call { background: #20c95a; color: #fff; }
  body.gvmap-enabled.single-listivo_listing .gvmap-contact-main-button.is-disabled { background: #e4e9ed; color: #a5afb7; cursor: not-allowed; }

  body.gvmap-contact-hide-original-phone .listivo-listing-user-v2__phone { display: none !important; }
  body.gvmap-contact-hide-original-chat .listivo-listing-user-v2__bottom { display: none !important; }
  body.gvmap-contact-hide-original-socials .elementor-widget-lst_user_chat_via_socials,
  body.gvmap-contact-hide-original-socials [data-widget_type="lst_user_chat_via_socials.default"] { display: none !important; }
}

.gvmap-contact-modal { position: fixed; inset: 0; z-index: 1000000; display: none; align-items: center; justify-content: center; padding: 30px; }
.gvmap-contact-modal.is-open { display: flex; }
.gvmap-contact-modal__backdrop { position: absolute; inset: 0; background: rgba(15,22,28,.52); backdrop-filter: blur(2px); }
.gvmap-contact-modal__dialog { position: relative; width: min(var(--gvmap-contact-modal-width,760px), calc(100vw - 60px)); max-height: calc(100vh - 60px); overflow: auto; background: #fff; border-radius: 18px; box-shadow: 0 24px 80px rgba(0,0,0,.24); }
.gvmap-contact-modal__header { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:22px 24px 16px; border-bottom:1px solid #edf1f4; }
.gvmap-contact-modal__header h2 { margin:0; font-size:26px; line-height:1.2; color:#17212b; }
.gvmap-contact-modal__close { width:42px; height:42px; border:0; border-radius:50%; background:#f4f6f8; color:#1f2933; font-size:30px; line-height:1; cursor:pointer; }
.gvmap-contact-modal__body { padding:22px 24px 26px; }
body.gvmap-contact-modal-open { overflow:hidden; }

.gvmap-contact-seller { display:grid; grid-template-columns:64px minmax(0,1fr) auto; gap:16px; align-items:center; padding:16px; border:1px solid #e5eaef; border-radius:14px; margin-bottom:20px; }
.gvmap-contact-seller__avatar { width:64px; height:64px; border-radius:10px; overflow:hidden; background:#f4f6f8; }
.gvmap-contact-seller__avatar img { width:100%; height:100%; object-fit:cover; display:block; }
.gvmap-contact-seller__name { font-size:18px; font-weight:700; color:#17212b; margin-bottom:5px; }
.gvmap-contact-seller__meta { font-size:14px; line-height:1.45; color:#788590; }
.gvmap-contact-seller__rating { font-size:16px; font-weight:700; color:#1f2933; white-space:nowrap; }
.gvmap-contact-seller__verified { display:inline-flex; margin-top:7px; padding:4px 8px; border-radius:6px; background:#eee8ff; color:#6f55e8; font-size:13px; font-weight:700; }

.gvmap-contact-phone-card { display:grid; grid-template-columns:auto minmax(0,1fr); gap:20px; align-items:center; padding:18px; background:#f5f5f6; border-radius:14px; margin-bottom:16px; }
.gvmap-contact-qr { width:118px; height:118px; padding:8px; background:#fff; border-radius:10px; box-shadow:0 2px 8px rgba(0,0,0,.06); }
.gvmap-contact-qr img { width:100%; height:100%; display:block; object-fit:contain; }
.gvmap-contact-phone-number { font-size:22px; font-weight:700; color:#17212b; margin-bottom:14px; direction:ltr; text-align:left; }
.gvmap-contact-phone-actions { display:flex; flex-wrap:wrap; gap:10px; }
.gvmap-contact-phone-action { min-height:46px; border:1px solid #d7dfe6; background:#fff; color:#25313c; border-radius:9px; display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:0 15px; font-weight:700; text-decoration:none; cursor:pointer; }
.gvmap-contact-phone-action svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.9; stroke-linecap:round; stroke-linejoin:round; }
.gvmap-contact-phone-action--call { color:#1677f2; }

.gvmap-contact-socials { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.gvmap-contact-social { display:flex; align-items:center; gap:12px; min-height:78px; padding:13px 16px; border-radius:12px; background:#f5f5f6; color:#17212b; text-decoration:none; }
.gvmap-contact-social__icon { width:36px; height:36px; display:flex; align-items:center; justify-content:center; }
.gvmap-contact-social__icon svg { width:30px; height:30px; fill:currentColor; stroke:currentColor; }
.gvmap-contact-social--whatsapp .gvmap-contact-social__icon { color:#16c45b; }
.gvmap-contact-social--viber .gvmap-contact-social__icon { color:#7356a5; }
.gvmap-contact-social small { display:block; color:#6f7d88; font-size:13px; margin-bottom:3px; }
.gvmap-contact-social strong { display:block; font-size:17px; direction:ltr; }
.gvmap-contact-empty { padding:28px; text-align:center; color:#7b8791; background:#f6f8fa; border-radius:12px; }

@media (max-width: 767px) {
  .gvmap-contact-modal { display:none !important; }
}

/* v1.11.0: linked seller identity + native/brand contact icons */
.gvmap-contact-seller__avatar { display:block; text-decoration:none; }
a.gvmap-contact-seller__avatar { cursor:pointer; }
a.gvmap-contact-seller__avatar:hover img { opacity:.92; }
a.gvmap-contact-seller__name { display:block; text-decoration:none; }
a.gvmap-contact-seller__name:hover { text-decoration:underline; }
.gvmap-contact-qr svg { width:100%; height:100%; display:block; }
.gvmap-contact-social__icon img { width:30px; height:30px; object-fit:contain; display:block; }
.gvmap-contact-social__icon svg { display:block; }

/* v1.12.0 — brand fallback icons: colored bubble + white inner mark */
.gvmap-contact-social__icon .gvmap-brand-svg__bubble{
  fill:currentColor !important;
  stroke:currentColor !important;
}
.gvmap-contact-social__icon .gvmap-brand-svg__mark{
  fill:#fff !important;
  stroke:none !important;
}
