/* Approved eight complete poses; no independently animated limbs. */
:root{background:#141214;color:#fff}body{background:radial-gradient(ellipse at 50% 32%,#332c29 0%,#191619 48%,#111113 100%);min-height:100dvh}
.stage{height:445px;isolation:isolate}
.actor{width:300px;height:400px;left:calc(50% - 150px);top:30px;transform:scale(.38);transform-origin:50% 20%;overflow:hidden;opacity:0}
.opening .actor{animation:none}
.whole-character{position:relative;width:100%;height:100%;background:url('assets/poses-aprovadas.png') no-repeat;background-size:400% 200%;mask-image:linear-gradient(to right,transparent,black 12%,black 88%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,black 12%,black 88%,transparent)}
.ready .actor{opacity:1;transform:none}
.actor .cash{top:177px;left:100px;width:92px;height:20px;opacity:0}
.ready .actor .cash{opacity:1}
.actor .bill{width:27px;height:14px}
.door{transition:opacity .4s}
.opening .door{animation:door-fade .6s .8s forwards}
.ready .door{opacity:0;pointer-events:none}
@keyframes door-fade{to{opacity:0}}
.replay{font-size:12px;margin-top:10px}
.eyebrow,.caption,.hint,.profile small,.demo-note{color:#ded7d0}
@media(max-width:550px){.stage{height:420px}.actor{top:15px}}
@media(prefers-reduced-motion:reduce){.actor{transition:none}}

/* Local hand-drawn lettering: no font download needed. */
.graffiti{top:74px;left:calc(50% + 43px);width:170px;max-width:none;transform:rotate(-11deg);pointer-events:none}
.graffiti img{display:block;width:100%;height:auto}
@media(max-width:550px){.graffiti{top:78px;left:calc(50% + 42px);width:clamp(108px,32vw,150px)}}

.login-form{max-width:360px;margin:30px auto;text-align:left}.login-form .primary{width:100%}.login-form .error{color:#ffb8c5}
