/* GUSTI E-map — the map surface is the hero (~92% of the viewport) */
.map{
  position:fixed;
  inset:var(--header-h) 0 0 0;
  background:var(--wash);
}
.maplibregl-map{font-family:inherit}
.maplibregl-canvas{outline:none}

/* MapLibre chrome — quiet, GUSTI-styled, tucked bottom-right */
.maplibregl-ctrl-bottom-right{margin:0 10px 66px 0;display:flex;flex-direction:column;align-items:flex-end;gap:8px}
.maplibregl-ctrl-group{
  border:1px solid var(--line)!important;
  box-shadow:var(--shadow-sm)!important;
  border-radius:11px!important;overflow:hidden;background:var(--paper);
}
.maplibregl-ctrl-group button{width:34px;height:34px}
.maplibregl-ctrl-group button + button{border-top:1px solid var(--line)}
.maplibregl-ctrl-group button:hover{background:var(--turq-wash)}
.maplibregl-ctrl-icon{filter:saturate(.7) opacity(.75)}
.maplibregl-ctrl-attrib{
  background:rgba(255,255,255,.72)!important;border-radius:8px 0 0 0;
  font-size:10px;padding:2px 7px;
}
.maplibregl-ctrl-attrib a{color:var(--ink-soft)}
.maplibregl-ctrl-attrib-button{background-color:var(--ink-soft)!important}

/* selected-location marker (DOM overlay — always above every map layer) */
.gusti-selected-marker{
  position:relative;width:28px;height:38px;line-height:0;font-size:0;pointer-events:none;
  filter:drop-shadow(0 4px 6px rgba(29,47,60,.35));
}
.gusti-selected-marker svg{display:block;width:28px;height:38px}
.gusti-selected-marker .gsm-ring{           /* subtle static halo under the pin tip */
  position:absolute;left:50%;bottom:0;width:24px;height:9px;transform:translateX(-50%);
  border-radius:50%;background:radial-gradient(closest-side,rgba(84,190,197,.5),transparent);
  z-index:-1;
}
.gusti-selected-marker svg{animation:gsm-drop .3s var(--ease)}
@keyframes gsm-drop{from{transform:translateY(-8px);opacity:.2}to{transform:none;opacity:1}}
@media (prefers-reduced-motion:reduce){ .gusti-selected-marker svg{animation:none} }

/* GUSTI wave signature — bottom-left map watermark */
.map::after{
  content:"";position:fixed;left:14px;bottom:14px;width:118px;height:16px;z-index:10;
  background:url(../assets/gusti-wave.svg) left center/contain no-repeat;opacity:.5;pointer-events:none;
}
@media (max-width:640px){ .map::after{display:none} }
