*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#9fc8e5;overscroll-behavior:none;-webkit-tap-highlight-color:transparent}#game-canvas{display:block;width:100%;height:100%;outline:none;touch-action:none}:root{--s: 1;--ts: 1;--ink: #2b2140;--panel: rgba(24, 30, 46, .66);--panel-strong: rgba(24, 30, 46, .8);--gold: #ffd84a;--edge: calc(14px * var(--s));--top: max(var(--edge), env(safe-area-inset-top, 0px));--left: max(var(--edge), env(safe-area-inset-left, 0px));--right: max(var(--edge), env(safe-area-inset-right, 0px));--bottom: max(var(--edge), env(safe-area-inset-bottom, 0px));--dock-lift: 0px;--slot: calc(48px * var(--s));--font: Fredoka, Nunito, "Arial Rounded MT Bold", "Trebuchet MS", system-ui, sans-serif;--font-logo: "Luckiest Guy", "Lilita One", var(--font);--font-display: "Lilita One", var(--font);--outline: -2px -2px 0 var(--ink), 2px -2px 0 var(--ink), -2px 2px 0 var(--ink), 2px 2px 0 var(--ink), -2px 0 0 var(--ink), 2px 0 0 var(--ink), 0 -2px 0 var(--ink), 0 2px 0 var(--ink), 0 3px 6px rgba(0, 0, 0, .35)}[data-input=touch]{--slot: max(44px, calc(52px * var(--ts)))}[data-input=touch][data-orient=portrait]{--dock-lift: calc(var(--slot) + 28px)}#hud{position:fixed;inset:0;pointer-events:none;font-family:var(--font);z-index:5}.hud-off #hud{display:none}.name-badge{position:absolute;top:var(--top);left:var(--left);display:flex;align-items:center;gap:calc(8px * var(--s));height:calc(40px * var(--s));padding:0 calc(8px * var(--s)) 0 calc(5px * var(--s));border-radius:999px;background:var(--panel);color:#fff;font-weight:700;font-size:calc(16px * var(--s));letter-spacing:.2px;pointer-events:auto;box-shadow:0 2px #0000002e,0 4px 12px #0003;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.name-badge .avatar{width:calc(32px * var(--s));height:calc(32px * var(--s));image-rendering:pixelated}.name-badge .name{min-width:40px;max-width:calc(170px * var(--s));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.name-badge input{font:inherit;color:inherit;background:#ffffff1f;border:1px solid rgba(255,255,255,.35);border-radius:6px;padding:1px 6px;width:calc(140px * var(--s));outline:none}.name-badge .edit{display:inline-flex;align-items:center;justify-content:center;width:calc(28px * var(--s));height:calc(28px * var(--s));min-width:24px;min-height:24px;border:0;border-radius:50%;background:#ffffff24;color:#fff;cursor:pointer;padding:0}.name-badge .edit:hover{background:#ffffff4d}.name-badge .edit .vx-icon{width:calc(18px * var(--s));height:calc(18px * var(--s))}[data-input=touch] .name-badge .edit{width:32px;height:32px}.game-ui{position:fixed;inset:0;pointer-events:none;font-family:var(--font);color:#fff;z-index:5;user-select:none;-webkit-user-select:none}.hud-off .game-ui{display:none}.game-ui button{font:inherit}.vx-icon{display:block;flex:none}.vx-icon.crisp{image-rendering:pixelated}.toasts{position:absolute;top:calc(var(--top) + 54px * var(--s));left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:calc(6px * var(--s))}.toast{display:flex;align-items:center;gap:calc(6px * var(--s));padding:calc(4px * var(--s)) calc(14px * var(--s));border-radius:999px;background:var(--panel-strong);font-weight:700;font-size:calc(17px * var(--s));white-space:nowrap;transition:opacity .4s,transform .4s;animation:toast-in .18s ease-out}.toast:has(.vx-icon){padding-left:calc(5px * var(--s))}.toast .vx-icon{width:calc(28px * var(--s));height:calc(28px * var(--s))}@keyframes toast-in{0%{opacity:0;transform:translateY(-6px) scale(.92)}}.toast.warn{color:#ffb4a8}.toast.out{opacity:0;transform:translateY(-8px)}@keyframes bump{50%{transform:translate(-50%) scale(1.06)}}.slot{position:relative;flex:none;width:var(--cell);height:var(--cell);border-radius:calc(10px * var(--s));border:2px solid rgba(255,255,255,.15);background:#ffffff14;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;color:#fff;touch-action:manipulation}.slot .vx-icon{width:calc(var(--cell) * .75);height:calc(var(--cell) * .75)}.slot.selected{border-color:var(--gold);background:#ffd84a33;box-shadow:inset 0 -3px #00000026}.slot .n{position:absolute;right:3px;bottom:0;font-size:calc(13px * var(--s));font-weight:700;text-shadow:0 1px 0 var(--ink),1px 0 0 var(--ink),-1px 0 0 var(--ink),0 -1px 0 var(--ink)}.slot .k{position:absolute;left:4px;top:1px;font-size:calc(10px * var(--s));opacity:.7}.crosshair{position:absolute;left:50%;top:50%;width:22px;height:22px;margin:-11px 0 0 -11px;border-radius:50%;background:conic-gradient(var(--gold) calc(var(--p, 0) * 360deg),transparent 0);-webkit-mask:radial-gradient(circle,transparent 7px,#000 8px);mask:radial-gradient(circle,transparent 7px,#000 8px)}.crosshair:after{content:"";position:absolute;left:50%;top:50%;width:4px;height:4px;margin:-2px 0 0 -2px;border-radius:50%;background:#fff;box-shadow:0 0 2px #000}.bubble{position:absolute;left:0;top:0;transform:translate(-50%,-100%);transform-origin:50% 100%}.bubble.prompt{pointer-events:auto;cursor:pointer;display:flex;align-items:center;gap:calc(7px * var(--s));padding:calc(5px * var(--s)) calc(13px * var(--s)) calc(5px * var(--s)) calc(5px * var(--s));border-radius:999px;background:var(--panel-strong);font-weight:700;font-size:calc(18px * var(--s));box-shadow:0 3px 10px #0000004d;margin-top:-6px;white-space:nowrap;touch-action:manipulation}.bubble.prompt .key{display:inline-flex;align-items:center;justify-content:center;width:calc(28px * var(--s));height:calc(28px * var(--s));border-radius:7px;background:#fff;color:#1b2433;font-size:calc(16px * var(--s));box-shadow:inset 0 -3px #0000002e}[data-input=touch] .bubble.prompt{padding:calc(6px * var(--ts)) calc(14px * var(--ts));font-size:calc(18px * var(--ts))}.bubble.prompt.passive{pointer-events:none;padding:calc(5px * var(--s)) calc(12px * var(--s));opacity:.9}.popup-backdrop{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:max(8px,env(safe-area-inset-top,0px)) max(8px,env(safe-area-inset-right,0px)) max(8px,env(safe-area-inset-bottom,0px)) max(8px,env(safe-area-inset-left,0px));background:#0a0e1659;pointer-events:auto}.popup{width:min(560px,100%);max-height:min(calc(100vh - 32px),calc(var(--app-h, 100vh) - 32px));overflow:hidden auto;overscroll-behavior:contain;border-radius:20px;background:#fdf6e7;color:#2a2118;box-shadow:0 6px #00000026,0 12px 40px #00000059;padding:14px 16px 18px;animation:pop .18s ease-out}@keyframes pop{0%{transform:scale(.94);opacity:0}}.popup-head{display:flex;align-items:center;gap:10px;margin-bottom:10px}.popup-title{font-size:24px;font-weight:700;flex:1}.popup-close{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:0;border-radius:12px;background:transparent;cursor:pointer;padding:0;transition:transform .1s}.popup-close:hover .vx-icon,.popup-close:active .vx-icon{transform:scale(1.12)}.popup-close .vx-icon{transition:transform .1s}.popup-body .say{font-size:18px;font-weight:700;margin:2px 0 12px}.popup-body .row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:12px}.popup-body .chip{display:inline-flex;align-items:center;gap:4px;padding:3px 8px 3px 4px;border-radius:10px;background:#0000000f;font-weight:700}:root{--blue-panel: repeating-linear-gradient(135deg, rgba(255, 255, 255, .035) 0 18px, rgba(255, 255, 255, 0) 18px 36px), linear-gradient(180deg, #33449c, #1d2563)}.popup.blue{background:var(--blue-panel);color:#fff;border:4px solid #0f1538;border-radius:22px;box-shadow:inset 0 3px #ffffff1f,0 6px #0f1538,0 12px 40px #00000073;padding:12px 14px 16px}.popup.blue .popup-title{font-family:var(--font-display);font-size:28px;letter-spacing:1px;text-transform:uppercase;-webkit-text-stroke:5px #15122a;paint-order:stroke fill;text-shadow:0 3px 0 #15122a}.popup.blue .popup-body .say{font-family:var(--font-display);font-weight:400;font-size:20px;-webkit-text-stroke:3px #15122a;paint-order:stroke fill}.popup.blue .popup-body .say.dim{opacity:.7;text-align:center;margin:4px 0 0}.popup.blue .popup-body .chip{background:#ffffff24}.tabs{display:flex;gap:8px;margin-bottom:12px}.tab{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:0 10px 2px;border:3px solid #15122a;border-radius:14px;background:#ffffff1f;color:#fff;font-family:var(--font-display);font-size:20px;letter-spacing:1px;-webkit-text-stroke:4px #15122a;paint-order:stroke fill;cursor:pointer;box-shadow:inset 0 -4px #00000040,0 3px #15122a;touch-action:manipulation}.tab.on{background:linear-gradient(180deg,#8af05c,#4cbf2c);box-shadow:inset 0 -4px #2f8a1c,inset 0 3px #ffffff73,0 3px #15122a}.tab .vx-icon{width:28px;height:28px}.game-ui [hidden],#hud [hidden],#touch-controls [hidden]{display:none!important}@keyframes breathe{0%,to{scale:.94}50%{scale:1}}@keyframes ripple{0%{opacity:.9;scale:.9}to{opacity:0;scale:1}}.glow{position:relative;animation:breathe 1.1s ease-in-out infinite}.glow:after{content:"";position:absolute;inset:2px;border:3px solid var(--gold);border-radius:inherit;pointer-events:none;animation:ripple 1.1s ease-out infinite}.bubble.prompt.glow{position:absolute}#touch-controls{position:fixed;inset:0;pointer-events:none;z-index:4;user-select:none;-webkit-user-select:none;font-family:var(--font)}#touch-controls[hidden],.hud-off #touch-controls,.hud-off .action-dock{display:none}#touch-controls .move-zone{position:absolute;left:env(safe-area-inset-left,0px);bottom:env(safe-area-inset-bottom,0px);width:50%;height:55%;pointer-events:auto;touch-action:none}[data-orient=portrait] #touch-controls .move-zone{width:55%;height:45%}#touch-controls .nipple .back{border-radius:28%!important;background:#181e2e6b!important;box-shadow:inset 0 0 0 3px #ffffff59,0 0 0 3px #2b21408c!important;opacity:1!important}#touch-controls .nipple .front{border-radius:26%!important;background:var(--gold)!important;box-shadow:inset 0 calc(4px * var(--ts)) 0 #fff2b0,inset 0 calc(-6px * var(--ts)) 0 #d89a1c,0 0 0 3px var(--ink),0 4px #00000040!important;opacity:1!important}.action-dock{position:absolute;inset:0;pointer-events:none}.touch-btn{position:absolute;display:flex;flex-direction:column;align-items:center;gap:1px;width:calc(84px * var(--ts));padding:2px;border:0;border-radius:30%;background:transparent;color:#fff;cursor:pointer;pointer-events:auto;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.touch-btn .vx-icon{width:calc(58px * var(--ts));height:calc(58px * var(--ts));image-rendering:pixelated;filter:drop-shadow(0 3px 0 rgba(0,0,0,.25));transition:transform .1s ease,filter .1s ease;pointer-events:none}.touch-btn.active .vx-icon,.touch-btn:active .vx-icon,.touch-btn.pressed .vx-icon{transform:scale(1.15);filter:drop-shadow(0 0 10px rgba(255,255,255,.6))}.touch-btn.pressed .vx-icon{animation:tap .18s ease-out}@keyframes tap{50%{transform:scale(1.18)}}.touch-label{font-size:calc(14px * var(--ts));font-weight:700;line-height:1.1;text-transform:uppercase;letter-spacing:.04em;text-shadow:var(--outline);pointer-events:none;white-space:nowrap}.touch-btn.glow:after{inset:0 calc(8px * var(--ts)) calc(16px * var(--ts));border-radius:30%}.touch-jump{right:calc(var(--right) + 4px * var(--ts));bottom:calc(var(--bottom) + var(--dock-lift) + 8px * var(--ts));width:calc(92px * var(--ts))}.touch-jump .vx-icon{width:calc(68px * var(--ts));height:calc(68px * var(--ts))}.touch-use{right:calc(var(--right) + 100px * var(--ts));bottom:calc(var(--bottom) + var(--dock-lift))}.touch-break{right:calc(var(--right) + 8px * var(--ts));bottom:calc(var(--bottom) + var(--dock-lift) + 112px * var(--ts))}.touch-place{right:calc(var(--right) + 100px * var(--ts));bottom:calc(var(--bottom) + var(--dock-lift) + 98px * var(--ts))}.touch-sprint{width:calc(64px * var(--ts))}.touch-sprint .vx-icon{width:calc(44px * var(--ts));height:calc(44px * var(--ts))}.touch-sprint .touch-label{font-size:calc(12px * var(--ts))}.touch-view{top:calc(var(--top) + 46px * var(--s));right:calc(var(--right) - 6px * var(--ts));width:calc(64px * var(--ts))}.touch-view .vx-icon{width:calc(44px * var(--ts));height:calc(44px * var(--ts))}.touch-view .touch-label{font-size:calc(12px * var(--ts))}[data-w=sm] .toasts{top:calc(var(--top) + 146px * var(--s))}[data-h=tiny] .popup,[data-h=short] .popup,[data-w=sm] .popup{padding:10px 12px 12px;border-radius:16px}[data-h=tiny] .popup-head,[data-w=sm] .popup-head{margin-bottom:6px}[data-h=tiny] .popup-title,[data-w=sm] .popup-title{font-size:20px}[data-h=tiny] .popup-body .say{font-size:16px;margin-bottom:8px}[data-h=tiny] .popup{width:min(720px,100%)}@media(prefers-reduced-motion:reduce){.toast,.popup{animation:none}}.fish-bar{position:absolute;left:50%;bottom:calc(var(--bottom) + 84px * var(--s));width:calc(320px * var(--s));max-width:calc(100vw - 2 * var(--edge));height:calc(28px * var(--s));transform:translate(-50%);border-radius:999px;background:var(--panel-strong);box-shadow:0 2px #0003,0 4px 14px #00000040;pointer-events:auto;touch-action:manipulation;overflow:hidden}.fish-bar[hidden]{display:none}.fish-bar .zone{position:absolute;top:0;bottom:0;background:#5cc94a;box-shadow:inset 0 -3px #0000002e}.fish-bar .marker{position:absolute;top:calc(-2px * var(--s));bottom:calc(-2px * var(--s));width:calc(6px * var(--s));margin-left:calc(-3px * var(--s));border-radius:3px;background:#fff;box-shadow:0 0 0 2px var(--gold)}.banner{position:absolute;top:calc(var(--top) + 110px * var(--s));left:50%;display:flex;align-items:center;gap:calc(12px * var(--s));padding:calc(8px * var(--s)) calc(30px * var(--s)) calc(8px * var(--s)) calc(10px * var(--s));border-radius:999px;background:linear-gradient(180deg,#ffe680,#f6b928);color:#3a2a08;box-shadow:0 4px #b07a12,0 10px 30px #f6b92873;transform:translate(-50%);animation:banner-in .45s cubic-bezier(.2,1.6,.4,1);transition:opacity .45s,transform .45s;white-space:nowrap}.banner .vx-icon{width:calc(56px * var(--s));height:calc(56px * var(--s))}.banner .title{font-size:calc(30px * var(--s));font-weight:900;letter-spacing:1px;text-transform:uppercase;line-height:1.05}.banner .sub{font-size:calc(15px * var(--s));font-weight:800;opacity:.8}.banner.out{opacity:0;transform:translate(-50%) translateY(-16px) scale(.96)}.banner .sparks{position:absolute;left:50%;top:50%;pointer-events:none}.banner .sparks span{position:absolute;width:8px;height:8px;margin:-4px;background:#fff3b0;box-shadow:0 0 6px #ffd84a;animation:spark .9s ease-out forwards}.banner .sparks span:nth-child(3n){background:#ffd84a;width:6px;height:6px}@keyframes banner-in{0%{opacity:0;transform:translate(-50%) scale(.6)}}@keyframes spark{0%{transform:translate(0) rotate(0);opacity:1}to{transform:translate(var(--dx),var(--dy)) rotate(180deg);opacity:0}}body:has(.popup-backdrop) .menu-button{visibility:hidden}html[data-w=sm] .popup .tabs .tab{min-width:0;font-size:16px;letter-spacing:0;gap:3px;padding-inline:4px}#boot{--ink: #2b2140;--s: clamp(24px, 6.2vmin, 58px);position:fixed;inset:0;z-index:100;overflow:hidden;background:linear-gradient(180deg,#5a96d8,#a6cbec 52%,#f1dcc0);font-family:Fredoka,Nunito,Arial Rounded MT Bold,Trebuchet MS,system-ui,sans-serif;-webkit-user-select:none;user-select:none;transition:opacity .35s ease-out .3s}#boot.done{opacity:0;pointer-events:none}.boot-sky{position:absolute;inset:0;overflow:hidden;background:linear-gradient(180deg,#4f8ed6,#7fb3e6 30%,#a6cbec 52%,#e4d6c6 66%,#f1dcc0)}.boot-sky:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 60% 40% at 50% 62%,rgba(255,246,220,.5),transparent 70%)}.boot-cloud{position:absolute;left:0;width:0;height:0;opacity:var(--o, 1);animation:boot-drift calc(var(--t) * 1s) linear infinite;animation-delay:calc(var(--t) * var(--d) * -1s)}.boot-cloud .boot-world{--n: 7;top:0}.boot-cloud .vx{visibility:visible}.boot-cloud .vx>.t{background:#fff}.boot-cloud .vx>.fy{background:#e6eefb}.boot-cloud .vx>.fx{background:#c9d8f0}.boot-cloud .vx>i:after{background:none}@keyframes boot-drift{0%{transform:translate(-30vw)}to{transform:translate(115vw)}}.boot-petal{position:absolute;top:-3vh;width:10px;height:10px;background:var(--c);box-shadow:inset -2px -2px #2b214038,0 0 0 1.5px var(--ink);opacity:0;animation:boot-petal-fall calc(var(--t) * 1s) linear infinite;animation-delay:calc(var(--t) * var(--d) * -1s)}@keyframes boot-petal-fall{0%{opacity:0;transform:translateZ(0) rotate3d(1,1,0,0)}8%{opacity:.9}50%{transform:translate3d(5vw,54vh,0) rotate3d(1,1,0,360deg)}92%{opacity:.9}to{opacity:0;transform:translate3d(-2vw,108vh,0) rotate3d(1,1,0,720deg)}}.boot-title{position:absolute;left:0;right:0;top:max(5vh,18px);margin:0;text-align:center;font-size:clamp(38px,9vmin,84px);font-weight:800;letter-spacing:.02em;line-height:1}.boot-logo{display:block;width:min(88vw,760px);height:auto;margin:0 auto;opacity:0}.boot-logo.on{animation:boot-logo-in .7s cubic-bezier(.3,1.5,.5,1) both,boot-logo-float 3.2s ease-in-out .7s infinite}@keyframes boot-logo-in{0%{opacity:0;transform:translateY(-60%) rotate(-6deg) scale(.7)}to{opacity:1;transform:rotate(-2deg)}}@keyframes boot-logo-float{0%,to{opacity:1;transform:rotate(-2deg) translateY(0)}50%{opacity:1;transform:rotate(-1deg) translateY(-6px)}}.boot-title span{display:inline-block;color:var(--c);-webkit-text-stroke:.09em var(--ink);paint-order:stroke fill;text-shadow:0 .09em 0 var(--ink),0 .16em 0 rgba(43,33,64,.25);animation:boot-letter-in .55s cubic-bezier(.3,1.5,.5,1) both,boot-letter-wave 2.6s ease-in-out infinite;animation-delay:calc(var(--i) * 60ms),calc(.8s + var(--i) * .11s)}@keyframes boot-letter-in{0%{transform:translateY(-120%) scale(.6);opacity:0}}@keyframes boot-letter-wave{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-9%)}}.boot-stage{position:absolute;left:50%;top:57%;width:0;height:0}.boot-bob{animation:boot-bob 3.4s ease-in-out infinite}@keyframes boot-bob{50%{transform:translateY(-10px)}}.boot-world{position:absolute;left:calc(var(--n) * var(--s) * -.5);top:calc(var(--n) * var(--s) * -.5);width:calc(var(--n) * var(--s));height:calc(var(--n) * var(--s));transform-style:preserve-3d;transform:rotateX(58deg) rotate(45deg)}.boot-island{--n: 5;animation:boot-sway 9s ease-in-out infinite}@keyframes boot-sway{0%,to{transform:rotateX(58deg) rotate(38deg)}50%{transform:rotateX(58deg) rotate(52deg)}}.vx{position:absolute;left:calc(var(--x) * var(--s));top:calc(var(--y) * var(--s));width:var(--s);height:var(--s);transform-style:preserve-3d;transform:translateZ(calc(var(--z) * var(--s)));visibility:hidden}.vx.on{visibility:visible;animation:vx-drop .5s both}@keyframes vx-drop{0%{transform:translateZ(calc((var(--z) + 4) * var(--s)));animation-timing-function:cubic-bezier(.5,0,1,.6)}62%{transform:translateZ(calc(var(--z) * var(--s)));animation-timing-function:ease-out}78%{transform:translateZ(calc(var(--z) * var(--s))) scale3d(1.1,1.1,.84)}to{transform:translateZ(calc(var(--z) * var(--s)))}}.vx>i{position:absolute;left:0;top:0;width:var(--s);height:var(--s);transform-origin:0 0;background-size:100% 100%;image-rendering:pixelated}.vx>i:after{content:"";position:absolute;inset:0}.vx>.t{transform:translateZ(var(--s))}.vx>.fy{transform:translate3d(0,var(--s),var(--s)) rotateX(-90deg)}.vx>.fx{transform:translate3d(var(--s),var(--s),var(--s)) rotateY(90deg) rotate(-90deg)}.vx>.fy:after{background:#1e183c29}.vx>.fx:after{background:#1e183c57}.vx.leaf>i{background-color:var(--leaf)}.vx.sp>i{transform:translate3d(calc(var(--s) * .5),calc(var(--s) * .5),calc(var(--s) * 2)) rotate(-45deg) translate(calc(var(--s) * -.5)) rotateX(-90deg)}.vx.sp.on{animation:vx-sprout .45s cubic-bezier(.3,1.6,.5,1) both}@keyframes vx-sprout{0%{transform:translateZ(calc(var(--z) * var(--s))) scale3d(.2,.2,.01)}}.boot-pct{position:absolute;left:50%;bottom:max(8vh,56px);width:min(72vw,420px);height:clamp(30px,5.2vmin,44px);transform:translate(-50%)}.boot-bar{position:absolute;inset:0;overflow:hidden;border:3px solid #fff;border-radius:999px;background:#1d2563;box-shadow:0 0 0 3px #15122a,0 6px #15122a,inset 0 4px #0000004d}.boot-fill{position:absolute;left:0;top:0;bottom:0;width:0;border-radius:999px;background:repeating-linear-gradient(135deg,#ffffff2e 0 10px,#fff0 10px 20px),linear-gradient(180deg,#8af05c,#4cbf2c);box-shadow:inset 0 -5px #2f8a1c,inset 0 3px #ffffff73;transition:width .2s ease-out;animation:boot-stripes .8s linear infinite}@keyframes boot-stripes{to{background-position:28px 0,0 0}}.boot-num{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:"Lilita One",var(--font, sans-serif);font-size:clamp(20px,3.6vmin,30px);font-weight:400;font-variant-numeric:tabular-nums;letter-spacing:.04em;color:#fff;-webkit-text-stroke:.2em #15122a;paint-order:stroke fill;text-shadow:0 .1em 0 #15122a}.boot-burst{position:absolute;left:0;top:calc(var(--s) * -1.2)}.boot-burst i{position:absolute;width:14px;height:14px;margin:-7px;background:var(--c);box-shadow:inset -3px -3px #2b214040,0 0 0 2px var(--ink);opacity:0}#boot.done .boot-burst i{animation:boot-petal .7s cubic-bezier(.2,.8,.4,1) both}@keyframes boot-petal{0%{opacity:1;transform:rotate(var(--a)) translate(10px) scale(1.4)}to{opacity:0;transform:rotate(var(--a)) translate(var(--r)) rotate(200deg) scale(.6)}}#boot.done .boot-dive{animation:boot-dive .65s cubic-bezier(.6,0,.9,.5) both}@keyframes boot-dive{to{transform:scale(2.6);opacity:0}}#boot.done .boot-title{animation:boot-title-out .45s ease-in both}@keyframes boot-title-out{to{transform:translateY(-60%);opacity:0}}#boot.done .boot-pct{transition:opacity .25s;opacity:0}@media(min-aspect-ratio:1/1){.boot-stage{top:63%}}@media(max-aspect-ratio:3/4){.boot-pct{bottom:22vh}}@media(max-height:420px){.boot-title{top:6px}.boot-logo{width:min(60vw,330px)}.boot-stage{top:66%}}@media(prefers-reduced-motion:reduce){.boot-cloud,.boot-petal,.boot-bob,.boot-island,.boot-fill,.boot-title span{animation:none!important}.boot-logo.on{animation:none!important;opacity:1}}.boot-retry{position:absolute;left:50%;bottom:12%;transform:translate(-50%);padding:10px 22px;border:2px solid #302844;border-radius:12px;color:#302844;background:#fff5dc;font:inherit;font-weight:800;cursor:pointer}.boot-home{bottom:2%}.main-menu{--side-w: min(42vw, calc(540px * var(--s)));--side-right: max(var(--right), 4vw);--ink: #1d1426;position:fixed;inset:0;z-index:6;font-family:var(--font);color:#fff;user-select:none;-webkit-user-select:none;pointer-events:auto;background:radial-gradient(ellipse 60% 90% at 100% 50%,rgba(40,20,50,.32),transparent 70%),linear-gradient(0deg,rgba(38,22,40,.3),transparent 22%)}.main-menu[hidden]{display:none}.menu-side{position:absolute;top:var(--top);bottom:var(--bottom);right:var(--side-right);width:var(--side-w);display:flex;flex-direction:column;justify-content:center;gap:calc(22px * var(--s))}.menu-logo{display:block;width:100%;height:auto;max-height:calc(110px * var(--s));object-fit:contain;rotate:-3deg;filter:drop-shadow(0 calc(6px * var(--s)) 0 rgba(29,20,38,.55)) drop-shadow(0 calc(10px * var(--s)) calc(18px * var(--s)) rgba(29,20,38,.35));animation:logo-float 4s ease-in-out infinite;pointer-events:none}@keyframes logo-float{50%{translate:0 calc(-6px * var(--s))}}.menu-cards{display:grid;grid-template-columns:1fr 1fr;gap:calc(18px * var(--s));height:clamp(220px,46vh,calc(400px * var(--s)))}.menu-cards[hidden]{display:none}.menu-card{--frame: #fff4de;position:relative;min-width:0;padding:0;overflow:hidden;border:calc(5px * var(--s)) solid var(--frame);border-radius:calc(22px * var(--s));background:#5b4a5e;color:#fff;font:inherit;cursor:pointer;box-shadow:0 calc(7px * var(--s)) 0 var(--ink),0 calc(14px * var(--s)) calc(24px * var(--s)) #1d142673;touch-action:manipulation;transition:transform .14s ease-out,box-shadow .14s}.menu-card:hover{--frame: #ffd84a;transform:translateY(calc(-5px * var(--s))) rotate(-1deg) scale(1.03);box-shadow:0 calc(11px * var(--s)) 0 var(--ink),0 calc(20px * var(--s)) calc(30px * var(--s)) #1d14268c;z-index:1}.menu-card:active{transform:translateY(calc(4px * var(--s))) scale(.99);box-shadow:0 calc(2px * var(--s)) 0 var(--ink)}.menu-card:focus-visible,.menu-customize:focus-visible,.menu-world:focus-visible,.menu-back:focus-visible{outline:3px solid #fff;outline-offset:5px}.card-art{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform .3s ease-out}.menu-card-world .card-art{background-position:42% center}.menu-card-visit .card-art{background-position:55% center}.menu-card:hover .card-art{transform:scale(1.07)}.card-caption{position:absolute;inset:auto 0 0;display:flex;flex-direction:column;align-items:center;gap:calc(12px * var(--s));padding:calc(60px * var(--s)) calc(10px * var(--s)) calc(16px * var(--s));background:linear-gradient(180deg,transparent,rgba(29,20,38,.82) 55%)}.card-name,.card-go,.menu-customize .label,.menu-visit-title,.menu-back,.menu-world-name,.menu-world-chip{font-family:var(--font-display);letter-spacing:.5px;-webkit-text-stroke:calc(5px * var(--s)) var(--ink);paint-order:stroke fill}.card-name{font-size:clamp(22px,2.5vw,calc(36px * var(--s)));line-height:1;text-align:center;-webkit-text-stroke-width:calc(7px * var(--s));text-shadow:0 calc(4px * var(--s)) 0 var(--ink)}.card-go{--top-c: #8af05c;--low-c: #4cbf2c;--edge-c: #2f8a1c;min-width:70%;padding:calc(6px * var(--s)) calc(18px * var(--s)) calc(9px * var(--s));border:calc(3px * var(--s)) solid var(--ink);border-radius:calc(14px * var(--s));background:linear-gradient(180deg,var(--top-c),var(--low-c));font-size:clamp(18px,1.9vw,calc(26px * var(--s)));box-sizing:border-box;text-align:center;box-shadow:inset 0 calc(-5px * var(--s)) 0 var(--edge-c),inset 0 calc(3px * var(--s)) 0 #ffffff73,0 calc(4px * var(--s)) 0 var(--ink)}.menu-card-visit .card-go{--top-c: #7fd0ff;--low-c: #3b8ee0;--edge-c: #24609e}.menu-card:hover .card-go{animation:breathe .9s ease-in-out infinite}.menu-card.hero{--hero-edge: 0 calc(7px * var(--s)) 0 var(--ink);border-color:transparent;background:linear-gradient(#5b4a5e,#5b4a5e) padding-box,linear-gradient(90deg,#ff4040,#ffb347,#5dff5d,#5da9ff,#d37bff,#ff4040) border-box;background-size:auto,300% 100%;animation:hero-border 3s linear infinite,hero-pulse 3s ease-in-out infinite}.menu-card.hero:hover{--hero-edge: 0 calc(11px * var(--s)) 0 var(--ink)}.menu-card.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 38%,rgba(255,214,120,.16) 44%,rgba(255,255,255,.32) 50%,rgba(140,200,255,.16) 56%,transparent 62%);transform:translate(-100%);animation:hero-shimmer 3s ease-in-out infinite;pointer-events:none}@keyframes hero-border{0%{background-position:0 0,0% 50%}to{background-position:0 0,300% 50%}}@keyframes hero-pulse{0%,to{box-shadow:var(--hero-edge),0 0 calc(20px * var(--s)) #ffaa5099,0 0 calc(8px * var(--s)) #ff404059}50%{box-shadow:var(--hero-edge),0 0 calc(28px * var(--s)) #5da9ff99,0 0 calc(12px * var(--s)) #5dff5d66}}@keyframes hero-shimmer{0%{transform:translate(-100%)}60%,to{transform:translate(100%)}}.menu-customize{position:absolute;top:80%;left:calc((100vw - var(--side-w) - var(--side-right)) / 2);translate:-50% 0;display:flex;align-items:center;gap:calc(10px * var(--s));height:calc(60px * var(--s));padding:0 calc(20px * var(--s)) calc(3px * var(--s)) calc(6px * var(--s));border:calc(3px * var(--s)) solid var(--ink);border-radius:calc(18px * var(--s));background:linear-gradient(180deg,#ffb3d6,#e2559a);color:#fff;font-size:calc(24px * var(--s));cursor:pointer;box-shadow:inset 0 calc(-5px * var(--s)) 0 #a83070,inset 0 calc(3px * var(--s)) 0 #ffffff73,0 calc(5px * var(--s)) 0 var(--ink);touch-action:manipulation;transition:transform .12s}.menu-customize:hover{transform:translateY(calc(-2px * var(--s))) rotate(-1deg) scale(1.04)}.menu-customize:active{transform:translateY(calc(3px * var(--s)));box-shadow:inset 0 calc(-2px * var(--s)) 0 #a83070,0 calc(2px * var(--s)) 0 var(--ink)}.menu-customize .thumb{width:calc(44px * var(--s));height:calc(44px * var(--s));border:calc(3px * var(--s)) solid #fff;border-radius:calc(12px * var(--s));background-size:cover;background-position:center}.menu-customize .label{letter-spacing:1px}.main-menu.visiting{--side-w: min(62vw, calc(940px * var(--s)))}.menu-visit{flex:0 1 auto;min-height:0;max-height:64vh;display:flex;flex-direction:column;gap:calc(12px * var(--s));padding:calc(14px * var(--s));border:calc(4px * var(--s)) solid var(--ink);border-radius:calc(24px * var(--s));background:repeating-linear-gradient(135deg,#ffffff09 0 calc(18px * var(--s)),#fff0 calc(18px * var(--s)) calc(36px * var(--s))),linear-gradient(180deg,#33449c,#1d2563);box-shadow:inset 0 calc(4px * var(--s)) 0 #ffffff24,0 calc(7px * var(--s)) 0 var(--ink),0 calc(14px * var(--s)) calc(28px * var(--s)) #0006;box-sizing:border-box}.menu-visit[hidden]{display:none}.menu-visit-head{display:flex;align-items:center;gap:calc(12px * var(--s))}.menu-visit-title{flex:1;font-size:calc(30px * var(--s));text-align:center;margin-right:calc(80px * var(--s));text-shadow:0 calc(3px * var(--s)) 0 var(--ink)}.menu-back{height:calc(44px * var(--s));padding:0 calc(16px * var(--s)) calc(3px * var(--s));border:calc(3px * var(--s)) solid var(--ink);border-radius:calc(14px * var(--s));background:linear-gradient(180deg,#fff4de,#e9cf9f);color:#fff;font-size:calc(19px * var(--s));cursor:pointer;box-shadow:inset 0 calc(-4px * var(--s)) 0 #c9a46a,0 calc(3px * var(--s)) 0 var(--ink);touch-action:manipulation}.menu-back:active{translate:0 calc(2px * var(--s));box-shadow:inset 0 calc(-2px * var(--s)) 0 #c9a46a,0 calc(1px * var(--s)) 0 var(--ink)}.menu-visit-list{flex:1;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;display:grid;grid-template-columns:repeat(auto-fill,minmax(calc(250px * var(--s)),1fr));grid-auto-rows:min-content;gap:calc(10px * var(--s));padding:calc(4px * var(--s)) calc(4px * var(--s)) calc(8px * var(--s));scrollbar-width:thin}.menu-world{display:flex;align-items:center;gap:calc(8px * var(--s));min-width:0;min-height:calc(56px * var(--s));padding:calc(7px * var(--s)) calc(10px * var(--s)) calc(10px * var(--s)) calc(8px * var(--s));border:calc(3px * var(--s)) solid var(--ink);border-radius:calc(16px * var(--s));background:linear-gradient(170deg,#7fc8ff,#2b5fa8);color:#fff;font:inherit;cursor:pointer;box-shadow:inset 0 calc(-5px * var(--s)) 0 #00000038,inset 0 calc(3px * var(--s)) 0 #ffffff4d,0 calc(3px * var(--s)) 0 var(--ink);text-align:left;touch-action:manipulation;transition:transform .1s}.menu-world:hover{transform:translateY(calc(-2px * var(--s))) scale(1.01);background:linear-gradient(170deg,#94d3ff,#3570b8)}.menu-world:active{transform:translateY(calc(2px * var(--s)))}.menu-world-face{flex:none;width:calc(42px * var(--s));height:calc(42px * var(--s));border:calc(3px * var(--s)) solid #fff;border-radius:calc(10px * var(--s));overflow:hidden;background:#2b2140}.menu-world-face canvas,.menu-world-face img{display:block;width:100%;height:100%;image-rendering:pixelated}.menu-world-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:calc(19px * var(--s));text-shadow:0 calc(2px * var(--s)) 0 var(--ink)}.menu-world-chip{flex:none;display:inline-flex;align-items:center;gap:calc(4px * var(--s));height:calc(28px * var(--s));padding:0 calc(8px * var(--s)) 0 calc(3px * var(--s));border-radius:999px;background:#0f153873;font-size:calc(15px * var(--s));-webkit-text-stroke-width:calc(4px * var(--s))}.menu-world-chip.level{background:linear-gradient(180deg,#ffd84a,#e9a21f);box-shadow:inset 0 calc(-3px * var(--s)) 0 #b9741a}.menu-world-chip .vx-icon{width:calc(22px * var(--s));height:calc(22px * var(--s))}.menu-empty{grid-column:1 / -1;padding:calc(18px * var(--s));font-family:var(--font-display);font-size:calc(22px * var(--s));text-align:center;opacity:.85}.menu-button{position:fixed;top:var(--top);right:var(--right);z-index:5;display:flex;align-items:center;gap:calc(6px * var(--s));height:calc(40px * var(--s));padding:0 calc(16px * var(--s)) 0 calc(6px * var(--s));border:0;border-radius:999px;background:var(--panel-strong);color:#fff;font-family:var(--font);font-weight:700;font-size:calc(18px * var(--s));cursor:pointer;box-shadow:0 2px #0003,0 4px 12px #0003;touch-action:manipulation}.menu-button[hidden],.hud-off .menu-button{display:none}.menu-button .vx-icon{width:calc(28px * var(--s));height:calc(28px * var(--s))}.menu-open #hud{z-index:7}.menu-open .game-ui .crosshair,.menu-open .game-ui .toasts,.menu-open .game-ui .action-dock,.menu-open .game-ui .bubble{display:none}[data-h=short] .menu-side,[data-h=tiny] .menu-side{gap:calc(12px * var(--s))}[data-h=short] .menu-logo,[data-h=tiny] .menu-logo{max-height:calc(70px * var(--s))}[data-h=short] .menu-cards,[data-h=tiny] .menu-cards{height:52vh}[data-h=tiny] .card-caption{gap:calc(6px * var(--s));padding:calc(36px * var(--s)) calc(8px * var(--s)) calc(10px * var(--s))}[data-h=tiny] .menu-customize{top:82%;height:calc(48px * var(--s))}[data-h=short] .menu-visit,[data-h=tiny] .menu-visit{max-height:72vh}[data-orient=portrait] .main-menu,[data-orient=portrait] .main-menu.visiting{--side-w: auto;background:linear-gradient(0deg,rgba(38,22,40,.4),transparent 45%)}[data-orient=portrait] .menu-side{top:var(--top);bottom:var(--bottom);left:var(--left);right:var(--right);width:auto;justify-content:space-between;gap:calc(10px * var(--s))}[data-orient=portrait] .menu-logo{margin-top:calc(100px * var(--s));max-height:calc(64px * var(--s))}[data-orient=portrait] .menu-cards{height:30vh;min-height:170px;max-height:320px;gap:calc(14px * var(--s))}[data-orient=portrait] .menu-customize{top:57%;left:50%}[data-orient=portrait] .visiting .menu-logo,[data-orient=portrait] .visiting .menu-customize{display:none}[data-orient=portrait] .menu-visit{margin-top:auto;max-height:62vh}[data-orient=portrait] .menu-visit-list{grid-template-columns:repeat(auto-fill,minmax(calc(140px * var(--s)),1fr))}[data-orient=portrait] .menu-world{flex-wrap:wrap;justify-content:center;row-gap:calc(5px * var(--s));padding:calc(10px * var(--s)) calc(6px * var(--s)) calc(12px * var(--s))}[data-orient=portrait] .menu-world-name{flex:1 0 100%;text-align:center}@media(prefers-reduced-motion:reduce){.menu-logo,.menu-card.hero,.menu-card.hero:after,.menu-card:hover .card-go{animation:none}.menu-card,.card-art,.menu-customize,.menu-world{transition:none}}.style-room{position:fixed;inset:0;z-index:7;font-family:var(--font);color:#fff;user-select:none;-webkit-user-select:none;--sw: calc(48px * var(--s));--panel-w: min(48vw, calc(600px * var(--s)))}.style-room[hidden]{display:none}.style-open #hud,.style-open .game-ui,.style-open .main-menu,.style-open .menu-button{display:none!important}.style-stage{position:absolute;inset:0;touch-action:none;cursor:grab}.style-stage:active{cursor:grabbing}.style-panel{position:absolute;top:0;right:0;bottom:0;width:var(--panel-w);display:flex;flex-direction:column;justify-content:center;gap:calc(14px * var(--s));padding:var(--top) var(--right) var(--bottom) calc(28px * var(--s));background:linear-gradient(100deg,#172a2800 0,#172a28cc calc(28px * var(--s)),#14222ce6)}.style-rows{display:flex;flex-direction:column;gap:calc(10px * var(--s));min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none;padding:6px;margin:-6px}.style-rows::-webkit-scrollbar{display:none}.style-row{display:grid;grid-template-columns:calc(84px * var(--s)) minmax(0,1fr);align-items:center;gap:calc(14px * var(--s))}.style-label{font-size:calc(18px * var(--s));font-weight:700;text-shadow:var(--outline);letter-spacing:.3px}.style-options{display:flex;gap:calc(8px * var(--s))}.style-option{position:relative;flex:0 1 var(--sw);width:var(--sw);min-width:0;aspect-ratio:1;padding:0;border:0;border-radius:calc(10px * var(--s));cursor:pointer;touch-action:manipulation;transition:transform .08s;font:inherit;color:inherit}.style-option:active{transform:translateY(2px)}.style-option.on{transform:scale(1.06);z-index:1}.style-option.on:after{content:"";position:absolute;inset:calc(-4px * var(--s));border:calc(3px * var(--s)) solid #fff;border-radius:calc(13px * var(--s));box-shadow:0 0 0 2px #00000059;pointer-events:none}.style-swatch{background:var(--c1);box-shadow:inset calc(4px * var(--s)) calc(4px * var(--s)) 0 var(--c2),inset calc(-4px * var(--s)) calc(-4px * var(--s)) 0 var(--c0),0 3px #0000004d}.style-row-body .style-options{display:grid;grid-auto-flow:column;grid-template-rows:repeat(2,auto);grid-template-columns:repeat(6,minmax(0,auto));justify-content:start}.style-body,.style-face{background:#ffffff29;box-shadow:inset 0 -4px #0000002e,0 3px #00000040}.style-body.on,.style-face.on{background:#ffffff57}.style-row-body .style-option,.style-row-face .style-option{flex-basis:calc(var(--sw) * 1.25);width:calc(var(--sw) * 1.25)}.style-body .vx-icon{width:92%;height:92%;margin:4%;filter:drop-shadow(0 3px 0 rgba(0,0,0,.25))}.style-face-art{display:block;width:66%;height:66%;margin:17%;image-rendering:pixelated;border-radius:3px;box-shadow:0 0 0 2px #2b2140d9,0 3px 0 2px #00000040}.style-foot{position:absolute;left:var(--left);right:var(--panel-w);bottom:var(--bottom);display:flex;align-items:center;justify-content:center;gap:calc(12px * var(--s))}.style-dice,.style-done{display:inline-flex;align-items:center;justify-content:center;height:max(44px,calc(58px * var(--s)));border:0;border-radius:calc(14px * var(--s));color:#fff;font:inherit;font-weight:700;cursor:pointer;touch-action:manipulation;box-shadow:inset 0 -5px #00000038,0 4px 12px #00000040}.style-dice:active,.style-done:active{transform:translateY(2px);box-shadow:inset 0 -2px #00000038}.style-dice{width:max(44px,calc(58px * var(--s)));background:linear-gradient(170deg,#b58cff,#6d4fd0);padding:0}.style-dice .vx-icon{width:76%;height:76%}.style-done{gap:calc(6px * var(--s));padding:0 calc(26px * var(--s)) 0 calc(12px * var(--s));background:linear-gradient(170deg,#7be06a,#2f8a3a);font-size:calc(26px * var(--s));text-shadow:0 2px 0 rgba(0,0,0,.25);min-width:calc(170px * var(--s))}.style-done .vx-icon{width:calc(42px * var(--s));height:calc(42px * var(--s));min-width:30px;min-height:30px}[data-orient=landscape][data-w=lg] .style-room{--panel-w: 50vw}[data-orient=landscape][data-w=md] .style-room,[data-orient=landscape][data-w=sm] .style-room{--panel-w: 56vw}[data-orient=landscape][data-h=short] .style-room{--sw: max(40px, calc(48px * var(--s)))}[data-orient=landscape][data-h=tiny] .style-room{--sw: 40px}[data-orient=landscape][data-h=tiny] .style-panel{gap:8px;padding-top:max(8px,env(safe-area-inset-top,0px));padding-bottom:max(8px,env(safe-area-inset-bottom,0px))}[data-orient=landscape][data-h=tiny] .style-rows{gap:6px}[data-orient=landscape][data-h=tiny] .style-row-body .style-option,[data-orient=landscape][data-h=tiny] .style-row-face .style-option{flex-basis:40px;width:40px}[data-orient=landscape][data-h=tiny] .style-row{grid-template-columns:56px minmax(0,1fr);gap:10px}[data-orient=landscape][data-h=tiny] .style-label{font-size:14px}[data-orient=landscape][data-h=tiny] .style-dice,[data-orient=landscape][data-h=tiny] .style-done{height:44px}[data-orient=landscape][data-h=tiny] .style-dice{width:44px}[data-orient=portrait] .style-panel{top:auto;left:0;width:auto;max-height:66%;justify-content:flex-start;gap:calc(12px * var(--s));padding:calc(18px * var(--s)) var(--right) var(--bottom) var(--left);background:linear-gradient(180deg,#172a2800 0,#172a28d6 calc(18px * var(--s)),#14222cf0)}[data-orient=portrait] .style-room{--gap: calc(8px * var(--s))}[data-orient=portrait][data-w=sm] .style-room{--gap: 6px}[data-orient=portrait] .style-rows{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:calc(8px * var(--s)) var(--gap)}[data-orient=portrait] .style-row{grid-column:1 / -1;grid-template-columns:minmax(0,1fr);gap:9px}[data-orient=portrait] .style-row-body .style-options{grid-template-columns:repeat(6,minmax(0,1fr))}[data-orient=portrait] .style-options{gap:var(--gap)}[data-orient=portrait] .style-rows,[data-orient=portrait] .style-foot{width:100%;max-width:calc(8 * var(--sw) + 7 * var(--gap) + 12px);margin-left:auto;margin-right:auto}[data-orient=portrait] .style-row-body .style-option,[data-orient=portrait] .style-row-face .style-option{flex-basis:var(--sw);width:var(--sw)}[data-orient=portrait] .style-row-body .style-option{width:100%;max-width:calc(var(--sw) * 1.25);justify-self:center}[data-orient=portrait] .style-label{font-size:max(13px,calc(15px * var(--s)));line-height:1;padding-left:2px}[data-orient=portrait] .style-room{--sw: min(calc(56px * var(--s)), calc((100vw - 2 * var(--edge) - 12px - 7 * 8px * var(--s)) / 8))}[data-orient=portrait] .style-foot{left:var(--left);right:var(--right);justify-content:stretch}[data-orient=portrait] .style-panel{padding-bottom:calc(var(--bottom) + max(44px,58px * var(--s)) + 12px * var(--s))}[data-orient=portrait] .style-done{flex:1}[data-orient=portrait][data-w=sm] .style-room{--sw: max(36px, calc((100vw - 2 * var(--edge) - 12px - 7 * 6px) / 8))}.look-hint{position:fixed;top:74%;left:50%;box-sizing:border-box;width:calc(184px * var(--s, 1));height:calc(112px * var(--s, 1));padding:calc(7px * var(--s, 1)) calc(11px * var(--s, 1));border-radius:calc(14px * var(--s, 1));background:#00000061;color:#ffd166;opacity:.7;transform:translate(-50%,-50%);pointer-events:none;z-index:30;animation:look-hint-in .22s ease-out both}.look-hint[hidden]{display:none}body.touch .look-hint{top:42%;left:66%;width:calc(148px * var(--ts, 1));height:calc(92px * var(--ts, 1));padding:calc(6px * var(--ts, 1)) calc(8px * var(--ts, 1));transform:translate(-50%,-50%);animation-name:look-hint-in-touch}.look-hint-gesture{position:relative;width:100%;height:100%}.look-hint-infinity{width:100%;height:100%;overflow:visible}.look-hint-track{stroke-dasharray:12 10;animation:look-hint-dash 1.2s linear infinite}.look-hint-pointer{--x1: calc(16px * var(--s, 1));--x2: calc(34px * var(--s, 1));--x3: calc(49px * var(--s, 1));--x4: calc(56px * var(--s, 1));--y1: calc(17px * var(--s, 1));--y2: calc(23px * var(--s, 1));position:absolute;top:50%;left:50%;width:calc(28px * var(--s, 1));height:calc(38px * var(--s, 1));transform:translate(-50%,-50%);will-change:transform;animation:look-hint-eight 3.2s linear infinite}.look-hint-mouse,.look-hint-hand{width:100%;height:100%;overflow:visible}.look-hint-hand,body.touch .look-hint-mouse{display:none}body.touch .look-hint-hand{display:block}body.touch .look-hint-pointer{--x1: calc(13px * var(--ts, 1));--x2: calc(27px * var(--ts, 1));--x3: calc(40px * var(--ts, 1));--x4: calc(45px * var(--ts, 1));--y1: calc(14px * var(--ts, 1));--y2: calc(19px * var(--ts, 1));width:calc(34px * var(--ts, 1));height:calc(40px * var(--ts, 1))}.look-hint-touch-ring{fill:none;stroke:#ffd166;stroke-width:3;transform-origin:23px 8px;animation:look-hint-tap .8s ease-in-out infinite}@keyframes look-hint-in{0%{opacity:0;transform:translate(-50%,calc(-50% - 8px))}to{opacity:.7;transform:translate(-50%,-50%)}}@keyframes look-hint-in-touch{0%{opacity:0;transform:translate(calc(-50% + 8px),-50%)}to{opacity:.7;transform:translate(-50%,-50%)}}@keyframes look-hint-dash{to{stroke-dashoffset:-22}}@keyframes look-hint-tap{0%,to{opacity:.55;transform:scale(.84)}50%{opacity:1;transform:scale(1.12)}}@keyframes look-hint-eight{0%,to{transform:translate(-50%,-50%)}6.25%{transform:translate(calc(-50% - var(--x1)),calc(-50% - var(--y1)))}12.5%{transform:translate(calc(-50% - var(--x2)),calc(-50% - var(--y2)))}18.75%{transform:translate(calc(-50% - var(--x3)),calc(-50% - var(--y1)))}25%{transform:translate(calc(-50% - var(--x4)),-50%)}31.25%{transform:translate(calc(-50% - var(--x3)),calc(-50% + var(--y1)))}37.5%{transform:translate(calc(-50% - var(--x2)),calc(-50% + var(--y2)))}43.75%{transform:translate(calc(-50% - var(--x1)),calc(-50% + var(--y1)))}56.25%{transform:translate(calc(-50% + var(--x1)),calc(-50% - var(--y1)))}62.5%{transform:translate(calc(-50% + var(--x2)),calc(-50% - var(--y2)))}68.75%{transform:translate(calc(-50% + var(--x3)),calc(-50% - var(--y1)))}75%{transform:translate(calc(-50% + var(--x4)),-50%)}81.25%{transform:translate(calc(-50% + var(--x3)),calc(-50% + var(--y1)))}87.5%{transform:translate(calc(-50% + var(--x2)),calc(-50% + var(--y2)))}93.75%{transform:translate(calc(-50% + var(--x1)),calc(-50% + var(--y1)))}}
