/* ============================================================
   ArcheoMap — collapsible-ui.css v305.5
   SWIPE gesture-based collapse per topbar (no pulsanti, no maniglie).
   Admin bar sparisce totalmente quando admin mode è OFF.

   Gesture:
     • Topbar visibile → swipe UP (dito verso l'alto) → scompare
     • Topbar nascosta → swipe DOWN dal bordo alto → riappare

   La zona-gesto per swipe-down è un overlay invisibile 100vw × 48px
   in alto che si attiva solo a topbar collassata.
   ============================================================ */

/* ── TOPBAR COLLAPSE via swipe ─────────────────────────────── */
.topbar {
  transition: transform .32s cubic-bezier(.2,.8,.25,1),
              opacity   .26s ease-out;
  will-change: transform, opacity;
}
body.archeo-topbar-collapsed .topbar {
  transform: translateY(calc(-100% - 30px));
  opacity: 0;
  pointer-events: none;
}

/* Zona invisibile in alto per catturare swipe-down quando la topbar
   è collassata. 48px di altezza, larga come il viewport. */
#archeoTopbarSwipeZone {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  height: calc(48px + env(safe-area-inset-top, 0px));
  padding-top: env(safe-area-inset-top, 0px);
  z-index: 9700;
  display: none;  /* visibile solo quando topbar collassata */
  pointer-events: auto;
  touch-action: none;
  background: transparent;
}
body.archeo-topbar-collapsed #archeoTopbarSwipeZone {
  display: block;
}

/* Hint visivo: sottile pill in alto al centro quando collassata,
   invita lo swipe-down. Si vede solo per i primi 3s dopo collapse
   poi si attenua. */
#archeoTopbarSwipeZone::after {
  content: '';
  position: absolute;
  top: calc(6px + env(safe-area-inset-top, 0px));
  left: 50%;
  transform: translateX(-50%);
  width: 44px;
  height: 5px;
  border-radius: 3px;
  background: rgba(240,192,64,.85);
  box-shadow: 0 2px 8px rgba(240,192,64,.6);
  animation: archeoSwipeHintPulse 2.4s ease-in-out infinite;
}
@keyframes archeoSwipeHintPulse {
  0%, 100% { opacity: .55; transform: translateX(-50%) scaleX(1); }
  50%      { opacity: 1;    transform: translateX(-50%) scaleX(1.18); }
}

/* ── ADMIN BAR — visibilità gestita da admin-mode state ──── */
/* Quando admin mode è OFF, la bar sparisce totalmente (display:none
   applicato via JS direttamente). Qui definiamo solo la transizione
   di entrata per quando ricompare. */
#v109AdminLiveBar {
  transition: opacity .2s ease-out;
}
body:not(.archeo-admin-mode) #v109AdminLiveBar {
  display: none !important;
}
