@font-face{font-family:'Koripic Step Jalnan Gothic';src:url('../assets/JalnanGothicTTF.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
.step-platform{position:absolute;translate:-50% -50%;aspect-ratio:404/250;height:auto;padding:0;border:0;background:transparent;overflow:visible;cursor:pointer;touch-action:manipulation;transition:transform .2s,filter .2s;isolation:isolate}.step-platform::before{content:'';position:absolute;left:50%;top:50%;translate:-50% -50%;width:max(100%,44px);height:max(100%,44px);background:transparent;z-index:-1}.step-platform>img{position:relative;display:block;width:100%;height:100%;object-fit:contain;pointer-events:none;user-select:none}.step-platform-number{position:absolute;left:50.5%;top:34%;translate:-50% -50%;font-family:'Koripic Step Jalnan Gothic',sans-serif;font-size:max(18px,2.85cqw);font-weight:400;line-height:1;font-synthesis:none;color:#57351a;pointer-events:none}.step-platform:hover{transform:scale(1.06);filter:brightness(1.08) drop-shadow(0 5px 6px #58402355)}.step-platform:focus-visible{outline:3px solid #fff2a6;outline-offset:3px;border-radius:40%}.step-platform.is-locked{filter:grayscale(.6)}.step-platform-complete{position:absolute;right:4%;top:0;font-size:1.2cqw;color:#ffdc65;text-shadow:0 1px #654326}.stage-notice{position:fixed;inset:0;margin:auto;width:min(430px,85vw);max-height:80svh;padding:30px 26px;text-align:center;border:2px solid #b18a4d;border-radius:22px;background:linear-gradient(140deg,#fff8e4,#f1e1bb);color:#684520;box-shadow:0 15px 60px #18342660;animation:arrive .2s ease}.stage-notice::backdrop{background:#20382566;backdrop-filter:blur(2px)}.stage-notice small{font-size:14px;color:#987344}.stage-notice h2{margin:14px 0 22px;font-size:24px}.stage-notice button{padding:11px 30px;border:1px solid #c09d62;border-radius:14px;color:#67401d;background:#fff4d9;font-size:16px;box-shadow:0 3px 0 #d5bd92}

/* Completion figures share the unchanged platform coordinates and hit area.
   The lowest opaque foot rests on the rear part of the stump surface; the number stays in front. */
.step-platform-character{position:absolute;left:50%;bottom:76%;translate:-50% 0;width:100%;height:125%;pointer-events:none;user-select:none;z-index:1}
.step-platform-character img{display:block;width:100%;height:100%;object-fit:contain;object-position:center bottom;pointer-events:none;user-select:none}
.step-platform-number{z-index:2}
.step-platform-complete{z-index:2}
/* Use the front-facing Pik from the existing transparent turnaround sheet.
   CSS crops the frame; the original image is unchanged. */
.step-platform-character.character-pik{width:36.6%;overflow:hidden}
.step-platform-character.character-pik img{position:absolute;left:0;bottom:0;width:auto;height:100%;max-width:none;object-fit:fill}

/* Exactly 200% around the existing opaque foot baseline; platform geometry is unchanged. */
.step-platform-character{transform:scale(2);transform-origin:50% 98.4751203852%}
.step-platform-character.character-pik{transform-origin:50% 98.0662983425%}

.journey-character{pointer-events:none;z-index:5}.journey-character:hover{transform:none;filter:none}
