::root{--primary-color:#ff6b9d;--primary-light:#ffa4c4;--primary-dark:#e84a7f;--secondary-color:#a855f7;--accent-color:#60a5fa;--success-color:#10b981;--warning-color:#f59e0b;--danger-color:#ef4444;--bg-color:#fff5f8;--bg-secondary:#fff0f5;--card-bg:#fff;--text-primary:#333;--text-secondary:#666;--text-muted:#999;--border-color:#ffd6e7;--border-radius:16px;--border-radius-sm:8px;--shadow-sm:0 2px 8px rgba(255,107,157,.1);--shadow-md:0 4px 16px rgba(255,107,157,.15);--shadow-lg:0 8px 32px rgba(255,107,157,.2)}.dark{--bg-color:#1a1625;--bg-secondary:#2d2640;--card-bg:#2d2640;--text-primary:#f5f5f5;--text-secondary:#c4c4c4;--text-muted:#888;--border-color:#4a4458}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Noto Sans SC,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background-color:var(--bg-color);color:var(--text-primary);line-height:1.6;transition:background-color .3s,color .3s}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary);border-radius:4px}::-webkit-scrollbar-thumb{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--primary-dark)}.moe-card{background:var(--card-bg);border-radius:var(--border-radius);box-shadow:var(--shadow-md);padding:24px;transition:all .3s ease;border:1px solid var(--border-color)}.moe-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.moe-btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 24px;border-radius:20px;border:none;font-size:14px;font-weight:500;cursor:pointer;transition:all .3s ease;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff}.moe-btn:hover{transform:scale(1.05);box-shadow:var(--shadow-md)}.moe-btn-outline{background:transparent;border:2px solid var(--primary-color);color:var(--primary-color)}.moe-btn-outline:hover{background:var(--primary-color);color:#fff}.rainbow-text{background:linear-gradient(90deg,#ff6b9d,#a855f7,#60a5fa,#10b981,#f59e0b,#ef4444);background-size:200% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:rainbow 3s linear infinite}@keyframes rainbow{0%{background-position:0}to{background-position:200%}}.float-animation{animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.heartbeat{animation:heartbeat 1.5s ease-in-out infinite}@keyframes heartbeat{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.sparkle{animation:sparkle 1.5s ease-in-out infinite}@keyframes sparkle{0%,to{opacity:1}50%{opacity:.5}}.moe-tag{display:inline-flex;align-items:center;padding:4px 12px;border-radius:12px;font-size:12px;background:linear-gradient(135deg,var(--primary-light),var(--primary-color));color:#fff;margin-right:8px;transition:all .3s ease}.moe-tag:hover{transform:scale(1.05)}.moe-input{width:100%;padding:12px 16px;border:2px solid var(--border-color);border-radius:var(--border-radius-sm);font-size:14px;background:var(--card-bg);color:var(--text-primary);transition:all .3s ease}.moe-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(255,107,157,.2)}.moe-pagination{display:flex;justify-content:center;gap:8px;margin-top:24px}.moe-pagination button{padding:8px 16px;border-radius:12px;border:2px solid var(--border-color);background:var(--card-bg);color:var(--text-primary);cursor:pointer;transition:all .3s ease}.moe-pagination button.active,.moe-pagination button:hover{border-color:var(--primary-color);background:var(--primary-color);color:#fff}.fade-enter-active,.fade-leave-active{transition:opacity .25s ease-out}.fade-enter-from,.fade-leave-to{opacity:0}.slide-fade-enter-active{transition:all .3s ease-out}.slide-fade-leave-active{transition:all .2s ease-in}.slide-fade-enter-from{transform:translateY(10px);opacity:0}.slide-fade-leave-to{transform:translateY(-10px);opacity:0}.scale-fade-enter-active,.scale-fade-leave-active{transition:all .3s ease}.scale-fade-enter-from,.scale-fade-leave-to{transform:scale(.98);opacity:0}.typewriter{overflow:hidden;border-right:3px solid var(--primary-color);white-space:nowrap;animation:typing 3.5s steps(40),blink-caret .75s step-end infinite}@keyframes typing{0%{width:0}to{width:100%}}@keyframes blink-caret{0%,to{border-color:transparent}50%{border-color:var(--primary-color)}}.neon-text{color:#fff;text-shadow:0 0 5px var(--primary-color),0 0 10px var(--primary-color),0 0 20px var(--primary-color),0 0 40px var(--primary-color);animation:neon-pulse 2s ease-in-out infinite}@keyframes neon-pulse{0%,to{text-shadow:0 0 5px var(--primary-color),0 0 10px var(--primary-color),0 0 20px var(--primary-color),0 0 40px var(--primary-color)}50%{text-shadow:0 0 2px var(--primary-color),0 0 5px var(--primary-color),0 0 10px var(--primary-color),0 0 20px var(--primary-color)}}.moe-card-glow{position:relative;background:var(--card-bg);border-radius:var(--border-radius);box-shadow:var(--shadow-md);padding:24px;transition:all .3s ease;border:1px solid var(--border-color);overflow:hidden}.moe-card-glow:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,107,157,.1) 0,transparent 70%);opacity:0;transition:opacity .5s ease;pointer-events:none;z-index:0}.moe-card-glow:hover:before{opacity:1}.moe-card-glow:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl);border-color:var(--primary-light)}.gradient-border-card{position:relative;background:var(--card-bg);border-radius:var(--border-radius);padding:24px}.gradient-border-card:before{content:"";position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;background:linear-gradient(45deg,var(--primary-color),var(--secondary-color),var(--accent-color),var(--primary-color));background-size:400% 400%;border-radius:var(--border-radius);z-index:-1;animation:gradient-rotate 3s ease infinite}@keyframes gradient-rotate{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.rotate-slow{animation:rotate 20s linear infinite}@keyframes rotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.bounce{animation:bounce 2s ease infinite}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-20px)}60%{transform:translateY(-10px)}}.swing{animation:swing 1s ease-in-out infinite;transform-origin:top center}@keyframes swing{0%,to{transform:rotate(0deg)}25%{transform:rotate(15deg)}75%{transform:rotate(-15deg)}}.pulse{animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.8}}.flash{animation:flash 1s ease-in-out infinite}@keyframes flash{0%,50%,to{opacity:1}25%,75%{opacity:0}}.ripple{position:relative;overflow:hidden}.ripple:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:hsla(0,0%,100%,.5);transform:translate(-50%,-50%);transition:width .6s,height .6s}.ripple:active:after{width:300px;height:300px}.hover-shadow{transition:all .3s ease}.hover-shadow:hover{box-shadow:0 10px 40px rgba(255,107,157,.3)}.corner-decoration{position:relative}.corner-decoration:after,.corner-decoration:before{content:"✿";position:absolute;font-size:20px;color:var(--primary-color);animation:float 3s ease-in-out infinite}.corner-decoration:before{top:-10px;left:-10px}.corner-decoration:after{bottom:-10px;right:-10px;animation-delay:1.5s}.cute-divider{display:flex;align-items:center;justify-content:center;gap:12px;margin:32px 0;color:var(--primary-color)}.cute-divider:after,.cute-divider:before{content:"";flex:1;height:2px;background:linear-gradient(to right,transparent,var(--primary-light),transparent)}.pattern-bg{background-image:radial-gradient(circle at 20% 50%,rgba(255,107,157,.1) 2px,transparent 0),radial-gradient(circle at 80% 50%,rgba(168,85,247,.1) 2px,transparent 0);background-size:50px 50px}.custom-cursor{cursor:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 24 24'%3E%3Ctext y='20' font-size='20'%3E🌸%3C/text%3E%3C/svg%3E"),auto}@media (max-width:768px){.moe-card{padding:16px;border-radius:12px}.neon-text{font-size:1.2em}.typewriter{white-space:normal;border-right:none;animation:none}}