*{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}.name-badge .wallet{position:relative;display:flex;align-items:center;gap:calc(4px * var(--s));padding-left:calc(8px * var(--s));border-left:1px solid rgba(255,255,255,.22);font-variant-numeric:tabular-nums}.name-badge .wallet[hidden]{display:none}.name-badge .wallet .vx-icon{width:calc(24px * var(--s));height:calc(24px * var(--s));image-rendering:pixelated}.name-badge .wallet-pop{position:absolute;left:calc(30px * var(--s));top:0;color:#ffd84a;font-weight:800;text-shadow:var(--outline);pointer-events:none;animation:wallet-pop 1.2s ease-out forwards}@keyframes wallet-pop{0%{transform:translateY(0);opacity:0}15%{opacity:1}to{transform:translateY(calc(34px * var(--s)));opacity:0}}.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}.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);color:#fff;font:calc(18px * var(--s)) / 1.1 var(--font-display);-webkit-text-stroke:3px #15122a;paint-order:stroke fill;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(30px * var(--s));height:calc(30px * var(--s));border-radius:7px;background:#fff;color:#1b2433;-webkit-text-stroke:0;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:.85}.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;flex:none;align-items:center;gap:10px;margin-bottom:10px}.popup-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:24px;font-weight:700;flex:1}.popup-close{display:flex;flex:none;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}html[data-w=sm] .popup.blue .popup-title{font-size:20px;letter-spacing:0;-webkit-text-stroke-width:3px}html[data-w=sm] .popup-head{gap:6px}[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}.popup:has(.pt-scroll){width:min(620px,100%);display:flex;flex-direction:column;overflow:hidden}.pt-scroll{min-height:0;max-height:min(70vh,620px);overflow:hidden auto;padding:8px;overscroll-behavior:contain}.pt-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.pt-grid.small{grid-template-columns:repeat(5,minmax(0,1fr));margin-top:8px}.pt-cell{position:relative;display:flex;min-width:0}.pt-cell>.pt-tile{width:100%}.pt-tile{min-width:0;display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 8px 6px;border:3px solid rgba(255,255,255,.18);border-radius:14px;background:#ffffff1a;color:#fff;font:inherit;text-align:center;transition:background .12s,scale .12s}button.pt-tile{cursor:pointer;touch-action:manipulation}button.pt-tile:hover:not(:disabled):not([aria-disabled=true]){background:#ffffff2e;scale:1.03}button.pt-tile:active:not(:disabled){translate:0 2px}.pt-tile:disabled{opacity:.55;cursor:default}.pt-tile.on{filter:drop-shadow(0 0 6px rgba(138,240,92,.5))}.pt-tile.on:not([data-rarity=mythic]){box-shadow:0 0 12px #8af05c80}.pt-tile>.vx-icon{width:64px;height:64px;image-rendering:pixelated}.pt-grid.small .pt-tile>.vx-icon{width:44px;height:44px}.pt-name{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:16px var(--font-display);color:#fff;-webkit-text-stroke:3px #15122a;paint-order:stroke fill}.pt-act{flex:none;width:100%;min-height:34px;margin-top:auto;display:flex;align-items:center;justify-content:center;gap:4px;border:3px solid #15122a;border-radius:10px;box-shadow:0 3px #15122a;font:15px var(--font-display);text-transform:uppercase;letter-spacing:.6px;color:#fff;-webkit-text-stroke:3px #15122a;paint-order:stroke fill;pointer-events:none;white-space:nowrap}.touch .pt-act{min-height:38px}.pt-act.buy,.pt-act.on{background:linear-gradient(180deg,#8af05c,#4cbf2c)}.pt-act.poor,.pt-act.owned,.pt-act.full{background:#6b7084}.pt-act.off{background:transparent;border-color:#ffffff80;box-shadow:none}.pt-act.go{background:linear-gradient(180deg,#4aa3ff,#2f6fd6)}.pt-head{display:flex;gap:8px;align-items:center;margin:12px 0 6px;font:18px var(--font-display);text-transform:uppercase;letter-spacing:1px;color:#fff;-webkit-text-stroke:3px #15122a;paint-order:stroke fill}.pt-count{padding:1px 10px;border-radius:999px;background:#ffffff29;font:15px var(--font-display)}.pt-empty{grid-column:1 / -1;padding:24px;text-align:center;opacity:.7;font:18px var(--font-display)}.pt-row{display:flex;gap:8px}.pt-row .tab{flex:none;min-height:40px;font-size:17px}.pt-row .tab .vx-icon{width:24px;height:24px}.pt-x{pointer-events:auto;position:absolute;z-index:1;top:-8px;right:-8px;display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:2px solid #15122a;border-radius:999px;background:#fff;box-shadow:0 2px #15122a;cursor:pointer;touch-action:manipulation}.pt-x.armed{width:auto;padding:0 10px;background:#ec4f5c;color:#fff;font:15px var(--font-display)}.pt-tile.secret{cursor:default;background:#5ef0d824;border-style:dashed}.pt-tile.secret>.vx-icon{filter:brightness(0) opacity(.5)}.pt-tile.secret.rar-frame.rar-frame[data-rarity]{border-style:dashed}.pt-tile.wide{grid-column:1 / -1;flex-direction:row;gap:12px}.pt-tile.wide>.vx-icon{flex:none;width:56px;height:56px}.pt-tile.wide .pt-name{flex:1;text-align:left}.pt-tile.wide .pt-act{width:auto;min-width:76px;padding-inline:8px;margin-top:0}.pt-friends{display:flex;flex-wrap:wrap;gap:6px}.pt-chip{min-height:38px;padding:4px 12px;border:3px solid rgba(255,255,255,.5);border-radius:999px;background:transparent;color:#fff;font:15px var(--font-display);-webkit-text-stroke:3px #15122a;paint-order:stroke fill;cursor:pointer}.pt-chip.on{box-shadow:0 0 12px #8af05c80}.pt-deal{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:8px}.pt-side{display:flex;flex-direction:column;align-items:center;min-width:0;flex:1;padding:6px;border:3px solid rgba(255,255,255,.18);border-radius:12px;background:#ffffff1a}.pt-side.ok{background:#8af05c40}.pt-q{display:grid;place-items:center;width:72px;height:72px;font:40px var(--font-display);opacity:.4}.pt-buttons{display:flex;justify-content:center;gap:10px;margin-top:10px}.pt-ok,.pt-cancel{min-width:96px;height:44px;border:3px solid #15122a;border-radius:12px;color:#fff;font:18px var(--font-display);-webkit-text-stroke:3px #15122a;paint-order:stroke fill;box-shadow:0 3px #15122a;cursor:pointer}.pt-ok{background:#4fb84a}.pt-ok:disabled{opacity:.45;cursor:default}.pt-cancel{background:#ec4f5c}html[data-w=sm] .pt-grid{grid-template-columns:repeat(2,minmax(0,1fr))}html[data-w=sm] .pt-grid.small{grid-template-columns:repeat(3,minmax(0,1fr))}@media(prefers-reduced-motion:reduce){.pt-tile{transition:none}}#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,#1b4fc2,#2f78e0,#5aaaf0 44%,#8fd0f2 58%,#c9ecf2 70%,#f7e4c3 86%,#ffd9a6)}.boot-sky:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 72% 22%,rgba(255,252,230,1) 0 2.2vmin,rgba(255,244,200,.9) 2.8vmin,rgba(255,236,170,.45) 7vmin,rgba(255,230,160,.16) 16vmin,transparent 30vmin),radial-gradient(ellipse 90% 22% at 50% 92%,rgba(255,255,255,.55),transparent 70%)}.boot-cloud{position:absolute;left:0;width:0;height:0;opacity:var(--o, 1);will-change:transform;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:var(--cloud-t, #fff)}.boot-cloud .vx>.fy{background:var(--cloud-fy, #ece6f3)}.boot-cloud .vx>.fx{background:var(--cloud-fx, #cfc4df)}.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.autumn,#boot.autumn .boot-sky{background:linear-gradient(180deg,#3f3a86,#6d4f98 30%,#b874a8 56%,#e9a2a2 74%,#ffc59a)}#boot.autumn .boot-sky:after{background:radial-gradient(circle at 24% 80%,rgba(255,237,189,1) 0 2.6vmin,rgba(255,220,160,.95) 3vmin,rgba(255,200,130,.5) 7vmin,rgba(255,171,107,.22) 16vmin,transparent 34vmin),radial-gradient(ellipse 80% 30% at 50% 100%,rgba(255,197,154,.7),transparent 70%)}#boot.autumn .boot-stars{position:absolute;inset:0;background-image:radial-gradient(rgba(255,243,220,.9) 1px,transparent 1.5px),radial-gradient(rgba(255,243,220,.6) 1px,transparent 1.5px);background-size:220px 140px,170px 110px;background-position:30px 10px,90px 40px;mask-image:linear-gradient(180deg,#000 0%,transparent 42%);-webkit-mask-image:linear-gradient(180deg,#000 0%,transparent 42%)}#boot.autumn .boot-cloud{--cloud-t: #ffe9e0;--cloud-fy: #f2cdd6;--cloud-fx: #c6a3cf}.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{will-change:transform;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;will-change:transform;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:after{background:var(--lit-top, rgba(255, 224, 176, .2))}.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:var(--lit-fy, rgba(111, 92, 134, .26))}.vx>.fx:after{background:var(--lit-fx, rgba(63, 58, 134, .46))}.vx.leaf>i{background-color:var(--leaf)}.vx.sp.ch>i{--cw: calc(var(--s) * 3.5);--chh: calc(var(--s) * 4.2);width:var(--cw);height:var(--chh);transform:translate3d(calc(var(--s) * .5),calc(var(--s) * .5),calc(var(--s) * 1.03 + var(--chh))) rotate(-45deg) translate(calc(var(--cw) * -.5)) rotateX(-90deg)}.vx.sp.ch>i:after{background:none}.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-mode{position:absolute;left:50%;bottom:calc(max(8vh,56px) + clamp(30px,5.2vmin,44px) + 22px);transform:translate(-50%);font:clamp(40px,8vmin,76px) var(--font-display, "Fredoka", system-ui, sans-serif);letter-spacing:2px;text-transform:uppercase;color:#ffd84a;-webkit-text-stroke:8px #15122a;paint-order:stroke fill;text-shadow:0 6px 0 #15122a,0 0 28px rgba(255,216,74,.45);pointer-events:none;white-space:nowrap;animation:boot-mode-in .5s cubic-bezier(.2,1.4,.4,1),boot-mode-breathe 1.6s ease-in-out .5s infinite}@keyframes boot-mode-in{0%{opacity:0;transform:translate(-50%) scale(.6)}}@keyframes boot-mode-breathe{0%,to{transform:translate(-50%) scale(1)}50%{transform:translate(-50%) scale(1.04)}}#boot.done .boot-mode{transition:opacity .25s;opacity:0}.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(64vw, calc(1060px * 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-modes{display:flex;flex-direction:column;gap:calc(12px * var(--s));min-height:0}.menu-modes[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:not(:disabled):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:not(:disabled):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-action: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:not(:disabled):hover .card-art{transform:scale(1.07)}.menu-card.soon{cursor:default}.soon .card-art{filter:grayscale(1) contrast(1.05) brightness(1.02)}.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,.card-soon,.menu-action,.menu-customize .label{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:not(:disabled):hover .card-go{animation:breathe .9s ease-in-out infinite}.card-soon{padding:calc(3px * var(--s)) calc(12px * var(--s)) calc(5px * var(--s));border-radius:999px;background:#1d1426b8;font-size:calc(17px * var(--s));-webkit-text-stroke-width:calc(4px * var(--s));color:#ffe9a8}.menu-card>.card-soon{position:absolute;top:calc(7px * var(--s));left:calc(7px * var(--s));padding:calc(2px * var(--s)) calc(8px * var(--s)) calc(4px * var(--s));font-size:calc(13px * var(--s));-webkit-text-stroke-width:calc(3px * var(--s))}.menu-card.menu-next{animation:breathe 1.2s ease-in-out infinite}.card-ring{position:absolute;inset:2px;display:none;border:calc(3px * var(--s)) solid var(--gold);border-radius:calc(16px * var(--s));pointer-events:none}.menu-next .card-ring{display:block;animation:ripple 1.2s ease-out infinite}.menu-modes{position:relative}.menu-modes .menu-action{align-self:auto}.menu-action,.menu-town{margin:0 auto}.menu-island{white-space:nowrap}.menu-buttons{display:flex;justify-content:center;gap:calc(12px * var(--s))}.menu-action{align-self:center;display:flex;align-items:center;gap:calc(6px * var(--s));height:calc(46px * var(--s));padding:0 calc(18px * var(--s)) calc(3px * var(--s)) calc(8px * var(--s));border:calc(3px * var(--s)) solid var(--ink);border-radius:calc(14px * var(--s));background:linear-gradient(180deg,#7fd0ff,#3b8ee0);color:#fff;font-size:calc(21px * var(--s));-webkit-text-stroke-width:calc(4px * var(--s));cursor:pointer;box-shadow:inset 0 calc(-4px * var(--s)) 0 #24609e,inset 0 calc(3px * var(--s)) 0 #ffffff73,0 calc(4px * var(--s)) 0 var(--ink);touch-action:manipulation;transition:transform .12s}.menu-action .vx-icon{width:calc(32px * var(--s));height:calc(32px * var(--s))}.menu-action:hover{transform:translateY(calc(-2px * var(--s))) scale(1.04)}.menu-action:active{transform:translateY(calc(3px * var(--s)));box-shadow:inset 0 calc(-2px * var(--s)) 0 #24609e,0 calc(1px * var(--s)) 0 var(--ink)}.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.menu-next{animation:hero-border 3s linear infinite,hero-pulse 3s ease-in-out infinite,breathe 1.2s 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}.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,.menu-open .game-ui .sv-hotbar,.menu-open .game-ui .sv-vitals,.menu-open .adv-ui,.menu-open .guide-ui,.menu-open .creative .cr-tools,.menu-open .dbg-button{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-action,[data-h=tiny] .menu-action{height:calc(38px * var(--s))}[data-h=tiny] .menu-logo{max-height:calc(54px * var(--s))}[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-orient=portrait] .main-menu,[data-orient=portrait] .main-menu.visiting{--side-w: auto;--cards-h: clamp(200px, 30vh, 320px);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-modes{gap:calc(10px * var(--s))}[data-orient=portrait] .menu-action{height:calc(40px * var(--s))}[data-orient=portrait] .card-caption{gap:calc(8px * var(--s));padding:calc(40px * var(--s)) calc(8px * var(--s)) calc(10px * var(--s))}[data-orient=portrait] .menu-customize{top:auto;bottom:calc(var(--bottom) + var(--cards-h) + 70px * var(--s));left:50%}[data-orient=portrait] .visiting .menu-logo,[data-orient=portrait] .visiting .menu-customize{display:none}@media(prefers-reduced-motion:reduce){.menu-logo,.menu-card.hero,.menu-card.hero:after,.menu-card:hover .card-go,.menu-card.menu-next,.menu-card.hero.menu-next,.menu-next .card-ring{animation:none}.menu-card,.card-art,.menu-customize,.menu-world{transition:none}}.menu-cards{--gap: calc(14px * var(--s));--pad: calc(16px * var(--s));--cards: 4;--card-w: min(calc((100% - 12px * var(--s) - (var(--cards) - 1) * var(--gap)) / var(--cards)), 46.2vh );display:flex;flex-wrap:nowrap;gap:var(--gap);height:auto;margin:calc(-1 * var(--pad)) calc(-6px * var(--s));padding:var(--pad) calc(6px * var(--s)) calc(var(--pad) + 8px * var(--s));overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scroll-padding:0 calc(6px * var(--s));scrollbar-width:none;touch-action:pan-x}.menu-cards::-webkit-scrollbar{display:none}.menu-card{flex:0 0 var(--card-w);aspect-ratio:2 / 3;scroll-snap-align:start}.card-art[data-mode]{--mode-c: #5b4a5e;background-color:var(--mode-c);background-repeat:no-repeat;background-size:cover;background-position:center 30%}.card-art[data-mode]:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.22),transparent 32%)}.card-art[data-mode=adventure]{--mode-c: #e9a825}.card-art[data-mode=creative]{--mode-c: #3f9cf0}.card-art[data-mode=demolition]{--mode-c: #f0603c}.card-art[data-mode=survival]{--mode-c: #4dae4a}.card-art[data-mode=arena]{--mode-c: #a463f2}.card-caption{gap:calc(8px * var(--s));padding:calc(48px * var(--s)) calc(6px * var(--s)) calc(12px * var(--s));background:linear-gradient(180deg,transparent,rgba(29,20,38,.62) 55%)}.card-name{font-size:clamp(16px,2vw,calc(32px * var(--s)));line-height:.95;white-space:normal;text-align:center;-webkit-text-stroke-width:calc(5px * var(--s));text-shadow:0 calc(3px * var(--s)) 0 var(--ink)}.menu-card-adventure .card-name{color:#ffe566}.menu-card-creative .card-name{color:#7fd8ff}.menu-card-demolition .card-name{color:#ffb347}.menu-card-survival .card-name{color:#9cf06a}.menu-card-arena .card-name{color:#d7a8ff}.card-go{min-width:60%;padding:calc(5px * var(--s)) calc(14px * var(--s)) calc(7px * var(--s));font-size:clamp(15px,1.6vw,calc(22px * var(--s)))}[data-orient=portrait] .menu-card{border-width:calc(3px * var(--s));border-radius:calc(14px * var(--s))}[data-orient=portrait] .card-caption{gap:calc(5px * var(--s));padding:calc(30px * var(--s)) calc(4px * var(--s)) calc(7px * var(--s))}[data-orient=portrait] .card-name{font-size:calc(18px * var(--s));-webkit-text-stroke-width:calc(3.5px * var(--s));text-shadow:0 calc(2px * var(--s)) 0 var(--ink)}[data-orient=portrait] .card-go{font-size:calc(16px * var(--s));padding:calc(3px * var(--s)) calc(8px * var(--s)) calc(5px * var(--s));-webkit-text-stroke-width:calc(3px * var(--s))}[data-orient=portrait] .menu-card>.card-soon{font-size:calc(10px * var(--s));-webkit-text-stroke-width:calc(2.5px * var(--s))}.menu-card>.card-soon{top:calc(10px * var(--s));left:calc(-4px * var(--s));padding:calc(3px * var(--s)) calc(12px * var(--s)) calc(5px * var(--s)) calc(14px * var(--s));border:calc(3px * var(--s)) solid var(--ink);border-radius:0 999px 999px 0;background:linear-gradient(180deg,#ffe66a,#ffb400);color:#fff;font-size:calc(17px * var(--s));letter-spacing:1px;-webkit-text-stroke-width:calc(4px * var(--s));text-shadow:0 calc(2px * var(--s)) 0 var(--ink);box-shadow:0 calc(3px * var(--s)) 0 var(--ink);rotate:-4deg}[data-orient=portrait] .menu-card>.card-soon{font-size:calc(12px * var(--s));padding:calc(2px * var(--s)) calc(8px * var(--s)) calc(3px * var(--s)) calc(10px * var(--s));-webkit-text-stroke-width:calc(3px * var(--s))}.menu-action.menu-town{background:linear-gradient(180deg,#ffe66a,#f0a81c);box-shadow:inset 0 calc(-4px * var(--s)) 0 #b2700e,inset 0 calc(3px * var(--s)) 0 #ffffff73,0 calc(4px * var(--s)) 0 var(--ink)}.menu-buttons{gap:calc(18px * var(--s))}[data-h=short] .menu-cards,[data-h=tiny] .menu-cards{--gap: calc(10px * var(--s));--card-w: min(calc((100% - 12px * var(--s) - 3 * var(--gap)) / 4), 40.92vh )}[data-orient=portrait] .menu-cards{--gap: calc(10px * var(--s));--pad: calc(12px * var(--s));--card-w: calc(var(--cards-h) * 2 / 3)}.menu-card>.card-new{position:absolute;top:calc(10px * var(--s));right:calc(8px * var(--s));padding:calc(3px * var(--s)) calc(9px * var(--s)) calc(6px * var(--s));border:calc(3px * var(--s)) solid var(--ink);border-radius:calc(3px * var(--s));background:#ff4f8b;color:#fff;font-family:var(--font-display);font-size:calc(17px * var(--s));letter-spacing:1px;-webkit-text-stroke:calc(4px * var(--s)) var(--ink);paint-order:stroke fill;text-shadow:0 calc(2px * var(--s)) 0 var(--ink);box-shadow:inset 0 calc(4px * var(--s)) 0 #ff9cc0,inset 0 calc(-5px * var(--s)) 0 #c22a62,0 calc(3px * var(--s)) 0 var(--ink);rotate:5deg;pointer-events:none}[data-orient=portrait] .menu-card>.card-new{font-size:calc(12px * var(--s));padding:calc(2px * var(--s)) calc(6px * var(--s)) calc(4px * var(--s));-webkit-text-stroke-width:calc(3px * var(--s))}.menu-scroll-hint{position:absolute;inset:0 0 calc(58px * var(--s)) 0;pointer-events:none;z-index:2}.menu-scroll-hint[hidden]{display:none}.menu-scroll-hand{position:absolute;top:42%;right:14%;width:calc(88px * var(--s));height:calc(100px * var(--s));filter:drop-shadow(0 calc(3px * var(--s)) calc(5px * var(--s)) rgba(20,12,30,.55));animation:hint-drag 2.4s ease-in-out infinite}[data-orient=portrait] .menu-scroll-hint{bottom:calc(50px * var(--s))}.menu-scroll-hand svg{display:block;width:100%;height:100%;overflow:visible}.menu-scroll-ring{fill:none;stroke:#fff;stroke-width:3;opacity:0;transform-origin:23px 8px;animation:hint-ring 2.4s ease-out infinite}@keyframes hint-drag{0%{opacity:0;translate:0 calc(-10px * var(--s));scale:1}12%{opacity:1;translate:0 0;scale:1}22%{translate:0 0;scale:.86}62%{opacity:1;translate:calc(-150px * var(--s)) 0;scale:.86}72%{opacity:1;translate:calc(-150px * var(--s)) calc(-6px * var(--s));scale:1}86%,to{opacity:0;translate:calc(-150px * var(--s)) calc(-10px * var(--s));scale:1}}@keyframes hint-ring{0%,18%{opacity:0;scale:.4}24%{opacity:1;scale:1}40%,to{opacity:0;scale:2.1}}@media(prefers-reduced-motion:reduce){.menu-scroll-hand{animation:none}.menu-scroll-ring{animation:none;opacity:1}}.save-notice{position:fixed;z-index:10000;bottom:12px;left:50%;transform:translate(-50%);padding:10px 16px;border:2px solid #f5c270;border-radius:8px;background:#352e44;color:#fff;font:700 16px sans-serif;display:flex;gap:12px;align-items:center}.save-notice button{font:inherit;cursor:pointer;padding:4px 10px}.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(4,auto);grid-auto-columns: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=tall] .style-foot{bottom:calc(var(--bottom) + 10vh)}[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-auto-flow:row;grid-template-rows:none;grid-template-columns:repeat(8,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))}.sea-air{position:absolute;bottom:calc(var(--bottom) + 66px * var(--s) + 56px * var(--s));left:50%;transform:translate(-50%);display:flex;gap:calc(2px * var(--s));pointer-events:none}[data-input=touch] .sea-air{bottom:calc(var(--bottom) + var(--slot) + 70px)}.sea-air .vx-icon{width:calc(30px * var(--s));height:calc(30px * var(--s));image-rendering:pixelated;filter:drop-shadow(0 2px 0 rgba(0,0,0,.25));transition:opacity .2s ease,transform .2s ease}.sea-air .vx-icon.gone{opacity:.18;transform:scale(.7)}.sea-air.low .vx-icon:not(.gone){animation:sea-breathe .8s ease-in-out infinite}@keyframes sea-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.18)}}.sea-tint{position:fixed;inset:0;pointer-events:none;z-index:1;opacity:0;transition:opacity .25s ease;background:radial-gradient(ellipse at center,#288cbe2e,#0a3c6480)}.sea-tint.on{opacity:1}.sea-lens{position:fixed;inset:0;pointer-events:none;z-index:1;opacity:0;transition:opacity .15s ease;background:radial-gradient(circle at center,transparent 0,transparent min(34vw,34vh),rgba(18,14,24,.92) calc(min(34vw,34vh) + 2px),#120e18 100%)}.sea-lens.on{opacity:1}.touch-btn.sea-spy{top:calc(var(--top) + 120px * var(--s));right:calc(var(--right) - 6px * var(--ts));width:calc(64px * var(--ts))}.sea-spy .vx-icon{width:calc(44px * var(--ts));height:calc(44px * var(--ts))}.sea-spy .touch-label{font-size:calc(12px * var(--ts))}.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)))}}
