@import url(https://fonts.googleapis.com/css2?family=Roboto+Mono:ital,wght@0,100..700;1,100..700&display=swap);
@import url(https://fonts.googleapis.com/css2?family=Old+Standard+TT:ital,wght@0,400;0,700;1,400&display=swap);
:root {
  --primary: #39394e;
  --primary-dark: #2e2e3e;
  --primary-light: #9f9fcc;
  --secondary: #616161;
  --secondary-dark: #181821;
  --secondary-light: #9696d0;
  --accent: #00416a;
  --accent-dark: #012c4b;
  --accent-light: #1668a8;
  --positive: #21BA45;
  --positive-dark: #24794a;
  --positive-light: #21c95a;
  --negative: #C10015;
  --negative-dark: #7a0f34;
  --negative-light: #ff1c3d;
  --warning: #F2C037;
  --warning-dark: #63512b;
  --warning-light: #ffe38a;
  --warning-text: #382f0d;
  --info: #8fa4bd;
  --info-dark: #1f4b7e;
  --info-light: #e9edf0;
  --dark: #1D1D1D;
  --page-dark: #1D1D1D;
  --on-primary: #ffffff;
  --on-accent: #ffffff;
  --on-positive: #111111;
  --on-negative: #ffffff;
  --on-warning: #1f1f1f;
  --on-info: #ffffff;
  --on-dark: #eeeeee;
  --font-family: Roboto, -apple-system, Helvetica Neue, Helvetica, Arial, sans-serif;
  --font-heading: var(--font-family);
  --font-mono: Roboto Mono, ui-monospace, monospace;
  --font-display: Old Standard TT, Noticia Text, Georgia, serif;
  --font-hand: Just Another Hand, cursive;
  --q-primary: var(--primary);
  --q-primary-dark: var(--primary-dark);
  --q-secondary: var(--secondary);
  --q-secondary-dark: var(--secondary-dark);
  --q-accent: var(--accent);
  --q-positive: var(--positive);
  --q-negative: var(--negative);
  --q-warning: var(--warning);
  --q-info: var(--info);
  --q-dark: var(--dark);
  --q-page-dark: var(--page-dark);
  --q-font-family: var(--font-family);
  --ot-color-primary: var(--primary);
  --ot-color-primary-dark: var(--primary-dark);
  --ot-color-primary-light: var(--primary-light);
  --ot-color-secondary: var(--secondary);
  --ot-color-secondary-dark: var(--secondary-dark);
  --ot-color-accent: var(--accent);
  --ot-color-positive: var(--positive);
  --ot-color-negative: var(--negative);
  --ot-color-warning: var(--warning);
  --ot-color-info: var(--info);
  --ot-color-dark: var(--dark);
  --ot-space-1: 4px;
  --ot-space-2: 8px;
  --ot-space-3: 12px;
  --ot-space-4: 16px;
  --ot-space-5: 24px;
  --ot-space-6: 32px;
  --ot-radius-xs: 2px;
  --ot-radius-sm: 4px;
  --ot-radius-md: 8px;
  --ot-radius-lg: 12px;
  --ot-radius-xl: 16px;
  --ot-radius-pill: 999px;
  --ot-radius-full: 50%;
  --ot-shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.25);
  --ot-shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.1);
  --ot-shadow-md: 0 2px 6px rgba(0, 0, 0, 0.25);
  --ot-shadow-lg: 0 6px 20px rgba(0, 0, 0, 0.35);
  --ot-shadow-map: rgba(0, 0, 0, 0.3) 0 1px 4px -1px;
  --ot-shadow-focus: 0 0 0 2px var(--ot-color-primary),
    0 0 12px 4px color-mix(in srgb, var(--ot-color-primary) 55%, transparent);
  --ot-duration-instant: 100ms;
  --ot-duration-fast: 150ms;
  --ot-duration-normal: 220ms;
  --ot-duration-slow: 300ms;
  --ot-duration-slower: 500ms;
  --ot-ease-standard: cubic-bezier(0.4, 0, 0.2, 1);
  --ot-ease-emphasized: cubic-bezier(0.23, 1, 0.32, 1);
  --ot-ease-decelerate: cubic-bezier(0.25, 0.1, 0.25, 1);
  --ot-z-map: 100;
  --ot-z-map-controls: 110;
  --ot-z-carousel: 120;
  --ot-z-carousel-overlay: 130;
  --ot-z-header: 140;
  --ot-z-detail: 200;
  --ot-z-dialog: 300;
  --ot-z-menu: 400;
  --ot-z-top: 999;
  --ot-z-fullscreen: 9999;
  --app-header-height: 56px;
  --poi-carousel-height: 15vh;
  --miniplayer-height: 30px;
  --guide-detail-header-height: 50px;
  --ot-control-size: 40px;
  --ot-blur: 8px;
  --ot-blur-tight: 4px;
}

body.body--light,
:root {
  --ot-page: #f8f9fa;
  --ot-surface: #ffffff;
  --ot-ink: #1f1f1f;
  --ot-muted: #444444;
  --ot-glass: rgba(255, 255, 255, 0.92);
  --ot-glass-soft: rgba(255, 255, 255, 0.72);
  --ot-glass-hover: #ffffff;
  --ot-glass-border: rgba(0, 0, 0, 0.08);
  --ot-overlay: #ffffff;
  --ot-overlay-backdrop: rgba(255, 255, 255, 0.5);
  --ot-footer-wash: rgba(255, 255, 255, 0.8);
}

body.body--dark {
  --ot-page: var(--page-dark);
  --ot-surface: var(--dark);
  --ot-ink: var(--on-dark);
  --ot-muted: #c8c8c8;
  --ot-glass: rgba(30, 30, 30, 0.85);
  --ot-glass-soft: rgba(40, 40, 40, 0.78);
  --ot-glass-hover: rgba(45, 45, 45, 0.95);
  --ot-glass-border: rgba(255, 255, 255, 0.12);
  --ot-overlay: #aaaaaa;
  --ot-overlay-backdrop: rgba(170, 170, 170, 0.5);
  --ot-footer-wash: rgba(34, 34, 34, 0.8);
}

body {
  font-family: var(--q-font-family, var(--font-family)) !important;
}

.text-mono-light,
.text-mono-normal,
.text-mono-bold {
  font-family: var(--font-mono);
  font-optical-sizing: auto;
  font-style: normal;
}

.text-mono-light {
  font-weight: 200;
}

.text-mono-normal {
  font-weight: 400;
}

.text-mono-bold {
  font-weight: 600;
}

.text-label-small {
  font-size: 0.8em;
}

.text-label-tiny {
  font-size: 0.6em;
}

.text-old-standard-tt-regular,
.text-old-standard-tt-bold,
.text-old-standard-tt-regular-italic {
  font-family: var(--font-display);
}

.text-old-standard-tt-regular {
  font-weight: 400;
  font-style: normal;
}

.text-old-standard-tt-bold {
  font-weight: 700;
  font-style: normal;
}

.text-old-standard-tt-regular-italic {
  font-weight: 400;
  font-style: italic;
}

.noticia-text-regular,
.noticia-text-bold,
.noticia-text-regular-italic,
.noticia-text-bold-italic {
  font-family: "Noticia Text", var(--font-display);
}

.noticia-text-regular {
  font-weight: 400;
  font-style: normal;
}

.noticia-text-bold {
  font-weight: 700;
  font-style: normal;
}

.noticia-text-regular-italic {
  font-weight: 400;
  font-style: italic;
}

.noticia-text-bold-italic {
  font-weight: 700;
  font-style: italic;
}

.just-another-hand-regular,
.handwritten {
  font-family: var(--font-hand);
  font-weight: 400;
  font-style: normal;
}

.warning-text {
  color: var(--warning-text);
  font-weight: bold;
  font-size: small;
}

.text-on-primary {
  color: var(--on-primary) !important;
}

.text-on-dark {
  color: var(--on-dark) !important;
}

.round {
  border-radius: var(--ot-radius-full);
}

.noselect {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  user-select: none;
}

.background-image-container {
  z-index: -1;
  position: absolute;
  background-position: center;
  background-size: cover;
  filter: blur(10px);
  -webkit-filter: blur(10px);
  height: 100%;
  width: 100%;
}

input[type=number] {
  -webkit-appearance: textfield;
          appearance: textfield;
}
input[type=number]::-webkit-outer-spin-button, input[type=number]::-webkit-inner-spin-button {
  display: none;
  -webkit-appearance: none;
          appearance: none;
}

body.body--light .bg-page {
  background-color: var(--ot-page) !important;
  color: var(--ot-ink) !important;
}
body.body--light .bg-surface {
  background-color: var(--ot-surface) !important;
  color: var(--ot-ink) !important;
}
body.body--light .bg-primary {
  background-color: var(--primary) !important;
  color: var(--on-primary) !important;
}
body.body--light .bg-primary-dark {
  background-color: var(--primary-dark) !important;
  color: var(--on-primary) !important;
}
body.body--light .bg-secondary {
  background-color: var(--secondary) !important;
  color: var(--ot-page) !important;
}
body.body--light .bg-accent {
  background-color: var(--accent) !important;
  color: var(--on-accent) !important;
}
body.body--light .bg-positive {
  background-color: var(--positive) !important;
  color: var(--on-positive) !important;
}
body.body--light .bg-negative {
  background-color: var(--negative) !important;
  color: var(--on-negative) !important;
}
body.body--light .bg-warning {
  background-color: var(--warning) !important;
  color: var(--on-warning) !important;
}
body.body--light .bg-info {
  background-color: var(--info) !important;
  color: var(--on-info) !important;
}

body.body--dark .bg-page {
  background-color: var(--page-dark) !important;
  color: var(--on-dark) !important;
}
body.body--dark .bg-surface {
  background-color: var(--dark) !important;
  color: var(--on-dark) !important;
}
body.body--dark .bg-primary {
  background-color: var(--primary-dark) !important;
  color: var(--on-primary) !important;
}
body.body--dark .bg-primary-dark {
  background-color: var(--primary-dark) !important;
  color: var(--on-primary) !important;
}
body.body--dark .bg-secondary {
  background-color: var(--secondary-dark) !important;
  color: var(--ot-page) !important;
}
body.body--dark .bg-accent {
  background-color: var(--accent-dark) !important;
  color: var(--on-accent) !important;
}
body.body--dark .bg-positive {
  background-color: var(--positive-dark) !important;
  color: var(--on-positive) !important;
}
body.body--dark .bg-negative {
  background-color: var(--negative-dark) !important;
  color: var(--on-negative) !important;
}
body.body--dark .bg-warning {
  background-color: var(--warning-dark) !important;
  color: var(--on-warning) !important;
}
body.body--dark .bg-info {
  background-color: var(--info-dark) !important;
  color: var(--on-info) !important;
}

body.body--light .bg-primary-grad {
  background: linear-gradient(180deg, var(--primary), var(--primary-light) 90%) !important;
}

body.body--dark .bg-primary-grad {
  background: linear-gradient(180deg, var(--primary-dark), var(--primary) 90%) !important;
}

body.body--light .bg-accent-grad {
  background: linear-gradient(180deg, var(--accent), var(--accent-light) 90%) !important;
}

body.body--dark .bg-accent-grad {
  background: linear-gradient(180deg, var(--accent-dark), var(--accent) 90%) !important;
}

.bg-header {
  background: transparent !important;
  background-position: left;
  background-size: cover;
}

.q-card,
.q-dialog,
.q-menu,
.q-drawer,
.q-expansion-item__content {
  background-color: var(--q-page-dark);
}

body.body--light .q-card,
body.body--light .q-dialog,
body.body--light .q-menu,
body.body--light .q-drawer {
  background-color: var(--ot-page);
  color: var(--ot-ink) !important;
}

.q-header,
.bg-header {
  background: transparent !important;
}

.q-drawer {
  z-index: var(--ot-z-fullscreen);
}

.q-carousel.fullscreen {
  z-index: var(--ot-z-fullscreen) !important;
}

.q-toggle__inner--falsy .q-toggle__thumb::after {
  background-color: var(--ot-muted) !important;
  color: var(--ot-muted) !important;
}

.q-toggle__inner--truthy .q-toggle__thumb::after {
  background-color: var(--ot-surface) !important;
  color: var(--ot-surface) !important;
}

@keyframes ot-shake-x {
  0%, 100% {
    transform: translateX(0);
  }
  25%, 75% {
    transform: translateX(3px);
  }
  50% {
    transform: translateX(-3px);
  }
}
@keyframes ot-shake-y {
  0%, 100% {
    transform: translateY(0);
  }
  25%, 75% {
    transform: translateY(3px);
  }
  50% {
    transform: translateY(-3px);
  }
}
@keyframes ot-hover-lift {
  0% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(-3px);
  }
}
@keyframes ot-fall-rotate {
  0% {
    transform: rotate(5deg) scale(1.2, 1.2);
  }
  100% {
    transform: rotate(-5deg) scale(1, 1);
  }
}
@keyframes ot-wiggle {
  0%, 8%, 100% {
    transform: rotateZ(0deg);
  }
  2% {
    transform: rotateZ(10deg);
  }
  6% {
    transform: rotateZ(-10deg);
  }
}
@keyframes ot-fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes ot-fade-out {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes ot-pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.5;
  }
}
@keyframes ot-pop {
  0% {
    transform: scale(1);
  }
  30% {
    transform: scale(1.2);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes horizontal-shake {
  0% {
    transform: translateX(0);
  }
  25% {
    transform: translateX(3px);
  }
  50% {
    transform: translateX(-3px);
  }
  75% {
    transform: translateX(3px);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes vertical-shake {
  0% {
    transform: translateY(0);
  }
  25% {
    transform: translateY(3px);
  }
  50% {
    transform: translateY(-3px);
  }
  75% {
    transform: translateY(3px);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes hover-react {
  0% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(-3px);
  }
}
@keyframes fall-and-rotate {
  0% {
    transform: rotate(5deg) scale(1.2, 1.2);
  }
  100% {
    transform: rotate(-5deg) scale(1, 1);
  }
}
.anim-shake-x,
.ot-shake-x {
  animation: ot-shake-x var(--ot-duration-slow) var(--ot-ease-standard);
}

.anim-shake-y,
.ot-shake-y {
  animation: ot-shake-y var(--ot-duration-slow) var(--ot-ease-standard);
}

.anim-wiggle,
.wiggle {
  animation: ot-wiggle 3s ease-in-out infinite;
}

.anim-fade-in,
.fading-badge {
  animation: ot-fade-in var(--ot-duration-slow) ease-in forwards;
}

.anim-pulse {
  animation: ot-pulse 1s ease-in-out infinite;
}

.anim-pop {
  animation: ot-pop var(--ot-duration-slow) var(--ot-ease-standard);
}

.anim-hover-lift {
  animation: ot-hover-lift var(--ot-duration-fast) var(--ot-ease-standard) forwards;
}

.fall-rotate {
  animation: ot-fall-rotate 0.2s ease-in;
}

.ot-fade-enter-active,
.ot-fade-leave-active {
  transition: opacity var(--ot-duration-slow) var(--ot-ease-standard);
}

.ot-fade-enter-from,
.ot-fade-leave-to {
  opacity: 0;
}

.bg-accent-grad {
  background: linear-gradient(180deg, var(--accent), var(--accent-dark) 90%);
}

.bg-info-grad {
  background: linear-gradient(180deg, var(--info-light), 5%, var(--info), 98%, var(--info-dark));
}

.bg-info-dark {
  background: linear-gradient(180deg, var(--info), 5%, var(--info-dark));
}

.bg-primary-grad {
  background: linear-gradient(180deg, var(--primary-dark), var(--primary-light));
}

.bg-footer-grad {
  background: linear-gradient(0deg, #616161, #757575) !important;
}

.bg-header-grad {
  background: transparent !important;
}

.layer-normal {
  z-index: auto;
}

.layer-header {
  z-index: var(--ot-z-header);
}

.layer-map {
  z-index: var(--ot-z-map);
}

.layer-map-controls {
  z-index: var(--ot-z-map-controls);
}

.layer-carousel {
  z-index: var(--ot-z-carousel);
}

.layer-carousel-overlay {
  z-index: var(--ot-z-carousel-overlay);
}

.layer-detail {
  z-index: var(--ot-z-detail);
}

.layer-dialog {
  z-index: var(--ot-z-dialog);
}

.layer-menu {
  z-index: var(--ot-z-menu);
}

.layer-top {
  z-index: var(--ot-z-top);
}

.ot-control,
.map-control-btn {
  background: var(--ot-glass);
  border: 1px solid var(--ot-glass-border);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  box-shadow: var(--ot-shadow-md);
  color: var(--ot-ink);
  transition: background var(--ot-duration-normal) var(--ot-ease-standard), border-color var(--ot-duration-normal) var(--ot-ease-standard), box-shadow var(--ot-duration-normal) var(--ot-ease-standard), color var(--ot-duration-normal) var(--ot-ease-standard);
  background: var(--ot-glass) !important;
  color: var(--ot-ink) !important;
}
.ot-control:hover,
.map-control-btn:hover {
  background: var(--ot-glass-hover);
}
.ot-control:hover,
.map-control-btn:hover {
  background: var(--ot-glass-hover) !important;
}

.map-control-btn .map-control-btn-badge {
  position: absolute;
  right: 0;
  top: 0;
}

.google-map-control {
  background: var(--ot-surface);
  border: 0;
  margin: var(--ot-space-3);
  padding: 0;
  cursor: pointer;
  -webkit-user-select: none;
          user-select: none;
  border-radius: var(--ot-radius-xs);
  height: var(--ot-control-size);
  width: var(--ot-control-size);
  box-shadow: var(--ot-shadow-map);
  color: var(--ot-muted);
}
.google-map-control i {
  padding: var(--ot-space-1);
  color: var(--ot-muted);
}

.ot-search-field {
  height: var(--ot-control-size);
  min-height: var(--ot-control-size);
}
.ot-search-field .q-field__control {
  height: var(--ot-control-size);
  min-height: var(--ot-control-size);
  padding: 0 10px;
  border-radius: calc(var(--ot-control-size) / 2);
  background: var(--ot-glass-soft);
  border: 1px solid var(--ot-glass-border);
  backdrop-filter: blur(var(--ot-blur));
  -webkit-backdrop-filter: blur(var(--ot-blur));
  box-shadow: none;
  transition: background var(--ot-duration-normal) var(--ot-ease-standard), border-color var(--ot-duration-normal) var(--ot-ease-standard);
}
.ot-search-field .q-field__control::before,
.ot-search-field .q-field__control::after {
  display: none;
}
.ot-search-field .q-field__native,
.ot-search-field input {
  height: var(--ot-control-size);
  min-height: var(--ot-control-size);
  padding: 0;
  font-size: 14px;
  background: transparent !important;
  color: var(--ot-ink);
}
.ot-search-field .q-field__prepend,
.ot-search-field .q-field__append {
  height: var(--ot-control-size);
  min-height: var(--ot-control-size);
}
.ot-search-field .q-icon {
  color: var(--ot-ink);
}

.ot-overlay,
.detail-overlay-layer,
.q-dialog.scavenger-hunt-dialog {
  background: var(--ot-overlay) !important;
}

.q-dialog.layer-control-dialog,
.q-dialog.share-dialog {
  background: transparent !important;
}
.q-dialog.layer-control-dialog .q-dialog__backdrop,
.q-dialog.share-dialog .q-dialog__backdrop {
  background: var(--ot-overlay-backdrop) !important;
}

body.body--light .guide-detail-footer {
  background: linear-gradient(0deg, color-mix(in srgb, var(--ot-page) calc(0.9 * 100%), transparent) 0%, color-mix(in srgb, var(--ot-page) calc(0.9 * 100%), transparent) 75%, transparent 100%);
}

body.body--dark .guide-detail-footer {
  background: linear-gradient(0deg, color-mix(in srgb, var(--page-dark) calc(0.9 * 100%), transparent) 0%, color-mix(in srgb, var(--page-dark) calc(0.9 * 100%), transparent) 75%, transparent 100%);
}

.gm-style-iw .gm-style-iw-c {
  background-color: var(--ot-color-dark) !important;
  color: var(--on-dark) !important;
}

.ot-glass-panel {
  background: var(--ot-glass);
  border: 1px solid var(--ot-glass-border);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  box-shadow: var(--ot-shadow-md);
  border-radius: var(--ot-radius-lg);
}

body.body--dark .keypad-btn {
  background-color: var(--ot-surface);
  color: var(--ot-color-dark);
}
body.body--dark .keypad-input {
  background-color: transparent;
  color: var(--on-dark);
  border-bottom: 1px solid var(--on-dark);
}

body.body--light .keypad-dialog {
  background-color: var(--ot-overlay) !important;
}
body.body--light .keypad-dialog .q-dialog__backdrop {
  background-color: var(--ot-overlay) !important;
}
body.body--light .keypad-btn {
  background-color: var(--ot-color-dark);
  color: var(--on-dark);
}
body.body--light .keypad-input {
  background-color: transparent;
  color: var(--on-dark);
  border-bottom: 1px solid var(--ot-color-dark);
}

.ot-miniplayer {
  height: var(--miniplayer-height);
  background: var(--ot-surface);
}
body.body--dark .ot-miniplayer {
  background: var(--secondary-dark);
}

.background-image {
  position: absolute;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  height: 100%;
  width: 100%;
  content: " ";
  top: 0;
  left: 0;
  z-index: -1;
  overflow: hidden;
}
.background-image .inner {
  filter: blur(5px);
}
.background-image:hover .inner {
  filter: blur(0) !important;
}
.background-image:after {
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0) 100%);
  background-blend-mode: multiply;
  z-index: 1;
  height: 100%;
  width: 100%;
  content: " ";
  top: 0;
  left: 0;
  position: absolute;
}

.guide-list-item {
  min-height: 8rem;
}
.social-login-btn[data-v-42949a3c] {
  padding: 4px;
  padding-top: 10px;
  padding-bottom: 10px;
}
.social-login-btn.google[data-v-42949a3c] {
  background: #f44336;
  color: white;
}
.social-login-btn[data-v-42949a3c]:hover:not(:last-child) {
  margin-right: 1px !important;
}
.gsi-material-button[data-v-42949a3c] {
  -moz-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  -webkit-appearance: none;
  background-color: WHITE;
  background-image: none;
  border: 1px solid #747775;
  border-radius: 4px;
  box-sizing: border-box;
  color: #1f1f1f;
  cursor: pointer;
  font-family: "Roboto", arial, sans-serif;
  font-size: 14px;
  height: 40px;
  letter-spacing: 0.25px;
  outline: none;
  overflow: hidden;
  padding: 0 12px;
  position: relative;
  text-align: center;
  transition: background-color 0.218s, border-color 0.218s, box-shadow 0.218s;
  vertical-align: middle;
  white-space: nowrap;
  width: auto;
  max-width: 400px;
  min-width: min-content;
}
.gsi-material-button .gsi-material-button-icon[data-v-42949a3c] {
  height: 20px;
  margin-right: 12px;
  min-width: 20px;
  width: 20px;
}
.gsi-material-button .gsi-material-button-content-wrapper[data-v-42949a3c] {
  align-items: center;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  height: 100%;
  justify-content: space-between;
  position: relative;
  width: 100%;
}
.gsi-material-button .gsi-material-button-contents[data-v-42949a3c] {
  flex-grow: 1;
  font-family: "Roboto", arial, sans-serif;
  font-weight: 500;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: top;
}
.gsi-material-button .gsi-material-button-state[data-v-42949a3c] {
  transition: opacity 0.218s;
  bottom: 0;
  left: 0;
  opacity: 0;
  position: absolute;
  right: 0;
  top: 0;
}
.gsi-material-button[data-v-42949a3c]:disabled {
  cursor: default;
  background-color: #ffffff61;
  border-color: #1f1f1f1f;
}
.gsi-material-button:disabled .gsi-material-button-contents[data-v-42949a3c] {
  opacity: 38%;
}
.gsi-material-button:disabled .gsi-material-button-icon[data-v-42949a3c] {
  opacity: 38%;
}
.gsi-material-button:not(:disabled):active .gsi-material-button-state[data-v-42949a3c],
.gsi-material-button:not(:disabled):focus .gsi-material-button-state[data-v-42949a3c] {
  background-color: #303030;
  opacity: 12%;
}
.gsi-material-button[data-v-42949a3c]:not(:disabled):hover {
  box-shadow: 0 1px 2px 0 rgba(60, 64, 67, 0.3), 0 1px 3px 1px rgba(60, 64, 67, 0.15);
}
.gsi-material-button:not(:disabled):hover .gsi-material-button-state[data-v-42949a3c] {
  background-color: #303030;
  opacity: 8%;
}
.hidden-input[data-v-c211b45e] {
  visibility: hidden;
  display: none;
}
.hidden-input[data-v-c211b45e] {
  visibility: hidden;
  display: none;
}

.photo-container[data-v-1bcc4af1] {
    box-shadow: inset 0px 1px 4px #000;
    z-index: 400;
}
.slightly-rounded[data-v-1bcc4af1] {
    border-radius: 2px;
}
.photo-frame[data-v-1bcc4af1] {
    box-shadow: 1px 1px 2px rgba(120, 120, 120, 50), inset 0px 0px 2px rgba(120, 120, 120, 5);
}
.floating-top-right[data-v-1bcc4af1] {
    z-index: 999;
    top: -10px;
    right: -10px;
    position: absolute;
    box-shadow: 2px 2px 4px rgba(120, 120, 120, 30);
    border: 2px solid white;
}

.polaroid[data-v-436f20c9] {
  transform: rotateZ(2deg);
}
.multiple-choice-answer[data-v-c3de562c] {
  transition: all 0.1s ease-out;
  background: linear-gradient(180deg, #ffffff 0%, #eeeeee 10%, #eeeeee 80%, #dbdbdb);
  color: #222;
}
.multiple-choice-answer[data-v-c3de562c]:not(.isDisabled):hover {
  box-shadow: none;
  background: #00416a;
  color: white;
  transform: scaleX(0.98);
}
.multiple-choice-answer[data-v-c3de562c]:active {
  background-color: #4caf50;
}
.multiple-choice-answer.isDisabled[data-v-c3de562c] {
  background: #9e9e9e;
  cursor: not-allowed;
}
.multiple-choice-answer.isDisabled[data-v-c3de562c]:not(.correct) {
  opacity: 0.6;
}
.multiple-choice-answer.isDisabled.correct[data-v-c3de562c] {
  opacity: 1 !important;
}
.multiple-choice-answer.hide[data-v-c3de562c] {
  cursor: not-allowed;
}
.multiple-choice-answer.selected[data-v-c3de562c] {
  background: linear-gradient(180deg, #ffffff 0%, #fffefe 10%, #ffffff 80%, #ececec);
  box-shadow: 0 1px 8px rgba(0, 0, 0, 0.2), 0 3px 4px rgba(0, 0, 0, 0.14), 0 3px 3px -2px rgba(0, 0, 0, 0.12);
  border: #39394e solid 3px !important;
  color: black !important;
  transform: scale(1.05);
}
.multiple-choice-answer.correct[data-v-c3de562c] {
  color: #277833 !important;
  border: #277833 solid 1px !important;
}
.multiple-choice-answer.correct.selected[data-v-c3de562c] {
  background: #d4e5d5 !important;
}
.multiple-choice-answer.incorrect[data-v-c3de562c] {
  border: #a40f1d solid 1px !important;
  background: #efccd0 !important;
  color: #a40f1d !important;
}
.fade-enter[data-v-da7719c6] {
  opacity: 0;
}
.fade-enter-active[data-v-da7719c6] {
  animation: fadein-da7719c6 0.5s;
}
.fade-leave[data-v-da7719c6] {
  opacity: 1;
}
.fade-leave-active[data-v-da7719c6] {
  animation: fadein-da7719c6 0.5s reverse;
}
@keyframes fadein-da7719c6 {
from {
    opacity: 0;
}
to {
    opacity: 1;
}
}
@keyframes appear-12a957fc {
0% {
    transform: translateY(100vh);
}
80% {
    transform: translateY(-1vh);
}
90% {
    transform: translateY(0.5vh);
}
100% {
    transform: translateY(0);
}
}
.submit-buttons[data-v-12a957fc] {
  animation: appear-12a957fc 0.5s ease-out forwards;
}
.text-input[data-v-00de9b2c] {
  border: 1px solid grey;
  padding-left: 10px;
  outline: 1px solid grey;
  font-size: 1em;
  box-shadow: inset 0 0 2px grey;
}
.number-input[data-v-7f5210fe] {
  border: 1px solid grey;
  padding: 0;
  outline: 1px solid grey;
  font-size: 3em;
  width: 6em;
  box-shadow: inset 0 0 2px grey;
}
.map-controls-layout[data-v-e1f141aa] {
  position: absolute;
  inset: 0;
  pointer-events: none;
  display: grid;
  grid-template-columns: auto 1fr auto;
  grid-template-rows: auto 1fr auto;
  padding: 12px;
  gap: 10px;
  z-index: 10;
}
.region[data-v-e1f141aa] {
  display: flex;
  gap: 8px;
  pointer-events: none;
  min-width: 0;
}
.region[data-v-e1f141aa] > * {
  pointer-events: auto;
}

/* Top: full-width center, sides overlay */
.top-center[data-v-e1f141aa] {
  grid-column: 1/-1;
  grid-row: 1;
  z-index: 1;
  flex-direction: row;
  align-items: flex-start;
  justify-content: center;
  /* Keep search out from under left/right controls */
  padding-left: 52px;
  padding-right: 52px;
}
.top-left[data-v-e1f141aa] {
  grid-column: 1;
  grid-row: 1;
  z-index: 2;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
}
.top-right[data-v-e1f141aa] {
  grid-column: 3;
  grid-row: 1;
  z-index: 2;
  flex-direction: column;
  align-items: flex-end;
  justify-content: flex-start;
}

/* Middle */
.middle-left[data-v-e1f141aa] {
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}
.middle-center[data-v-e1f141aa] {
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.middle-right[data-v-e1f141aa] {
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
}

/* Bottom */
.bottom-left[data-v-e1f141aa] {
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-end;
}
.bottom-center[data-v-e1f141aa] {
  flex-direction: row;
  align-items: flex-end;
  justify-content: center;
}
.bottom-right[data-v-e1f141aa] {
  flex-direction: column;
  align-items: flex-end;
  justify-content: flex-end;
}

.sweep[data-v-17142a7a] {
    background: conic-gradient(from 0deg, #21ba45 0deg, transparent 90deg);
    width: 100%;
    height: 100%;
}

.container[data-v-78ed6ce5] {
  max-width: 80px;
  max-height: 80px;
  aspect-ratio: 1;
}
.container img[data-v-78ed6ce5] {
  max-height: 100%;
  max-width: 100%;
}
.wrapper[data-v-5a6bece6] {
  height: 100%;
  width: 100vw;
}
@keyframes map-out-5a6bece6 {
0% {
    transform: scale(1);
}
100% {
    transform: scale(0);
}
}
@keyframes map-in-5a6bece6 {
0% {
    transform: scale(0);
}
100% {
    transform: scale(1);
}
}
@keyframes radar-in-5a6bece6 {
0% {
    transform: scale(0);
}
80% {
    transform: scale(1.05);
}
92% {
    transform: scale(0.98);
}
100% {
    transform: scale(1);
}
}
@keyframes radar-out-5a6bece6 {
0% {
    transform: scale(1);
}
100% {
    transform: scale(0);
}
}
.radar-container[data-v-5a6bece6] {
  animation: radar-out-5a6bece6 0.3s ease-in forwards;
}
.radar-container.show[data-v-5a6bece6] {
  animation: radar-in-5a6bece6 0.3s ease-out forwards;
}
.map-container[data-v-5a6bece6] {
  animation: map-out-5a6bece6 0.3s ease-in forwards;
}
.map-container.show[data-v-5a6bece6] {
  animation: map-in-5a6bece6 0.3s ease-out forwards;
}

@keyframes shake-53101f47 {
0% {
      transform: rotateY(-30deg);
}
10% {
      transform: rotateY(29deg);
}
20% {
      transform: rotateY(-28deg);
}
30% {
      transform: rotateY(27deg);
}
40% {
      transform: rotateY(-26deg);
}
50% {
      transform: rotateY(25deg);
}
60% {
      transform: rotateY(-24deg);
}
70% {
      transform: rotateY(23deg);
}
80% {
      transform: rotateY(0deg);
}
100% {
      transform: rotateY(0deg);
}
}
.button-container {
&[data-v-53101f47] {
    display: inline-block;
    cursor: pointer;
    -webkit-user-select: none;
            user-select: none;
    /* Ensure responsive fitting if parent constrains */
    aspect-ratio: 1 / 1;

    height: auto;
}
&.down {
&.isDisabled[data-v-53101f47] {
        animation: shake-53101f47 1s linear forwards;
}
}
}
.check-in-button[data-v-53101f47] {
    transition: transform 0.1s cubic-bezier(0.4, 0, 0.2, 1), filter 0.2s ease;
    border-radius: 50%; /* For any overflow clipping */
}
.check-in-button:active {
&[data-v-53101f47]:not(.isDisabled) {
      transform: scale(0.95);
}
}
.check-in-button:active circle {
&[data-v-53101f47] {

    /* Slight color shift for press effect */
}
&[data-v-53101f47]:not(.isDisabled) {
      filter: url(#shadow) drop-shadow(0 2px 6px rgba(0, 0, 0, 0.4));
}
}

.check-in-button[data-v-3af76506] {
  max-width: 120px;
  max-height: 120px;
}

.question-mark-background[data-v-b017d578] {
  position: absolute;
  top: 0;
  left: 0;
  width: inherit;
  height: inherit;
}
canvas[data-v-b017d578] {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointerevents: none;
}

$primary: #39394e;
$primary-dark: #2e2e3e;
$primary-light: #9f9fcc;

$secondary: #616161;
$secondary-dark: #181821;
$secondary-light: #9696d0;

$accent: #00416a;
$accent-dark: #012c4b;
$accent-light: #1668a8;

$dark: #1D1D1D;
$dark-page: $dark;
$dark-text: #fff;

$positive: #21BA45;
$positive-dark: #24794a;

$negative: #C10015;
$negative-dark: rgb(122, 15, 52);
$negative-light: rgb(255, 28, 61);

$info: rgb(143, 164, 189);
$info-dark: rgb(31, 75, 126);
$info-light: rgb(233, 237, 240);

$warning: #F2C037;
$warning-dark: #63512b;
$warning-text: #382f0d;


.bg-question[data-v-a44f76c2] {
    background: radial-gradient(transparent, rgba(20, 20, 20, 0.8)), linear-gradient(135deg, #6e8efb, #a777e3);
}
@keyframes fall-a44f76c2 {
0% {
      transform: translateY(-100vh);
      opacity: 0.2;
}
100% {
      transform: translateY(100vh);
      opacity: 0.1;
}
}
@keyframes rotate-a44f76c2 {
0% {
      transform: rotate(0deg);
}
100% {
      transform: rotate(360deg);
}
}
@keyframes shimmer-a44f76c2 {
0%,
    100% {
      opacity: 0.2;
}
50% {
      opacity: 0.4;
}
}

.qr-image[data-v-46388b12] {
  cursor: pointer;
}
.q-dialog[data-v-60612558] {
  -webkit-backdrop-filter: blur(3px);
          backdrop-filter: blur(3px);
}
blockquote[data-v-60612558] {
  font-size: 1em !important;
  font-family: serif;
  text-align: center;
  font-style: italic;
}
blockquote .before[data-v-60612558] {
  color: grey;
  z-index: 999;
}
blockquote .after[data-v-60612558] {
  color: grey;
  z-index: 999;
}

.keypad-message[data-v-61f7ad28] {
  min-height: 20px;
  padding: 5px;
}
.fade-enter-active[data-v-61f7ad28],
.fade-leave-active[data-v-61f7ad28] {
  transition: opacity 0.3s ease;
}
.fade-enter-from[data-v-61f7ad28],
.fade-leave-to[data-v-61f7ad28] {
  opacity: 0;
}

.sr-only[data-v-42b5123a] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
@keyframes fadeIn-42b5123a {
0% {
    opacity: 0;
}
100% {
    opacity: 1;
}
}
@keyframes fadeOut-42b5123a {
0% {
    opacity: 1;
}
100% {
    opacity: 0;
}
}
@keyframes successJump-42b5123a {
0% {
    transform: scale(1);
}
30% {
    transform: scale(1.2);
}
}
@keyframes searching-42b5123a {
0% {
    opacity: 1;
}
50% {
    opacity: 0.5;
}
100% {
    opacity: 1;
}
}
@keyframes errorShake-42b5123a {
0% {
    transform: translateX(3px);
}
10% {
    transform: translateX(-3px);
}
20% {
    transform: translateX(3px);
}
30% {
    transform: translateX(-3px);
}
40% {
    transform: translateX(3px);
}
50% {
    transform: translateX(-3px);
}
60% {
    transform: translateX(0px);
    opacity: 1;
}
100% {
    transform: translateX(0px);
    opacity: 0;
}
}
.search-icon[data-v-42b5123a] {
  animation: searching-42b5123a 1s ease-in-out infinite;
}
.search-indicator[data-v-42b5123a] {
  opacity: 0;
}
.search-indicator.show[data-v-42b5123a] {
  animation: fadeIn-42b5123a 1s ease-in-out forwards;
}
.search-indicator.hide[data-v-42b5123a] {
  animation: fadeOut-42b5123a 0.3s ease-in-out forwards;
}
.keypad-input[data-v-42b5123a] {
  min-height: 60px;
  background: transparent;
}
.keypad-input .q-field__inner[data-v-42b5123a] {
  animation: fadeIn-42b5123a 0.3s ease-in-out forwards;
}
.keypad-input.valid[data-v-42b5123a] {
  color: #4caf50;
}
.keypad-input.valid .q-field__inner[data-v-42b5123a] {
  animation: successJump-42b5123a 0.3s ease-in-out forwards;
}
.keypad-input.valid .keypad-input__inner[data-v-42b5123a] {
  color: #4caf50 !important;
}
.keypad-input.error[data-v-42b5123a] {
  animation: errorShake-42b5123a 0.8s ease-in-out forwards;
}
.keypad-input.error .keypad-input__inner[data-v-42b5123a] {
  color: red !important;
}
.keypad-input input[data-v-42b5123a] {
  background: transparent !important;
}
.q-input[data-v-42b5123a] {
  transition: opacity 0.2s ease;
  background: transparent !important;
}
/* In \3c style scoped> of KeypadButton.vue */
.keypad-btn[data-v-5823680e] {
  font-size: 2rem;
  font-weight: 600;
  transition: transform 0.1s ease, box-shadow 0.1s ease;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2), 0 1px 1px rgba(0, 0, 0, 0.14), 0 2px 1px -1px rgba(0, 0, 0, 0.12);
}
.keypad-btn[data-v-5823680e]:hover {
  transform: scale(1.05);
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.2), 0 2px 2px rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.12);
}
.keypad-btn[data-v-5823680e]:active {
  transform: scale(0.92);
  box-shadow: 0 -7px 9px -7px rgba(0, 0, 0, 0.7) inset;
}
.keypad {
  width: 100%;
  max-width: 100%;
  padding-bottom: 16px;
  overflow: hidden;
}
@media (min-width: 1024px) {
.keypad {
    padding-bottom: 8px;
}
}
.keypad-dialog .q-dialog__inner {
  padding: 0;
}

/* Desktop split ratio */
@media (min-width: 1024px) {
.col-md-4 {
    flex: 0 0 33.333% !important;
    max-width: 33.333% !important;
}
.col-md-8 {
    flex: 0 0 66.666% !important;
    max-width: 66.666% !important;
}
}
/* Slide transitions (keep if you like them) */
.slide-fade-left-enter-active,
.slide-fade-right-enter-active {
  transition: all 0.2s ease-out;
}
.slide-fade-left-leave-active,
.slide-fade-right-leave-active {
  transition: all 0.2s cubic-bezier(1, 0.5, 0.8, 1);
}
.slide-fade-left-enter-from,
.slide-fade-left-leave-to,
.slide-fade-right-enter-from,
.slide-fade-right-leave-to {
  opacity: 0;
}
.checkbox-icon[data-v-76e7405a] {
  outline: 2px solid #757575;
  border-radius: 1px;
}
.scavenger-hunt-dialog {
  padding: 0 !important;
  margin: 0 !important;
}
.scavenger-hunt-dialog .q-dialog__inner {
  padding: 0 !important;
  margin: 0 !important;
}
.search-input[data-v-fd7a0df0] {
  width: 100%;
}

.q-dialog .q-btn {
    position: relative !important;
    z-index: 10 !important;
}


.detail-overlay {
&[data-v-038305d6] {
    z-index: 2998;
    background-color: transparent;
    position: absolute;
    overflow: hidden;
    -webkit-overflow-scrolling: auto;
}
&.detail-overlay__offscreen[data-v-038305d6] {
      background: purple;
      opacity: 0;

      z-index: 0;
      pointer-events: none;
      display: none;
      animation: hideOverlay-038305d6 0.3s ease-out 0s 1 forwards;
      -webkit-animation: hideOverlay-038305d6 0.3s ease-out 0s 1 forwards;
}
&.detail-overlay__initial[data-v-038305d6] {
      display: none;
      pointer-events: none;
}
.detail-overlay__detail-background[data-v-038305d6] {
      width: 100%;
      height: 100%;
      position: absolute;
}
@media (min-width: $breakpoint-sm-min) {
&[data-v-038305d6] {
      align-items: center;
      justify-content: center;
}
}
&.detail-overlay__active {
&[data-v-038305d6] {
      animation: none;
      -webkit-animation: none;
      pointer-events: auto;
      display: flex;
}
.detail-overlay__detail-inner[data-v-038305d6] {
        animation: slideIn-038305d6 0.2s ease-in-out 0s 1 normal forwards;
        -webkit-animation: slideIn-038305d6 0.2s ease-in-out 0s 1 normal forwards;
}
}
.detail-overlay__detail-inner[data-v-038305d6] {
@media (max-width: $breakpoint-xs-max) {
        width: 100%;
        left: 0;
        height: inherit;
        top: 100%;
        position: relative;
}
@media (min-width: $breakpoint-sm-min) {
        width: 60%;

        height: 75%;
        top: 100%;
        position: relative;
}

      background: white;

      animation: fadeOut 0.2s cubic-bezier(0.65, 0, 0.35, 1) 0s 1 normal forwards;
}
}
@keyframes hideOverlay-038305d6 {
0% {
      animation-timing-function: linear;
      -webkit-animation-timing-function: linear;
      opacity: 1;
}
100% {
      visibility: hidden;
      z-index: -1;
      opacity: 0;
}
}
@keyframes slideOut-038305d6 {
0% {
      animation-timing-function: ease-in;
      -webkit-animation-timing-function: ease-in;
      top: 0;
}
100% {
      animation-timing-function: ease-out;
      -webkit-animation-timing-function: ease-out;
      top: 100%;
}
}
@keyframes slideIn-038305d6 {
0% {
      animation-timing-function: ease-in;
      -webkit-animation-timing-function: ease-in;
      top: 100%;
}
75% {
      animation-timing-function: ease-in;
      -webkit-animation-timing-function: ease-in;
      top: 0;
}
90% {
      animation-timing-function: ease-in;
      -webkit-animation-timing-function: ease-in;
      top: 3%;
}
100% {
      animation-timing-function: ease-out;
      -webkit-animation-timing-function: ease-out;
      top: 0;
}
}
@keyframes myAnim-038305d6 {
0% {
      animation-timing-function: ease-in;
      -webkit-animation-timing-function: ease-in;
      top: 100%;
}
38% {
      animation-timing-function: ease-out;
      -webkit-animation-timing-function: ease-out;
      top: 0;
}
55% {
      animation-timing-function: ease-in;
      -webkit-animation-timing-function: ease-in;

      top: 10%;
}
72% {
      animation-timing-function: ease-out;
      -webkit-animation-timing-function: ease-out;
      top: 0;
}
81% {
      animation-timing-function: ease-in;
      -webkit-animation-timing-function: ease-in;
      top: 5%;
}
100% {
      animation-timing-function: ease-out;
      -webkit-animation-timing-function: ease-out;
      top: 0;
}
}


.round-pin[data-v-a637121a] {
    width: 48px;
    height: 56px;
    position: relative;
    cursor: pointer;
    transition: transform 0.2s ease;
}
.highlighted[data-v-a637121a],
  .hovered[data-v-a637121a] {
    transform: scale(1.12);
    z-index: 10;
}
.pin-svg[data-v-a637121a] {
    position: absolute;
    top: 0;
    left: 0;
}
.pin-content[data-v-a637121a] {
    position: absolute;
    top: 16px;
    left: 50%;
    transform: translateX(-50%);
    width: 22px;
    height: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2;
}
.keypad-code[data-v-a637121a] {
    font-weight: 700;
    font-size: 13px;
    line-height: 1;
    text-align: center;
}
.challenge-corner[data-v-a637121a] {
    position: absolute;
    top: -20px;
    right: -20px;
    font-size: 20px;
    color: gold;
}
.challenge-star {
&[data-v-a637121a] {
    width: 22px;
    height: 22px;
    font-size: 20px;
    display: flex;
    align-items: center;
    justify-items: center;
    justify-content: center;
    }
&[data-v-a637121a]:not(.challenge-active) {
      color: grey !important;
      opacity: 0.5;
}
}
.default-circle[data-v-a637121a] {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: #fff;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.25);
}


.custom-popup[data-v-1ff8f660] {
    position: relative;
    background: #ffffff;
    border-radius: 14px;
    filter: drop-shadow(0 5px 6px rgba(0, 0, 0, 0.25));
    overflow: visible;
    font-family: inherit;
    transition: box-shadow 0.25s ease, filter 0.25s ease;
    cursor: pointer;
    pointer-events: auto;
    border: 1px solid #e0e0e0;
}
.custom-popup.is-selected[data-v-1ff8f660] {
    filter: drop-shadow(0 10px 25px rgba(66, 133, 244, 0.3));
}
.iw-content[data-v-1ff8f660] {
    display: flex;
    align-items: stretch;
    gap: 0;
    min-height: 60px;
}
.number-wrapper[data-v-1ff8f660] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 14px;
    flex-shrink: 0;
}
.number-circle[data-v-1ff8f660] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #f1f3f4;
    color: #202124;
    font-weight: 700;
    font-size: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}
.texts[data-v-1ff8f660] {
    flex: 1;
    min-width: 0;
    padding: 13px 12px 13px 8px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 3px;
}
.title[data-v-1ff8f660] {
    font-weight: 600;
    font-size: 15.5px;
    line-height: 1.3;
    color: #202124;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.subtitle[data-v-1ff8f660] {
    font-size: 13px;
    line-height: 1.35;
    color: #5f6368;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}
.right-block[data-v-1ff8f660] {
    width: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    border-top-right-radius: 14px;
    border-bottom-right-radius: 14px;
    transition: filter 0.2s ease;
}
.right-block[data-v-1ff8f660]:hover {
    filter: brightness(0.9);
}
.arrow[data-v-1ff8f660] {
    position: absolute;
    bottom: -13px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 14px solid transparent;
    border-right: 14px solid transparent;
    border-top: 14px solid #ffffff;
    z-index: 1;
    pointer-events: none;
}


.google-map-info-window {
    transform: translateY(-80px);
}

.map-control-btn-badge[data-v-1775482b] {
  position: absolute;
  right: 0;
  top: 0;
}
.locate-me-btn.live[data-v-746644b2] {
  background: #4285f4 !important;
  border-color: #3367d6 !important;
}
.locate-me-btn.live[data-v-746644b2] .q-icon,
.locate-me-btn.live[data-v-746644b2] .q-btn__content {
  color: #fff !important;
}

.google-map-renderer[data-v-486e2d81] {
    height: 100%;
    width: 100%;
    position: relative;
}
.map-container[data-v-486e2d81] {
    height: 100%;
    width: 100%;
}
.map-controls-host[data-v-486e2d81] {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: var(--footer-height, 0px);
    z-index: 10;
    pointer-events: none;
}
.map-loading[data-v-486e2d81] {
    height: 100%;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background-color: #174963;
    color: #666;
}


.image-map-poi-symbol[data-v-142b699c] {
    position: absolute;
    pointer-events: auto;
    will-change: transform;
}


.image-map-info-window[data-v-4ade0205] {
    transition: transform 0.1s ease;
    will-change: transform;
}


.image-map-minimap[data-v-0f0546c8] {
    position: absolute;
    width: 160px;
    height: 120px;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.35);
    border: 2px solid rgba(255, 255, 255, 0.9);
    background: #111;
    z-index: 10;
    cursor: pointer;
    -webkit-user-select: none;
            user-select: none;
    touch-action: none;
}
.minimap-image[data-v-0f0546c8] {
    width: 100%;
    height: 100%;
    object-fit: cover;
    pointer-events: none;
}
.viewport-overlay[data-v-0f0546c8] {
    position: absolute;
    background: rgba(66, 133, 244, 0.28);
    border: 2px solid #4285f4;
    pointer-events: auto;
    cursor: grab;
    touch-action: none;
}
.viewport-overlay[data-v-0f0546c8]:active {
    cursor: grabbing;
}
.minimap-fade-enter-active[data-v-0f0546c8],
  .minimap-fade-leave-active[data-v-0f0546c8] {
    transition: opacity 0.2s ease;
}
.minimap-fade-enter-from[data-v-0f0546c8],
  .minimap-fade-leave-to[data-v-0f0546c8] {
    opacity: 0;
}

.floor-control[data-v-6c187134] {
  pointer-events: auto;
}
.floor-fade-enter-active[data-v-6c187134],
.floor-fade-leave-active[data-v-6c187134] {
  transition: opacity var(--ot-duration-fast) var(--ot-ease-standard);
}
.floor-fade-enter-from[data-v-6c187134],
.floor-fade-leave-to[data-v-6c187134] {
  opacity: 0;
}
.floor-picker[data-v-6c187134] {
  width: 168px;
  max-height: 240px;
  padding: var(--ot-space-2) var(--ot-space-2) var(--ot-space-2) 6px;
  border-radius: var(--ot-radius-lg);
  background: var(--ot-glass);
  border: 1px solid var(--ot-glass-border);
  box-shadow: var(--ot-shadow-md);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  color: var(--ot-ink);
}
.floor-list[data-v-6c187134] {
  max-height: 224px;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  gap: 8px;
  scrollbar-width: none;
}
.floor-list[data-v-6c187134]::-webkit-scrollbar {
  display: none;
}
.floor-slide[data-v-6c187134] {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  width: 100%;
  margin: 0;
  padding: 4px 2px;
  border: 0;
  background: transparent;
  cursor: pointer;
}
.floor-label[data-v-6c187134] {
  flex: 1;
  min-width: 0;
  text-align: right;
  font-size: 12px;
  font-weight: 500;
  color: var(--ot-muted);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.floor-slide.active .floor-label[data-v-6c187134] {
  font-weight: 700;
  color: var(--ot-ink);
}
.floor-thumb[data-v-6c187134] {
  flex: 0 0 44px;
  width: 44px;
  height: 44px;
  border-radius: 4px;
  overflow: hidden;
  background: #111;
  transform: perspective(600px) rotateX(62deg) rotateY(-8deg);
  transform-origin: center center;
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0.35);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.floor-thumb img[data-v-6c187134] {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  pointer-events: none;
}
.floor-slide.active .floor-thumb[data-v-6c187134] {
  transform: perspective(600px) rotateX(62deg) rotateY(-8deg) scale(1.12);
  box-shadow: 0 12px 22px rgba(0, 0, 0, 0.45), 0 0 0 2px rgba(66, 133, 244, 0.7);
}
.minimap[data-v-448961bc] {
  position: absolute;
  width: 160px;
  height: 120px;
  z-index: 20;
  transform-origin: 0 100%;
  transform: scale(0.5);
  transition: transform 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  cursor: pointer;
  bottom: var(--footer-height, 0px);
}
.minimap .map[data-v-448961bc] {
  opacity: 0.5;
  transition: opacity 0.6s ease-in-out, transform 0.3s ease-in-out;
}
.minimap.big[data-v-448961bc] {
  transform: scale(1);
}
.minimap.show .map[data-v-448961bc] {
  opacity: 1;
}
.minimap .minimap-close[data-v-448961bc] {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 21;
  width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #333;
  border-radius: 50%;
  box-shadow: var(--ot-shadow-md);
  transition: transform var(--ot-duration-normal) var(--ot-ease-standard), box-shadow var(--ot-duration-normal) var(--ot-ease-standard);
  font-size: 18px;
  transform-origin: 0 100%;
}
.minimap:not(.big) .minimap-close[data-v-448961bc] {
  display: none;
}
.minimap.big .minimap-close[data-v-448961bc]:hover {
  transform: scale(1.1);
  box-shadow: 0 3px 8px rgba(0, 0, 0, 0.25);
}
.image-map-renderer[data-v-448961bc] {
  position: relative;
  overflow: hidden;
}
.viewport[data-v-448961bc] {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
  cursor: grab;
  -webkit-user-select: none;
          user-select: none;
}
.viewport.grabbing[data-v-448961bc] {
  cursor: grabbing;
}
.map-content[data-v-448961bc] {
  position: absolute;
  top: 0;
  left: 0;
  pointer-events: auto;
  transition: transform 0.22s cubic-bezier(0.25, 0.1, 0.25, 1);
}
.map-content.no-transition[data-v-448961bc] {
  transition: none !important;
}
.map-image[data-v-448961bc] {
  width: 100%;
  height: 100%;
  display: block;
  pointer-events: none;
}
.markers-layer[data-v-448961bc] {
  position: absolute;
  top: 0;
  left: 0;
  pointer-events: none;
}
.map-placeholder[data-v-448961bc] {
  width: 100%;
  height: 100%;
  color: #666;
}
.map-switch-enter-active[data-v-448961bc],
.map-switch-leave-active[data-v-448961bc] {
  transition: opacity 0.25s ease, transform 0.25s ease;
}
.map-switch-enter-from[data-v-448961bc],
.map-switch-leave-to[data-v-448961bc] {
  opacity: 0;
  transform: scale(0.985);
}
.map-controls-host[data-v-448961bc] {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: var(--footer-height, 0px);
  z-index: 10;
  pointer-events: none;
}

.map-renderer-root[data-v-5ee8a0a7] {
    position: relative;
    height: 100%;
    width: 100%;
}


.keypad-code-circle[data-v-718b76e6] {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    position: absolute; /* Ready for positioning */
    z-index: 10;
    -webkit-user-select: none;
            user-select: none;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
    flex-shrink: 0;
}


.poi-link-menu[data-v-07c344a4] {
    min-width: 240px;
    max-width: 280px;
    max-height: none;
    overflow: visible;
}
.poi-link-menu__qr[data-v-07c344a4] {
    padding-top: 0;
    padding-bottom: 12px;
}
.poi-link-menu__qr-img[data-v-07c344a4] {
    display: block;
    width: 220px;
    height: 220px;
    margin: 0 auto;
}


.poi-link-context-menu {
    max-height: none !important;
    height: auto !important;
    overflow: visible !important;
}
.poi-link-context-menu .q-menu__content,
  .poi-link-context-menu.q-menu {
    max-height: none !important;
    overflow: visible !important;
}

.flow-carousel[data-v-8ca5ea7c] {
  width: 100%;
  height: 100%;
  min-height: 0;
  box-sizing: border-box;
  background: transparent;
  padding: 5px;
  pointer-events: auto;
}
.flow-swiper--center-group[data-v-8ca5ea7c] .swiper-wrapper {
  justify-content: center;
  transform: none !important;
}
.flow-swiper[data-v-8ca5ea7c] {
  width: 100%;
  height: 100%;
  pointer-events: auto;
  cursor: pointer;
  --swiper-theme-color: var(--ot-color-primary);
  --swiper-navigation-color: var(--ot-color-primary);
  --swiper-navigation-size: 20px;
}
.flow-slide[data-v-8ca5ea7c] {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  flex: 0 0 auto;
  width: var(--flow-slide-width, auto);
  aspect-ratio: 480/500;
  overflow: hidden;
  border: 2px solid var(--slide-color);
  background: var(--slide-color);
  box-sizing: border-box;
  cursor: pointer;
  transform: scale(0.84);
  transform-origin: center center;
  transition: transform 0.22s ease, box-shadow 0.22s ease, border-width 0.22s ease;
  box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.4);
}
[data-v-8ca5ea7c] .flow-slide.swiper-slide-prev,[data-v-8ca5ea7c] .flow-slide.swiper-slide-next {
  transform: scale(0.92);
}
[data-v-8ca5ea7c] .flow-slide.swiper-slide-active {
  transform: scale(1);
}
.flow-slide.selected[data-v-8ca5ea7c] {
  border-width: 3px;
  box-shadow: 0 0 0 2px var(--slide-color), 0 0 12px 4px color-mix(in srgb, var(--slide-color) 70%, transparent), 2px 2px 4px rgba(0, 0, 0, 0.35);
}
.flow-slide-img[data-v-8ca5ea7c] {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.flow-slide-img[data-v-8ca5ea7c] .q-img__image {
  object-fit: cover;
  object-position: center;
}
.challenge-badge[data-v-8ca5ea7c] {
  position: absolute;
  top: 4px;
  left: 4px;
  z-index: 3;
}
.challenge-badge .q-icon[data-v-8ca5ea7c] {
  text-shadow: 0 0 4px #fff;
}
.keypad-badge[data-v-8ca5ea7c] {
  position: absolute;
  z-index: 3;
  bottom: 6px;
  left: 6px;
}
[data-v-8ca5ea7c] .swiper-wrapper {
  align-items: stretch;
  pointer-events: auto;
}
[data-v-8ca5ea7c] .swiper-slide {
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--flow-slide-width, auto);
  height: 100% !important;
  flex: 0 0 auto;
  aspect-ratio: 480/500;
  pointer-events: auto;
  cursor: pointer;
}
.scrubber[data-v-4f8e3480] {
  min-width: 0;
  gap: 8px;
}
.time[data-v-4f8e3480] {
  flex: 0 0 auto;
  min-width: 5ch;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  text-align: center;
}
.slider-wrap[data-v-4f8e3480] {
  min-width: 0;
}
[data-v-4f8e3480] .q-slider {
  height: 32px;
}
[data-v-4f8e3480] .q-slider__track-container {
  height: 4px;
}

.marquee[data-v-50d6386f] {
    overflow: hidden;
    white-space: nowrap;
    width: 100%;
}
.marquee-inner[data-v-50d6386f] {
    display: inline-flex;
    align-items: center;
    gap: var(--gap);
    animation: marquee-50d6386f var(--speed) linear infinite;
    will-change: transform;
}
.marquee-text[data-v-50d6386f] {
    display: inline-block;
    flex-shrink: 0;
}
@keyframes marquee-50d6386f {
from {
      transform: translateX(0);
}
to {
      transform: translateX(-50%);
}
}

  /* Optional: pause on hover */
.marquee:hover .marquee-inner[data-v-50d6386f] {
    animation-play-state: paused;
}

  /* Respect reduced motion */
@media (prefers-reduced-motion: reduce) {
.marquee-inner[data-v-50d6386f] {
      animation: none;
}
}

.miniplayer[data-v-7cc98b66] {
  height: var(--miniplayer-height);
  background: var(--ot-surface) !important;
}
.miniplayer .btn-play-pause[data-v-7cc98b66] {
  width: var(--miniplayer-height);
  height: var(--miniplayer-height);
}
body.body--dark .miniplayer[data-v-7cc98b66] {
  background: var(--secondary-dark) !important;
}
.guide-search-bar[data-v-7403988d] {
  height: var(--ot-control-size);
  min-height: var(--ot-control-size);
  max-width: 320px;
}
.badge-control[data-v-0bd5acc7] {
  background-color: white;
}

[data-v-d5c67a2e]:root {
    --touch-point-height: 10%;
}
.dialog-bg[data-v-d5c67a2e] {
    transition: background 2s ease-in;
}
.bounce-enter-active[data-v-d5c67a2e] {
    transform-origin: center 100%;
    animation: bounce-in-d5c67a2e 0.4s ease-out;
}
.bounce-leave-active[data-v-d5c67a2e] {
    animation: bounce-in-d5c67a2e 0.4s reverse;
}
@keyframes bounce-in-d5c67a2e {
0% {
      transform: scaleY(0);
}
20% {
      transform: scaleY(1.2);
}
30% {
      transform: scaleY(0.8);
}
50% {
      transform: scaleY(1.1);
}
75% {
      transform: scaleY(0.9);
}
100% {
      transform: scaleY(1);
}
}
@keyframes doubleTap-d5c67a2e {
0% {
      transform: scale(1);
      --touch-point-height: 30%;
}
5% {
      transform: scale(1);
      --touch-point-height: 30%;
}
8% {
      transform: scale(0.9) rotateX(20deg);
      --touch-point-height: 10%;
}
13% {
      transform: scale(1.05);
      --touch-point-height: 30%;
}
15% {
      transform: scale(0.95);
      --touch-point-height: 10%;
}
18% {
      transform: scale(1);
      --touch-point-height: 15%;
}
}
.tap-tap[data-v-d5c67a2e] {
    animation: doubleTap-d5c67a2e 5s ease-in-out infinite;
}
.enter-button[data-v-d5c67a2e] {
    animation: bounce-in-d5c67a2e 0.3s ease-in-out forwards;
}
.q-dialog__inner .q-dialog__inner--minimized[data-v-d5c67a2e] {
    padding: 0 !important;
}
.q-dialog__inner--minimized[data-v-d5c67a2e] {
    padding: 0 !important;
}
.q-dialog[data-v-d5c67a2e] {
    padding: 0 !important;
    margin: 0 !important;
}
.img-wrapper img[data-v-d5c67a2e] {
    object-fit: contain;
}

.fade-enter-active[data-v-5d18003c],
.fade-leave-active[data-v-5d18003c] {
  transition: opacity 0.5s ease;
}
.fade-enter-from[data-v-5d18003c],
.fade-leave-to[data-v-5d18003c] {
  opacity: 0;
}
@keyframes gradient-animation-5d18003c {
0% {
    background-position: 0 0;
    --gradient-rotate: 0;
    box-shadow: rgba(255, 255, 255, 0.86) inset 0 0 6px;
}
100% {
    background-position: 200% 200%;
    --gradient-rotate: 0;
    box-shadow: #eae4ab inset 0 0 4px;
}
}
.banner[data-v-5d18003c] {
  cursor: pointer;
  border-top-right-radius: 5px;
  border-bottom-right-radius: 5px;
  overflow: hidden;
  background: white;
}
.banner .inner[data-v-5d18003c] {
  border-left: 0;
  border-top-right-radius: 5px;
  border-bottom-right-radius: 5px;
  width: 100%;
  height: 100%;
}
.gold[data-v-5d18003c] {
  --gradient-rotate: 0;
  position: relative;
  box-shadow: #eae4ab inset 0 0 4px;
  animation: gradient-animation-5d18003c 10s linear infinite;
  background-size: 200% 200%;
  background-image: repeating-linear-gradient(90deg, #bf953f, #fcf6ba, #eeba4a, #eae4ab, #aa771c, #bf953f);
}
.gold .div[data-v-5d18003c],
.gold .arrow-banner[data-v-5d18003c] {
  border-radius: 10px;
  text-shadow: #523f0e 1px 1px 1px;
}
@keyframes arrow-tweak-5d18003c {
0% {
    transform: translateX(0);
}
5% {
    transform: translateX(-15px) scale(1.05);
}
15% {
    transform: translateX(0);
}
20% {
    transform: translateX(-15px);
}
30% {
    transform: translateX(0) scale(1);
}
}
.tweak[data-v-5d18003c] {
  animation: arrow-tweak-5d18003c 2s ease-in-out infinite;
}
@property --border-angle {
  syntax: "<angle>";
  initial-value: 0deg;
  inherits: false;
}
@property --gradient-rotate {
  syntax: "<angle>";
  initial-value: 45deg;
  inherits: false;
}
@property --gradient-offset {
  syntax: "<percentage>";
  initial-value: 0%;
  inherits: false;
}
.scavenger-hunt-map-btn[data-v-174f6cf2] {
  position: relative;
  display: inline-flex;
}
.scavenger-hunt-control[data-v-174f6cf2] .q-icon img,
.scavenger-hunt-control[data-v-174f6cf2] .q-btn__content img {
  width: 22px;
  height: 22px;
  object-fit: contain;
  filter: brightness(0) saturate(100%);
  opacity: 0.85;
}
body.body--dark .scavenger-hunt-control[data-v-174f6cf2] .q-icon img,
body.body--dark .scavenger-hunt-control[data-v-174f6cf2] .q-btn__content img {
  filter: brightness(0) invert(1);
  opacity: 0.95;
}

.user-html[data-v-1aebd22b] img {
    max-width: 80vw !important;
    max-height: 60vh;
    display: block;
    margin: 10px;
    align-self: center;
    justify-self: center;
    height: auto;
}

.image-gallery[data-v-8ff1fcbc] {
  height: 100%;
  min-height: 0;
  box-sizing: border-box;
  background: #fff;
  user-select: none;
  -webkit-user-select: none;
}
.gallery-empty[data-v-8ff1fcbc],
.gallery-stage[data-v-8ff1fcbc] {
  min-height: 0;
}
.gallery-stage[data-v-8ff1fcbc],
.main-slide[data-v-8ff1fcbc] {
  background: #fff;
}
.gallery-stage[data-v-8ff1fcbc] {
  position: relative;
  border-radius: 0;
  overflow: hidden;
}
.gallery-toolbar[data-v-8ff1fcbc] {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 4;
  padding: 8px 10px;
  pointer-events: none;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0.72), transparent);
}
.gallery-toolbar .q-btn[data-v-8ff1fcbc] {
  pointer-events: auto;
}
.gallery-counter[data-v-8ff1fcbc],
.gallery-fs-btn[data-v-8ff1fcbc] {
  color: #111;
  text-shadow: none;
}
.gallery-counter[data-v-8ff1fcbc] {
  padding-left: 6px;
}
.gallery-main[data-v-8ff1fcbc] {
  min-height: 0;
  touch-action: pan-y;
}
.main-swiper[data-v-8ff1fcbc] {
  width: 100%;
  height: 100%;
  --swiper-theme-color: var(--ot-color-primary);
  --swiper-navigation-color: #111;
  --swiper-navigation-size: 22px;
}
.main-slide[data-v-8ff1fcbc] {
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  pointer-events: none;
}
[data-v-8ff1fcbc] .main-swiper .swiper-slide-active {
  pointer-events: auto;
}
[data-v-8ff1fcbc] .swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
[data-v-8ff1fcbc] .swiper-zoom-container img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
  -webkit-user-select: none;
          user-select: none;
  -webkit-user-drag: none;
}
[data-v-8ff1fcbc] .swiper-button-prev,[data-v-8ff1fcbc] .swiper-button-next {
  width: 36px;
  height: 36px;
  margin-top: 0;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(255, 255, 255, 0.72);
  border-radius: 50%;
  color: #111;
}
[data-v-8ff1fcbc] .swiper-button-prev::after,[data-v-8ff1fcbc] .swiper-button-next::after {
  font-size: 16px;
  font-weight: 700;
}
.gallery-thumbs[data-v-8ff1fcbc] {
  flex: 0 0 auto;
  height: clamp(56px, 9vw, 80px);
  width: 100%;
  min-height: 56px;
  box-sizing: border-box;
  padding: 4px;
  pointer-events: auto;
  background: transparent;
}
.thumbs-swiper[data-v-8ff1fcbc] {
  width: 100%;
  height: 100%;
  pointer-events: auto;
  --swiper-theme-color: var(--ot-color-primary);
}
.thumb-slide[data-v-8ff1fcbc] {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1/1;
  overflow: hidden;
  border: 2px solid transparent;
  box-sizing: border-box;
  cursor: pointer;
  transform: none;
  transition: box-shadow 0.22s ease, border-color 0.22s ease;
  box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.28);
  background: #e8e8e8;
}
.thumb-slide.selected[data-v-8ff1fcbc] {
  border-color: var(--ot-color-primary);
  box-shadow: var(--ot-shadow-focus), 2px 2px 4px rgba(0, 0, 0, 0.35);
}
.thumb-slide-img[data-v-8ff1fcbc] {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.thumb-slide-img[data-v-8ff1fcbc] .q-img__image {
  object-fit: cover;
  object-position: center center;
}
[data-v-8ff1fcbc] .thumbs-swiper .swiper-wrapper {
  align-items: stretch;
  pointer-events: auto;
}
[data-v-8ff1fcbc] .thumbs-swiper .swiper-slide {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  aspect-ratio: 1/1;
  height: 100% !important;
  pointer-events: auto;
  cursor: pointer;
}
.image-gallery.is-fullscreen[data-v-8ff1fcbc] {
  position: fixed;
  inset: 0;
  z-index: 7000;
  padding: 0;
  background: #222;
}
.image-gallery.is-fullscreen .gallery-stage[data-v-8ff1fcbc],
.image-gallery.is-fullscreen .main-slide[data-v-8ff1fcbc] {
  background: #222;
}
.image-gallery.is-fullscreen .gallery-stage[data-v-8ff1fcbc] {
  border-radius: 0;
  flex: 1 1 auto;
}
.image-gallery.is-fullscreen .gallery-toolbar[data-v-8ff1fcbc] {
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.45), transparent);
}
.image-gallery.is-fullscreen .gallery-counter[data-v-8ff1fcbc],
.image-gallery.is-fullscreen .gallery-fs-btn[data-v-8ff1fcbc] {
  color: #fff;
}
.image-gallery.is-fullscreen .main-swiper[data-v-8ff1fcbc] {
  --swiper-navigation-color: #fff;
}
.image-gallery.is-fullscreen[data-v-8ff1fcbc] .swiper-button-prev,
.image-gallery.is-fullscreen[data-v-8ff1fcbc] .swiper-button-next {
  background: rgba(0, 0, 0, 0.35);
  color: #fff;
}
.image-gallery.is-fullscreen .gallery-thumbs[data-v-8ff1fcbc] {
  background: rgba(0, 0, 0, 0.72);
}
body.body--dark .image-gallery:not(.is-fullscreen) {
  background: #222;
}
body.body--dark .image-gallery:not(.is-fullscreen) .gallery-stage,
body.body--dark .image-gallery:not(.is-fullscreen) .main-slide {
  background: #222;
}
body.body--dark .image-gallery:not(.is-fullscreen) .gallery-toolbar {
  background: linear-gradient(to bottom, rgba(34, 34, 34, 0.78), transparent);
}
body.body--dark .image-gallery:not(.is-fullscreen) .gallery-counter,
body.body--dark .image-gallery:not(.is-fullscreen) .gallery-fs-btn {
  color: #fff;
}
body.body--dark .image-gallery:not(.is-fullscreen) .main-swiper {
  --swiper-navigation-color: #fff;
}
body.body--dark .image-gallery:not(.is-fullscreen) .swiper-button-prev,
body.body--dark .image-gallery:not(.is-fullscreen) .swiper-button-next {
  background: rgba(0, 0, 0, 0.35);
  color: #fff;
}
body.body--dark .image-gallery:not(.is-fullscreen) .thumb-slide {
  background: #333;
}
body.body--light .image-gallery:not(.is-fullscreen) {
  background: #fff;
}
body.body--light .image-gallery:not(.is-fullscreen) .gallery-stage,
body.body--light .image-gallery:not(.is-fullscreen) .main-slide {
  background: #fff;
}
[data-v-5a458262]:root {
  --blink-animation-speed: 0.2s;
}
.eye.blink[data-v-5a458262] {
  transform-origin: center;
  transform-box: fill-box;
  animation: blink-5a458262 10s ease-out infinite;
  animation-delay: 29s, 3s;
}
.shadow[data-v-5a458262] {
  filter: drop-shadow(3px 3px 2px rgba(0, 0, 0, 0.7));
  /* Similar syntax to box-shadow */
}
@keyframes blink-5a458262 {
0% {
    transform: scale(1, 0.4);
}
2% {
    transform: scale(1, 0.9);
}
4% {
    transform: scale(1, 0.3);
}
7% {
    transform: scale(1, 1);
}
}
.media-player[data-v-449de2f4] {
  padding: 8px 16px 8px 8px;
  box-sizing: border-box;
}
.player-row[data-v-449de2f4] {
  min-width: 0;
  gap: 4px;
}
.player-play[data-v-449de2f4] {
  flex: 0 0 auto;
  padding: 0 4px 0 0;
}
.player-main[data-v-449de2f4] {
  min-width: 0;
  gap: 2px;
}
.player-copy[data-v-449de2f4] {
  min-width: 0;
}
.player-scrubber[data-v-449de2f4] {
  width: 100%;
  min-width: 0;
}
.player-side[data-v-449de2f4] {
  flex: 0 0 auto;
  gap: 8px;
  padding-left: 8px;
}
.player-control-btn[data-v-449de2f4] {
  box-sizing: border-box;
  width: 32px;
  min-width: 32px;
  height: 32px;
  min-height: 32px;
  max-height: 32px;
  padding: 0;
  margin: 0;
  border-radius: 50%;
}
.player-control-btn__label[data-v-449de2f4] {
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1;
}
.poi-detail-root[data-v-0a3bb09a],
.poi-detail-body[data-v-0a3bb09a] {
  min-width: 0;
}
.poi-detail-root[data-v-0a3bb09a] {
  position: relative;
}
.visit-guide-btn[data-v-0a3bb09a] {
  position: absolute;
  right: 18px;
  bottom: calc(var(--poi-carousel-height, 0px) + var(--ot-space-4));
  z-index: 20;
}
.poi-detail-tab-controls[data-v-0a3bb09a] {
  background: var(--ot-surface);
  color: var(--ot-ink);
}
.footer-layer[data-v-330023ad] {
  background: var(--ot-footer-wash);
}
.guide-detail-page[data-v-330023ad] {
  position: relative;
  height: 100dvh;
  overflow: hidden;
}
.map-layer[data-v-330023ad] {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.detail-overlay-layer[data-v-330023ad] {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: var(--footer-height);
  height: auto !important;
  /* beats Quasar .full-height { height: 100% } */
  display: flex;
  flex-direction: column;
  min-height: 0;
  width: 100%;
  overflow: hidden;
}
.footer-layer[data-v-330023ad] {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 20;
  height: var(--footer-height);
  pointer-events: none;
  transition: height var(--ot-duration-fast) var(--ot-ease-standard);
}
.footer-layer .carousel-wrapper[data-v-330023ad],
.footer-layer .miniplayer-wrapper[data-v-330023ad] {
  pointer-events: auto;
}
.footer-layer .carousel-wrapper[data-v-330023ad] {
  pointer-events: auto !important;
  height: var(--poi-carousel-height);
}
.footer-layer .miniplayer-wrapper[data-v-330023ad] {
  height: var(--miniplayer-height);
}

/* Search stays centered and never eats the side columns */
.guide-search-bar[data-v-330023ad] {
  width: min(320px, 100%);
  max-width: 320px;
  height: 40px;
  min-height: 40px;
}
.fade-enter-active[data-v-330023ad],
.fade-leave-active[data-v-330023ad] {
  transition: all 0.3s ease-in-out;
  transform: translateY(0);
}
.fade-enter-from[data-v-330023ad],
.fade-leave-to[data-v-330023ad] {
  opacity: 0;
  transform: translateY(100vh);
}
.challenge-overlay[data-v-330023ad] {
  min-height: 0;
  background: var(--q-dark-page, #fff);
}
.challenge-overlay__bar[data-v-330023ad] {
  flex: 0 0 auto;
  min-height: 48px;
  padding: 4px 8px;
}

.toolbar-link[data-v-759d1fd5] {
    cursor: pointer;
}
.toolbar[data-v-759d1fd5] {
    background-size: cover;
}


.q-item[role="menuitem"][data-v-626d996c]:hover,
  .q-item[role="menuitem"][data-v-626d996c]:focus,
  a[role="menuitem"][data-v-626d996c]:hover,
  a[role="menuitem"][data-v-626d996c]:focus {
    background-color: #f5f5f5 !important;
    transition: background-color 0.2s ease;
    outline: none;
}
.body--dark .q-item[role="menuitem"][data-v-626d996c]:hover,
  .body--dark .q-item[role="menuitem"][data-v-626d996c]:focus,
  .body--dark a[role="menuitem"][data-v-626d996c]:hover,
  .body--dark a[role="menuitem"][data-v-626d996c]:focus {
    background-color: #424242 !important;
}


.drawer-menu-link,
  .drawer-menu-link * {
    color: rgba(0, 0, 0, 0.87) !important;
    text-decoration: none !important;
}
.body--dark .drawer-menu-link,
  .body--dark .drawer-menu-link * {
    color: white !important;
}
.body--dark .q-toggle__track {
    background-color: rgba(255, 255, 255, 0.3) !important;
}
.body--dark .q-toggle--truthy .q-toggle__track {
    background-color: #1976d2 !important;
}

.app-header[data-v-60deb838] {
  background-color: var(--q-primary);
  background-image: url("/img/header_bg.jpg");
  background-size: cover;
  background-position: center;
}
.app-header .q-toolbar[data-v-60deb838] {
  background: transparent;
}

.sr-only[data-v-4c0aeab4] {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
}
.border-bottom[data-v-4c0aeab4] {
    border-bottom: 1px solid #eadada;
}

._alpha-button {
  display: flex;
  height: 40px;
  align-items: center;
  font-size: clamp(1em, .5em, 2em);
  cursor: pointer;
}
._alpha-button.highlighted {
  box-shadow: 0em 0px 2px #c0c0c0;
}
._alpha-button p {
  margin: auto;
}
.prevent-select {
  -webkit-user-select: none;
  user-select: none;
}
.alpha-bar .alpha-char[data-v-5f01bbfc] {
  line-height: calc(100% / 27);
  max-height: calc(100% / 27);
  padding: 0;
  margin: 0;
}
.alpha-bar .alpha-char .alpha-button[data-v-5f01bbfc] {
  height: calc(100% / 27);
  margin: 0;
  padding: 0;
  width: auto;
}
.alpha-bar .alpha-char .alpha-button.highlighted[data-v-5f01bbfc] {
  box-shadow: none;
}

.header-text[data-v-470f91ea] {
    display: flex;
    align-items: center;
}


.guide-list-outer[data-v-1633db14] {
    padding-bottom: 40px;
}
.sr-only[data-v-1633db14] {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
}


.line-clamp-2[data-v-54b7f517] {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.list-page[data-v-31ef641f] {
  background: var(--ot-page);
  color: var(--ot-ink);
  height: 100%;
  min-height: 0;
  display: flex;
  flex-direction: column;
}
.list-scroll[data-v-31ef641f] {
  flex: 1;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}
.list-hero[data-v-31ef641f] {
  position: relative;
  isolation: isolate;
  min-height: 18rem;
  height: min(58vh, 32rem);
}
.list-hero-image[data-v-31ef641f] {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.list-hero-image[data-v-31ef641f] .q-img__image {
  object-fit: cover;
}
.list-hero-image--empty[data-v-31ef641f] {
  background: var(--ot-color-primary-dark);
}
.list-hero-veil[data-v-31ef641f] {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, var(--ot-page) 0%, color-mix(in srgb, var(--ot-page) 72%, transparent) 38%, color-mix(in srgb, var(--ot-page) 12%, transparent) 68%, transparent 100%);
}
.list-hero-hud[data-v-31ef641f] {
  position: absolute;
  top: var(--ot-space-3);
  left: var(--ot-space-3);
  right: var(--ot-space-3);
  z-index: 2;
  display: flex;
  justify-content: space-between;
  pointer-events: none;
}
.list-hero-hud .ot-control[data-v-31ef641f] {
  pointer-events: auto;
}
.list-hero-copy[data-v-31ef641f] {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  height: 100%;
  width: 100%;
  max-width: 42rem;
  margin: 0 auto;
  padding: var(--ot-space-6) var(--ot-space-4) var(--ot-space-4);
  box-sizing: border-box;
}
.list-hero-kicker[data-v-31ef641f] {
  margin: 0 0 var(--ot-space-2);
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ot-muted);
}
.list-hero-title[data-v-31ef641f] {
  margin: 0 0 var(--ot-space-2);
  font-family: var(--font-display);
  font-size: clamp(1.75rem, 6vw, 3rem);
  font-weight: 700;
  line-height: 1.08;
  color: var(--ot-ink);
}
.list-hero-lede[data-v-31ef641f] {
  margin: 0 0 var(--ot-space-3);
  max-width: 36rem;
  font-size: 0.95rem;
  line-height: 1.45;
  color: var(--ot-ink);
  opacity: 0.88;
}
.list-hero-meta[data-v-31ef641f] {
  display: flex;
  flex-wrap: wrap;
  gap: var(--ot-space-2);
}
.list-chip[data-v-31ef641f] {
  background: var(--ot-glass-soft);
  border: 1px solid var(--ot-glass-border);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border-radius: var(--ot-radius-pill);
  padding: 0.25rem 0.7rem;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  color: var(--ot-ink);
}
.list-sticky[data-v-31ef641f] {
  position: sticky;
  top: 0;
  z-index: var(--ot-z-header);
  background: var(--ot-glass-soft);
  border: 1px solid var(--ot-glass-border);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--ot-space-3);
  padding: var(--ot-space-2) var(--ot-space-4);
  border-bottom: 1px solid var(--ot-glass-border);
}
.list-sticky-title[data-v-31ef641f] {
  min-width: 0;
  font-weight: 650;
  font-size: 0.95rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.list-sticky-count[data-v-31ef641f] {
  flex: 0 0 auto;
  font-family: var(--font-mono);
  font-size: 0.75rem;
  color: var(--ot-muted);
}
.list-body[data-v-31ef641f] {
  width: 100%;
  max-width: 42rem;
  margin: 0 auto;
  padding: 0 var(--ot-space-4) calc(var(--ot-space-6) + var(--miniplayer-height, 0px));
  box-sizing: border-box;
}
.list-stops[data-v-31ef641f] {
  list-style: none;
  margin: 0;
  padding: var(--ot-space-4) 0;
  display: flex;
  flex-direction: column;
  gap: var(--ot-space-3);
}
.poi-card[data-v-31ef641f] {
  position: relative;
  display: grid;
  grid-template-columns: 6.75rem 1fr;
  width: 100%;
  padding: 0;
  margin: 0;
  overflow: hidden;
  text-align: left;
  color: inherit;
  cursor: pointer;
  background: var(--ot-surface);
  border: 1px solid var(--ot-glass-border);
  border-left: 3px solid var(--poi-accent, var(--ot-color-primary));
  border-radius: var(--ot-radius-lg);
  box-shadow: var(--ot-shadow-sm);
  transition: transform var(--ot-duration-normal) var(--ot-ease-standard), box-shadow var(--ot-duration-normal) var(--ot-ease-standard), border-color var(--ot-duration-normal) var(--ot-ease-standard);
}
.poi-card[data-v-31ef641f]:hover, .poi-card[data-v-31ef641f]:focus-visible {
  transform: translateY(-2px);
  box-shadow: var(--ot-shadow-md);
  outline: none;
}
.poi-card.is-selected[data-v-31ef641f] {
  box-shadow: var(--ot-shadow-focus);
}
.poi-card-media[data-v-31ef641f] {
  position: relative;
  min-height: 6.75rem;
  background: var(--ot-page);
}
.poi-card-index[data-v-31ef641f] {
  position: absolute;
  left: var(--ot-space-2);
  bottom: var(--ot-space-2);
  background: var(--ot-glass);
  border: 1px solid var(--ot-glass-border);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  border-radius: var(--ot-radius-pill);
  padding: 0.1rem 0.45rem;
  font-family: var(--font-mono);
  font-size: 0.65rem;
  letter-spacing: 0.08em;
  color: var(--ot-ink);
}
.poi-card-body[data-v-31ef641f] {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
  min-width: 0;
  padding: var(--ot-space-3) var(--ot-space-3) var(--ot-space-3) var(--ot-space-2);
}
.poi-card-title[data-v-31ef641f] {
  margin: 0;
  font-size: 1.02rem;
  font-weight: 650;
  line-height: 1.25;
}
.poi-card-sub[data-v-31ef641f],
.poi-card-excerpt[data-v-31ef641f] {
  margin: 0;
  color: var(--ot-muted);
  font-size: 0.84rem;
  line-height: 1.4;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.poi-card-meta[data-v-31ef641f] {
  display: flex;
  align-items: center;
  gap: var(--ot-space-2);
  margin-top: auto;
  padding-top: var(--ot-space-1);
  min-height: 1.75rem;
}
.poi-card-play[data-v-31ef641f] {
  color: var(--ot-ink);
}
.list-empty[data-v-31ef641f],
.list-loading[data-v-31ef641f] {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 8rem;
  color: var(--ot-muted);
}
.list-loading[data-v-31ef641f] {
  flex: 1;
}
.list-dock[data-v-31ef641f] {
  flex: 0 0 auto;
  background: var(--ot-surface);
  border-top: 1px solid var(--ot-glass-border);
}
.list-overlay[data-v-31ef641f] {
  position: fixed;
  inset: 0;
  z-index: var(--ot-z-detail);
  background: var(--ot-overlay);
  display: flex;
  flex-direction: column;
  min-height: 0;
}
@media (min-width: 600px) {
.list-hero[data-v-31ef641f] {
    height: min(54vh, 30rem);
}
.poi-card[data-v-31ef641f] {
    grid-template-columns: 9.25rem 1fr;
}
.poi-card-media[data-v-31ef641f] {
    min-height: 8.25rem;
}
.poi-card-title[data-v-31ef641f] {
    font-size: 1.12rem;
}
}
@media (min-width: 1024px) {
.list-hero[data-v-31ef641f] {
    height: min(48vh, 28rem);
}
.list-hero-copy[data-v-31ef641f],
.list-body[data-v-31ef641f] {
    max-width: 46rem;
}
}
