:root {
  --bg: #f4efe8;
  --arrow-bg: rgba(250, 245, 236, 0.92);
  --arrow-border: rgba(130, 42, 37, 0.34);
  --arrow-text: #7b1f1b;
}

* { box-sizing: border-box; }

html,
body {
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  overflow: hidden;
  background: var(--bg);
  overscroll-behavior: none;
  touch-action: auto;
}

#app,
.slide {
  position: fixed;
  inset: 0;
  width: 100vw;
  height: 100vh;
  height: 100svh;
  height: 100dvh;
  overflow: hidden;
  background: var(--bg);
}

.slide-picture,
#slideImage {
  position: absolute;
  inset: 0;
  width: 100vw;
  height: 100vh;
  height: 100svh;
  height: 100dvh;
}

.slide-picture { display: block; }

#slideImage {
  display: block;
  object-fit: contain;
  object-position: center center;
  user-select: none;
  -webkit-user-drag: none;
  background: var(--bg);
}

.primary-action {
  position: absolute;
  display: block;
  z-index: 9000 !important;
  pointer-events: auto !important;
  cursor: pointer !important;
  background: transparent !important;
  border: 0 !important;
  color: transparent !important;
  text-indent: -9999px;
  overflow: hidden;
  -webkit-tap-highlight-color: transparent;
}

/* Folie 01–09: unsichtbare Hitbox über der roten ENTER-Taste unten */
.primary-action.next-action {
  left: 0;
  bottom: 0;
  width: 56vw;
  height: 34vh;
}

/* Folie 10: unsichtbare Hitbox nur über der großen 3D-Taste */
.primary-action.external-action {
  left: 47vw;
  top: 40vh;
  width: 47vw;
  height: 28vh;
  z-index: 9999 !important;
}

/* Folie 11–13: keine große Klickfläche */
.primary-action.is-disabled {
  display: none !important;
}

.slide-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 52px;
  height: 52px;
  z-index: 12000 !important;
  display: none;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  border: 1px solid var(--arrow-border);
  background: var(--arrow-bg);
  color: var(--arrow-text);
  font: 400 38px/1 Arial, Helvetica, sans-serif;
  box-shadow: 0 12px 30px rgba(0,0,0,.14);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  cursor: pointer;
  pointer-events: auto;
  -webkit-tap-highlight-color: transparent;
}

.slide-arrow.is-visible { display: flex; }
.slide-arrow-left { left: max(22px, calc(env(safe-area-inset-left, 0px) + 18px)); }
.slide-arrow-right { right: max(22px, calc(env(safe-area-inset-right, 0px) + 18px)); }

@media (orientation: portrait), (max-width: 760px) {
  .primary-action.next-action {
    left: 0;
    bottom: calc(env(safe-area-inset-bottom, 0px) + 0px);
    width: 100vw;
    height: 30vh;
  }

  .primary-action.external-action {
    left: 8vw;
    top: 65vh;
    width: 84vw;
    height: 18vh;
  }

  .slide-arrow {
    top: 53%;
    width: 46px;
    height: 46px;
    font-size: 34px;
    background: rgba(250, 245, 236, 0.96);
  }

  .slide-arrow-left { left: max(12px, calc(env(safe-area-inset-left, 0px) + 10px)); }
  .slide-arrow-right { right: max(12px, calc(env(safe-area-inset-right, 0px) + 10px)); }
}


.primary-action,
.nav-arrow {
  touch-action: manipulation;
}
