/* All five states use this exact master silhouette. Arms never move independently. */
.master-stage{position:absolute;height:100%;aspect-ratio:1059/1486;left:50%;transform:translateX(-50%);pointer-events:none}
.master-puppet{position:absolute;inset:0;transform-origin:50% 92%}
.master-image{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;pointer-events:none;user-select:none}
.master-drink{opacity:0;clip-path:inset(35.4% 0 0 0);transform:translate(.25%,-.25%) scaleX(.99);transform-origin:50% 80%}
/* Local badge/lanyard corrections retain the original face, collar and attached paws. */
.master-badge{clip-path:polygon(33% 57.8%,43% 53.8%,49.5% 54%,55.2% 56%,62.2% 58.4%,62.2% 61.7%,60.2% 66.5%,60.2% 77.5%,31.5% 77.5%,31.5% 61%)}
.badge-art{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;user-select:none}
.master-badge .badge-art{transform:translateX(-.42%)}
.master-drink-badge{opacity:0;clip-path:polygon(32% 56.9%,35.2% 56.6%,35.5% 58%,37.5% 62%,41.5% 64.5%,46.5% 66%,51.5% 66.4%,56.8% 65.2%,60% 67.7%,60% 77%,30.8% 77%,30.8% 63%);transform:translate(.25%,-.25%) scaleX(.99);transform-origin:50% 80%}
.master-drink-badge .badge-art{transform:translateX(-.08%)}
.character[data-motion="sip"] .master-drink-badge{opacity:1}
.character:not([data-scene="office"]) .master-badge,.character:not([data-scene="office"]) .master-drink-badge{display:none}
.master-original-paw{clip-path:polygon(62.300% 64.2%,62.020% 64.4%,61.599% 64.6%,61.318% 64.8%,61.038% 65.0%,60.757% 65.2%,60.477% 65.4%,60.337% 65.6%,60.056% 65.8%,59.916% 66.0%,59.635% 66.2%,59.495% 66.4%,59.355% 66.6%,59.215% 66.8%,59.074% 67.0%,58.934% 67.2%,58.794% 67.4%,58.654% 67.6%,58.513% 67.8%,58.513% 68.0%,58.373% 68.2%,58.233% 68.4%,58.233% 68.6%,58.093% 68.8%,58.093% 69.0%,58.093% 69.2%,58.093% 69.4%,57.952% 69.6%,57.952% 69.8%,57.812% 70.0%,57.672% 70.2%,57.672% 70.4%,57.532% 70.6%,57.532% 70.8%,57.391% 71.0%,57.391% 71.2%,57.391% 71.4%,57.391% 71.6%,57.391% 71.8%,57.391% 72.0%,57.532% 72.2%,57.532% 72.4%,57.672% 72.6%,57.812% 72.8%,57.952% 73.0%,58.093% 73.2%,58.233% 73.4%,58.373% 73.6%,58.654% 73.8%,58.934% 74.0%,59.215% 74.2%,59.635% 74.4%,60.196% 74.6%,60.898% 74.8%,62.440% 75.0%,76% 76%,76% 63%)}
.character:not([data-scene="office"]) .master-original-paw{display:none}
/* Feather the tiny eye region; the head, cheek, muzzle and ears stay on the master. */
.master-eye{opacity:0;transform:translate(.5%,-.4%);mask-image:radial-gradient(ellipse 6.1% 4.4% at 46.7% 27.8%,#000 66%,transparent 100%);-webkit-mask-image:radial-gradient(ellipse 6.1% 4.4% at 46.7% 27.8%,#000 66%,transparent 100%)}
.master-pin{position:absolute;left:21%;top:59%;width:13%;height:auto;transform:rotate(-10deg);pointer-events:none;user-select:none}.master-pin[hidden]{display:none}
@media(prefers-reduced-motion:reduce){.master-puppet{transition:none;animation:none}}
.scene-portrait{object-fit:contain}
.character[data-scene="rain"] .master-stage{aspect-ratio:1086/1448}
.character[data-scene="boba"] .master-stage{aspect-ratio:1041/1511}
.character[data-scene="boba"] .master-pin{left:29%;top:68%;width:10%}
.boba-closed{mask-image:radial-gradient(ellipse 6.6% 4.4% at 47% 27.6%,#000 68%,transparent 100%);-webkit-mask-image:radial-gradient(ellipse 6.6% 4.4% at 47% 27.6%,#000 68%,transparent 100%)}
.character[data-scene="home"] .master-pin{left:30%;top:56.5%;width:10%}
.character[data-scene="rain"] .master-pin{left:32%;top:64.5%;width:9%}
.character[data-scene="sun"] .master-pin{left:24%;top:74%;width:9%;transform:rotate(-7deg)}
/* Local eye patch: the original PJ face/body are always the base. */
.home-closed{transform:translate(-.77%,-.29%);mask-image:radial-gradient(ellipse 6.5% 4.8% at 48.3% 27.8%,#000 72%,transparent 100%);-webkit-mask-image:radial-gradient(ellipse 6.5% 4.8% at 48.3% 27.8%,#000 72%,transparent 100%)}
/* Both rain layers sample the exact original. Only canopy/shaft pivot behind the fixed paw. */
.character[data-scene="rain"][data-layered="true"] .portrait-rain{z-index:2;clip-path:polygon(0 26%,35% 26%,35% 23.6%,45% 21.9%,53% 24.7%,59% 22.5%,68.6% 22.1%,68.6% 58%,100% 58%,100% 100%,0 100%)}
.rain-umbrella{z-index:1;transform-origin:72% 60%;clip-path:polygon(35% 0,100% 0,100% 28%,75% 28%,75% 61%,68.6% 61%,68.6% 22.1%,59% 22.5%,53% 24.7%,45% 21.9%,35% 23.6%)}
.character[data-scene="rain"] .master-pin{z-index:3}
.character[data-scene="sun"][data-layered="true"] .portrait-sun{clip-path:inset(25% 0 0 0)}
.sun-clear{transform:translateX(.1%) scaleX(1.0075);transform-origin:0 0;mask-image:linear-gradient(#000 0 25%,transparent 31%);-webkit-mask-image:linear-gradient(#000 0 25%,transparent 31%)}
.sun-glasses{clip-path:inset(7% 21% 76% 23%);transform-origin:53% 15%}
.rain-drops{position:absolute;inset:0;pointer-events:none}.rain-drops i{position:absolute;width:1%;height:2%;background:#7e9e9e;border-radius:60%;transform:rotate(-25deg)}.rain-drops i:nth-child(1){left:38%;top:27%}.rain-drops i:nth-child(2){left:96%;top:28%;transform:rotate(25deg)}.rain-drops i:nth-child(3){left:89%;top:30%;height:1.4%}
