.gmc-map{z-index:0;background:#e5e7eb}
.gmc-hidden{display:none!important}
.gmc-status{position:absolute;top:12px;left:50%;transform:translateX(-50%);z-index:1000;background:#fff;color:#374151;font:500 13px/1.2 system-ui,sans-serif;padding:7px 14px;border-radius:999px;box-shadow:0 2px 8px rgba(0,0,0,.15);pointer-events:none;white-space:nowrap}
.gmc-cluster{display:flex;align-items:center;justify-content:center;border-radius:50%;color:#fff;font:700 12px/1 system-ui,sans-serif;box-shadow:0 0 0 5px rgba(37,99,235,.25);transition:transform .15s}
.gmc-cluster:hover{transform:scale(1.08)}
.gmc-cluster span{pointer-events:none}
.gmc-cluster--s{background:#3b82f6}
.gmc-cluster--m{background:#2563eb;box-shadow:0 0 0 6px rgba(37,99,235,.25)}
.gmc-cluster--l{background:#1d4ed8;box-shadow:0 0 0 7px rgba(29,78,216,.25)}
.gmc-cluster--xl{background:#1e3a8a;box-shadow:0 0 0 8px rgba(30,58,138,.25);font-size:13px}
.gmc-popup{display:flex;gap:10px;font:14px/1.35 system-ui,sans-serif}
.gmc-popup__img{position:relative;width:56px;height:56px;flex:none;border-radius:6px;overflow:hidden;background:#f3f4f6}
.gmc-popup__img img{width:100%;height:100%;object-fit:cover;display:block;transition:opacity .2s}
.gmc-popup__img.is-loading img{opacity:0}
.gmc-popup__img.is-loading::after{content:'';position:absolute;top:50%;left:50%;width:18px;height:18px;margin:-9px 0 0 -9px;border:2px solid #dbeafe;border-top-color:#2563eb;border-radius:50%;animation:gmc-spin .7s linear infinite}
.gmc-popup__cat{display:block;font-size:11px;color:#2563eb;text-transform:uppercase;letter-spacing:.03em;margin-bottom:2px}
.gmc-popup__title{display:block;color:#111827;margin-bottom:3px}
.gmc-popup__addr{margin:0 0 6px!important;color:#6b7280;font-size:12px}
.gmc-popup__link{color:#2563eb!important;font-weight:600;font-size:13px;text-decoration:none}
.gmc-popup__loading{display:flex;align-items:center;justify-content:center;gap:10px;min-width:180px;padding:10px 0;color:#6b7280;font:13px system-ui,sans-serif}
.gmc-spinner{width:22px;height:22px;border-width:3px!important;border:2px solid #dbeafe;border-top-color:#2563eb;border-radius:50%;animation:gmc-spin .7s linear infinite;flex:none}
@keyframes gmc-spin{to{transform:rotate(360deg)}}
