:root {
  --bg: #000;
  --fg: #f4f1ea;
  --muted: rgba(244, 241, 234, .42);
  --faint: rgba(244, 241, 234, .12);
  --accent: #f2a900;
  --panel: rgba(8, 8, 8, .94);
  --ease: cubic-bezier(.2,.8,.2,1);
}

* { box-sizing: border-box; }

html, body {
  width: 100%;
  min-height: 100%;
  margin: 0;
  background: var(--bg);
  color: var(--fg);
  overflow: hidden;
}

body {
  font-family: "Arial Narrow", "Helvetica Neue", Arial, sans-serif;
  letter-spacing: .02em;
}

button { font: inherit; }

body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  opacity: .16;
  background:
    radial-gradient(circle at center, transparent 0 32%, rgba(0,0,0,.35) 72%, rgba(0,0,0,.9) 100%),
    linear-gradient(rgba(255,255,255,.018) 1px, transparent 1px);
  background-size: auto, 100% 4px;
  z-index: 20;
}

.stage {
  width: 100vw;
  height: 100dvh;
  display: grid;
  place-items: center;
  perspective: 1200px;
  transition: transform 900ms var(--ease), filter 900ms var(--ease);
}

.countdown-view {
  width: min(92vw, 1100px);
  text-align: center;
  user-select: none;
  transition: opacity 500ms ease, transform 900ms var(--ease);
}

.drawer-kicker,
.live-kicker {
  font-size: 10px;
  letter-spacing: .34em;
  text-transform: uppercase;
  color: var(--muted);
}

.countdown {
  display: inline-flex;
  align-items: center;
  cursor: default;
  transform-origin: center;
}

.clock-row {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(52px, 10.8vw, 154px);
  font-weight: 200;
  line-height: .9;
  letter-spacing: -.06em;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.days {
  display: inline-block;
}

.days-separator {
  width: clamp(30px, 3.8vw, 58px);
  margin: 0 clamp(8px, 1.3vw, 18px);
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: clamp(1px, .32vw, 4px);
  color: rgba(244,241,234,.38);
  font-size: clamp(10px, 1.08vw, 15px);
  font-weight: 600;
  line-height: .84;
  letter-spacing: .06em;
  transform: translateY(.01em);
}

.days-separator span {
  display: block;
}

.clock-row .colon {
  opacity: .22;
  padding: 0 .04em;
  transform: translateY(-.04em);
}

.movie-pun {
  margin-top: clamp(42px, 8vh, 82px);
  font-size: clamp(12px, 1.45vw, 18px);
  letter-spacing: .28em;
  text-transform: uppercase;
  color: rgba(244,241,234,.68);
  transition: opacity 400ms ease;
}

.egg-button,
.sound-button {
  position: fixed;
  z-index: 60;
  border: 0;
  color: rgba(244,241,234,.72);
  background: rgba(0,0,0,.32);
  backdrop-filter: blur(14px);
  cursor: pointer;
}

.egg-button {
  top: max(22px, env(safe-area-inset-top));
  right: max(22px, env(safe-area-inset-right));
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 11px 14px;
  border-radius: 999px;
  font-size: 10px;
  letter-spacing: .16em;
  border: 1px solid rgba(255,255,255,.10);
  transition: border-color 200ms ease, background 200ms ease, transform 200ms ease;
}

.egg-button:hover {
  border-color: rgba(255,255,255,.26);
  background: rgba(255,255,255,.055);
}

.egg-button:active { transform: scale(.96); }

.egg-glyph {
  width: 17px;
  height: 21px;
  flex: 0 0 17px;
  overflow: visible;
  filter: drop-shadow(0 0 7px rgba(242,169,0,.18));
}
.egg-glyph .egg-shell {
  fill: rgba(242,169,0,.12);
  stroke: rgba(242,169,0,.98);
  stroke-width: 1.8;
  stroke-linejoin: round;
}
.egg-glyph .egg-shine {
  fill: none;
  stroke: rgba(255,255,255,.45);
  stroke-width: 1.4;
  stroke-linecap: round;
}

.sound-button {
  left: max(22px, env(safe-area-inset-left));
  bottom: max(20px, env(safe-area-inset-bottom));
  width: 38px;
  height: 38px;
  border-radius: 50%;
  opacity: .38;
  border: 1px solid rgba(255,255,255,.08);
}

.egg-drawer {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 100;
  width: min(520px, 100vw);
  height: 100dvh;
  background: var(--panel);
  border-left: 1px solid rgba(255,255,255,.08);
  backdrop-filter: blur(24px);
  transform: translateX(102%);
  transition: transform 550ms var(--ease);
  box-shadow: -30px 0 90px rgba(0,0,0,.55);
  display: flex;
  flex-direction: column;
}

.egg-drawer.open { transform: translateX(0); }

.drawer-head {
  position: relative;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 18px;
  align-items: end;
  padding: 32px 30px 24px;
  border-bottom: 1px solid rgba(255,255,255,.07);
}

.drawer-head h2 {
  margin: 7px 0 0;
  font-weight: 300;
  font-size: 29px;
  letter-spacing: -.02em;
}

.drawer-progress {
  padding-right: 40px;
  font-variant-numeric: tabular-nums;
  color: var(--muted);
}

.drawer-progress strong {
  color: var(--fg);
  font-size: 26px;
  font-weight: 300;
}

.drawer-close {
  position: absolute;
  right: 20px;
  top: 20px;
  border: 0;
  background: none;
  color: rgba(255,255,255,.5);
  font-size: 25px;
  cursor: pointer;
}

.egg-list {
  overflow-y: auto;
  padding: 6px 0 28px;
}

.egg-row {
  display: grid;
  grid-template-columns: 54px 1fr 24px;
  gap: 12px;
  padding: 16px 28px;
  border-bottom: 1px solid rgba(255,255,255,.045);
  min-height: 67px;
}

.egg-id {
  font-size: 10px;
  color: rgba(255,255,255,.28);
  letter-spacing: .18em;
  padding-top: 3px;
}

.egg-title {
  font-size: 12px;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: rgba(255,255,255,.3);
}

.egg-row.found .egg-title { color: rgba(255,255,255,.92); }

.egg-trigger {
  margin-top: 7px;
  color: rgba(255,255,255,.38);
  font-size: 10px;
  line-height: 1.45;
  letter-spacing: .03em;
}

.egg-check {
  font-size: 13px;
  color: var(--accent);
  opacity: 0;
}

.egg-row.found .egg-check { opacity: 1; }

.toast {
  position: fixed;
  z-index: 1000;
  left: 50%;
  bottom: max(18px, calc(env(safe-area-inset-bottom) + 10px));
  width: min(420px, calc(100vw - 32px));
  transform: translate(-50%, 130%);
  opacity: 0;
  padding: 18px 20px;
  text-align: center;
  background: rgba(12,12,12,.9);
  border: 1px solid rgba(255,255,255,.12);
  backdrop-filter: blur(18px);
  box-shadow: 0 20px 80px rgba(0,0,0,.5);
  transition: transform 550ms var(--ease), opacity 350ms ease;
}

.toast.show {
  transform: translate(-50%, 0);
  opacity: 1;
}

.toast-number {
  font-size: 9px;
  color: var(--accent);
  letter-spacing: .28em;
}

.toast-name {
  margin-top: 8px;
  font-size: 18px;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.toast-trigger {
  margin-top: 7px;
  font-size: 10px;
  color: var(--muted);
}

.live-view {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  align-content: center;
  text-align: center;
  opacity: 0;
  transform: scale(.94);
  pointer-events: none;
}

.live-view h1 {
  margin: 22px 0 12px;
  display: flex;
  flex-direction: column;
  font-size: clamp(66px, 13vw, 180px);
  line-height: .78;
  letter-spacing: -.06em;
  font-weight: 800;
  text-transform: uppercase;
}

.live-view h1 span:last-child {
  color: transparent;
  -webkit-text-stroke: 1px rgba(255,255,255,.75);
}

.live-pulse {
  margin-top: 28px;
  font-size: 11px;
  letter-spacing: .3em;
  color: rgba(255,255,255,.65);
}

.live-pulse span {
  display: inline-block;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--accent);
  box-shadow: 0 0 28px var(--accent);
  margin-right: 10px;
  animation: pulse 1.2s infinite;
}

.live-view p {
  margin-top: 18px;
  color: rgba(255,255,255,.38);
  letter-spacing: .12em;
  font-size: 11px;
}

body.is-live .countdown-view {
  opacity: 0;
  transform: scale(1.12);
  pointer-events: none;
}

body.is-live .live-view {
  animation: liveReveal 1.35s var(--ease) forwards;
  pointer-events: auto;
}

body.is-live::after {
  content: "";
  position: fixed;
  inset: -25%;
  pointer-events: none;
  opacity: .22;
  background:
    conic-gradient(from 180deg at 50% 50%,
      transparent 0 10%,
      rgba(242,169,0,.5) 14%,
      transparent 18% 42%,
      rgba(110,70,255,.35) 48%,
      transparent 54% 72%,
      rgba(0,220,255,.3) 78%,
      transparent 84%);
  filter: blur(70px);
  animation: raveSpin 18s linear infinite;
  z-index: 1;
}

body.is-live .stage { z-index: 5; }
body.is-live .egg-button { z-index: 110; }
body.is-live .sound-button { z-index: 60; }

.flash {
  position: fixed;
  inset: 0;
  z-index: 120;
  pointer-events: none;
  opacity: 0;
  background: white;
}

.flash.hit { animation: flashHit 600ms ease-out; }

#confetti {
  position: fixed;
  inset: 0;
  z-index: 90;
  pointer-events: none;
  width: 100vw;
  height: 100vh;
}

body.egg-tilt .stage { transform: rotate(3deg) scale(.97); }
body.egg-upside .stage { transform: rotate(180deg); }
body.egg-hue { animation: hueParty 2.14s linear; }
body.egg-shake .stage { animation: hardShake .8s linear; }

@keyframes pulse {
  50% { opacity: .28; transform: scale(.8); }
}
@keyframes liveReveal {
  0% { opacity: 0; transform: scale(.92); filter: blur(18px); }
  56% { opacity: 1; transform: scale(1.025); filter: blur(0); }
  100% { opacity: 1; transform: scale(1); }
}
@keyframes raveSpin {
  to { transform: rotate(360deg) scale(1.08); }
}
@keyframes flashHit {
  0% { opacity: 0; }
  8% { opacity: .95; }
  100% { opacity: 0; }
}
@keyframes hardShake {
  0%,100% { transform: translate(0,0); }
  10% { transform: translate(-14px, 6px) rotate(-1deg); }
  20% { transform: translate(13px, -8px) rotate(1deg); }
  30% { transform: translate(-10px, 11px); }
  40% { transform: translate(12px, -7px); }
  50% { transform: translate(-8px, 4px); }
  60% { transform: translate(9px, 8px); }
  70% { transform: translate(-6px, -8px); }
  80% { transform: translate(4px, 7px); }
  90% { transform: translate(-3px, -2px); }
}
@keyframes hueParty {
  to { filter: hue-rotate(360deg) invert(.05); }
}

@media (max-width: 640px) {
  .clock-row {
    font-size: clamp(42px, 12vw, 74px);
    letter-spacing: -.07em;
  }
  .days-separator {
    width: 24px;
    margin: 0 6px;
    font-size: 8px;
  }
  .movie-pun { letter-spacing: .17em; }
  .drawer-head { padding: 26px 20px 20px; }
  .egg-row { padding: 15px 20px; grid-template-columns: 45px 1fr 20px; }
  .egg-button { right: 14px; top: 14px; }
  .sound-button { left: 14px; bottom: 14px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .001ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
  }
}

.egg-row.has-hint .egg-title {
  color: rgba(244,241,234,.46);
}

.egg-hints {
  margin-top: 9px;
  display: grid;
  gap: 6px;
}

.egg-hint {
  color: rgba(242,169,0,.72);
  font-size: 9px;
  line-height: 1.45;
  letter-spacing: .055em;
  text-transform: none;
}


/* ---------------- EASTER EGG EFFECT ENGINE ---------------- */
.egg-effect-message {
  position: fixed;
  inset: 0;
  z-index: 118;
  display: grid;
  place-items: center;
  pointer-events: none;
  opacity: 0;
  transform: scale(.82);
  font-size: clamp(54px, 12vw, 180px);
  font-weight: 800;
  letter-spacing: -.055em;
  text-align: center;
  text-transform: uppercase;
  color: rgba(244,241,234,.96);
  text-shadow: 0 0 40px rgba(255,255,255,.1);
  transition: opacity 260ms ease, transform 520ms var(--ease);
}

.egg-effect-message.small {
  font-size: clamp(18px, 4vw, 52px);
  letter-spacing: .18em;
  font-weight: 500;
}

.egg-effect-message.show {
  opacity: 1;
  transform: scale(1);
}

.egg-ring-effect {
  position: fixed;
  z-index: 117;
  left: 50%;
  top: 50%;
  width: 20px;
  height: 20px;
  border: 1px solid rgba(244,241,234,.8);
  border-radius: 50%;
  pointer-events: none;
  transform: translate(-50%, -50%) scale(.1);
  opacity: .9;
}

.egg-ring-effect.go {
  animation: eggRing 1.5s cubic-bezier(.12,.8,.2,1) forwards;
}

.egg-rain {
  position: fixed;
  inset: 0;
  z-index: 116;
  overflow: hidden;
  pointer-events: none;
}

.egg-rain span {
  position: absolute;
  top: -40px;
  font-size: clamp(18px, 2.5vw, 34px);
  color: var(--accent);
  opacity: .78;
  animation: eggFall 2s linear forwards;
}

.fake-context {
  position: fixed;
  left: 50%;
  top: 50%;
  z-index: 122;
  min-width: 260px;
  padding: 9px;
  background: rgba(12,12,12,.96);
  border: 1px solid rgba(255,255,255,.16);
  box-shadow: 0 24px 80px rgba(0,0,0,.7);
  transform: translate(-50%, -45%) scale(.92);
  opacity: 0;
  pointer-events: none;
  transition: opacity 200ms ease, transform 280ms var(--ease);
}

.fake-context.show {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1);
}

.fake-context strong,
.fake-context span {
  display: block;
  padding: 10px 12px;
  font-size: 11px;
  letter-spacing: .08em;
}

.fake-context strong {
  color: var(--accent);
  font-size: 9px;
  letter-spacing: .22em;
}

.fake-context span + span {
  border-top: 1px solid rgba(255,255,255,.06);
}

body.egg-wobble .stage { animation: eggWobble 1.5s var(--ease); }
body.egg-vertical-bounce .stage { animation: eggVerticalBounce 1.1s var(--ease); }
body.egg-squash .stage { animation: eggSquash 1.2s var(--ease); }
body.egg-blackout .stage,
body.egg-blackout .egg-button,
body.egg-blackout .sound-button { opacity: 0; transition: opacity 120ms linear; }
body.egg-pocket .stage { animation: eggPocket 1.4s var(--ease); }
body.egg-open .stage { animation: eggOpen 1.8s var(--ease); }
body.egg-pulse .stage { animation: eggPulse 1.4s ease-in-out; }
body.egg-focus .stage { animation: eggFocus 1.5s ease; }
body.egg-invert { filter: invert(1); }
body.egg-mirror .stage { transform: scaleX(-1); }
body.egg-alert .stage { animation: eggAlert 1.5s steps(2,end); }
body.egg-reverse .stage { animation: eggReverse 1.7s var(--ease); }
body.egg-stutter .stage { animation: eggStutter 1.3s steps(2,end); }
body.egg-no-cursor,
body.egg-no-cursor * { cursor: none !important; }
body.egg-blur-snap .stage { animation: eggBlurSnap 1.2s ease; }
body.egg-rgb .stage { animation: eggRgb 1.7s linear; }
body.egg-reverse-spin .stage { animation: eggReverseSpin 1.7s var(--ease); }
body.egg-full-spin .stage { animation: eggFullSpin 1.9s var(--ease); }
body.egg-zorro .stage { animation: eggZorro 1.5s ease; }
body.egg-horizontal-shake .stage { animation: eggHorizontalShake 1.1s linear; }
body.egg-zoom .stage { animation: eggZoom 1.3s var(--ease); }
body.egg-slow .stage { animation: eggSlow 2.2s ease; }
body.egg-spotlight::after {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 115;
  pointer-events: none;
  background: radial-gradient(circle 90px at 50% 50%, transparent 0 60%, rgba(0,0,0,.94) 100%);
  animation: eggSpotlight 2.2s ease forwards;
}
body.egg-edge-glow::after {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 115;
  pointer-events: none;
  box-shadow: inset 0 0 0 1px rgba(242,169,0,.8), inset 0 0 80px rgba(242,169,0,.25);
  animation: eggEdgeGlow 1.8s ease forwards;
}
body.egg-wide-title #moviePun,
body.egg-wide-title .live-content h1 {
  animation: eggWideTitle 2.4s var(--ease);
}
body.egg-flash-fast .stage { animation: eggFlashFast .7s steps(2,end); }
body.egg-calm-glow .stage { animation: eggCalmGlow 2.6s ease; }
body.egg-flicker .stage { animation: eggFlicker 1.5s steps(2,end); }
body.egg-drop .stage { animation: eggDrop 1.3s var(--ease); }
body.egg-there-back .stage { animation: eggThereBack 1.6s var(--ease); }
body.egg-scroll-wobble .stage { animation: eggScrollWobble 1.8s ease; }
body.egg-square .countdown,
body.egg-square .live-content h1 {
  outline: 1px solid rgba(242,169,0,.6);
  outline-offset: 22px;
}

@keyframes eggRing {
  0% { transform: translate(-50%, -50%) scale(.1); opacity: .9; }
  100% { transform: translate(-50%, -50%) scale(65); opacity: 0; }
}
@keyframes eggFall {
  0% { transform: translateY(-50px) rotate(0deg); opacity: 0; }
  10% { opacity: .85; }
  100% { transform: translateY(115vh) rotate(540deg); opacity: 0; }
}
@keyframes eggWobble {
  0%,100% { transform: rotate(0); }
  20% { transform: rotate(-3deg) scale(.98); }
  40% { transform: rotate(3deg) scale(1.01); }
  60% { transform: rotate(-2deg); }
  80% { transform: rotate(1deg); }
}
@keyframes eggVerticalBounce {
  0%,100% { transform: translateY(0); }
  25% { transform: translateY(-42px); }
  45% { transform: translateY(18px); }
  65% { transform: translateY(-16px); }
  82% { transform: translateY(6px); }
}
@keyframes eggSquash {
  0%,100% { transform: scale(1); }
  35% { transform: scaleX(.68) scaleY(1.18); }
  65% { transform: scaleX(1.12) scaleY(.82); }
}
@keyframes eggPocket {
  0%,100% { transform: scale(1); }
  45% { transform: scale(.22) rotate(8deg); }
  60% { transform: scale(.18) rotate(-7deg); }
}
@keyframes eggOpen {
  0%,100% { transform: scaleX(1); }
  35% { transform: scaleX(.02); }
  65% { transform: scaleX(1.08); }
}
@keyframes eggPulse {
  0%,100% { transform: scale(1); }
  20%,60% { transform: scale(1.06); }
  40%,80% { transform: scale(.98); }
}
@keyframes eggFocus {
  0%,100% { filter: blur(0); transform: scale(1); }
  35% { filter: blur(14px); transform: scale(1.06); }
  60% { filter: blur(1px); transform: scale(.99); }
}
@keyframes eggAlert {
  0%,100% { filter: none; }
  25%,75% { filter: contrast(1.8) brightness(1.5) hue-rotate(330deg); }
  50% { filter: contrast(.5) brightness(.3); }
}
@keyframes eggReverse {
  0%,100% { transform: scaleX(1); }
  50% { transform: scaleX(-1) rotate(2deg); }
}
@keyframes eggStutter {
  0%,100% { transform: translate(0); filter: none; }
  15% { transform: translate(-12px,3px); filter: contrast(2); }
  30% { transform: translate(9px,-4px); }
  45% { transform: translate(-4px,2px) scale(1.03); }
  65% { transform: translate(6px,0); filter: invert(.15); }
}
@keyframes eggBlurSnap {
  0%,100% { filter: blur(0); }
  35% { filter: blur(22px); transform: scale(.96); }
  42% { filter: blur(0); transform: scale(1.02); }
}
@keyframes eggRgb {
  0%,100% { filter: none; text-shadow: none; }
  20% { filter: hue-rotate(90deg) saturate(2); transform: translateX(-5px); }
  40% { filter: hue-rotate(180deg) saturate(2); transform: translateX(5px); }
  60% { filter: hue-rotate(270deg) saturate(2); transform: translateX(-3px); }
}
@keyframes eggReverseSpin {
  0%,100% { transform: rotate(0); }
  50% { transform: rotate(-180deg) scale(.82); }
}
@keyframes eggFullSpin {
  0% { transform: rotate(0) scale(1); }
  55% { transform: rotate(360deg) scale(.82); }
  100% { transform: rotate(720deg) scale(1); }
}
@keyframes eggZorro {
  0%,100% { transform: skew(0); clip-path: inset(0); }
  30% { transform: skewX(-12deg); clip-path: polygon(0 0,100% 0,78% 45%,100% 45%,100% 100%,0 100%,22% 55%,0 55%); }
  65% { transform: skewX(8deg); }
}
@keyframes eggHorizontalShake {
  0%,100% { transform: translateX(0); }
  10% { transform: translateX(-28px); }
  20% { transform: translateX(26px); }
  30% { transform: translateX(-22px); }
  40% { transform: translateX(19px); }
  50% { transform: translateX(-15px); }
  60% { transform: translateX(12px); }
  70% { transform: translateX(-8px); }
}
@keyframes eggZoom {
  0%,100% { transform: scale(1); }
  35% { transform: scale(1.35); }
  60% { transform: scale(.74); }
}
@keyframes eggSlow {
  0%,100% { filter: blur(0); transform: scale(1); }
  50% { filter: blur(2px) brightness(.62); transform: scale(.985); }
}
@keyframes eggSpotlight {
  0%,100% { opacity: 0; }
  18%,78% { opacity: 1; }
}
@keyframes eggEdgeGlow {
  0%,100% { opacity: 0; }
  20%,75% { opacity: 1; }
}
@keyframes eggWideTitle {
  0%,100% { letter-spacing: inherit; }
  50% { letter-spacing: .55em; }
}
@keyframes eggFlashFast {
  0%,100% { opacity: 1; }
  25%,75% { opacity: .08; }
  50% { opacity: .65; }
}
@keyframes eggCalmGlow {
  0%,100% { filter: none; }
  45% { filter: brightness(1.45) drop-shadow(0 0 24px rgba(242,169,0,.25)); }
}
@keyframes eggFlicker {
  0%,100% { opacity: 1; }
  10% { opacity: .12; }
  18% { opacity: .85; }
  26% { opacity: .22; }
  34% { opacity: 1; }
  46% { opacity: .08; }
  60% { opacity: .9; }
  74% { opacity: .3; }
}
@keyframes eggDrop {
  0%,100% { transform: translateY(0); }
  45% { transform: translateY(38vh) rotate(4deg); }
  55% { transform: translateY(38vh) rotate(-3deg); }
}
@keyframes eggThereBack {
  0%,100% { transform: translateY(0); }
  35% { transform: translateY(28vh) scale(.92); }
  70% { transform: translateY(-12vh) scale(1.03); }
}
@keyframes eggScrollWobble {
  0%,100% { transform: translateX(0) rotate(0); }
  25% { transform: translateX(-20px) rotate(-1deg); }
  50% { transform: translateX(18px) rotate(1deg); }
  75% { transform: translateX(-9px) rotate(-.5deg); }
}



/* ---------------- v0.6 interaction polish ---------------- */
.drawer-footer {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 14px 20px max(14px, env(safe-area-inset-bottom));
  border-top: 1px solid rgba(255,255,255,.07);
  background: rgba(5,5,5,.96);
}
.reset-effects {
  border: 1px solid rgba(255,255,255,.11);
  background: transparent;
  color: rgba(244,241,234,.58);
  padding: 9px 11px;
  font-size: 9px;
  letter-spacing: .16em;
  cursor: pointer;
}
.reset-effects:hover:not(:disabled) { color: var(--fg); border-color: rgba(255,255,255,.24); }
.reset-effects:disabled { opacity: .24; cursor: default; }
.active-effects-count { color: rgba(244,241,234,.28); font-size: 9px; letter-spacing: .14em; }
.drawer-close { right: 20px !important; z-index: 3; }

/* Keep the archive launcher clear of the drawer instead of laying over it. */
.egg-button { z-index: 110; transition: right 550ms var(--ease), opacity 220ms ease, border-color 200ms ease, background 200ms ease, transform 200ms ease; }
body.drawer-open .egg-button { right: calc(min(520px, 100vw) + 22px); }
@media (max-width: 640px) {
  body.drawer-open .egg-button {
    opacity: 1;
    pointer-events: auto;
    top: auto;
    right: 16px;
    left: auto;
    bottom: max(18px, env(safe-area-inset-bottom));
  }
}

/* Discovery words are now restrained lower-third callouts, never laid over the timer. */
.egg-effect-message {
  inset: auto auto clamp(72px, 11vh, 125px) 50%;
  width: min(82vw, 780px);
  min-height: 48px;
  transform: translate(-50%, 22px) scale(.98);
  padding: 12px 18px 11px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(20px, 4.2vw, 54px);
  font-weight: 650;
  letter-spacing: -.02em;
  line-height: 1;
  background: linear-gradient(90deg, transparent, rgba(8,8,8,.86) 14%, rgba(8,8,8,.86) 86%, transparent);
  text-shadow: none;
}
.egg-effect-message::before,
.egg-effect-message::after {
  content: "";
  position: absolute;
  left: 16%; right: 16%; height: 1px;
  background: linear-gradient(90deg, transparent, rgba(242,169,0,.65), transparent);
}
.egg-effect-message::before { top: 0; }
.egg-effect-message::after { bottom: 0; }
.egg-effect-message.small { font-size: clamp(11px, 1.6vw, 18px); letter-spacing: .18em; font-weight: 500; }
.egg-effect-message.show { transform: translate(-50%, 0) scale(1); }

/* Persistent effects. They intentionally reset on page reload. */
body.egg-tilt-persist .stage { transform: rotate(3deg) scale(.975); }
body.egg-upside-persist .stage { transform: rotate(180deg); }
body.egg-shifty-persist .stage { transform: skewX(-7deg) rotate(-1deg); }
body.egg-backwards-persist .stage { transform: scaleX(-1); }
body.egg-roomy :is(.clock-row,.live-title) { letter-spacing: .015em; }
body.egg-space-between-persist :is(.clock-row,.live-title) { letter-spacing: .11em; }
body.egg-typewriter :is(.clock-row,.live-title),
body.egg-typewriter .movie-pun,
body.egg-typewriter .live-content { font-family: "Courier New", Courier, monospace; }
body.egg-no-cursor-persist, body.egg-no-cursor-persist * { cursor: none !important; }
body.egg-double-vision-persist :is(.clock-row,.live-title),
body.egg-double-vision-persist .live-content h1 { text-shadow: 9px 0 rgba(255,255,255,.19), -9px 0 rgba(255,255,255,.12); }
body.egg-rgb-persist :is(.clock-row,.live-title),
body.egg-rgb-persist .live-content h1 { text-shadow: -7px 0 rgba(255,40,85,.52), 7px 0 rgba(0,210,255,.52); }
body.egg-wide-title-persist #moviePun { letter-spacing: .62em; transform: scaleX(1.08); }
body.egg-calm-glow-persist .stage { filter: drop-shadow(0 0 40px rgba(242,169,0,.18)); }
body.egg-spotlight-persist::after {
  content:""; position:fixed; inset:0; z-index:45; pointer-events:none;
  background: radial-gradient(circle 110px at 50% 50%, transparent 0 52%, rgba(0,0,0,.96) 100%);
}
body.egg-edge-glow-persist::after {
  content:""; position:fixed; inset:0; z-index:45; pointer-events:none;
  box-shadow: inset 0 0 0 1px rgba(242,169,0,.85), inset 0 0 95px rgba(242,169,0,.26);
}
body.egg-plex-theme {
  --accent: #e5a00d;
  --fg: #f7f7f7;
  --muted: rgba(247,247,247,.44);
}
body.egg-plex-theme :is(.clock-row,.live-title),
body.egg-plex-theme .live-content h1 span:first-child { color: #e5a00d; text-shadow: 0 0 42px rgba(229,160,13,.12); }
body.egg-plex-theme .movie-pun { color: #f7f7f7; }
body.egg-arcade :is(.clock-row,.live-title) { font-family: "Courier New", monospace; color:#80ff72; text-shadow:0 0 14px rgba(128,255,114,.35); }
body.egg-arcade::before { opacity:.33; background: repeating-linear-gradient(to bottom, rgba(80,255,100,.055) 0 1px, transparent 1px 4px); }
body.egg-corner-frame::after {
  content:""; position:fixed; inset:18px; z-index:44; pointer-events:none;
  background:
    linear-gradient(var(--accent),var(--accent)) left top/44px 1px no-repeat,
    linear-gradient(var(--accent),var(--accent)) left top/1px 44px no-repeat,
    linear-gradient(var(--accent),var(--accent)) right top/44px 1px no-repeat,
    linear-gradient(var(--accent),var(--accent)) right top/1px 44px no-repeat,
    linear-gradient(var(--accent),var(--accent)) left bottom/44px 1px no-repeat,
    linear-gradient(var(--accent),var(--accent)) left bottom/1px 44px no-repeat,
    linear-gradient(var(--accent),var(--accent)) right bottom/44px 1px no-repeat,
    linear-gradient(var(--accent),var(--accent)) right bottom/1px 44px no-repeat;
  opacity:.72;
}
body.egg-caps-grid::after {
  content:"CAPS  CAPS  CAPS  CAPS  CAPS  CAPS  CAPS  CAPS  CAPS  CAPS  CAPS  CAPS";
  position:fixed; inset:0; z-index:42; pointer-events:none; overflow:hidden;
  color:rgba(255,255,255,.055); font:700 clamp(22px,5vw,72px)/1.5 Arial,sans-serif; letter-spacing:.12em; word-spacing:1em;
}

/* Unique one-shot effect surfaces */
.arcade-burst, .launch-mark, .blackout-whisper, .fake-terminal, .keyboard-cat,
.middle-line, .precision-moment, .archive-214, .lucky-seven, .number-tiles {
  position:fixed; z-index:119; pointer-events:none;
}
.arcade-burst { inset:12% 8% auto; text-align:center; color:#80ff72; font:600 clamp(11px,2vw,20px) "Courier New"; letter-spacing:.2em; opacity:0; transition:opacity .2s; }
.arcade-burst.show { opacity:1; }
.launch-mark { left:50%; top:18%; transform:translate(-50%,-50%) rotate(-8deg) scale(1.7); opacity:0; font-size:clamp(26px,7vw,86px); font-weight:900; letter-spacing:-.05em; color:transparent; -webkit-text-stroke:1px rgba(255,255,255,.35); transition:.25s; }
.launch-mark.show { opacity:.8; transform:translate(-50%,-50%) rotate(-8deg) scale(1); }
body.egg-launch-strike .stage { animation: launchStrike .9s cubic-bezier(.2,.8,.2,1); }
body.egg-repel .egg-button { transform:translate(-65px,40px) rotate(9deg); }
body.egg-hold-stretch :is(.clock-row,.live-title) { animation: holdStretch 1.5s var(--ease); }
body.egg-caffeine .stage { animation:caffeine 2.6s linear; }
body.egg-return-sender .stage { animation:returnSender 1.8s var(--ease); }
body.egg-escape-ui .egg-button { animation:escapeEgg 1.5s var(--ease); }
body.egg-escape-ui .sound-button { animation:escapeSound 1.5s var(--ease); }
body.egg-blackout-v2 .stage { opacity:0; transition:opacity .15s; }
.blackout-whisper { inset:0; display:grid; place-items:center; color:rgba(255,255,255,.18); font-size:70px; }

.letterbox-overlay { position:fixed; inset:0; z-index:43; pointer-events:none; }
.letterbox-overlay i { position:absolute; left:0; right:0; height:11vh; background:#000; }
.letterbox-overlay i:first-child { top:0; } .letterbox-overlay i:last-child { bottom:0; }
.pocket-portal { position:fixed; left:50%; top:50%; z-index:116; width:12px; height:12px; border-radius:50%; border:1px solid rgba(255,255,255,.7); box-shadow:0 0 80px 35px rgba(108,68,255,.2); transform:translate(-50%,-50%); opacity:0; }
.pocket-portal.show { animation:portalPop 1.6s ease forwards; }
.plex-sweep { position:fixed; inset:0; z-index:116; pointer-events:none; overflow:hidden; opacity:0; }
.plex-sweep span { position:absolute; left:-30%; top:50%; transform:translateY(-50%) skewX(-20deg); color:#e5a00d; font-size:18vw; font-weight:900; opacity:.13; }
.plex-sweep.show { opacity:1; } .plex-sweep.show span { animation:plexSweep 1.2s var(--ease) forwards; }
.sesame-doors { position:fixed; inset:0; z-index:116; pointer-events:none; display:flex; }
.sesame-doors i { width:50%; height:100%; background:#050505; border-color:rgba(255,255,255,.08); transition:transform 1.3s var(--ease); }
.sesame-doors.show i:first-child { transform:translateX(-105%); } .sesame-doors.show i:last-child { transform:translateX(105%); }

.number-burst { position:fixed; inset:0; z-index:118; pointer-events:none; overflow:hidden; }
.number-burst span { position:absolute; left:50%; top:50%; font-size:clamp(68px,15vw,190px); font-weight:800; color:rgba(244,241,234,.92); opacity:0; transform:translate(-50%,-50%) scale(.3); }
.number-burst.show span { animation:numberBurst 1.65s cubic-bezier(.18,.8,.2,1) forwards; animation-delay:calc(var(--i) * .11s); }
.fake-tabs { position:fixed; left:0; right:0; top:0; height:42px; z-index:119; pointer-events:none; display:flex; overflow:hidden; background:#111; border-bottom:1px solid rgba(255,255,255,.12); transform:translateY(-110%); transition:.3s var(--ease); }
.fake-tabs.show { transform:translateY(0); }
.fake-tabs span { flex:0 0 150px; padding:14px 10px 0; border-right:1px solid rgba(255,255,255,.08); color:rgba(255,255,255,.52); font-size:8px; white-space:nowrap; }
.fake-terminal { left:50%; bottom:11vh; width:min(620px,86vw); padding:18px 20px; background:rgba(0,8,0,.94); border:1px solid rgba(115,255,105,.25); transform:translateX(-50%) translateY(20px); opacity:0; color:#7cff72; font:12px/1.8 "Courier New",monospace; box-shadow:0 20px 90px #000; transition:.3s; }
.fake-terminal.show { opacity:1; transform:translateX(-50%) translateY(0); }
.fake-terminal b { animation:termBlink .6s steps(1) infinite; }

.alphabet-soup, .amber-bubbles, .key-storm { position:fixed; inset:0; z-index:116; pointer-events:none; overflow:hidden; }
.alphabet-soup span { position:absolute; top:-8%; font-size:clamp(18px,3vw,36px); color:rgba(244,241,234,.65); animation:letterFall 2.4s linear forwards; animation-delay:calc(var(--i)*.025s); }
.amber-bubbles span { position:absolute; bottom:-20px; width:8px; height:8px; border-radius:50%; border:1px solid rgba(242,169,0,.6); animation:bubbleUp 2.3s ease-in forwards; animation-delay:calc(var(--i)*.02s); }
.key-storm span { position:absolute; color:rgba(244,241,234,.5); font:600 clamp(13px,2vw,24px) "Courier New"; animation:keyPop 1.8s ease forwards; animation-delay:calc(var(--i)*.018s); }
.keyboard-cat { left:50%; bottom:13vh; transform:translateX(-50%) translateY(20px); opacity:0; display:grid; grid-template-columns:auto auto; gap:5px 12px; align-items:center; color:rgba(244,241,234,.78); transition:.3s; }
.keyboard-cat.show { opacity:1; transform:translateX(-50%) translateY(0); }
.keyboard-cat span { font-size:36px; } .keyboard-cat b { font:600 20px monospace; } .keyboard-cat i { grid-column:1/-1; color:var(--muted); font:10px monospace; letter-spacing:.15em; }

.dead-pixels { position:fixed; inset:0; z-index:121; pointer-events:none; }
.dead-pixels i { position:absolute; display:block; box-shadow:0 0 1px currentColor; }
.middle-line { left:50%; top:0; bottom:0; width:1px; background:rgba(242,169,0,.3); opacity:0; }
.middle-line span { position:absolute; top:50%; left:0; transform:translate(-50%,-50%) rotate(-90deg); padding:5px 10px; background:#000; color:var(--accent); font-size:8px; letter-spacing:.2em; }
.middle-line.show { opacity:1; }
.centre-crosshair { position:fixed; left:50%; top:50%; z-index:46; width:72px; height:72px; transform:translate(-50%,-50%); border:1px solid rgba(242,169,0,.55); border-radius:50%; pointer-events:none; }
.centre-crosshair::before,.centre-crosshair::after { content:""; position:absolute; background:rgba(242,169,0,.5); }
.centre-crosshair::before { left:50%; top:-35px; width:1px; height:140px; } .centre-crosshair::after { top:50%; left:-35px; width:140px; height:1px; }
.trust-ring { position:fixed; left:50%; top:50%; z-index:45; width:min(62vw,620px); aspect-ratio:1; transform:translate(-50%,-50%); border:1px solid rgba(255,255,255,.18); border-radius:50%; pointer-events:none; box-shadow:0 0 70px rgba(255,255,255,.035), inset 0 0 70px rgba(255,255,255,.025); }

.orbit-effect { position:fixed; left:50%; top:50%; z-index:119; width:min(72vw,700px); aspect-ratio:1; transform:translate(-50%,-50%); border:1px solid rgba(255,255,255,.08); border-radius:50%; pointer-events:none; opacity:0; }
.orbit-effect.show { opacity:1; animation:orbitFade 2.3s ease forwards; }
.orbit-effect span { position:absolute; left:50%; top:-6px; width:12px; height:12px; background:var(--accent); border-radius:50%; box-shadow:0 0 24px var(--accent); transform-origin:0 calc(min(72vw,700px)/2 + 6px); animation:orbitDot 1.8s linear 1; }
.zorro-slash { position:fixed; inset:0; z-index:119; pointer-events:none; }
.zorro-slash i { position:absolute; height:2px; background:linear-gradient(90deg,transparent,var(--accent),#fff,transparent); transform-origin:left center; opacity:0; }
.zorro-slash i:nth-child(1){left:18%;top:25%;width:64%;}.zorro-slash i:nth-child(2){left:78%;top:25%;width:66%;transform:rotate(145deg);}.zorro-slash i:nth-child(3){left:18%;top:75%;width:64%;}.zorro-slash.show i{animation:slashDraw 1.3s ease forwards;}
.snake-wave { position:fixed; inset:0; z-index:115; pointer-events:none; }
.snake-wave i { position:absolute; left:calc(var(--i)*6% - 2%); top:50%; width:18px; height:18px; border:1px solid rgba(255,255,255,.35); border-radius:50%; animation:snakeDot 1.5s ease-in-out forwards; animation-delay:calc(var(--i)*.035s); }

.rocket-flight { position:fixed; inset:0; z-index:119; pointer-events:none; overflow:hidden; opacity:0; }
.rocket-flight.show { opacity:1; }
.rocket { position:absolute; left:-120px; top:58%; width:76px; height:22px; border-radius:3px 14px 14px 3px; background:#eee; transform:rotate(-12deg); animation:rocketFly 2s cubic-bezier(.1,.7,.25,1) forwards; }
.rocket::before { content:""; position:absolute; right:-14px; top:0; border-left:18px solid #eee; border-top:11px solid transparent; border-bottom:11px solid transparent; }
.rocket i { position:absolute; left:14px; top:5px; width:12px; height:12px; border-radius:50%; background:#111; border:2px solid var(--accent); }
.rocket b { position:absolute; left:-18px; top:2px; width:18px; height:18px; background:linear-gradient(90deg,#fff,var(--accent),transparent); clip-path:polygon(100% 0,100% 100%,0 50%); }
.rocket em { position:absolute; left:26px; bottom:-11px; width:20px; height:12px; background:#ccc; clip-path:polygon(0 0,100% 0,40% 100%); }
.rocket-trail { position:absolute; left:0; top:61%; height:2px; width:100%; background:linear-gradient(90deg,transparent,rgba(242,169,0,.45),transparent); transform:translateX(-100%); animation:trailFly 2s ease forwards; }
body.egg-slow-trail .stage { animation:slowTrail 3s ease; }

.precision-moment { left:50%; bottom:12vh; transform:translateX(-50%) scale(.9); opacity:0; display:flex; align-items:center; gap:14px; color:rgba(244,241,234,.88); transition:.25s; }
.precision-moment.show { opacity:1; transform:translateX(-50%) scale(1); }
.precision-moment strong { font-size:clamp(22px,5vw,60px); font-weight:300; letter-spacing:.08em; }
.precision-moment i { width:8px; height:8px; border-radius:50%; background:var(--accent); box-shadow:0 0 22px var(--accent); }
.constellation-214 { position:fixed; inset:0; z-index:116; pointer-events:none; }
.constellation-214 span { position:absolute; font-size:clamp(60px,13vw,160px); color:transparent; -webkit-text-stroke:1px rgba(255,255,255,.22); animation:constellation 2s var(--ease) forwards; }
.constellation-214 span:nth-child(1){left:12%;top:18%;}.constellation-214 span:nth-child(2){left:48%;top:62%;}.constellation-214 span:nth-child(3){right:10%;top:25%;}
.portal-flicker { position:fixed; inset:0; z-index:116; pointer-events:none; display:grid; place-items:center; }
.portal-flicker i { width:30px; aspect-ratio:1; border:1px solid var(--accent); border-radius:50%; animation:portalFlicker 1.6s steps(5) forwards; }
body.egg-long-way .stage { animation:longDrop 2.2s var(--ease); }
.depth-lines { position:fixed; inset:0; z-index:114; pointer-events:none; perspective:500px; overflow:hidden; }
.depth-lines i { position:absolute; left:50%; top:50%; width:1px; height:65vh; background:rgba(255,255,255,.08); transform-origin:top; transform:translate(-50%,-50%) rotate(calc(var(--i)*25.7deg)); }
.archive-214 { left:50%; bottom:11vh; transform:translateX(-50%) translateY(15px); opacity:0; text-align:center; transition:.3s; }
.archive-214.show { opacity:1; transform:translateX(-50%) translateY(0); }
.archive-214 span { display:block; font-size:clamp(46px,9vw,110px); font-weight:200; } .archive-214 small { color:var(--muted); letter-spacing:.22em; }
.bookends-effect { position:fixed; inset:0; z-index:43; pointer-events:none; }
.bookends-effect i { position:absolute; top:12%; bottom:12%; width:3px; background:var(--accent); box-shadow:0 0 30px rgba(242,169,0,.25); }
.bookends-effect i:first-child{left:7%;}.bookends-effect i:last-child{right:7%;}
.lucky-seven { left:50%; bottom:12vh; transform:translateX(-50%); display:flex; gap:7px; opacity:0; }
.lucky-seven.show { opacity:1; }
.lucky-seven span { width:60px; height:70px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.12); background:#080808; font-size:42px; animation:slotFlip .8s steps(5); }
.number-tiles { left:50%; bottom:12vh; transform:translateX(-50%) translateY(12px); display:flex; gap:8px; opacity:0; transition:.3s; }
.number-tiles.show { opacity:1; transform:translateX(-50%) translateY(0); }
.number-tiles span { width:clamp(42px,7vw,72px); aspect-ratio:1; display:grid; place-items:center; border:1px solid rgba(255,255,255,.14); font-size:clamp(24px,4vw,44px); font-weight:250; }
.thirteen-grid { position:fixed; left:50%; top:50%; z-index:116; width:min(60vmin,520px); aspect-ratio:1; transform:translate(-50%,-50%); display:grid; grid-template-columns:repeat(13,1fr); gap:2px; pointer-events:none; }
.thirteen-grid i { border:1px solid rgba(242,169,0,.12); animation:grid13 1.7s ease forwards; }
.square-frame-effect { position:fixed; left:50%; top:50%; z-index:43; width:min(76vmin,720px); aspect-ratio:1; transform:translate(-50%,-50%); border:1px solid rgba(255,255,255,.25); box-shadow:0 0 80px rgba(255,255,255,.035); pointer-events:none; }

@keyframes launchStrike{0%,100%{transform:translateY(0)}38%{transform:translateY(14px) scaleY(.94)}48%{transform:translateY(-6px) scaleY(1.03)}}
@keyframes holdStretch{0%,100%{transform:scaleX(1)}45%{transform:scaleX(1.28)}}
@keyframes caffeine{0%,100%{transform:translate(0)}10%{transform:translate(-3px,1px)}20%{transform:translate(4px,-2px)}30%{transform:translate(-5px,2px)}40%{transform:translate(3px,1px)}50%{transform:translate(-2px,-3px)}60%{transform:translate(5px,2px)}70%{transform:translate(-3px,-1px)}80%{transform:translate(2px,3px)}90%{transform:translate(-1px,-2px)}}
@keyframes escapeEgg{50%{transform:translate(45vw,-30vh) rotate(30deg)}100%{transform:none}} @keyframes escapeSound{50%{transform:translate(-35vw,25vh) rotate(-35deg)}100%{transform:none}}
@keyframes returnSender{0%,100%{transform:none;opacity:1}45%{transform:translateZ(-450px) scale(.5);opacity:.2}}
@keyframes portalPop{0%{opacity:0;transform:translate(-50%,-50%) scale(.2)}45%{opacity:1;transform:translate(-50%,-50%) scale(16)}100%{opacity:0;transform:translate(-50%,-50%) scale(25)}}
@keyframes plexSweep{to{left:115%}}
@keyframes numberBurst{0%{opacity:0;transform:translate(-50%,-50%) scale(.3)}32%{opacity:.95}100%{opacity:0;transform:translate(calc(-50% + (var(--i) - 1)*28vw),calc(-50% + (var(--i) - 1)*-12vh)) scale(1.35)}}
@keyframes termBlink{50%{opacity:0}} @keyframes letterFall{to{transform:translateY(116vh) rotate(280deg);opacity:0}} @keyframes bubbleUp{to{transform:translateY(-112vh) scale(2);opacity:0}}
@keyframes keyPop{0%{transform:scale(.3) rotate(-20deg);opacity:0}35%{opacity:.8}100%{transform:scale(1.8) rotate(20deg);opacity:0}}
@keyframes orbitFade{0%,100%{opacity:0}15%,75%{opacity:1}} @keyframes orbitDot{to{transform:rotate(360deg)}}
@keyframes slashDraw{0%{opacity:0;clip-path:inset(0 100% 0 0)}20%{opacity:1}100%{opacity:0;clip-path:inset(0 0 0 0)}}
@keyframes snakeDot{0%,100%{transform:translateY(0);opacity:0}30%{opacity:1}50%{transform:translateY(var(--y));opacity:.8}}
@keyframes rocketFly{0%{left:-120px;top:68%}45%{top:36%}100%{left:calc(100% + 140px);top:18%}} @keyframes trailFly{to{transform:translateX(100%)}}
@keyframes slowTrail{0%,100%{filter:none}35%{filter:blur(3px);transform:scale(1.015)}65%{filter:blur(1px);transform:scale(.99)}}
@keyframes constellation{0%{opacity:0;transform:scale(.2) rotate(-12deg)}35%{opacity:.7}100%{opacity:0;transform:scale(1.4) rotate(8deg)}}
@keyframes portalFlicker{0%{transform:scale(.1);opacity:0}20%{opacity:1}80%{transform:scale(25);opacity:.5}100%{transform:scale(45);opacity:0}}
@keyframes longDrop{0%,100%{transform:none}45%{transform:translateY(48vh) scale(.78);filter:blur(2px)}}
@keyframes slotFlip{0%{transform:rotateX(0)}100%{transform:rotateX(1080deg)}}
@keyframes grid13{0%{opacity:0;transform:scale(.4)}40%{opacity:.6}100%{opacity:0;transform:scale(1)}}

@media (max-width:640px) {
  .egg-effect-message { bottom:88px; width:88vw; }
  .letterbox-overlay i { height:8vh; }
  .fake-terminal { bottom:90px; }
  .rocket { transform:scale(.8) rotate(-12deg); }
}


/* v0.6 persistent transforms compose instead of replacing each other. */
.stage {
  --egg-rotate: 0deg;
  --egg-tilt: 0deg;
  --egg-skew-x: 0deg;
  --egg-flip-x: 1;
  transform: rotate(calc(var(--egg-rotate) + var(--egg-tilt))) skewX(var(--egg-skew-x)) scaleX(var(--egg-flip-x));
}
body.egg-tilt-persist .stage { --egg-tilt: 3deg; }
body.egg-upside-persist .stage { --egg-rotate: 180deg; }
body.egg-shifty-persist .stage { --egg-skew-x: -7deg; }
body.egg-backwards-persist .stage { --egg-flip-x: -1; }

.corner-frame-overlay,
.caps-grid-overlay,
.spotlight-overlay,
.edge-glow-overlay {
  position: fixed;
  inset: 0;
  z-index: 44;
  pointer-events: none;
}
.corner-frame-overlay {
  inset: 18px;
  background:
    linear-gradient(var(--accent),var(--accent)) left top/44px 1px no-repeat,
    linear-gradient(var(--accent),var(--accent)) left top/1px 44px no-repeat,
    linear-gradient(var(--accent),var(--accent)) right top/44px 1px no-repeat,
    linear-gradient(var(--accent),var(--accent)) right top/1px 44px no-repeat,
    linear-gradient(var(--accent),var(--accent)) left bottom/44px 1px no-repeat,
    linear-gradient(var(--accent),var(--accent)) left bottom/1px 44px no-repeat,
    linear-gradient(var(--accent),var(--accent)) right bottom/44px 1px no-repeat,
    linear-gradient(var(--accent),var(--accent)) right bottom/1px 44px no-repeat;
  opacity: .72;
}
.caps-grid-overlay {
  overflow: hidden;
  color: rgba(255,255,255,.055);
  font: 700 clamp(22px,5vw,72px)/1.5 Arial,sans-serif;
  letter-spacing: .12em;
  word-spacing: 1em;
}
.spotlight-overlay {
  z-index: 45;
  background: radial-gradient(circle 110px at 50% 50%, transparent 0 52%, rgba(0,0,0,.96) 100%);
}
.edge-glow-overlay {
  z-index: 45;
  box-shadow: inset 0 0 0 1px rgba(242,169,0,.85), inset 0 0 95px rgba(242,169,0,.26);
}


.egg-row.effect-active {
  box-shadow: inset 2px 0 0 rgba(242,169,0,.72);
  background: linear-gradient(90deg, rgba(242,169,0,.045), transparent 42%);
}
.egg-row.effect-active .egg-check { text-shadow: 0 0 16px rgba(242,169,0,.45); }


/* ---------------- v0.7 richer persistent / cross-device effects ---------------- */
.stage { touch-action: none; }

.egg-rain-persistent span {
  top: -32px;
  width: var(--egg-size, 18px);
  height: calc(var(--egg-size, 18px) * 1.28);
  border-radius: 52% 52% 48% 48% / 62% 62% 38% 38%;
  background: linear-gradient(145deg, rgba(242,169,0,.94), rgba(242,169,0,.24));
  border: 1px solid rgba(255,255,255,.18);
  box-shadow: 0 0 14px rgba(242,169,0,.12);
  animation: eggFallPersistent 5s linear infinite;
}

.persistent-particles {
  position: fixed;
  inset: 0;
  z-index: 43;
  pointer-events: none;
  overflow: hidden;
}

.persistent-particles span {
  position: absolute;
  left: var(--x);
  top: var(--y);
  width: var(--size);
  height: var(--size);
  animation-delay: var(--delay);
  animation-duration: var(--dur);
  animation-iteration-count: infinite;
  animation-timing-function: linear;
}

.amber-bubble-field span {
  top: 110%;
  border: 1px solid rgba(242,169,0,.35);
  border-radius: 50%;
  background: rgba(242,169,0,.05);
  box-shadow: inset 0 0 10px rgba(242,169,0,.08), 0 0 12px rgba(242,169,0,.05);
  animation-name: bubbleRisePersistent;
}

.big-screen-stars span,
.night-stars span,
.star-drift span {
  border-radius: 50%;
  background: rgba(255,255,255,.72);
  box-shadow: 0 0 7px rgba(255,255,255,.28);
}
.big-screen-stars span { animation-name: starTwinkle; }
.night-stars {
  background: radial-gradient(circle at 72% 18%, rgba(164,188,255,.09), transparent 25%);
}
.night-stars span { animation-name: starTwinkle; opacity:.55; }
.star-drift span { animation-name: starDrift; opacity:.46; }

.ghost-tabs span {
  width: calc(80px + var(--size) * 10);
  height: calc(28px + var(--size) * 3);
  border: 1px solid rgba(255,255,255,.07);
  border-radius: 6px;
  background: rgba(255,255,255,.018);
  animation-name: ghostTabFloat;
}

.paper-rain span,
.printer-stream span {
  width: calc(8px + var(--size) * 1.8);
  height: calc(12px + var(--size) * 2.5);
  background: rgba(244,241,234,.22);
  border: 1px solid rgba(244,241,234,.18);
  animation-name: paperFall;
}
.printer-stream span { background: rgba(244,241,234,.32); animation-name: printerFall; }

.dust-motes span {
  border-radius: 50%;
  background: rgba(244,241,234,.22);
  filter: blur(.2px);
  animation-name: dustFloat;
}

body.egg-cinemascope-persist::after {
  content:"";
  position:fixed;
  inset:0;
  z-index:41;
  pointer-events:none;
  box-shadow: inset 0 15vh 0 #000, inset 0 -15vh 0 #000;
}
body.egg-cinemascope-persist .stage { filter: contrast(1.06); }

body.egg-portrait-persist :is(.countdown-view,.live-content),
body.egg-portrait-persist .live-content {
  clip-path: inset(0 28vw);
}
body.egg-portrait-persist::after {
  content:"";
  position:fixed;
  left:50%;
  top:4vh;
  width:min(52vw,460px);
  height:92vh;
  transform:translateX(-50%);
  border:1px solid rgba(255,255,255,.10);
  pointer-events:none;
  z-index:42;
}

.stage {
  --egg-scale: 1;
  transform: rotate(calc(var(--egg-rotate) + var(--egg-tilt))) skewX(var(--egg-skew-x)) scaleX(var(--egg-flip-x)) scale(var(--egg-scale));
}
body.egg-postage-persist .stage { --egg-scale:.23; }
body.egg-postage-persist::after {
  content:"";
  position:fixed;
  left:50%;
  top:50%;
  width:31vw;
  height:25vh;
  transform:translate(-50%,-50%);
  border:8px dashed rgba(244,241,234,.18);
  pointer-events:none;
  z-index:40;
}
body.egg-pinch-in-persist .stage { --egg-scale:.72; }
body.egg-pinch-out-persist .stage { --egg-scale:1.22; }

body.egg-focus-persist .stage { animation: focusBreathe 4.8s ease-in-out infinite; }
body.egg-selection-persist::after {
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:42;
  background: linear-gradient(180deg, transparent 0 45%, rgba(52,120,255,.11) 45% 52%, transparent 52% 100%);
  background-size:100% 180px;
  animation: selectionScan 4s linear infinite;
}
body.egg-reload-persist::after {
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:42;
  background: repeating-linear-gradient(0deg, transparent 0 6px, rgba(255,255,255,.025) 7px);
  animation: reloadScan .9s linear infinite;
}
body.egg-dejavu-persist :is(.countdown-view,.live-content),
body.egg-dejavu-persist .live-content { text-shadow: 10px 0 0 rgba(77,116,255,.13), -10px 0 0 rgba(255,80,80,.10); }

.sunrise-overlay {
  position:fixed; inset:0; z-index:41; pointer-events:none; overflow:hidden;
  background:linear-gradient(to top, rgba(255,137,66,.17), transparent 48%);
}
.sunrise-overlay i {
  position:absolute; width:36vw; height:36vw; max-width:430px; max-height:430px;
  border-radius:50%; left:50%; bottom:-18vw; transform:translateX(-50%);
  background:radial-gradient(circle, rgba(255,197,95,.28), rgba(255,128,64,.10) 45%, transparent 70%);
  animation:sunrisePulse 5s ease-in-out infinite;
}
.sunrise-overlay span { position:absolute; inset:0; background:linear-gradient(180deg, rgba(126,149,255,.035), transparent 45%); }

body.egg-prime-persist {
  --accent:#ff4fd8;
}
body.egg-prime-persist :is(.clock-row,.live-title) { text-shadow: 0 0 28px rgba(255,79,216,.30), 0 0 60px rgba(67,223,255,.12); }
body.egg-prime-persist::after {
  content:"";position:fixed;inset:0;pointer-events:none;z-index:41;
  background:linear-gradient(115deg, transparent 25%, rgba(67,223,255,.06) 49%, transparent 51%, rgba(255,79,216,.055) 72%, transparent);
  animation:primeSweep 4s linear infinite;
}

.lunch-orbit { position:fixed; inset:0; z-index:41; pointer-events:none; display:grid; place-items:center; }
.lunch-orbit i,.lunch-orbit span,.lunch-orbit b { position:absolute; border-radius:50%; }
.lunch-orbit i { width:180px;height:180px;border:1px solid rgba(242,169,0,.18);animation:orbitSpin 8s linear infinite; }
.lunch-orbit span { width:9px;height:9px;background:var(--accent);transform:translateX(90px);animation:orbitSpin 8s linear infinite;transform-origin:-90px 0; }
.lunch-orbit b { width:46px;height:46px;border:1px solid rgba(255,255,255,.12);box-shadow:0 0 30px rgba(242,169,0,.08); }

body.egg-sunday-persist::after {
  content:"";position:fixed;inset:0;pointer-events:none;z-index:42;
  background:radial-gradient(circle, transparent 30%, rgba(30,25,55,.18) 75%, rgba(0,0,0,.45));
  animation:sundayBreath 6s ease-in-out infinite;
}

.friday-spotlights { position:fixed; inset:0; pointer-events:none; z-index:41; overflow:hidden; }
.friday-spotlights i { position:absolute; top:-20%; width:22vw; height:140%; filter:blur(18px); opacity:.10; transform-origin:50% 0; }
.friday-spotlights i:nth-child(1){left:10%;background:linear-gradient(rgba(255,80,210,.8),transparent);animation:spotSweep 5s ease-in-out infinite;}
.friday-spotlights i:nth-child(2){left:40%;background:linear-gradient(rgba(80,220,255,.8),transparent);animation:spotSweep 6.5s ease-in-out -2s infinite;}
.friday-spotlights i:nth-child(3){left:70%;background:linear-gradient(rgba(242,169,0,.8),transparent);animation:spotSweep 5.7s ease-in-out -3s infinite;}

.floating-digits { position:fixed;inset:0;z-index:41;pointer-events:none;overflow:hidden; }
.floating-digits span { position:absolute;left:var(--x);top:var(--y);font-size:clamp(10px,1.2vw,18px);color:rgba(242,169,0,.22);letter-spacing:.18em;animation:digitDrift var(--dur) ease-in-out var(--delay) infinite; }

body.egg-2014-persist::after {
  content:"";position:fixed;inset:0;z-index:41;pointer-events:none;
  background-image:linear-gradient(rgba(242,169,0,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(242,169,0,.04) 1px,transparent 1px);
  background-size:20px 14px;animation:gridDrift 8s linear infinite;
}

.second-ring {position:fixed;left:50%;top:50%;width:min(70vw,560px);aspect-ratio:1;border:1px solid rgba(242,169,0,.14);border-radius:50%;transform:translate(-50%,-50%);z-index:41;pointer-events:none;}
.second-ring i{position:absolute;left:50%;top:50%;width:1px;height:48%;background:linear-gradient(var(--accent),transparent);transform-origin:50% 0;animation:secondHand 60s linear infinite;}
.second-ring span,.second-ring b{position:absolute;font-size:10px;letter-spacing:.18em;color:rgba(244,241,234,.28);font-weight:400;}
.second-ring span{left:50%;top:2%;transform:translateX(-50%)} .second-ring b{right:8%;bottom:18%;}

.watching-eyes {position:fixed;inset:0;z-index:41;pointer-events:none;}
.watching-eyes i {position:absolute;width:34px;height:14px;border:1px solid rgba(255,255,255,.10);border-radius:50%;left:calc(8% + var(--i)*13%);top:calc(15% + (var(--i)%3)*28%);animation:eyeBlink 5s steps(1) calc(var(--i)*-.63s) infinite;}
.watching-eyes b {position:absolute;width:4px;height:4px;border-radius:50%;background:rgba(242,169,0,.55);left:50%;top:50%;transform:translate(-50%,-50%);}

.idle-screensaver {position:fixed;inset:0;z-index:45;pointer-events:none;overflow:hidden;}
.idle-screensaver span {position:absolute;left:10%;top:16%;font:800 clamp(24px,5vw,72px)/1 Arial,sans-serif;color:rgba(242,169,0,.32);letter-spacing:-.08em;animation:dvdBounce 11s linear infinite alternate;}

.resolution-cards {position:fixed;inset:0;z-index:116;display:grid;place-items:center;pointer-events:none;opacity:0;}
.resolution-cards.show{opacity:1}
.resolution-cards i{position:absolute;border:1px solid rgba(244,241,234,.45);background:rgba(255,255,255,.025);box-shadow:0 0 60px rgba(255,255,255,.05)}
.resolution-cards .portrait-card{width:120px;height:210px;transform:translateX(-180px) rotate(-8deg)}
.resolution-cards .square-card{width:170px;height:170px}
.resolution-cards .wide-card{width:300px;height:110px;transform:translateX(210px) rotate(6deg)}
body.egg-resolution-revolution .stage{animation:resolutionFlip 2.5s var(--ease)}

.direction-sweep {position:fixed;inset:0;z-index:118;pointer-events:none;overflow:hidden;opacity:0}
.direction-sweep.show{opacity:1}
.direction-sweep i{position:absolute;background:linear-gradient(90deg,transparent,rgba(242,169,0,.22),transparent)}
.direction-sweep b{position:absolute;font-size:10px;letter-spacing:.28em;color:rgba(244,241,234,.32);font-weight:500}
.direction-sweep.left i,.direction-sweep.right i{top:0;bottom:0;width:55%;animation:sweepHorizontal 1.35s var(--ease) forwards}
.direction-sweep.left i{right:-55%}.direction-sweep.right i{left:-55%}
.direction-sweep.left b{right:9%;top:50%}.direction-sweep.right b{left:9%;top:50%}
.direction-sweep.up i,.direction-sweep.down i{left:0;right:0;height:55%;background:linear-gradient(0deg,transparent,rgba(242,169,0,.22),transparent);animation:sweepVertical 1.35s var(--ease) forwards}
.direction-sweep.up i{bottom:-55%}.direction-sweep.down i{top:-55%}
.direction-sweep.up b{left:50%;top:12%}.direction-sweep.down b{left:50%;bottom:12%}

.box-trace {position:fixed;inset:16px;z-index:44;pointer-events:none;}
.box-trace i{position:absolute;background:var(--accent);opacity:.55}
.box-trace i:nth-child(1),.box-trace i:nth-child(3){height:1px;width:0;animation:traceH 3.4s linear infinite}
.box-trace i:nth-child(2),.box-trace i:nth-child(4){width:1px;height:0;animation:traceV 3.4s linear infinite}
.box-trace i:nth-child(1){top:0;left:0}.box-trace i:nth-child(2){top:0;right:0;animation-delay:.85s}
.box-trace i:nth-child(3){bottom:0;right:0;animation-delay:1.7s}.box-trace i:nth-child(4){bottom:0;left:0;animation-delay:2.55s}

.tap-ripple-storm {position:fixed;inset:0;z-index:117;pointer-events:none}
.tap-ripple-storm span{position:absolute;width:12px;height:12px;border:1px solid rgba(242,169,0,.7);border-radius:50%;transform:translate(-50%,-50%) scale(.2);opacity:0;animation:tapRipple 1.5s var(--ease) var(--delay) forwards}

body.egg-longpress-persist .stage{filter:contrast(.94) brightness(.82)}
body.egg-longpress-persist :is(.countdown-view,.live-content){transform:scaleY(.93)}
body.egg-split-persist .stage::after{content:"";position:absolute;left:50%;top:8%;bottom:8%;width:1px;background:rgba(242,169,0,.35);box-shadow:0 0 30px rgba(242,169,0,.18)}
body.egg-split-persist :is(.countdown-view,.live-content){filter:drop-shadow(-16px 0 0 rgba(255,255,255,.055))}
body.egg-prism-persist :is(.clock-row,.live-title){text-shadow:-8px 0 rgba(255,50,70,.20),8px 0 rgba(50,140,255,.20),0 8px rgba(80,255,170,.13)}

.horizon-overlay{position:fixed;inset:0;z-index:41;pointer-events:none;overflow:hidden}
.horizon-overlay i{position:absolute;left:0;right:0;top:50%;height:1px;background:rgba(242,169,0,.32);box-shadow:0 0 28px rgba(242,169,0,.14)}
.horizon-overlay span{position:absolute;left:50%;top:50%;width:140vw;height:140vw;transform:translate(-50%,0) rotateX(70deg);background:repeating-linear-gradient(90deg,rgba(242,169,0,.035) 0 1px,transparent 1px 70px),repeating-linear-gradient(0deg,rgba(242,169,0,.035) 0 1px,transparent 1px 70px);transform-origin:50% 0}

.edge-comet{position:fixed;inset:0;z-index:118;pointer-events:none;overflow:hidden;opacity:0}.edge-comet.show{opacity:1}
.edge-comet span{position:absolute;left:-20%;top:18%;width:18px;height:18px;border-radius:50%;background:var(--accent);box-shadow:0 0 35px var(--accent);animation:cometFly 1.45s var(--ease) forwards}
.edge-comet i{position:absolute;left:-28%;top:calc(18% + 8px);width:28%;height:2px;background:linear-gradient(90deg,transparent,rgba(242,169,0,.5));animation:cometTrail 1.45s var(--ease) forwards}

.thumb-war{position:fixed;inset:0;z-index:117;pointer-events:none;opacity:0}.thumb-war.show{opacity:1}
.thumb-war i{position:absolute;top:50%;width:42%;height:2px;background:linear-gradient(90deg,transparent,var(--accent));}
.thumb-war i:nth-child(1){left:0;animation:warLeft 1.6s var(--ease)}.thumb-war i:nth-child(2){right:0;transform:scaleX(-1);animation:warRight 1.6s var(--ease)}
.thumb-war b{position:absolute;left:50%;top:50%;width:7px;height:7px;border-radius:50%;background:#fff;box-shadow:0 0 30px #fff;animation:warSpark 1.6s ease}

body.egg-onehand-persist::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:41;background:linear-gradient(90deg,rgba(242,169,0,.10) 0 50%,transparent 50%)}
body.egg-across-persist::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:41;background:linear-gradient(90deg,rgba(242,169,0,.06) 0 50%,rgba(70,170,255,.06) 50%);animation:acrossPulse 1.4s ease-in-out infinite alternate}

.beat-equalizer{position:fixed;left:50%;bottom:7vh;transform:translateX(-50%);width:min(70vw,640px);height:80px;z-index:42;display:flex;align-items:end;gap:5px;pointer-events:none}
.beat-equalizer i{flex:1;background:linear-gradient(var(--accent),rgba(242,169,0,.1));height:18%;animation:eqBeat .856s ease-in-out calc(var(--i)*-.067s) infinite alternate}

.heartbeat-line{position:fixed;left:8vw;right:8vw;bottom:9vh;height:70px;z-index:42;pointer-events:none;opacity:.5}
.heartbeat-line svg{width:100%;height:100%;overflow:visible}.heartbeat-line polyline{fill:none;stroke:var(--accent);stroke-width:1.5;vector-effect:non-scaling-stroke;stroke-dasharray:1100;animation:heartTrace 2.14s linear infinite}

.quad-orbs{position:fixed;inset:0;z-index:41;pointer-events:none}
.quad-orbs i{position:absolute;width:18px;height:18px;border-radius:50%;border:1px solid rgba(242,169,0,.55);box-shadow:0 0 18px rgba(242,169,0,.18);animation:orbPulse 3s ease-in-out infinite}
.quad-orbs i:nth-child(1){left:12%;top:16%}.quad-orbs i:nth-child(2){right:12%;top:16%;animation-delay:-.7s}.quad-orbs i:nth-child(3){right:12%;bottom:16%;animation-delay:-1.4s}.quad-orbs i:nth-child(4){left:12%;bottom:16%;animation-delay:-2.1s}

.movie-pun, .live-view h1 { user-select:text; -webkit-user-select:text; }

@keyframes eggFallPersistent{0%{transform:translateY(-8vh) rotate(0);opacity:0}10%{opacity:.72}100%{transform:translateY(118vh) rotate(720deg);opacity:.15}}
@keyframes bubbleRisePersistent{0%{transform:translateY(0) translateX(0);opacity:0}10%{opacity:.55}50%{transform:translateY(-60vh) translateX(var(--drift))}100%{transform:translateY(-125vh) translateX(0);opacity:0}}
@keyframes starTwinkle{0%,100%{opacity:.12;transform:scale(.7)}50%{opacity:.82;transform:scale(1.4)}}
@keyframes starDrift{0%{transform:translate(-20px,20px);opacity:.05}50%{opacity:.55}100%{transform:translate(80px,-90px);opacity:.05}}
@keyframes ghostTabFloat{0%,100%{transform:translate(0,0) rotate(-2deg);opacity:.03}50%{transform:translate(var(--drift),-60px) rotate(2deg);opacity:.18}}
@keyframes paperFall{0%{transform:translateY(-25vh) rotate(0);opacity:0}10%{opacity:.45}100%{transform:translateY(120vh) translateX(var(--drift)) rotate(420deg);opacity:.05}}
@keyframes printerFall{0%{transform:translateY(-20vh);opacity:.15}100%{transform:translateY(120vh) rotate(30deg);opacity:.05}}
@keyframes dustFloat{0%,100%{transform:translate(0,0);opacity:.05}50%{transform:translate(var(--drift),-80px);opacity:.35}}
@keyframes focusBreathe{0%,100%{filter:blur(0)}50%{filter:blur(2px) brightness(.92)}}
@keyframes selectionScan{to{background-position:0 180px}}
@keyframes reloadScan{to{background-position:0 14px}}
@keyframes sunrisePulse{0%,100%{opacity:.5;transform:translateX(-50%) scale(.92)}50%{opacity:1;transform:translateX(-50%) scale(1.04)}}
@keyframes primeSweep{to{transform:translateX(100px)}}
@keyframes orbitSpin{to{rotate:360deg}}
@keyframes sundayBreath{0%,100%{opacity:.55}50%{opacity:1}}
@keyframes spotSweep{0%,100%{transform:rotate(-18deg)}50%{transform:rotate(18deg)}}
@keyframes digitDrift{0%,100%{transform:translate(0,0) rotate(-3deg);opacity:.06}50%{transform:translate(30px,-35px) rotate(3deg);opacity:.28}}
@keyframes gridDrift{to{background-position:20px 14px}}
@keyframes secondHand{to{transform:rotate(360deg)}}
@keyframes eyeBlink{0%,88%,100%{transform:scaleY(1)}90%,94%{transform:scaleY(.05)}}
@keyframes dvdBounce{0%{left:4%;top:8%}25%{left:78%;top:70%}50%{left:58%;top:10%}75%{left:8%;top:76%}100%{left:82%;top:18%}}
@keyframes resolutionFlip{0%,100%{filter:none}25%{transform:scaleX(.55) scaleY(1.2)}50%{transform:scale(.7)}75%{transform:scaleX(1.35) scaleY(.65)}}
@keyframes sweepHorizontal{to{transform:translateX(calc(100vw + 110%))}}
@keyframes sweepVertical{to{transform:translateY(calc(100vh + 110%))}}
@keyframes traceH{0%{width:0}25%,100%{width:100%}}
@keyframes traceV{0%{height:0}25%,100%{height:100%}}
@keyframes tapRipple{0%{opacity:.8;transform:translate(-50%,-50%) scale(.2)}100%{opacity:0;transform:translate(-50%,-50%) scale(12)}}
@keyframes cometFly{to{left:115%;top:68%;transform:rotate(18deg)}} @keyframes cometTrail{to{left:108%;top:68%;transform:rotate(18deg)}}
@keyframes warLeft{0%{transform:translateX(-100%)}65%{transform:translateX(65%)}} @keyframes warRight{0%{transform:scaleX(-1) translateX(-100%)}65%{transform:scaleX(-1) translateX(65%)}} @keyframes warSpark{0%,55%{opacity:0;transform:scale(.2)}65%{opacity:1;transform:scale(3)}100%{opacity:0;transform:scale(8)}}
@keyframes acrossPulse{to{filter:hue-rotate(80deg);opacity:.8}}
@keyframes eqBeat{to{height:100%}}
@keyframes heartTrace{from{stroke-dashoffset:1100}to{stroke-dashoffset:0}}
@keyframes orbPulse{0%,100%{transform:scale(.65);opacity:.25}50%{transform:scale(1.5);opacity:.9}}


/* v0.8 — richer persistent Easter-egg effects */
.creative-overlay { position:fixed; inset:0; z-index:32; pointer-events:none; overflow:hidden; }

body.egg-launch-persist :is(.clock-row,.live-title) { text-shadow:0 0 24px rgba(242,169,0,.34); }
body.egg-launch-persist::after { content:""; position:fixed; inset:0; pointer-events:none; z-index:24; background:repeating-linear-gradient(115deg,transparent 0 80px,rgba(242,169,0,.06) 82px 84px,transparent 86px 160px); animation:launchLanes 6s linear infinite; }
@keyframes launchLanes { to { transform:translateX(160px); } }
body.egg-hold-stretch-persist :is(.clock-row,.live-title) { transform:scaleX(1.18); letter-spacing:-.02em; }
body.egg-caffeine-persist .stage { animation:caffeinePersist .22s steps(2,end) infinite; }
@keyframes caffeinePersist { 0%,100%{transform:translate(0)}25%{transform:translate(1px,-1px)}50%{transform:translate(-1px,1px)}75%{transform:translate(1px,1px)} }
body.egg-vertical-float-persist :is(.countdown-view,.live-content) { animation:verticalFloat 3.2s ease-in-out infinite; }
@keyframes verticalFloat { 50%{transform:translateY(-22px)} }
body.egg-noir-persist { --fg:#ededed; --accent:#fff; filter:grayscale(1) contrast(1.12); }
body.egg-escape-persist .egg-button { animation:eggWander 5s ease-in-out infinite alternate; }
@keyframes eggWander { to { transform:translate(-70px,52px) rotate(-10deg); } }
body.egg-return-sender-persist .stage { transform:scaleX(-1); }
body.egg-middle-management-persist .stage { transform:scale(.88); border:1px solid rgba(255,255,255,.18); }
body.egg-reverse-spin-persist .stage { animation:slowReverseSpin 18s linear infinite reverse; }
@keyframes slowReverseSpin { to{transform:rotate(360deg)} }
body.egg-gravity-persist .stage { transform:translateY(17vh); }

.persistent-portal i { position:absolute; width:min(52vw,520px); aspect-ratio:1; border:2px solid rgba(110,70,255,.5); border-radius:50%; left:50%; top:50%; transform:translate(-50%,-50%); box-shadow:0 0 55px rgba(110,70,255,.35),inset 0 0 55px rgba(0,220,255,.16); animation:portalSpin 7s linear infinite; }
.persistent-portal b { position:absolute; width:14px; height:14px; border-radius:50%; background:var(--accent); left:50%; top:50%; animation:portalOrbit 3.5s linear infinite; }
@keyframes portalSpin{to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes portalOrbit{from{transform:rotate(0) translateX(220px)}to{transform:rotate(360deg) translateX(220px)}}

.page-tear .tear-left,.page-tear .tear-right { position:absolute; inset:0; background:rgba(0,0,0,.42); backdrop-filter:blur(1px); transition:transform .8s cubic-bezier(.2,.8,.2,1); }
.page-tear .tear-left { clip-path:polygon(0 0,52% 0,48% 13%,53% 25%,47% 39%,52% 50%,46% 64%,51% 76%,47% 89%,50% 100%,0 100%); }
.page-tear .tear-right { clip-path:polygon(52% 0,100% 0,100% 100%,50% 100%,47% 89%,51% 76%,46% 64%,52% 50%,47% 39%,53% 25%,48% 13%); }
.page-tear.torn .tear-left{transform:translateX(-5vw) rotate(-.7deg)} .page-tear.torn .tear-right{transform:translateX(5vw) rotate(.7deg)}
.page-tear b { position:absolute; left:50%; top:-5%; width:3px; height:110%; background:linear-gradient(transparent,rgba(255,255,255,.7),transparent); transform:rotate(1deg); filter:blur(.6px); box-shadow:0 0 16px rgba(255,255,255,.38); }

.persistent-tabs { top:0; bottom:auto; height:58px; display:flex; gap:4px; padding:8px 10px; background:rgba(12,12,12,.92); border-bottom:1px solid rgba(255,255,255,.12); }
.persistent-tabs i { display:block; width:18vw; max-width:180px; height:34px; border-radius:8px 8px 0 0; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.08); }
.cat-paws i { position:absolute; width:25px;height:21px;border-radius:50% 50% 45% 45%;background:rgba(242,169,0,.18);border:1px solid rgba(242,169,0,.28); animation:pawWalk 5s linear infinite; }
.cat-paws i:nth-child(1){left:5%;top:70%}.cat-paws i:nth-child(2){left:25%;top:62%;animation-delay:-1s}.cat-paws i:nth-child(3){left:45%;top:73%;animation-delay:-2s}.cat-paws i:nth-child(4){left:65%;top:59%;animation-delay:-3s}.cat-paws i:nth-child(5){left:85%;top:68%;animation-delay:-4s}
@keyframes pawWalk{50%{transform:translateY(-18px) rotate(12deg)}}
.around-world-orbit i,.around-world-orbit b{position:absolute;left:50%;top:50%;border-radius:50%}.around-world-orbit i{width:min(70vw,720px);aspect-ratio:1;border:1px dashed rgba(255,255,255,.18);transform:translate(-50%,-50%)}.around-world-orbit b{width:18px;height:18px;background:var(--accent);animation:worldOrbit 5s linear infinite}@keyframes worldOrbit{from{transform:rotate(0) translateX(min(35vw,360px))}to{transform:rotate(360deg) translateX(min(35vw,360px))}}
.slash-scar i{position:absolute;left:18%;width:70%;height:2px;background:rgba(255,255,255,.38);box-shadow:0 0 14px rgba(255,255,255,.22);transform:rotate(-18deg)}.slash-scar i:nth-child(1){top:38%}.slash-scar i:nth-child(2){top:50%;transform:rotate(17deg)}.slash-scar i:nth-child(3){top:62%;transform:rotate(-12deg)}
.snake-trail-persist i{position:absolute;width:12px;height:12px;border-radius:50%;background:rgba(0,220,120,.65);top:50%;left:50%;animation:snakeOrbit 5s ease-in-out infinite;animation-delay:calc(var(--i,0)*-.2s)}.snake-trail-persist i:nth-child(2){--i:1}.snake-trail-persist i:nth-child(3){--i:2}.snake-trail-persist i:nth-child(4){--i:3}.snake-trail-persist i:nth-child(5){--i:4}.snake-trail-persist i:nth-child(6){--i:5}@keyframes snakeOrbit{0%,100%{transform:translate(-38vw,-15vh)}50%{transform:translate(38vw,15vh)}}
.slow-trail-persist i{position:absolute;width:9px;height:9px;border-radius:50%;border:1px solid rgba(242,169,0,.45);left:50%;top:50%;animation:slowDots 9s ease-in-out infinite;animation-delay:calc(var(--i,0)*-.7s)}.slow-trail-persist i:nth-child(2){--i:1}.slow-trail-persist i:nth-child(3){--i:2}.slow-trail-persist i:nth-child(4){--i:3}.slow-trail-persist i:nth-child(5){--i:4}@keyframes slowDots{0%,100%{transform:translate(-35vw,20vh)}50%{transform:translate(35vw,-20vh)}}
.portal-flicker-persist i,.portal-flicker-persist b,.portal-flicker-persist span{position:absolute;left:50%;top:50%;border:1px solid rgba(0,220,255,.35);border-radius:50%;animation:portalPulse 2.2s ease-in-out infinite}.portal-flicker-persist i{width:280px;height:280px}.portal-flicker-persist b{width:190px;height:190px;animation-delay:-.7s}.portal-flicker-persist span{width:90px;height:90px;animation-delay:-1.4s}@keyframes portalPulse{50%{transform:translate(-50%,-50%) scale(1.25);opacity:.2}0%,100%{transform:translate(-50%,-50%) scale(.8);opacity:.8}}
.archive-214-persist{display:flex;align-items:center;justify-content:space-around}.archive-214-persist b{font-size:clamp(80px,18vw,260px);font-weight:200;color:rgba(255,255,255,.035);animation:archive214Float 7s ease-in-out infinite}.archive-214-persist b:nth-child(2){animation-delay:-2.3s}.archive-214-persist b:nth-child(3){animation-delay:-4.6s}@keyframes archive214Float{50%{transform:translateY(-70px) rotate(4deg)}}
.lucky-seven-persist{display:flex;align-items:center;justify-content:space-around}.lucky-seven-persist b{font-size:80px;color:rgba(242,169,0,.08);animation:sevenBounce 2.5s ease-in-out infinite}.lucky-seven-persist b:nth-child(even){animation-delay:-1.2s}@keyframes sevenBounce{50%{transform:translateY(-40px)}}
.thirteen-persist b{position:absolute;font-size:70px;color:rgba(255,255,255,.045);animation:thirteenDrift 8s linear infinite}.thirteen-persist b:nth-child(1){left:8%;top:15%}.thirteen-persist b:nth-child(2){left:30%;top:72%}.thirteen-persist b:nth-child(3){left:53%;top:28%}.thirteen-persist b:nth-child(4){left:74%;top:63%}.thirteen-persist b:nth-child(5){left:88%;top:12%}@keyframes thirteenDrift{50%{transform:rotate(180deg) scale(1.3)}}

.text-rain span{position:absolute;left:var(--x);top:-10%;font:600 12px/1 monospace;color:rgba(242,169,0,.34);animation:textRain var(--dur) linear infinite;animation-delay:var(--delay)}@keyframes textRain{to{transform:translateY(120vh) rotate(180deg)}}
.device-bridge{display:flex;align-items:center;justify-content:center;gap:28px}.device-bridge .phone{width:42px;height:76px;border:2px solid rgba(242,169,0,.5);border-radius:8px}.device-bridge .desktop{width:100px;height:64px;border:2px solid rgba(242,169,0,.5);border-radius:5px}.device-bridge span{width:180px;height:1px;background:linear-gradient(90deg,transparent,var(--accent),transparent);animation:bridgePulse 1.2s linear infinite}@keyframes bridgePulse{50%{filter:brightness(2);box-shadow:0 0 18px var(--accent)}}
.morse-track{display:grid;place-items:center}.morse-track span{font:300 clamp(50px,10vw,140px)/1 monospace;letter-spacing:.25em;color:rgba(242,169,0,.12)}.morse-track i{position:absolute;left:0;right:0;top:50%;height:1px;background:linear-gradient(90deg,transparent,rgba(242,169,0,.4),transparent);animation:morseScan 2s linear infinite}@keyframes morseScan{50%{transform:translateY(70px)}}
.sos-beacon{display:grid;place-items:center}.sos-beacon b{font-size:clamp(70px,14vw,190px);letter-spacing:.18em;color:rgba(255,50,50,.08)}.sos-beacon i{position:absolute;width:18px;height:18px;border-radius:50%;background:#f44;box-shadow:0 0 55px #f44;animation:sosBlink 1.5s steps(1,end) infinite}.sos-beacon i:nth-of-type(1){left:10%;top:10%}.sos-beacon i:nth-of-type(2){right:10%;bottom:10%;animation-delay:-.75s}@keyframes sosBlink{0%,15%,30%,45%{opacity:1}16%,31%,46%,100%{opacity:.08}}
.pi-spiral{display:grid;place-items:center}.pi-spiral b{font-size:min(55vw,620px);font-weight:200;color:rgba(255,255,255,.025);animation:piTurn 30s linear infinite}.pi-spiral span{position:absolute;width:70vw;text-align:center;font:12px monospace;letter-spacing:.5em;color:rgba(242,169,0,.18);animation:piTurn 18s linear infinite reverse}@keyframes piTurn{to{transform:rotate(360deg)}}
.golden-frame i{position:absolute;border:1px solid rgba(242,169,0,.16);left:50%;top:50%;transform:translate(-50%,-50%)}.golden-frame i:nth-child(1){width:72vw;height:44.5vw}.golden-frame i:nth-child(2){width:44.5vw;height:27.5vw}.golden-frame i:nth-child(3){width:27.5vw;height:17vw}.golden-frame i:nth-child(4){width:17vw;height:10.5vw}
.fibonacci-spiral i{position:absolute;border:1px solid rgba(0,220,255,.14);border-radius:0 100% 0 0;left:50%;top:50%;transform-origin:0 100%}.fibonacci-spiral i:nth-child(1){width:70px;height:70px}.fibonacci-spiral i:nth-child(2){width:113px;height:113px;transform:rotate(90deg)}.fibonacci-spiral i:nth-child(3){width:183px;height:183px;transform:rotate(180deg)}.fibonacci-spiral i:nth-child(4){width:296px;height:296px;transform:rotate(270deg)}.fibonacci-spiral i:nth-child(5){width:479px;height:479px}
.countdown-cascade{display:flex;justify-content:space-around;align-items:center}.countdown-cascade b{font-size:clamp(40px,8vw,110px);font-weight:200;color:rgba(255,255,255,.045);animation:countCascade 3s ease-in-out infinite}.countdown-cascade b:nth-child(odd){animation-delay:-1.5s}@keyframes countCascade{50%{transform:translateY(-50px);color:rgba(242,169,0,.14)}}
body.egg-odd-stripes-persist::after{content:"";position:fixed;inset:0;z-index:23;pointer-events:none;background:repeating-linear-gradient(90deg,transparent 0 9vw,rgba(242,169,0,.055) 9vw 10vw)}
body.egg-even-checker-persist::after{content:"";position:fixed;inset:0;z-index:23;pointer-events:none;background:conic-gradient(from 90deg,rgba(255,255,255,.04) 25%,transparent 0 50%,rgba(255,255,255,.04) 0 75%,transparent 0);background-size:80px 80px}
.prime-constellation i{position:absolute;width:5px;height:5px;border-radius:50%;background:var(--accent);box-shadow:0 0 12px var(--accent)}.prime-constellation i:nth-child(3n){left:18%;top:25%}.prime-constellation i:nth-child(3n+1){left:50%;top:70%}.prime-constellation i:nth-child(3n+2){left:82%;top:38%;transform:translate(calc(var(--i,0)*5px),0)}
body.egg-42-persist{--accent:#9be564;--fg:#e9ffd8}.dont-panic-overlay{display:grid;place-items:center}.dont-panic-overlay b{font-size:min(55vw,650px);color:rgba(155,229,100,.035)}.dont-panic-overlay span{position:absolute;bottom:10%;font-size:12px;letter-spacing:.5em;color:rgba(155,229,100,.35)}
.gigawatt-lightning b{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:clamp(80px,18vw,240px);color:rgba(0,220,255,.06)}.gigawatt-lightning i{position:absolute;width:2px;height:70vh;left:50%;top:15%;background:rgba(0,220,255,.55);box-shadow:0 0 22px rgba(0,220,255,.9);clip-path:polygon(50% 0,100% 42%,62% 42%,88% 100%,0 55%,42% 55%);animation:lightningFlicker 2.1s steps(1) infinite}.gigawatt-lightning i:nth-child(2){left:25%;transform:scale(.7) rotate(15deg);animation-delay:-.7s}.gigawatt-lightning i:nth-child(3){left:75%;transform:scale(.6) rotate(-18deg);animation-delay:-1.3s}@keyframes lightningFlicker{0%,8%,12%,100%{opacity:0}9%,11%{opacity:1}}
body.egg-spoon-warp-persist .stage{transform:perspective(700px) rotateY(13deg) skewY(-2deg);border-radius:45% 12% 45% 12%}
.petal-rain span{position:absolute;left:var(--x);top:-8%;width:15px;height:24px;background:rgba(205,35,70,.65);border-radius:80% 20% 80% 20%;transform:rotate(var(--rot));animation:petalFall var(--dur) linear infinite;animation-delay:var(--delay)}@keyframes petalFall{to{transform:translate(15vw,115vh) rotate(720deg)}}
.upward-sparks span{animation-direction:reverse!important}.down-under-rain span{background:rgba(0,190,255,.35)!important}
body.egg-left-field-persist .stage{transform:translateX(-12vw) rotate(-1deg)}body.egg-right-on-persist .stage{transform:translateX(12vw) rotate(1deg)}
.compass-rose-overlay{display:grid;place-items:center}.compass-rose-overlay i{width:min(62vw,600px);aspect-ratio:1;border:1px solid rgba(255,255,255,.13);border-radius:50%;background:conic-gradient(from 45deg,transparent 0 11%,rgba(242,169,0,.15) 12% 13%,transparent 14% 36%,rgba(242,169,0,.15) 37% 38%,transparent 39% 61%,rgba(242,169,0,.15) 62% 63%,transparent 64% 86%,rgba(242,169,0,.15) 87% 88%,transparent 89%)}.compass-rose-overlay b{position:absolute;color:rgba(255,255,255,.3)}.compass-rose-overlay b:nth-of-type(1){top:14%}.compass-rose-overlay b:nth-of-type(2){right:16%}.compass-rose-overlay b:nth-of-type(3){bottom:14%}.compass-rose-overlay b:nth-of-type(4){left:16%}
body.egg-retro-game-persist :is(.clock-row,.live-title),body.egg-retro-game-persist .movie-pun{font-family:monospace;image-rendering:pixelated;text-shadow:4px 4px 0 rgba(242,169,0,.16)}body.egg-retro-game-persist{background-image:linear-gradient(rgba(0,255,100,.025) 50%,transparent 50%);background-size:100% 4px}
body.egg-godmode-persist{--accent:#ffd95a;filter:saturate(1.35)}.godmode-shield{display:grid;place-items:center}.godmode-shield i{width:min(50vw,480px);aspect-ratio:1;border:2px solid rgba(255,217,90,.25);border-radius:50%;box-shadow:0 0 80px rgba(255,217,90,.12);animation:shieldPulse 2s ease-in-out infinite}.godmode-shield b{position:absolute;bottom:12%;font-size:10px;letter-spacing:.5em;color:rgba(255,217,90,.4)}@keyframes shieldPulse{50%{transform:scale(1.1)}}
body.egg-debug-persist *:not(script):not(style){outline:1px solid rgba(0,255,170,.09)!important}body.egg-debug-persist::after{content:"DEBUG MODE";position:fixed;left:10px;bottom:10px;z-index:95;color:#00ffaa;font:10px monospace;letter-spacing:.2em}
.paint-splat i,.paint-splat b{position:absolute;left:50%;top:50%;background:rgba(242,169,0,.72);transform:translate(-50%,-50%) scale(0);transition:transform .45s cubic-bezier(.1,1.5,.4,1)}.paint-splat.hit i,.paint-splat.hit b{transform:translate(-50%,-50%) scale(1)}.paint-splat b{width:240px;height:190px;border-radius:48% 52% 44% 56%}.paint-splat i{width:50px;height:50px;border-radius:50%}.paint-splat i:nth-child(1){margin:-130px 0 0 -160px}.paint-splat i:nth-child(2){margin:120px 0 0 170px;width:28px;height:28px}.paint-splat i:nth-child(3){margin:-85px 0 0 190px;width:18px;height:18px}.paint-splat i:nth-child(4){margin:145px 0 0 -130px;width:35px;height:35px}.paint-splat i:nth-child(5){margin:-155px 0 0 70px;width:20px;height:20px}
.five-alive-orbs{display:flex;align-items:center;justify-content:space-evenly}.five-alive-orbs i{width:28px;height:28px;border-radius:50%;background:rgba(242,169,0,.22);box-shadow:0 0 30px rgba(242,169,0,.3);animation:alivePulse 2s ease-in-out infinite}.five-alive-orbs i:nth-child(2){animation-delay:-.4s}.five-alive-orbs i:nth-child(3){animation-delay:-.8s}.five-alive-orbs i:nth-child(4){animation-delay:-1.2s}.five-alive-orbs i:nth-child(5){animation-delay:-1.6s}@keyframes alivePulse{50%{transform:scale(2);opacity:.15}}
.tenacious-lines i,.one-fifty-lines i{position:absolute;top:0;bottom:0;width:1px;background:linear-gradient(transparent,rgba(255,255,255,.12),transparent);animation:lineDrift 7s linear infinite}.tenacious-lines i:nth-child(n){left:calc(5% + (var(--i,0)*9%))}.one-fifty-lines i{left:calc(var(--i,0)*3.3%)}@keyframes lineDrift{50%{transform:translateX(25px)}}
.quarter-century-dots i{position:absolute;width:8px;height:8px;border-radius:50%;background:rgba(242,169,0,.25);left:calc(4% + (var(--i,0)*3.8%));top:calc(15% + ((var(--i,0)%5)*16%))}
body.egg-century-club-persist{--bg:#080400;--fg:#fff4df;--accent:#ffb000}body.egg-century-club-persist :is(.clock-row,.live-title){font-weight:700;text-shadow:0 0 30px rgba(255,176,0,.25)}
.two-hundred-particles span{background:rgba(242,169,0,.4)!important}.egg-almost-static-persist::before{opacity:.55!important;background-image:repeating-radial-gradient(circle at 20% 30%,rgba(255,255,255,.08) 0 1px,transparent 1px 3px)!important;animation:staticMove .12s steps(2) infinite}@keyframes staticMove{to{transform:translate(2px,-2px)}}
body.egg-complete-persist{background:radial-gradient(circle at center,#241500,#000 55%);--accent:#ffd35a}body.egg-complete-persist :is(.clock-row,.live-title){filter:drop-shadow(0 0 24px #ffd35a)}
.mouseketeer-trails i{position:absolute;width:18px;height:28px;border:1px solid rgba(255,255,255,.18);border-radius:50% 50% 45% 45%;left:20%;top:30%;animation:mouseDrift 6s linear infinite}.mouseketeer-trails i:nth-child(2){left:40%;top:65%;animation-delay:-1s}.mouseketeer-trails i:nth-child(3){left:60%;top:20%;animation-delay:-2s}.mouseketeer-trails i:nth-child(4){left:78%;top:72%;animation-delay:-3s}.mouseketeer-trails i:nth-child(5){left:88%;top:42%;animation-delay:-4s}@keyframes mouseDrift{50%{transform:translate(60px,-40px) rotate(30deg)}}
.zen-particles span{background:rgba(255,255,255,.13)!important;animation-duration:18s!important}.clean-glass i{position:absolute;top:-20%;width:18vw;height:140%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.06),transparent);transform:rotate(12deg);animation:glassSweep 5s linear infinite}.clean-glass i:nth-child(1){left:10%}.clean-glass i:nth-child(2){left:45%;animation-delay:-1.5s}.clean-glass i:nth-child(3){left:80%;animation-delay:-3s}@keyframes glassSweep{to{transform:translateX(20vw) rotate(12deg)}}
body.egg-pocket-player-persist .stage{width:min(390px,90vw);height:min(780px,90vh);margin:auto;border:2px solid rgba(255,255,255,.18);border-radius:34px;overflow:hidden;box-shadow:0 0 0 8px rgba(255,255,255,.03)}
.hint-breadcrumb i,.breadcrumbs-field i{position:absolute;width:7px;height:7px;border-radius:50%;background:rgba(242,169,0,.32)}.hint-breadcrumb i:nth-child(n),.breadcrumbs-field i:nth-child(n){left:calc(5% + (var(--i,0)*4%));top:50%;animation:crumbPulse 2s ease-in-out infinite}@keyframes crumbPulse{50%{transform:scale(2);opacity:.2}}
.no-help-crown{display:grid;place-items:center}.no-help-crown b{font-size:min(48vw,520px);color:rgba(255,215,80,.025)}.no-help-crown span{position:absolute;bottom:12%;font-size:10px;letter-spacing:.45em;color:rgba(255,215,80,.28)}
.chain-reaction{display:flex;align-items:center;justify-content:center;gap:8px}.chain-reaction i{width:56px;height:28px;border:2px solid rgba(242,169,0,.18);border-radius:50%;margin-left:-16px;animation:chainPulse 2s ease-in-out infinite}.chain-reaction i:nth-child(even){transform:rotate(90deg)}@keyframes chainPulse{50%{border-color:rgba(242,169,0,.6);box-shadow:0 0 20px rgba(242,169,0,.25)}}
.hot-embers span{background:#ff6a22!important;box-shadow:0 0 8px #ff6a22}.egg-frost-persist::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:28;background:radial-gradient(circle at center,transparent 35%,rgba(185,225,255,.14));box-shadow:inset 0 0 90px rgba(185,225,255,.2)}body.egg-frost-persist :is(.clock-row,.live-title){filter:blur(.25px);text-shadow:0 0 20px rgba(190,230,255,.3)}
.archive-shelves{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:8vh 5vw}.archive-shelves i{border-bottom:2px solid rgba(255,255,255,.12);background:repeating-linear-gradient(90deg,rgba(242,169,0,.09) 0 7px,transparent 7px 11px);opacity:.6}.eggception-rings{display:grid;place-items:center}.eggception-rings i{position:absolute;border:1px solid rgba(242,169,0,.18);border-radius:50% 50% 46% 46% / 60% 60% 40% 40%;width:calc(80px + var(--i,0)*70px);height:calc(105px + var(--i,0)*90px);animation:eggRing 8s linear infinite}.eggception-rings i:nth-child(2){--i:1}.eggception-rings i:nth-child(3){--i:2}.eggception-rings i:nth-child(4){--i:3}.eggception-rings i:nth-child(5){--i:4}@keyframes eggRing{50%{transform:rotate(180deg)}}
body.egg-after-dark-persist{--bg:#020007;--fg:#f8efff;--accent:#ff3bd4;background:radial-gradient(circle at 50% 120%,rgba(90,0,255,.28),#000 58%)}body.egg-after-dark-persist :is(.clock-row,.live-title){text-shadow:4px 0 #ff3bd4,-4px 0 #00eaff}
.live-fireworks span{background:rgba(255,120,40,.75)!important;box-shadow:0 0 10px rgba(255,120,40,.8)}

@media(max-width:640px){.page-tear.torn .tear-left{transform:translateX(-8vw)}.page-tear.torn .tear-right{transform:translateX(8vw)}.device-bridge span{width:90px}.golden-frame i:nth-child(1){width:86vw;height:53vw}}


.return-user-overlay{display:grid;place-items:center}.return-user-overlay i{width:min(50vw,480px);aspect-ratio:1;border:1px dashed rgba(242,169,0,.22);border-radius:50%;animation:returnSpin 7s linear infinite}.return-user-overlay b{position:absolute;font-size:100px;color:rgba(242,169,0,.12)}@keyframes returnSpin{to{transform:rotate(-360deg)}}
.calendar-shift{display:flex;align-items:center;justify-content:center;gap:20px}.calendar-shift i{width:140px;height:170px;border:1px solid rgba(255,255,255,.13);border-radius:12px;background:linear-gradient(rgba(242,169,0,.14) 0 26%,transparent 26%)}.calendar-shift b{position:absolute;bottom:12%;font-size:11px;letter-spacing:.4em;color:rgba(255,255,255,.28)}
.binge-bars{display:grid;grid-template-columns:repeat(3,1fr);gap:8vw;padding:10vh 8vw}.binge-bars i{background:linear-gradient(180deg,transparent,rgba(242,169,0,.08),transparent);animation:bingeGlow 3s ease-in-out infinite}.binge-bars i:nth-child(2){animation-delay:-1s}.binge-bars i:nth-child(3){animation-delay:-2s}@keyframes bingeGlow{50%{background-color:rgba(242,169,0,.12)}}
.weekend-confetti span{background:rgba(255,120,210,.45)!important}.two-device-halo{display:grid;place-items:center}.two-device-halo .phone{width:45px;height:80px;border:2px solid rgba(242,169,0,.4);border-radius:8px;transform:translateX(-70px)}.two-device-halo .desktop{width:115px;height:72px;border:2px solid rgba(242,169,0,.4);border-radius:5px;transform:translateX(70px)}.two-device-halo b{position:absolute;width:300px;height:300px;border-radius:50%;border:1px solid rgba(242,169,0,.16);animation:haloPulse 2s ease-in-out infinite}@keyframes haloPulse{50%{transform:scale(1.25);opacity:.25}}
.double-session-overlay i{position:absolute;inset:10%;border:1px solid rgba(0,220,255,.13)}.double-session-overlay i:nth-child(2){transform:translate(28px,22px);border-color:rgba(242,169,0,.16)}.double-session-overlay b{position:absolute;right:8%;bottom:8%;font-size:70px;color:rgba(255,255,255,.04)}
.everywhere-overlay i{position:absolute;width:22px;height:22px;border-radius:50%;background:rgba(242,169,0,.35);box-shadow:0 0 25px rgba(242,169,0,.3)}.everywhere-overlay i:nth-child(1){left:12%;top:20%}.everywhere-overlay i:nth-child(2){right:14%;top:35%}.everywhere-overlay i:nth-child(3){left:52%;bottom:15%}.everywhere-overlay b{position:absolute;left:50%;top:50%;font-size:300px;color:rgba(255,255,255,.02);transform:translate(-50%,-50%)}
body.egg-spin-cycle-persist .stage{animation:deviceSpinPersist 9s linear infinite}@keyframes deviceSpinPersist{to{transform:rotate(360deg)}}
.shake-cracks i{position:absolute;left:50%;top:50%;width:2px;height:45vh;background:linear-gradient(rgba(255,255,255,.55),transparent);transform-origin:top}.shake-cracks i:nth-child(1){transform:rotate(28deg)}.shake-cracks i:nth-child(2){transform:rotate(112deg)}.shake-cracks i:nth-child(3){transform:rotate(207deg)}.shake-cracks i:nth-child(4){transform:rotate(298deg)}
body.egg-device-tilt-persist .stage{transform:perspective(900px) rotateZ(-7deg) rotateY(8deg)}
.gyro-aurora i{position:absolute;inset:-30%;border-radius:50%;filter:blur(70px);opacity:.15;background:conic-gradient(from 0deg,transparent,#00eaff,transparent,#8a4dff,transparent);animation:gyroAurora 12s linear infinite}.gyro-aurora i:nth-child(2){animation-direction:reverse;animation-duration:18s}.gyro-aurora i:nth-child(3){animation-duration:25s;transform:scale(.7)}@keyframes gyroAurora{to{transform:rotate(360deg)}}


/* ---------------- pop-culture/endgame effects ---------------- */

body.egg-cake-persist .stage{filter:saturate(.72) contrast(1.06)}
body.egg-stealth-persist .stage{filter:brightness(.68) contrast(1.2)}
body.egg-racing-persist .stage{filter:saturate(1.2)}
body.egg-42-persist .stage{filter:sepia(.15)}
body.egg-hadouken-persist :is(.clock-row,.live-title){color:#9ed8ff;text-shadow:0 0 22px rgba(30,140,255,.42)}
body.egg-timewarp-persist :is(.clock-row,.live-title){text-shadow:-8px 0 rgba(0,200,255,.28),8px 0 rgba(255,90,35,.28)}
body.egg-redpill-persist{--accent:#e42f36} body.egg-bluepill-persist{--accent:#3276ff}
body.egg-redpill-persist .stage{filter:contrast(1.1) saturate(1.25)} body.egg-bluepill-persist .stage{filter:contrast(1.05) saturate(.95)}
body.egg-force-persist .stage{filter:brightness(.75)}
body.egg-hasta-persist .stage{filter:contrast(1.35) saturate(.7)}
body.egg-zero-persist :is(.clock-row,.live-title){font-variant-numeric:slashed-zero}
body.egg-drifter-persist .stage{filter:brightness(.92)}

.energy-ball-flight,.red-shell-flight,.transporter-beam,.time-lightning,.force-lift{
  position:fixed;inset:0;z-index:119;pointer-events:none;overflow:hidden;opacity:0
}
.energy-ball-flight.show,.red-shell-flight.show,.transporter-beam.show,.time-lightning.show,.force-lift.show{opacity:1}
.energy-ball-flight i{position:absolute;left:-90px;top:48%;width:56px;height:56px;border-radius:50%;background:#36a5ff;box-shadow:0 0 25px #36a5ff,0 0 75px #1488ff;animation:energyFly 1.5s cubic-bezier(.12,.55,.2,1) forwards}
.energy-ball-flight b{position:absolute;left:-260px;top:calc(48% + 25px);width:280px;height:5px;background:linear-gradient(90deg,transparent,#7bcaff);filter:blur(2px);animation:energyTrail 1.5s cubic-bezier(.12,.55,.2,1) forwards}
.red-shell-flight i{position:absolute;left:-100px;bottom:16%;width:62px;height:50px;border-radius:50% 50% 35% 35%;background:#d8282d;border-bottom:14px solid #eee;box-shadow:0 0 20px rgba(216,40,45,.5);animation:shellFly 1.8s cubic-bezier(.2,.7,.1,1) forwards}
.red-shell-flight b{position:absolute;left:-260px;bottom:calc(16% + 18px);height:4px;width:260px;background:linear-gradient(90deg,transparent,rgba(255,70,70,.8));animation:shellTrail 1.8s cubic-bezier(.2,.7,.1,1) forwards}
.transporter-beam i{position:absolute;top:-20%;bottom:-20%;width:14vw;max-width:150px;background:linear-gradient(90deg,transparent,rgba(120,210,255,.28),transparent);filter:blur(8px);animation:beamPulse 1.6s ease}
.transporter-beam i:nth-child(1){left:38%}.transporter-beam i:nth-child(2){left:52%}
.transporter-beam b{position:absolute;left:50%;top:50%;width:10px;height:10px;border-radius:50%;background:#fff;box-shadow:0 0 80px 35px rgba(120,210,255,.45);animation:beamDot 1.5s ease}
.time-lightning i{position:absolute;top:0;height:100%;width:2px;background:#8ae7ff;box-shadow:0 0 18px #8ae7ff;transform:skewX(-18deg);animation:timeBolt 1.7s ease}
.time-lightning i:nth-child(1){left:28%}.time-lightning i:nth-child(2){left:52%}.time-lightning i:nth-child(3){left:73%}
.time-lightning b{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:18vw;color:rgba(255,115,50,.12);font-weight:900}
.force-lift i{position:absolute;bottom:-80px;width:28px;height:28px;border:1px solid rgba(255,255,255,.6);animation:forceRise 1.6s ease forwards}
.force-lift i:nth-child(1){left:30%}.force-lift i:nth-child(2){left:50%;animation-delay:.12s}.force-lift i:nth-child(3){left:70%;animation-delay:.23s}

body.egg-barrel-persist::after{content:"";position:fixed;inset:-30%;z-index:25;pointer-events:none;background:radial-gradient(circle,transparent 45%,rgba(30,90,160,.08) 46% 52%,transparent 53%);animation:barrelStars 8s linear infinite}
body.egg-barrel-roll-now .stage{animation:barrelRollNow 1.45s cubic-bezier(.2,.8,.2,1)}
body.egg-allbase-persist{font-family:"Courier New",monospace} body.egg-allbase-persist :is(.clock-row,.live-title){image-rendering:pixelated;text-shadow:4px 4px 0 rgba(242,169,0,.12)}
.all-base-overlay b,.all-base-overlay span{position:absolute;left:50%;transform:translateX(-50%);font-family:"Courier New",monospace;letter-spacing:.16em;color:rgba(242,169,0,.2)}
.all-base-overlay b{top:12%;font-size:clamp(22px,4vw,60px)}.all-base-overlay span{bottom:12%;font-size:11px}
body.egg-respects-persist .stage{filter:grayscale(1) brightness(.52)}
.respects-overlay b{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:25vw;color:rgba(255,255,255,.06)}.respects-overlay span{position:absolute;left:50%;bottom:10%;transform:translateX(-50%);font-size:10px;letter-spacing:.35em;color:rgba(255,255,255,.28)}
body.egg-overwhelming-persist .stage{filter:brightness(1.18) contrast(1.18);text-shadow:0 0 20px rgba(255,220,90,.25)}
.power-overwhelming i{position:absolute;inset:-20%;background:conic-gradient(from calc(var(--i)*120deg),transparent,rgba(255,210,60,.07),transparent 22%);animation:raveSpin 7s linear infinite}
.cow-rain span::after{content:"MOO";font:800 9px/1 Arial;color:#eee;background:#191919;padding:5px 7px;border-radius:50%}
body.egg-leeroy-persist .stage{animation:leeroyShake .42s linear infinite}
.leeroy-charge i{position:absolute;left:-20%;width:140%;height:2px;background:linear-gradient(90deg,transparent,var(--accent),transparent);animation:leeroyLine 1.5s linear infinite}.leeroy-charge i:nth-child(1){top:35%}.leeroy-charge i:nth-child(2){top:65%;animation-delay:.4s}.leeroy-charge b{position:absolute;right:4%;top:50%;font-size:10vw;color:rgba(242,169,0,.08);transform:rotate(-8deg)}
.transporter-stars span{background:#bdeaff!important;box-shadow:0 0 12px #bdeaff}
body.egg-winter-persist .stage{filter:saturate(.55) brightness(.85)}.winter-snow i{position:absolute;top:-10px;width:4px;height:4px;border-radius:50%;background:#fff;left:calc(var(--i) * 2.08%);animation:snowFall calc(4s + var(--i)*.08s) linear infinite;opacity:.5}
body.egg-ringbearer-persist .stage{filter:sepia(.22) brightness(.82)}
.pass-barrier i{position:absolute;left:0;right:0;top:48%;height:4px;background:#ff7a1c;box-shadow:0 0 25px #ff7a1c,0 0 90px rgba(255,80,20,.35)}.pass-barrier i:nth-child(2){top:52%}.pass-barrier b{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:11px;letter-spacing:.35em;color:#ffb072}
.phone-home-scene .moon{position:absolute;right:12%;top:12%;width:150px;height:150px;border-radius:50%;background:rgba(235,240,225,.16);box-shadow:0 0 70px rgba(230,240,220,.08)}.phone-home-scene .bike{position:absolute;right:24%;top:28%;width:50px;height:22px;border-bottom:2px solid rgba(255,255,255,.35);transform:rotate(-8deg)}.phone-home-scene span{position:absolute;inset:0;background:linear-gradient(180deg,transparent 65%,rgba(10,30,50,.3))}
.clever-claws i{position:absolute;left:15%;top:-20%;width:2px;height:140%;background:rgba(255,255,255,.25);transform:rotate(18deg);box-shadow:0 0 10px rgba(255,255,255,.2)}.clever-claws i:nth-child(2){left:50%}.clever-claws i:nth-child(3){left:82%}
body.egg-finish-persist .stage{filter:saturate(.4) contrast(1.35)}.finish-overlay b{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:18vw;color:rgba(210,20,25,.14);font-weight:900}.finish-overlay i{position:absolute;inset:0;border:18px solid rgba(210,20,25,.08)}
body.egg-fatality-persist{--accent:#d51b23}.fatality-overlay{background:linear-gradient(180deg,transparent 45%,rgba(90,0,0,.16))}.fatality-overlay i{position:absolute;top:-20%;width:6px;height:120%;background:linear-gradient(#a10b13,transparent);animation:drip 6s ease-in infinite}.fatality-overlay i:nth-child(1){left:28%}.fatality-overlay i:nth-child(2){left:73%;animation-delay:-2s}.fatality-overlay b{position:absolute;left:50%;top:16%;transform:translateX(-50%);font-size:8vw;color:rgba(200,20,28,.12);font-weight:900}
.over-nine-thousand b{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:24vw;color:rgba(255,220,60,.09);font-weight:900}.over-nine-thousand i{position:absolute;left:50%;top:50%;border:2px solid rgba(255,230,100,.18);border-radius:50%;width:45vw;height:45vw;transform:translate(-50%,-50%);animation:powerRing 2s ease-in-out infinite}.over-nine-thousand i:nth-child(3){animation-delay:-1s}
.power-pellet-field::before{content:"";position:absolute;left:8%;right:8%;top:50%;height:4px;background:repeating-linear-gradient(90deg,#f5e8b2 0 4px,transparent 4px 28px)}.power-pellet-field b{position:absolute;left:8%;top:calc(50% - 8px);width:18px;height:18px;border-radius:50%;background:#ffd85b;animation:pelletRun 4s linear infinite}
.warp-pipe-scene .pipe{position:absolute;left:50%;width:130px;height:180px;background:linear-gradient(90deg,#16652d,#43b35e,#16652d);transform:translateX(-50%);box-shadow:inset 10px 0 0 rgba(255,255,255,.08)}.warp-pipe-scene .top{top:-90px}.warp-pipe-scene .bottom{bottom:-90px}.warp-pipe-scene b{position:absolute;left:50%;top:50%;width:12px;height:12px;border-radius:50%;background:#fff;box-shadow:0 0 45px 18px rgba(100,255,130,.25);animation:pipeTravel 2s linear infinite}
.portal-pair-scene .portal{position:absolute;top:24%;width:85px;height:52%;border-radius:50%;border:8px solid}.portal-pair-scene .a{left:8%;border-color:#23a8ff;box-shadow:0 0 28px #23a8ff}.portal-pair-scene .b{right:8%;border-color:#ff8b24;box-shadow:0 0 28px #ff8b24}.portal-pair-scene b{position:absolute;left:12%;top:50%;width:20px;height:20px;background:#fff;border-radius:50%;animation:portalTravel 3s linear infinite}
.hidden-block-reveal b{position:absolute;left:50%;top:24%;width:70px;height:70px;display:grid;place-items:center;transform:translate(-50%,-50%);background:#d9a51f;border:5px solid #7f5b0d;color:#fff;font:900 36px/1 Arial;box-shadow:inset 0 0 0 4px #f8d55a}.hidden-block-reveal i{position:absolute;left:50%;top:24%;width:120px;height:120px;border:1px solid rgba(255,210,50,.18);border-radius:50%;transform:translate(-50%,-50%);animation:powerRing 2s infinite}
body.egg-mushroom-persist .stage{image-rendering:pixelated;filter:saturate(1.25)}
.opening-doors .door{position:absolute;top:0;bottom:0;width:50%;background:#050505;border:1px solid rgba(255,255,255,.08);animation:doorBreathe 4s ease-in-out infinite}.opening-doors .left{left:0}.opening-doors .right{right:0}.opening-doors b{position:absolute;left:50%;top:0;bottom:0;width:1px;background:rgba(242,169,0,.42);box-shadow:0 0 20px rgba(242,169,0,.3)}
.remote-control-overlay>div{position:absolute;right:7%;top:18%;width:110px;height:250px;border-radius:30px;background:#181818;border:1px solid rgba(255,255,255,.2);box-shadow:0 20px 50px rgba(0,0,0,.5);display:grid;place-items:center;padding:26px}.remote-control-overlay i{width:34px;height:34px;border-radius:50%;border:1px solid rgba(255,255,255,.22)}.remote-control-overlay b{font-size:8px;letter-spacing:.2em;color:rgba(255,255,255,.5)}
.buffering-rings i{position:absolute;left:50%;top:50%;width:12vw;height:12vw;min-width:100px;min-height:100px;border:1px solid rgba(242,169,0,.22);border-top-color:var(--accent);border-radius:50%;transform:translate(-50%,-50%);animation:raveSpin 3s linear infinite}.buffering-rings i:nth-child(2){width:18vw;height:18vw;animation-duration:5s;animation-direction:reverse}.buffering-rings i:nth-child(3){width:26vw;height:26vw;animation-duration:8s}.buffering-rings b{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:9px;letter-spacing:.25em;color:rgba(255,255,255,.32)}
body.egg-plexorcist-persist .stage{transform:rotate(180deg) scale(.96);filter:contrast(1.35) hue-rotate(120deg)}
.movie-marquee{border:10px solid transparent}.movie-marquee b{position:absolute;left:50%;top:10%;transform:translateX(-50%);font-size:clamp(20px,4vw,58px);letter-spacing:.18em;color:rgba(255,255,255,.17)}.movie-marquee i{position:absolute;left:3%;right:3%;height:1px;background:repeating-linear-gradient(90deg,#f6d88d 0 6px,transparent 6px 22px)}.movie-marquee i:nth-child(2){top:5%}.movie-marquee i:nth-child(3){bottom:5%}
.wilhelm-visual b{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-9deg);font-size:18vw;color:rgba(255,255,255,.09);font-weight:900}.wilhelm-visual i{position:absolute;left:50%;top:50%;width:35vw;height:35vw;border:2px solid rgba(255,255,255,.1);border-radius:50%;transform:translate(-50%,-50%);animation:powerRing 1s ease-out infinite}
body.egg-dramatic-zoom-persist .stage{transform:scale(1.34)} body.egg-dramatic-zoom-persist .movie-pun{transform:scale(.7)}
.rickroll-dance i{position:absolute;bottom:8%;width:10px;height:22%;background:linear-gradient(transparent,rgba(242,169,0,.25));transform-origin:bottom;animation:danceBar .7s ease-in-out infinite alternate}.rickroll-dance i:nth-child(1){left:35%}.rickroll-dance i:nth-child(2){left:50%;animation-delay:-.25s}.rickroll-dance i:nth-child(3){left:65%;animation-delay:-.5s}.rickroll-dance b{position:absolute;left:50%;top:16%;font-size:8vw;color:rgba(242,169,0,.09)}
.green-portal-goo i{position:absolute;border-radius:50%;background:#6dff5a;box-shadow:0 0 30px #69ff55;filter:blur(1px);animation:gooOrbit 6s linear infinite}.green-portal-goo i:nth-child(1){width:18px;height:18px;left:20%;top:30%}.green-portal-goo i:nth-child(2){width:28px;height:28px;left:70%;top:65%;animation-delay:-2s}.green-portal-goo i:nth-child(3){width:12px;height:12px;left:52%;top:20%;animation-delay:-4s}
.father-vignette{background:radial-gradient(circle at center,transparent 25%,rgba(0,0,0,.82) 78%)}.father-vignette i{position:absolute;left:50%;top:50%;width:170px;height:210px;border-radius:52% 52% 44% 44%;transform:translate(-50%,-50%);background:linear-gradient(#080808,#161616);opacity:.45}.father-vignette b{position:absolute;left:50%;top:50%;width:120px;height:2px;background:#d31f2b;box-shadow:0 0 20px #d31f2b;transform:translate(-50%,80px)}
.broken-door-scene i{position:absolute;top:0;bottom:0;width:52%;background:linear-gradient(90deg,#27190f,#4c2e1b);border:1px solid rgba(255,255,255,.08)}.broken-door-scene i:nth-child(1){left:-3%;clip-path:polygon(0 0,100% 0,91% 24%,100% 39%,88% 52%,100% 66%,92% 82%,100% 100%,0 100%)}.broken-door-scene i:nth-child(2){right:-3%;clip-path:polygon(0 0,100% 0,100% 100%,0 100%,8% 82%,0 66%,12% 52%,0 39%,9% 24%)}.broken-door-scene b{position:absolute;left:50%;top:50%;width:5px;height:90%;background:rgba(255,255,255,.25);transform:translate(-50%,-50%) rotate(18deg)}
body.egg-terminator-persist{--accent:#d6282f} body.egg-terminator-persist .stage{filter:grayscale(.45) sepia(1) saturate(4) hue-rotate(310deg) contrast(1.3)} body.egg-terminator-persist::after{content:"TARGET ACQUIRED";position:fixed;right:4%;bottom:6%;z-index:45;color:rgba(255,40,40,.4);font:10px monospace;letter-spacing:.25em}
body.egg-corner-title-persist :is(.countdown-view,.live-content),body.egg-corner-title-persist .live-content{transform:scale(.45) translate(62vw,62vh);transform-origin:center}
.still-watching-overlay{z-index:70;background:rgba(0,0,0,.55);backdrop-filter:blur(4px)}.still-watching-overlay b,.still-watching-overlay span{position:absolute;left:50%;transform:translateX(-50%);text-align:center}.still-watching-overlay b{top:43%;font-size:clamp(28px,6vw,80px);letter-spacing:.08em}.still-watching-overlay span{top:56%;font-size:11px;color:rgba(255,255,255,.45)}
.player-two-overlay b{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font:900 clamp(30px,8vw,110px)/1 Arial;color:rgba(242,169,0,.12)}.player-two-overlay i{position:absolute;top:0;bottom:0;width:1px;background:rgba(255,255,255,.15)}.player-two-overlay i:nth-child(2){left:33%}.player-two-overlay i:nth-child(3){right:33%}
.versus-overlay b{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-9deg);font:900 14vw/1 Arial;color:rgba(255,255,255,.08)}
.dvd-corner-stamp b{position:absolute;right:3%;bottom:3%;font:800 11px/1 Arial;letter-spacing:.25em;color:rgba(242,169,0,.5);border:1px solid rgba(242,169,0,.24);padding:10px 14px}
.bsod-overlay{z-index:85;background:#0b45a4;color:#fff}.bsod-overlay b,.bsod-overlay span,.bsod-overlay small{position:absolute;left:10%;font-family:"Segoe UI",Arial,sans-serif}.bsod-overlay b{top:20%;font-size:10vw}.bsod-overlay span{top:48%;font-size:clamp(18px,3vw,38px)}.bsod-overlay small{top:58%;opacity:.65}
body.egg-gravity-well-persist .stage{transform:translateY(38vh) rotate(2deg) scale(.92)}
.crossed-streams-overlay i{position:absolute;left:-10%;top:50%;width:120%;height:5px;filter:blur(1px)}.crossed-streams-overlay i:nth-child(1){background:#3a9dff;transform:rotate(18deg);box-shadow:0 0 25px #3a9dff}.crossed-streams-overlay i:nth-child(2){background:#fff;transform:rotate(-18deg);box-shadow:0 0 25px #fff}.crossed-streams-overlay b{position:absolute;left:50%;top:50%;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 0 90px 45px rgba(255,255,255,.22)}
.pointer-web{position:fixed;inset:0;z-index:43;width:100%;height:100%;pointer-events:none}.pointer-web polyline{fill:none;stroke:rgba(242,169,0,.35);stroke-width:1;vector-effect:non-scaling-stroke}
.lava-floor{top:auto!important;height:35vh;background:linear-gradient(transparent,rgba(255,65,10,.18));overflow:visible}.lava-floor i{position:absolute;bottom:-20px;width:22px;height:80px;background:linear-gradient(#ffb22e,#ff3a0c,transparent);border-radius:50% 50% 20% 20%;filter:blur(2px);animation:lavaFlame 1.4s ease-in-out infinite alternate}.lava-floor i:nth-child(1){left:8%}.lava-floor i:nth-child(2){left:28%;animation-delay:-.4s}.lava-floor i:nth-child(3){left:48%;animation-delay:-.8s}.lava-floor i:nth-child(4){left:68%;animation-delay:-.2s}.lava-floor i:nth-child(5){left:88%;animation-delay:-.7s}
.pixel-magnifier i{position:absolute;left:50%;top:50%;width:4px;height:4px;background:#fff;box-shadow:0 0 0 40px rgba(255,255,255,.03),0 0 0 80px rgba(255,255,255,.02)}.pixel-magnifier b{position:absolute;left:50%;top:50%;width:180px;height:180px;border:1px solid rgba(255,255,255,.2);border-radius:50%;transform:translate(-50%,-50%)}
.schrodinger-box>div{position:absolute;left:50%;top:50%;width:180px;height:140px;transform:translate(-50%,-50%);border:1px solid rgba(255,255,255,.25);background:#0d0d0d;display:grid;place-items:center}.schrodinger-box i{position:absolute;inset:0;background:linear-gradient(135deg,transparent 48%,rgba(255,255,255,.08) 49% 51%,transparent 52%)}.schrodinger-box b{font-size:62px;color:rgba(242,169,0,.4);animation:schrodinger 1.2s steps(1) infinite}
body.egg-bighead-persist :is(.clock-row,.live-title){font-size:clamp(95px,19vw,280px)} body.egg-bighead-persist .movie-pun{font-size:clamp(18px,3vw,42px)}
.time-rift-overlay i{position:absolute;inset:-20%;background:repeating-radial-gradient(circle,transparent 0 25px,rgba(50,200,255,.03) 26px 27px);animation:raveSpin 14s linear infinite}.time-rift-overlay i:nth-child(2){animation-direction:reverse;animation-duration:21s}.time-rift-overlay b{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:8vw;color:rgba(60,210,255,.11)}

.secret-menu-overlay{position:fixed;inset:0;z-index:145;background:rgba(0,0,0,.55);backdrop-filter:blur(8px);display:grid;place-items:center;pointer-events:auto}
.secret-menu-panel{width:min(420px,88vw);padding:22px;background:#090909;border:1px solid rgba(242,169,0,.24);box-shadow:0 30px 90px rgba(0,0,0,.7);display:grid;gap:8px}
.secret-menu-panel small{font-size:9px;letter-spacing:.25em;color:rgba(242,169,0,.55);margin-bottom:10px}
.secret-menu-panel button{height:44px;text-align:left;padding:0 14px;background:#111;border:1px solid rgba(255,255,255,.08);color:#eee;font:12px monospace;cursor:pointer}.secret-menu-panel button:hover{border-color:rgba(242,169,0,.4);background:#15120c}
.plex-os{position:fixed;inset:0;z-index:146;background:radial-gradient(circle at 65% 30%,#1a1a1a,#050505 62%);color:#eee;font:12px/1.4 "Segoe UI",Arial;pointer-events:auto}
.plex-os-menubar{height:34px;padding:0 14px;display:flex;align-items:center;gap:18px;background:rgba(0,0,0,.7);border-bottom:1px solid rgba(255,255,255,.12)}.plex-os-menubar span:last-child{margin-left:auto}
.plex-os-desktop{padding:32px;display:grid;grid-template-columns:repeat(3,95px);gap:18px}.plex-os-desktop button{background:none;border:0;color:#eee;display:grid;place-items:center;gap:5px}.plex-os-desktop i{width:52px;height:52px;border-radius:12px;background:#161616;border:1px solid rgba(242,169,0,.28);display:grid;place-items:center;color:var(--accent);font-style:normal;font-size:22px}
.plex-os-window{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(520px,78vw);padding:22px;background:#0b0b0b;border:1px solid rgba(255,255,255,.12);box-shadow:0 25px 80px rgba(0,0,0,.65)}.plex-os-window strong{color:var(--accent)}.plex-os-window p{font-family:monospace;color:#aaa}.plex-os-window .cursor{animation:blink 1s steps(1) infinite}

.terminal-challenge{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:155;width:min(660px,92vw);background:#050705;border:1px solid #1e5f2c;color:#79ee91;box-shadow:0 30px 100px rgba(0,0,0,.8);font:13px/1.5 monospace;padding:18px}
.terminal-challenge>div{display:flex;justify-content:space-between;border-bottom:1px solid #193d21;padding-bottom:8px}.terminal-challenge button{background:none;border:0;color:#79ee91;font-size:20px;cursor:pointer}.terminal-challenge pre{white-space:pre-wrap;color:#59b86b}.terminal-challenge label{display:flex;gap:8px}.terminal-challenge input{flex:1;background:transparent;border:0;border-bottom:1px solid #276c35;color:#b1ffc0;font:inherit;outline:none}.terminal-output{min-height:22px}
.zero-escape{position:fixed;left:0;top:0;z-index:154;width:48px;height:48px;border:1px solid rgba(242,169,0,.35);border-radius:50%;background:#070707;color:#fff;font:300 30px/1 Arial;box-shadow:0 0 24px rgba(242,169,0,.18);cursor:pointer;will-change:transform}

.doom-challenge,.pong-challenge,.snake-challenge{position:fixed;inset:0;z-index:154;background:rgba(0,0,0,.92);pointer-events:auto}
.doom-hud{position:absolute;left:0;right:0;top:0;height:54px;display:flex;align-items:center;padding:0 18px;gap:18px;border-bottom:1px solid rgba(180,30,20,.3);font-family:monospace;color:#d86b5c}.doom-hud span{opacity:.6}.doom-hud button{margin-left:auto;background:none;border:0;color:#d86b5c;font-size:22px}.doom-arena{position:absolute;inset:54px 0 0;background:radial-gradient(circle at center,#28100c,#080605 68%);overflow:hidden}.doom-target{position:absolute;width:58px;height:58px;transform:translate(-50%,-50%);border:0;background:transparent;cursor:crosshair}.doom-target i{position:absolute;inset:6px;border-radius:50% 50% 44% 44%;background:#6f211b;box-shadow:inset 0 -12px 0 #2a0b08}.doom-target b{position:absolute;left:17px;top:20px;width:8px;height:8px;border-radius:50%;background:#ffb12e;box-shadow:16px 0 #ffb12e}.doom-target.hit{animation:targetPop .1s ease forwards}
.pong-field{position:absolute;left:5%;right:5%;top:8%;bottom:8%;border:1px solid rgba(255,255,255,.28);overflow:hidden;background:#020202}.pong-field::after{content:"";position:absolute;left:50%;top:0;bottom:0;border-left:1px dashed rgba(255,255,255,.14)}.pong-field .paddle{position:absolute;width:10px;height:100px;background:#eee;transform:translateY(-50%)}.pong-field .player{left:3%;top:50%}.pong-field .cpu{right:3%;top:50%}.pong-ball{position:absolute;width:14px;height:14px;border-radius:50%;background:#fff;transform:translate(-50%,-50%)}.pong-field span{position:absolute;left:50%;top:12px;transform:translateX(-50%);font:10px monospace;color:rgba(255,255,255,.35)}.pong-field button,.snake-board button{position:absolute;right:12px;top:10px;background:none;border:0;color:#fff;font-size:22px;z-index:2}
.snake-board{position:absolute;left:8%;right:8%;top:9%;bottom:9%;background:repeating-linear-gradient(0deg,rgba(80,255,110,.04) 0 1px,transparent 1px 11.111%),repeating-linear-gradient(90deg,rgba(80,255,110,.04) 0 1px,transparent 1px 7.142%);border:1px solid rgba(80,255,110,.25)}.snake-head{position:absolute;width:18px;height:18px;border-radius:4px;background:#62ff78;transform:translate(-50%,-50%);box-shadow:0 0 14px #62ff78}.snake-key,.snake-exit{position:absolute;transform:translate(-50%,-50%);font-style:normal;color:#ffdd52}.snake-exit{border:1px solid rgba(255,255,255,.35);padding:5px 8px;font:9px monospace;color:#fff}.snake-board>span{position:absolute;left:50%;top:10px;transform:translateX(-50%);font:10px monospace;color:rgba(100,255,120,.4)}

.hidden-block-target{position:fixed;left:50%;top:30%;transform:translate(-50%,-50%);z-index:61;width:46px;height:46px;border:0;background:transparent;opacity:0;cursor:default}
.one-pixel-target{position:fixed;z-index:61;width:2px;height:2px;padding:0;border:0;background:#050505;opacity:.1;cursor:default}.long-con-drifter{position:fixed;z-index:61;width:12px;height:12px;padding:0;border:0;background:transparent;color:rgba(255,255,255,.09);font-size:12px;cursor:default}

/* obsolete pre-v1.1 Skyrim wagon/puzzle styles removed */
body.egg-inspect-persist .stage{outline:1px dashed rgba(0,220,255,.28);outline-offset:-10px}.inspect-grid{background:repeating-linear-gradient(0deg,rgba(0,220,255,.04) 0 1px,transparent 1px 40px),repeating-linear-gradient(90deg,rgba(0,220,255,.04) 0 1px,transparent 1px 40px)}.inspect-grid b{position:absolute;left:12px;bottom:12px;font:9px monospace;color:rgba(0,220,255,.45)}
.idle-screensaver span{left:0!important;top:0!important;animation:none!important;will-change:transform}

@media (pointer:coarse){
  .one-pixel-target{width:8px;height:8px;opacity:.035}
}
@media(max-width:640px){
  .secret-menu-panel{max-height:82vh;overflow:auto}
}

@keyframes energyFly{to{left:calc(100% + 80px);transform:scale(1.25)}}@keyframes energyTrail{to{left:calc(100% + 60px)}}
@keyframes shellFly{20%{bottom:19%}55%{bottom:13%}to{left:calc(100% + 100px);bottom:17%}}@keyframes shellTrail{to{left:calc(100% + 40px)}}
@keyframes beamPulse{0%,100%{opacity:0}40%,70%{opacity:1}}@keyframes beamDot{0%{transform:scale(8);opacity:0}45%{transform:scale(1);opacity:1}100%{transform:scale(10);opacity:0}}
@keyframes timeBolt{0%,100%{opacity:0}15%,35%,60%{opacity:1}25%,48%,75%{opacity:.12}}@keyframes forceRise{to{bottom:110%;transform:rotate(240deg)}}
@keyframes barrelRollNow{to{transform:rotate(360deg)}}@keyframes barrelStars{to{transform:rotate(360deg)}}@keyframes leeroyShake{0%,100%{transform:translate(0)}25%{transform:translate(-2px,1px)}75%{transform:translate(2px,-1px)}}@keyframes leeroyLine{from{transform:translateX(-40%)}to{transform:translateX(40%)}}
@keyframes snowFall{from{transform:translateY(-10vh) rotate(0)}to{transform:translateY(110vh) rotate(220deg)}}@keyframes drip{0%{transform:translateY(-40%);opacity:0}25%{opacity:.5}to{transform:translateY(45%);opacity:0}}
@keyframes powerRing{0%{transform:translate(-50%,-50%) scale(.6);opacity:.4}to{transform:translate(-50%,-50%) scale(1.35);opacity:0}}@keyframes pelletRun{to{left:90%}}
@keyframes pipeTravel{0%{top:30%;opacity:0}30%{opacity:1}to{top:70%;opacity:0}}@keyframes portalTravel{0%{left:12%;opacity:0}20%{opacity:1}48%{left:8%;opacity:0}52%{left:88%;opacity:0}70%{opacity:1}to{left:82%;opacity:0}}
@keyframes doorBreathe{50%{transform:translateX(var(--door,0))}}@keyframes danceBar{to{transform:scaleY(.25)}}@keyframes gooOrbit{to{transform:rotate(360deg) translateX(80px) rotate(-360deg)}}
@keyframes lavaFlame{to{height:130px;transform:skewX(8deg)}}@keyframes schrodinger{50%{content:"!"}}@keyframes blink{50%{opacity:0}}@keyframes targetPop{to{transform:translate(-50%,-50%) scale(1.8);opacity:0}}
.leeroy-callout{position:fixed;inset:0;z-index:120;pointer-events:none;opacity:0}.leeroy-callout.show{opacity:1}.leeroy-callout b{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-10deg);font:900 15vw/1 Arial;color:rgba(242,169,0,.16)}.leeroy-callout i{position:absolute;left:-20%;right:-20%;top:52%;height:3px;background:linear-gradient(90deg,transparent,var(--accent),transparent);animation:leeroyLine 1.3s linear}

/* ========================================================================== */
/* Plex Launch v1.1 — review pass                                             */
/* ========================================================================== */

/* The countdown gets a JS-computed scale so it can never be clipped by a
   narrow phone or small desktop window. Effects are applied to the row where
   possible so this fit transform remains authoritative. */
.stage{
  position:relative;
  z-index:2;
  width:100%;
  max-width:100vw;
  overflow:visible;
}
.countdown-view{
  width:min(96vw,1100px);
  max-width:calc(100vw - 16px);
  overflow:visible;
}
.countdown{
  display:inline-flex;
  width:max-content;
  max-width:none;
  transform:scale(var(--countdown-fit,1));
  transform-origin:center center;
  will-change:transform;
}
.clock-row{width:max-content;max-width:none}
.mirror-digit{display:inline-block;transform:scaleX(-1);transform-origin:center;unicode-bidi:isolate}

/* Rick Roll is the page background only. All normal UI, most importantly the
   countdown, stays above it. */
.rickroll-background{
  position:fixed;
  inset:0;
  z-index:0;
  width:100vw;
  height:100dvh;
  object-fit:cover;
  object-position:center;
  pointer-events:none;
  background:#000;
}
body:has(.rickroll-background){background:#000}
body:has(.rickroll-background) .stage{
  position:relative;
  z-index:2;
  text-shadow:0 2px 12px rgba(0,0,0,.95),0 0 28px rgba(0,0,0,.8);
}
body:has(.rickroll-background) .movie-pun{color:rgba(255,255,255,.92)}

/* Skyrim is intentionally a complete takeover: black first, video fades in,
   then the whole scene fades away and restores the normal page. */
.skyrim-takeover{
  position:fixed;
  inset:0;
  z-index:220;
  display:grid;
  place-items:center;
  overflow:hidden;
  pointer-events:auto;
  background:#000;
  opacity:0;
  transition:opacity .55s ease;
}
.skyrim-takeover.black{opacity:1}
.skyrim-takeover video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:0;
  transform:scale(1.012);
  transition:opacity 1s ease;
  background:#000;
}
.skyrim-takeover.video-in video{opacity:1}
.skyrim-takeover.fade-out{opacity:0;transition-duration:1.15s}
.skyrim-takeover>i{
  position:absolute;
  inset:0;
  pointer-events:none;
  box-shadow:inset 0 0 120px rgba(0,0,0,.82);
}

/* Mobile long presses are gameplay input, not text selection. Keep the drawer
   itself untouched so its content continues to scroll normally. */
@media (pointer:coarse){
  .stage,.stage *,
  .egg-button,.egg-button *,
  .sound-button,.sound-button *,
  .secret-puzzle-piece,
  .hidden-block-target,.one-pixel-target,.long-con-drifter{
    -webkit-user-select:none!important;
    user-select:none!important;
    -webkit-touch-callout:none!important;
  }
  /* Keep browser pinch/pan handling out of the player surface so the app
     receives complete pointer streams for custom swipes and pinch eggs. */
  .stage{touch-action:none}
  .egg-button,.sound-button{touch-action:none}
  html,body{overscroll-behavior:none}
  /* The archive still needs native vertical scrolling, but not browser zoom. */
  .egg-drawer,.egg-list{touch-action:pan-y;overscroll-behavior:contain}
  .clock-row{font-size:clamp(34px,10.8vw,76px)}
  .days-separator{
    width:clamp(18px,5.2vw,30px);
    margin:0 clamp(3px,1.2vw,8px);
    font-size:clamp(7px,2.1vw,11px);
  }
  .movie-pun{
    max-width:92vw;
    margin-inline:auto;
    margin-top:clamp(28px,6vh,54px);
    padding-inline:8px;
    font-size:clamp(9px,2.8vw,14px);
    letter-spacing:clamp(.12em,.8vw,.24em);
    line-height:1.55;
  }
}
@media (max-width:460px){
  .countdown-view{width:calc(100vw - 10px);max-width:calc(100vw - 10px)}
  .clock-row{font-size:clamp(31px,10.6vw,52px)}
  .egg-button{top:max(10px,env(safe-area-inset-top));right:max(10px,env(safe-area-inset-right));padding:9px 11px}
  .sound-button{left:max(10px,env(safe-area-inset-left));bottom:max(10px,env(safe-area-inset-bottom))}
}
@media (max-height:460px){
  .movie-pun{margin-top:20px}
  .egg-button{top:8px}
}

/* Global discovery-card priority. Decorative overlays cannot steal pointer
   focus from the discovery card or normal controls unless explicitly made
   interactive. */
body.discovery-lock .creative-overlay{pointer-events:none}

/* Review-specific fixes and refreshed effects. */
body.egg-upside-persist .stage{transform:rotate(180deg)!important}
body.egg-noir-temp .stage{filter:grayscale(1) contrast(1.08)}
body.egg-portrait-safe-persist::after{
  content:"PORTRAIT MODE";
  position:fixed;left:50%;top:12%;z-index:25;transform:translateX(-50%);
  font-size:10px;letter-spacing:.3em;color:rgba(255,255,255,.12);pointer-events:none;
}
body.egg-portrait-safe-persist :is(.countdown-view,.live-content),
body.egg-portrait-safe-persist .live-content{transform:none!important}

.second-hand-effect,.hidden-hatch,.refresh-modifier,.corner-cut-two,.three-point-turn,
.diagonal-hero,.press-drag-v11,.particle-accelerator-v11,.wrong-pixel-reveal,
.admin-denied-v11,.time-glitch-label,.leeroy-charge-v11,.down-thud-dust{
  position:fixed;inset:0;z-index:72;pointer-events:none;overflow:hidden;
}
.second-hand-effect b{
  position:absolute;left:50%;top:50%;width:2px;height:min(34vh,220px);background:var(--accent);
  transform-origin:50% 100%;animation:secondHandSweep 1.45s cubic-bezier(.2,.75,.2,1) forwards;
  box-shadow:0 0 18px rgba(242,169,0,.5);
}
@keyframes secondHandSweep{from{transform:translate(-50%,-100%) rotate(-110deg)}to{transform:translate(-50%,-100%) rotate(250deg)}}
.hidden-hatch::before{
  content:"";position:absolute;left:50%;top:50%;width:min(360px,70vw);height:min(220px,42vh);
  transform:translate(-50%,-50%) perspective(600px) rotateX(0);transform-origin:top;
  border:1px solid rgba(242,169,0,.3);background:linear-gradient(145deg,#111,#020202);box-shadow:0 0 60px rgba(0,0,0,.9);
  animation:hatchOpen 1.6s ease forwards;
}
.hidden-hatch b{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:11px;letter-spacing:.35em;color:var(--accent)}
@keyframes hatchOpen{45%{transform:translate(-50%,-50%) perspective(600px) rotateX(-8deg)}100%{transform:translate(-50%,-50%) perspective(600px) rotateX(-82deg);opacity:.2}}

.director-frame-v11::before,.director-frame-v11::after{
  content:"";position:fixed;left:0;right:0;height:13vh;z-index:31;pointer-events:none;
  background:repeating-linear-gradient(90deg,#111 0 18px,#050505 18px 36px);border-color:rgba(255,255,255,.13);border-style:solid;
}
.director-frame-v11::before{top:0;border-width:0 0 1px}.director-frame-v11::after{bottom:0;border-width:1px 0 0}

body.egg-lights-out-persist .stage{filter:brightness(.26)}
.lights-out-pulse{position:fixed;inset:0;z-index:35;pointer-events:none;background:#000;animation:lightsOutPulse 1.6s ease forwards}
@keyframes lightsOutPulse{0%,20%{opacity:1}55%{opacity:.2}100%{opacity:0}}
.sound-check-wave{display:grid;place-items:center}.sound-check-wave b{font-size:clamp(70px,18vw,240px);color:rgba(242,169,0,.18);animation:soundWave 1.4s ease}
.sound-check-wave i{position:absolute;width:20vmin;height:20vmin;border:2px solid rgba(242,169,0,.4);border-radius:50%;animation:soundWave 1.3s ease-out forwards}.sound-check-wave i:nth-child(2){animation-delay:.18s}.sound-check-wave i:nth-child(3){animation-delay:.34s}
@keyframes soundWave{from{transform:scale(.2);opacity:1}to{transform:scale(4);opacity:0}}

.persistent-tabs{display:flex;align-items:flex-start;justify-content:center;gap:3px;padding-top:7vh}.persistent-tabs i{width:18%;max-width:180px;height:36px;border:1px solid rgba(255,255,255,.16);border-radius:9px 9px 0 0;background:rgba(18,18,18,.92);box-shadow:inset 0 -2px rgba(242,169,0,.15)}

.number-tiles{position:fixed;inset:0;z-index:27;pointer-events:none;display:flex;align-items:center;justify-content:center;gap:4vw}.number-tiles span{font-size:clamp(90px,20vw,320px);font-weight:100;color:rgba(242,169,0,.08);text-shadow:0 0 40px rgba(242,169,0,.15)}
.black-cat-13 .cat{position:absolute;left:-14%;bottom:12%;font-size:clamp(42px,8vw,90px);color:#050505;text-shadow:0 0 1px #777;animation:blackCatCross 5s linear infinite}.black-cat-13>b{position:absolute;right:12%;top:12%;font-size:20vw;color:rgba(255,255,255,.025)}
@keyframes blackCatCross{to{left:108%}}

.clipboard-storm i{position:absolute;font-style:normal;font-size:clamp(24px,5vw,60px);left:calc((var(--i) * 13% + 7%) mod 92%);top:calc((var(--i) * 19% + 11%) mod 82%);color:rgba(242,169,0,.18)}
.clipboard-storm b,.printer-v11 b,.ghost-tab-v11 b{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:clamp(28px,8vw,92px);letter-spacing:.14em;color:rgba(255,255,255,.12)}
.printer-v11 div{position:absolute;left:50%;top:50%;width:min(360px,78vw);height:220px;transform:translate(-50%,-50%);border:1px solid rgba(255,255,255,.18);background:#0a0a0a}.printer-v11 div i{position:absolute;left:15%;right:15%;top:42%;height:85px;background:repeating-linear-gradient(#ddd 0 2px,#fff 2px 14px);animation:paperFeed 2s ease}.printer-v11 div span{position:absolute;top:12%;left:0;right:0;text-align:center;font-size:10px;letter-spacing:.22em;color:var(--accent)}
@keyframes paperFeed{to{transform:translateY(75px)}}

body.egg-neon-persist{background:radial-gradient(circle at center,#12001b,#000 66%)}body.egg-neon-persist :is(.clock-row,.live-title){text-shadow:-3px 0 #ff2bc2,3px 0 #00eaff,0 0 32px rgba(255,43,194,.42)}
.class-2014,.tick-tock,.mirror-session,.double-agent{display:grid;place-items:center}.class-2014 b,.tick-tock b,.mirror-session b,.double-agent b{font-size:clamp(48px,13vw,170px);color:rgba(242,169,0,.11);letter-spacing:.1em}.class-2014 span,.double-agent span{position:absolute;top:64%;font-size:10px;letter-spacing:.32em;color:rgba(255,255,255,.35)}

.direction-sweep-v11{position:fixed;inset:0;z-index:30;pointer-events:none}.direction-sweep-v11::before{content:"";position:absolute;inset:20% 8%;border:1px solid rgba(242,169,0,.18);background:linear-gradient(var(--dir-angle,90deg),transparent,rgba(242,169,0,.12),transparent);animation:dirSweep 1s ease}
@keyframes dirSweep{from{opacity:0;transform:scale(.75)}50%{opacity:1}to{opacity:0;transform:scale(1.1)}}
.diagonal-hero i{position:absolute;left:8%;top:50%;width:120%;height:2px;background:var(--accent);transform:rotate(-35deg);box-shadow:0 0 22px var(--accent)}.diagonal-hero b,.press-drag-v11 b{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);letter-spacing:.3em;color:rgba(255,255,255,.5)}

.across-aisle-v11 b,.two-one-four-knock,.staccato-v11,.sync-archive,.pi-universe,.meaning-life-v11,.insert-coin,
.portal-cake-v11,.finish-him-v11,.round-two-v11,.click-me-v11,.skip-intro-v11,.boss-battle-v11,.egg-404-v11,
.credits-roll-v11{display:grid;place-items:center;text-align:center}
.across-aisle-v11 b{font-size:12vw;color:rgba(242,169,0,.1)}
.countdown-beat-label{display:grid;place-items:center}.countdown-beat-label b{font-size:clamp(18px,5vw,58px);letter-spacing:.24em;color:rgba(242,169,0,.7)}
.two-one-four-knock span{position:relative;display:inline-block;font-size:clamp(80px,20vw,260px);color:rgba(242,169,0,.12);margin:0 2vw;animation:knockPulse .7s ease-in-out infinite alternate}.two-one-four-knock span:nth-child(2){animation-delay:-.2s}.two-one-four-knock span:nth-child(3){animation-delay:-.4s}
@keyframes knockPulse{to{transform:scale(1.12);color:rgba(242,169,0,.3)}}
.staccato-v11 b{font-size:clamp(16px,4vw,52px);letter-spacing:.15em;color:rgba(255,255,255,.28)}
.sync-archive .a,.sync-archive .b{position:absolute;width:32vmin;height:48vmin;border:1px solid rgba(255,255,255,.12);top:25%;border-radius:3vmin}.sync-archive .a{left:12%}.sync-archive .b{right:12%}.sync-archive span{position:absolute;width:30%;height:2px;background:var(--accent);box-shadow:0 0 20px var(--accent)}

.slow-sos b{font-size:clamp(70px,14vw,190px);letter-spacing:.18em;color:rgba(255,50,50,.08)}.slow-sos i{animation:sosSlow 3.6s ease-in-out infinite!important}.slow-sos i:nth-of-type(2){animation-delay:-1.8s!important}@keyframes sosSlow{0%,18%{opacity:.9}30%,100%{opacity:.08}}
.pi-universe b{font-size:40vmin;color:rgba(255,255,255,.045)}.pi-universe span{position:absolute;width:90vw;overflow:hidden;white-space:nowrap;font-family:monospace;color:rgba(242,169,0,.2);letter-spacing:.15em}
.meaning-life-v11 b{font-size:42vmin;color:rgba(242,169,0,.07)}.meaning-life-v11 span{position:absolute;font-size:clamp(18px,4vw,48px);letter-spacing:.3em;color:rgba(255,255,255,.32)}.meaning-life-v11 i{position:absolute;right:8%;top:12%;font-size:11vw;opacity:.12}
.hello-world-terminal pre,.dialup-v11 pre{padding:22px 26px;border:1px solid rgba(100,255,140,.2);background:rgba(0,10,3,.84);font:14px/1.65 "Courier New",monospace;color:#7dff9c;box-shadow:0 20px 70px rgba(0,0,0,.7)}
.hello-world-terminal{display:grid;place-items:center}
.matrix-spoon-rain span{position:absolute;top:-10%;color:#49ff69;font:18px/1 monospace;text-shadow:0 0 8px #2cff55;animation:matrixFall linear infinite}.matrix-spoon-rain b{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-12deg);font-size:14vw;color:rgba(73,255,105,.06)}
@keyframes matrixFall{to{transform:translateY(120vh)}}

.balloon-letters{display:grid;place-items:center}.balloon-letters div{display:flex;font-size:clamp(54px,11vw,150px);letter-spacing:-.08em;animation:balloonLetters 5s ease-in-out infinite}.balloon-letters i{position:absolute;left:calc(21% + var(--i)*7.5%);top:22%;width:28px;height:36px;border-radius:50%;background:rgba(242,169,0,.18);border:1px solid rgba(242,169,0,.45);animation:balloonFloat calc(3.2s + var(--i)*.15s) ease-in-out infinite}.balloon-letters i::after{content:"";position:absolute;left:50%;top:100%;height:24vh;border-left:1px solid rgba(255,255,255,.14)}
@keyframes balloonLetters{50%{transform:translateY(-5vh)}}@keyframes balloonFloat{50%{transform:translateY(-4vh) rotate(4deg)}}
body.egg-down-thud .stage{animation:downThud 1s cubic-bezier(.7,0,.2,1)}@keyframes downThud{0%{transform:translateY(-20vh)}65%{transform:translateY(4vh)}78%{transform:translateY(-1.5vh)}100%{transform:none}}
.down-thud-dust i{position:absolute;bottom:5%;left:50%;width:7px;height:7px;background:#aaa;border-radius:50%;animation:dustPop 1.4s ease-out forwards}@keyframes dustPop{to{transform:translate(calc((var(--r, .5) - .5)*80vw),-18vh);opacity:0}}

.doom-god-hud{position:fixed;left:3%;bottom:4%;z-index:32;font-family:monospace;color:#ffdb55;pointer-events:none}.doom-god-hud b{font-size:26px}.doom-god-hud em{display:block;font-style:normal;margin-top:5px}.insert-coin b{font-size:clamp(30px,7vw,92px);letter-spacing:.2em;animation:coinBlink 1s steps(1) infinite}.insert-coin span{position:absolute;top:62%;font-family:monospace;color:var(--accent)}@keyframes coinBlink{50%{opacity:.15}}
.portal-cake-v11 .portal{position:absolute;width:34vmin;height:60vmin;border-radius:50%;border:8px solid #26aaff;box-shadow:0 0 36px #26aaff}.portal-cake-v11 b{font-size:9vw;z-index:2}.portal-cake-v11 span{position:absolute;top:70%;font-size:12px;letter-spacing:.24em;color:rgba(255,255,255,.45)}
.snake-slither-v11 i{position:absolute;top:55%;left:-8%;width:18px;height:18px;border-radius:50%;background:#7dff69;box-shadow:0 0 12px rgba(125,255,105,.3);animation:slither 5.5s linear infinite;animation-delay:calc(var(--i)*-.08s)}.snake-slither-v11 b{position:absolute;right:8%;top:45%;font-size:80px;color:rgba(255,255,255,.18)}@keyframes slither{to{left:108%;top:calc(50% + sin(var(--i))*10%)}}

body.egg-blue-flame-clock :is(.clock-row,.live-title){color:#dff5ff;text-shadow:0 0 8px #4ab7ff,0 -5px 18px #197dff,0 -16px 36px rgba(0,105,255,.55);animation:blueFlame 1.3s ease-in-out infinite alternate}@keyframes blueFlame{to{text-shadow:0 0 10px #fff,0 -8px 22px #45baff,0 -22px 48px rgba(0,80,255,.75)}}
.cow-level-v11 i{position:absolute;left:calc(8% + var(--i)*10%);top:calc(18% + (var(--i) % 3)*24%);font-style:normal;font-size:8vw;color:rgba(255,255,255,.08);animation:cowBob 2s ease-in-out infinite alternate;animation-delay:calc(var(--i)*-.17s)}.cow-level-v11 b{position:absolute;left:50%;bottom:8%;transform:translateX(-50%);white-space:nowrap;letter-spacing:.25em;color:rgba(242,169,0,.35)}@keyframes cowBob{to{transform:translateY(-18px) rotate(8deg)}}
.leeroy-charge-v11 b{position:absolute;left:-55%;top:45%;font-size:clamp(35px,9vw,120px);white-space:nowrap;color:#fff;animation:leeroyRun 2s cubic-bezier(.3,.7,.2,1) forwards}.leeroy-charge-v11 i{position:absolute;left:0;right:0;top:57%;height:2px;background:linear-gradient(90deg,transparent,var(--accent),transparent)}@keyframes leeroyRun{to{left:105%}}

.winter-storm-v11 i{position:absolute;top:-8%;width:var(--s);height:var(--s);border-radius:50%;background:#e9f7ff;box-shadow:0 0 6px #dff4ff;animation:snowFall linear infinite}@keyframes snowFall{to{transform:translate(7vw,118vh) rotate(1turn)}}body.egg-winter-v11 .stage{filter:saturate(.6) brightness(.9)}
.gandalf-barrier-v11 .barrier{position:absolute;left:7%;right:7%;bottom:20%;height:4px;background:#fff3c4;box-shadow:0 0 22px #ffca55,0 0 80px #ff8a00}.gandalf-barrier-v11 b{position:absolute;left:50%;bottom:10%;transform:translateX(-50%);font-size:clamp(22px,5vw,62px);white-space:nowrap;letter-spacing:.12em;color:#fff3d0;text-shadow:0 0 18px #ff9d2e}
.phone-home-v11 .moon{position:absolute;right:12%;top:12%;width:24vmin;height:24vmin;border-radius:50%;background:#ddd;box-shadow:0 0 60px rgba(255,255,255,.25)}.phone-home-v11 .bike{position:absolute;left:-20%;top:46%;font-style:normal;font-size:8vmin;animation:bikeHome 5s linear infinite}.phone-home-v11 b{position:absolute;left:8%;bottom:9%;letter-spacing:.3em;color:rgba(255,255,255,.32)}@keyframes bikeHome{to{left:112%;top:24%}}
.raptor-v11 .eye{position:absolute;right:13%;top:24%;width:20vmin;height:8vmin;border-radius:50%;background:radial-gradient(ellipse,#111 0 10%,#e9b749 12% 38%,#17220c 42% 58%,transparent 62%);transform:rotate(-8deg);filter:drop-shadow(0 0 20px rgba(214,179,70,.2))}.raptor-v11 .claw{position:absolute;width:35vmin;height:2px;background:#ddd;transform:rotate(-42deg);left:12%;top:52%;box-shadow:0 10px #aaa,0 20px #888}.raptor-v11 b{position:absolute;right:10%;bottom:10%;letter-spacing:.25em;color:rgba(255,255,255,.35)}
.finish-him-v11 b,.round-two-v11 b{font-size:clamp(55px,13vw,190px);letter-spacing:.06em;color:#8d0808;text-shadow:0 2px #ff3535,0 0 35px rgba(255,0,0,.3)}.finish-him-v11 span,.round-two-v11 span{position:absolute;top:66%;font-size:13px;letter-spacing:.4em;color:rgba(255,255,255,.35)}

body.egg-mushroom-stretch :is(.clock-row,.live-title){transform-origin:bottom center;animation:mushroomStretch 1.8s ease-in-out infinite alternate}@keyframes mushroomStretch{to{transform:scaleY(1.9) translateY(-2%)}}
body.egg-party-persist .stage{filter:saturate(1.25)}
.firework-bursts i{position:absolute;left:calc(10% + var(--i)*11%);top:calc(12% + (var(--i) % 3)*18%);width:7px;height:7px;border-radius:50%;box-shadow:0 -42px #f2a900,30px -30px #fff,42px 0 #f2a900,30px 30px #fff,0 42px #f2a900,-30px 30px #fff,-42px 0 #f2a900,-30px -30px #fff;animation:fireworkPop 1.4s ease-out forwards;animation-delay:calc(var(--i)*.12s)}@keyframes fireworkPop{from{transform:scale(.05);opacity:1}to{transform:scale(1.4);opacity:0}}
.pod-bay-v11 .door{position:absolute;top:0;bottom:0;width:50%;background:linear-gradient(90deg,#111,#353535 80%,#111);transition:transform 2s ease}.pod-bay-v11 .left{left:0;border-right:2px solid #9b1919}.pod-bay-v11 .right{right:0;border-left:2px solid #9b1919}.pod-bay-v11 b,.pod-bay-v11 span{position:absolute;left:50%;transform:translateX(-50%);z-index:2;text-align:center}.pod-bay-v11 b{top:44%;font-size:clamp(24px,6vw,70px);color:#d01e1e}.pod-bay-v11 span{top:55%;font-size:12px;letter-spacing:.18em;color:#ddd}

.interactive-remote{pointer-events:auto!important;display:grid;place-items:center}.interactive-remote>div{display:grid;grid-template-columns:repeat(2,minmax(90px,140px));gap:10px;padding:24px;border:1px solid rgba(255,255,255,.2);background:rgba(7,7,7,.94);box-shadow:0 24px 80px #000;border-radius:18px}.interactive-remote b{grid-column:1/-1;text-align:center;margin-bottom:10px;letter-spacing:.25em;color:var(--accent)}.interactive-remote button{padding:12px;border:1px solid rgba(255,255,255,.14);background:#111;color:#eee;border-radius:8px;cursor:pointer}.interactive-remote button:hover{border-color:var(--accent)}
body.remote-flip .stage{transform:rotateY(180deg)}
.dialup-v11{display:grid;place-items:center}.dialup-v11 b{position:absolute;bottom:14%;font-family:monospace;letter-spacing:.25em;color:rgba(255,255,255,.24)}
.click-me-v11 b{font-size:clamp(30px,8vw,100px);letter-spacing:.12em}.click-me-v11 span{position:absolute;top:62%;font-size:10px;letter-spacing:.24em;color:rgba(255,255,255,.35)}
.popcorn-v11 i{position:absolute;bottom:-5%;font-style:normal;color:#f5df9a;font-size:18px;animation:popcornPop calc(2.2s + (var(--i)%7)*.15s) ease-in infinite;animation-delay:calc(var(--i)*-.13s)}@keyframes popcornPop{0%{transform:translateY(0) rotate(0);opacity:0}15%{opacity:1}75%{transform:translateY(-90vh) rotate(520deg)}100%{transform:translateY(-105vh) rotate(620deg);opacity:0}}

/* Windows 95 whole-page takeover. */
body.egg-win95-persist{--bg:#008080;--fg:#000;--accent:#000;background:#008080;font-family:"MS Sans Serif",Tahoma,Arial,sans-serif;color:#000}body.egg-win95-persist::after{content:"Start   Plex Launch";position:fixed;left:0;right:0;bottom:0;height:32px;z-index:45;padding:7px 10px;background:#c0c0c0;border-top:2px solid #fff;box-shadow:inset 0 -2px #555;color:#000;font-size:12px}body.egg-win95-persist :is(.countdown-view,.live-content){padding:26px;background:#c0c0c0;border:2px solid;border-color:#fff #444 #444 #fff;box-shadow:8px 8px rgba(0,0,0,.25)}body.egg-win95-persist :is(.clock-row,.live-title),body.egg-win95-persist .movie-pun{color:#000;text-shadow:none}

.red-pill-reality,.blue-pill-dream{position:fixed;left:50%;top:50%;z-index:34;transform:translate(-50%,-50%);width:min(420px,82vw);padding:28px;text-align:center;border:1px solid rgba(255,255,255,.2);background:rgba(0,0,0,.88)}.red-pill-reality b{color:#ff4545}.blue-pill-dream b{color:#51a8ff}.red-pill-reality i,.blue-pill-dream i{display:block;width:80px;height:32px;margin:18px auto;border-radius:999px;background:currentColor;box-shadow:0 0 28px currentColor}.red-pill-reality span,.blue-pill-dream span{font-size:10px;letter-spacing:.3em;color:#aaa}
.force-v11 .saber{position:absolute;left:12%;top:50%;width:70%;height:5px;background:#58b7ff;box-shadow:0 0 14px #58b7ff,0 0 45px #167fff;transform-origin:left;animation:saberIgnite 1.2s ease forwards}.force-v11 b{position:absolute;left:50%;bottom:12%;transform:translateX(-50%);letter-spacing:.28em;color:rgba(150,210,255,.55)}@keyframes saberIgnite{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.father-no-v11 .saber{position:absolute;left:7%;top:18%;bottom:18%;width:5px;background:#ff2b2b;box-shadow:0 0 16px #f00,0 0 55px #f00}.father-no-v11 .no-stream{position:absolute;left:14%;right:0;top:0;bottom:0;overflow:hidden}.father-no-v11 .no-stream span{display:block;font-size:clamp(24px,7vw,88px);font-weight:900;color:rgba(255,30,30,.1);white-space:nowrap;animation:noStream 9s linear forwards}@keyframes noStream{from{transform:translateX(100%)}to{transform:translateX(-120%)}}
.johnny-door-v11 .door{position:absolute;left:20%;right:20%;top:8%;bottom:8%;background:#26170e;border:16px solid #4b2d19}.johnny-door-v11 .crack{position:absolute;left:50%;top:20%;width:4px;height:58%;background:#000;box-shadow:0 0 25px 8px #000;animation:doorCrack 2s ease-in-out infinite alternate}.johnny-door-v11 b{position:absolute;left:52%;top:44%;font-size:clamp(30px,8vw,90px);color:#ddd;text-shadow:0 4px #000}.johnny-door-v11 span{position:absolute;left:48%;top:33%;font-size:70px;color:#ddd}@keyframes doorCrack{to{width:70px}}
body.egg-ill-be-back-now :is(.countdown-view,.live-content){animation:illBeBack 6.3s cubic-bezier(.7,0,.15,1)}@keyframes illBeBack{0%{transform:translateX(0)}20%{transform:translateX(130vw)}48%{transform:translateX(130vw)}100%{transform:translateX(0)}}
body.egg-crt-persist::after{content:"";position:fixed;inset:0;z-index:38;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(0,0,0,.36) 0 2px,transparent 2px 4px);border-radius:5%/3%;box-shadow:inset 0 0 120px #000}body.egg-crt-persist .stage{filter:contrast(1.15) saturate(.75);transform:perspective(900px) rotateX(.4deg)}
body.egg-page-snap-corner :is(.countdown-view,.live-content){transform:scale(.62) translate(28vw,26vh);transform-origin:center;transition:transform .7s var(--ease)}

.skip-intro-v11 div{width:min(620px,80vw);height:8px;border:1px solid rgba(255,255,255,.2)}.skip-intro-v11 div i{display:block;height:100%;width:72%;background:var(--accent);animation:skipBar 1.3s ease forwards}.skip-intro-v11 b{font-size:clamp(26px,6vw,72px);letter-spacing:.16em}.skip-intro-v11 span{position:absolute;top:62%;font-family:monospace;color:#777}@keyframes skipBar{to{width:100%}}
.boss-battle-v11 b{position:absolute;top:22%;font-size:clamp(38px,9vw,110px);letter-spacing:.12em}.boss-battle-v11 div{position:absolute;top:52%;width:min(700px,78vw);height:24px;border:2px solid #fff;padding:3px}.boss-battle-v11 div i{display:block;width:100%;height:100%;background:#b20f16;animation:bossHp 5s steps(7) infinite alternate}.boss-battle-v11 span{position:absolute;top:60%;font-family:monospace}@keyframes bossHp{to{width:14%}}
.dvd-corner-stamp i{position:absolute;right:3%;bottom:3%;width:90px;height:90px;border:2px solid var(--accent);border-radius:50%;box-shadow:0 0 30px rgba(242,169,0,.4);animation:dvdStamp .8s ease infinite alternate}.dvd-corner-stamp span{position:absolute;right:3%;bottom:14%;letter-spacing:.22em;font-size:9px;color:#fff}.egg-dvd-fanfare .stage{animation:dvdFanfare .55s ease 3}@keyframes dvdFanfare{50%{filter:brightness(2);transform:scale(1.015)}}
body.egg-matrix-first-persist #days{position:relative}body.egg-matrix-first-persist #days::before{content:"▰";position:absolute;left:-.08em;top:-.62em;font-size:.55em;color:#050505;text-shadow:0 0 2px #444;transform:rotate(-4deg)}body.egg-matrix-first-persist #days::after{content:"● ●";position:absolute;left:.02em;top:.12em;font-size:.18em;letter-spacing:.2em;color:#050505;text-shadow:0 0 1px #888}
body.egg-gravity-swirl-persist :is(.clock-row,.live-title){animation:gravitySwirl 6s ease-in-out infinite}@keyframes gravitySwirl{0%,100%{transform:rotate(0) scale(1)}35%{transform:rotate(-3deg) scale(.94)}70%{transform:rotate(3deg) scale(1.04)}}
.particle-accelerator-v11 i{position:absolute;top:50%;width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:0 0 25px 9px #46b5ff}.particle-accelerator-v11 i:first-child{left:-5%;animation:particleLeft 1.5s ease-in forwards}.particle-accelerator-v11 i:nth-child(2){right:-5%;animation:particleRight 1.5s ease-in forwards}.particle-accelerator-v11 b{position:absolute;left:50%;top:50%;width:4px;height:4px;box-shadow:0 0 80px 50px rgba(255,255,255,.65);opacity:0;animation:particleFlash 1.9s ease forwards}@keyframes particleLeft{to{left:50%}}@keyframes particleRight{to{right:50%}}@keyframes particleFlash{70%{opacity:0}78%{opacity:1}100%{opacity:0}}
.figure-eight-v11 b{font-size:60vmin;color:rgba(242,169,0,.055);animation:figureEightPulse 3s ease-in-out infinite}@keyframes figureEightPulse{50%{transform:rotate(7deg) scale(1.08);color:rgba(242,169,0,.13)}}
.ceiling-fan-v11{transform-origin:50% 12%}.ceiling-fan-v11 i{position:absolute;left:50%;top:12%;width:32vmin;height:3vmin;background:linear-gradient(90deg,transparent,rgba(255,255,255,.18));transform-origin:left center;animation:fanSpin 1.2s linear infinite}.ceiling-fan-v11 i:nth-child(2){transform:rotate(90deg)}.ceiling-fan-v11 i:nth-child(3){transform:rotate(180deg)}.ceiling-fan-v11 i:nth-child(4){transform:rotate(270deg)}.ceiling-fan-v11 b{position:absolute;left:50%;top:12%;width:6vmin;height:6vmin;border-radius:50%;background:#222;transform:translate(-50%,-50%)}@keyframes fanSpin{to{rotate:1turn}}

.one-pixel-target{width:5px;height:5px;background:#171717;opacity:.13;border-radius:1px;transition:opacity .08s,box-shadow .08s}.one-pixel-target.flicker{opacity:.9;background:#f2a900;box-shadow:0 0 10px 3px rgba(242,169,0,.55)}.one-pixel-target.caught{opacity:1;background:#fff;box-shadow:0 0 24px 9px #f2a900}.wrong-pixel-reveal{display:grid;place-items:center}.wrong-pixel-reveal b{font-size:clamp(24px,7vw,80px);letter-spacing:.25em;color:rgba(242,169,0,.5)}
@media(pointer:coarse){.one-pixel-target{width:10px;height:10px;opacity:.09}}
.egg-404-v11 b{font-size:45vmin;color:rgba(255,255,255,.035)}.egg-404-v11 span{position:absolute;font-size:clamp(18px,5vw,58px);letter-spacing:.22em;color:rgba(255,255,255,.28)}
body.egg-time-glitch-v11 :is(.clock-row,.live-title){animation:timeGlitch .45s steps(2,end) infinite;text-shadow:-8px 0 rgba(255,0,70,.25),8px 0 rgba(0,190,255,.25)}@keyframes timeGlitch{25%{transform:translateX(-4px) skewX(-4deg)}50%{transform:translateX(7px)}75%{transform:translateX(-2px) skewX(6deg)}}.time-glitch-label,.admin-denied-v11{display:grid;place-items:center}.time-glitch-label b,.admin-denied-v11 b{font-size:clamp(34px,9vw,110px);letter-spacing:.2em;color:rgba(255,255,255,.12)}.admin-denied-v11 span{position:absolute;top:58%;color:#e23b3b;letter-spacing:.32em}
.credits-roll-v11 div{animation:creditsRise 12s linear infinite}.credits-roll-v11 b,.credits-roll-v11 span,.credits-roll-v11 small,.credits-roll-v11 em{display:block;margin:25px;font-style:normal;text-align:center;letter-spacing:.28em}.credits-roll-v11 b{font-size:clamp(30px,7vw,84px)}.credits-roll-v11 span{color:var(--accent)}@keyframes creditsRise{from{transform:translateY(65vh)}to{transform:translateY(-75vh)}}

/* Purpose-built Secret Menu puzzle pieces. */
.secret-puzzle-piece{
  position:fixed;z-index:58;width:34px;height:34px;padding:0;border:0;background:transparent;
  transform:translate(-50%,-50%);cursor:grab;touch-action:none;opacity:.16;transition:opacity .2s,filter .2s,transform .2s;
}
.secret-puzzle-piece:hover,.secret-puzzle-piece.dragging{opacity:.72;filter:drop-shadow(0 0 8px rgba(242,169,0,.35));transform:translate(-50%,-50%) scale(1.12)}
.secret-puzzle-piece i{display:block;width:100%;height:100%;border:1px solid rgba(242,169,0,.75);background:rgba(242,169,0,.08)}
.secret-puzzle-piece.piece-0 i{clip-path:polygon(0 0,100% 0,100% 25%,25% 25%,25% 100%,0 100%)}
.secret-puzzle-piece.piece-1 i{clip-path:polygon(0 0,100% 0,100% 100%,75% 100%,75% 25%,0 25%)}
.secret-puzzle-piece.piece-2 i{clip-path:polygon(75% 0,100% 0,100% 100%,0 100%,0 75%,75% 75%)}
.secret-puzzle-piece.piece-3 i{clip-path:polygon(0 0,25% 0,25% 75%,100% 75%,100% 100%,0 100%)}
.secret-puzzle-piece.placed{opacity:.7;filter:drop-shadow(0 0 10px rgba(242,169,0,.5))}

/* Games / secret utilities. */
.plex-os-exit{position:absolute;right:18px;top:18px;z-index:3;padding:8px 12px;border:1px solid rgba(255,255,255,.2);background:#111;color:#ddd;cursor:pointer}
.doom-challenge.doom-ascii-v11{background:#020202;color:#79ff78;font-family:"Courier New",monospace;cursor:crosshair;overflow:hidden}.doom-ascii-v11 .doom-hud{position:absolute;left:4%;right:4%;top:4%;display:flex;justify-content:space-between;font-size:12px;letter-spacing:.16em;z-index:3}.doom-ascii-v11 .doom-view{position:absolute;inset:10% 3% 17%;overflow:hidden;border:1px solid rgba(121,255,120,.16);background:radial-gradient(circle at 50% 60%,rgba(0,120,0,.08),#000 70%)}.doom-ascii-v11 .doom-view pre{position:absolute;inset:0;margin:0;display:grid;place-items:center;white-space:pre;text-align:center;font-size:clamp(9px,1.6vw,22px);line-height:1;color:rgba(121,255,120,.23)}.doom-ascii-v11 .doom-enemy{position:absolute;transform:translate(-50%,-50%);font-size:clamp(22px,5vw,70px);white-space:pre;color:#aaff95;text-shadow:0 0 10px rgba(80,255,80,.5);user-select:none}.doom-ascii-v11 .doom-enemy.hit{animation:doomHit .2s ease forwards}@keyframes doomHit{to{transform:translate(-50%,-50%) scale(1.8);opacity:0}}.doom-ascii-v11 .doom-gun{position:absolute;right:4%;bottom:2%;font-size:clamp(50px,12vw,150px);transform:rotate(-10deg);color:#8cff83;text-shadow:0 0 20px rgba(100,255,100,.25);pointer-events:none}.doom-ascii-v11 .doom-crosshair{position:absolute;width:20px;height:20px;border:1px solid #7fff78;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none}.doom-ascii-v11 .doom-close{position:absolute;right:3%;top:3%;z-index:5;background:none;border:1px solid rgba(121,255,120,.25);color:#79ff78;padding:7px 10px;cursor:pointer}

.snake-v11{display:grid;place-items:center;background:rgba(0,0,0,.96)}.snake-v11 .snake-hud{position:absolute;left:50%;top:7%;width:min(760px,90vw);transform:translateX(-50%);display:flex;align-items:center;gap:18px;font-family:monospace;color:#9aff8b;letter-spacing:.12em}.snake-v11 .snake-hud span{flex:1;text-align:center;font-size:10px;color:rgba(154,255,139,.5)}.snake-v11 .snake-hud button{border:1px solid rgba(154,255,139,.25);background:#050505;color:#9aff8b;width:34px;height:30px;cursor:pointer}.snake-v11 .snake-board{position:relative;width:min(760px,90vw);aspect-ratio:14/9;border:1px solid rgba(154,255,139,.22);background:linear-gradient(rgba(154,255,139,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(154,255,139,.035) 1px,transparent 1px),#010501;background-size:calc(100%/14) calc(100%/9);overflow:hidden;touch-action:none}.snake-v11 .snake-key,.snake-v11 .snake-exit,.snake-v11 .snake-segments i{position:absolute;transform:translate(-50%,-50%)}.snake-v11 .snake-key{font-style:normal;color:#ffd84b;font-size:clamp(16px,3vw,28px);text-shadow:0 0 15px #ffd84b;animation:keyPulse 1s ease-in-out infinite alternate}.snake-v11 .snake-key.collected{opacity:0}.snake-v11 .snake-exit{font-style:normal;font:700 10px/1 monospace;letter-spacing:.12em;padding:5px;border:1px solid #555;color:#555}.snake-v11 .snake-exit.armed{color:#8fff79;border-color:#8fff79;box-shadow:0 0 12px rgba(100,255,100,.2)}.snake-v11 .snake-segments i{width:calc(100%/14*.62);aspect-ratio:1;border-radius:28%;background:#4bbd42;box-shadow:0 0 8px rgba(70,220,70,.2);transition:left .1s linear,top .1s linear}.snake-v11 .snake-segments .head{background:#9aff8b;box-shadow:0 0 14px rgba(100,255,100,.55)}.snake-v11 .snake-help{position:absolute;left:50%;bottom:2%;transform:translateX(-50%);font:9px monospace;letter-spacing:.2em;color:rgba(154,255,139,.3)}.snake-v11.got-key .snake-board{box-shadow:0 0 35px rgba(255,216,75,.08)}.snake-v11.won .snake-board{animation:snakeWin .7s ease}.snake-v11.won::after{content:"EXIT UNLOCKED";position:absolute;font:700 24px monospace;letter-spacing:.2em;color:#9aff8b}@keyframes keyPulse{to{transform:translate(-50%,-50%) scale(1.25)}}@keyframes snakeWin{50%{filter:brightness(2)}}

@media(max-width:640px){
  .snake-v11 .snake-hud{top:max(58px,calc(env(safe-area-inset-top) + 42px));width:94vw;gap:8px}.snake-v11 .snake-hud span{font-size:8px}.snake-v11 .snake-board{width:94vw}
  .interactive-remote>div{grid-template-columns:repeat(2,minmax(80px,1fr));width:min(330px,88vw)}
  .gandalf-barrier-v11 b,.cow-level-v11 b{white-space:normal;width:88vw;text-align:center}
  body.egg-dramatic-zoom-persist .stage{transform:scale(1.12)}
}

/* ========================================================================
   v1.2 SECOND-PASS REVIEW
   Global persistence, placement and revised Easter Egg presentation.
   ======================================================================== */

/* Remote discoveries update the live counter/archive without throwing a
   discovery card on unrelated devices. Give the counter a restrained pulse. */
body.remote-counter-pulse .egg-button{
  animation:v12RemoteCounter .85s cubic-bezier(.2,.8,.2,1);
}
@keyframes v12RemoteCounter{
  0%,100%{box-shadow:0 0 0 rgba(242,169,0,0);transform:scale(1)}
  45%{box-shadow:0 0 0 7px rgba(242,169,0,.10),0 0 28px rgba(242,169,0,.24);transform:scale(1.05)}
}

/* Discovery UI must sit over Secret Menu, Plex OS and all gameplay layers. */
.toast{z-index:1200!important}

/* Context menu belongs at the actual right-click location. */
.fake-context{
  transform:none!important;
  margin:8px 0 0 8px;
  max-width:min(280px,calc(100vw - 24px));
}

/* #002 — a real hatch rather than generic text. */
.hidden-hatch-v12{position:fixed;inset:0;z-index:74;pointer-events:none;overflow:hidden;perspective:900px}
.hidden-hatch-v12 .hatch{
  position:absolute;left:50%;top:50%;width:min(360px,72vw);aspect-ratio:1.65;
  transform:translate(-50%,-50%);transform-origin:top center;
  border:4px solid #302719;border-radius:7px;
  background:repeating-linear-gradient(90deg,#1c160f 0 22px,#2c2115 22px 25px);
  box-shadow:0 18px 70px #000,inset 0 0 0 2px #0d0b08;
  animation:v12HatchOpen 2.2s cubic-bezier(.2,.8,.2,1) forwards;
}
.hidden-hatch-v12 .hatch::after{content:"";position:absolute;inset:8%;border:1px solid rgba(242,169,0,.28);box-shadow:inset 0 0 35px #000}
.hidden-hatch-v12 .hatch i{position:absolute;top:12%;bottom:12%;width:12px;background:#090909;border:1px solid #4d4335}
.hidden-hatch-v12 .hatch i:first-child{left:15%}.hidden-hatch-v12 .hatch i:nth-child(2){right:15%}
.hidden-hatch-v12 .hatch b{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:clamp(32px,8vw,70px);font-weight:200;color:rgba(242,169,0,.7)}
.hidden-hatch-v12>span{position:absolute;left:50%;top:58%;width:min(330px,66vw);height:22vh;transform:translateX(-50%);background:radial-gradient(ellipse,#f2a90022,transparent 70%);filter:blur(10px)}
@keyframes v12HatchOpen{0%,25%{transform:translate(-50%,-50%) rotateX(0)}75%,100%{transform:translate(-50%,-50%) rotateX(-86deg);opacity:.1}}

/* #004 — persistent clock hand that keeps ticking until RESET EFFECTS. */
.second-hand-persist{display:grid;place-items:center}
.second-hand-persist .dial{position:relative;width:min(58vmin,470px);aspect-ratio:1;border:1px solid rgba(255,255,255,.09);border-radius:50%;box-shadow:inset 0 0 70px #000,0 0 45px rgba(242,169,0,.06)}
.second-hand-persist .dial::after{content:"";position:absolute;left:50%;top:50%;width:9px;height:9px;transform:translate(-50%,-50%);border-radius:50%;background:var(--accent);box-shadow:0 0 18px var(--accent)}
.second-hand-persist .dial i{position:absolute;left:50%;top:50%;width:2px;height:42%;background:linear-gradient(var(--accent),rgba(242,169,0,.12));transform-origin:50% 0;animation:v12SecondTick 60s steps(60,end) infinite;box-shadow:0 0 8px rgba(242,169,0,.5)}
.second-hand-persist .dial b{position:absolute;font:400 10px monospace;color:rgba(255,255,255,.28)}
.second-hand-persist .dial b:nth-of-type(1){left:50%;top:3%;transform:translateX(-50%)}
.second-hand-persist .dial b:nth-of-type(2){right:4%;top:50%;transform:translateY(-50%)}
.second-hand-persist .dial b:nth-of-type(3){left:50%;bottom:3%;transform:translateX(-50%)}
.second-hand-persist .dial b:nth-of-type(4){left:4%;top:50%;transform:translateY(-50%)}
@keyframes v12SecondTick{to{transform:rotate(360deg)}}

/* #013 — pulse originates at the sound control in the lower-left corner. */
.sound-check-wave-v12{position:fixed;inset:0;z-index:72;pointer-events:none;overflow:hidden}
.sound-check-wave-v12 i{position:absolute;left:max(41px,calc(env(safe-area-inset-left) + 19px));bottom:max(39px,calc(env(safe-area-inset-bottom) + 19px));width:28px;height:28px;border:2px solid rgba(242,169,0,.55);border-radius:50%;transform:translate(-50%,50%) scale(.15);animation:v12SoundPulse 2s ease-out forwards;animation-delay:calc(var(--i)*.09s)}
@keyframes v12SoundPulse{0%{opacity:.85;transform:translate(-50%,50%) scale(.15)}100%{opacity:0;transform:translate(-50%,50%) scale(16)}}

/* Distributed placement for the effects that were repeatedly colliding in the
   upper-left. These deliberately occupy different screen zones. */
.sesame-grand>b{position:absolute!important;left:72%!important;top:18%!important;transform:translate(-50%,-50%)!important;text-align:center}
.return-sender-v11>b{position:absolute!important;left:20%!important;top:76%!important;transform:translate(-50%,-50%)!important;text-align:center}
.caps-v11>b{position:absolute!important;left:80%!important;top:73%!important;transform:translate(-50%,-50%)!important;text-align:center}
.caps-v11>span{position:absolute!important;left:80%!important;top:79%!important;transform:translateX(-50%)!important}
.title-stare>b{position:absolute!important;left:17%!important;top:18%!important;transform:none!important}
.archive-214-v11>b{position:absolute!important;left:82%!important;top:20%!important;transform:translate(-50%,-50%)!important}
.refresh-modifier-v12>b{position:absolute;left:18%;bottom:16%;font-size:clamp(18px,4vw,46px);letter-spacing:.22em;color:rgba(255,255,255,.38)}
.refresh-modifier-v12>span{position:absolute;left:18%;bottom:11%;color:var(--accent);font:10px monospace;letter-spacing:.25em}
.refresh-modifier-v12>i{position:absolute;left:11%;bottom:12%;width:48px;height:48px;border:2px solid rgba(242,169,0,.35);border-left-color:transparent;border-radius:50%;animation:v12RefreshSpin 1.7s linear infinite}
@keyframes v12RefreshSpin{to{transform:rotate(360deg)}}

/* #032 — native cursor is hidden only while a translucent replacement tracks
   it, so it looks dimmed rather than disappearing. */
body.egg-low-cursor-persist,body.egg-low-cursor-persist *{cursor:none!important}
.dim-cursor-v12{position:fixed;z-index:1190;width:13px;height:13px;pointer-events:none;border:1px solid rgba(255,255,255,.28);border-radius:50%;background:rgba(255,255,255,.08);transform:translate(-2px,-2px);box-shadow:0 0 8px rgba(255,255,255,.05)}
.keyboard-only-hud-v12{position:fixed;inset:0;z-index:72;pointer-events:none}
.keyboard-only-hud-v12 b{position:absolute;right:7%;bottom:12%;font-size:clamp(16px,3vw,34px);letter-spacing:.25em;color:rgba(255,255,255,.28)}
.keyboard-only-hud-v12 span{position:absolute;right:7%;bottom:8%;font:10px monospace;letter-spacing:.2em;color:rgba(242,169,0,.5)}

/* #033 */
.tricksy-counter{transition:left .12s ease,top .12s ease,border-color .15s ease!important}

/* Replacement #042 */
.signature-required-v12 svg{position:absolute;left:8%;right:8%;top:26%;width:84%;height:48%;filter:drop-shadow(0 0 12px rgba(242,169,0,.28))}
.signature-required-v12 path{fill:none;stroke:var(--accent);stroke-width:5;stroke-linecap:round;stroke-dasharray:2500;stroke-dashoffset:2500;animation:v12Signature 2.2s ease forwards}
.signature-required-v12 b{position:absolute;right:8%;bottom:12%;font-size:clamp(13px,2vw,24px);letter-spacing:.26em;color:rgba(242,169,0,.6)}
@keyframes v12Signature{to{stroke-dashoffset:0}}

/* #055 */
.bottom-feeder-v12 .water{position:absolute;left:0;right:0;bottom:0;height:27%;background:linear-gradient(transparent,rgba(0,90,120,.16) 20%,rgba(0,110,150,.26));border-top:1px solid rgba(100,220,255,.2)}
.bottom-feeder-v12 .fish{position:absolute;bottom:7%;font:normal clamp(22px,4vw,46px) monospace;color:rgba(130,220,235,.6);animation:v12Fish 5s linear infinite}
.bottom-feeder-v12 .fish:nth-of-type(1){left:-15%}.bottom-feeder-v12 .fish:nth-of-type(2){left:-35%;bottom:15%;animation-delay:-1.7s}.bottom-feeder-v12 .fish:nth-of-type(3){left:-55%;bottom:21%;animation-delay:-3.2s}
.bottom-feeder-v12>b{position:absolute;left:50%;bottom:5%;transform:translateX(-50%);font-size:11px;letter-spacing:.28em;color:rgba(255,255,255,.35)}
@keyframes v12Fish{to{transform:translateX(135vw)}}

/* #061 */
.number-214-circuit-v12 svg{position:absolute;inset:15% 8%;width:84%;height:70%}.number-214-circuit-v12 path{fill:none;stroke:rgba(242,169,0,.28);stroke-width:3;stroke-dasharray:20 12;animation:v12Circuit 2s linear infinite}.number-214-circuit-v12 circle{fill:var(--accent);filter:drop-shadow(0 0 8px var(--accent))}.number-214-circuit-v12>b{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:clamp(72px,20vw,260px);font-weight:100;color:rgba(242,169,0,.16);text-shadow:0 0 35px rgba(242,169,0,.18)}
@keyframes v12Circuit{to{stroke-dashoffset:-64}}

/* #068 */
.big-screen-energy-v12 i{position:absolute;inset:4%;border:1px solid rgba(242,169,0,.09);animation:v12BigScreen 1.7s ease-out infinite}.big-screen-energy-v12 i:nth-child(2){inset:9%;animation-delay:-.55s}.big-screen-energy-v12 i:nth-child(3){inset:14%;animation-delay:-1.1s}.big-screen-energy-v12>b{position:absolute;right:6%;top:12%;font-size:11px;letter-spacing:.3em;color:rgba(242,169,0,.48)}
@keyframes v12BigScreen{50%{border-color:rgba(242,169,0,.35);box-shadow:inset 0 0 55px rgba(242,169,0,.04)}}

/* #074 */
.printer-status-v12{position:fixed;left:50%;bottom:max(34px,calc(env(safe-area-inset-bottom) + 24px));z-index:82;transform:translateX(-50%);min-width:min(420px,82vw);padding:14px 18px;border:1px solid rgba(255,255,255,.15);background:rgba(4,4,4,.92);box-shadow:0 12px 50px #000;text-align:center;pointer-events:none}
.printer-status-v12 b{font:700 11px monospace;letter-spacing:.18em;color:rgba(255,255,255,.72)}
.printer-status-v12 span{display:block;height:2px;margin-top:11px;background:linear-gradient(90deg,var(--accent) 0 65%,rgba(255,255,255,.08) 65%);animation:v12Printer 10s linear forwards}
.printer-status-v12.failed{border-color:rgba(255,70,70,.35)}.printer-status-v12.failed b{color:#ff7777}.printer-status-v12.flash-fail{opacity:.12}
@keyframes v12Printer{from{background-size:0 100%}to{background-size:100% 100%}}

/* #075 */
.reload-echo-v12 b{position:absolute;left:50%;top:50%;font-size:clamp(24px,7vw,90px);letter-spacing:.18em;color:rgba(255,255,255,.1)}
.reload-echo-v12 b:nth-child(1){transform:translate(-54%,-70%);opacity:.75}.reload-echo-v12 b:nth-child(2){transform:translate(-47%,-40%);opacity:.42}.reload-echo-v12 b:nth-child(3){transform:translate(-58%,-5%);opacity:.23}.reload-echo-v12 b:nth-child(4){transform:translate(-43%,28%);opacity:.11}.reload-echo-v12 span{position:absolute;right:9%;bottom:14%;font-size:clamp(30px,8vw,90px);color:rgba(242,169,0,.3)}

/* Replacement #107 */
.five-finger-v12 .palm{position:absolute;left:50%;top:53%;width:130px;height:150px;transform:translate(-50%,-50%);border:2px solid rgba(242,169,0,.32);border-radius:48% 48% 44% 44%;box-shadow:0 0 35px rgba(242,169,0,.08)}
.five-finger-v12>i{position:absolute;left:calc(50% - 53px + var(--n,0)*27px);top:24%;width:22px;height:145px;border:2px solid rgba(242,169,0,.32);border-radius:18px}
.five-finger-v12>i:nth-of-type(1){--n:0;top:30%;height:118px;transform:rotate(-14deg)}.five-finger-v12>i:nth-of-type(2){--n:1}.five-finger-v12>i:nth-of-type(3){--n:2;top:19%;height:168px}.five-finger-v12>i:nth-of-type(4){--n:3;top:23%;height:152px}.five-finger-v12>i:nth-of-type(5){--n:4;top:31%;height:115px;transform:rotate(12deg)}
.five-finger-v12>b{position:absolute;left:50%;bottom:9%;transform:translateX(-50%);font-size:11px;letter-spacing:.28em;color:rgba(242,169,0,.55)}

/* #113 */
.edge-latch-v12>i{position:absolute;left:0;top:50%;height:2px;width:100%;background:linear-gradient(90deg,var(--accent),rgba(242,169,0,.04));box-shadow:0 0 18px var(--accent);transform-origin:left;animation:v12EdgeLatch 1.3s ease forwards}.edge-latch-v12>b{position:absolute;right:5%;top:54%;font-size:10px;letter-spacing:.26em;color:rgba(255,255,255,.34)}@keyframes v12EdgeLatch{from{transform:scaleX(0)}to{transform:scaleX(1)}}

/* #120 — intentionally stays away from the central countdown. */
.sync-archive{display:block!important}.sync-archive .a,.sync-archive .b{top:auto!important;bottom:5%!important;width:16vmin!important;height:24vmin!important;min-width:74px;min-height:110px}.sync-archive .a{left:20%!important}.sync-archive .b{right:20%!important}.sync-archive span{left:35%;bottom:14%;top:auto!important}

/* #121 — actual no-signal takeover; title/timer vanish while controls remain. */
body.egg-static-persist .stage{opacity:0!important}
.static-v11{background:#080808!important;z-index:78!important}
.static-v11::before{content:"";position:absolute;inset:-30%;background-image:repeating-radial-gradient(circle at 17% 22%,#fff 0 1px,#000 1px 3px);background-size:7px 7px;opacity:.52;filter:contrast(180%);animation:v12StaticNoise .11s steps(2) infinite}
.static-v11::after{content:"NO SIGNAL";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);padding:18px 25px;background:#050505;border:1px solid rgba(255,255,255,.35);font:700 clamp(20px,5vw,54px) monospace;letter-spacing:.16em;color:#eee;box-shadow:0 0 45px #000}
.static-v11>*{display:none!important}
@keyframes v12StaticNoise{0%{transform:translate(0,0)}25%{transform:translate(3%,-2%)}50%{transform:translate(-2%,3%)}75%{transform:translate(1%,2%)}100%{transform:translate(-3%,-1%)}}

/* #126 — one continuous spiral path, no disconnected segments. */
.fibonacci-spiral-v12 svg{position:absolute;left:13%;top:10%;width:74%;height:76%;filter:drop-shadow(0 0 13px rgba(242,169,0,.2))}.fibonacci-spiral-v12 path{fill:none;stroke:rgba(242,169,0,.72);stroke-width:4;stroke-linecap:round;stroke-dasharray:3000;stroke-dashoffset:3000;animation:v12Fib 3.2s ease forwards}.fibonacci-spiral-v12>b{position:absolute;right:7%;bottom:10%;font:12px monospace;letter-spacing:.22em;color:rgba(255,255,255,.32)}@keyframes v12Fib{to{stroke-dashoffset:0}}

/* #131 */
.meaning-life-v12{background:radial-gradient(circle at 50% 48%,rgba(255,255,220,.48),rgba(255,230,125,.12) 22%,transparent 57%);animation:v12HolyLight 2.1s ease-in-out infinite alternate}.meaning-life-v12::before,.meaning-life-v12::after{content:"";position:absolute;left:50%;top:-15%;width:16%;height:85%;transform-origin:top;background:linear-gradient(rgba(255,255,230,.42),transparent);filter:blur(8px)}.meaning-life-v12::before{transform:translateX(-180%) rotate(22deg)}.meaning-life-v12::after{transform:translateX(80%) rotate(-19deg)}.meaning-life-v12 b{font-size:clamp(120px,28vw,360px)!important;color:rgba(255,255,230,.22)!important;text-shadow:0 0 70px rgba(255,245,190,.9)!important}@keyframes v12HolyLight{to{filter:brightness(1.45)}}

/* #132 */
.gigawatt-lightning-v12{background:radial-gradient(circle at center,rgba(150,210,255,.16),transparent 65%)}
.gigawatt-lightning-v12 i{position:absolute;left:calc(8% + var(--i)*13%);top:-10%;width:3px;height:112%;background:linear-gradient(#fff 0 8%,#dff5ff 20%,#fff 40%,#8ad8ff 70%,transparent);clip-path:polygon(40% 0,100% 0,55% 25%,95% 25%,35% 55%,70% 55%,0 100%,28% 62%,0 62%,48% 31%,12% 31%);filter:drop-shadow(0 0 7px #8fdcff) drop-shadow(0 0 16px #2a9fff);opacity:.13;animation:v12Lightning 3.6s steps(1) infinite;animation-delay:calc(var(--i)*-.47s)}
.gigawatt-lightning-v12>b{position:absolute;right:5%;bottom:8%;font-size:clamp(16px,4vw,50px);letter-spacing:.18em;color:#eefaff;text-shadow:0 0 12px #78ccff,0 0 30px #138aff}
body.egg-gigawatt-v12 .stage{filter:drop-shadow(0 0 20px rgba(140,210,255,.28))}
@keyframes v12Lightning{0%,87%,91%,100%{opacity:.05}88%,90%{opacity:.95}89%{opacity:.25}}

/* #133 */
.hello-world-terminal-v12{position:fixed;left:7%;bottom:8%;z-index:74;padding:12px 16px;background:#020402;border:1px solid rgba(100,255,100,.25);font:12px monospace;color:#79ff78;box-shadow:0 12px 40px #000}.hello-world-terminal-v12 b{letter-spacing:.1em}

/* #134 a denser digital field. */
.matrix-spoon-v11{opacity:.96}

/* #136 — actual timer floats; balloons remain above it. */
body.egg-balloon-stage-v12 :is(.countdown-view,.live-content){animation:v12FloatActual 5s ease-in-out infinite alternate}
.balloon-lift-v12{overflow:visible!important}.balloon-lift-v12 .balloons{position:absolute;left:50%;top:3%;width:min(720px,80vw);height:40%;transform:translateX(-50%)}
.balloon-lift-v12 .balloons i{position:absolute;left:calc(4% + var(--i)*7.5%);bottom:2%;width:clamp(22px,4vw,42px);height:clamp(30px,5.4vw,58px);border-radius:50% 50% 45% 45%;background:hsla(calc(var(--i)*31),72%,58%,.72);box-shadow:inset -5px -7px rgba(0,0,0,.14);animation:v12Balloon 3.8s ease-in-out infinite alternate;animation-delay:calc(var(--i)*-.17s)}
.balloon-lift-v12 .balloons i::after{content:"";position:absolute;left:50%;top:100%;width:1px;height:clamp(100px,18vh,180px);background:rgba(255,255,255,.28);transform-origin:top;transform:rotate(calc((var(--i) - 6)*2deg))}
@keyframes v12FloatActual{to{transform:translateY(-9vh)}}@keyframes v12Balloon{to{transform:translateY(-18px) rotate(3deg)}}

/* #137 */
body.egg-down-thud :is(.countdown-view,.live-content),body.egg-down-thud .live-content{animation:v12DropStage 1.2s cubic-bezier(.7,.02,.9,.2) forwards!important}
@keyframes v12DropStage{0%{transform:translateY(0)}78%{transform:translateY(calc(50vh - 75px))}88%{transform:translateY(calc(50vh - 62px))}100%{transform:translateY(calc(50vh - 68px))}}

/* #144 */
body.egg-inspect-persist::after{inset:30px!important;border-width:1px!important}

/* #145 — clean energy orb, no forward spike/line. */
.energy-ball-flight-v12{position:fixed;inset:0;z-index:76;pointer-events:none}.energy-ball-flight-v12 i{position:absolute;left:-12vmin;top:52%;width:10vmin;height:10vmin;min-width:54px;min-height:54px;border-radius:50%;background:radial-gradient(circle at 40% 40%,#fff 0 8%,#85eaff 20%,#2d77ff 48%,rgba(35,80,255,.2) 72%,transparent 75%);box-shadow:0 0 24px #56cfff,0 0 65px #174cff;animation:v12Hadouken 1.65s cubic-bezier(.15,.65,.18,1) forwards}
@keyframes v12Hadouken{to{left:112vw;transform:scale(1.25)}}

/* #147 */
.insert-coin{transform:translateY(7vh)}

/* #148 clickable cake. */
.portal-cake-v12{pointer-events:none!important}.portal-cake-v12 .cake{pointer-events:auto;cursor:pointer;border:0;background:transparent;font-size:clamp(80px,15vw,180px);filter:drop-shadow(0 15px 18px #000);transition:transform .15s ease}.portal-cake-v12 .cake:hover{transform:scale(1.06)}

/* #152 more glow. */
body.egg-blue-flame-clock :is(.clock-row,.live-title){text-shadow:0 0 8px #fff,0 0 22px #54c8ff,0 0 55px #147cff,0 0 95px #0062ff!important;filter:brightness(1.3)}

/* #153 CSS cows with readable silhouettes. */
.cow-level-v12 .cow{position:absolute;top:3%;width:68px;height:42px;border-radius:38% 45% 40% 35%;background:#ece7db;color:#151515;box-shadow:inset 16px 4px #161616,inset -7px -8px rgba(0,0,0,.12);animation:v12Cow 10s linear infinite}
.cow-level-v12 .cow::before{content:"";position:absolute;right:-18px;top:4px;width:25px;height:22px;border-radius:45%;background:#ece7db;box-shadow:inset 8px 0 #151515}.cow-level-v12 .cow::after{content:"";position:absolute;left:10px;top:35px;width:7px;height:26px;background:#ece7db;box-shadow:34px 0 #ece7db}
.cow-level-v12 .cow:nth-child(1){left:-12%;animation-delay:0s}.cow-level-v12 .cow:nth-child(2){left:-35%;animation-delay:-3.2s}.cow-level-v12 .cow:nth-child(3){left:-58%;animation-delay:-6.4s}
@keyframes v12Cow{to{transform:translateX(150vw)}}

/* #154 */
.leeroy-charge-v12>b{position:absolute;left:-120%;top:22%;white-space:nowrap;font-size:clamp(22px,5vw,68px);font-weight:900;letter-spacing:.09em;color:#fff;text-shadow:0 3px #000,0 0 18px var(--accent);animation:v12Leeroy 2.7s cubic-bezier(.1,.75,.3,1) forwards}.leeroy-charge-v12>i{display:none}@keyframes v12Leeroy{to{left:110%}}

/* #156 all flakes begin above the screen; JS uses only positive delays. */
.winter-storm-v11 i{top:-12%!important}

/* #159 */
.phone-ringing-v12 .phone{position:absolute;right:10%;top:58%;width:80px;height:140px;border:5px solid rgba(242,169,0,.7);border-radius:16px;transform:rotate(-8deg);animation:v12PhoneShake .13s linear infinite alternate;box-shadow:0 0 26px rgba(242,169,0,.15)}
.phone-ringing-v12 .phone::before{content:"";position:absolute;left:14px;right:14px;top:16px;height:56px;border:1px solid rgba(242,169,0,.45);background:#050505}.phone-ringing-v12 .phone i{position:absolute;left:50%;bottom:18px;width:16px;height:16px;transform:translateX(-50%);border:1px solid rgba(242,169,0,.6);border-radius:50%}.phone-ringing-v12 .ring{position:absolute;right:calc(10% - 35px);top:calc(58% + 10px);width:150px;height:150px;border:2px solid rgba(242,169,0,.24);border-radius:50%;animation:v12PhoneRing 1.4s ease-out infinite}.phone-ringing-v12 .r2{animation-delay:-.7s}.phone-ringing-v12>strong{position:absolute;right:7%;top:82%;font-size:10px;letter-spacing:.25em;color:rgba(255,255,255,.35)}
@keyframes v12PhoneShake{to{transform:rotate(8deg)}}@keyframes v12PhoneRing{to{transform:scale(1.9);opacity:0}}

/* #160 */
.raptor-teeth-v12 .teeth{position:absolute;left:0;right:0;height:22vh;background:repeating-linear-gradient(100deg,transparent 0 24px,#eee 25px 47px,transparent 48px 70px);filter:drop-shadow(0 5px 3px #000)}.raptor-teeth-v12 .top{top:0;clip-path:polygon(0 0,100% 0,100% 25%,0 100%);transform-origin:top;animation:v12JawTop 1.8s ease-in-out infinite alternate}.raptor-teeth-v12 .bottom{bottom:0;transform:rotate(180deg);clip-path:polygon(0 0,100% 0,100% 25%,0 100%);transform-origin:bottom;animation:v12JawBottom 1.8s ease-in-out infinite alternate}.raptor-teeth-v12>b{position:absolute;right:7%;top:48%;font-size:clamp(18px,4vw,50px);letter-spacing:.18em;color:rgba(255,255,255,.4)}@keyframes v12JawTop{to{transform:translateY(7vh)}}@keyframes v12JawBottom{to{transform:rotate(180deg) translateY(7vh)}}

/* Replacement #162 */
.game-over-v12{display:grid;place-items:center;text-align:center;background:rgba(40,0,0,.16)}.game-over-v12>b{font:900 clamp(42px,12vw,150px) monospace;letter-spacing:.08em;color:#c52828;text-shadow:5px 5px #220000}.game-over-v12>span{position:absolute;top:64%;font:14px monospace;letter-spacing:.2em;color:#ddd;animation:v12Blink 1s steps(1) infinite}.game-over-v12>i{position:absolute;inset:8%;border:1px solid rgba(190,30,30,.18)}@keyframes v12Blink{50%{opacity:.2}}

/* #166 thinner responsive portals. */
.portal-pair-scene .portal{width:clamp(28px,5vw,62px)!important;border-width:clamp(4px,.6vw,7px)!important}

/* #167 visual and hit target share the same small geometry. */
.hidden-block-target{width:18px!important;height:18px!important;opacity:.02!important;border:1px solid rgba(242,169,0,.08)!important;background:rgba(242,169,0,.03)!important}
.hidden-block-target:hover{opacity:.22!important}

/* #168 stays tall rather than oscillating between short/tall. */
body.egg-mushroom-stretch :is(.countdown-view,.live-content){transform:scaleY(1.38)!important;transition:transform .65s var(--ease)!important}

/* #170 actual radial fireworks. */
.firework-bursts-v12{position:fixed;inset:0;z-index:78;pointer-events:none;overflow:hidden}.firework-bursts-v12>i{position:absolute;left:calc(8% + (var(--i)%6)*17%);top:calc(10% + (var(--i)%3)*23%);width:4px;height:4px}.firework-bursts-v12>i:nth-child(n+7){transform:translate(7vw,18vh)}.firework-bursts-v12 b{position:absolute;left:0;top:0;width:3px;height:44px;background:linear-gradient(var(--accent),transparent);transform-origin:50% 0;animation:v12Firework 1.45s ease-out forwards;animation-delay:calc((var(--i)%4)*.28s);box-shadow:0 0 8px var(--accent)}
.firework-bursts-v12 b:nth-child(1){transform:rotate(0deg)}.firework-bursts-v12 b:nth-child(2){transform:rotate(45deg)}.firework-bursts-v12 b:nth-child(3){transform:rotate(90deg)}.firework-bursts-v12 b:nth-child(4){transform:rotate(135deg)}.firework-bursts-v12 b:nth-child(5){transform:rotate(180deg)}.firework-bursts-v12 b:nth-child(6){transform:rotate(225deg)}.firework-bursts-v12 b:nth-child(7){transform:rotate(270deg)}.firework-bursts-v12 b:nth-child(8){transform:rotate(315deg)}
@keyframes v12Firework{0%{height:0;opacity:1}55%{height:52px;opacity:1}100%{height:88px;opacity:0}}

/* #173 compact unlabeled remote on the right. */
.interactive-remote-v12{pointer-events:none!important;display:block!important}.interactive-remote-v12>div{pointer-events:auto;position:absolute;right:4%;top:50%;transform:translateY(-50%);width:116px;display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:9px!important;padding:17px 12px 20px!important;border:2px solid #333!important;background:linear-gradient(#222,#090909)!important;border-radius:24px!important;box-shadow:inset 0 0 0 2px #050505,0 20px 55px #000!important}.interactive-remote-v12>div::before{content:"";grid-column:1/-1;justify-self:center;width:34px;height:7px;border-radius:6px;background:#050505;border:1px solid #3a3a3a}.interactive-remote-v12 b{display:none!important}.interactive-remote-v12 button{min-width:0!important;height:25px!important;padding:0!important;border-radius:50%!important;background:#262626!important;color:transparent!important;border:1px solid #4a4a4a!important;box-shadow:inset 0 -2px #0a0a0a!important}

/* #174 */
.dial-up-v11{transform:translateY(-16vh)}

/* #177 make popcorn unmistakably visible. */
.popcorn-v11 i{font-size:clamp(25px,5vw,58px)!important;color:#fff2bd!important;text-shadow:0 2px #8c301d,0 0 12px rgba(255,230,150,.28)!important}

/* #181 Win95 transition + central window. */
.win95-flash-v12{position:fixed;inset:0;z-index:1100;pointer-events:none;background:#fff;animation:v12WinFlash .68s ease forwards}@keyframes v12WinFlash{0%,22%{opacity:1}100%{opacity:0}}
body.egg-win95-persist,body.egg-win95-persist *{font-family:"MS Sans Serif",Tahoma,Geneva,sans-serif!important}
.win95-window-v12{z-index:47!important;display:grid;place-items:center}.win95-window-v12 .win95-window{width:min(470px,84vw);background:#c0c0c0;border:2px solid;border-color:#fff #222 #222 #fff;box-shadow:5px 5px rgba(0,0,0,.35);color:#000}.win95-window-v12 header{height:28px;padding:4px 5px;background:#000080;color:#fff;font:bold 12px "MS Sans Serif",Tahoma,sans-serif;letter-spacing:0;display:flex;align-items:center;justify-content:space-between}.win95-window-v12 header button,.win95-window-v12 footer button{border:2px solid;border-color:#fff #444 #444 #fff;background:#c0c0c0;color:#000;font:11px Tahoma;padding:2px 8px}.win95-window-v12 main{padding:24px 20px;font:12px Tahoma;letter-spacing:0}.win95-window-v12 main b{font-size:15px}.win95-window-v12 main p:last-child{font-family:"Courier New",monospace;background:#000;color:#c0c0c0;padding:8px}.win95-window-v12 footer{padding:0 14px 14px;text-align:right}.win95-window-v12 footer button{margin-left:7px}

/* #182 / #183 mutually exclusive simple pills under countdown. */
.pill-reality{display:block!important}.pill-reality .pill{position:absolute;left:50%;top:65%;width:clamp(90px,13vw,150px);height:clamp(30px,4vw,42px);transform:translateX(-50%);border-radius:999px;background:linear-gradient(90deg,rgba(255,255,255,.6),currentColor 18% 80%,rgba(0,0,0,.3));box-shadow:inset 0 0 7px rgba(255,255,255,.65),0 0 18px currentColor,0 0 48px currentColor}.red-pill-v12{color:#ff3030}.blue-pill-v12{color:#258cff}.pill-reality>b{position:absolute;left:50%;top:73%;transform:translateX(-50%);font-size:10px;letter-spacing:.24em;color:rgba(255,255,255,.3)}

/* #184 / #185 — white core with heavy coloured glow. */
.lightsaber-v12 .saber{position:absolute;left:50%;top:50%;width:min(62vw,720px);height:13px;transform:translate(-50%,-50%) rotate(-13deg);border-radius:999px;background:#fff;box-shadow:0 0 3px #fff,0 0 10px var(--saber),0 0 25px var(--saber),0 0 60px var(--saber),0 0 100px var(--saber);animation:v12SaberOn .7s cubic-bezier(.1,.75,.25,1) forwards;transform-origin:left center}.saber-blue-v12{--saber:#168cff}.saber-red-v12{--saber:#ff2020}.lightsaber-v12>b{position:absolute;left:50%;bottom:13%;transform:translateX(-50%);font-size:11px;letter-spacing:.28em;color:rgba(255,255,255,.35)}@keyframes v12SaberOn{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}

/* #186 broken wooden door with countdown visible through the split. */
.johnny-door-v12{background:transparent!important}.johnny-door-v12 .door{position:absolute;top:2%;bottom:2%;width:50%;background:repeating-linear-gradient(90deg,#3a2113 0 11%,#5a3420 11% 12%,#2a180f 12% 23%);border:12px solid #26160e;box-shadow:inset 0 0 60px #120a06,0 0 30px #000}.johnny-door-v12 .door.left{left:0;clip-path:polygon(0 0,100% 0,96% 22%,100% 34%,91% 47%,99% 58%,92% 72%,100% 84%,96% 100%,0 100%)}.johnny-door-v12 .door.right{right:0;clip-path:polygon(0 0,100% 0,100% 100%,4% 100%,0 83%,8% 72%,1% 58%,9% 47%,0 34%,5% 22%)}.johnny-door-v12 .break{position:absolute;left:50%;top:12%;bottom:10%;width:clamp(36px,8vw,105px);transform:translateX(-50%);background:transparent;filter:drop-shadow(0 0 6px #000)}.johnny-door-v12>b{position:absolute;right:4%;bottom:7%;font-size:clamp(18px,4vw,54px);letter-spacing:.08em;color:#eee;text-shadow:0 4px 3px #000}

/* #187 same exit speed, long off-screen hold and deliberately slow return. */
body.egg-ill-be-back-now :is(.countdown-view,.live-content){animation:v12IllBack 12.5s cubic-bezier(.72,0,.16,1)!important}@keyframes v12IllBack{0%{transform:translateX(0)}14%{transform:translateX(130vw)}42%{transform:translateX(130vw)}100%{transform:translateX(0)}}

/* #189 actual title + timer go to a corner. */
body.egg-page-snap-corner .stage{place-items:start end!important;padding:3vh 3vw!important}
body.egg-page-snap-corner :is(.countdown-view,.live-content){width:min(58vw,700px)!important;transform:none!important;transform-origin:top right!important;text-align:right!important}
body.egg-page-snap-corner :is(.clock-row,.live-title){font-size:clamp(30px,6vw,86px)!important;justify-content:flex-end!important}
body.egg-page-snap-corner .movie-pun{margin-top:20px!important;text-align:right!important}

/* #190 no giant SKIP INTRO label. */
.skip-intro-v12{display:block!important}.skip-intro-v12 div{position:absolute;left:50%;bottom:10%;width:min(620px,78vw);height:7px;transform:translateX(-50%);border:1px solid rgba(255,255,255,.18)}.skip-intro-v12 div i{display:block;height:100%;width:35%;background:var(--accent);animation:skipBar 1.4s ease forwards}.skip-intro-v12 span{position:absolute;left:50%;bottom:6%;transform:translateX(-50%);font:10px monospace;color:#666}

/* #193 */
.dvd-corner-stamp-v12>b{position:absolute;right:7%;bottom:13%;font-size:clamp(18px,4vw,46px);letter-spacing:.2em;color:#fff;text-shadow:0 0 20px var(--accent)}.dvd-corner-stamp-v12 .arrow{position:absolute;right:2%;bottom:2%;font-style:normal;font-size:clamp(50px,10vw,120px);color:var(--accent);animation:v12Arrow .7s ease-in-out infinite alternate}@keyframes v12Arrow{to{transform:translate(8px,8px)}}

/* #195 */
body.egg-matrix-v12{background:#000}.matrix-rain-v12{z-index:31!important;background:linear-gradient(rgba(0,15,0,.08),rgba(0,0,0,.3))}.matrix-rain-v12 span{position:absolute;top:-120%;white-space:pre;line-height:1.05;font:clamp(9px,1.25vw,16px) monospace;color:#70ff78;text-shadow:0 0 8px #00ff26;opacity:.68;animation:v12Matrix var(--dur) linear infinite;animation-delay:var(--delay)}@keyframes v12Matrix{to{transform:translateY(235vh)}}

/* Replacement #197 */
body.egg-rubber-band-v12 .stage{animation:v12RubberBody 4.6s ease-in-out infinite}.rubber-band-snap-v12 i{position:absolute;left:4%;right:4%;top:50%;height:2px;background:var(--accent);box-shadow:0 0 14px var(--accent);animation:v12RubberSnap 1.6s cubic-bezier(.5,-.5,.3,1.6)}.rubber-band-snap-v12>b{position:absolute;right:8%;top:56%;font-size:clamp(22px,5vw,60px);color:rgba(242,169,0,.7)}@keyframes v12RubberBody{50%{transform:scaleX(.94)}}@keyframes v12RubberSnap{0%{transform:scaleX(.1)}60%{transform:scaleX(1.05)}100%{transform:scaleX(1)}}

/* #198/#203 leave no persistent souvenir elements. */
.zero-caught-v12{display:grid;place-items:center}.zero-caught-v12>b{font-size:clamp(120px,30vw,380px);font-weight:100;color:rgba(242,169,0,.12)}.zero-caught-v12>span{position:absolute;right:7%;bottom:10%;font-size:10px;letter-spacing:.27em;color:rgba(255,255,255,.36)}
.long-con-v12 svg{position:absolute;inset:18% 8%;width:84%;height:64%}.long-con-v12 path{fill:none;stroke:rgba(255,255,255,.15);stroke-width:2;stroke-dasharray:8 13}.long-con-v12>b{position:absolute;left:8%;bottom:8%;font-size:11px;letter-spacing:.28em;color:rgba(242,169,0,.55)}

/* #202 smaller and subtler. */
.one-pixel-target{width:2px!important;height:2px!important;opacity:.045!important;background:#111!important}.one-pixel-target.flicker{opacity:.45!important;background:#5a4b22!important;box-shadow:0 0 4px 1px rgba(242,169,0,.16)!important}.one-pixel-target.caught{opacity:1!important;background:#fff!important;box-shadow:0 0 12px 3px rgba(242,169,0,.5)!important}

/* #208 */
.admin-denied-v12{position:fixed;inset:0;z-index:76;pointer-events:none}.admin-denied-v12>b{position:absolute;right:5%;bottom:15%;font-size:clamp(24px,6vw,72px);letter-spacing:.12em;color:#f04d4d;text-shadow:0 0 25px rgba(255,0,0,.18)}.admin-denied-v12>span{position:absolute;right:5%;bottom:10%;font:10px monospace;letter-spacing:.2em;color:rgba(255,255,255,.35)}

/* #210 pointer is the only crosshair; gun resembles a held FPS weapon. */
.doom-challenge.doom-ascii-v11{cursor:none!important}.doom-ascii-v11 .doom-crosshair{display:none!important}.doom-ascii-v11 .doom-aim{position:absolute;z-index:7;width:20px;height:20px;pointer-events:none;transform:translate(-50%,-50%)}.doom-ascii-v11 .doom-aim::before,.doom-ascii-v11 .doom-aim::after{content:"";position:absolute;left:50%;top:50%;background:#92ff88;box-shadow:0 0 5px rgba(100,255,100,.45);transform:translate(-50%,-50%)}.doom-ascii-v11 .doom-aim::before{width:20px;height:1px}.doom-ascii-v11 .doom-aim::after{width:1px;height:20px}.doom-ascii-v11 .doom-gun{position:absolute!important;left:50%!important;right:auto!important;bottom:-4%!important;width:clamp(130px,22vw,270px);height:clamp(120px,22vw,260px);transform:translateX(-50%)!important;font-size:0!important;z-index:6;filter:drop-shadow(0 0 12px rgba(80,255,80,.18))}.doom-gun .barrel{position:absolute;left:50%;top:3%;width:28%;height:74%;transform:translateX(-50%);background:linear-gradient(90deg,#1b2d1a,#53714e 45%,#20351f);clip-path:polygon(30% 0,70% 0,86% 100%,14% 100%);border-top:3px solid #8cae85}.doom-gun .grip{position:absolute;left:47%;bottom:0;width:33%;height:54%;background:linear-gradient(105deg,#52604d,#1b251a);clip-path:polygon(0 0,100% 12%,78% 100%,18% 100%);transform:rotate(-7deg)}.doom-gun .hand{position:absolute;left:18%;bottom:4%;width:38%;height:40%;border-radius:45% 40% 18% 35%;background:linear-gradient(#a47755,#5d3e2b);transform:rotate(16deg);box-shadow:65px 5px 0 -10px #8f6449}

/* #212 — 16x10 board, multiple keys, growth and self-collision feedback. */
.snake-v12 .snake-board{aspect-ratio:16/10!important;background-size:calc(100%/16) calc(100%/10)!important}.snake-v12 .snake-segments i{width:calc(100%/16*.62)!important}.snake-v12 .snake-key{font-size:clamp(14px,2.4vw,25px)!important}.snake-v12.collision .snake-board{animation:v12SnakeCollision .22s linear 2}.snake-v12 .snake-hud span{color:rgba(154,255,139,.65)!important}@keyframes v12SnakeCollision{50%{transform:translateX(6px);filter:brightness(1.7)}}

/* #213: black instantly, hold, then fade only the video in. */
.skyrim-takeover{opacity:1!important;background:#000!important;transition:opacity 1.15s ease!important}.skyrim-takeover video{opacity:0!important;transition:opacity 1.45s ease!important}.skyrim-takeover.video-in video{opacity:1!important}.skyrim-takeover.fade-out{opacity:0!important}

/* #214 — intentionally long, nonsense-heavy credits. */
.credits-roll-v12{display:block!important;background:rgba(0,0,0,.93);z-index:70!important}.credits-roll-v12>div{position:absolute;left:8%;right:8%;top:0;text-align:center;animation:v12Credits 72s linear forwards}.credits-roll-v12 p{margin:34px auto;font-style:normal;font-size:clamp(11px,1.5vw,18px);letter-spacing:.22em;color:rgba(255,255,255,.66);max-width:900px}.credits-roll-v12 .c0{font-size:clamp(24px,5vw,66px);color:#fff;margin-top:90px}.credits-roll-v12 .c1{color:var(--accent)}.credits-roll-v12 .c2{font-size:clamp(10px,1.2vw,15px);color:rgba(255,255,255,.4)}.credits-roll-v12 .c3{font-family:monospace;color:rgba(255,255,255,.55)}@keyframes v12Credits{from{transform:translateY(105vh)}to{transform:translateY(-620vh)}}

@media (pointer:coarse){
  .one-pixel-target{width:3px!important;height:3px!important}
  .hidden-block-target{width:24px!important;height:24px!important}
  .pill-reality .pill{top:67%}
  .interactive-remote-v12>div{right:3%;width:100px;padding:13px 10px 16px!important}
  .portal-pair-scene .portal{width:32px!important}
}
@media (max-width:600px){
  .sesame-grand>b{left:68%!important;top:14%!important}
  .return-sender-v11>b{left:24%!important;top:82%!important}
  .caps-v11>b,.caps-v11>span{left:72%!important}
  body.egg-page-snap-corner :is(.countdown-view,.live-content){width:88vw!important}
  body.egg-page-snap-corner :is(.clock-row,.live-title){font-size:clamp(28px,9vw,48px)!important}
  .johnny-door-v12 .door{border-width:7px}
  .credits-roll-v12 p{margin:28px auto}
}

/* v1.2 selector alignment for revised generated markup. */
.balloon-stage-v12 i{position:absolute;left:calc(8% + var(--i)*11.5%);top:8%;width:clamp(24px,4.5vw,48px);height:clamp(32px,5.8vw,62px);border-radius:50% 50% 45% 45%;background:hsla(calc(var(--i)*44),72%,58%,.76);box-shadow:inset -6px -8px rgba(0,0,0,.14);animation:v12Balloon 3.8s ease-in-out infinite alternate;animation-delay:calc(var(--i)*-.21s)}
.balloon-stage-v12 i::after{content:"";position:absolute;left:50%;top:100%;width:1px;height:clamp(150px,28vh,300px);background:linear-gradient(rgba(255,255,255,.35),rgba(255,255,255,.08));transform-origin:top;transform:rotate(calc((var(--i) - 4)*2deg))}
.cow-level-v12>i{position:absolute;top:5%;width:70px;height:46px;border-radius:38% 45% 40% 35%;background:#eee8dc;color:#161616;box-shadow:inset 18px 4px #161616,inset -7px -8px rgba(0,0,0,.12);animation:v12Cow 11s linear infinite;animation-delay:calc(var(--i)*-1.25s);left:calc(-65% - var(--i)*12%)}
.cow-level-v12>i::before{content:"";position:absolute;right:-18px;top:5px;width:26px;height:22px;border-radius:45%;background:#eee8dc;box-shadow:inset 8px 0 #161616}.cow-level-v12>i::after{content:"";position:absolute;left:10px;top:39px;width:7px;height:26px;background:#eee8dc;box-shadow:36px 0 #eee8dc}.cow-level-v12>i span,.cow-level-v12>i b,.cow-level-v12>i em{display:none}.cow-level-v12>strong{position:absolute;right:5%;bottom:8%;font-size:11px;letter-spacing:.27em;color:rgba(255,255,255,.35)}
.dialup-v11{transform:translateY(-16vh)!important}
.matrix-spoon-rain span{font-size:clamp(13px,2vw,24px)!important;opacity:.8}

/* ========================================================================
   v1.2.1 MOBILE / EFFECT ARBITRATION REVIEW
   ======================================================================== */

/* Repeated triggering is locked in JS; keep lockout from swallowing pointer
   completion while still blocking new gameplay inputs. */
body.discovery-lock .stage{pointer-events:none}

/* #004: JS now sets the hand exactly from the visible countdown second. */
.second-hand-persist .dial i{animation:none!important;transition:transform .12s steps(1,end)}

/* #016: proper mechanical lock/unlock instead of generic text. */
.sesame-lock-v121{display:block!important;background:radial-gradient(circle at 50% 50%,rgba(242,169,0,.06),transparent 45%)}
.sesame-lock-v121 .lock{position:absolute;left:50%;top:50%;width:120px;height:120px;transform:translate(-50%,-50%);border:8px solid #3d3428;border-radius:50%;background:radial-gradient(circle,#18130e 0 30%,#806129 31% 35%,#211a12 36%);box-shadow:0 0 0 2px #0b0907,0 16px 45px #000,inset 0 0 25px #000;animation:v121Unlock 1.7s cubic-bezier(.2,.85,.25,1) forwards}
.sesame-lock-v121 .lock i{position:absolute;left:50%;top:50%;width:5px;height:42px;background:#d9b75f;transform:translate(-50%,-85%);transform-origin:50% 85%;box-shadow:0 0 8px rgba(242,169,0,.35)}
.sesame-lock-v121 .lock b{position:absolute;left:50%;top:50%;width:18px;height:26px;border-radius:9px 9px 3px 3px;background:#c7972b;transform:translate(-50%,-4%)}
.sesame-lock-v121 .doors i{position:absolute;top:0;bottom:0;width:50%;background:linear-gradient(90deg,#100d09,#2b2117 50%,#100d09);box-shadow:inset 0 0 70px #000;animation:v121SesameDoor 2.1s .8s cubic-bezier(.2,.8,.2,1) forwards}
.sesame-lock-v121 .doors i:first-child{left:0;transform-origin:left}.sesame-lock-v121 .doors i:last-child{right:0;transform-origin:right;--dir:1}
.sesame-unlock-pulse-v121{position:fixed;inset:0;z-index:78;pointer-events:none}.sesame-unlock-pulse-v121 i{position:absolute;left:50%;top:50%;width:120px;height:120px;border:2px solid var(--accent);border-radius:50%;transform:translate(-50%,-50%);animation:v121UnlockPulse 1.5s ease-out forwards}
@keyframes v121Unlock{0%,35%{transform:translate(-50%,-50%) rotate(0)}70%{transform:translate(-50%,-50%) rotate(155deg)}100%{transform:translate(-50%,-50%) rotate(140deg) scale(.8);opacity:.15}}
@keyframes v121SesameDoor{to{transform:translateX(calc((var(--dir, -1))*100%));opacity:.1}}
@keyframes v121UnlockPulse{to{transform:translate(-50%,-50%) scale(4);opacity:0}}

/* #019 */
.return-sender-v121 .envelope{position:absolute;left:68%;top:26%;font-size:clamp(55px,10vw,120px);filter:drop-shadow(0 8px 16px #000);animation:v121Envelope 2.7s ease-in-out infinite}
.return-sender-v121 .route{position:absolute;left:24%;top:42%;width:50%;height:30%;border:3px dashed rgba(242,169,0,.32);border-left-color:transparent;border-bottom-color:transparent;border-radius:50%;transform:rotate(-14deg)}
.return-sender-v121>b{position:absolute;left:24%;top:67%;font-size:clamp(55px,10vw,130px);font-weight:200;color:rgba(242,169,0,.5)}
@keyframes v121Envelope{50%{transform:translate(-18vw,17vh) rotate(-14deg)}}

/* #021 */
.caps-lock-v121{display:grid;place-items:center}.caps-lock-v121 .key{position:relative;width:min(260px,62vw);height:min(145px,35vw);border:6px solid #494949;border-radius:14px;background:linear-gradient(#272727,#090909);box-shadow:0 14px 0 #020202,0 30px 50px #000,inset 0 0 0 2px #666;display:grid;place-items:center;align-content:center;animation:v121CapsPress 1.3s ease-in-out infinite}
.caps-lock-v121 .key b{font:800 clamp(24px,7vw,52px)/1 Arial;color:#eee;letter-spacing:.08em}.caps-lock-v121 .key span{font:700 11px monospace;color:#777;letter-spacing:.22em;margin-top:10px}.caps-lock-v121 .key i{position:absolute;right:18px;top:18px;width:10px;height:10px;border-radius:50%;background:#7aff6c;box-shadow:0 0 18px #7aff6c}
@keyframes v121CapsPress{50%{transform:translateY(10px);box-shadow:0 4px 0 #020202,0 18px 35px #000,inset 0 0 0 2px #666}}

/* #024 */
.qwerty-wave-v121{display:flex!important;align-items:center;justify-content:center;gap:clamp(4px,1vw,12px)}.qwerty-wave-v121 i{font:700 clamp(20px,5vw,52px)/1 monospace;font-style:normal;width:clamp(30px,7vw,72px);aspect-ratio:1;display:grid;place-items:center;border:1px solid #555;border-radius:7px;background:#111;box-shadow:0 7px #050505;color:#ddd;animation:v121Qwerty 1.5s ease-in-out infinite;animation-delay:calc(var(--i)*-.09s)}@keyframes v121Qwerty{50%{transform:translateY(-35px);color:var(--accent);border-color:var(--accent)}}

/* #029 */
.keycap-orbit-v121 i{position:absolute;left:50%;top:50%;font:700 15px monospace;font-style:normal;width:34px;height:34px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.3);border-radius:5px;background:#101010;color:#ddd;transform:rotate(calc(var(--i)*20deg)) translateX(clamp(120px,28vw,420px)) rotate(calc(var(--i)*-20deg));animation:v121KeyOrbit 8s linear infinite;animation-delay:calc(var(--i)*-.25s)}@keyframes v121KeyOrbit{to{rotate:360deg}}

/* #030 */
.cat-chaser-v121{position:fixed;left:0;top:0;z-index:78;pointer-events:none;width:74px;height:58px;will-change:transform}.cat-chaser-v121 .cat-body{position:absolute;left:5px;top:15px;width:50px;height:35px;border-radius:48% 48% 40% 40%;background:#171717;border:2px solid #aaa;box-shadow:0 0 18px rgba(255,255,255,.13)}.cat-chaser-v121 .ear{position:absolute;top:-13px;width:18px;height:20px;background:#171717;border:2px solid #aaa;clip-path:polygon(50% 0,100% 100%,0 100%)}.cat-chaser-v121 .e1{left:3px}.cat-chaser-v121 .e2{right:3px}.cat-chaser-v121 .eye{position:absolute;top:11px;width:6px;height:8px;border-radius:50%;background:#e8d848;box-shadow:0 0 6px #e8d848}.cat-chaser-v121 .eye.a{left:12px}.cat-chaser-v121 .eye.b{right:12px}.cat-chaser-v121 .nose{position:absolute;left:50%;top:22px;width:5px;height:4px;border-radius:50%;background:#d88989;transform:translateX(-50%)}.cat-chaser-v121 .tail{position:absolute;left:-16px;top:23px;width:25px;height:8px;border:4px solid #aaa;border-right:0;border-bottom-color:transparent;border-radius:50%;animation:v121Tail .5s ease-in-out infinite alternate}@keyframes v121Tail{to{transform:rotate(-25deg)}}

/* #039 */
.diagonal-corners-v121 i{position:absolute;left:50%;top:50%;width:135vw;height:3px;background:linear-gradient(90deg,transparent,var(--accent),#fff,var(--accent),transparent);box-shadow:0 0 15px rgba(242,169,0,.3)}.diagonal-corners-v121 i:first-child{transform:translate(-50%,-50%) rotate(35deg)}.diagonal-corners-v121 i:last-child{transform:translate(-50%,-50%) rotate(-35deg)}

/* #041 persistent white scar exactly follows the temporary yellow Z. */
.slash-scar i{height:2px!important;background:rgba(255,255,255,.42)!important;box-shadow:0 0 14px rgba(255,255,255,.22)!important;transform-origin:left center!important}.slash-scar i:nth-child(1){left:18%!important;top:25%!important;width:64%!important;transform:none!important}.slash-scar i:nth-child(2){left:78%!important;top:25%!important;width:66%!important;transform:rotate(145deg)!important}.slash-scar i:nth-child(3){left:18%!important;top:75%!important;width:64%!important;transform:none!important}

/* #048 */
.title-stare-v121 .eye{position:absolute;top:14%;width:70px;height:36px;border-radius:50%;border:2px solid rgba(255,255,255,.42);background:#080808;box-shadow:0 0 25px rgba(255,255,255,.08)}.title-stare-v121 .eye::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:12px;border-radius:50%;background:var(--accent);transform:translate(-50%,-50%);box-shadow:0 0 16px var(--accent)}.title-stare-v121 .eye.a{left:29%}.title-stare-v121 .eye.b{right:29%}.title-stare-v121 .beam{position:absolute;left:50%;top:22%;width:1px;height:48%;background:linear-gradient(rgba(242,169,0,.5),transparent);transform:translateX(-50%)}

/* #050 */
.fourteen-second-v121{position:fixed;inset:0;z-index:78;pointer-events:none;display:grid;place-items:center}.fourteen-second-v121 i{position:absolute;width:min(52vmin,420px);aspect-ratio:1;border:2px solid rgba(242,169,0,.35);border-radius:50%;animation:v121FourteenRing 2s ease-out forwards}.fourteen-second-v121 b{font:200 clamp(100px,27vw,330px)/1 Arial;color:rgba(242,169,0,.18);text-shadow:0 0 45px rgba(242,169,0,.22)}.fourteen-second-v121 span{position:absolute;bottom:15%;font:10px monospace;letter-spacing:.3em;color:rgba(255,255,255,.45)}@keyframes v121FourteenRing{to{transform:scale(2.3);opacity:0}}

/* #052 exactly five full-screen blinks. */
body.egg-blink-five-v121::before{content:"";position:fixed;inset:0;z-index:1000;pointer-events:none;background:#000;animation:v121Blink5 1.8s steps(1,end) forwards}@keyframes v121Blink5{0%,10%,20%,30%,40%,50%,60%,70%,80%,90%{opacity:1}5%,15%,25%,35%,45%,55%,65%,75%,85%,95%,100%{opacity:0}}

/* #057 */
body.egg-long-way-hold-v121 .stage{transform:translateY(42vh)!important;transition:transform 1.5s cubic-bezier(.65,.02,.8,.25)!important}.long-way-particles-v121 i{position:absolute;left:calc(2% + (var(--x,0)*1%));top:-10%;width:2px;height:18vh;background:linear-gradient(transparent,rgba(242,169,0,.18),transparent);animation:v121DepthFall 1.8s linear infinite}.long-way-particles-v121 i:nth-child(3n){left:20%}.long-way-particles-v121 i:nth-child(3n+1){left:50%}.long-way-particles-v121 i:nth-child(3n+2){left:80%}@keyframes v121DepthFall{to{transform:translateY(120vh)}}

/* #060 */
.lucky-seven-v121{display:grid!important;place-items:center}.lucky-seven-v121 b{font:900 clamp(100px,28vw,360px)/1 Arial;color:rgba(242,169,0,.23);text-shadow:0 0 35px rgba(242,169,0,.25);letter-spacing:.03em}

/* #063 */
.black-cat-v121 .cat{position:absolute;left:8%;bottom:8%;width:130px;height:82px;border-radius:52% 48% 40% 42%;background:#050505;border:2px solid #4b4b4b;box-shadow:0 12px 25px #000}.black-cat-v121 .cat::before{content:"";position:absolute;right:-40px;top:34px;width:55px;height:20px;border:10px solid #050505;border-left:0;border-bottom-color:transparent;border-radius:50%;transform:rotate(-22deg)}.black-cat-v121 .ear{position:absolute;top:-30px;width:40px;height:42px;background:#050505;border:2px solid #4b4b4b;clip-path:polygon(50% 0,100% 100%,0 100%)}.black-cat-v121 .ear.a{left:10px}.black-cat-v121 .ear.b{right:10px}.black-cat-v121 .eye{position:absolute;top:24px;width:15px;height:9px;border-radius:50%;background:#d8dc53;box-shadow:0 0 10px #cdd134}.black-cat-v121 .eye.a{left:31px}.black-cat-v121 .eye.b{right:31px}.black-cat-v121>b{position:absolute;right:8%;top:8%;font:200 clamp(90px,20vw,250px)/1 Arial;color:rgba(255,255,255,.035)}

/* #072: no upper-left copied symbol/text. */
.clipboard-storm-v121 i{position:absolute;font-style:normal;font-size:clamp(22px,4vw,48px);color:rgba(242,169,0,.22);left:calc(8% + var(--i)*7%);top:calc(24% + (var(--i)%4)*15%);animation:v121Clip 4s ease-in-out infinite;animation-delay:calc(var(--i)*-.18s)}@keyframes v121Clip{50%{transform:translateY(-15px) rotate(12deg)}}

/* #081 */
.corner-cut-two-v121{position:fixed;inset:0;z-index:80;pointer-events:none}.corner-cut-two-v121 i{position:absolute;left:50%;top:50%;width:142vw;height:3px;background:linear-gradient(90deg,transparent,var(--accent),#fff,var(--accent),transparent);transform-origin:center}.corner-cut-two-v121 .a{transform:translate(-50%,-50%) rotate(35deg)}.corner-cut-two-v121 .b{transform:translate(-50%,-50%) rotate(-35deg)}

/* #097 / #099: direction matches gesture. */
.direction-sweep.left i{right:-55%!important;animation:v121SweepLeft 1.35s var(--ease) forwards!important}.direction-sweep.up i{bottom:-55%!important;animation:v121SweepUp 1.35s var(--ease) forwards!important}@keyframes v121SweepLeft{from{transform:translateX(0)}to{transform:translateX(calc(-100vw - 110%))}}@keyframes v121SweepUp{from{transform:translateY(0)}to{transform:translateY(calc(-100vh - 110%))}}

/* #107 */
.five-finger-v121{display:grid!important;place-items:center}.five-finger-v121 .hand{position:relative;width:190px;height:245px}.five-finger-v121 .hand b{position:absolute;left:48px;top:90px;width:105px;height:120px;border-radius:48% 48% 42% 42%;background:linear-gradient(120deg,#d6b397,#a87960);box-shadow:inset -12px -18px rgba(70,35,20,.12),0 12px 30px #000}.five-finger-v121 .hand i{position:absolute;bottom:118px;width:27px;border-radius:18px 18px 8px 8px;background:linear-gradient(110deg,#debba0,#a97960);transform-origin:50% 100%;box-shadow:inset -5px -8px rgba(80,40,25,.1)}.five-finger-v121 .hand i:nth-child(1){left:48px;height:92px;transform:rotate(-7deg)}.five-finger-v121 .hand i:nth-child(2){left:76px;height:120px;transform:rotate(-2deg)}.five-finger-v121 .hand i:nth-child(3){left:105px;height:126px}.five-finger-v121 .hand i:nth-child(4){left:134px;height:112px;transform:rotate(4deg)}.five-finger-v121 .hand i:nth-child(5){left:28px;bottom:85px;height:82px;transform:rotate(-52deg)}

/* #121 real canvas noise takeover. */
body.egg-static-persist-v121 .stage{visibility:hidden!important}.static-v121{z-index:68!important;background:#050505!important}.static-v121 canvas{position:absolute;inset:-3%;width:106%;height:106%;image-rendering:pixelated;filter:contrast(2.1) brightness(.72);opacity:.88;animation:v121StaticJitter .09s steps(2) infinite}.static-v121::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,rgba(0,0,0,.23) 0 1px,transparent 1px 3px);mix-blend-mode:multiply}.static-v121>b{position:absolute;left:50%;top:50%;z-index:2;transform:translate(-50%,-50%);font:700 clamp(24px,6vw,72px)/1 monospace;letter-spacing:.18em;color:#eee;text-shadow:2px 0 #111,-2px 0 #777}@keyframes v121StaticJitter{to{transform:translate(2px,-1px)}}

/* #132 a branched lightning strike rather than repeated geometric bars. */
.lightning-real-v121{background:radial-gradient(circle at 43% 40%,rgba(210,240,255,.22),transparent 43%);animation:v121SkyFlash 4.4s steps(1) infinite}.lightning-real-v121 svg{position:absolute;inset:0;width:100%;height:100%;filter:drop-shadow(0 0 3px #fff) drop-shadow(0 0 9px #86d9ff) drop-shadow(0 0 28px #167fff)}.lightning-real-v121 path{fill:none;stroke:#fff;stroke-linecap:round;stroke-linejoin:round;opacity:0;animation:v121Bolt 4.4s steps(1) infinite}.lightning-real-v121 .main{stroke-width:4}.lightning-real-v121 .branch{stroke-width:2}.lightning-real-v121 .b1{animation-delay:.015s}.lightning-real-v121 .b2{animation-delay:.025s}.lightning-real-v121 .b3{animation-delay:.04s}.lightning-real-v121>b{position:absolute;right:5%;bottom:7%;font-size:clamp(16px,4vw,50px);letter-spacing:.16em;color:#f5fcff;text-shadow:0 0 14px #89dbff,0 0 35px #168cff}@keyframes v121Bolt{0%,83%,89%,100%{opacity:0}84%,86%,88%{opacity:1}85%,87%{opacity:.22}}@keyframes v121SkyFlash{0%,83%,89%,100%{filter:brightness(1)}84%,86%,88%{filter:brightness(2.8)}85%,87%{filter:brightness(1.4)}}

/* #148 cake is smaller and remains inside a blue portal; clicking removes cake only. */
.portal-cake-v121{display:grid!important;place-items:center}.portal-cake-v121 .portal{position:absolute;width:min(30vmin,250px);height:min(53vmin,440px);border-radius:50%;border:7px solid #4bc3ff;box-shadow:0 0 8px #fff,0 0 22px #34b9ff,0 0 65px #087de7,inset 0 0 34px #0a5fc0;animation:v121Portal 2.2s ease-in-out infinite alternate}.portal-cake-v121 .cake{z-index:2;border:0;background:transparent;font-size:clamp(42px,8vw,82px);cursor:pointer;filter:drop-shadow(0 8px 5px #000);transition:transform .25s,opacity .25s}.portal-cake-v121 .cake.gone{transform:scale(.2);opacity:0}.portal-cake-v121 span{position:absolute;bottom:12%;font:10px monospace;letter-spacing:.25em;color:rgba(255,255,255,.38)}@keyframes v121Portal{to{filter:brightness(1.35)}}

/* #153 */
.cow-level-v121 i{position:absolute;top:5%;left:-12%;font-style:normal;font-size:clamp(40px,6vw,76px);animation:v121CowEmoji 12s linear infinite;animation-delay:calc(var(--i)*-1.7s);filter:drop-shadow(0 5px 5px #000)}@keyframes v121CowEmoji{to{left:112%}}

/* #154 */
.leeroy-charge-v121{position:fixed;inset:0;z-index:79;pointer-events:none;overflow:hidden}.leeroy-charge-v121 b{position:absolute;left:110%;top:42%;white-space:nowrap;font:900 clamp(42px,9vw,130px)/1 Arial;color:#fff;text-shadow:0 3px #000,0 0 22px var(--accent);animation:v121LeeroyRTL 3s cubic-bezier(.1,.75,.3,1) forwards}@keyframes v121LeeroyRTL{to{left:-175%}}

/* #157 */
.one-ring-v121{display:grid!important;place-items:center}.one-ring-v121 .ring{width:min(42vmin,360px);aspect-ratio:1;border-radius:50%;border:clamp(10px,2vw,20px) solid #d5a62a;box-shadow:inset 0 0 7px #fff3a1,inset 0 0 25px #7d4d00,0 0 12px #ffd95d,0 0 55px rgba(255,185,20,.5);background:radial-gradient(circle,transparent 0 56%,rgba(255,192,42,.18) 57%,transparent 72%);animation:v121RingGlow 2.4s ease-in-out infinite alternate}@keyframes v121RingGlow{to{filter:brightness(1.45);transform:rotate(6deg)}}

/* #160 stationary, moderate side-profile dinosaur teeth. */
.raptor-teeth-v121 .gum{position:absolute;left:8%;right:8%;height:48px;background:linear-gradient(#2e1612,#120706);border-radius:50%;filter:drop-shadow(0 5px 6px #000)}.raptor-teeth-v121 .gum.top{top:7%}.raptor-teeth-v121 .gum.bottom{bottom:7%;transform:rotate(180deg)}.raptor-teeth-v121 .gum i{position:absolute;top:31px;left:calc(4% + var(--i)*11%);width:22px;height:48px;background:linear-gradient(90deg,#bea985,#fff1cf 42%,#9d8968);border-radius:65% 22% 70% 20%;clip-path:polygon(8% 0,100% 0,67% 48%,28% 100%,20% 44%);transform:rotate(calc(-10deg + var(--i)*2deg));filter:drop-shadow(0 3px 2px #000)}

/* #167 same discovered visual and hitbox size; half old visual size. */
.hidden-block-target{width:34px!important;height:34px!important;opacity:.018!important;border:0!important;background:transparent!important}.hidden-block-target:hover{opacity:.11!important;background:rgba(242,169,0,.04)!important}.hidden-block-reveal b{width:34px!important;height:34px!important;border-width:2px!important;font-size:18px!important;box-shadow:inset 0 0 0 2px rgba(248,213,90,.55)!important;background:#7a611d!important;color:rgba(255,255,255,.72)!important}.hidden-block-reveal i{width:52px!important;height:52px!important;opacity:.32!important}
@media(pointer:coarse){.hidden-block-target{width:34px!important;height:34px!important}}

/* #168 stays tall until reset; no oscillation. */
body.egg-mushroom-hold-v121 :is(.countdown-view,.live-content){transform:scaleY(1.55)!important;transform-origin:bottom center!important;transition:transform .7s var(--ease)!important}

/* #170 persistent multicolour fireworks across top half. */
.fireworks-v121{z-index:64!important}.fireworks-v121 .burst{position:absolute;width:4px;height:4px}.fireworks-v121 .burst i{position:absolute;left:0;top:0;width:4px;height:52px;border-radius:3px;background:linear-gradient(hsl(var(--h) 95% 68%),transparent);box-shadow:0 0 9px hsl(var(--h) 100% 60%);transform-origin:50% 0;transform:rotate(var(--a));animation:v121FireworkSpark 1.8s ease-out forwards}@keyframes v121FireworkSpark{0%{height:0;opacity:1}55%{height:55px;opacity:1}100%{height:100px;opacity:0;filter:blur(1px)}}

/* #173 exactly four unlabeled buttons. */
.interactive-remote-v121{pointer-events:none!important}.interactive-remote-v121>div{pointer-events:auto;position:absolute;right:4%;top:50%;transform:translateY(-50%);width:105px;padding:16px;display:grid;grid-template-columns:repeat(2,1fr);gap:14px;border:2px solid #3b3b3b;border-radius:23px;background:linear-gradient(#262626,#090909);box-shadow:inset 0 0 0 2px #050505,0 18px 50px #000}.interactive-remote-v121>div>i{grid-column:1/-1;justify-self:center;width:28px;height:6px;border-radius:6px;background:#080808;border:1px solid #444}.interactive-remote-v121 button{width:30px;height:30px;border-radius:50%;border:1px solid #555;background:radial-gradient(circle at 35% 30%,#494949,#171717 65%);box-shadow:inset 0 -3px #050505;cursor:pointer}

/* #174 fluctuating dial-up bar. */
.dialup-v121{display:grid!important;place-items:center;transform:translateY(-12vh)}.dialup-v121>div{width:min(430px,84vw);padding:20px;border:1px solid #777;background:#080808;box-shadow:0 20px 60px #000;font-family:"Courier New",monospace}.dialup-v121 pre{margin:0 0 16px;color:#aaa;line-height:1.5}.dialup-v121 span{display:block;height:16px;border:1px solid #777;padding:2px}.dialup-v121 span i{display:block;height:100%;background:#bbb;transition:width .35s ease}.dialup-v121 b{display:block;margin-top:7px;color:#ddd;font-size:12px}.dialup-v121 em{display:block;margin-top:15px;color:#777;font-style:normal;font-size:10px;letter-spacing:.16em}

/* #181 existing countdown panel becomes the Win95 window. */
body.egg-win95-existing-v121{background:#008080!important}body.egg-win95-existing-v121,body.egg-win95-existing-v121 *{font-family:Tahoma,"MS Sans Serif",Geneva,sans-serif!important}.egg-win95-existing-v121 :is(.countdown-view,.live-content){position:relative!important;width:min(860px,92vw)!important;padding:42px 14px 18px!important;background:#c0c0c0!important;border:3px solid!important;border-color:#fff #222 #222 #fff!important;box-shadow:5px 5px #000!important;color:#000!important}.egg-win95-existing-v121 :is(.countdown-view,.live-content)::before{content:"PLEX LAUNCH PARTY";position:absolute;left:4px;right:4px;top:4px;height:27px;padding:5px 7px;box-sizing:border-box;background:#000080;color:#fff;font:bold 12px Tahoma,sans-serif;letter-spacing:0;text-align:left}.egg-win95-existing-v121 :is(.countdown-view,.live-content)::after{content:"×";position:absolute;right:8px;top:7px;width:20px;height:18px;display:grid;place-items:center;background:#c0c0c0;color:#000;border:2px solid;border-color:#fff #444 #444 #fff;font:bold 12px Tahoma}.egg-win95-existing-v121 :is(.clock-row,.live-title),.egg-win95-existing-v121 :is(.clock-row,.live-title) *{color:#000!important;text-shadow:none!important}.egg-win95-existing-v121 .movie-pun{color:#000!important;margin-top:20px!important;font-weight:700!important}.egg-win95-existing-v121 .days-separator{opacity:.7}

/* #182/#183 monochrome colour shading, slightly smaller. */
.pill-v121 .pill{width:clamp(68px,10vw,112px)!important;height:clamp(22px,3vw,32px)!important;top:66%!important;box-shadow:inset 0 0 7px rgba(255,255,255,.18),0 0 16px currentColor,0 0 38px currentColor!important}.red-pill-v121{color:#e72f39}.red-pill-v121 .pill{background:linear-gradient(90deg,#7e0d18,#f15d65 42%,#b91625 68%,#650812)!important}.blue-pill-v121{color:#258cff}.blue-pill-v121 .pill{background:linear-gradient(90deg,#063a7b,#62adff 42%,#1774d2 68%,#042a5c)!important}

/* #184 restored old presentation: horizontal ignition, white core/heavy blue glow. */
.force-v121 .saber{position:absolute;left:12%;top:50%;width:70%;height:4px;border-radius:999px;background:#fff;box-shadow:0 0 4px #fff,0 0 14px #67c3ff,0 0 38px #168cff,0 0 85px #168cff;transform-origin:left;animation:v121BlueSaber 1.1s ease forwards}.force-v121 .stars{position:absolute;inset:0;background:radial-gradient(circle at 20% 30%,#fff 0 1px,transparent 2px),radial-gradient(circle at 80% 25%,#fff 0 1px,transparent 2px),radial-gradient(circle at 65% 72%,#fff 0 1px,transparent 2px);opacity:.22}.force-v121 b{position:absolute;left:50%;bottom:12%;transform:translateX(-50%);letter-spacing:.28em;color:rgba(150,210,255,.55)}@keyframes v121BlueSaber{from{transform:scaleX(0)}to{transform:scaleX(1)}}

/* #185 restored red NO stream; saber grows upward from bottom. */
.father-no-v121 .saber{position:absolute;left:7%;bottom:18%;width:4px;height:64%;border-radius:999px;background:#fff;box-shadow:0 0 4px #fff,0 0 14px #ff4a4a,0 0 38px #f00,0 0 85px #f00;transform-origin:bottom;animation:v121RedSaber 1.1s ease forwards}.father-no-v121 .no-stream{position:absolute;left:14%;right:0;top:0;bottom:0;overflow:hidden}.father-no-v121 .no-stream span{display:block;font-size:clamp(24px,7vw,88px);font-weight:900;color:rgba(255,30,30,.1);white-space:nowrap;animation:noStream 9s linear forwards}@keyframes v121RedSaber{from{transform:scaleY(0)}to{transform:scaleY(1)}}

/* #193 corner-aware and responsive. */
.dvd-corner-stamp-v121{position:fixed;inset:0;z-index:90;pointer-events:none}.dvd-corner-stamp-v121 b{position:absolute;font:800 clamp(11px,2vw,22px)/1 Arial;letter-spacing:.18em;color:#fff;text-shadow:0 0 16px var(--accent);max-width:42vw}.dvd-corner-stamp-v121 i{position:absolute;font-style:normal;font-size:clamp(38px,8vw,90px);color:var(--accent);text-shadow:0 0 18px rgba(242,169,0,.4)}.dvd-corner-stamp-v121.tl b{left:7%;top:10%}.dvd-corner-stamp-v121.tl i{left:1.5%;top:1%}.dvd-corner-stamp-v121.tr b{right:7%;top:10%;text-align:right}.dvd-corner-stamp-v121.tr i{right:1.5%;top:1%}.dvd-corner-stamp-v121.bl b{left:7%;bottom:10%}.dvd-corner-stamp-v121.bl i{left:1.5%;bottom:1%}.dvd-corner-stamp-v121.br b{right:7%;bottom:10%;text-align:right}.dvd-corner-stamp-v121.br i{right:1.5%;bottom:1%}

/* #197 cleaner rubber-band feedback, no SNAP text. */
body.egg-rubber-band-v121 .stage{transform:scaleX(.92)!important;transition:transform .8s cubic-bezier(.2,.9,.2,1)!important}.rubber-band-pulse-v121{position:fixed;inset:0;z-index:81;pointer-events:none}.rubber-band-pulse-v121 i{position:absolute;left:4%;right:4%;height:2px;background:var(--accent);box-shadow:0 0 10px var(--accent),0 0 30px rgba(242,169,0,.35);transform-origin:right;animation:v121Band 1.8s cubic-bezier(.25,.9,.2,1) forwards}.rubber-band-pulse-v121 i:first-child{top:46%;transform:rotate(4deg)}.rubber-band-pulse-v121 i:last-child{top:54%;transform:rotate(-4deg);animation-delay:.08s}@keyframes v121Band{0%{scale:.08 1;opacity:1}55%{scale:1.05 1}100%{scale:1 1;opacity:.18}}

/* #202 visible enough to find, but still tiny. */
.one-pixel-target{width:3px!important;height:3px!important;opacity:.035!important;background:#131313!important}.one-pixel-target.flicker{opacity:.9!important;background:#c79a29!important;box-shadow:0 0 7px 2px rgba(242,169,0,.36)!important}
@media(pointer:coarse){.one-pixel-target{width:5px!important;height:5px!important}.one-pixel-target.flicker{opacity:.8!important}}

/* #210 cursor itself is crosshair; actual DOM enemies are hit targets. */
.doom-v121{position:fixed;inset:0;z-index:250;background:#020202;color:#79ff78;font-family:"Courier New",monospace;cursor:crosshair;overflow:hidden}.doom-v121 .doom-hud{position:absolute;left:4%;right:4%;top:4%;display:flex;align-items:center;gap:20px;z-index:5;font-size:12px;letter-spacing:.13em}.doom-v121 .doom-hud span{flex:1;text-align:center;color:#559c51}.doom-v121 .doom-hud button{background:#050505;border:1px solid #4d774a;color:#79ff78;padding:5px 9px;cursor:pointer}.doom-v121 .doom-view{position:absolute;inset:10% 3% 17%;overflow:hidden;border:1px solid rgba(121,255,120,.16);background:radial-gradient(circle at 50% 60%,rgba(0,120,0,.08),#000 70%)}.doom-v121 .doom-view pre{position:absolute;inset:0;margin:0;display:grid;place-items:center;white-space:pre;text-align:center;font-size:clamp(9px,1.6vw,22px);line-height:1;color:rgba(121,255,120,.22);pointer-events:none}.doom-v121 .doom-enemies{position:absolute;inset:0}.doom-v121 .doom-enemy{position:absolute;transform:translate(-50%,-50%);width:clamp(44px,7vw,90px);height:clamp(52px,9vw,110px);border:0;background:transparent;color:#aaff95;text-shadow:0 0 10px rgba(80,255,80,.5);cursor:crosshair;display:grid;place-items:center;align-content:center;animation:v121EnemyBob 1.7s ease-in-out infinite alternate}.doom-v121 .doom-enemy .head{font-size:clamp(20px,3vw,40px)}.doom-v121 .doom-enemy .body{font:700 clamp(17px,2.8vw,34px)/1 monospace}.doom-v121 .doom-enemy.dying{pointer-events:none;animation:v121EnemyDeath .65s cubic-bezier(.2,.8,.2,1) forwards}.doom-v121 .doom-gun{position:absolute;left:50%;bottom:-3%;width:180px;height:150px;transform:translateX(-50%);pointer-events:none}.doom-v121 .doom-gun .barrel{position:absolute;left:72px;top:0;width:38px;height:105px;background:linear-gradient(90deg,#20351f,#7eb678,#1b301a);clip-path:polygon(25% 0,75% 0,100% 100%,0 100%);box-shadow:0 0 16px rgba(90,255,90,.12)}.doom-v121 .doom-gun .grip{position:absolute;left:68px;top:82px;width:48px;height:60px;background:#263a24;transform:skewX(-8deg)}.doom-v121 .doom-gun .hand{position:absolute;left:40px;top:96px;width:100px;height:55px;border-radius:45%;background:#516f4b;opacity:.8}.doom-v121 .doom-status{position:absolute;left:5%;bottom:5%;letter-spacing:.18em}.doom-v121.shot .doom-gun{animation:v121GunKick .18s ease}.doom-v121.shot::after{content:"";position:absolute;left:50%;bottom:18%;width:10px;height:10px;border-radius:50%;background:#d9ffd4;box-shadow:0 0 35px #7fff78;animation:v121Muzzle .15s ease forwards}@keyframes v121EnemyBob{to{transform:translate(-50%,calc(-50% - 8px))}}@keyframes v121EnemyDeath{0%{transform:translate(-50%,-50%) scale(1);filter:brightness(1)}35%{transform:translate(-50%,-50%) scale(1.25) rotate(-8deg);filter:brightness(2)}100%{transform:translate(-50%,30%) scale(.55) rotate(35deg);opacity:0;filter:blur(2px)}}@keyframes v121GunKick{50%{transform:translateX(-50%) translateY(15px) rotate(2deg)}}@keyframes v121Muzzle{to{transform:scale(7);opacity:0}}

/* #214 self-clearing credits. */
.credits-roll-v121{display:block!important;background:rgba(0,0,0,.94);z-index:92!important;pointer-events:none}.credits-roll-v121>div{position:absolute;left:7%;right:7%;top:0;text-align:center;animation:v121Credits 105s linear forwards}.credits-roll-v121 p{margin:34px auto;font-style:normal;font-size:clamp(11px,1.5vw,18px);letter-spacing:.21em;color:rgba(255,255,255,.66);max-width:900px}.credits-roll-v121 .c0{font-size:clamp(22px,4.7vw,62px);color:#fff;margin-top:80px}.credits-roll-v121 .c1{color:var(--accent)}.credits-roll-v121 .c2{font-size:clamp(10px,1.2vw,15px);color:rgba(255,255,255,.4)}.credits-roll-v121 .c3{font-family:monospace;color:rgba(255,255,255,.55)}@keyframes v121Credits{from{transform:translateY(105vh)}to{transform:translateY(-900vh)}}

/* v1.2.1 final validation fix: the portal scene itself remains click-through,
   but its cake must be a real interactive target once discovery lockout ends. */
.portal-cake-v121 .cake { pointer-events: auto; }


/* ==========================================================================
   v1.2.2 REVIEW HOTFIX
   ========================================================================== */

/* #004: JS owns the hand angle so it exactly follows the displayed seconds. */
.second-hand-v122 .dial i{animation:none!important;transition:transform .08s linear!important}

/* #019: no dotted route line. */
.return-sender-v122 .route{display:none!important}

/* #021: smaller and moved away from the centre. */
.caps-lock-v122{display:block!important}
.caps-lock-v122 .key{position:absolute!important;left:7%!important;top:22%!important;width:min(170px,42vw)!important;height:min(94px,24vw)!important;border-width:4px!important}
.caps-lock-v122 .key b{font-size:clamp(18px,4vw,34px)!important}.caps-lock-v122 .key span{font-size:9px!important}

/* #024: QWERTY effect along the bottom. */
.qwerty-wave-v122{align-items:flex-end!important;padding:0 4vw 5vh!important;box-sizing:border-box}
.qwerty-wave-v122 i{width:clamp(26px,6vw,60px)!important;font-size:clamp(18px,4vw,42px)!important}
@keyframes v121Qwerty{50%{transform:translateY(-24px);color:var(--accent);border-color:var(--accent)}}

/* #030: visible whiskers. */
.cat-chaser-v122 .whiskers{position:absolute;left:50%;top:25px;width:4px;height:2px;transform:translateX(-50%)}
.cat-chaser-v122 .whiskers::before,.cat-chaser-v122 .whiskers::after{content:"";position:absolute;top:-3px;width:30px;height:10px;border-top:1.5px solid #d8d8d8;border-bottom:1.5px solid #d8d8d8}
.cat-chaser-v122 .whiskers::before{right:5px;transform:skewY(8deg)}.cat-chaser-v122 .whiskers::after{left:5px;transform:skewY(-8deg)}

/* #048: hypnotic background swirl. */
.hypnotic-swirl-v122{z-index:24!important;overflow:hidden}
.hypnotic-swirl-v122 .swirl{position:absolute;left:50%;top:50%;width:150vmax;height:150vmax;transform:translate(-50%,-50%);border-radius:50%;background:repeating-conic-gradient(from 0deg,rgba(242,169,0,.17) 0 8deg,rgba(0,0,0,.02) 8deg 18deg,rgba(255,255,255,.055) 18deg 24deg,transparent 24deg 34deg);mask-image:radial-gradient(circle,#000 0 64%,transparent 83%);animation:v122Hypnosis 11s linear infinite}
@keyframes v122Hypnosis{to{transform:translate(-50%,-50%) rotate(1turn) scale(1.04)}}

/* #060: three slot reels spin in, then remain. */
.lucky-seven-v122>div{display:flex;gap:.035em;perspective:600px}
.lucky-seven-v122 span{display:inline-block;font:900 clamp(100px,28vw,360px)/1 Arial;color:rgba(242,169,0,.28);text-shadow:0 0 35px rgba(242,169,0,.3);animation:v122SlotSeven 1.15s cubic-bezier(.1,.8,.25,1) both}
.lucky-seven-v122 span:nth-child(2){animation-delay:.12s}.lucky-seven-v122 span:nth-child(3){animation-delay:.24s}
@keyframes v122SlotSeven{0%{transform:translateY(-180%) rotateX(720deg);filter:blur(10px);opacity:0}72%{transform:translateY(10%) rotateX(20deg);filter:blur(1px);opacity:1}100%{transform:none;filter:none;opacity:1}}

/* #063: use a recognisable cat emoji. */
.black-cat-v122 .cat-emoji{position:absolute;left:6%;bottom:6%;font-size:clamp(90px,20vw,230px);filter:drop-shadow(0 14px 20px #000)}
.black-cat-v122>b{position:absolute;right:8%;top:8%;font:200 clamp(90px,20vw,250px)/1 Arial;color:rgba(255,255,255,.05)}

/* #072: keep COPIED text as well as the floating clipboard marks. */
.clipboard-v122>b{position:absolute;left:50%;bottom:8%;transform:translateX(-50%);font:700 clamp(18px,3vw,34px)/1 monospace;letter-spacing:.28em;color:rgba(242,169,0,.7)}

/* #107: large transparent emoji in background. */
.five-finger-v122{z-index:23!important;display:grid!important;place-items:center}
.five-finger-v122 .hand-emoji{font-size:min(62vmin,560px);opacity:.12;filter:grayscale(.15) drop-shadow(0 0 30px rgba(255,255,255,.12));transform:rotate(-8deg)}

/* #153: retain the text while spaced cows travel over the top. */
.cow-level-v122>b{position:absolute;left:50%;top:15%;transform:translateX(-50%);white-space:nowrap;font:800 clamp(15px,2.5vw,30px)/1 Arial;letter-spacing:.16em;color:rgba(255,255,255,.68);text-shadow:0 3px 12px #000}
.cow-level-v122 i{animation-duration:15s!important;animation-delay:calc(var(--i)*-2.15s)!important}

/* #160: teeth only, flush to viewport borders; varied lengths. */
.raptor-teeth-v122 .teeth{position:absolute;left:0;right:0;height:12vh;pointer-events:none}
.raptor-teeth-v122 .teeth.top{top:0}.raptor-teeth-v122 .teeth.bottom{bottom:0;transform:rotate(180deg)}
.raptor-teeth-v122 .teeth i{position:absolute;top:0;left:calc(var(--i)*7.7%);width:7.9%;height:calc(11vh * var(--h));background:linear-gradient(90deg,#8d7a5f,#f1e4c6 44%,#a38d68);clip-path:polygon(8% 0,92% 0,62% 55%,50% 100%,36% 55%);filter:drop-shadow(0 3px 4px rgba(0,0,0,.75))}
.raptor-teeth-v122 .teeth i:nth-child(odd){transform:rotate(2deg)}.raptor-teeth-v122 .teeth i:nth-child(even){transform:rotate(-2deg)}

/* #174: restore compact upper green modem panel. */
.dialup-v122{display:block!important;transform:none!important}
.dialup-v122>div{position:absolute!important;left:50%!important;top:9%!important;transform:translateX(-50%)!important;width:min(360px,78vw)!important;padding:14px 16px!important;border-color:#315b38!important;background:rgba(2,12,5,.96)!important;box-shadow:0 12px 40px #000!important}
.dialup-v122 pre,.dialup-v122 b{color:#78d77e!important}.dialup-v122 em{color:#4f8954!important}.dialup-v122 span{border-color:#315b38!important}.dialup-v122 span i{background:#65c86e!important}

/* #184: drop the saber slightly below the countdown. */
.force-v122 .saber{top:62%!important}

/* #197: Web Slinger, deliberately transient and replayable. */
.web-slinger-v122{position:fixed;inset:0;z-index:82;pointer-events:none;overflow:hidden}
.web-slinger-v122 .web{position:absolute;inset:0;transform-origin:right center;animation:v122WebTug 2.1s ease-out forwards}
.web-slinger-v122 i{position:absolute;right:-3%;top:50%;width:115vw;height:2px;background:linear-gradient(90deg,rgba(225,238,255,.06),rgba(225,238,255,.9) 70%,rgba(255,255,255,.95));box-shadow:0 0 5px rgba(80,130,255,.55);transform-origin:right center;transform:rotate(calc((var(--i) - 5)*4.8deg)) scaleX(.05);animation:v122WebShoot .52s cubic-bezier(.1,.8,.2,1) forwards;animation-delay:calc(var(--i)*.025s)}
.web-slinger-v122::after{content:"";position:absolute;right:2%;top:50%;width:12vmin;height:12vmin;border-radius:50%;border:2px solid rgba(225,238,255,.75);box-shadow:0 0 0 5px rgba(220,235,255,.1),0 0 24px rgba(36,93,255,.32);transform:translate(50%,-50%) scale(.2);animation:v122WebHub .7s ease forwards}
@keyframes v122WebShoot{to{transform:rotate(calc((var(--i) - 5)*4.8deg)) scaleX(1)}}@keyframes v122WebHub{to{transform:translate(50%,-50%) scale(1)}}@keyframes v122WebTug{0%,45%{transform:translateX(0)}60%{transform:translateX(-1.2vw)}100%{transform:translateX(0);opacity:0}}

/* #202: shorter blink, and each appearance uses a different colour supplied by JS. */
.one-pixel-target.flicker{background:var(--pixel-color,#ff3b30)!important;box-shadow:0 0 5px 1px color-mix(in srgb,var(--pixel-color,#ff3b30) 65%,transparent)!important}

/* #214: denser, faster-moving credits; JS removes only after the final line has
   fully cleared the top edge. */
.credits-roll-v122{display:block!important;background:rgba(0,0,0,.95);z-index:92!important;pointer-events:none;overflow:hidden}
.credits-roll-v122>div{position:absolute;left:4%;right:4%;top:0;text-align:center;will-change:transform}
.credits-roll-v122 p{margin:19px auto;font-style:normal;font-size:clamp(10px,1.25vw,16px);letter-spacing:.16em;color:rgba(255,255,255,.68);max-width:980px}
.credits-roll-v122 .c0{font-size:clamp(20px,3.8vw,48px);color:#fff;margin:28px auto}.credits-roll-v122 .c1{color:var(--accent)}.credits-roll-v122 .c2{font-size:clamp(9px,1.05vw,13px);color:rgba(255,255,255,.42)}.credits-roll-v122 .c3{font-family:monospace;color:rgba(255,255,255,.58)}.credits-roll-v122 .c4{font-weight:800;color:rgba(255,255,255,.82)}


/* ==========================================================================
   v1.2.3 REVIEW HOTFIX
   ========================================================================== */

/* #041: after the yellow slash animation, retain a normal, very thin Z. */
.zorro-letter-v123{display:grid!important;place-items:center!important}
.zorro-letter-v123 b{font:100 clamp(150px,42vw,620px)/.75 "Arial Narrow",Arial,sans-serif;color:rgba(255,255,255,.42);letter-spacing:-.08em;text-shadow:0 0 5px rgba(255,255,255,.08)}

/* #004: explicit, high-contrast analog hand. JS advances it only when the
   visible countdown second changes. */
.second-hand-v123{z-index:64!important;display:grid!important;place-items:center!important}
.second-hand-v123 .dial{position:relative!important;width:min(58vmin,470px)!important;aspect-ratio:1!important;border:1px solid rgba(255,255,255,.16)!important;border-radius:50%!important;background:radial-gradient(circle,rgba(255,255,255,.025),transparent 62%)!important}
.second-hand-v123 .dial .hand{display:block!important;position:absolute!important;left:50%!important;top:50%!important;width:3px!important;height:43%!important;background:linear-gradient(to top,#f2a900 0 70%,#fff 100%)!important;box-shadow:0 0 8px #f2a900,0 0 18px rgba(242,169,0,.65)!important;transform-origin:50% 100%!important;transition:none!important;z-index:3!important}
.second-hand-v123 .dial .hub{position:absolute;left:50%;top:50%;width:13px;height:13px;border-radius:50%;background:#fff;box-shadow:0 0 16px #f2a900;transform:translate(-50%,-50%);z-index:4}

/* #030: recognisable emoji cat follows the pointer. */
.cat-emoji-chaser-v123{position:fixed;left:0;top:0;z-index:78;pointer-events:none;font-size:clamp(52px,8vw,96px);line-height:1;filter:drop-shadow(0 8px 12px #000);will-change:transform}

/* #063: black cat sits on the bottom edge of the viewport. */
.black-cat-v123 .cat-emoji{position:absolute;left:8%;bottom:-.08em;font-size:clamp(90px,20vw,230px);line-height:1;filter:drop-shadow(0 10px 16px #000)}

/* #081: deliberately different from Corner Cut I — four sequential corner
   energy pulses, with no diagonal crossing lines. */
.corner-cut-two-v123{position:fixed;inset:0;z-index:80;pointer-events:none}
.corner-cut-two-v123 .corner{position:absolute;width:20px;height:20px;border-radius:50%;border:2px solid #fff;background:#f2a900;box-shadow:0 0 0 0 rgba(242,169,0,.55),0 0 24px #f2a900;opacity:0;animation:v123CornerPulse .8s ease-out forwards}
.corner-cut-two-v123 .bl{left:2%;bottom:2%;animation-delay:0s}.corner-cut-two-v123 .tr{right:2%;top:2%;animation-delay:.32s}.corner-cut-two-v123 .br{right:2%;bottom:2%;animation-delay:.64s}.corner-cut-two-v123 .tl{left:2%;top:2%;animation-delay:.96s}
@keyframes v123CornerPulse{0%{opacity:0;transform:scale(.2);box-shadow:0 0 0 0 rgba(242,169,0,.6)}35%{opacity:1;transform:scale(1.2);box-shadow:0 0 0 32px rgba(242,169,0,.12),0 0 34px #f2a900}100%{opacity:.28;transform:scale(.65);box-shadow:0 0 0 58px transparent}}

/* #153: cows travel in a wavy line across the top region. */
.cow-level-v123>b{position:absolute;left:50%;top:15%;transform:translateX(-50%);white-space:nowrap;font:800 clamp(15px,2.5vw,30px)/1 Arial;letter-spacing:.16em;color:rgba(255,255,255,.68);text-shadow:0 3px 12px #000}
.cow-level-v123 i{position:absolute;left:-14%;top:6%;font-style:normal;font-size:clamp(40px,6vw,76px);filter:drop-shadow(0 5px 5px #000);animation:v123CowWave 15s linear infinite;animation-delay:calc(var(--i)*-2.15s)}
@keyframes v123CowWave{0%{left:-14%;transform:translateY(0) rotate(-2deg)}12.5%{transform:translateY(24px) rotate(3deg)}25%{transform:translateY(-10px) rotate(-2deg)}37.5%{transform:translateY(28px) rotate(3deg)}50%{transform:translateY(-14px) rotate(-2deg)}62.5%{transform:translateY(24px) rotate(3deg)}75%{transform:translateY(-8px) rotate(-2deg)}87.5%{transform:translateY(22px) rotate(3deg)}100%{left:114%;transform:translateY(0) rotate(-2deg)}}

/* #189: the effect itself always parks the real stage at top-left. */
body.egg-page-snap-corner-v123 .stage{place-items:start!important;padding:3vh 3vw!important}
body.egg-page-snap-corner-v123 :is(.countdown-view,.live-content){width:min(58vw,700px)!important;transform:none!important;transform-origin:top left!important;text-align:left!important}
body.egg-page-snap-corner-v123 :is(.clock-row,.live-title){font-size:clamp(30px,6vw,86px)!important;justify-content:flex-start!important}
body.egg-page-snap-corner-v123 .movie-pun{margin-top:20px!important;text-align:left!important}
@media(max-width:600px){body.egg-page-snap-corner-v123 :is(.countdown-view,.live-content){width:88vw!important}body.egg-page-snap-corner-v123 :is(.clock-row,.live-title){font-size:clamp(28px,9vw,48px)!important}}

/* #214: dense but slightly slower than v1.2.2. JS owns the travel distance so
   the overlay is removed only after the last line is fully above the viewport. */
.credits-roll-v123{display:block!important;background:rgba(0,0,0,.95);z-index:92!important;pointer-events:none;overflow:hidden}
.credits-roll-v123>div{position:absolute;left:4%;right:4%;top:0;text-align:center;will-change:transform}
.credits-roll-v123 p{margin:19px auto;font-style:normal;font-size:clamp(10px,1.25vw,16px);letter-spacing:.16em;color:rgba(255,255,255,.68);max-width:980px}
.credits-roll-v123 .c0{font-size:clamp(20px,3.8vw,48px);color:#fff;margin:28px auto}.credits-roll-v123 .c1{color:var(--accent)}.credits-roll-v123 .c2{font-size:clamp(9px,1.05vw,13px);color:rgba(255,255,255,.42)}.credits-roll-v123 .c3{font-family:monospace;color:rgba(255,255,255,.58)}.credits-roll-v123 .c4{font-weight:800;color:rgba(255,255,255,.82)}


/* ==========================================================================
   v1.2.4 REVIEW HOTFIX
   ========================================================================== */

/* Proper speaker button: clear speaker silhouette, radiating waves when on,
   mute X when off. */
.sound-button{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;transition:opacity .18s ease,border-color .18s ease,background .18s ease,transform .18s ease}
.sound-button:hover{border-color:rgba(255,255,255,.26);background:rgba(255,255,255,.055)}
.sound-button:active{transform:scale(.94)}
.sound-icon,.sound-icon svg{display:block;width:23px;height:23px}
.sound-icon svg{overflow:visible}
.sound-icon .speaker-body{fill:currentColor;stroke:none}
.sound-icon .sound-wave{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;opacity:0;transition:opacity .16s ease}
.sound-icon .mute-slash{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;opacity:.78;transition:opacity .16s ease}
.sound-button.sound-on{opacity:.88!important;color:rgba(244,241,234,.92);border-color:rgba(242,169,0,.38);background:rgba(242,169,0,.075)}
.sound-button.sound-on .sound-wave{opacity:.9}.sound-button.sound-on .mute-slash{opacity:0}
.sound-button.sound-off{opacity:.46!important}.sound-button.sound-off .sound-wave{opacity:0}.sound-button.sound-off .mute-slash{opacity:.75}

/* #004: isolated persistent second hand. No legacy generic <i> clock rules can
   hide or rotate this arm. */
.second-hand-widget-v124{position:fixed;inset:0;z-index:64;display:grid;place-items:center;pointer-events:none;overflow:hidden}
.second-hand-widget-v124 .clockface{position:relative;width:min(58vmin,470px);aspect-ratio:1;border:1px solid rgba(255,255,255,.16);border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.028),transparent 63%);box-shadow:inset 0 0 70px rgba(0,0,0,.75),0 0 45px rgba(242,169,0,.07)}
.second-hand-widget-v124 .clockface::before{content:"";position:absolute;inset:5%;border-radius:50%;border:1px dashed rgba(255,255,255,.06)}
.second-hand-widget-v124 .second-hand-arm{display:block;position:absolute;left:50%;top:7%;width:3px;height:43%;background:linear-gradient(to bottom,#fff 0 12%,#f2a900 38% 100%);box-shadow:0 0 7px #f2a900,0 0 17px rgba(242,169,0,.64);transform-origin:50% 100%;transform:translateX(-50%) rotate(0deg);transition:transform .07s steps(1,end);z-index:4}
.second-hand-widget-v124 .second-hand-hub{position:absolute;left:50%;top:50%;width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:0 0 0 3px #f2a900,0 0 18px #f2a900;transform:translate(-50%,-50%);z-index:5}
.second-hand-widget-v124 .tick{position:absolute;background:rgba(255,255,255,.45)}
.second-hand-widget-v124 .t0,.second-hand-widget-v124 .t30{left:50%;width:1px;height:12px;transform:translateX(-50%)}
.second-hand-widget-v124 .t0{top:2.5%}.second-hand-widget-v124 .t30{bottom:2.5%}
.second-hand-widget-v124 .t15,.second-hand-widget-v124 .t45{top:50%;width:12px;height:1px;transform:translateY(-50%)}
.second-hand-widget-v124 .t15{right:2.5%}.second-hand-widget-v124 .t45{left:2.5%}

/* #030: emoji follower; JS flips the native left-facing cat while it travels right. */
.cat-emoji-chaser-v124{position:fixed;left:0;top:0;z-index:78;pointer-events:none;font-size:clamp(52px,8vw,96px);line-height:1;filter:drop-shadow(0 8px 12px #000);will-change:transform}

/* #041: thin, irregular handwritten Zorro-style mark. */
.zorro-letter-v124{display:grid!important;place-items:center!important}
.zorro-letter-v124 b{font-family:"Segoe Print","Bradley Hand","Lucida Handwriting",cursive;font-size:clamp(150px,40vw,590px);font-weight:100!important;font-style:italic;line-height:.78;color:rgba(255,255,255,.38);letter-spacing:-.12em;transform:skewX(-8deg) rotate(-3deg);text-shadow:.6px -.4px 0 rgba(255,255,255,.16),-.7px .5px 0 rgba(255,255,255,.08);-webkit-text-stroke:0 transparent}

/* #063: intentionally small, true-black cat silhouette on the bottom edge. */
.black-cat-v124 .cat-emoji{position:absolute;left:8%;bottom:-2px;font-size:clamp(46px,7vw,82px);line-height:1;filter:grayscale(1) brightness(0) drop-shadow(0 5px 7px rgba(0,0,0,.75));transform:none}

/* #097–100 no lingering direction labels. */
.direction-sweep b{display:none!important}

/* #214: retain the v1.2.3 visual density with deliberate almost-page pauses. */
.credits-roll-v124{display:block!important;background:rgba(0,0,0,.95);z-index:92!important;pointer-events:none;overflow:hidden}
.credits-roll-v124>div{position:absolute;left:4%;right:4%;top:0;text-align:center;will-change:transform}
.credits-roll-v124 p{margin:19px auto;font-style:normal;font-size:clamp(10px,1.25vw,16px);letter-spacing:.16em;color:rgba(255,255,255,.68);max-width:980px}
.credits-roll-v124 .c0{font-size:clamp(20px,3.8vw,48px);color:#fff;margin:28px auto}.credits-roll-v124 .c1{color:var(--accent)}.credits-roll-v124 .c2{font-size:clamp(9px,1.05vw,13px);color:rgba(255,255,255,.42)}.credits-roll-v124 .c3{font-family:monospace;color:rgba(255,255,255,.58)}.credits-roll-v124 .c4{font-weight:800;color:rgba(255,255,255,.82)}
.credits-roll-v124 .end-title{font-size:clamp(26px,5vw,64px);color:#fff;margin:50px auto;letter-spacing:.28em}
.credits-roll-v124 .credits-gap-page{height:82vh;margin:0!important;padding:0!important}

/* ==========================================================================
   v1.2.5 REVIEW HOTFIX
   ========================================================================== */

/* #004 — SVG clock is deliberately self-contained so no old generic <i>
   rules can hide the hand. */
.second-hand-widget-v125{position:fixed;inset:0;z-index:66;display:grid;place-items:center;pointer-events:none;overflow:hidden}
.second-hand-widget-v125 .second-hand-clock{width:min(58vmin,470px);height:auto;overflow:visible;filter:drop-shadow(0 0 22px rgba(242,169,0,.10))}
.second-hand-widget-v125 .face{fill:rgba(0,0,0,.18);stroke:rgba(255,255,255,.18);stroke-width:.45}
.second-hand-widget-v125 .tick-mark{stroke:rgba(255,255,255,.48);stroke-width:.55;stroke-linecap:round}
.second-hand-widget-v125 .hand{stroke:#f2a900;stroke-width:1.25;stroke-linecap:round;filter:drop-shadow(0 0 2px #f2a900) drop-shadow(0 0 4px rgba(242,169,0,.7))}
.second-hand-widget-v125 .hub{fill:#fff;stroke:#f2a900;stroke-width:1;filter:drop-shadow(0 0 3px #f2a900)}

.cat-emoji-chaser-v125{position:fixed;left:0;top:0;z-index:78;pointer-events:none;font-size:clamp(52px,8vw,96px);line-height:1;filter:drop-shadow(0 8px 12px #000);will-change:transform}

.zorro-letter-v125{display:grid!important;place-items:center!important}
.zorro-letter-v125 b{font-family:"Segoe Print","Bradley Hand","Lucida Handwriting",cursive;font-size:clamp(145px,38vw,560px);font-weight:100!important;font-style:italic;line-height:.78;color:rgba(255,255,255,.36);letter-spacing:-.13em;transform:skewX(-10deg) rotate(-3deg);text-shadow:.35px -.25px 0 rgba(255,255,255,.12),-.45px .3px 0 rgba(255,255,255,.06);-webkit-text-stroke:0 transparent}

.black-cat-v125 .cat-emoji{position:absolute;left:7%;bottom:2px;font-size:clamp(30px,5vw,54px);line-height:1;filter:drop-shadow(0 4px 6px rgba(0,0,0,.72));transform:none}

.credits-roll-v125{display:block!important;background:rgba(0,0,0,.95);z-index:92!important;pointer-events:none;overflow:hidden}
.credits-roll-v125>div{position:absolute;left:4%;right:4%;top:0;text-align:center;will-change:transform}
.credits-roll-v125 p{margin:19px auto;font-style:normal;letter-spacing:.16em;max-width:980px}
.credits-roll-v125 .credit-heading{font-size:clamp(22px,4vw,52px);color:#fff;margin:34px auto;font-weight:800;letter-spacing:.22em}
.credits-roll-v125 .credit-subheading{font-size:clamp(11px,1.3vw,16px);color:rgba(255,255,255,.64);margin:19px auto}
.credits-roll-v125 .credit-detail{font-size:clamp(9px,1.05vw,13px);color:rgba(255,255,255,.55);margin:17px auto;font-family:monospace}
.credits-roll-v125 .credit-detail.c1{color:rgba(242,169,0,.72)}
.credits-roll-v125 .credit-detail.c2{color:rgba(255,255,255,.46)}
.credits-roll-v125 .credit-detail.c3{color:rgba(255,255,255,.62)}
.credits-roll-v125 .end-title{font-size:clamp(26px,5vw,64px);color:#fff;margin:50px auto;letter-spacing:.28em;font-weight:800}
.credits-roll-v125 .credits-gap-page{height:82vh;margin:0!important;padding:0!important}


/* ==========================================================================\n   v1.2.7 REVIEW HOTFIX\n   ========================================================================== */
/* #184: keep the thin white core, but move the glow into a deeper blue. */
.force-v121.force-v122 .saber{
  background:#fff!important;
  box-shadow:0 0 4px #fff,0 0 13px #1f5cff,0 0 38px #0b3d91,0 0 88px #061a56,0 0 125px rgba(3,21,72,.72)!important;
}


/* --------------------------------------------------------------------------
   v1.3 — launch preview, ongoing live party, 214/214 completion, Snake fit
   -------------------------------------------------------------------------- */
.preview-mode-badge{position:fixed;left:50%;top:max(10px,env(safe-area-inset-top));transform:translateX(-50%);z-index:2000;display:flex;gap:12px;align-items:center;padding:9px 12px;background:rgba(0,0,0,.82);border:1px solid rgba(242,169,0,.35);backdrop-filter:blur(12px);font:9px/1.2 "Helvetica Neue",Arial,sans-serif;letter-spacing:.14em;color:#f2c14e}.preview-mode-badge a{color:rgba(255,255,255,.7);text-decoration:none;border-left:1px solid rgba(255,255,255,.14);padding-left:12px}

body.live-party-active{overflow:hidden}.live-party-lights{position:fixed;inset:-20%;z-index:2;pointer-events:none;overflow:hidden;mix-blend-mode:screen;opacity:.42}.live-party-lights i{position:absolute;left:50%;top:-15%;width:18vw;height:140vh;transform-origin:50% 0;background:linear-gradient(to bottom,rgba(255,50,160,.2),rgba(255,50,160,0));clip-path:polygon(44% 0,56% 0,100% 100%,0 100%);filter:blur(10px);animation:liveBeam 7s ease-in-out infinite alternate}.live-party-lights i:nth-child(2){background:linear-gradient(to bottom,rgba(40,160,255,.2),transparent);animation-delay:-2.3s}.live-party-lights i:nth-child(3){background:linear-gradient(to bottom,rgba(255,220,40,.16),transparent);animation-delay:-4.5s}.live-party-lights i:nth-child(4){background:linear-gradient(to bottom,rgba(70,255,160,.16),transparent);animation-delay:-6s}@keyframes liveBeam{0%{transform:translateX(-34vw) rotate(-28deg)}50%{transform:translateX(8vw) rotate(8deg)}100%{transform:translateX(34vw) rotate(30deg)}}
body.live-party-active:not([class*="egg-"]) .live-view h1{animation:liveTitleParty 2.7s ease-in-out infinite}@keyframes liveTitleParty{50%{text-shadow:0 0 35px rgba(229,160,13,.35),0 0 80px rgba(255,70,190,.15);transform:scale(1.025)}}
.live-streamer-burst{position:fixed;left:var(--x);top:5%;z-index:4;pointer-events:none}.live-streamer-burst i{position:absolute;width:5px;height:100px;border-radius:6px;background:hsl(calc(var(--i)*43deg) 92% 62%);transform-origin:50% 0;animation:streamerFly 3.1s cubic-bezier(.15,.68,.2,1) forwards;transform:translateX(var(--dx)) rotate(var(--r))}@keyframes streamerFly{0%{opacity:0;translate:0 -30px;scale:.15}8%{opacity:1}70%{opacity:.9}100%{opacity:0;translate:0 82vh;rotate:calc(var(--r) + 300deg)}}
.live-spark-burst{position:fixed;z-index:4;pointer-events:none;width:1px;height:1px}.live-spark-burst i{position:absolute;width:4px;height:24px;border-radius:999px;background:hsl(calc(var(--i)*29deg) 100% 65%);box-shadow:0 0 10px currentColor;transform-origin:50% 0;animation:sparkFly 1.9s ease-out forwards;rotate:var(--a)}@keyframes sparkFly{0%{opacity:1;translate:0 0;scale:1}100%{opacity:0;translate:0 -170px;scale:.25}}

body.hunt-complete .egg-button{border-color:rgba(255,202,68,.55)!important;color:#ffd766!important;box-shadow:0 0 24px rgba(255,190,40,.15)}body.hunt-complete .egg-shell{stroke:#ffd766!important;filter:drop-shadow(0 0 8px rgba(255,190,40,.4))}body.hunt-complete .movie-pun{color:rgba(255,218,110,.74)}body.hunt-complete .drawer-progress strong{color:#ffd766}.completion-ambient{position:fixed;inset:0;z-index:1;pointer-events:none;overflow:hidden}.completion-ambient i{position:absolute;left:var(--x);bottom:-20px;width:3px;height:3px;border-radius:50%;background:#ffd766;box-shadow:0 0 9px rgba(255,205,70,.65);animation:completionFloat calc(8s + var(--i)*.17s) linear infinite;animation-delay:calc(var(--i)*-.8s);opacity:.32}@keyframes completionFloat{to{transform:translateY(-110vh) translateX(calc((var(--i) - 11)*1.8px));opacity:0}}
.hall-of-fame-button{background:transparent;border:1px solid rgba(255,205,70,.3);color:#ffd766;padding:8px 10px;font:700 8px/1 "Helvetica Neue",Arial,sans-serif;letter-spacing:.14em}.hall-of-fame-overlay,.completion-finale{position:fixed;inset:0;z-index:1800;background:rgba(0,0,0,.94);display:grid;place-items:center;padding:20px;pointer-events:auto}.hof-card,.completion-hof{width:min(900px,94vw);border:1px solid rgba(255,210,85,.28);background:radial-gradient(circle at 50% 0,rgba(255,200,55,.08),rgba(5,5,5,.98) 45%);padding:clamp(24px,5vw,56px);box-shadow:0 30px 100px rgba(0,0,0,.7),0 0 60px rgba(255,190,40,.05)}.hof-kicker{font:9px/1.3 "Helvetica Neue",Arial,sans-serif;letter-spacing:.28em;color:rgba(255,215,110,.6)}.hof-card h2,.completion-hof h2{font:200 clamp(40px,8vw,82px)/.95 "Helvetica Neue",Arial,sans-serif;letter-spacing:-.05em;margin:12px 0;color:#f7e7b4}.hof-rank{font:700 11px/1 "Helvetica Neue",Arial,sans-serif;letter-spacing:.22em;color:#ffd766;margin:18px 0 28px}.hof-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:rgba(255,255,255,.08)}.hof-grid>div{background:#080808;padding:15px}.hof-grid span{display:block;font:8px/1.2 "Helvetica Neue",Arial,sans-serif;letter-spacing:.18em;color:rgba(255,255,255,.34);margin-bottom:7px}.hof-grid b{font:400 11px/1.55 "Helvetica Neue",Arial,sans-serif;color:rgba(255,255,255,.78)}.hof-close,.completion-close{margin-top:24px;background:#e5a00d;border:0;color:#070707;padding:12px 15px;font:800 9px/1 "Helvetica Neue",Arial,sans-serif;letter-spacing:.16em;cursor:pointer}
.completion-finale{background:#000;z-index:1900}.completion-intro{text-align:center;transition:opacity .55s,transform .55s}.completion-kicker,.completion-prompt{font:9px/1.3 "Helvetica Neue",Arial,sans-serif;letter-spacing:.25em;color:rgba(255,222,135,.62)}.completion-prompt{margin-top:22px}.golden-egg{position:relative;width:clamp(145px,26vw,260px);aspect-ratio:.76;margin:28px auto 8px;border:0;background:radial-gradient(circle at 34% 25%,#fff6b5 0 4%,#f7d86c 12%,#ca8919 53%,#6d3d05 100%);border-radius:52% 52% 48% 48% / 62% 62% 38% 38%;box-shadow:0 0 40px rgba(255,190,40,.3),0 0 120px rgba(255,150,0,.12),inset -18px -24px 35px rgba(80,36,0,.35);cursor:pointer;animation:goldEggBreathe 2.2s ease-in-out infinite}.golden-egg::before{content:"";position:absolute;inset:9%;border:1px solid rgba(255,246,190,.22);border-radius:inherit}.golden-egg i,.golden-egg span{position:absolute;left:15%;right:12%;top:48%;height:3px;background:#241204;opacity:0;transform:rotate(-14deg);box-shadow:28px -17px 0 -1px #241204,-20px 22px 0 -1px #241204}.completion-finale.cracked .golden-egg{animation:goldCrack .85s ease forwards}.completion-finale.cracked .golden-egg i,.completion-finale.cracked .golden-egg span{opacity:.82}.completion-finale.cracked .completion-intro{transform:scale(1.04)}@keyframes goldEggBreathe{50%{transform:scale(1.035);box-shadow:0 0 65px rgba(255,190,40,.45),0 0 150px rgba(255,150,0,.16)}}@keyframes goldCrack{45%{transform:scale(1.08) rotate(-2deg);filter:brightness(1.7)}100%{transform:scale(.88);opacity:.16;filter:brightness(2.2)}}.completion-hof{position:absolute;opacity:0;transform:translateY(25px) scale(.98);pointer-events:none;transition:opacity .8s,transform .8s}.completion-finale.show-hof .completion-intro{opacity:0;pointer-events:none}.completion-finale.show-hof .completion-hof{opacity:1;transform:none;pointer-events:auto}
@media(max-width:650px){.hof-grid{grid-template-columns:1fr}.hof-card,.completion-hof{padding:24px}.hall-of-fame-overlay,.completion-finale{padding:10px}}

/* Snake must stay centred and entirely inside the visible viewport. */
.snake-v13{display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:max(12px,env(safe-area-inset-top)) 10px max(12px,env(safe-area-inset-bottom))!important}
.snake-v13 .snake-hud{position:relative!important;left:auto!important;top:auto!important;transform:none!important;width:min(760px,94vw,calc((100dvh - 120px)*1.6))!important;flex:0 0 auto}
.snake-v13 .snake-board{position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;width:min(760px,94vw,calc((100dvh - 120px)*1.6))!important;max-width:94vw!important;max-height:calc(100dvh - 120px)!important;flex:0 0 auto}
@media(max-height:520px){.snake-v13{gap:5px}.snake-v13 .snake-hud{font-size:8px}.snake-v13 .snake-board{width:min(760px,90vw,calc((100dvh - 76px)*1.6))!important;max-height:calc(100dvh - 76px)!important}}

body.hunt-complete .egg-button::after{content:"★";position:absolute;right:-5px;top:-7px;color:#ffd766;font-size:11px;text-shadow:0 0 8px rgba(255,195,45,.7)}
.golden-finale-burst{position:fixed;left:50%;top:50%;z-index:1950;pointer-events:none}.golden-finale-burst i{position:absolute;width:var(--w);height:calc(var(--w)*2.4);border-radius:3px;background:hsl(calc(38 + (var(--i)%4)*6) 95% 58%);box-shadow:0 0 8px rgba(255,195,45,.7);rotate:var(--a);animation:goldenFinaleParticle 2.8s cubic-bezier(.12,.7,.25,1) forwards}@keyframes goldenFinaleParticle{0%{opacity:1;translate:0 0;scale:.4}70%{opacity:1}100%{opacity:0;translate:0 calc(var(--d)*-1);rotate:calc(var(--a) + 400deg);scale:1}}
.golden-streamer-burst{position:fixed;top:4%;z-index:1950;pointer-events:none}.golden-streamer-burst i{position:absolute;width:5px;height:110px;border-radius:6px;background:hsl(calc(38 + var(--j)*2) 90% 58%);box-shadow:0 0 7px rgba(255,190,40,.4);transform:translateX(var(--dx)) rotate(calc(var(--j)*17deg - 70deg));animation:goldenStreamerFall 2.45s ease-out forwards}@keyframes goldenStreamerFall{0%{opacity:0;translate:0 -30px;scale:.2}10%{opacity:1}100%{opacity:0;translate:0 82vh;rotate:360deg}}
