/**
 * 电子木鱼 - 电子功德机
 * 尊重原创，请保留版权！
 * WeChat: ConsoleWarn
 * Author: Lei Xiaofeng <RayFinn6@163.com>
 * Date:   2026/08/27
 */
.app{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;background:var(--gradient-bg);position:relative;overflow:hidden}.app::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 50% 45%,transparent 55%,rgba(0,0,0,.45) 100%);pointer-events:none;z-index:1}.app-header{position:fixed;top:0;left:0;right:0;z-index:100;padding:var(--space-4) var(--space-6);background:linear-gradient(180deg,rgba(11,14,19,.9) 0,rgba(11,14,19,0) 100%)}.header-inner{max-width:600px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.brand{display:flex;align-items:center;gap:var(--space-3)}.brand-icon{width:40px;height:40px;display:block;filter:drop-shadow(0 0 6px rgba(232, 201, 122, .35))}.brand-text{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-bold);letter-spacing:.12em;background:var(--gradient-gold);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.header-actions{display:flex;gap:var(--space-3)}.hero{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;padding:var(--space-16) var(--space-6);z-index:2}.ambient-motes{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}.ambient-motes::after,.ambient-motes::before{content:'';position:absolute;width:3px;height:3px;border-radius:50%;background:var(--gold-300);opacity:0;animation:9s linear infinite moteFloat}.ambient-motes::before{top:100%;left:18%;box-shadow:12vw -14vh 0 0 rgba(232,201,122,.5),28vw -30vh 0 1px rgba(232,201,122,.35),46vw -10vh 0 0 rgba(232,201,122,.45),62vw -26vh 0 1px rgba(232,201,122,.3),74vw -8vh 0 0 rgba(232,201,122,.5),8vw -44vh 0 1px rgba(232,201,122,.3),54vw -52vh 0 0 rgba(232,201,122,.4),34vw -60vh 0 1px rgba(232,201,122,.3)}.ambient-motes::after{top:100%;left:58%;animation-delay:4.5s;animation-duration:11s;box-shadow:10vw -18vh 0 1px rgba(232,201,122,.3),24vw -36vh 0 0 rgba(232,201,122,.45),40vw -12vh 0 1px rgba(232,201,122,.3),56vw -30vh 0 0 rgba(232,201,122,.4),70vw -48vh 0 1px rgba(232,201,122,.3),18vw -58vh 0 0 rgba(232,201,122,.35)}.merit-display{text-align:center;margin-bottom:var(--space-12);z-index:2}.merit-count{font-family:var(--font-display);font-size:var(--text-6xl);font-weight:var(--weight-bold);line-height:1;background:var(--gradient-gold);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 18px rgba(232, 201, 122, .25));transition:filter var(--duration-normal)}.merit-label{font-family:var(--font-display);font-size:var(--text-lg);color:var(--text-secondary);margin-top:var(--space-3);letter-spacing:.5em;text-indent:.5em}.fish-stage{position:relative;width:320px;height:280px;cursor:pointer;z-index:2;background:0 0;-webkit-tap-highlight-color:transparent}.stage-halo{position:absolute;top:50%;left:50%;width:320px;height:320px;transform:translate(-50%,-50%);background:var(--gradient-glow);border-radius:50%;pointer-events:none;z-index:0}.fish-stage.combo-high .stage-halo{background:radial-gradient(circle,rgba(232,201,122,.45) 0,transparent 70%)}.fish-assembly{position:absolute;left:50%;bottom:3%;transform:translateX(-50%);width:82%;aspect-ratio:1/1.08;z-index:1;pointer-events:none}.wooden-fish{position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:90%;aspect-ratio:1/1;transform-origin:50% 100%;filter:drop-shadow(0 10px 24px rgba(0, 0, 0, .55));z-index:1}.wooden-hammer{position:absolute;top:-4%;left:40%;width:54%;aspect-ratio:1/1;transform:rotate(16deg);transform-origin:80% 85%;z-index:3;pointer-events:none}.tap-ring{position:absolute;top:58%;left:50%;width:180px;height:180px;border-radius:50%;border:2px solid var(--gold-300);transform:translate(-50%,-50%) scale(.2);opacity:0;pointer-events:none;z-index:2}.fish-hit-effect{display:none}.tap-hint{margin-top:var(--space-10,2.5rem);font-size:var(--text-sm);color:var(--text-muted);display:flex;align-items:center;gap:var(--space-2);z-index:2}.tap-hint kbd{padding:2px 8px;background:var(--bg-raised);border:1px solid var(--line-gold-soft);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--gold-500)}.toolbar{position:fixed;bottom:0;left:0;right:0;z-index:100;padding:var(--space-2) var(--space-4) var(--space-4);background:linear-gradient(0deg,rgba(11,14,19,.92) 0,rgba(11,14,19,0) 100%)}.toolbar-inner{max-width:400px;margin:0 auto;display:flex;justify-content:space-around;padding:var(--space-2) var(--space-3);background:rgba(23,28,38,.72);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--line-gold-soft);border-radius:var(--radius-full)}.tool-btn{display:flex;flex-direction:column;align-items:center;gap:2px;padding:var(--space-1) var(--space-3);background:0 0;border:none;border-radius:var(--radius-lg);color:var(--text-muted);cursor:pointer;transition:all var(--duration-normal) var(--ease-out-back)}.tool-btn:hover{color:var(--text-secondary)}.tool-btn:active{transform:scale(.92)}.tool-btn[aria-pressed=true]{color:var(--gold-300)}.tool-icon{width:20px;height:20px;display:block;transition:filter var(--duration-normal),transform var(--duration-normal)}.tool-btn[aria-pressed=true] .tool-icon{filter:drop-shadow(0 0 6px rgba(232, 201, 122, .6));transform:scale(1.08)}.tool-label{font-size:var(--text-xs);font-weight:var(--weight-medium)}.footer-slogan{text-align:center;margin-top:var(--space-4);font-family:var(--font-display);font-size:var(--text-xs);color:var(--text-muted);letter-spacing:.2em}.footer-slogan-alt{margin-top:var(--space-2);font-size:.625rem;letter-spacing:.08em;opacity:.7}.loading-screen{position:fixed;inset:0;z-index:9999;background:var(--bg-deep);display:flex;align-items:center;justify-content:center}.loading-content{text-align:center}.loading-lotus{width:88px;height:88px;margin:0 auto var(--space-6);display:block;filter:drop-shadow(0 0 16px rgba(232, 201, 122, .35))}.loading-text{font-size:var(--text-sm);color:var(--text-secondary);letter-spacing:.1em;margin-bottom:var(--space-6)}.loading-bar{width:200px;height:3px;background:rgba(237,230,214,.08);border-radius:var(--radius-full);margin:0 auto;overflow:hidden}.loading-bar-fill{height:100%;width:0;background:var(--gradient-gold);border-radius:var(--radius-full);transition:width .25s}.hero.immersive .stage-halo{background:radial-gradient(circle,rgba(232,201,122,.38) 0,transparent 72%)}.hero.immersive .merit-display,.hero.immersive .tap-hint{opacity:.35;transition:opacity var(--duration-slow)}.float-text{position:absolute;font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-bold);color:var(--gold-100);text-shadow:-1px -1px 2px rgba(0,0,0,.85),1px -1px 2px rgba(0,0,0,.85),-1px 1px 2px rgba(0,0,0,.85),1px 1px 2px rgba(0,0,0,.85),0 2px 6px rgba(0,0,0,.7),0 0 16px rgba(240,220,170,.55);pointer-events:none;z-index:20;width:max-content;max-width:86vw;text-align:center;opacity:0}.float-text.crit{font-size:var(--text-2xl);color:#ffd76a;text-shadow:-1px -1px 2px rgba(0,0,0,.85),1px -1px 2px rgba(0,0,0,.85),-1px 1px 2px rgba(0,0,0,.85),1px 1px 2px rgba(0,0,0,.85),0 2px 6px rgba(0,0,0,.7),0 0 24px rgba(255,214,120,.9)}.crit-flash{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}.crit-tint{position:absolute;inset:0;opacity:0;background:radial-gradient(circle at 50% 55%,rgba(255,214,120,.32) 0,rgba(255,196,80,.12) 45%,transparent 82%)}.crit-rays{position:absolute;left:50%;top:55%;width:130vmax;height:130vmax;opacity:0;filter:blur(2px);background:repeating-conic-gradient(from 0deg,rgba(255,214,120,.34) 0deg 5deg,rgba(255,214,120,0) 5deg 11deg);-webkit-mask-image:radial-gradient(circle,#000 0%,rgba(0,0,0,0.5) 28%,transparent 55%);mask-image:radial-gradient(circle,#000 0%,rgba(0,0,0,0.5) 28%,transparent 55%)}.crit-core{position:absolute;left:50%;top:55%;width:80vmin;height:80vmin;opacity:0;background:radial-gradient(circle,rgba(255,248,222,.95) 0,rgba(255,214,120,.6) 40%,transparent 74%)}.crit-ring{position:absolute;left:50%;top:55%;width:42vmin;height:42vmin;border:4px solid rgba(255,230,160,.95);border-radius:50%;box-shadow:0 0 44px rgba(255,214,120,.8),inset 0 0 22px rgba(255,214,120,.5);opacity:0}.particles-container{position:absolute;inset:0;pointer-events:none;z-index:15}.particle{position:absolute;width:5px;height:5px;border-radius:50%;background:var(--gold-300);box-shadow:0 0 6px rgba(232,201,122,.7);pointer-events:none}.icon-btn{width:40px;height:40px;border-radius:var(--radius-full);background:rgba(23,28,38,.6);border:1px solid var(--line-gold-soft);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;transition:all var(--duration-normal) var(--ease-out-back);cursor:pointer}.icon-btn:hover{border-color:var(--line-gold);transform:translateY(-1px);box-shadow:0 0 16px rgba(232,201,122,.18)}.icon-btn:active{transform:scale(.94)}.icon-btn .spr,.icon-btn svg{width:20px;height:20px;display:block}.seo-content{max-width:860px;margin:0 auto;padding:var(--space-16) var(--space-6) var(--space-12);color:var(--text-primary);font-family:var(--font-body);line-height:1.9;background:var(--bg-deep)}.seo-content .seo-inner{background:rgba(23,28,38,.72);border:1px solid var(--line-gold-soft);border-radius:var(--radius-xl);padding:var(--space-8) var(--space-8) var(--space-12);box-shadow:var(--shadow-md)}.seo-content h2{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-bold);color:var(--gold-200);margin:var(--space-8) 0 var(--space-4);padding-bottom:var(--space-2);border-bottom:1px solid var(--line-gold-soft)}.seo-content h2:first-child{margin-top:0}.seo-content h3{font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--gold-300);margin:var(--space-6) 0 var(--space-3)}.seo-content p{color:var(--text-secondary);margin-bottom:var(--space-4);font-size:var(--text-base)}.seo-content ol,.seo-content ul{margin:0 0 var(--space-4);padding-left:var(--space-6);color:var(--text-secondary)}.seo-content li{margin-bottom:var(--space-2);font-size:var(--text-base)}.seo-content strong{color:var(--gold-300);font-weight:var(--weight-semibold)}.seo-content .seo-lang-en,.seo-content .seo-lang-zh{margin-top:var(--space-8);padding-top:var(--space-6);border-top:1px solid var(--line-gold-soft)}.seo-content details{margin-bottom:var(--space-3);border:1px solid var(--line-gold-soft);border-radius:var(--radius-md);background:rgba(16,20,27,.6);overflow:hidden}.seo-content details summary{cursor:pointer;padding:var(--space-3) var(--space-4);color:var(--gold-200);font-weight:var(--weight-medium);font-size:var(--text-base);list-style:none;position:relative;padding-right:var(--space-8)}.seo-content details summary::-webkit-details-marker{display:none}.seo-content details summary::after{content:'+';position:absolute;right:var(--space-4);top:50%;transform:translateY(-50%);color:var(--gold-400);font-size:var(--text-lg);transition:transform var(--duration-normal)}.seo-content details[open] summary::after{content:'−'}.seo-content details .faq-answer{padding:0 var(--space-4) var(--space-3);color:var(--text-secondary);font-size:var(--text-base)}@media (max-width:640px){.seo-content{padding:var(--space-12) var(--space-4) var(--space-8)}.seo-content .seo-inner{padding:var(--space-6) var(--space-4) var(--space-8)}.seo-content h2{font-size:var(--text-lg)}}