/* Panel 3 is 2750 x 1536 source pixels. Screen uses the existing glow anchor.
   Flight bounds: x=5650, y=150, w=430, h=604 in the full 8250px panorama.
   No body pixels are changed. Keep these four values together when relocating. */
.iwish-flight { position:absolute; left:5.4545%; top:9.7656%; width:15.6364%; height:39.3229%; z-index:2; pointer-events:none; opacity:0; visibility:hidden; transition:opacity .12s; }
.iwish-flight.is-active { opacity:1; visibility:visible; }
.iwish-drone-video { position:absolute; inset:0; width:100%; height:100%; object-fit:fill; }
/* Opaque receiving well covers the baked closed cap inside the opening. */
.iwish-receiving-well { position:absolute; left:28%; width:44%; top:80%; height:8.7%; border-radius:50% 50% 16% 16%; background:linear-gradient(#19191b,#09090b); }
.iwish-screen-video { display:none; position:absolute; inset:0; width:100%; height:100%; object-fit:fill; border-radius:10%; }
.anything-hotspot.iwish-running .anything-screen-light { opacity:1; background:rgba(8,12,13,.88); overflow:hidden; }
.anything-hotspot.iwish-running .anything-screen-light::after { display:none; }
.anything-hotspot.iwish-running .iwish-screen-video { display:block; }
.anything-hotspot.iwish-running .anything-cue { display:none; }
.iwish-hud { position:fixed; width:90px; color:#87e892; z-index:85; pointer-events:none; opacity:0; transform:translateY(3px); transition:opacity .12s,transform .12s; filter:drop-shadow(0 0 3px #5def7640); }
.iwish-hud.is-active { opacity:.9; transform:none; }
.iwish-hud svg { display:block; width:76px; height:38px; }
.iwish-hud span { display:block; padding-top:4px; font:500 10px/1.3 Menlo,monospace; letter-spacing:.08em; }
.iwish-status { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
/* Only the screen accepts activation; retain the cabinet anchor for scene math. */
.anything-hotspot { background:none !important; pointer-events:none !important; }
.anything-hotspot .anything-screen-light { pointer-events:auto; min-width:44px; min-height:44px; }
.anything-hotspot:not(.is-inspectable) .anything-screen-light,
.anything-hotspot:disabled .anything-screen-light,
.anything-hotspot.iwish-running .anything-screen-light { pointer-events:none; }
.anything-hotspot.is-inspectable::before { display:none; }
.anything-hotspot:focus-visible { outline:none; }
.anything-hotspot:focus-visible .anything-screen-light { outline:2px solid #f6ba02; outline-offset:3px; }
@media(prefers-reduced-motion:reduce) { .iwish-flight,.iwish-hud { display:none; } }

/* The original video is the hidden single decoder for two synchronized crops. */
.iwish-drone-video { opacity:0; }
.iwish-aircraft,.iwish-dock { position:absolute; inset:0; width:100%; height:100%; pointer-events:none; }
.iwish-aircraft { z-index:1; will-change:transform; }
.iwish-dock { z-index:2; }
html.iwish-scroll-locked { overscroll-behavior:none; }
html.iwish-scroll-locked #hero-pin { touch-action:none; }
html.iwish-scroll-locked #desert-parallax { transform:translate(0,0) !important; }

/* Idle wish: light-only artwork, clipped to the existing screen glass. */
.iwish-flower {position:absolute;inset:0;width:100%;height:100%;pointer-events:none;mix-blend-mode:screen;}
.anything-hotspot .anything-screen-light {overflow:hidden;}
.anything-hotspot .anything-screen-light::after {display:none;}

.anything-hotspot.iwish-used:not(.iwish-running):not(.iwish-blowing) .anything-screen-light {opacity:0;pointer-events:none;}
.anything-hotspot.iwish-blowing .anything-screen-light {opacity:1;pointer-events:none;}

/* The display and its invitation share the same narrow power window. */
.anything-hotspot:not(.is-powered):not(.iwish-running):not(.iwish-blowing) .anything-screen-light {opacity:0;visibility:hidden;pointer-events:none;transition:none;}
.anything-hotspot.is-powered:not(.iwish-used) .anything-screen-light {visibility:visible;animation:iwish-wake .55s linear both;}
.anything-hotspot.is-powered.is-inspectable:not(.iwish-used) .anything-cue {opacity:1;transform:translate(-50%,0);}
.anything-hotspot:not(.is-powered) .anything-cue,.anything-hotspot.iwish-used .anything-cue {opacity:0;}
@keyframes iwish-wake {0%{opacity:0}22%{opacity:.18}38%{opacity:.08}65%{opacity:.65}100%{opacity:1}}
@media(prefers-reduced-motion:reduce){.anything-hotspot.is-powered:not(.iwish-used) .anything-screen-light {animation:none;opacity:1;}}
