/* Sanctuary Ground: the "hand-drawn paper" map. Same Leaflet map and OpenStreetMap streets
   underneath; this only changes the look: a warm parchment tint, soft ink roads, a faint paper
   grain and drawn pins. To go back to the plain map, remove this file's <link> from the page. */
.leaflet-layer.sg-tiles { filter: grayscale(.4) sepia(.62) saturate(.9) hue-rotate(-8deg) contrast(.88) brightness(1.06) !important; }
.leaflet-container { background: #EFE4CF !important; }
/* paper grain + soft edges, above the streets and under the pins */
.leaflet-container::after {
  content: ""; position: absolute; inset: 0; z-index: 250; pointer-events: none; mix-blend-mode: multiply; opacity: .55;
  background:
    radial-gradient(120% 90% at 50% 45%, transparent 60%, rgba(120,86,46,.22) 100%),
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 .45  0 0 0 0 .34  0 0 0 0 .2  0 0 0 .55 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");
}
/* pins: a small drawn drop with a gold ring; its point sits on the place */
.sg-pin {
  width: 18px !important; height: 18px !important; margin: -6px 2px 0 !important;
  border-radius: 50% 50% 50% 0 !important; transform: rotate(-45deg);
  background: #8A5A37 !important; border: 2.5px solid #FBF7EE !important;
  box-shadow: 0 0 0 1.5px #C9973F, 0 1px 2px rgba(60,40,20,.22) !important;
}
.sg-pin::after { content: ""; position: absolute; left: 50%; top: 50%; width: 5px; height: 5px; margin: -2.5px 0 0 -2.5px; border-radius: 50%; background: #FBF7EE; }
.sg-pin { position: relative; }
.sg-pin-wrap:hover .sg-pin, .sg-pin-wrap.is-hot .sg-pin { transform: rotate(-45deg) scale(1.35) !important; background: #1C1810 !important; }
/* clusters: a stamped circle */
.sg-cluster { background: #FBF7EE !important; color: #5A3A22 !important; border: 2px solid #8A5A37 !important; box-shadow: 0 0 0 4px rgba(251,247,238,.9), 0 0 0 5.5px #C9973F, 0 4px 10px rgba(60,40,20,.3) !important; font-family: var(--display, Georgia, serif) !important; font-size: 15px !important; }
.sg-cluster-wrap:hover .sg-cluster, .sg-cluster-wrap.is-hot .sg-cluster { background: #8A5A37 !important; color: #FBF7EE !important; }
.cx-dot { filter: drop-shadow(0 0 0 #C9973F); }
/* map controls in the same paper */
.leaflet-bar a, .leaflet-bar a:hover { background: #FBF7EE !important; color: #3A2A1A !important; border-color: rgba(90,58,34,.25) !important; }
.leaflet-control-attribution { background: rgba(251,247,238,.85) !important; }
/* night: the same map as a dark ink drawing */
html.sg-dark .leaflet-layer.sg-tiles { filter: invert(.9) hue-rotate(180deg) grayscale(.3) sepia(.45) saturate(.7) brightness(.85) contrast(.9) !important; }
html.sg-dark .leaflet-container { background: #231C14 !important; }
html.sg-dark .leaflet-container::after { mix-blend-mode: soft-light; opacity: .4; }
html.sg-dark .sg-pin { background: #E2B98C !important; border-color: #231C14 !important; }
html.sg-dark .sg-pin::after { background: #231C14; }
html.sg-dark .sg-cluster { background: #231C14 !important; color: #F1E8D8 !important; border-color: #E2B98C !important; box-shadow: 0 0 0 4px rgba(35,28,20,.9), 0 0 0 5.5px #C9973F !important; }
html.sg-dark .leaflet-bar a { background: #2B2219 !important; color: #F1E8D8 !important; }
@media (prefers-reduced-motion: reduce) { .sg-pin { transition: none !important; } }
