.map-reminder-tab,.map-return-tab {
  position: fixed;
  z-index: 38;
  display: grid;
  place-items: center;
  gap: .12rem;
  top: env(safe-area-inset-top, 0px);
  left: 50%;
  transform: translateX(-50%);
  min-width: 6.5rem;
  min-height: 2.65rem;
  margin: 0;
  padding: .38rem 1.15rem .42rem;
  border: 1px solid rgb(255 255 255 / 72%);
  border-radius: 0 0 1rem 1rem;
  color: #173b49;
  background: rgb(255 255 255 / 96%);
  box-shadow: 0 .25rem .85rem rgba(0, 0, 0, .34);
  font: inherit;
  font-weight: 800;
  touch-action: pan-y;
}

.front-door {
  padding-top: calc(3.2rem + env(safe-area-inset-top, 0px));
}

.map-reminder-tab[hidden],.map-return-tab[hidden] { display: none; }

.pull-tab-copy{display:flex;align-items:center;justify-content:center;gap:.35rem;line-height:1.1}
.pull-tab-grip{display:block;width:2.7rem;height:.26rem;border-radius:999px;background:#829196}
.map-reminder-tab .pull-tab-grip{order:2}
.map-return-tab{z-index:18;top:auto;bottom:env(safe-area-inset-bottom,0px);padding:.42rem 1.15rem .38rem;border-radius:1rem 1rem 0 0;box-shadow:0 -.25rem .85rem rgba(0,0,0,.34)}
.map-return-tab .pull-tab-grip{order:0}.map-return-tab .pull-tab-copy{order:1}

.map-workspace {
  position: fixed;
  z-index: 80;
  inset: 0;
  overflow: hidden;
  color: #2a211b;
  background: #d8e3d4;
  transform: translateY(-102%);
  visibility: hidden;
  transition: transform 240ms ease, visibility 0s linear 240ms;
}

.map-workspace.is-open {
  transform: translateY(0);
  visibility: visible;
  transition-delay: 0s;
}

.map-workspace.is-initial-entry { transform:translateY(0);visibility:visible;transition:none; }
.map-workspace.is-initial-entry .map-corner-brand{display:none}
.map-initial-loading { display:grid;place-items:center;align-content:center;gap:.65rem;position:absolute;inset:0;background:#d8e3d4;color:#173b49;font-weight:850; }
.map-initial-loading .map-initial-spinner { width:4.5rem;height:4.5rem;object-fit:contain;filter:drop-shadow(0 .18rem .3rem rgb(0 0 0 / 25%));transform-origin:50% 50%;animation:sydwalk-opening-flower-spin 1.8s linear infinite; }
.map-initial-loading .map-initial-banner{display:block;width:min(16rem,68vw);height:auto;object-fit:contain;filter:drop-shadow(0 .12rem .22rem rgb(0 0 0 / 18%))}
@keyframes sydwalk-opening-flower-spin{to{transform:rotate(1turn)}}

.map-workspace-content,
.map-workspace-content.destination-content {
  position: absolute;
  inset: 0;
  min-height: 100%;
  padding: 0;
  overflow: hidden;
}

.map-workspace-content > .room-heading { display: none; }

.map-workspace-content .map-board,
.map-workspace-content .map-board.map-dominant {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  min-height: 100%;
  margin: 0;
  border: 0;
  border-radius: 0;
}

.map-workspace-content .map-tools { top: max(5.25rem, calc(env(safe-area-inset-top, 0px) + 4.4rem)); }
.map-workspace-content .map-zoom-controls { bottom: calc(var(--viewport-vendor-rail-height, 6.7rem) + 3.55rem + env(safe-area-inset-bottom, 0px)); }

body.map-workspace-open { overflow: hidden; }

@media (prefers-reduced-motion: reduce) {
  .map-workspace { transition: none; }
  .map-initial-loading .map-initial-spinner{animation:none}
}
