.gh-interactive-map{width:100%;padding:18px;border:1px solid #d8e5e3;border-radius:16px;background:#f7fbfa;box-sizing:border-box}
.gh-interactive-map>strong{display:block;margin-bottom:12px}
.gh-amap-canvas{width:100%;height:360px;border-radius:12px;background:#e7f2ef;color:#31554f;overflow:hidden}
.gh-amap-canvas:not([data-map-state="ready"]){display:flex;align-items:center;justify-content:center;text-align:center;padding:16px;box-sizing:border-box}
.gh-interactive-map .gh-map-note{margin:12px 0}
@media(max-width:600px){.gh-amap-canvas{height:300px}.gh-interactive-map{padding:12px}}

.gh-amap-canvas .gh-map-pin{width:36px;height:46px;filter:drop-shadow(0 2px 3px #0006)}
.gh-amap-canvas .gh-map-pin svg{display:block;width:36px;height:46px;max-width:none}

/* ---------- Страница «Карта» (#/map) ---------- */
.gh-map-page{padding-bottom:8px}
.gh-map-head{padding-top:18px}
.gh-map-head h1{margin:0 0 6px}
.gh-map-head>p{margin:0 0 14px}
.gh-map-filters{display:flex;gap:8px;overflow-x:auto;padding:2px 0 12px;scrollbar-width:thin;-webkit-overflow-scrolling:touch}
.gh-map-filters .chip{flex:none;min-height:40px;padding:8px 14px;gap:7px;font-size:14px}
.gh-map-filters .chip.active{background:#12244b;color:#fff}
.gh-map-count{opacity:.65;font-size:12px}
.gh-map-swatch{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--map-color,#009fbb);box-shadow:0 0 0 2px #fff;flex:none}
.gh-map-stage{position:relative}
@media(min-width:761px){.gh-map-filters{flex-wrap:wrap;overflow:visible}}
.gh-map-canvas{position:relative;isolation:isolate;width:100%;height:min(72vh,720px);min-height:420px;border-radius:16px;background:#e7f2ef;color:#31554f;overflow:hidden}
.gh-map-canvas:not([data-map-state="ready"]){display:flex;align-items:center;justify-content:center;text-align:center;padding:16px;box-sizing:border-box}
.gh-map-failure{max-width:420px}
.gh-map-failure strong{display:block;font-size:18px;margin-bottom:6px}
.gh-map-failure-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;align-items:center}
.gh-map-retry{min-height:44px;padding:8px 16px;border:0;border-radius:22px;background:#009fbb;color:#fff;font:inherit;cursor:pointer}
.gh-map-note{font-size:13px;margin-top:10px}
.gh-map-marker{width:28px;height:36px;cursor:pointer;filter:drop-shadow(0 2px 2px #0005);transform-origin:50% 100%;transition:transform .15s}
.gh-map-marker svg{display:block;width:28px;height:36px;max-width:none}
.gh-map-marker:hover,.gh-map-marker.selected{transform:scale(1.3)}
.gh-map-here{width:16px;height:16px;border-radius:50%;background:#0879ed;border:3px solid #fff;box-shadow:0 0 0 6px #0879ed33,0 1px 4px #0006}
.gh-map-locate{position:absolute;left:40px;bottom:12px;z-index:5;display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:8px 14px;border:0;border-radius:22px;background:#fff;color:#12244b;font:inherit;font-size:14px;box-shadow:0 2px 8px #0003;cursor:pointer}
.gh-map-locate[hidden]{display:none}
.gh-map-locate .icon{width:18px;height:18px}
.gh-map-locate[aria-busy="true"]{opacity:.6}
.gh-map-sheet{position:absolute;right:40px;top:12px;z-index:6;width:340px;max-height:calc(100% - 24px);overflow:auto;background:#fff;border-radius:14px;box-shadow:0 6px 24px #0003;box-sizing:border-box}
.gh-map-sheet[hidden]{display:none}
.gh-map-sheet-photo{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}
.gh-map-sheet-body{padding:14px 16px 16px}
.gh-map-sheet-meta{display:flex;align-items:center;gap:7px;margin:0 0 6px;font-size:13px;color:#55717d}
.gh-map-sheet h2{margin:0 0 6px;font-size:19px;line-height:1.25}
.gh-map-sheet-text{margin:0 0 12px;font-size:14px;line-height:1.45;color:#193e4a}
.gh-map-sheet-actions{display:flex;gap:8px;flex-wrap:wrap}
.gh-map-sheet-actions .button{min-height:42px;font-size:14px}
.gh-map-sheet-close{position:absolute;top:8px;right:8px;z-index:1;width:36px;height:36px;border:0;border-radius:50%;background:#fffe;color:#12244b;font-size:22px;line-height:1;cursor:pointer;box-shadow:0 1px 4px #0003}
@media(max-width:760px){
  .gh-map-head{padding-top:10px}
  .gh-map-head h1{font-size:24px}
  .gh-map-head>p{font-size:14px;margin-bottom:10px}
  .gh-map-stage.container{padding:0}
  .gh-map-canvas{border-radius:0;height:calc(100vh - 290px);height:calc(100dvh - 290px);min-height:360px}
  .gh-map-locate{left:12px;top:12px;bottom:auto}
  .gh-map-sheet{left:8px;right:8px;top:auto;bottom:8px;width:auto;max-height:70%;display:flex;flex-direction:row}
  .gh-map-sheet[hidden]{display:none}
  .gh-map-sheet-photo{width:110px;aspect-ratio:auto;height:auto;min-height:100%;flex:none}
  .gh-map-sheet-body{padding:12px 44px 12px 12px}
  .gh-map-sheet h2{font-size:16px}
  .gh-map-sheet-text{display:none}
  .gh-map-sheet-actions .button{min-height:38px;padding:6px 12px;font-size:13px}
}
/* Пятый пункт «Карта» в нижней панели телефона */
html body .mobile-nav{grid-template-columns:repeat(5,minmax(0,1fr))}
/* Переключатель «Схема / Спутник» */
.gh-map-layers{position:absolute;left:40px;top:12px;z-index:5;display:flex;padding:3px;border-radius:22px;background:#fff;box-shadow:0 2px 8px #0003}
.gh-map-layers[hidden]{display:none}
.gh-map-layers button{min-height:38px;padding:6px 14px;border:0;border-radius:19px;background:none;color:#12244b;font:inherit;font-size:14px;cursor:pointer}
.gh-map-layers button.active{background:#12244b;color:#fff}
@media(max-width:760px){.gh-map-layers{left:12px}.gh-map-locate{top:62px}}
