/* Загальні стилі */

html,body{margin:0;padding:0;height:100%;font-family:'Montserrat',sans-serif; overflow: hidden;}



/* Курсор карти за замовчуванням - рука */

#map{width:100%;height:100%;position:relative;cursor:grab;}

#map .ol-viewport,
#map canvas{cursor:grab;}

#map:active,
#map:active .ol-viewport,
#map:active canvas{cursor:grabbing;}



/* Класи стану карти */

#map.hide-tooltips .ol-tooltip-static { display: none !important; }



/* Курсори при наведенні (Порядок важливий! Нижчі правила перебивають верхні) */

#map.hovering-feature-edit,
#map.hovering-feature-edit .ol-viewport,
#map.hovering-feature-edit canvas { cursor: move !important; } 

#map.hovering-feature-view,
#map.hovering-feature-view .ol-viewport,
#map.hovering-feature-view canvas { cursor: pointer !important; } 

#map.hovering-geojson,
#map.hovering-geojson .ol-viewport,
#map.hovering-geojson canvas { cursor: help !important; } 

#map.hovering-vertex,
#map.hovering-vertex .ol-viewport,
#map.hovering-vertex canvas { cursor: pointer !important; } 

#map.hovering-midpoint,
#map.hovering-midpoint .ol-viewport,
#map.hovering-midpoint canvas { cursor: pointer !important; } 

#map.dragging-feature,
#map.dragging-feature .ol-viewport,
#map.dragging-feature canvas,
#map.dragging-vertex,
#map.dragging-vertex .ol-viewport,
#map.dragging-vertex canvas { cursor: move !important; }



/* ПРІОРИТЕТНИЙ КУРСОР МАЛЮВАННЯ (має бути нижче за hovering) */

#map.drawing,
#map.drawing .ol-viewport,
#map.drawing canvas { cursor: crosshair !important; }



/* Шторка */

#curtain{position:absolute;top:0;bottom:0;width:4px;background:#ffcc00;cursor:ew-resize;touch-action:none;z-index:1000}

#curtain::after{content:'↔';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:20px;height:40px;line-height:40px;text-align:center;font-weight:bold;background:#ffcc00;border-radius:4px;user-select:none;color:#000}




.ol-attribution {
  left: auto !important;
  right: 0 !important;
  bottom: 0 !important;
  box-sizing: border-box;
  max-width: 100vw;
  background: rgba(255,255,255,0.86) !important;
  border-radius: 4px;
  padding: 2px 6px;
  font-family: 'Montserrat', sans-serif;
  font-size: 10px;
  line-height: 1.3;
}

.ol-attribution button { display: none !important; }

.ol-attribution ul {
  display: flex;
  flex-wrap: wrap;
  gap: 0 6px;
  margin: 0;
  padding: 0;
  font-size: 10px;
}

.ol-attribution li { white-space: nowrap; }
.ol-attribution li:not(:last-child)::after { content: '|'; margin-left: 6px; color: #777; }
.ol-attribution a { color: #333; text-decoration: none; }
.ol-attribution a:hover { text-decoration: underline; }
body.curtain-mode-disabled .ol-attribution { left: auto !important; right: 0 !important; max-width: 100vw; }

@media (max-width: 700px), (hover: none) and (pointer: coarse) {
  .ol-attribution {
    left: auto !important;
    right: 0 !important;
    bottom: 0 !important;
    max-width: 100vw;
  }

  body.curtain-mode-disabled .ol-attribution {
    left: auto !important;
    right: 0 !important;
    max-width: 100vw;
  }
}
