/* Grim & Goldie Studios — v786 stabilization authority. */

/* One Avatar Studio hand layer. None stays none; every other mode stays visible. */
body.avatar-page #avatarSvg #ggFloatingHandsV515,
body.avatar-page #avatarSvg #ggGlobalHandsV534,
body.avatar-page #avatarSvg #ggGlobalHandsV532,
body.avatar-page #avatarSvg #ggGlobalHandsV531,
body.avatar-page #avatarSvg #ggV563HandsLayer,
body.avatar-page #avatarSvg #ggV562HandsLayer,
body.avatar-page #avatarSvg #ggV561HandsLayer,
body.avatar-page #avatarSvg #ggNativeHands,
body.avatar-page #avatarSvg #handLayer,
body.avatar-page #avatarSvg #handsLayer{display:none!important;visibility:hidden!important;pointer-events:none!important}
body.avatar-page #avatarSvg #ggGlobalHandsV536{pointer-events:none!important}
body.avatar-page #avatarSvg #ggGlobalHandsV536[data-mode="none"]{display:none!important;visibility:hidden!important;opacity:0!important}
body.avatar-page #avatarSvg #ggGlobalHandsV536:not([data-mode="none"]){display:inline!important;visibility:visible!important;opacity:1!important}
body.avatar-page #avatarSvg #ggHairV326Rear{display:inline!important}
body.avatar-page #avatarSvg #ggHairV326Front{display:inline!important}

/* Padded house exports keep tree/palm tops inside their own transparent canvases. */
#ggIslandSceneryV687,
.ggi-housing-house-v766,
.ggi-housing-house-v769,
.ggi-housing-house-v770,
.ggi-housing-house-v771,
.ggi-housing-house-v773,
.ggi-housing-house-frame-v769,
.ggi-house-props-v769{overflow:visible!important}
.ggi-housing-house-v766.ggi-housing-house-v769{width:304px!important;height:326px!important}
.ggi-housing-house-v769 .ggi-housing-house-frame-v769{inset:0!important;width:100%!important;height:100%!important}
.ggi-housing-house-v769 .ggi-housing-house-art-v769{width:100%!important;height:100%!important;object-fit:contain!important;object-position:50% 100%!important}
@media(max-width:560px){.ggi-housing-house-v766.ggi-housing-house-v769{width:304px!important;height:326px!important}}

/* The board is presentation-only. One invisible internal button owns input. */
.ggi-surfboard-v716{pointer-events:none!important;outline:0!important;border:0!important;background:transparent!important;box-shadow:none!important;-webkit-tap-highlight-color:transparent!important;-webkit-user-select:none!important;user-select:none!important}
.ggi-surfboard-v716::after{display:none!important;content:none!important}
.ggi-surfboard-hit-v781,
.ggi-surfboard-hit-v781:focus,
.ggi-surfboard-hit-v781:focus-visible,
.ggi-surfboard-hit-v781:active{position:absolute;left:50%;top:50%;z-index:20;width:112px;height:174px;transform:translate(-50%,-50%);padding:0;margin:0;border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;appearance:none;-webkit-appearance:none;border-radius:26px;pointer-events:auto!important;touch-action:manipulation;-webkit-tap-highlight-color:transparent!important}

/* Shark uses one clipped movement wrapper. The source art faces right. */
.ggi-feature-sea-v771.shark{overflow:visible!important;background:none!important}
.ggi-feature-sea-v771.shark .ggi-feature-sea-motion-v771{position:absolute;inset:0;display:block;overflow:visible;transform-origin:50% 50%;transform:scaleX(var(--ggi-shark-dir-v771,1)) rotate(var(--ggi-shark-angle-v771,0deg));will-change:transform}
.ggi-feature-shark-svg-v781{display:block;width:100%;height:100%;overflow:visible;filter:drop-shadow(0 8px 6px rgba(5,38,69,.23))}
.ggi-feature-shark-svg-v781 .ggi-shark-body-v781{animation:ggiSharkBodyV781 1.65s ease-in-out infinite alternate;transform-origin:48% 58%}
.ggi-feature-shark-svg-v781 .ggi-shark-tail-v781{animation:ggiSharkTailV781 .72s ease-in-out infinite alternate;transform-origin:75% 58%}
.ggi-feature-shark-svg-v781 .ggi-shark-fin-v781{animation:ggiSharkFinV781 1.08s ease-in-out infinite alternate;transform-origin:56% 34%}
@keyframes ggiSharkTailV781{from{transform:rotate(7deg)}to{transform:rotate(-9deg)}}
@keyframes ggiSharkBodyV781{from{transform:translateY(-1.2px)}to{transform:translateY(1.6px)}}
@keyframes ggiSharkFinV781{from{transform:rotate(0)}to{transform:rotate(3deg)}}

/* Pelican host does not create a stacking context; each bird owns its world depth. */
#ggIslandPelicansV781,#ggIslandPelicanPoopV781{position:absolute;inset:0;overflow:visible;pointer-events:none;z-index:auto!important}
.ggi-pelican-v781{position:absolute;left:0;top:0;width:112px;height:86px;transform-origin:50% 66%;pointer-events:none;will-change:transform;contain:layout style}
.ggi-pelican-v781 svg{display:block;width:100%;height:100%;overflow:visible;filter:drop-shadow(0 5px 5px rgba(24,25,29,.22))}
.ggi-pelican-v781.flying .ggi-pelican-wing-left-v781,.ggi-pelican-v781.flying .ggi-pelican-wing-right-v781{animation:ggiPelicanFlapV781 .42s ease-in-out infinite alternate}
.ggi-pelican-v781.perched .ggi-pelican-wing-left-v781,.ggi-pelican-v781.perched .ggi-pelican-wing-right-v781{animation:ggiPelicanFoldV781 2.3s ease-in-out infinite}
.ggi-pelican-v781 .ggi-pelican-head-v781{animation:ggiPelicanHeadV781 1.9s ease-in-out infinite}
.ggi-pelican-v781 .ggi-pelican-body-v781{animation:ggiPelicanBodyV781 1.8s ease-in-out infinite alternate}
.ggi-pelican-v781 .ggi-pelican-wing-left-v781{transform-origin:28% 48%}.ggi-pelican-v781 .ggi-pelican-wing-right-v781{transform-origin:72% 48%}
@keyframes ggiPelicanFlapV781{from{transform:rotate(-8deg) translateY(0)}to{transform:rotate(18deg) translateY(-4px)}}
@keyframes ggiPelicanFoldV781{0%,100%{transform:rotate(0)}50%{transform:rotate(5deg)}}
@keyframes ggiPelicanHeadV781{0%,100%{transform:translateY(0)}50%{transform:translateY(1.5px)}}
@keyframes ggiPelicanBodyV781{from{transform:translateY(-1px)}to{transform:translateY(1.5px)}}
.ggi-pelican-poop-drop-v781{position:absolute;left:0;top:0;width:18px;height:27px;transform:translate(-50%,-50%);pointer-events:none;will-change:transform}
.ggi-pelican-poop-drop-v781:before{content:"";position:absolute;left:50%;top:0;width:14px;height:20px;transform:translateX(-50%);border-radius:10px 10px 14px 14px;background:linear-gradient(180deg,#fff 0,#f4fbff 58%,#dce8ef 100%);box-shadow:0 1px 0 rgba(255,255,255,.85) inset,0 4px 6px rgba(31,40,54,.12)}
.ggi-pelican-ground-poop-v781{position:absolute;left:0;top:0;width:30px;height:20px;transform:translate(-50%,-50%);pointer-events:none;background:radial-gradient(circle at 40% 35%,#fff 0 34%,#edf5f9 35% 74%,rgba(237,245,249,.08) 75% 100%);border-radius:52% 48% 46% 54%/56% 44% 56% 44%;box-shadow:0 2px 3px rgba(28,35,46,.13);opacity:.96;transition:opacity .82s ease}
.ggi-pelican-ground-poop-v781.fade{opacity:0}
.ggi-pelican-water-splash-v781{position:absolute;left:0;top:0;width:38px;height:20px;transform:translate(-50%,-50%);pointer-events:none;border:3px solid rgba(244,252,255,.92);border-top-color:transparent;border-radius:50%;opacity:0;animation:ggiPelicanSplashV781 .72s ease-out forwards}
@keyframes ggiPelicanSplashV781{0%{opacity:0;transform:translate(-50%,-50%) scale(.35)}25%{opacity:1}100%{opacity:0;transform:translate(-50%,-50%) scale(1.65)}}
.ggi-pelican-face-splat-v781-fallback{position:absolute;left:50%;top:18px;width:76px;height:64px;transform:translateX(-50%);z-index:999;pointer-events:none}
.ggi-pelican-face-splat-v781-fallback svg{display:block;width:100%;height:100%;overflow:visible}
body.ggi-lite-mode-v708 .ggi-pelican-v781:nth-child(n+5){display:none!important}
@media(prefers-reduced-motion:reduce){.ggi-pelican-v781 *,.ggi-feature-shark-svg-v781 *{animation:none!important}}

/* =====================================================================
   v782 final overrides — background order, pelican art/flight, no tap boxes
   ===================================================================== */

/* The silver stage belongs behind every avatar part. DOM order is enforced by JS. */
body.avatar-page #avatarSvg > #avatarStageGlowV782,
body.avatar-page #avatarSvg > #avatarBg{pointer-events:none!important}
body.avatar-page #avatarSvg > #avatarBg{visibility:visible!important;opacity:1!important}

/* No iOS/Safari rectangle may appear over world props when tapped. */
#ggIslandViewportV682,
#ggIslandViewportV682 *{-webkit-tap-highlight-color:transparent!important;-webkit-touch-callout:none}
#ggIslandWorldV682 button,
#ggIslandWorldV682 [role="button"],
#ggIslandWorldV682 button:focus,
#ggIslandWorldV682 button:focus-visible,
#ggIslandWorldV682 button:active,
.ggi-housing-house-v766,
.ggi-housing-house-v766:focus,
.ggi-housing-house-v766:focus-visible,
.ggi-housing-house-v766:active,
.ggi-surfboard-hit-v781,
.ggi-surfboard-hit-v781:focus,
.ggi-surfboard-hit-v781:focus-visible,
.ggi-surfboard-hit-v781:active,
.ggi-lighthouse-hit-v714,
.ggi-lighthouse-hit-v714:focus,
.ggi-lighthouse-hit-v714:focus-visible,
.ggi-lighthouse-hit-v714:active{
  outline:0!important;
  outline-offset:0!important;
  border:0!important;
  box-shadow:none!important;
  background-color:transparent!important;
  background-image:none!important;
  -webkit-appearance:none!important;
  appearance:none!important;
  -webkit-tap-highlight-color:transparent!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}

/* Pelicans are above world art but stay below the fixed Island controls. */
#ggIslandPelicansV782{
  position:absolute;
  inset:0;
  z-index:9000!important;
  overflow:visible!important;
  pointer-events:none!important;
  contain:layout style;
}
#ggIslandPelicanPoopV782{
  position:absolute;
  inset:0;
  z-index:9001!important;
  overflow:visible!important;
  pointer-events:none!important;
}
.ggi-pelican-v782{
  position:absolute;
  left:0;
  top:0;
  width:200px;
  height:112px;
  transform-origin:50% 70%;
  pointer-events:none!important;
  will-change:transform;
  contain:layout style;
}
.ggi-pelican-v782 svg{display:block;width:100%;height:100%;overflow:visible;filter:drop-shadow(0 5px 4px rgba(21,28,37,.25))}
.ggi-pelican-v782 .ggi-pelican-flight-pose-v782{display:none}
.ggi-pelican-v782 .ggi-pelican-perch-pose-v782{display:block}
.ggi-pelican-v782.flying .ggi-pelican-flight-pose-v782{display:block}
.ggi-pelican-v782.flying .ggi-pelican-perch-pose-v782{display:none}
.ggi-pelican-v782.perched .ggi-pelican-flight-pose-v782{display:none}
.ggi-pelican-v782.perched .ggi-pelican-perch-pose-v782{display:block}
.ggi-pelican-v782.flying .ggi-pelican-wing-left-v782,
.ggi-pelican-v782.flying .ggi-pelican-wing-right-v782{
  transform-box:fill-box;
  will-change:transform;
}
.ggi-pelican-v782.flying .ggi-pelican-wing-left-v782{
  transform-origin:100% 58%;
  animation:ggiPelicanLeftWingV782 .72s cubic-bezier(.42,0,.58,1) infinite alternate;
}
.ggi-pelican-v782.flying .ggi-pelican-wing-right-v782{
  transform-origin:0 58%;
  animation:ggiPelicanRightWingV782 .72s cubic-bezier(.42,0,.58,1) infinite alternate;
}
.ggi-pelican-v782.flying .ggi-pelican-flight-body-v782{animation:ggiPelicanBodyV782 1.45s ease-in-out infinite alternate;transform-origin:50% 55%}
.ggi-pelican-v782.perched .ggi-pelican-perch-pose-v782{animation:ggiPelicanPerchV782 2.8s ease-in-out infinite;transform-origin:50% 90%}
@keyframes ggiPelicanLeftWingV782{
  from{transform:rotate(16deg) translateY(5px)}
  to{transform:rotate(-21deg) translateY(-7px)}
}
@keyframes ggiPelicanRightWingV782{
  from{transform:rotate(-16deg) translateY(5px)}
  to{transform:rotate(21deg) translateY(-7px)}
}
@keyframes ggiPelicanBodyV782{from{transform:translateY(1px) rotate(-1deg)}to{transform:translateY(-2px) rotate(1deg)}}
@keyframes ggiPelicanPerchV782{0%,100%{transform:translateY(0)}50%{transform:translateY(-1.5px)}}

.ggi-pelican-poop-drop-v782{position:absolute;left:0;top:0;width:18px;height:27px;pointer-events:none;will-change:transform}
.ggi-pelican-poop-drop-v782:before{content:"";position:absolute;left:50%;top:0;width:14px;height:20px;transform:translateX(-50%);border-radius:10px 10px 14px 14px;background:linear-gradient(180deg,#fff 0,#f4fbff 58%,#dce8ef 100%);box-shadow:0 1px 0 rgba(255,255,255,.85) inset,0 4px 6px rgba(31,40,54,.12)}
.ggi-pelican-ground-poop-v782{position:absolute;left:0;top:0;width:30px;height:20px;pointer-events:none;background:radial-gradient(circle at 40% 35%,#fff 0 34%,#edf5f9 35% 74%,rgba(237,245,249,.08) 75% 100%);border-radius:52% 48% 46% 54%/56% 44% 56% 44%;box-shadow:0 2px 3px rgba(28,35,46,.13);opacity:.96;transition:opacity .82s ease}
.ggi-pelican-ground-poop-v782.fade{opacity:0}
.ggi-pelican-water-splash-v782{position:absolute;width:38px;height:20px;transform:translate(-50%,-50%);pointer-events:none;border:3px solid rgba(244,252,255,.92);border-top-color:transparent;border-radius:50%;opacity:0;animation:ggiPelicanSplashV782 .72s ease-out forwards}
@keyframes ggiPelicanSplashV782{0%{opacity:0;transform:translate(-50%,-50%) scale(.35)}25%{opacity:1}100%{opacity:0;transform:translate(-50%,-50%) scale(1.65)}}
.ggi-pelican-face-splat-v782{pointer-events:none!important}

body.ggi-lite-mode-v708 .ggi-pelican-v782:nth-child(n+4){display:none!important}
@media(prefers-reduced-motion:reduce){
  .ggi-pelican-v782 *{animation-duration:1.8s!important}
}


/* v786: the two compatibility accessory groups have fixed semantic depths;
   they are never moved in response to passive preview taps. */
body.avatar-page #avatarSvg #ggBackExtraLayerV622,
body.avatar-page #avatarSvg #ggFrontExtraLayerV622{pointer-events:none!important}
