.page-fade-enter-active[data-v-b14bddf2],.page-fade-leave-active[data-v-b14bddf2]{transition:opacity .3s ease,transform .3s ease}.page-fade-enter-from[data-v-b14bddf2]{opacity:0;transform:scale(.96)}.page-fade-leave-to[data-v-b14bddf2]{opacity:0;transform:scale(1.02)}:root{--color-primary: #FFB347;--color-primary-light: #FFD699;--color-secondary: #87CEEB;--color-secondary-light: #C8E6F5;--color-accent: #FF8A80;--color-success: #81C784;--color-bg: #FFF8F0;--color-bg-card: #FFFFFF;--color-text: #4A3728;--color-text-light: #8B7355;--color-border: #F0E0CC;--radius-sm: 12px;--radius-md: 20px;--radius-lg: 28px;--radius-xl: 40px;--radius-full: 9999px;--shadow-sm: 0 2px 8px rgba(74, 55, 40, .08);--shadow-md: 0 4px 16px rgba(74, 55, 40, .12);--shadow-lg: 0 8px 32px rgba(74, 55, 40, .16);--shadow-float: 0 12px 40px rgba(255, 179, 71, .25);--font-family: "Nunito", "PingFang SC", "Microsoft YaHei", system-ui, 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.5rem;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--ease-bounce: cubic-bezier(.34, 1.56, .64, 1);--ease-smooth: cubic-bezier(.4, 0, .2, 1);--duration-fast: .2s;--duration-normal: .3s;--duration-slow: .5s;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}html{font-size:16px;scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-family);color:var(--color-text);background-color:var(--color-bg);line-height:1.6;min-height:100vh;min-height:100dvh;overflow-x:hidden;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(circle at 20% 20%,var(--color-primary-light) 2px,transparent 2px),radial-gradient(circle at 80% 60%,var(--color-secondary-light) 3px,transparent 3px),radial-gradient(circle at 50% 90%,var(--color-primary-light) 2px,transparent 2px);background-size:60px 60px,80px 80px,70px 70px;opacity:.4;pointer-events:none;z-index:-1}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{font-family:inherit;cursor:pointer;border:none;background:none}h1,h2,h3,h4{font-weight:800;line-height:1.3;color:var(--color-text)}h1{font-size:var(--font-size-2xl)}h2{font-size:var(--font-size-xl)}h3{font-size:var(--font-size-lg)}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--space-md)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-md) var(--space-xl);font-size:var(--font-size-lg);font-weight:700;border-radius:var(--radius-full);transition:all var(--duration-normal) var(--ease-bounce);-webkit-user-select:none;user-select:none;white-space:nowrap}.btn:active{transform:scale(.92)}.btn-primary{background:linear-gradient(135deg,var(--color-primary),#FFA040);color:#fff;box-shadow:var(--shadow-float)}.btn-primary:hover{transform:translateY(-2px) scale(1.03);box-shadow:0 16px 48px #ffb34759}.btn-secondary{background:var(--color-bg-card);color:var(--color-text);border:2px solid var(--color-border);box-shadow:var(--shadow-sm)}.btn-secondary:hover{border-color:var(--color-primary);background:var(--color-primary-light)}.btn-icon{width:48px;height:48px;padding:0;border-radius:var(--radius-full);font-size:var(--font-size-xl)}.card{background:var(--color-bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden;transition:all var(--duration-normal) var(--ease-bounce)}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}@media(min-width:480px){:root{--font-size-2xl: 2.25rem;--font-size-3xl: 3rem}}@media(min-width:768px){:root{--font-size-2xl: 2.5rem;--font-size-3xl: 3.5rem}.container{padding:0 var(--space-xl)}}@media(min-width:1024px){:root{--font-size-2xl: 3rem;--font-size-3xl: 4rem}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-3deg)}75%{transform:rotate(3deg)}}@keyframes pop-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.anim-float{animation:float 3s ease-in-out infinite}.anim-wiggle{animation:wiggle 2s ease-in-out infinite}.anim-pop-in{animation:pop-in .4s var(--ease-bounce) both}
