:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#fffaf4;--muted:#decbbf;--surface:#100b0e75;--surface-strong:#100b0eb8;--line:#fffaf433;--rose:#ff3d73;--coral:#ff7a59;--gold:#ffd166;--mint:#69f0c9;--hero-glow:#ff3d737a;--scene-bg-color:#0d090b;--scene-bg-image:none;--photo-bg-opacity:0}*{box-sizing:border-box}html,body{width:100%;min-height:100%;margin:0}body{background:var(--scene-bg-color);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow:hidden}button{font:inherit}.experience{isolation:isolate;min-height:100dvh;position:relative;overflow:hidden}.scene-backdrop,.scene-backdrop:before{position:fixed;inset:0}.scene-backdrop{z-index:0;background:radial-gradient(circle at 55% 38%, #ffd16633, transparent 28rem), var(--scene-bg-color)}.scene-backdrop:before{content:"";background-image:linear-gradient(90deg, #05030480, #05030424 50%, #05030473), var(--scene-bg-image);opacity:var(--photo-bg-opacity);background-position:50%;background-size:cover;transition:opacity .7s}#heart-scene{touch-action:none;z-index:1;width:100%;height:100%;display:block;position:fixed;inset:0}.hero{z-index:2;pointer-events:none;flex-direction:column;justify-content:center;width:min(94vw,860px);min-height:100dvh;padding:clamp(4.5rem,8vh,7rem) clamp(1.25rem,5vw,5rem);display:flex;position:relative}h1{letter-spacing:0;max-width:100%;text-shadow:0 4px 0 #ff3d7347, 0 18px 70px var(--hero-glow), 0 6px 30px #000000a6;margin:.08em 0 .02em;font-family:Dancing Script,cursive;font-size:clamp(6.5rem,23vw,19rem);font-weight:700;line-height:.82;animation:5.4s ease-in-out infinite alyGlow}.controls{right:clamp(1rem,3vw,2rem);bottom:max(clamp(1rem, 3vw, 2rem), env(safe-area-inset-bottom));z-index:3;border:1px solid var(--line);background:var(--surface);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:999px;gap:.6rem;padding:.45rem;display:flex;position:fixed;box-shadow:0 18px 50px #00000052}.fish-pop{z-index:4;pointer-events:none;width:1px;height:1px;position:fixed}.fish,.fish-bubble{display:block;position:absolute;top:0;left:0;transform:translate(-50%,-50%)}.fish{background:radial-gradient(circle at 74% 34%, #111015 0 5%, #fffaf4b8 5.5% 8%, transparent 8.5%), radial-gradient(ellipse at 34% 46%, color-mix(in srgb, var(--fish-color,#e87524), transparent 8%) 0 19%, transparent 20%), radial-gradient(ellipse at 56% 38%, #c7372fdb 0 12%, transparent 13%), radial-gradient(ellipse at 48% 72%, #10101680 0 8%, transparent 9%), linear-gradient(180deg, #fffaf4eb, #f8efdaf5 42%, #e0d6c3e6 100%);opacity:.94;border-radius:64% 42% 46% 62%;width:clamp(1.25rem,3.6vw,2rem);height:clamp(.58rem,1.7vw,.95rem);animation:1.05s cubic-bezier(.18,.82,.32,1) forwards fishJump;box-shadow:inset 0 -.12rem .18rem #00000029,0 0 12px #ffebc452,0 10px 18px #0000003d}.fish:before{content:"";background:inherit;clip-path:polygon(0 50%,100% 0,100% 100%);filter:brightness(.92)saturate(.9);width:52%;height:70%;position:absolute;top:50%;left:-34%;transform:translateY(-50%)}.fish:after{content:"";background:linear-gradient(135deg, #fffaf4d1, color-mix(in srgb, var(--fish-color,#e87524), #fffaf4 20%));opacity:.82;border-radius:90% 10% 82% 18%;width:32%;height:34%;position:absolute;top:-18%;left:36%;transform:rotate(14deg)}.fish-bubble{aspect-ratio:1;background:radial-gradient(circle at 34% 32%,#fffaf45c,#b8e0db1f);border:1px solid #d7efea9e;border-radius:50%;width:clamp(.28rem,1vw,.45rem);animation:1.2s ease-out forwards bubbleRise;box-shadow:0 0 9px #b8e0db52}.mandarin-card{z-index:4;min-width:10rem;color:var(--ink);text-align:center;pointer-events:none;-webkit-backdrop-filter:blur(18px)saturate(.94);backdrop-filter:blur(18px)saturate(.94);background:linear-gradient(135deg,#fffaf429,#fffaf40a),radial-gradient(circle at 20% 0,#ffd1662e,#0000 7rem),#10090dc7;border:1px solid #fffaf457;border-radius:.75rem;gap:.15rem;padding:.75rem .9rem;animation:3.4s forwards wordPop;display:grid;position:fixed;transform:translate(-50%,-112%);box-shadow:0 18px 42px #00000057,0 0 20px #ff6fb133}.mandarin-card .mandarin-label{color:var(--muted);text-transform:uppercase;font-size:.72rem}.mandarin-card strong{color:#fffaf4;font-size:clamp(2rem,8vw,3.2rem);line-height:1}.mandarin-card span:not(.mandarin-label){color:#ffd166;font-size:1rem}.mandarin-card em{color:var(--ink);font-size:.95rem;font-style:normal}.moon-pearl-pop,.butterfly-pop{z-index:4;pointer-events:none;width:1px;height:1px;position:fixed}.moon-pearl,.moon-shell,.butterfly{display:block;position:absolute;top:0;left:0;transform:translate(-50%,-50%)}.moon-pearl{aspect-ratio:1;background:radial-gradient(circle at 34% 28%,#fffaf4 0 12%,#fffaf4c2 13% 24%,#0000 25%),radial-gradient(circle at 62% 72%,#b0988447,#0000 42%),radial-gradient(circle,#f1eadc,#d9cbb7 74%);border-radius:50%;width:clamp(.55rem,1.8vw,.9rem);animation:1.35s ease-out forwards pearlScatter;box-shadow:inset -.08rem -.12rem .16rem #7a604a3d,0 0 13px #f1eadc73,0 8px 18px #0000003d}.moon-shell{transform-origin:50% 100%;background:repeating-radial-gradient(at 50% 100%,#6f849147 0 .08rem,#0000 .1rem .46rem),linear-gradient(#fffaf4eb,#cadddac7 52%,#89a9b294);border-radius:52% 52% 20% 20%;width:clamp(2.6rem,8vw,4.6rem);height:clamp(1.4rem,4.4vw,2.4rem);animation:1.25s forwards shellOpen;box-shadow:inset 0 -.22rem .42rem #4f68763d,0 0 18px #b8e0db6b,0 12px 26px #0000004d}.butterfly{aspect-ratio:1.15;background:linear-gradient(116deg,#0000 55%,#bfeeb0c2 56% 62%,#0000 63%) 35% 72%/36% 72% no-repeat,linear-gradient(64deg,#0000 55%,#bfeeb0c2 56% 62%,#0000 63%) 65% 72%/36% 72% no-repeat,radial-gradient(at 50% 45%,#f8ffe5db 0 8%,#5c7654b8 9% 12%,#0000 13%),linear-gradient(90deg,#0000 48%,#4c5c46ad 49% 51%,#0000 52%);width:clamp(1.9rem,5vw,3.2rem);animation:1.7s cubic-bezier(.2,.78,.28,1) forwards butterflyFloat}.butterfly:before,.butterfly:after{content:"";background:radial-gradient(circle at 43% 36%, #fffaf494, transparent 13%), radial-gradient(circle at 62% 68%, #678b5a57, transparent 16%), linear-gradient(135deg, color-mix(in srgb, var(--butterfly-color,#c8f5bc), #fffaf4 20%), var(--butterfly-color,#c8f5bc) 62%, color-mix(in srgb, var(--butterfly-color,#c8f5bc), #5f7a54 24%));opacity:.94;border-radius:78% 24% 70% 30%;width:50%;height:58%;position:absolute;top:12%;box-shadow:inset 0 -.08rem .16rem #52704829,0 0 14px #d2ffc457}.butterfly:before{transform-origin:100% 52%;animation:.24s ease-in-out infinite alternate wingLeft;left:2%}.butterfly:after{transform-origin:0 52%;animation:.24s ease-in-out infinite alternate wingRight;right:2%;transform:scaleX(-1)}.secret-page{z-index:5;opacity:0;pointer-events:none;background:linear-gradient(#0804052e,#08040585),url(/assets/japanese-maple-tree-DRL_G47V.png) 50%/cover;place-items:center;padding:clamp(1rem,4vw,3rem);transition:opacity .45s,transform .6s;display:grid;position:fixed;inset:0;overflow:hidden;transform:scale(1.02)}.secret-page.pond-theme-moon{--pond-theme-glow:#4cc9ff38;--pond-theme-haze:#1126437a;--pond-obstacle-main:#b5deffb8;--pond-obstacle-core:#4cc9ff5c}.secret-page.pond-theme-pumpkin{--pond-theme-glow:#ff7a5947;--pond-theme-haze:#36100685;--pond-obstacle-main:#ffd166c7;--pond-obstacle-core:#ff7a596b}.secret-page.pond-theme-shadow{--pond-theme-glow:#c77dff3d;--pond-theme-haze:#1907288f;--pond-obstacle-main:#d5b2ffb8;--pond-obstacle-core:#58207e80}.experience.is-secret-open .secret-page{opacity:1;pointer-events:auto;transform:scale(1)}.experience.is-secret-open .hero,.experience.is-secret-open .controls,.experience.is-secret-open #heart-scene{opacity:0;pointer-events:none}.back-button{top:max(1rem, env(safe-area-inset-top));left:max(1rem, env(safe-area-inset-left));z-index:2;width:3rem;height:3rem;color:var(--ink);cursor:pointer;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0905067a;border:1px solid #fffaf447;border-radius:50%;place-items:center;display:grid;position:fixed}.pond-hud{top:max(1rem, env(safe-area-inset-top));right:max(1rem, env(safe-area-inset-right));z-index:3;max-width:min(36rem,100vw - 5rem);color:var(--ink);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0905067a;border:1px solid #fffaf43d;border-radius:1.4rem;flex-wrap:wrap;justify-content:flex-end;gap:.6rem;padding:.55rem;font-size:.9rem;display:flex;position:fixed}.pond-hud span{background:#fffaf41a;border-radius:999px;align-items:center;gap:.35rem;padding:.35rem .65rem;display:inline-flex}.pond-hud strong{color:#ffd166}.reward-panel{z-index:6;width:min(88vw,28rem);box-shadow:0 26px 80px #00000080, 0 0 44px var(--pond-team-glow,#ff6fb15c);text-align:center;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);opacity:0;pointer-events:none;background:radial-gradient(circle at 50% 0,#ffd1663d,#0000 12rem),#090506c7;border:1px solid #fffaf447;border-radius:1.4rem;justify-items:center;gap:.8rem;padding:1.35rem;transition:opacity .22s,transform .26s;display:grid;position:fixed;top:50%;left:50%;transform:translate(-50%,-44%)scale(.94)}.reward-panel[aria-hidden=false]{opacity:1;pointer-events:auto;transform:translate(-50%,-50%)scale(1)}.reward-panel p{color:var(--muted);margin:0;font-size:.95rem}.reward-panel strong{color:var(--ink);text-shadow:0 0 26px var(--pond-team-glow,#ff6fb180), 0 4px 20px #0000008f;font-family:Dancing Script,cursive;font-size:clamp(2.6rem,9vw,4.8rem);font-weight:700;line-height:.9}.secret-page.is-reward-open .pond-game{cursor:default}.shuffle-button{min-height:2rem;color:var(--ink);cursor:pointer;background:#ffd16626;border:1px solid #fffaf433;border-radius:999px;padding:.35rem .75rem}.shuffle-button:hover{background:#ffd1663d}.team-pill i{aspect-ratio:1;background:var(--pond-team-main,#ff6fb1);width:.8rem;box-shadow:0 0 14px var(--pond-team-glow,#ff6fb1bd);border-radius:50%}.pond-scene{pointer-events:none;background:radial-gradient(ellipse at 48% 72%, var(--pond-theme-glow,#ffbe7847), transparent 24rem), radial-gradient(ellipse at 50% 76%, #4e202c00, var(--pond-theme-haze,#09050670) 64%);position:absolute;inset:0}.pond-scene .pond-heart{aspect-ratio:1;filter:drop-shadow(0 18px 34px #00000070)drop-shadow(0 0 34px #ffbe788c);background:radial-gradient(circle at 34% 32%,#fffaf4e6,#0000 .9rem),linear-gradient(135deg,#ff7a59f5,#ff3d73d1);width:clamp(5rem,16vw,10rem);animation:4s ease-in-out infinite pondHeartFloat;position:absolute;top:57%;left:50%;transform:translate(-50%,-50%)rotate(45deg)}.pond-scene .pond-heart:before,.pond-scene .pond-heart:after{content:"";background:inherit;border-radius:50%;width:100%;height:100%;position:absolute}.pond-scene .pond-heart:before{left:-50%}.pond-scene .pond-heart:after{top:-50%}.pond-game{z-index:1;touch-action:none;cursor:none;position:absolute;inset:0;overflow:hidden}.pond-home{aspect-ratio:1;background:radial-gradient(circle,#ffd16666,#0000 62%),#0905062e;border:2px solid #ffd166c2;border-radius:50%;width:clamp(5.5rem,14vw,9.5rem);position:absolute;top:72%;left:14%;transform:translate(-50%,-50%);box-shadow:0 0 34px #ffd16657,inset 0 0 34px #ffd16638}.pond-rival-home{border-color:var(--pond-rival-main,#4cc9ff);background:radial-gradient(circle, var(--pond-rival-glow,#4cc9ff57), transparent 62%), #0905062e;box-shadow:0 0 34px var(--pond-rival-glow,#4cc9ff4d), inset 0 0 34px var(--pond-rival-glow,#4cc9ff2e);top:28%;left:86%}.pond-home:before{content:"";background:linear-gradient(#fffaf4eb,#ffd16659),#ffd1669e;border-radius:45% 45% 16% 16%;width:38%;height:52%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 24px #ffd166b8}.pond-rival-home:before{background:linear-gradient(180deg, #fffaf4e6, var(--pond-rival-glow,#4cc9ff57)), var(--pond-rival-main,#4cc9ff8f);box-shadow:0 0 24px var(--pond-rival-glow,#4cc9ffa8)}.pond-player,.pond-actor,.pond-obstacle,.pond-spirit,.pond-tail-leaf{pointer-events:none;position:absolute;top:0;left:0;transform:translate(-50%,-50%)}.pond-obstacle{z-index:2;aspect-ratio:1;border:1px solid var(--pond-obstacle-main,#ffd166b8);background:radial-gradient(circle at 35% 32%, #fffaf447, transparent 20%), radial-gradient(circle, var(--pond-obstacle-core,#ff7a5966), #05030838 68%);width:clamp(2.5rem,6.5vw,4.8rem);box-shadow:0 0 24px var(--pond-obstacle-core,#ff7a595c), inset 0 0 22px #fffaf41a;opacity:.86;border-radius:44% 56% 52% 48%;animation:2.8s ease-in-out infinite obstaclePulse}.pond-obstacle:before,.pond-obstacle:after{content:"";background:#fffaf4c7;border-radius:50%;width:14%;height:14%;position:absolute;top:27%;box-shadow:0 0 10px #fffaf4b8}.pond-obstacle:before{left:31%}.pond-obstacle:after{right:31%}.pond-player,.pond-actor{z-index:4;aspect-ratio:1;background:radial-gradient(circle at 38% 30%, #fffaf4 0 10%, transparent 11%), radial-gradient(circle at 62% 30%, #fffaf4 0 10%, transparent 11%), radial-gradient(circle at 50% 64%, #fffaf4e6 0 8%, transparent 9%), linear-gradient(135deg, var(--pond-team-main,#ff6fb1), var(--pond-team-deep,#ff2f86));width:clamp(2.2rem,6vw,3.8rem);box-shadow:0 0 24px var(--pond-team-glow,#ff6fb1bd), 0 12px 28px #00000057;border-radius:50% 50% 48% 48%}.pond-player:before,.pond-player:after,.pond-actor:before,.pond-actor:after{content:"";background:linear-gradient(135deg, var(--pond-team-leaf,#ffd1e8), var(--pond-team-deep,#ff2f86));border-radius:90% 10%;width:34%;height:38%;position:absolute;top:-16%}.pond-player:before,.pond-actor:before{left:14%;transform:rotate(-26deg)}.pond-player:after,.pond-actor:after{right:14%;transform:rotate(26deg)scaleX(-1)}.pond-actor{z-index:3;width:clamp(1.85rem,4.8vw,3rem)}.pond-teammate{opacity:.92}.pond-rival{z-index:3;filter:saturate(1.12)}.pond-spirit{z-index:2;aspect-ratio:1;filter:drop-shadow(0 0 14px #ffd166db);background:radial-gradient(circle at 40% 34%,#fffaf4 0 16%,#0000 17%),radial-gradient(circle,#ffd166 0 28%,#ff7a59 58%,#0000 62%);border-radius:50%;width:clamp(1.2rem,3vw,2rem);animation:1.9s ease-in-out infinite spiritBob}.pond-tail-leaf{z-index:3;aspect-ratio:1;background:linear-gradient(135deg, var(--pond-team-leaf,#ffd1e8), var(--pond-team-main,#ff6fb1) 55%, var(--pond-team-deep,#ff2f86));width:clamp(1rem,2.6vw,1.6rem);filter:drop-shadow(0 0 10px var(--pond-team-glow,#ffd16699));opacity:.92;border-radius:90% 10%}.pond-rival-leaf{opacity:.78}.pond-stunned{opacity:.58;filter:grayscale(.35)brightness(1.24)}.water-rings{aspect-ratio:3;border:2px solid #ffdda257;border-radius:50%;width:min(72vw,34rem);animation:3.2s ease-in-out infinite waterPulse;position:absolute;top:68%;left:50%;transform:translate(-50%,-50%)}.water-rings:before,.water-rings:after{content:"";border-radius:inherit;border:1px solid #fffaf442;position:absolute;inset:18%}.water-rings:after{border-color:#ff7a5952;inset:34%}.secret-page h2{z-index:2;letter-spacing:0;text-shadow:0 5px #ff7a5942,0 18px 60px #ffb97494,0 6px 30px #000000b8;pointer-events:none;align-self:end;margin:0 0 clamp(2rem,7vh,5rem);font-family:Dancing Script,cursive;font-size:clamp(4.5rem,15vw,13rem);font-weight:700;line-height:.8;position:relative}.icon-button{width:2.75rem;height:2.75rem;color:var(--ink);cursor:pointer;background:#fffaf41a;border:1px solid #0000;border-radius:50%;place-items:center;transition:transform .18s,background .18s,border-color .18s;display:grid}.icon-button:hover{background:#ffd16629;border-color:#ffd16673;transform:translateY(-1px)}.icon-button[aria-pressed=false]{color:#fffaf48a;background:#fffaf40f}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=680px){.hero{justify-content:flex-start;align-items:center;width:100%;padding:max(4.75rem,10vh) 1rem 7rem}h1{text-align:center;width:100%;max-width:100%;font-size:clamp(4.25rem,20vw,5.9rem);line-height:.78}.controls{right:50%;bottom:max(1rem, env(safe-area-inset-bottom));transform:translate(50%)}.pond-hud{left:max(4.6rem, env(safe-area-inset-left));right:max(.75rem, env(safe-area-inset-right));gap:.35rem;max-width:none;font-size:.78rem}.pond-hud span,.shuffle-button{padding:.3rem .5rem}.icon-button{width:3rem;height:3rem}}@keyframes alyGlow{0%,to{filter:drop-shadow(0 0 #ffd16600);transform:translate(0,0)scale(1)}45%{filter:drop-shadow(0 0 28px #ffd16657);transform:translateY(-.025em)scale(1.018)}}@keyframes pondHeartFloat{0%,to{transform:translate(-50%,-50%)rotate(45deg)translateY(0)}50%{transform:translate(-50%,-50%)rotate(45deg)translateY(-.7rem)}}@keyframes waterPulse{0%,to{opacity:.38;transform:translate(-50%,-50%)scale(.88)}50%{opacity:.84;transform:translate(-50%,-50%)scale(1.04)}}@keyframes fishJump{0%{opacity:0;transform:translate(-50%, -50%) scale(.5) rotate(calc(var(--fish-rotate,0deg) - 12deg))}22%{opacity:1}48%{transform:translate(calc(-50% + var(--fish-x,0px) * .52), calc(-50% + var(--fish-y,-54px) - 18px)) scale(1.02) rotate(calc(var(--fish-rotate,0deg) + 8deg))}72%{opacity:1;transform:translate(calc(-50% + var(--fish-x,0px)), calc(-50% + var(--fish-y,-54px))) scale(.94) rotate(calc(var(--fish-rotate,0deg) - 6deg))}to{opacity:0;transform:translate(calc(-50% + var(--fish-x,0px) * 1.08), calc(-50% + var(--fish-y,-54px) + 30px)) scale(.68) rotate(calc(var(--fish-rotate,0deg) - 18deg))}}@keyframes bubbleRise{0%{opacity:0;transform:translate(-50%,-50%)scale(.4)}18%{opacity:.9}to{opacity:0;transform:translate(calc(-50% + var(--bubble-x,0px) + 8px), calc(-50% + var(--bubble-y,-82px))) scale(1.05)}}@keyframes wordPop{0%{opacity:0;transform:translate(-50%,-98%)scale(.86)}12%,82%{opacity:1;transform:translate(-50%,-112%)scale(1)}to{opacity:0;transform:translate(-50%,-126%)scale(.92)}}@keyframes pearlScatter{0%{opacity:0;transform:translate(-50%,-50%)scale(.35)rotate(0)}16%{opacity:1}72%{opacity:1;transform:translate(calc(-50% + var(--pearl-x,0px)), calc(-50% + var(--pearl-y,-50px))) scale(1) rotate(18deg)}to{opacity:0;transform:translate(calc(-50% + var(--pearl-x,0px) * .92), calc(-50% + var(--pearl-y,-50px) + 24px)) scale(.72) rotate(42deg)}}@keyframes shellOpen{0%{opacity:0;transform:translate(-50%,-50%)scale(.62)rotateX(72deg)}18%,76%{opacity:1;transform:translate(-50%,-50%)scale(1)rotateX(0)}to{opacity:0;transform:translate(-50%,-64%)scale(.82)rotateX(54deg)}}@keyframes butterflyFloat{0%{opacity:0;transform:translate(-50%, -50%) scale(.38) rotate(var(--butterfly-rotate,0deg))}14%{opacity:1}82%{opacity:1;transform:translate(calc(-50% + var(--butterfly-x,0px)), calc(-50% + var(--butterfly-y,-110px))) scale(1) rotate(calc(var(--butterfly-rotate,0deg) + 10deg))}to{opacity:0;transform:translate(calc(-50% + var(--butterfly-x,0px) + 22px), calc(-50% + var(--butterfly-y,-110px) - 32px)) scale(.78) rotate(calc(var(--butterfly-rotate,0deg) - 14deg))}}@keyframes wingLeft{0%{transform:rotateY(22deg)rotate(-16deg)}to{transform:rotateY(68deg)rotate(12deg)}}@keyframes wingRight{0%{transform:scaleX(-1)rotateY(22deg)rotate(-16deg)}to{transform:scaleX(-1)rotateY(68deg)rotate(12deg)}}@keyframes obstaclePulse{0%,to{opacity:.72;scale:.94}50%{opacity:.92;scale:1.06}}@keyframes spiritBob{0%,to{translate:0 -.25rem;scale:.92}50%{translate:0 .25rem;scale:1.08}}@media (prefers-reduced-motion:reduce){h1,.icon-button,.pond-heart,.water-rings,.pond-spirit{transition:none;animation:none}}
