/* Castellabate PRO 2.1.1 — Content-first + map reveal
   The editorial panel opens normally. The map is revealed by pulling/tapping the handle
   or using MAP. DISCOVER restores the panel. */

/* Map is important, but no longer presented as the visual center of the dock. */
.quick-dock{
  grid-template-columns:repeat(6,1fr)!important;
}
.map-dock-btn{
  transform:none!important;
  height:58px!important;
  border-radius:18px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.map-dock-btn i{font-size:17px!important;color:#b9c8d2!important}
.map-dock-btn span{font-size:6.7px!important;color:#b9c8d2!important;font-weight:800!important}
.map-dock-btn.active{
  background:linear-gradient(145deg,rgba(230,191,96,.18),rgba(230,191,96,.07))!important;
  border:1px solid rgba(240,211,137,.24)!important;
}
.map-dock-btn.active i,.map-dock-btn.active span{color:#efd57f!important}

/* Make the down gesture self-explanatory. */
.sheet-handle{
  height:35px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  color:#e9cf84!important;
  touch-action:none!important;
  user-select:none!important;
  -webkit-user-select:none!important;
  cursor:grab!important;
}
.sheet-handle:active{cursor:grabbing!important}
.sheet-handle:after{
  top:5px!important;
  width:48px!important;
  height:3px!important;
  background:rgba(242,217,151,.55)!important;
}
#sheetHandleLabel{
  display:block!important;
  margin-top:10px!important;
  font:800 7px/1 Inter,system-ui,sans-serif!important;
  letter-spacing:.15em!important;
  text-transform:uppercase!important;
  color:#e7cc80!important;
  opacity:.9!important;
  pointer-events:none!important;
}
.sheet-head{height:66px!important;min-height:66px!important;padding-top:0!important}
.sheet-body{height:calc(100% - 101px)!important}

/* Map-reveal state: the main editorial panel leaves the canvas completely. */
.sheet.map-reveal-211{
  transform:translateY(calc(100% + 130px))!important;
  pointer-events:none!important;
  box-shadow:none!important;
}
body.map-reveal-211 .map-shade{
  background:linear-gradient(180deg,rgba(2,16,27,.12),rgba(2,16,27,0) 32%,rgba(2,16,27,.03) 78%,rgba(2,16,27,.10))!important;
}
/* Hide the upper chrome while looking at the map. The dock remains as the escape route. */
body.map-reveal-211 .topbar,
body.map-reveal-211 .lang-mini{
  opacity:0!important;
  transform:translateY(-18px)!important;
  pointer-events:none!important;
  transition:opacity .22s ease,transform .28s ease!important;
}
.topbar,.lang-mini{transition:opacity .22s ease,transform .28s ease!important}
body.map-reveal-211 .leaflet-control-zoom{margin-bottom:94px!important}

/* Tiny confirmation chip: map is visible and Discover returns to content. */
.map-view-chip-211{
  position:fixed;z-index:1180;left:50%;top:calc(max(11px,env(safe-area-inset-top)) + 4px);
  transform:translateX(-50%) translateY(-10px);opacity:0;pointer-events:none;
  padding:9px 13px;border-radius:999px;
  border:1px solid rgba(244,218,149,.24);
  background:rgba(4,24,40,.88);color:#f2db98;
  box-shadow:0 12px 30px rgba(0,0,0,.22);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);
  font:800 7px/1 Inter,system-ui,sans-serif;letter-spacing:.11em;text-transform:uppercase;
  transition:opacity .22s ease,transform .28s ease;
}
body.map-reveal-211 .map-view-chip-211{opacity:1;transform:translateX(-50%) translateY(0)}

/* During an actual drag, follow the finger instead of snapping. */
.sheet.dragging-211{transition:none!important}

@media (orientation:portrait) and (max-width:430px){
  .sheet-handle{height:38px!important}
  #sheetHandleLabel{font-size:6.5px!important;letter-spacing:.12em!important}
  .sheet-head{height:64px!important;min-height:64px!important}
  .sheet-body{height:calc(100% - 102px)!important}
  .map-dock-btn{height:56px!important}
  .map-dock-btn i{font-size:15px!important}.map-dock-btn span{font-size:5.9px!important}
}
@media (prefers-reduced-motion:reduce){
  .topbar,.lang-mini,.map-view-chip-211{transition:none!important}
}
