.dialog{--dialog-portrait-width:clamp(36px,9cqw,52px);--dialog-font-size:clamp(9.5px,2.2cqw,12px);--dialog-heading-size:clamp(9px,1.8cqw,11px);--dialog-meta-size:clamp(8px,1.5cqw,9px);--dialog-control-size:clamp(8px,1.7cqw,10px);z-index:3200;height:var(--dialog-panel-height);color:#292438;background:#f7f5f9;border:3px solid #78658f;grid-template-rows:auto minmax(0,1fr) auto;gap:2px;margin:0;padding:clamp(8px,2cqw,12px);font-weight:400;display:grid;position:absolute;bottom:8px;left:8px;right:8px;box-shadow:inset 0 0 0 2px #fff,0 0 0 2px #302b40}.dialog[hidden]{display:none}.dialog[data-dialog-size=compact]{height:var(--dialog-compact-height)}.dialog-heading{min-width:0;font-size:var(--dialog-heading-size);color:#665479;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:6px 8px;line-height:1.6;display:grid}#dialog-name{overflow-wrap:anywhere}#dialog-counter{font-size:var(--dialog-meta-size);color:#746481;white-space:nowrap;grid-area:1/2}.dialog-source{font-size:var(--dialog-meta-size);color:#625075;text-underline-offset:3px;grid-column:1/-1;line-height:1.5}.dialog-heading:has(.dialog-source:not([hidden])){grid-template-columns:auto minmax(0,1fr) auto}.dialog-heading:has(.dialog-source:not([hidden])) #dialog-counter{grid-column:3}.dialog-heading:has(.dialog-source:not([hidden])) .dialog-source{text-align:right;grid-area:1/2}.dialog-body{grid-template-columns:var(--dialog-portrait-width) minmax(0,1fr);-moz-column-gap:clamp(8px,2cqw,12px);grid-template-rows:minmax(0,1fr) auto;align-items:start;column-gap:clamp(8px,2cqw,12px);min-width:0;min-height:0;display:grid}.dialog-body:has(.dialog-portrait[hidden]){grid-template-columns:minmax(0,1fr)}.dialog-portrait{flex:0 0 var(--dialog-portrait-width);height:var(--dialog-portrait-width);background:#e9e3ee;border-bottom:2px solid #c2b5cf;position:relative;overflow:hidden}.dialog-portrait img{top:var(--portrait-image-top,5%);width:auto;height:var(--portrait-image-height,160%);max-width:none;transform:translateX(var(--portrait-image-center,-50%));image-rendering:pixelated;position:absolute;left:50%}.dialog-content{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#897498 #e9e3ee;touch-action:pan-y;flex:1;min-width:0;height:100%;overflow-y:auto}.dialog p{font-size:var(--dialog-font-size);overflow-wrap:anywhere;margin:0;line-height:1.5;display:grid}#dialog-text:before{content:attr(data-full-text);visibility:hidden;pointer-events:none;grid-area:1/1}#dialog-text-visible{grid-area:1/1}.dialog-choices{grid-column:1/-1;gap:4px;margin-top:4px;display:grid}.dialog-choices button{text-align:left;color:#40304e;min-height:24px;font-family:inherit;font-weight:400;font-size:var(--dialog-meta-size);overflow-wrap:anywhere;touch-action:manipulation;background:#f3eef8;border:1px solid #9584a5;padding:4px 7px;line-height:1.5}.dialog-choices button[aria-pressed=true]{background:#dfd3eb;border-color:#594367;box-shadow:inset 3px 0 #594367}.dialog-navigation{border-top:1px solid #d7cddd;justify-content:space-between;align-items:center;gap:10px;min-width:0;min-height:15px;padding-top:0;display:flex}.dialog-navigation:has(.dialog-advance[hidden]):has(.dialog-previous[hidden]){display:none}.dialog-advance,.dialog-previous{color:#5a446c;min-height:14px;font-family:inherit;font-weight:400;font-size:var(--dialog-control-size);touch-action:manipulation;padding:0;line-height:1.2}.dialog-advance{text-align:right;margin-left:auto}.dialog-previous{text-align:left}.dialog-previous:disabled{opacity:.45;cursor:default}.dialog button:focus-visible,.dialog-content:focus-visible,.dialog-source:focus-visible{outline-offset:2px;outline:2px solid #78658f}.dialog-portrait[hidden],.dialog-choices[hidden],.dialog-advance[hidden],.dialog-previous[hidden],.dialog-source[hidden]{display:none}.dialog.is-failure .dialog-heading{color:#943d43}.wedding-stage-floor{z-index:-500;pointer-events:none;background:repeating-linear-gradient(0deg,#c09354 0 10px,#ad7b43 11px 13px);border:5px solid #946736;border-bottom:10px solid #654126;border-radius:3px;width:248px;height:71px;position:absolute;top:109.563px;left:411px}.wedding-assets{display:contents}.wedding-prop{max-width:none;image-rendering:pixelated;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none;display:block;position:absolute;transform:translate(-50%,-100%)}.wedding-prop[data-motion=lights]{animation:3.2s ease-in-out infinite alternate wedding-lights}.wedding-band-set{z-index:-400;pointer-events:none;width:147px;height:120px;position:absolute}.wedding-band-floor{pointer-events:none;background:repeating-linear-gradient(0deg,#c09354 0 10px,#ad7b43 11px 13px);border:3px solid #946736;border-bottom:8px solid #654126;width:147px;height:120px;position:absolute;inset:0;box-shadow:0 5px #47352255}.wedding-band{display:contents}.band-member{max-width:none;image-rendering:pixelated;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none;transform-origin:50% 100%;animation:band-perform 2.4s ease-in-out var(--band-delay) infinite;display:block;position:absolute;transform:translate(-50%,-100%)}@keyframes band-perform{0%,45%,to{rotate:0deg}20%{rotate:-.8deg}70%{rotate:.8deg}}@keyframes wedding-lights{0%{filter:brightness(.95)}to{filter:brightness(1.12)}}@media (prefers-reduced-motion:reduce){.wedding-prop,.band-member{animation:none!important}}*{box-sizing:border-box}@font-face{font-family:"Press Start 2P";src:url(/game/fonts/press-start-2p.woff2)format("woff2");font-display:swap;font-weight:400}:root{color-scheme:dark;color:#eee8db;background:#1e2228;font-family:"Press Start 2P",monospace}html,body{overscroll-behavior:none;height:100%;margin:0}body{justify-content:center;display:flex}.game-shell{width:100%;max-width:600px;height:100dvh;max-height:1150px;padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom);background:#30343e;flex-direction:column;display:flex}.topbar{letter-spacing:.08em;border-bottom:3px solid #171b22;flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;height:43px;padding:0 15px;font-size:10px;display:flex}#location{color:#f1d38b;text-align:right;font-size:9px}.viewport{aspect-ratio:1071/992;background:#1e2922;border:3px solid #161a20;flex:none;width:100%;min-height:0;position:relative;overflow:hidden}.game-shell{position:relative}.viewport{--dialog-panel-height:clamp(128px,29cqw,172px);--dialog-compact-height:clamp(72px,16cqw,94px);align-self:center;container-type:inline-size}.scene-fade{z-index:5000;pointer-events:none;background:#000;position:absolute;inset:0}.viewport:has(.dojang-comic:not([hidden]),.failure-scene:not([hidden])):before{content:"";z-index:2800;pointer-events:none;background:#171b29;position:absolute;inset:0}.viewport:has(>.dialog:not([hidden])):after{content:"";height:calc(var(--dialog-panel-height) + 14px);z-index:3100;pointer-events:none;background:#171b29;position:absolute;inset:auto 0 0}.viewport:has(>.dialog[data-dialog-size=compact]:not([hidden])):after{height:calc(var(--dialog-compact-height) + 14px)}.viewport[data-overview=true]{cursor:zoom-in}.world{transform-origin:0 0;will-change:transform;isolation:isolate;filter:saturate(.82)contrast(.9)brightness(1.02)blur(.18px);width:1071px;height:992px;position:absolute}.world-art{z-index:-1000;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none;width:1071px;height:992px;image-rendering:crisp-edges;image-rendering:pixelated;display:block;position:absolute;top:0;left:0}.terrain-building{max-width:none;height:auto;image-rendering:pixelated;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;display:block;position:absolute;transform:translate(-50%,-100%)}[data-garden-bird="1"]{animation:garden-bird-hop var(--bird-duration) var(--bird-delay) infinite;transform-origin:50% 100%}[data-garden-bird="2"]{animation:garden-bird-peck var(--bird-duration) var(--bird-delay) infinite;transform-origin:50% 100%}@keyframes garden-bird-hop{0%,58%,to{translate:0;rotate:0deg}64%{translate:-2px -3px;rotate:-5deg}71%{translate:2px;rotate:3deg}}@keyframes garden-bird-peck{0%,48%,to{translate:0;rotate:0deg}55%{translate:1px 1px;rotate:11deg}62%{translate:2px;rotate:-2deg}70%{translate:-2px;rotate:0deg}}@media (prefers-reduced-motion:reduce){[data-garden-bird]{animation:none}}.cafe-furniture,.dojang-furniture{max-width:none;height:auto;image-rendering:pixelated;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;display:block;position:absolute;transform:translate(-50%,-100%)}.cafe-table{width:50px}.cafe-patio-set{width:52px}.cafe-menu-board{width:25px;transform:translate(-50%,-100%)scaleX(-1)}.cafe-potted-plant{width:28px}.cafe-building{z-index:660;width:200px;top:660px;left:335px}.dojang-building{z-index:628;width:180px;top:628px;left:901px}.character{z-index:3;width:36px;height:54px;transform:translate(-50%,calc(-100% - var(--body-lift,0px))) scaleX(var(--face-scale,1));pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;position:absolute}.main-character-marker{border:1px solid #f0d48ebf;border-radius:50%;width:22px;height:7px;position:absolute;bottom:-2px;left:50%;transform:translate(-50%)}.bride .main-character-marker{border-color:#d6b5f5bf}.interaction-hint{z-index:2500;color:#fff1c7;text-align:center;white-space:nowrap;pointer-events:none;background:#262334ed;border:1px solid #d6bc84;border-radius:4px;max-width:calc(100% - 16px);padding:4px 7px;font-size:clamp(8px,1.6cqw,9.5px);line-height:1.2;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.interaction-hint[hidden]{display:none}.actor-frame,.actor-part{width:100%;height:100%;image-rendering:pixelated;display:block;position:absolute;inset:0}.actor-rig{display:none;position:absolute;inset:0}.character[data-motion=walking]:is([data-facing=front],[data-facing=back]) .actor-frame{visibility:hidden}.character[data-motion=walking]:is([data-facing=front],[data-facing=back]) .actor-rig{display:block}.transformation-aura{display:none}.character[data-costume=wedding] .actor-frame{visibility:visible!important}.character[data-costume=wedding] .actor-rig{display:none!important}.character.is-transforming .transformation-aura{background:radial-gradient(#fff5c477,#0000 65%);border:2px solid #ffe7a5;border-radius:50%;animation:1.2s ease-in-out infinite transformation-ring;display:block;position:absolute;inset:-15px -12px -4px;box-shadow:0 0 12px #efcf91}.character.is-transforming .actor-frame{filter:drop-shadow(0 0 5px #fff0c4)}@keyframes transformation-ring{0%,to{opacity:.35;transform:scale(.75)}50%{opacity:.9;transform:scale(1.15)}}#world[data-wedding-phase=celebration] .character .actor-frame{transform-origin:50% 100%;animation:.7s ease-in-out infinite alternate wedding-celebrate}#world[data-wedding-phase=celebration] .npc.is-cheering .npc-sprite{transform-origin:50% 100%;animation:.65s ease-in-out infinite alternate wedding-celebrate}@keyframes wedding-celebrate{0%{translate:0;rotate:-3deg}to{translate:0 -2px;rotate:3deg}}.npc.is-welcoming:not(.is-cheering) .npc-sprite{transform-origin:50% 100%;animation:guest-welcome var(--welcome-duration,5s) ease-in-out var(--welcome-delay,0s) infinite}@keyframes guest-welcome{0%,15%,to{rotate:0deg;scale:1}30%{rotate:-1.6deg;scale:1.008 1}45%,60%{rotate:0deg;scale:1}75%{rotate:1.3deg;scale:.993 1.006}88%{rotate:.3deg;scale:1}}@media (prefers-reduced-motion:reduce){.npc.is-welcoming:not(.is-cheering) .npc-sprite{animation:none}}.wedding-celebration{z-index:2600;pointer-events:none;position:absolute;inset:0;overflow:hidden}.wedding-celebration span{top:-10%;left:var(--x);background:var(--color);width:5px;height:8px;animation:3.5s linear infinite wedding-confetti;animation-delay:var(--delay);position:absolute}@keyframes wedding-confetti{to{transform:translate(35px,700px)rotate(540deg)}}@media (prefers-reduced-motion:reduce){.character.is-transforming .transformation-aura,#world[data-wedding-phase=celebration] .npc.is-cheering .npc-sprite,#world[data-wedding-phase=celebration] .character .actor-frame,.wedding-celebration span{animation:none}}.actor-torso{clip-path:inset(0 0 31%)}.actor-leg-left{clip-path:inset(66% 50% 0 0);transform-origin:44% 68%;transform:rotate(var(--left-leg-angle,0deg)) scaleY(var(--left-leg-scale,1))}.actor-leg-right{clip-path:inset(66% 0 0 50%);transform-origin:56% 68%;transform:rotate(var(--right-leg-angle,0deg)) scaleY(var(--right-leg-scale,1))}.npc{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:56px;position:absolute;transform:translate(-50%,-100%)}.angler{pointer-events:none;width:76.32px;height:67.84px;position:absolute;transform:translate(-23.32px,-65.72px)}.angler img{width:100%;height:100%;image-rendering:pixelated;transform-origin:23.32px 65.72px}.angler[data-facing=left] img{transform:scaleX(-1)}.pond-decoration{max-width:none;height:auto;image-rendering:pixelated;pointer-events:none;position:absolute;transform:translate(-50%,-100%)}.dojang-comic{z-index:2900;background:#171b29;flex-direction:column;justify-content:center;gap:10px;padding:clamp(10px,3vw,24px);display:flex;position:absolute;inset:0;overflow:hidden}.dojang-comic[hidden],.dojang-cheers[hidden]{display:none}.viewport:has(.dialog:not([hidden])) .dojang-comic{bottom:calc(var(--dialog-panel-height) + 14px);gap:6px;padding:clamp(8px,1.8cqw,12px)}.viewport:has(.dialog:not([hidden])) .failure-scene{bottom:calc(var(--dialog-panel-height) + 14px)}.viewport:has(.dialog[data-dialog-size=compact]:not([hidden])) .dojang-comic,.viewport:has(.dialog[data-dialog-size=compact]:not([hidden])) .failure-scene{bottom:calc(var(--dialog-compact-height) + 14px)}.comic-header{color:#d6c395;letter-spacing:.04em;justify-content:space-between;gap:8px;font:400 10px "Press Start 2P",monospace;display:flex}.comic-title{color:#ffe4a1;text-align:center;font:400 clamp(10px,2.4cqw,14px) "Press Start 2P",monospace}.comic-panel{aspect-ratio:2;background:#10141d;border:4px solid #f6e5c5;flex:0 auto;width:100%;min-height:0;position:relative;overflow:hidden;box-shadow:5px 5px #080c14}.comic-panel img{-o-object-fit:contain;object-fit:contain;width:100%;height:100%;image-rendering:pixelated;display:block}.comic-effect{color:#fff0c9;background:#7a3048;border:2px solid #ffdf96;padding:5px 8px;font:400 clamp(16px,5vw,28px) "Press Start 2P",monospace;position:absolute;bottom:8%;right:5%;transform:rotate(-7deg)}.dojang-comic:not([data-scene=opening])[data-panel="1"] .comic-panel{animation:.4s ease-out comic-action}.dojang-comic:not([data-scene=opening])[data-panel="2"] .comic-effect{animation:.6s ease-out both comic-victory}.comic-effect[hidden]{display:none}.comic-progress{justify-content:center;gap:6px;display:flex}.comic-progress span{background:#575464;width:32px;height:4px}.comic-progress .is-read{background:#f3d489}.dojang-cheers{z-index:2100;color:#523959;text-align:center;white-space:nowrap;background:#fff4d8;border:2px solid #6c4c70;padding:4px 7px;font:400 11px/1.35 "Press Start 2P",monospace;animation:.8s ease-in-out infinite alternate cheer-bubble;position:absolute;top:650px;left:900px;transform:translate(-50%,-100%)}.npc.is-cheering .npc-sprite{animation:none}@keyframes comic-action{0%{transform:translate(-12px)rotate(-1deg)}30%{transform:translate(8px)}60%{transform:translate(-4px)}to{transform:none}}@keyframes comic-victory{0%{opacity:0;scale:1.6}to{opacity:1;scale:1}}@keyframes cheer-bubble{0%{margin-top:0}to{margin-top:-5px}}.failure-scene{z-index:3000;pointer-events:none;background:#161b2b;justify-content:center;align-items:center;padding:12px;animation:.3s ease-out both failure-reveal;display:flex;position:absolute;inset:0}.failure-scene[hidden]{display:none}.failure-card{color:#fff4da;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;width:100%;height:95%;max-height:390px;display:flex}.failure-eyebrow{letter-spacing:.12em;color:#e5cda7;font:700 clamp(9px,2.4vw,12px) "Press Start 2P",monospace}.failure-art{-o-object-fit:contain;object-fit:contain;width:min(75%,260px);min-height:0;max-height:65%;image-rendering:pixelated;flex:1;animation:2.8s ease-in-out .6s infinite failure-sigh;display:block}.failure-title{color:#ffb2a2;letter-spacing:.06em;text-shadow:3px 3px #532e46;flex-shrink:0;font:400 clamp(24px,7vw,38px) "Press Start 2P",monospace;animation:.55s cubic-bezier(.22,.7,.26,1.2) both failure-stamp}.failure-caption{font-size:clamp(10px,2.6vw,13px);line-height:1.4}.failure-scene[data-kind=dojang] .failure-art{width:min(100%,520px);animation:none}@keyframes failure-reveal{0%{opacity:0}to{opacity:1}}@keyframes failure-stamp{0%{opacity:0;transform:scale(1.6)rotate(-7deg)}65%{opacity:1;transform:scale(.94)rotate(2deg)}to{transform:scale(1)rotate(0)}}@keyframes failure-sigh{0%,to{transform:translateY(0)rotate(0)}45%,60%{transform:translateY(4px)rotate(-2deg)}}.npc-sprite{bottom:var(--npc-image-bottom,0%);height:var(--npc-image-height,100%);width:auto;image-rendering:pixelated;position:absolute;left:50%;transform:translate(-50%)}.npc[data-mirror=true] .npc-sprite{transform:translate(-50%)scaleX(-1)}.npc-sprite,.npc-walk-part{aspect-ratio:var(--npc-image-aspect,auto)}.npc[data-opening-cast] .npc-sprite{scale:none;transform:translateX(-50%) scaleX(var(--cast-facing,1));animation:none!important}.npc[data-opening-cast][data-mirror=true]{--cast-facing:-1}.npc.is-walking .npc-sprite{animation:none!important}.npc.is-walking:not(.has-walk-frames) .npc-sprite{visibility:hidden}.npc-walk-rig{display:none;position:absolute;inset:0}.npc.is-walking:not(.has-walk-frames) .npc-walk-rig{display:block}.npc[data-mirror=true] .npc-walk-rig{scale:-1 1}.npc-walk-part{bottom:var(--npc-image-bottom,0%);height:var(--npc-image-height,100%);width:auto;image-rendering:pixelated;position:absolute;left:50%;transform:translate(-50%)}.npc-walk-torso{clip-path:inset(0 0 24%)}.npc-walk-leg-left{clip-path:inset(73% 50% 0 0);transform-origin:44% 76%;transform:translateX(-50%) rotate(var(--npc-left-angle,0deg)) scaleY(var(--npc-left-scale,1))}.npc-walk-leg-right{clip-path:inset(73% 0 0 50%);transform-origin:56% 76%;transform:translateX(-50%) rotate(var(--npc-right-angle,0deg)) scaleY(var(--npc-right-scale,1))}.npc[data-npc-id=cafe-barista] .npc-sprite,.npc[data-npc-id=cafe-waitress] .npc-sprite,.npc[data-npc-id=wedding-officiant] .npc-sprite{transform-origin:50% 96%;animation:3.4s ease-in-out infinite cafe-conversation-idle}@keyframes cafe-conversation-idle{0%,to{transform:translate(-50%)rotate(0)}35%{transform:translate(-50%)rotate(-1deg)}68%{transform:translate(-50%)rotate(.8deg)}}.npc[data-npc-id=cafe-barista] .npc-sprite[src$=barista-idle-3\.webp]{height:88%}.player{top:725px;left:125px}.bride{top:650px;left:925px}#camera-toggle{color:#fff5ce;font:inherit;border:1px solid #a99db9;padding:6px 9px;font-size:10px}.quest{color:#fff7df;text-align:center;background:#24252e;flex-shrink:0;min-height:29px;padding:7px 10px;font-size:10px;line-height:1.4}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.direction:disabled,.action:disabled,#camera-toggle:disabled{opacity:.4;cursor:default}.game-shell[data-story-locked=true] .action-a{filter:brightness(1.15)}.controls{touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-shrink:0;justify-content:space-between;align-items:center;height:154px;padding:9px 20px 1px;display:flex;position:relative}.game-start-overlay{z-index:10000;background:#202821;place-items:end center;animation:1.1s ease-out both opening-fade-in;display:grid;position:absolute;inset:0;overflow:hidden}.game-start-art{-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;image-rendering:auto;background:#202821;width:100%;height:100%;position:absolute;inset:0}.game-start-content{z-index:1;width:min(92%,650px);box-shadow:none;color:#fff6df;text-align:center;background:0 0;border:0;justify-items:center;gap:12px;margin-bottom:32px;padding:22px 16px 24px;font-family:"Press Start 2P",monospace;display:grid;position:relative}.game-start-eyebrow{letter-spacing:2px;color:#e6d7b4;text-shadow:2px 2px #382b35;font-size:clamp(10px,1.7vw,14px);font-weight:400}.game-start-content h1{letter-spacing:1px;text-transform:uppercase;color:#ffe9ad;text-shadow:2px 2px #7e4b4c,4px 4px #27213a;margin:0;font-family:"Press Start 2P",monospace;font-size:clamp(16px,2.7vw,25px);font-weight:400;line-height:1.35}.game-start-button{color:#fff9db;letter-spacing:1px;text-transform:uppercase;background:#3c4655;border:3px solid #f5e2aa;margin-top:8px;padding:12px 18px;font:400 10px "Press Start 2P",monospace;box-shadow:4px 4px #12151c}.game-start-button:before{content:"▶";color:#ffd786;margin-right:10px;display:inline-block}.game-start-button:hover,.game-start-button:focus-visible{background:#515e6d}@keyframes opening-fade-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.game-start-overlay{animation:none}}.game-music{color:#e9d6a4;min-height:44px;font:inherit;letter-spacing:.5px;font-size:9px;position:absolute;top:18px;left:50%;transform:translate(-50%)}.game-music:active{transform:translate(-50%,2px)}.game-reset{color:#e9d6a4;min-width:58px;min-height:44px;font:inherit;letter-spacing:1px;font-size:10px;position:absolute;bottom:10px;left:50%;transform:translate(-50%)}.game-reset:before{content:"";background:#252730;border:2px solid #aaa3af;border-radius:8px;width:34px;height:9px;margin:0 auto 5px;display:block;box-shadow:0 3px #171820}.game-reset:active{transform:translate(-50%,2px)}button{-webkit-tap-highlight-color:transparent;touch-action:none;cursor:pointer;background:0 0;border:0;padding:0}button img{-o-object-fit:contain;object-fit:contain;width:100%;height:100%;image-rendering:pixelated;pointer-events:none;display:block}button:focus-visible{outline-offset:2px;outline:3px solid #f8d978}button:active,.direction.is-held{filter:brightness(1.2);transform:translateY(3px)}.dpad{width:158px;height:158px;position:relative;transform:scale(.9)}.direction{width:55px;height:55px;position:absolute}.up{top:0;left:52px}.left{top:51px;left:0}.right{top:51px;right:0}.down{bottom:0;left:52px}.actions{align-items:center;gap:12px;display:flex}.action{width:65px;height:65px}.action-a{margin-top:-37px}.action-b{margin-top:37px}footer{color:#b6b4bd;letter-spacing:.04em;justify-content:center;padding:3px 16px 9px;font-size:10px;display:flex}@media (width<=360px){.controls{padding-inline:9px}.actions{gap:6px}.action{width:57px;height:57px}}@media (height<=700px){.controls{height:126px;padding-block:0}.dpad{transform-origin:0;width:158px;margin-right:-32px;transform:scale(.8)}.action{width:55px;height:55px}.topbar{height:35px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.npc-sprite,.character,.failure-scene,.failure-art,.failure-title,.comic-panel,.comic-effect,.dojang-cheers{animation:none!important}}.game-back[data-astro-cid-njatf32t]{color:#f1d38b;white-space:nowrap;align-items:center;min-height:40px;font:10px "Press Start 2P",monospace;text-decoration:none;display:inline-flex}
