/* Site styling for embedded qgis2web (Leaflet) maps. Loaded after qgis2web.css. */
html, body { margin: 0; height: 100%; }
.leaflet-container {
  font: 13px/1.45 "Helvetica Neue", Helvetica, Arial, sans-serif !important;
  background: #ffffff; padding-right: 0 !important;
}
.leaflet-container, .leaflet-container a, .fa { color: #000000 !important; }
.leaflet-container a:focus-visible, .site-reset:focus-visible { outline: 2px solid #1f4fa3; outline-offset: 2px; }

/* Controls: small square text buttons, top-right, like the site's figure controls */
.leaflet-top.leaflet-right { top: 10px; right: 10px; display: flex; flex-direction: row-reverse; gap: 4px; }
.leaflet-top.leaflet-right .leaflet-control { margin: 0; float: none; clear: none; }
.leaflet-bar, .leaflet-touch .leaflet-bar { border: 0 !important; box-shadow: none !important; border-radius: 0; display: flex; gap: 4px; }
.leaflet-bar a, .leaflet-touch .leaflet-bar a, .site-reset {
  width: auto !important; min-width: 26px; height: 26px !important; line-height: 24px !important;
  padding: 0 9px; box-sizing: border-box;
  font: 12.5px/24px "Helvetica Neue", Helvetica, Arial, sans-serif !important;
  background: #ffffff !important; color: #000000 !important;
  border: 1px solid #e3e3e3 !important; border-radius: 2px !important; cursor: pointer;
  box-shadow: none !important;
}
.leaflet-bar a:hover, .site-reset:hover { border-color: #707070 !important; background: #ffffff !important; }
.site-reset { order: -1; }

/* Popups: flat, ruled, muted labels */
.leaflet-popup-content-wrapper { border-radius: 0; box-shadow: none; border: 1px solid #e3e3e3; }
.leaflet-popup-tip { box-shadow: none; border: 1px solid #e3e3e3; }
.leaflet-popup-content { margin: 9px 11px; font-size: 13px; }
.leaflet-popup-content th { color: #707070; font-weight: 400; }

/* Attribution */
.leaflet-control-attribution { background: rgba(255,255,255,.85) !important; font-size: 11px; }
.leaflet-control-attribution, .leaflet-control-attribution a { color: #707070 !important; }

/* Hover labels (bound by npm run maps) */
.leaflet-tooltip.site-tip {
  background: #ffffff !important; color: #000000 !important;
  border: 1px solid #e3e3e3 !important; border-radius: 0; box-shadow: none !important;
  padding: 3px 7px; white-space: nowrap;
  font: 13px/1.35 "Helvetica Neue", Helvetica, Arial, sans-serif !important;
}
.leaflet-tooltip.site-tip::before { display: none; }

/* No browser focus box around clicked map shapes */
.leaflet-container path.leaflet-interactive:focus { outline: none; }

/* ---- OpenLayers exports (bound by npm run maps) ---- */
.ol-viewport { font: 13px/1.45 "Helvetica Neue", Helvetica, Arial, sans-serif; }
.site-controls { position: absolute; top: 10px; right: 10px; display: flex; gap: 4px; background: none !important; padding: 0 !important; }
.site-controls button {
  min-width: 26px; height: 26px; padding: 0 9px; margin: 0; cursor: pointer;
  font: 12.5px/24px "Helvetica Neue", Helvetica, Arial, sans-serif;
  background: #ffffff !important; color: #000000 !important;
  border: 1px solid #e3e3e3; border-radius: 2px; box-shadow: none;
}
.site-controls button:hover { border-color: #707070; background: #ffffff !important; }
.site-controls button:focus-visible { outline: 2px solid #1f4fa3; outline-offset: 2px; }
.ol-viewport .site-tip {
  position: absolute; z-index: 10; pointer-events: none; white-space: nowrap;
  background: #ffffff; color: #000000; border: 1px solid #e3e3e3; padding: 3px 7px;
  font: 13px/1.35 "Helvetica Neue", Helvetica, Arial, sans-serif;
}
.ol-popup { display: none !important; }
.bottom-attribution, .ol-attribution { background: rgba(255,255,255,.85) !important; padding: 0 4px !important; font-size: 11px; }
.bottom-attribution ul, .ol-attribution ul { color: #707070 !important; font-size: 11px; }
.bottom-attribution a, .ol-attribution a { color: #707070 !important; }
