.postcard-launch{pointer-events:auto;margin-left:auto;width:62px;height:50px;padding:6px}.postcard-launch>span{display:block;position:relative;width:46px;height:31px;border:1px solid #a47b48;border-radius:3px;background:url(/assets/immutable/kraft-paper-BdMmbA00.svg) center / 120px 45px;box-shadow:0 3px 7px #0003;transform:rotate(-9deg);transition:transform .18s ease}.postcard-launch>span:after{content:"";position:absolute;inset:0;clip-path:polygon(0 0,100% 0,100% 20%,54% 72%,46% 72%,0 20%);background:linear-gradient(#ffe3b128,#a6794133),url(/assets/immutable/kraft-paper-BdMmbA00.svg) center / 120px 45px}.postcard-launch:hover>span{transform:rotate(-3deg) translateY(-2px)}#postcard-dialog{--postcard-ink: #394630;--postcard-muted: #8c8472;--postcard-paper: #fbf8ef;--postcard-ease: cubic-bezier(.22,.68,.2,1);width:min(820px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:22px 38px 24px;border:1px solid #fff8;border-radius:26px;color:var(--postcard-ink);background:radial-gradient(ellipse at 50% 30%,#f7f3e9,#e9e3d6);overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;box-shadow:0 32px 100px #15241455,0 2px 4px #27321f22}#postcard-dialog[open]{animation:postcard-arrive .32s var(--postcard-ease) both}#postcard-dialog::backdrop{background:#1423129c;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}@keyframes postcard-arrive{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}.postcard-topline{display:flex;align-items:center;justify-content:flex-end}#postcard-close{display:grid;place-items:center;min-height:36px;width:36px;padding:0;border:1px solid #c9c1b366;color:#7d7462;transition:background .15s}#postcard-close svg{width:18px;height:18px}#postcard-close:hover{background:#d8d1c355}#postcard-dialog h2{margin:16px 0 5px;text-align:center;font:500 clamp(32px,5vw,44px)/1.12 "Caveat",cursive}.postcard-intro{margin:0;text-align:center;font-size:12px;line-height:1.6;color:#8a806c}.postcard-scene{position:relative;width:min(100%,690px);aspect-ratio:1.5;margin:30px auto 28px;perspective:1600px;isolation:isolate}.postcard-scene{--kraft: url(/assets/immutable/kraft-paper-BdMmbA00.svg);--kraft-size: 480px 180px;--postcard-opening-duration: 1.8s}.postcard-envelope-defs{position:absolute;pointer-events:none}.postcard-envelope-base,.postcard-envelope-lid,.postcard-envelope{position:absolute;inset:50% 3% auto;aspect-ratio:1103 / 722;transform:translateY(-50%)}.postcard-envelope-base{z-index:0;background:#c5a071 var(--kraft) 0 0 / var(--kraft-size);border-radius:2px;box-shadow:0 18px 26px -15px #60442666,0 2px 4px #62482b25}.postcard-envelope{z-index:2}.postcard-envelope-lid{z-index:3;perspective:1400px}.envelope-lining{position:absolute;inset:1px;background:linear-gradient(#62411c40,#79552e0a 70%),var(--kraft) 0 0 / var(--kraft-size);box-shadow:inset 0 2px 4px #60421d33}.envelope-pocket{position:absolute;inset:0;filter:drop-shadow(0 -1px 1px #704d2733)}.envelope-pocket-paper{position:absolute;inset:0;clip-path:url(#postcard-envelope-pocket-mask);background:linear-gradient(35deg,transparent 49.8%,#8a633b1f 50%,#f9dfb61a 50.3%,transparent 50.6%),linear-gradient(-35deg,transparent 49.9%,#8a633b14 50%,transparent 50.5%),var(--kraft) 0 0 / var(--kraft-size);box-shadow:inset 2px 0 2px #795b3933,inset -1px 0 2px #ffe4b94d,inset 0 -1px #95704855}.envelope-pocket-paper:after{content:"";position:absolute;left:33%;right:33%;top:63%;height:1px;background:linear-gradient(90deg,transparent,#84623b70 8%,#84623b70 92%,transparent);box-shadow:0 1px #efd2a844}.envelope-flap{position:absolute;inset:0;transform-origin:50% 0;transform-style:preserve-3d;z-index:3}.envelope-flap-outside,.envelope-flap-inside{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;filter:drop-shadow(0 3px 2px #6a461963)}.envelope-flap-outside:before,.envelope-flap-inside:before{content:"";position:absolute;inset:0;clip-path:url(#postcard-envelope-flap-mask);background:linear-gradient(150deg,#fff1d00d,#bc8e4b0d),var(--kraft) 0 0 / var(--kraft-size);box-shadow:inset 0 1px #f7dab76b}.envelope-pocket-paper,.envelope-flap-outside:before,.envelope-flap-inside:before{background-color:#caa778}.envelope-flap-inside{transform:rotateY(180deg);filter:drop-shadow(0 1px 1px #6a461933)}.envelope-flap-inside:before{background-image:linear-gradient(#8a633b1c,#f2d6b112),var(--kraft)}.postcard-envelope-hit{position:absolute;z-index:6;inset:50% 3% auto;aspect-ratio:1103 / 722;transform:translateY(-50%);border-radius:1px}#postcard-envelope-open:not(:disabled):active{background:transparent}.postcard-sheet{position:absolute;inset:0;opacity:0;transform:translateY(10%) scale(.88) rotate(-3deg);transform-style:preserve-3d;transition:transform .56s var(--postcard-ease);pointer-events:none;z-index:1}.postcard-front,.postcard-back{position:absolute;inset:0;border:1px solid #e7e1d6;border-radius:2px;background:radial-gradient(#b8ac8b16 .5px,transparent .5px) 0 0 / 4px 4px,var(--postcard-paper);box-shadow:0 17px 24px -12px #77684855,0 2px 5px #66583c14;backface-visibility:hidden;-webkit-backface-visibility:hidden}.postcard-front{padding:12px 12px 0;display:flex;flex-direction:column}.postcard-front>img{display:block;width:100%;min-height:0;flex:1;object-fit:cover;object-position:50% 40%;border:1px solid #383e2a10}.postcard-front-caption{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 7px 11px}.postcard-front-caption>span{font:600 31px Caveat,cursive}.postcard-front-caption small{text-align:right;font:18px/1.1 Caveat,cursive;color:#706b55}.postcard-front-caption small b{display:block;margin-top:5px;font:400 7px/1.4 Inter,sans-serif;letter-spacing:1.4px;text-transform:uppercase;color:#91856d}.postcard-back{transform:rotateY(180deg);display:grid;grid-template-columns:1.1fr 1fr;padding:26px}.postcard-writing{display:flex;flex-direction:column;padding-right:24px;border-right:1px solid #c3bba6;min-width:0}.postcard-back label{font:23px Caveat,cursive;color:#8a7f67}.postcard-writing textarea{flex:1;width:100%;min-height:0;resize:none;padding:10px 0;margin:0;border:0;border-radius:2px;background:transparent;font:25px/1.38 Caveat,cursive;color:#3e4933}.postcard-writing textarea::placeholder{color:#b6ad95}.postcard-writing-footer{display:flex;justify-content:space-between;align-items:end;gap:8px;padding-top:12px}.postcard-edition{font-size:7px;line-height:1.7;letter-spacing:.8px;text-transform:uppercase;color:#9a8e76}.postcard-edition i{font-style:normal}.postcard-edition i:after{content:""}#postcard-count{flex-shrink:0;font-size:8px;color:#b0a68f;font-variant-numeric:tabular-nums}.postcard-address{position:relative;display:flex;flex-direction:column;padding-left:25px;min-width:0}.postcard-postage{display:flex;justify-content:flex-end;position:relative;height:95px}.postcard-stamp{width:67px;height:81px;padding:6px;background:#eee6cc;border:1px dashed #a69a71;outline:2px solid #eee6cc;outline-offset:1px;transform:rotate(5deg)}.postcard-stamp img{width:100%;height:55px;display:block;object-fit:cover;object-position:38% 45%;filter:sepia(.25) saturate(.65)}.postcard-stamp small{display:block;text-align:center;white-space:nowrap;font-size:5px;line-height:1;padding-top:7px;letter-spacing:.8px;color:#7b7755}.postcard-cancellation{display:flex;position:absolute;right:39px;top:26px;z-index:1;align-items:center;transform:rotate(-13deg);opacity:.48;pointer-events:none}.postcard-cancellation>span{display:grid;place-content:center;width:58px;height:58px;border:2px double #7e8069;border-radius:50%;color:#7e8069;text-align:center;font-size:6px;line-height:1.3;letter-spacing:1px}.postcard-cancellation b{font-size:8px;font-weight:500}.postcard-cancellation svg{width:55px;height:30px;margin-left:-2px;fill:none;stroke:#7e8069;stroke-width:1.5}.postcard-address-fields{margin:auto 0;display:grid;gap:4px}.postcard-address input{width:100%;border:0;border-bottom:1px dashed #bab09a;border-radius:0;padding:2px 0 8px;margin-bottom:14px;background:transparent;color:#3e4933;font:25px Caveat,cursive}.postcard-address input::placeholder{color:#b0a68f}.postcard-postmark{font:16px/1.25 Caveat,cursive;color:#a19680}#postcard-dialog:is([data-stage=front],[data-stage=back]) :is(.postcard-envelope,.postcard-envelope-base,.postcard-envelope-lid){visibility:hidden}#postcard-dialog[data-stage=front] .postcard-sheet{opacity:1;transform:none;pointer-events:auto}#postcard-dialog[data-stage=back] .postcard-sheet{opacity:1;transform:rotateY(180deg);pointer-events:auto}#postcard-dialog[data-stage=opening] :is(.postcard-envelope,.postcard-envelope-base,.postcard-envelope-lid){animation:envelope-away var(--postcard-opening-duration) cubic-bezier(.4,0,.2,1) both;will-change:transform,opacity}#postcard-dialog[data-stage=opening] .postcard-envelope-lid{animation:envelope-away var(--postcard-opening-duration) cubic-bezier(.4,0,.2,1) both,flap-layer var(--postcard-opening-duration) steps(1) both}#postcard-dialog[data-stage=opening] .envelope-flap{animation:flap-open var(--postcard-opening-duration) cubic-bezier(.4,0,.25,1) both;will-change:transform}#postcard-dialog[data-stage=opening] .postcard-sheet{animation:postcard-out var(--postcard-opening-duration) both;transition:none;will-change:transform,opacity}@keyframes flap-layer{0%,25%{z-index:3}26%,to{z-index:0}}@keyframes flap-open{0%,4%{transform:rotateX(0)}40%,to{transform:rotateX(180deg)}}@keyframes envelope-away{0%{opacity:1;transform:translateY(-50%) scale(1)}34%{opacity:1;transform:translateY(-31%) scale(.64);animation-timing-function:cubic-bezier(.4,0,.6,1)}54%{opacity:1;transform:translateY(-28%) scale(.64);animation-timing-function:cubic-bezier(.35,0,.3,1)}84%,to{opacity:0;transform:translateY(5%) scale(.62)}}@keyframes postcard-out{0%{opacity:0;transform:translateY(6%) scale(.82);animation-timing-function:cubic-bezier(.4,0,.2,1)}30%{opacity:1;transform:translateY(19%) scale(.56);animation-timing-function:cubic-bezier(.35,0,.65,1)}59%{opacity:1;transform:translateY(-7%) scale(.56);animation-timing-function:cubic-bezier(.3,0,.18,1)}to{opacity:1;transform:translateY(0) scale(1)}}.postcard-controls{display:flex;align-items:center;justify-content:center;gap:10px;min-height:46px}.postcard-controls button{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:12px 20px;min-height:46px;border:1px solid #aaa68e88;border-radius:999px;color:#647054;font-size:12px;font-weight:500;transition:transform .16s ease,background .16s ease,box-shadow .16s ease}.postcard-controls button svg{width:16px;height:16px;stroke-width:1.5}.postcard-controls button:not(:disabled):hover{background:#fff7;transform:translateY(-1px)}.postcard-controls button:not(:disabled):active{transform:translateY(1px)}.postcard-controls button.postcard-primary{background:#4d6040;color:#fbf6e6;border-color:#4d6040;box-shadow:0 3px 6px #30432012,inset 0 1px #ffffff20}.postcard-controls button.postcard-primary:not(:disabled):hover{background:#405335;box-shadow:0 5px 10px #30432020}.postcard-controls button:disabled{opacity:.5}#postcard-status{font-size:12px;line-height:1.5;text-align:center;margin:14px 0 0;color:#5d7048}#postcard-status:empty{display:none}#postcard-footnote{font-size:10px;line-height:1.5;text-align:center;margin:13px 0 0;color:#9a907b}#postcard-link-area{max-width:480px;font-size:11px;margin:20px auto 0;border-top:1px solid #c7bea666;padding-top:16px}#postcard-link-area label{color:#7a715e}#postcard-link-area>div{display:flex;margin-top:7px;padding:4px;border:1px solid #c9c2af;border-radius:12px;background:#faf7ed}#postcard-link{width:100%;min-width:0;padding:8px;color:#8b846f;background:transparent;border:0;font:11px Inter,sans-serif;text-overflow:ellipsis}#postcard-copy{white-space:nowrap;min-height:36px;padding:0 12px;background:#e7ebdd;color:#4d6040;font-size:11px;border-radius:8px}#postcard-link-area p{color:#968b75;font-size:10px}#postcard-dialog :is(button,input,textarea):focus-visible{outline:2px solid #75815a;outline-offset:4px}#postcard-dialog :is(input,textarea):focus-visible{outline:none;background-color:#e7e2d124;box-shadow:0 2px #9da982}@media(max-width:600px){#postcard-dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:16px 16px 20px;border-radius:22px}#postcard-close{min-height:32px;width:32px}#postcard-dialog h2{margin-top:17px}.postcard-intro{font-size:11px}.postcard-scene{margin:32px auto 25px}.postcard-front{padding:8px 8px 0}.postcard-front-caption{padding:7px 2px 8px}.postcard-front-caption>span{font-size:24px}.postcard-front-caption small{font-size:14px}.postcard-front-caption small b{font-size:5px;letter-spacing:.6px;margin-top:3px}#postcard-dialog[data-stage=back] .postcard-scene{aspect-ratio:auto;height:370px;margin-top:24px}.postcard-back{padding:17px 14px;grid-template-columns:1.1fr 1fr}.postcard-writing{padding-right:13px}.postcard-address{padding-left:14px}.postcard-back label{font-size:21px}.postcard-writing textarea,.postcard-address input{font-size:22px}.postcard-writing-footer{display:block}.postcard-edition{display:block;font-size:6px;letter-spacing:.5px}#postcard-count{display:block;margin-top:5px}.postcard-postage{height:82px}.postcard-stamp{width:51px;height:65px;padding:5px}.postcard-stamp img{height:41px}.postcard-stamp small{font-size:4px;letter-spacing:.3px;padding-top:6px}.postcard-cancellation{top:22px;right:19px}.postcard-cancellation>span{width:47px;height:47px;font-size:5px}.postcard-cancellation b{font-size:6px}.postcard-cancellation svg{width:35px}.postcard-postmark{font-size:14px}.postcard-controls{gap:8px}.postcard-controls button{padding:12px 14px;font-size:11px;gap:7px}.postcard-controls button svg{width:14px;height:14px}#postcard-footnote{font-size:9px}}@media(max-width:360px){.postcard-controls{flex-wrap:wrap}.postcard-front-caption small b{letter-spacing:.1px}}@media(prefers-reduced-motion:reduce){#postcard-dialog[open],#postcard-dialog *,#postcard-dialog *:before,#postcard-dialog *:after{animation:none!important;transition:none!important}.postcard-launch>span{transition:none}}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/immutable/inter-400-BMa5IoM-.ttf) format("truetype")}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/immutable/inter-500-DvphOyYU.ttf) format("truetype")}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/immutable/inter-600-BEUPqj-s.ttf) format("truetype")}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/immutable/inter-700-DJlYPwri.ttf) format("truetype")}@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(/assets/immutable/inter-800-Cfj_m2VG.ttf) format("truetype")}@font-face{font-family:Caveat;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/immutable/caveat-400-700-8jBGxy3y.ttf) format("truetype")}:root{font-family:Inter,system-ui,sans-serif;font-synthesis:none;color:#fff;background:#e3e5e3;--edge: 24px;--top: max(var(--edge), env(safe-area-inset-top));--bottom: max(var(--edge), env(safe-area-inset-bottom));--left: max(var(--edge), env(safe-area-inset-left));--right: max(var(--edge), env(safe-area-inset-right));--glass-fill: rgb(0 0 0 / 22%);--glass-blur: 8px;--glass-sheen: linear-gradient(135deg, rgb(255 255 255 / 2%), transparent 55%);--glass-edge: rgb(255 255 255 / 18%)}*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden;overscroll-behavior:none}body{-webkit-tap-highlight-color:transparent}[hidden]{display:none!important}button,summary{touch-action:manipulation;-webkit-user-select:none;user-select:none}button{font:inherit;color:inherit;cursor:pointer;min-height:48px;border:0;border-radius:999px;background:transparent}button:disabled{cursor:default}button:focus-visible,summary:focus-visible{outline:2px solid #fff;outline-offset:4px}button svg{width:22px;height:22px;flex:none;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}button:not(:disabled):active{background-color:#ffffff0a}button.glass:not(:disabled):active{--glass-fill: rgb(0 0 0 / 40%);background-color:var(--glass-fill)}#scene{display:block;width:100%;height:100%;touch-action:none}body[data-capture=true] :is(.game-header,#hud,#interact,#swing-controls,#notice,#welcome){display:none!important}.glass,body[data-started] #welcome,body:not([data-started]) #start{background:var(--glass-sheen),var(--glass-fill);border:1px solid var(--glass-edge);box-shadow:none;-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));color:#fff;text-shadow:none}body[data-started] #welcome,body:not([data-started]) #start,#hint,#interact,#notice{--glass-fill: rgb(0 0 0 / 36%)}body[data-started] #welcome{--glass-fill: rgb(20 40 24 / 76%);--glass-blur: 16px;--glass-edge: rgb(255 255 255 / 22%)}.game-header{position:fixed;top:var(--top);left:var(--left);right:var(--right);display:flex;justify-content:space-between;align-items:flex-start;gap:16px;pointer-events:none;z-index:3}.location{width:94px;margin:-9px 0 0 -4px}.location img{display:block;width:100%;height:auto}h1{margin:0;font-size:18px;line-height:1.2;font-weight:500;letter-spacing:-.045em}.menu-button{display:grid;place-items:center;width:50px;height:50px;padding:0;pointer-events:auto;border-radius:999px}.menu-button span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.menu-button[aria-expanded=true]{--glass-fill: rgb(0 0 0 / 30%);border-color:#ffffff7f}.panel{--menu-inset: 12px;--menu-icon: 34px;position:fixed;z-index:4;right:var(--right);top:calc(var(--top) + 68px);width:340px;max-width:calc(100% - var(--left) - var(--right));max-height:calc(100dvh - var(--top) - var(--bottom) - 68px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#ffffff66 transparent;border-radius:30px;padding:24px 20px 14px}.panel h2{font:600 35px/1.05 Caveat,cursive;letter-spacing:0;margin:2px var(--menu-inset) 20px}.primary{display:grid;grid-template-columns:minmax(0,1fr) var(--menu-icon);align-items:center;gap:12px;text-align:left;width:100%;padding:0 calc(var(--menu-inset) - 1px);min-height:56px;border-radius:999px;background:radial-gradient(ellipse at 50% 0%,rgb(255 255 255 / 8%),transparent 72%),#ffffff0a;border:1px solid rgb(255 255 255 / 22%);border-top-color:#ffffff4d;font-weight:500;font-size:16px}.primary svg{justify-self:center;width:25px;height:25px;fill:currentColor;stroke-width:1}.primary .start-arrow{display:none;fill:none;stroke-width:2.4}body[data-started] .primary{min-height:54px;border-color:#fff18a;border-bottom-color:#d5ad18;border-radius:22px;color:#1e2b12;background:linear-gradient(180deg,#fff070,#ffdf34);box-shadow:0 3px #cfa522;font-weight:600}body[data-started] .primary:not(:disabled):is(:hover,:active){background:linear-gradient(180deg,#fff48b,#ffe44b)}button.glass,body:not([data-started]) #start{--glass-sheen: radial-gradient(ellipse at 50% 0%, rgb(255 255 255 / 14%) 0%, rgb(255 255 255 / 4%) 42%, transparent 76%);--glass-edge: rgb(255 255 255 / 24%);border-top-color:#ffffff61;border-bottom-color:#ffffff29}.instructions{margin:2px var(--menu-inset) 0;display:grid;gap:13px;font-size:13px;line-height:1.45}.instructions>div{display:grid;grid-template-columns:72px minmax(0,1fr);align-items:start;column-gap:12px}.instructions>div>:first-child{color:#fff}.instructions>div>:last-child{color:#ffffffd6;text-align:left}.instructions-touch,body[data-input=touch] .instructions-keyboard{display:none}body[data-input=touch] .instructions-touch{display:grid}.controller-hint,.analytics-notice{margin:16px var(--menu-inset) 20px;color:#ffffffb8;font-size:12px;line-height:1.45}body[data-input=touch] .controller-hint{display:none}kbd{font:500 12px/1.5 Inter,system-ui,sans-serif;padding:3px 6px;border:0;border-radius:6px;background:#ffffff0a;white-space:nowrap}.how-to-play{margin-top:12px}.settings{border-top:1px solid rgb(255 255 255 / 18%)}.panel summary{border-radius:18px;min-height:56px;display:grid;grid-template-columns:minmax(0,1fr) var(--menu-icon);align-items:center;gap:12px;padding:0 var(--menu-inset);font-size:15px;font-weight:500;cursor:pointer;list-style:none}.panel summary::-webkit-details-marker{display:none}.panel summary svg{justify-self:center;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;opacity:.8}.panel details[open]>summary svg{transform:rotate(180deg)}.settings-content{padding-bottom:4px}.setting-toggles{display:grid;gap:4px}.setting-toggles button{display:grid;grid-template-columns:minmax(0,1fr) var(--menu-icon);align-items:center;gap:12px;min-height:52px;padding:0 var(--menu-inset);font-size:15px;text-align:left;font-weight:400}.setting-toggles button:after{content:"";width:34px;height:21px;justify-self:center;border:1px solid rgb(255 255 255 / 70%);border-radius:999px;background:radial-gradient(circle at 10px 50%,#fff 0 6px,transparent 7px),#ffffff0a}.setting-toggles button{border-radius:18px}.setting-toggles button[aria-pressed=true]:after{background:radial-gradient(circle at 23px 50%,#fff 0 6px,transparent 7px),#ffffff0a}body[data-started] .welcome-copy,body[data-started] .character-choice{display:none}.panel :is(button,summary):focus-visible{outline-offset:-3px}footer{position:fixed;left:var(--left);bottom:var(--bottom);pointer-events:none}#hint{display:inline-flex;flex-wrap:wrap;align-items:center;gap:9px;padding:10px 16px;border-radius:20px;font-size:13px}#interact{position:fixed;z-index:2;bottom:calc(var(--bottom) + 80px);left:50%;transform:translate(-50%);display:flex;align-items:center;justify-content:center;gap:10px;padding:0 24px;min-height:56px;font-size:16px;font-weight:500}#hint[hidden],#interact[hidden]{display:none}body[data-input=keyboard] #interact{top:var(--action-y);bottom:auto;left:var(--action-x);transform:translate(-50%,-110%);gap:5px;min-height:0;padding:6px 10px;border-radius:11px;white-space:nowrap;font-size:12px;font-weight:400}body[data-input=keyboard] #interact kbd{font-size:11px;font-weight:700;background:#ffffff24}body[data-input=keyboard] #interact-label{font-weight:500}#interact-label{line-height:1.3;text-align:center}#jump{position:fixed;z-index:2;right:var(--right);bottom:calc(var(--bottom) + 28px);width:72px;height:54px;border-radius:22px;font-size:14px;font-weight:700}#swing-controls{position:fixed;z-index:2;right:calc(var(--right) + 88px);bottom:calc(var(--bottom) + 28px);display:grid;gap:10px}#swing-controls button{width:72px;height:64px;padding:0;border-radius:22px;font-size:32px;line-height:1;font-weight:600;touch-action:none}#jump[hidden],body[data-playing=false] #jump,body[data-input=keyboard] #jump,#interact .action-icon{display:none}#notice{position:fixed;z-index:6;top:calc(var(--top) + 70px);left:50%;transform:translate(-50%,-6px);opacity:0;pointer-events:none;padding:14px 22px;max-width:calc(100% - 32px);border-radius:22px;text-align:center;font-size:14px}#notice.show{opacity:1;transform:translate(-50%)}body[data-input=touch] #interact,body[data-input=touch] #jump,body[data-input=touch] #swing-controls button{--glass-fill: rgb(20 40 24 / 82%);--glass-blur: 12px;width:max-content;max-width:calc(100vw - var(--left) - var(--right));height:auto;min-height:56px;padding:8px 12px;border-radius:18px;font-size:14px;font-weight:600}body[data-input=touch] #interact{left:auto;right:var(--right);bottom:calc(var(--bottom) + 28px);transform:none;flex-direction:row;justify-content:flex-start;gap:8px}body[data-input=touch] #interact.discover-pulse{animation:discover-action .85s ease-out}@keyframes discover-action{0%,to{transform:scale(1);box-shadow:0 8px 24px #0000002e}35%{transform:scale(1.08);box-shadow:0 0 0 8px #ffda7852,0 8px 24px #0000002e}}#discovery-cue{position:fixed;z-index:2;width:16px;height:16px;border:2px solid #ffe5a6;border-radius:50%;background:#fff5cf59;box-shadow:0 0 0 5px #ffdb842e,0 0 17px #ffe194bf;transform:translate(-50%,-50%);pointer-events:none}#discovery-cue:after{content:"";position:absolute;inset:-8px;border:1px solid rgb(255 229 166 / 70%);border-radius:50%;animation:discovery-breathe 2.2s ease-in-out infinite}@keyframes discovery-breathe{0%,to{transform:scale(.82);opacity:.35}50%{transform:scale(1.15);opacity:.8}}#discovery-cue[hidden],body[data-capture=true] #discovery-cue{display:none}body[data-input=touch] #jump{bottom:calc(var(--bottom) + 28px)}body[data-input=touch] #swing-controls{right:var(--right);bottom:calc(var(--bottom) + 94px)}body[data-input=touch] #swing-controls button{width:72px;font-size:28px}body[data-input=touch] #interact kbd{display:none}body[data-input=touch] #interact .interact-copy{display:grid;min-width:0;gap:0;text-align:left}body[data-input=touch] #interact-label{text-align:left;line-height:16px;overflow-wrap:anywhere}body[data-input=touch] #interact .action-icon{width:20px;height:20px}body[data-input=touch] #interact[data-action=mango] [data-icon=mango],body[data-input=touch] #interact[data-action=bike] [data-icon=bike],body[data-input=touch] #interact[data-action=park] [data-icon=bike],body[data-input=touch] #interact[data-action=fish] [data-icon=fish],body[data-input=touch] #interact[data-action=shop] [data-icon=shop],body[data-input=touch] #interact[data-action=treat] [data-icon=treat]{display:block}body[data-input=touch] footer{display:none}@media(max-width:700px){#notice{top:calc(var(--top) + 58px);max-width:calc(100% - 48px);padding:11px 16px;font-size:13px}.location{width:78px}.menu-button{width:48px;height:48px}#interact{box-shadow:0 8px 24px #0000002e}}body:not([data-started]) .game-header{visibility:hidden}body:not([data-started]) #welcome{--launch-action-bottom: max(58px, 6.87dvh);--launch-character-height: min(389.22px, 99.86vw, calc(62.19dvh - var(--launch-action-bottom) - 93px));inset:0;transform:none;display:block;width:100%;max-width:none;height:100dvh;max-height:none;overflow:hidden;padding:0;border:0;border-radius:0;box-shadow:none;background:#0e2903}body:not([data-started]) #welcome-title{position:absolute;z-index:1;top:8.57dvh;left:50%;width:min(190px,48.72vw,22.3dvh);height:auto;margin:0;line-height:0;transform:translate(-50%)}.launch-title{display:block;width:100%;height:auto;object-fit:contain}body:not([data-started]) .welcome-copy{position:absolute;z-index:1;top:26.78dvh;left:50%;margin:0;color:#ffffffeb;font-size:min(14px,3.59vw);font-weight:400;line-height:normal;white-space:nowrap;transform:translate(-50%)}.character-choice{position:absolute;z-index:1;top:36.17dvh;left:0;width:100%;height:52.12dvh;margin:0;text-align:center}.character-choice>p{margin:0;color:#ffffffd6;font-size:min(14px,3.59vw);font-weight:600;line-height:normal;letter-spacing:1.8px;text-transform:uppercase}.character-carousel{position:absolute;top:29px;left:0;width:100%;height:calc(100% - 29px)}.character-track{position:absolute;inset:0;overflow:hidden;perspective:800px;touch-action:pan-y;cursor:grab}.character-track:active{cursor:grabbing}.character-track:focus-visible{outline:2px solid #fff;outline-offset:-3px;border-radius:26px}.character-option{position:absolute;z-index:0;top:1.64dvh;left:50%;display:grid;place-items:end center;width:auto;height:var(--launch-character-height);min-height:0;aspect-ratio:11 / 15;padding:0;border:0;background:transparent;opacity:0;filter:saturate(.55) brightness(.66);pointer-events:none;transform:translate(-50%) translateY(90px) translateZ(-180px) scale(.7)}.character-option[data-slot="-1"]{z-index:1;opacity:.36;transform:translate(calc(-50% - min(43vw,195px))) translateY(90px) translateZ(-180px) rotateY(-12deg) scale(.7)}.character-option[data-slot="1"]{z-index:1;opacity:.36;transform:translate(calc(-50% + min(43vw,195px))) translateY(90px) translateZ(-180px) rotateY(12deg) scale(.7)}.character-option[data-slot="0"]{z-index:2;opacity:1;filter:none;pointer-events:auto;transform:translate(-50%) translateY(0) translateZ(0) scale(1)}.character-option:not(:disabled):is(:hover,:active){background:transparent}.character-portrait-frame{position:relative;display:grid;place-items:end center;width:100%;height:100%;min-height:0}.character-portrait{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none}.character-name{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.character-nav{position:absolute;z-index:3;top:50%;display:grid;place-items:center;width:48px;height:48px;min-height:48px;padding:0;border:1px solid rgb(255 255 255 / 42%);border-radius:50%;color:#fff;background:#0e29038c;box-shadow:0 4px 18px #0000002e;transform:translateY(-50%)}.character-nav:not(:disabled):hover{background:#ffffff29}.character-nav:disabled{opacity:.45}.character-nav svg{width:26px;height:26px;stroke-width:2.2}.character-nav-left{left:max(12px,env(safe-area-inset-left))}.character-nav-right{right:max(12px,env(safe-area-inset-right))}.character-choice small{display:none}body:not([data-started]) .launch-actions{position:absolute;z-index:2;left:50%;bottom:var(--launch-action-bottom);display:grid;place-items:center;width:min(214px,54.87vw);min-height:52px;transform:translate(-50%)}body:not([data-started]) #start,body:not([data-started]) #start[data-glass=webgl]{position:relative;display:flex;align-items:center;justify-content:center;width:100%;min-height:52px;padding:0 22px;overflow:hidden;gap:10px;border:1px solid rgb(255 255 255 / 42%);border-top-color:#fff7a8;border-bottom-color:#e9b500;border-radius:24px;color:#000;background:linear-gradient(180deg,#ffeb43,#ffe100 48%,#ffda00);box-shadow:0 var(--play-shadow,6px) 0 #efbd00,inset 0 1px #ffffffa6,inset 0 -2px #aa690021;transform:translateY(var(--play-y,0px)) scale(var(--play-scale-x,1),var(--play-scale-y,1));-webkit-backdrop-filter:none;backdrop-filter:none;font-size:22px;font-weight:600}body:not([data-started]) #start:before{display:block;position:absolute;inset:0;border-radius:inherit;background:linear-gradient(180deg,rgb(255 255 255 / 30%),transparent 38%);opacity:var(--play-sheen,.72);pointer-events:none}body:not([data-started]) #start:after{display:none}body:not([data-started]) #start>*{position:relative;z-index:1}body:not([data-started]) #start-label{white-space:nowrap}body:not([data-started]) #start .resume-icon,body:not([data-started]) #start .start-arrow{display:none}body:not([data-started]) #start:disabled{visibility:hidden;opacity:0;pointer-events:none}body[data-loading=false]:not([data-started]) #start:not(:disabled){animation:play-ready .35s ease-out both}@keyframes play-ready{0%{opacity:0}to{opacity:1}}body:not([data-started]) :is(.how-to-play,.settings){display:none}@media(min-width:701px){body:not([data-started]) #welcome{--launch-character-height: min(491.09px, 47.96dvh);background:linear-gradient(#0000003d,#0000003d),#0e2903}body:not([data-started]) #welcome-title{top:7.52dvh;width:min(236.989px,23.14dvh)}body:not([data-started]) .welcome-copy{top:26.27dvh;font-size:min(18px,1.76dvh)}.character-choice{top:34.57dvh;left:50%;width:min(566.642px,55.34dvh);height:54.2dvh;transform:translate(-50%)}.character-choice>p{font-size:min(18px,1.76dvh);letter-spacing:2.2711px}.character-carousel{top:3.63dvh;height:54.2dvh}.character-track{inset:0;width:100%;transform:none}.character-option{top:1.7dvh;width:min(360.326px,35.19dvh);height:min(491.09px,47.96dvh)}body:not([data-started]) .launch-actions{top:87.4dvh;bottom:auto;width:214px;min-height:52px}}.room-menu-content{padding:0 var(--menu-inset) 14px}.room-menu-content p{margin:0;color:#ffffffb3;font-size:13px}.room-menu-content .room-slots{margin:12px 0}.room-menu-content button{display:grid;grid-template-columns:minmax(0,1fr) var(--menu-icon);align-items:center;gap:12px;width:100%;min-height:48px;padding:0 var(--menu-inset);border-radius:18px;font-size:14px;text-align:left}.room-menu-content button span{justify-self:center;font-size:22px}.remote-panel{margin:14px 0;border-top:1px solid rgb(255 255 255 / 18%);border-bottom:1px solid rgb(255 255 255 / 18%)}.remote-panel summary{min-height:48px;padding:0;grid-template-columns:minmax(0,1fr) auto;font-size:14px}.remote-panel summary span{color:#ffffff8c;font-size:11px;font-weight:400}.remote-content{display:grid;gap:9px;padding:0 0 14px}.remote-content p{font-size:11px;line-height:1.45}.remote-content label{color:#ffffffb3;font-size:11px}.remote-content textarea{width:100%;resize:vertical;padding:9px;border:1px solid rgb(255 255 255 / 22%);border-radius:10px;outline:none;color:#fff;background:#0000002e;font:11px/1.35 ui-monospace,SFMono-Regular,Menlo,monospace}.remote-content textarea:focus{border-color:#fff}.remote-content button{min-height:42px;padding:0 10px;background:#ffffff12}.remote-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}#loading{width:100%;padding:10px 0}.loading-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:11px;line-height:1.5}#load-percent{font-variant-numeric:tabular-nums}.track{width:100%;height:4px;margin-top:12px;overflow:hidden;background:#00000059;border-radius:8px}.track i{display:block;height:100%;background:#fff;transform:scaleX(0);transform-origin:left;transition:transform .24s ease-out}#load-error{max-width:270px;margin:14px 0 0;font-size:12px;text-align:center;line-height:1.5}@media(hover:hover){button:not(:disabled):hover{background-color:#ffffff0a}button.glass:not(:disabled):hover{--glass-fill: rgb(0 0 0 / 40%);background-color:var(--glass-fill)}body:not([data-started]) #start:not(:disabled):hover{filter:brightness(1.05)}summary:hover{color:#fff}}@media(max-width:700px){:root{--edge: 16px}.panel{width:340px;padding:24px 20px 14px}.location{width:82px}h1{font-size:17px}}@media(max-height:520px)and (orientation:landscape){:root{--edge: 12px}.panel{top:var(--top);right:50%;transform:translate(50%);width:370px;max-height:calc(100dvh - var(--top) - var(--bottom));padding:22px 20px 14px}.panel h2{margin-bottom:18px}.instructions{gap:12px}}@media(max-width:359px){.panel{padding-inline:16px}.instructions{font-size:13px;gap:14px}.instructions>div{grid-template-columns:68px minmax(0,1fr);column-gap:10px}}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.glass,body[data-started] #welcome,body:not([data-started]) #start{background:#5a5a5af0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}#pocket{display:flex;align-items:center;gap:5px;height:50px;margin-left:auto;padding:0 10px;border-radius:999px;font-size:14px;font-weight:600;font-variant-numeric:tabular-nums;pointer-events:none;--glass-fill: rgb(0 0 0 / 42%)}#pocket svg{display:block;width:27px;height:27px;flex:none}#pocket-count{min-width:1ch;text-align:center}#balloon-pocket{margin-left:5px;padding-left:8px;border-left:1px solid rgb(255 255 255 / 24%);font-size:12px;white-space:nowrap}body[data-shopping=true] :is(#hud,.game-header){visibility:hidden}#kada-dialog{position:fixed;inset:0;width:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;overflow:hidden;border:0;border-radius:0;background:transparent;color:#fff7e6}#kada-dialog::backdrop{background:transparent}.kada-topline{position:absolute;top:var(--top);left:var(--left);right:var(--right);display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.kada-heading{--glass-fill: rgb(20 40 24 / 70%);--glass-blur: 12px;padding:10px 17px 11px;border-radius:20px}#kada-title{margin:0 0 3px;font:600 18px/1.4 Inter,system-ui,sans-serif}#kada-balance{color:#ffecad;font-size:12px;font-weight:500}.kada-close{--glass-fill: rgb(20 40 24 / 70%);--glass-blur: 12px;display:inline-flex;align-items:center;gap:15px;min-height:50px;padding:0 18px;border-radius:999px;font-size:14px;font-weight:500}.kada-close span{font-size:17px;line-height:1}.kada-good{position:absolute;display:flex;align-items:flex-end;justify-content:center;transform:translate(-50%,-50%);padding:0;border:0;border-radius:0;background:transparent}.kada-good-label{color:#fff;font-size:12px;font-weight:600;line-height:1.4;text-shadow:0 1px 3px rgb(0 0 0 / 95%),0 2px 8px rgb(0 0 0 / 85%);transform:translateY(16px);pointer-events:none;white-space:nowrap}#kada-dialog .kada-good:hover,#kada-dialog .kada-good:active{background:transparent}#kada-dialog button:focus-visible{outline:2px solid #ffe0a1;outline-offset:4px}#kada-dialog .kada-good:focus-visible{outline:none}.kada-dialogue{--glass-fill: rgb(20 40 24 / 84%);--glass-blur: 16px;--glass-edge: rgb(255 255 255 / 22%);position:absolute;bottom:var(--bottom);left:50%;transform:translate(-50%);width:min(620px,calc(100% - var(--left) - var(--right)));padding:20px 24px 18px;border-radius:28px;box-shadow:0 18px 48px #0003}#kada-speech{margin:0 0 18px;font:600 20px/1.45 Inter,system-ui,sans-serif}.kada-order{display:flex;align-items:center;justify-content:space-between;gap:20px}.kada-selection{display:grid;gap:5px}#kada-item-name{font-size:14px;font-weight:600}#kada-item-price{font-size:12px;color:#ffecad}#kada-trade{padding:0 18px;flex-shrink:0;border:1px solid #fff18a;border-radius:18px;background:linear-gradient(180deg,#fff070,#ffdf34);box-shadow:0 3px #cfa522;color:#1e2b12;font-size:13px;font-weight:600}#kada-trade:disabled{border-color:#ffffff24;background:#ffffff14;box-shadow:none;color:#ffffffb8;font-weight:500}#kada-trade kbd{margin-left:10px;padding:3px 6px;border:1px solid currentColor;border-radius:3px;font:inherit;font-size:10px;opacity:.7}body[data-input=touch] #kada-trade kbd{display:none}#kada-dialog #kada-trade:not(:disabled):hover{background:linear-gradient(180deg,#fff48b,#ffe44b)}@media(max-width:700px){.kada-heading{padding:9px 13px 10px;border-radius:17px}#kada-title{font-size:16px}.kada-close{min-height:46px;padding:0 14px;gap:8px}.kada-dialogue{padding:18px;border-radius:24px}#kada-speech{font-size:19px;margin-bottom:16px}.kada-order{gap:10px}#kada-trade{padding:0 12px;font-size:12px}.kada-good-label{font-size:10px;transform:translateY(12px)}#pocket{height:48px;padding:0 8px;font-size:13px}#pocket svg{width:24px;height:24px}}@media(max-height:500px)and (min-width:701px){.kada-dialogue{width:480px;padding:12px 18px;bottom:12px}#kada-speech{font-size:18px;margin-bottom:8px}}#interact[data-action=treat]:disabled{opacity:.8}#interact-detail{color:#ffffffb8;font-size:12px;font-weight:500;line-height:16px}body[data-input=touch] #interact[data-action=treat]:disabled{opacity:1;color:#ffffffc2}
