/* Opt-in variant: all recovery, session and input handling stays in opening.js. */
.lp-opening[data-opening-split="diagonal-jagged"] { animation-delay: var(--lp-opening-max, 3350ms); }
/* Cover antialiasing seams until the two blue panels actually start opening. */
.lp-opening[data-opening-split="diagonal-jagged"]::before { content: ''; position: absolute; inset: 0; background: var(--lp-opening-color); }
.lp-opening[data-opening-split="diagonal-jagged"].is-playing::before { animation: lp-opening-seam-clear 0s calc(var(--lp-opening-reveal-delay) * var(--lp-opening-scale)) forwards; }
.lp-opening[data-opening-split="diagonal-jagged"] .lp-opening__panel {
  inset: -1px;
  width: calc(100% + 2px);
  height: calc(100% + 2px);
}
/* Complementary large teeth along the top-left to bottom-right diagonal. */
.lp-opening[data-opening-split="diagonal-jagged"] .lp-opening__panel--top {
  clip-path: polygon(0 0,100% 0,100% 100%,90% 84%,66% 81%,74% 65%,48% 62%,56% 44%,29% 43%,37% 25%,12% 23%,19% 6%);
}
.lp-opening[data-opening-split="diagonal-jagged"] .lp-opening__panel--bottom {
  clip-path: polygon(0 0,19% 6%,12% 23%,37% 25%,29% 43%,56% 44%,48% 62%,74% 65%,66% 81%,90% 84%,100% 100%,0 100%);
}
.lp-opening[data-opening-direction="bottom-right-to-top-left"] .lp-opening__character {
  left: 0;
  top: 0;
  width: min(420px, 68vw, 55vh);
  transform: translate3d(calc(100vw + 32px), calc(100vh + 32px), 0);
}
.lp-opening[data-opening-direction="bottom-right-to-top-left"][data-opening-motion="zigzag"].is-playing .lp-opening__character {
  animation: lp-opening-zigzag calc(var(--lp-opening-flight) * var(--lp-opening-scale)) linear calc(100ms * var(--lp-opening-scale)) both;
}
.lp-opening[data-opening-split="diagonal-jagged"].is-playing .lp-opening__panel {
  animation: lp-opening-diagonal-top calc(var(--lp-opening-reveal) * var(--lp-opening-scale)) cubic-bezier(.55,0,.25,1) calc(var(--lp-opening-reveal-delay) * var(--lp-opening-scale)) both;
}
.lp-opening[data-opening-split="diagonal-jagged"].is-playing .lp-opening__panel--bottom { animation-name: lp-opening-diagonal-bottom; }
@keyframes lp-opening-zigzag {
  0% { transform: translate3d(calc(100vw + 32px), calc(100vh + 32px), 0); }
  16% { transform: translate3d(calc(84vw - 16%), calc(84vh - 16%), 0); }
  32% { transform: translate3d(calc(62vw - 32%), calc(69vh - 32%), 0); }
  48% { transform: translate3d(calc(56vw - 48%), calc(48vh - 48%), 0); }
  64% { transform: translate3d(calc(31vw - 64%), calc(40vh - 64%), 0); }
  80% { transform: translate3d(calc(23vw - 80%), calc(18vh - 80%), 0); }
  100% { transform: translate3d(calc(-100% - 32px), calc(-100% - 32px), 0); }
}
@keyframes lp-opening-diagonal-top { to { transform: translate3d(102%, -102%, 0); } }
@keyframes lp-opening-diagonal-bottom { to { transform: translate3d(-102%, 102%, 0); } }
@keyframes lp-opening-seam-clear { to { visibility: hidden; } }
