.app-container[data-v-0bfbf493]{width:100vw;height:100dvh;overflow:hidden}.fade-enter-active[data-v-0bfbf493],.fade-leave-active[data-v-0bfbf493]{transition:opacity .3s ease}.fade-enter-from[data-v-0bfbf493],.fade-leave-to[data-v-0bfbf493]{opacity:0}:root{--color-primary: #FF8C42;--color-primary-light: #FFB380;--color-primary-dark: #E67320;--color-success: #4CAF50;--color-warning: #FFC107;--color-danger: #F44336;--color-info: #2196F3;--scene-forest: #A8D8B9;--scene-orchard: #FFD4A3;--scene-rainbow: #D4C5F0;--scene-mirror: #B5E4E8;--scene-home: #FFF0D4;--scene-circus: #FFE0EC;--scene-table: #FFEDCC;--scene-street: #D4E8F0;--game-match: #FF8C42;--game-listen: #7C5CFC;--game-memory: #7C5CFC;--bg-main: #FFF8F0;--bg-card: #FFFFFF;--bg-overlay: rgba(0, 0, 0, .4);--text-primary: #3D2C1E;--text-secondary: #8B7355;--text-hint: #BFAB95;--border-light: #F0E6DA;--shadow-card: 0 4px 16px rgba(139, 115, 85, .12);--font-family: "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", system-ui, -apple-system, sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.25rem;--font-size-xl: 1.5rem;--font-size-2xl: 2rem;--font-size-3xl: 2.75rem;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--ease-bounce: cubic-bezier(.34, 1.56, .64, 1);--ease-smooth: cubic-bezier(.4, 0, .2, 1);--duration-fast: .15s;--duration-normal: .3s;--duration-slow: .5s;--touch-min: 64px}:root[data-theme=orange]{--color-primary: #FF8C42;--color-primary-light: #FFB380;--color-primary-dark: #E67320;--bg-main: #FFF8F0}:root[data-theme=blue]{--color-primary: #4A90D9;--color-primary-light: #8BB8E8;--color-primary-dark: #357ABD;--bg-main: #F0F6FF}:root[data-theme=pink]{--color-primary: #F08CAE;--color-primary-light: #F5B8CE;--color-primary-dark: #D47092;--bg-main: #FFF5F8}:root[data-theme=green]{--color-primary: #5BAA6B;--color-primary-light: #8FC89B;--color-primary-dark: #4A9358;--bg-main: #F2FAF0}:root[data-theme=purple]{--color-primary: #8B6FC0;--color-primary-light: #B49ED8;--color-primary-dark: #7359A8;--bg-main: #F6F0FF}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{font-family:var(--font-family);font-size:var(--font-size-base);color:var(--text-primary);background:var(--bg-main);line-height:1.6;overflow:hidden;user-select:none;-webkit-user-select:none;-webkit-font-smoothing:antialiased}button{font-family:inherit;cursor:pointer;border:none;background:none;font-size:inherit;color:inherit;transition:transform .15s var(--ease-bounce)}button:active{transform:scale(.95)}a{color:inherit;text-decoration:none;transition:transform .15s var(--ease-bounce)}a:active{transform:scale(.97)}img{max-width:100%;display:block}#app{width:100vw;height:100dvh;overflow:hidden}@media (max-width: 767px){html{font-size:14px}}@media (max-width: 399px){html{font-size:12px}}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--text-hint);border-radius:var(--radius-full)}.page-enter-active,.page-leave-active{transition:opacity .3s ease,transform .3s ease}.page-enter-from{opacity:0;transform:translate(20px)}.page-leave-to{opacity:0;transform:translate(-20px)}@keyframes bounce{0%,to{transform:scale(1)}30%{transform:scale(1.2)}50%{transform:scale(.95)}70%{transform:scale(1.05)}}.anim-bounce{animation:bounce .5s var(--ease-bounce)}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}.anim-shake{animation:shake .4s ease}@keyframes pulse{0%,to{box-shadow:0 0 #ff8c4266}50%{box-shadow:0 0 0 12px #ff8c4200}}.anim-pulse{animation:pulse 1.5s ease-in-out infinite}@keyframes blinkBorder{0%,to{border-color:var(--color-primary);box-shadow:0 0 8px #ff8c4280}50%{border-color:var(--color-primary-light);box-shadow:0 0 16px #ff8c42cc}}.anim-blink-border{animation:blinkBorder 1s ease-in-out infinite;border:3px solid var(--color-primary);border-radius:var(--radius-md)}@keyframes starFly{0%{opacity:1;transform:scale(0) translate(0)}50%{opacity:1;transform:scale(1.3) translate(10px,-20px)}to{opacity:0;transform:scale(.6) translate(30px,-50px)}}@keyframes tapFinger{0%{transform:scale(1)}30%{transform:scale(1.3)}60%{transform:scale(.9)}to{transform:scale(1)}}@keyframes yoyoIdle{0%,90%,to{transform:scaleY(1)}95%{transform:scaleY(.1)}}.anim-yoyo-idle{animation:yoyoIdle 4s ease-in-out infinite}@keyframes yoyoThink{0%,to{transform:rotate(0)}25%{transform:rotate(-8deg)}75%{transform:rotate(8deg)}}.anim-yoyo-think{animation:yoyoThink .6s ease-in-out infinite}@keyframes yoyoHappy{0%,to{transform:translateY(0)}50%{transform:translateY(-16px)}}.anim-yoyo-happy{animation:yoyoHappy .4s var(--ease-bounce)}@keyframes yoyoEncourage{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.anim-yoyo-encourage{animation:yoyoEncourage .3s var(--ease-bounce)}@keyframes yoyoCelebrate{0%{transform:rotate(0) scale(1)}50%{transform:rotate(180deg) scale(1.2)}to{transform:rotate(360deg) scale(1)}}.anim-yoyo-celebrate{animation:yoyoCelebrate .8s var(--ease-smooth)}@keyframes yoyoSleepy{0%,to{transform:translateY(0) scale(1)}30%{transform:translateY(-6px)}60%{transform:translateY(0) scale(.95)}}.anim-yoyo-sleepy{animation:yoyoSleepy 2s ease-in-out infinite}@keyframes yoyoSummon{0%,to{transform:rotate(-5deg)}50%{transform:rotate(15deg)}}.anim-yoyo-summon{animation:yoyoSummon .5s ease-in-out infinite}@keyframes starPop{0%{transform:scale(0) rotate(-30deg);opacity:0}60%{transform:scale(1.4) rotate(10deg);opacity:1}to{transform:scale(1) rotate(0);opacity:1}}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.anim-fade-up{animation:fadeUp .4s var(--ease-smooth)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.anim-fade-in{animation:fadeIn .3s ease}@keyframes cardFlip{0%{transform:rotateY(0)}to{transform:rotateY(180deg)}}.anim-flip{animation:cardFlip .4s var(--ease-smooth)}@keyframes matchDisappear{0%{transform:scale(1);opacity:1}50%{transform:scale(1.2);opacity:.8}to{transform:scale(0);opacity:0}}.anim-disappear{animation:matchDisappear .5s var(--ease-bounce)}@keyframes breathe{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.anim-breathe{animation:breathe 3s ease-in-out infinite}.btn-elastic{transition:transform .15s var(--ease-bounce),box-shadow .15s var(--ease-smooth)}.btn-elastic:active{transform:scale(.92)}.interactive{transition:transform .2s var(--ease-bounce),box-shadow .2s var(--ease-smooth),background .2s var(--ease-smooth)}.interactive:hover{transform:translateY(-1px) scale(1.01)}.interactive:active{transform:scale(.95)}.confetti-container{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:9999;overflow:hidden}.confetti-piece{position:absolute;top:-20px;font-size:1.5rem;animation:confettiFall var(--fall-duration, 2s) linear forwards;opacity:1;will-change:transform,opacity}@keyframes confettiFall{0%{transform:translateY(0) rotate(0) scale(1);opacity:1}70%{opacity:1}to{transform:translateY(100vh) rotate(var(--rotation, 360deg)) scale(.5);opacity:0}}@media (prefers-reduced-motion: reduce){.confetti-piece{animation:none;opacity:.3;top:auto;bottom:20%}}@keyframes nodeUnlock{0%{transform:scale(.5) translateY(10px);opacity:0;filter:brightness(2)}40%{transform:scale(1.25) translateY(-4px);opacity:1;filter:brightness(1.3)}60%{transform:scale(.95);filter:brightness(1)}80%{transform:scale(1.06)}to{transform:scale(1) translateY(0);filter:brightness(1)}}.anim-node-unlock{animation:nodeUnlock .8s var(--ease-bounce) forwards}@keyframes unlockBurst{0%{box-shadow:0 0 #ffd54fcc}50%{box-shadow:0 0 0 18px #ffd54f00}to{box-shadow:0 0 #ffd54f00}}@keyframes currentGlow{0%,to{box-shadow:0 0 #ffd54f80;outline-color:#ffd54f66}50%{box-shadow:0 0 0 8px #ffd54f00;outline-color:#ffd54fcc}}
