.ui-toast-wrap[data-v-8c2e2b76]{top:calc(env(safe-area-inset-top,0px) + 12px);z-index:var(--z-toast);pointer-events:none;flex-direction:column;gap:8px;width:min(420px,100vw - 32px);display:flex;position:fixed;left:50%;transform:translate(-50%)}.ui-toast[data-v-8c2e2b76]{border:2px solid var(--c-gold);border-radius:var(--r-md);background:var(--c-cream);color:var(--c-text);pointer-events:auto;box-shadow:0 4px 12px var(--c-shadow);align-items:center;gap:8px;padding:10px 12px;font-size:14px;line-height:1.45;display:flex}.k-success[data-v-8c2e2b76]{border-color:var(--c-grass-deep)}.k-error[data-v-8c2e2b76]{border-color:var(--c-error)}.k-info[data-v-8c2e2b76]{border-color:var(--c-wood)}.ico[data-v-8c2e2b76]{color:var(--c-wood);flex:none}.k-success .ico[data-v-8c2e2b76]{color:var(--c-grass-deep)}.k-error .ico[data-v-8c2e2b76]{color:var(--c-error)}.msg[data-v-8c2e2b76]{overflow-wrap:anywhere;flex:1;min-width:0}.x[data-v-8c2e2b76]{width:var(--touch-min);height:var(--touch-min);color:var(--c-wood);cursor:pointer;background:0 0;border:none;border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.x[data-v-8c2e2b76]:focus-visible{outline:2px solid var(--c-gold-deep);outline-offset:1px}.toast-enter-active[data-v-8c2e2b76],.toast-leave-active[data-v-8c2e2b76]{transition:opacity .22s,transform .22s}.toast-enter-from[data-v-8c2e2b76],.toast-leave-to[data-v-8c2e2b76]{opacity:0;transform:translateY(-8px)}@media (prefers-reduced-motion:reduce){.toast-enter-active[data-v-8c2e2b76],.toast-leave-active[data-v-8c2e2b76]{transition:none}}.gban[data-v-7057796b]{width:100%;max-width:480px;z-index:var(--z-banner);padding:calc(env(safe-area-inset-top,0px) + 8px) 44px 8px 12px;background:var(--c-error);color:var(--c-panel);text-align:center;border-bottom:2px solid var(--c-wood);justify-content:center;align-items:center;gap:8px;font-size:13px;display:flex;position:fixed;top:0;left:50%;right:auto;transform:translate(-50%)}.gban[data-kind=offline][data-v-7057796b]{background:var(--c-wood)}.retry[data-v-7057796b]{min-height:var(--touch-min);color:var(--c-text);background:var(--c-panel);border:2px solid var(--c-gold-deep);border-radius:var(--r-sm);cursor:pointer;padding:0 12px;font-size:13px;font-weight:600;position:absolute;right:8px}.retry[data-v-7057796b]:focus-visible{outline:3px solid var(--c-gold);outline-offset:1px}.tabbar[data-v-d417f62c]{z-index:var(--z-nav);width:100%;max-width:480px;min-height:var(--tabbar-h);padding:2px var(--sp-2) calc(env(safe-area-inset-bottom,0px) + var(--sp-2));pointer-events:none;background:linear-gradient(180deg, color-mix(in srgb, var(--c-gold) 55%, var(--c-cream)) 0%, var(--c-gold) 62%, color-mix(in srgb, var(--c-gold) 78%, var(--c-gold-deep)) 100%);border-top:var(--bw-card) solid var(--c-gold-deep);justify-content:space-around;align-items:flex-end;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.tabbar[data-v-d417f62c]:before{content:"";left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 2px);background:var(--coin-fill);border:2px solid var(--c-gold-deep);border-bottom:none;border-radius:999px 999px 0 0;width:64px;height:64px;position:absolute;transform:translate(-50%)}.tabbar[data-v-d417f62c]:after{content:"";left:0;right:0;bottom:var(--sp-3);background-image:radial-gradient(circle, var(--c-gold-deep) 0 2px, transparent 2px), radial-gradient(circle, var(--c-gold-deep) 0 2px, transparent 2px);background-position:14%,86%;background-repeat:no-repeat,no-repeat;background-size:4px 4px,4px 4px;height:4px;position:absolute}.tab[data-v-d417f62c]{z-index:var(--z-content);padding:var(--sp-2) 0 var(--sp-2);color:var(--c-wood-ink);border-radius:var(--r-sm);pointer-events:auto;min-height:56px;transition:transform .18s var(--ease-out-quint), filter .18s var(--ease-out-quint);flex-direction:column;flex:1;align-items:center;gap:2px;text-decoration:none;display:flex;position:relative}.tab em[data-v-d417f62c]{font-size:12px;font-style:normal;line-height:1}.icon-wrap[data-v-d417f62c]{justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.art[data-v-d417f62c]{object-fit:contain;width:100%;height:100%}.tab.active[data-v-d417f62c]{color:var(--c-text)}.tab.active .icon-wrap[data-v-d417f62c]{filter:brightness(1.12) saturate(1.25) drop-shadow(0 2px 3px var(--c-shadow-glow));transform:translateY(-3px)}.tab.active em[data-v-d417f62c]{font-weight:600}.tab.center.active .icon-wrap[data-v-d417f62c]{transform:translateY(-5px)}.tab.active[data-v-d417f62c]:after{content:"";background:var(--c-gold-deeper);border-radius:999px;width:14px;height:2px;position:absolute;bottom:2px;left:50%;transform:translate(-50%)}.tab[data-v-d417f62c]:focus-visible{outline:3px solid var(--c-gold-deep);outline-offset:2px}.tab[data-v-d417f62c]:disabled,.tab[aria-disabled=true][data-v-d417f62c]{cursor:not-allowed;background:var(--c-disabled-bg);border-color:var(--c-disabled-border);color:var(--c-text);opacity:1}@media (height<=500px){.tabbar[data-v-d417f62c]{padding:0 var(--sp-2) env(safe-area-inset-bottom,0px)}.tab[data-v-d417f62c]{min-height:52px;padding:var(--sp-1) 0 var(--sp-2)}.icon-wrap[data-v-d417f62c]{width:28px;height:28px}.tabbar[data-v-d417f62c]:before{bottom:env(safe-area-inset-bottom,0px);width:52px;height:52px}.tabbar[data-v-d417f62c]:after{bottom:var(--sp-2)}}#stage-host{width:100%;max-width:480px;z-index:var(--z-stage);background:linear-gradient(180deg, var(--c-sky) 0%, var(--c-cream) 60%);touch-action:none;transition:opacity .18s,visibility .18s;position:fixed;top:0;bottom:0;left:50%;transform:translate(-50%)}#stage-host.stage-host--hidden{visibility:hidden;opacity:0;pointer-events:none}#stage-host canvas{display:block}html body{background:linear-gradient(180deg, var(--c-sky) 0%, var(--c-cream) 60%)}.shell{background:linear-gradient(180deg, var(--c-sky) 0%, var(--c-cream) 60%);max-width:480px;min-height:100dvh;box-shadow:0 0 0 1px var(--c-gold), 0 0 24px var(--c-mask);margin-inline:auto;position:relative;container-type:inline-size}@media (width>=1024px){html body{background:radial-gradient(ellipse at center, transparent 55%, var(--c-mask) 130%), linear-gradient(180deg, var(--c-sky) 0%, var(--c-cream) 60%)}}:root{--c-gold:#f2c14e;--c-gold-deep:#c98f2b;--c-cream:#fff6e3;--c-wood:#8b5e3c;--c-grass:#7cb342;--c-sky:#bfe3f0;--c-text:#4a3421;--c-gold-soft:#9db87a;--c-cream-soft:#fff6e3eb;--shadow-1:0 2px 4px #4a342140;--shadow-2:0 6px 18px #4a342140;--shadow-3:0 12px 32px #4a342159;--c-glass:#ffffff73;--c-shadow-glow:#4a342159;--z-stage:0;--z-content:1;--z-overlay:2;--z-hud:3;--z-nav:10;--z-modal:100;--z-action-ring:110;--z-banner:120;--z-toast:200;--r-sm:8px;--r-md:12px;--r-lg:20px;--font-base:"Fredoka", system-ui, -apple-system, sans-serif;--c-error:#c0392b;--c-wood-ink:#5c3a1f;--c-panel:#fff;--c-mask:#4a342166;--c-grass-deep:#5a8a2a;--c-gold-deeper:#a8751c;--c-gold-ink:#8a5c0e;--c-grass-ink:#436a1e;--c-disabled-bg:#e8dfc8;--c-disabled-border:#c9bfae;--c-shadow:#4a34212e;--tabbar-h:64px;--gban-h:0px;--touch-min:44px;--fs-micro:12px;--fs-label:13px;--fs-body:14px;--fs-body-lg:16px;--fs-title:18px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-6:24px;--sp-32:32px;--sp-48:48px;--text-stroke-width:1.5px;--text-stroke-color:var(--c-wood);--text-stroke-shadow:0 2px 1px #4a342159;--title-band:linear-gradient(180deg, color-mix(in srgb, var(--c-wood) 68%, var(--c-cream)) 0%, var(--c-wood) 100%);--bw-card:2px;--bw-1:1px;--bw-2:2px;--bw-3:3px;--panel-sheen:linear-gradient(180deg, #ffffff8c 0%, #fff0 42%);--coin-fill:linear-gradient(180deg, #ffe08a 0%, var(--c-gold) 55%, var(--c-gold-deep) 100%);--press-scale:.92;--press-dur:.12s;--ease-out-quint:cubic-bezier(.22, 1, .36, 1);--ease-out-expo:cubic-bezier(.16, 1, .3, 1);--ease-in-quiet:cubic-bezier(.55, 0, 1, .45);--dur-enter:.32s;--dur-item:.26s;--dur-fast:.16s;--stagger:36ms;--candy-track:#ab5108;--candy-fill:linear-gradient(90deg, #fff017 3.43%, #ff9517 100%);--candy-glow:#fffa7780;--candy-warm:#ff62008c;--candy-hilite:#fff6;--candy-hilite-strong:#ffffffdb;--candy-inset-soft:#0003;--candy-inset-deep:#0000004d;--candy-track-inset:#432a15b3;--candy-label:#fbf2c6;--candy-label-shadow:#432a1573}@media (height<=500px){:root{--tabbar-h:56px}}@font-face{font-family:Fredoka;src:url(/assets/Fredoka-uBsOTgB9.ttf)format("truetype-variations");font-weight:300 700;font-display:swap}*{box-sizing:border-box}.text-sticker{color:var(--c-panel);-webkit-text-stroke:var(--text-stroke-width) var(--text-stroke-color);paint-order:stroke fill;text-shadow:var(--text-stroke-shadow);font-weight:700}.press-scale{transition:transform var(--press-dur) ease;touch-action:manipulation}.press-scale:active:not(:disabled){transform:scale(var(--press-scale))}.sheen{position:relative}.sheen:before{content:"";border-radius:inherit;background:var(--panel-sheen);pointer-events:none;position:absolute;inset:0}@keyframes enterFadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes enterItemIn{0%{opacity:0;transform:translateY(10px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}.enter-page{animation:enterFadeUp var(--dur-enter) var(--ease-out-quint) both}.enter-item,.enter-stagger>*{animation:enterItemIn var(--dur-item) var(--ease-out-quint) both}.enter-stagger>:nth-child(2){animation-delay:calc(var(--stagger) * 1)}.enter-stagger>:nth-child(3){animation-delay:calc(var(--stagger) * 2)}.enter-stagger>:nth-child(4){animation-delay:calc(var(--stagger) * 3)}.enter-stagger>:nth-child(5){animation-delay:calc(var(--stagger) * 4)}.enter-stagger>:nth-child(6){animation-delay:calc(var(--stagger) * 5)}.enter-stagger>:nth-child(7){animation-delay:calc(var(--stagger) * 6)}.enter-stagger>:nth-child(n+8){animation-delay:calc(var(--stagger) * 7)}@media (hover:hover) and (pointer:fine){.hover-lift{transition:transform var(--dur-fast) var(--ease-out-quint), box-shadow var(--dur-fast) ease}.hover-lift:hover{transform:translateY(-2px)}}html,body{font-family:var(--font-base);color:var(--c-text);background:linear-gradient(180deg, var(--c-sky) 0%, var(--c-cream) 60%);-webkit-tap-highlight-color:transparent;-webkit-font-smoothing:antialiased;margin:0;padding:0}html{font-size:clamp(13.6px,4.2vw,18.4px)}[data-low-end] *,[data-low-end] :before,[data-low-end] :after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
