/* Approved cap-8 v2: x=340, y=26, 240x155 over a 1024x1536 avatar
   placed at (0,64) in the preview. The complete avatar scales once. */
.avatar.has-hat::before{
  inset:auto;
  left:33.203125%;top:calc(-2.473958% + var(--cap-head-offset-y,0%));width:23.4375%;height:10.091146%;
  margin:0;
  background-repeat:no-repeat;background-size:100% 100%;background-position:center;
  transform:none;
}

/* Older body-stage offsets must not move the hat away from the head. */
.avatar.bulked.has-hat::before,.avatar.chicken.has-hat::before{
  margin:0;transform:none;
}

/* One approved geometry for every cap class, regardless of older rules. */
.avatar.has-hat.cap-0::before,.avatar.has-hat.cap-1::before,
.avatar.has-hat.cap-2::before,.avatar.has-hat.cap-3::before,
.avatar.has-hat.cap-4::before,.avatar.has-hat.cap-5::before,
.avatar.has-hat.cap-6::before,.avatar.has-hat.cap-7::before,
.avatar.has-hat.cap-8::before,.avatar.has-hat.cap-9::before,
.avatar.has-hat.cap-10::before,.avatar.has-hat.cap-11::before,
.avatar.has-hat.cap-12::before,.avatar.has-hat.cap-13::before,
.avatar.has-hat.cap-14::before,.avatar.has-hat.cap-rabbi::before{
  left:33.203125%;top:calc(-2.473958% + var(--cap-head-offset-y,0%));width:23.4375%;height:10.091146%;
}

/* The body swaps among nine independent 1024×1536 drawings. Their heads sit at
   slightly different heights in the source canvas, so the cap follows that
   drawing instead of following a training threshold or the scene viewport. */
.avatar[data-body-sprite="nikita-sprite-v2.png"],
.avatar[data-body-sprite="nikita-balanced-medium-v4.png"]{--cap-head-offset-y:0%}
.avatar[data-body-sprite="nikita-legs-medium-v4.png"],
.avatar[data-body-sprite="nikita-upper-medium-v4.png"],
.avatar[data-body-sprite="nikita-upper-medium-legs-strong-v4.png"]{--cap-head-offset-y:.78%}
.avatar[data-body-sprite="nikita-legs-strong-v4.png"]{--cap-head-offset-y:.52%}
.avatar[data-body-sprite="nikita-upper-v3.png"],
.avatar[data-body-sprite="nikita-upper-strong-legs-medium-v4.png"]{--cap-head-offset-y:-.26%}
.avatar[data-body-sprite="nikita-balanced-v3.png"]{--cap-head-offset-y:-.78%}

/* Preserve the established scene figure size. */
.game-scene .avatar{width:clamp(76px,12%,136px)!important}
@media(max-width:520px){.game-scene .avatar{width:17%!important}}
