:root{--ink:#4a2f2f;--red:#e8453c;--gold:#ffc93c;--green:#4fbf5f;--cream:#fffaf0;--font:"PingFang SC", "HarmonyOS Sans SC", "MiSans", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", sans-serif;--kai:"Kaiti SC", "STKaiti", "KaiTi", "Songti SC", serif}*{box-sizing:border-box}html,body,#root{background:#1b1412;height:100%;margin:0;overflow:hidden}body{font-family:var(--font);color:var(--ink);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;touch-action:none;overscroll-behavior:none}button{color:inherit;font-family:inherit}.viewport{transition:background .4s;position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}.stage{transform-origin:0 0;position:absolute;top:0;left:0}.scene{position:absolute;top:0;bottom:0;left:0;right:0}.overlay:before,.splash:before,.scene-book:before,.scene-parent:before{content:"";z-index:-1;background:var(--bg);position:absolute;top:-700px;bottom:-700px;left:-1000px;right:-1000px}.overlay,.splash,.scene-book,.scene-parent{isolation:isolate}.backdrop{width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0}.place{position:absolute}.place>svg,.place>div>svg{width:100%;height:100%;display:block;overflow:visible}.drag{cursor:grab;touch-action:none;outline-offset:6px;background:0 0;border:0;margin:0;padding:0;position:absolute;top:0;left:0}.drag>svg{width:100%;height:100%;transition:transform .18s,filter .18s;display:block;overflow:visible}.drag.dragging{cursor:grabbing}.drag.lifted>svg{filter:drop-shadow(0 18px 10px #00000040);transform:scale(1.14)}.drag.gliding{transition:transform .38s cubic-bezier(.3,1.35,.6,1)}.drag:disabled{cursor:default}.drag:focus-visible{outline:6px dashed #2f6fb3}.hit:focus-visible{outline:6px dashed #2f6fb3}.shop:focus-visible{outline:6px dashed #2f6fb3}.round-btn:focus-visible{outline:6px dashed #2f6fb3}.sprite{pointer-events:none;transition:transform .55s cubic-bezier(.3,1.25,.6,1);position:absolute;top:0;left:0}.sprite.slow{transition-duration:1.1s}.sprite>svg{width:100%;height:100%;display:block;overflow:visible}.hit{cursor:pointer;background:0 0;border:0;width:100%;height:100%;padding:0;display:block}.hit>svg{width:100%;height:100%;display:block;overflow:visible}.hit:disabled{cursor:default}.bob>svg{animation:.5s ease-in-out infinite alternate bob}.dip-swirl>svg{animation:1.8s ease-in-out dip}.shine>svg{animation:1.2s ease-in-out 2 shine}.wiggle-soft{animation:2.4s ease-in-out infinite wiggle}@keyframes bob{0%{transform:translateY(-6px)rotate(-8deg)}to{transform:translateY(8px)rotate(8deg)}}@keyframes dip{0%{transform:translateY(-120px)}25%{transform:translateY(40px)rotate(0)}45%{transform:translateY(40px)rotate(-12deg)}65%{transform:translateY(40px)rotate(12deg)}85%{transform:translateY(40px)rotate(0)}to{transform:translateY(-80px)}}@keyframes shine{50%{filter:brightness(1.25)drop-shadow(0 0 20px #fff5b0)}}@keyframes wiggle{0%,80%,to{transform:rotate(0)}85%{transform:rotate(-4deg)}90%{transform:rotate(4deg)}95%{transform:rotate(-2deg)}}.mascot-btn{cursor:pointer;background:0 0;border:0;width:100%;height:100%;padding:0}.rabbit{width:100%;height:100%;display:block;overflow:visible}.rb-body{transform-origin:120px 292px;animation:2.6s ease-in-out infinite rb-bob}.rb-ear-l{transform-origin:96px 110px;animation:3.2s ease-in-out infinite ear-l}.rb-ear-r{transform-origin:144px 110px;animation:3.2s ease-in-out infinite ear-r}.rb-eyes{transform-origin:120px 138px;animation:4.2s infinite blink}.rb-arm{transition:transform .3s cubic-bezier(.3,1.4,.6,1)}.rb-arm-l{transform-origin:76px 208px}.rb-arm-r{transform-origin:164px 208px}.rb-mouth-open{transform-origin:120px 166px;display:none}.talking .rb-mouth-open{animation:.22s ease-in-out infinite alternate talk;display:inline}.talking .rb-mouth-closed{display:none}.mood-cheer .rb-body{animation:.55s ease-in-out infinite rb-jump}.mood-cheer .rb-arm-l{transform:rotate(125deg)}.mood-cheer .rb-arm-r{transform:rotate(-125deg)}.mood-wave .rb-arm-r{animation:.45s ease-in-out infinite alternate wave}.mood-wow .rb-body{animation:.5s ease-out wow}.mood-wow .rb-arm-l{transform:rotate(60deg)}.mood-wow .rb-arm-r{transform:rotate(-60deg)}@keyframes rb-bob{50%{transform:translateY(-5px)scale(1.01,.99)}}@keyframes rb-jump{0%,to{transform:translateY(0)scale(1.04,.96)}50%{transform:translateY(-34px)scale(.97,1.03)}}@keyframes wow{30%{transform:scale(1.1,.9)}60%{transform:scale(.95,1.06)translateY(-10px)}}@keyframes ear-l{0%,70%,to{transform:rotate(0)}80%{transform:rotate(-10deg)}90%{transform:rotate(4deg)}}@keyframes ear-r{0%,40%,60%,to{transform:rotate(0)}50%{transform:rotate(10deg)}}@keyframes blink{0%,93%,to{transform:scaleY(1)}96%{transform:scaleY(.1)}}@keyframes talk{0%{transform:scaleY(1)}to{transform:scaleY(.45)}}@keyframes wave{0%{transform:rotate(-150deg)}to{transform:rotate(-105deg)}}.bubble{z-index:70;border:6px solid var(--ink);pointer-events:none;background:#fff;border-radius:40px;max-width:580px;padding:18px 30px;font-size:38px;font-weight:800;line-height:1.35;animation:.3s cubic-bezier(.3,1.6,.6,1) pop-in;position:absolute;box-shadow:0 8px #0000001f}.bubble:after{content:"";border-right:6px solid var(--ink);border-bottom:6px solid var(--ink);background:#fff;width:36px;height:36px;position:absolute;bottom:-26px}.bubble-right{transform-origin:0 100%}.bubble-right:after{left:34px;transform:rotate(45deg)skew(12deg,12deg)}.bubble-left{transform-origin:100% 100%}.bubble-left:after{right:34px;transform:rotate(45deg)skew(12deg,12deg)}@keyframes pop-in{0%{opacity:0;transform:scale(.4)}}.round-btn{border:6px solid var(--ink);cursor:pointer;background:#fff;border-radius:50%;justify-content:center;align-items:center;width:100%;height:100%;padding:0;transition:transform .1s,box-shadow .1s;display:flex;position:relative;box-shadow:0 8px #4a2f2f59}.round-btn>svg{width:56%;height:56%}.round-btn:active{transform:translateY(5px);box-shadow:0 3px #4a2f2f59}.round-btn.tone-green{background:var(--green);color:#fff}.round-btn.tone-gold{background:var(--gold)}.round-btn.tone-red{background:var(--red);color:#fff}.pulse{animation:1.1s ease-in-out infinite pulse}@keyframes pulse{50%{transform:scale(1.1)}}.count-chip{border:4px solid var(--ink);background:var(--red);color:#fff;border-radius:20px;padding:2px 12px;font-size:24px;font-weight:900;position:absolute;bottom:-12px;right:-18px}.progress{z-index:60;background:#4a2f2f47;border-radius:40px;gap:10px;padding:10px 20px;display:flex;position:absolute;top:30px;left:50%;transform:translate(-50%)}.progress span{width:58px;height:58px;display:block}.progress span.now{animation:1.2s ease-in-out infinite pulse}.progress svg{width:100%;height:100%}.hint-hand{z-index:650;pointer-events:none;filter:drop-shadow(0 6px 4px #00000040);width:100px;height:110px;margin:-6px 0 0 -38px;position:absolute;top:0;left:0}.hint-hand svg{width:100%;height:100%}.hint-drag{animation:2.4s ease-in-out infinite hint-drag}.hint-tap{animation:1.1s ease-in-out infinite hint-tap}@keyframes hint-drag{0%{transform:translate(var(--fx), var(--fy)) scale(1);opacity:0}12%{transform:translate(var(--fx), var(--fy)) scale(1);opacity:1}22%{transform:translate(var(--fx), var(--fy)) scale(.85)}70%{transform:translate(var(--tx), var(--ty)) scale(.85);opacity:1}82%{transform:translate(var(--tx), var(--ty)) scale(1);opacity:1}to{transform:translate(var(--tx), var(--ty)) scale(1);opacity:0}}@keyframes hint-tap{0%,to{transform:translate(var(--fx), var(--fy)) scale(1)}50%{transform:translate(var(--fx), var(--fy)) scale(.82)}}.overlay{z-index:800;--bg:#28140a80;justify-content:center;align-items:center;animation:.25s fade-in;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}@keyframes fade-in{0%{opacity:0}}.fact-card{background:var(--cream);border:10px solid #c9302a;border-radius:44px;grid-template-columns:440px 1fr;gap:44px;width:1220px;height:640px;padding:64px 56px 50px;animation:.45s cubic-bezier(.3,1.4,.6,1) card-in;display:grid;position:relative;box-shadow:0 0 0 10px #ffd34d,0 30px 60px #00000059}@keyframes card-in{0%{opacity:0;transform:scale(.3)rotate(-6deg)}}.fact-badge{border:6px solid var(--ink);color:#ffd34d;font-family:var(--kai);letter-spacing:6px;white-space:nowrap;background:#c9302a;border-radius:34px;padding:8px 40px;font-size:40px;font-weight:900;position:absolute;top:-40px;left:50%;transform:translate(-50%)}.fact-art{background:#ffe9c7;border-radius:32px;justify-content:center;align-items:center;padding:20px;display:flex;overflow:hidden}.fact-art>svg,.fact-art>div>svg{width:100%;height:100%;overflow:visible}.fact-text h2{color:#c9302a;font-family:var(--kai);margin:6px 0 22px;font-size:70px;line-height:1.1}.fact-text p{margin:0 0 14px;font-size:37px;font-weight:700;line-height:1.5}.fact-ask{background:#fff1c2;border-radius:20px;margin-top:22px;padding:14px 20px;font-size:27px;line-height:1.45}.fact-ask b{background:var(--gold);border-radius:10px;margin-right:12px;padding:0 12px;display:inline-block}.fact-say,.fact-next{border:7px solid var(--ink);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;box-shadow:0 8px #4a2f2f59}.fact-say{background:#fff;width:104px;height:104px;bottom:-46px;left:40px}.fact-say svg{width:58%}.fact-next{background:var(--green);color:#fff;width:160px;height:160px;bottom:-50px;right:-50px}.fact-next svg{width:60%}.celebrate{--bg:radial-gradient(circle 1100px at 50% 47%, #ffdc78f2, #e8453ce0 75%)}.rays{background:repeating-conic-gradient(#ffffff38 0 10deg, transparent 10deg 20deg);width:1800px;height:1800px;margin:-900px 0 0 -900px;animation:24s linear infinite spin;position:absolute;top:42%;left:50%}@keyframes spin{to{transform:rotate(360deg)}}.sticker-big{width:360px;height:360px;animation:.9s cubic-bezier(.3,1.5,.6,1) sticker-in;position:absolute;top:150px;left:620px}@keyframes sticker-in{0%{transform:scale(0)rotate(-360deg)}}.sticker-name{color:#fff;font-family:var(--kai);text-align:center;-webkit-text-stroke:3px var(--ink);paint-order:stroke fill;text-shadow:0 6px 0 var(--ink);font-size:76px;font-weight:900;position:absolute;top:540px;left:0;right:0}.sticker{border:14px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:100%;height:100%;padding:16%;display:flex;box-shadow:0 10px #0000002e,inset 0 0 0 5px #4a2f2f26}.sticker svg{width:100%;height:100%;overflow:visible}.sticker.dim{filter:grayscale()brightness(1.1);opacity:.35}.shop{cursor:pointer;transform-origin:50% 100%;background:0 0;border:0;width:100%;height:100%;padding:0;transition:transform .15s;display:block}.shop>svg{width:100%;height:100%;display:block;overflow:visible}.shop:hover{transform:scale(1.03)}.shop.going{animation:.6s cubic-bezier(.3,1.5,.6,1) shop-go}@keyframes shop-go{40%{transform:scale(1.12,.9)}70%{transform:scale(.95,1.08)}}.shop-badge{border:6px solid var(--ink);background:#fff;border-radius:50%;width:116px;height:116px;margin-left:-58px;padding:14px;animation:2s ease-in-out infinite badge-bob;position:absolute;top:-86px;left:50%;box-shadow:0 6px #0000002e}.shop:nth-child(odd) .shop-badge{animation-delay:-1s}.shop-badge svg{width:100%;height:100%;display:block;overflow:visible}.shop-star{width:58px;height:58px;position:absolute;top:-20px;right:-22px}@keyframes badge-bob{50%{transform:translateY(-10px)}}.title-board{background:linear-gradient(#a8703c,#8a5a2c);border:8px solid #5b3a1e;border-radius:18px;justify-content:center;align-items:center;width:100%;height:100%;display:flex;box-shadow:0 8px #0003,inset 0 0 0 5px #d9a35e}.title-board span{color:#ffd34d;font-family:var(--kai);letter-spacing:4px;white-space:nowrap;text-shadow:0 4px #5b3a1e;font-size:58px;font-weight:900}.cloud-track{z-index:1;pointer-events:none;animation:linear infinite drift;position:absolute;left:0}.cloud-track.c1{animation-duration:70s;animation-delay:-20s;top:120px}.cloud-track.c2{animation-duration:95s;animation-delay:-60s;top:220px}.cloud-track.c3{animation-duration:120s;animation-delay:-100s;top:60px}@keyframes drift{0%{transform:translate(-300px)}to{transform:translate(1700px)}}.pigeons{cursor:pointer;background:0 0;border:0;width:100%;height:100%;padding:0;position:relative}.pigeon{width:80px;height:50px;animation:2.2s ease-in-out infinite hover-fly;position:absolute}.pigeon svg{width:100%;height:100%;overflow:visible}.pigeon .wing{transform-origin:40px 26px;animation:.4s ease-in-out infinite alternate flap}.pigeon.p0{top:40px;left:40px}.pigeon.p1{animation-delay:-.6s;top:10px;left:150px}.pigeon.p2{animation-delay:-1.2s;top:60px;left:250px}.pigeon.p3{animation-delay:-1.7s;top:20px;left:330px}.pigeons.up .pigeon{animation:3s ease-in forwards fly-away}@keyframes hover-fly{50%{transform:translate(12px,-10px)}}@keyframes flap{to{transform:scaleY(-.7)}}@keyframes fly-away{60%{opacity:1;transform:translate(500px,-260px)}61%{opacity:0;transform:translate(-900px,-100px)}to{opacity:1;transform:translate(0)}}.cat{cursor:pointer;background:0 0;border:0;width:100%;height:100%;padding:0}.cat svg{width:100%;height:100%;overflow:visible}.cat .cat-tail{transform-origin:104px 110px;animation:2s ease-in-out infinite alternate tail}.cat.awake svg{animation:.5s ease-out wow}@keyframes tail{to{transform:rotate(-18deg)}}.sway{animation:3s ease-in-out infinite alternate sway}.lantern{transform-box:fill-box;transform-origin:50% 0;animation:3.4s ease-in-out infinite alternate sway}@keyframes sway{0%{rotate:-4deg}to{rotate:4deg}}.steam{animation:2s ease-in-out infinite steam}@keyframes steam{0%{opacity:0;transform:translateY(10px)}50%{opacity:.8}to{opacity:0;transform:translateY(-20px)}}.stick-stand{border:6px solid var(--ink);background:#8a5a2c;border-radius:14px;width:100%;height:100%}.bowl{border:6px solid var(--ink);background:linear-gradient(#5aa0d8,#3f7fb6);border-radius:0 0 150px 150px/0 0 90px 90px;width:100%;height:100%}.ripple ellipse{opacity:0}.ripple.on ellipse{transform-box:fill-box;transform-origin:50%;animation:.6s ease-out ripple}@keyframes ripple{0%{opacity:1;transform:scale(.4)}to{opacity:0;transform:scale(1.3)}}.fire{transition:transform .4s cubic-bezier(.3,1.5,.6,1),opacity .4s;animation:.3s ease-in-out infinite alternate flicker}@keyframes flicker{to{filter:brightness(1.2)}}.boil circle{transform-box:fill-box;transform-origin:50%;animation:.9s ease-in-out infinite boil}.boil circle:nth-child(2){animation-delay:-.3s}.boil circle:nth-child(3){animation-delay:-.6s}@keyframes boil{0%{opacity:0;transform:scale(.2)}50%{opacity:1}to{opacity:0;transform:scale(1.4)translateY(-6px)}}.fx-layer{z-index:900;pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}.fx{animation:1.1s cubic-bezier(.2,.7,.4,1) forwards fx-fly;position:absolute;transform:translate(-50%,-50%)}.fx>svg,.fx>div{display:block;transform:translate(-50%,-50%)}.fx-confetti{animation:1.7s cubic-bezier(.2,.6,.5,1) forwards fx-confetti}.fx-bubbles{animation:1.2s ease-out forwards fx-bubble}@keyframes fx-fly{0%{opacity:1;transform:translate(0)scale(.3)}70%{opacity:1}to{transform:translate(var(--dx), var(--dy)) rotate(var(--rot)) scale(1);opacity:0}}@keyframes fx-confetti{0%{opacity:1;transform:translate(0)rotate(0)}35%{transform:translate(calc(var(--dx) * .7), var(--dy)) rotate(calc(var(--rot) * .4))}85%{opacity:1}to{transform:translate(var(--dx), calc(var(--dy) + 620px)) rotate(var(--rot));opacity:0}}@keyframes fx-bubble{0%{opacity:.9;transform:translate(0)scale(.3)}to{transform:translate(calc(var(--dx) * .6), var(--dy)) scale(1.1);opacity:0}}.scene-book{--bg:#f6d9a8 repeating-linear-gradient(45deg, transparent 0 30px, #ffffff2e 30px 60px)}.book{background:#fff8ea;border:14px solid #b9783f;border-radius:44px;position:absolute;top:40px;bottom:40px;left:60px;right:60px;box-shadow:0 16px #00000026}.book:before{content:"";border-left:6px dashed #e3c79a;position:absolute;top:0;bottom:0;left:50%}.book-title{border:6px solid var(--ink);color:#ffd34d;font-family:var(--kai);white-space:nowrap;background:#c9302a;border-radius:0 0 30px 30px;padding:8px 46px;font-size:52px;font-weight:900;position:absolute;top:-12px;left:50%;transform:translate(-50%)}.book-slot{z-index:2;cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:center;width:300px;height:340px;padding:20px 20px 0;display:flex;position:absolute}.book-slot .sticker{width:250px;height:250px;transition:transform .2s}.book-slot:active .sticker{transform:scale(.92)rotate(-4deg)}.slot-name{margin-top:10px;font-size:40px;font-weight:900}.scene-parent{--bg:#f3efe6}.gate{text-align:center;background:#fff;border-radius:36px;width:760px;padding:50px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 20px 50px #00000026}.gate h2{margin:0 0 8px;font-size:52px}.gate p{margin:0;font-size:32px}.gate-q{margin:30px 0;font-size:96px;font-weight:900}.gate-choices{justify-content:center;gap:24px;display:flex}.gate-choices button{border:5px solid var(--ink);cursor:pointer;background:#fff6e0;border-radius:24px;width:130px;height:110px;font-size:54px;font-weight:900}.gate-wrong{color:#c9302a;margin-top:20px!important}.panel{-webkit-user-select:text;user-select:text;background:#fff;border-radius:30px;flex-direction:column;display:flex;position:absolute;top:40px;bottom:40px;left:60px;right:150px;overflow:hidden;box-shadow:0 20px 50px #0000001f}.panel-tabs{background:#fbf4e6;border-bottom:3px solid #eadcc0;gap:8px;padding:18px 24px 0;display:flex}.panel-tabs button{cursor:pointer;background:0 0;border:0;border-radius:20px 20px 0 0;padding:16px 34px;font-size:32px;font-weight:700}.panel-tabs button.on{color:#c9302a;background:#fff}.panel-body{touch-action:pan-y;flex:1;padding:30px 50px 50px;font-size:30px;line-height:1.65;overflow-y:auto}.panel-body h3{margin:0 0 16px;font-size:44px}.panel-body h4{margin:24px 0 6px;font-size:34px}.panel-body h4 small{color:#8a7468;margin-left:16px;font-size:24px;font-weight:400}.panel-body p{margin:0 0 18px}.panel-body ul{margin:0;padding-left:1.2em}.panel-body li b{color:#2f7a5c;margin-right:8px}.muted{color:#8a7468;font-size:26px}.warn{background:#fff1c2;border-radius:14px;padding:12px 18px;font-size:26px}.sources li{margin-bottom:16px}.sources a{color:#2f6fb3;font-weight:700}.sources span{color:#6b5a50;font-size:25px;display:block}.toggle{cursor:pointer;border-bottom:2px solid #f0e6d4;justify-content:space-between;align-items:center;max-width:820px;padding:18px 0;display:flex;position:relative}.toggle input{opacity:0;position:absolute}.toggle i{background:#d8cfc4;border-radius:30px;width:96px;height:52px;transition:background .2s;position:relative}.toggle i:after{content:"";background:#fff;border-radius:50%;width:40px;height:40px;transition:transform .2s;position:absolute;top:6px;left:6px}.toggle input:checked+i{background:var(--green)}.toggle input:checked+i:after{transform:translate(44px)}.toggle input:focus-visible+i{outline-offset:4px;outline:4px dashed #2f6fb3}.danger{align-items:center;gap:20px;margin-top:40px;display:flex}.danger button{cursor:pointer;background:#fff;border:3px solid #c9b8a6;border-radius:16px;padding:14px 28px;font-size:28px}.danger .btn-danger{color:#fff;background:#c9302a;border-color:#c9302a}.splash{z-index:1000;--bg:radial-gradient(circle 1300px at 50% 42%, #fff6c9, #8fd3f4 45%, #5fb3e0)}.splash-sun{background:repeating-conic-gradient(#ffffff40 0 8deg, transparent 8deg 16deg);width:1600px;height:1600px;margin:-800px 0 0 -800px;animation:40s linear infinite spin;position:absolute;top:34%;left:50%}.splash-title{justify-content:center;gap:18px;display:flex;position:absolute;top:110px;left:0;right:0}.splash-title span{border:8px solid var(--ink);background:var(--red);color:#ffd34d;width:150px;height:150px;font-family:var(--kai);border-radius:40px;justify-content:center;align-items:center;font-size:100px;font-weight:900;animation:2.4s ease-in-out infinite letter;display:flex;box-shadow:0 10px #4a2f2f59}.splash-title span:nth-child(2){background:#f39c3d;animation-delay:.15s}.splash-title span:nth-child(3){background:#4fbf5f;animation-delay:.3s}.splash-title span:nth-child(4){background:#2f8fd8;animation-delay:.45s}.splash-title span:nth-child(5){background:#8a5ccf;animation-delay:.6s}@keyframes letter{0%,60%,to{transform:translateY(0)rotate(0)}70%{transform:translateY(-24px)rotate(-6deg)}80%{transform:translateY(0)rotate(4deg)}}.splash-sub{color:#fff;text-align:center;-webkit-text-stroke:2px var(--ink);paint-order:stroke fill;text-shadow:0 5px 0 var(--ink);font-size:50px;font-weight:900;position:absolute;top:300px;left:0;right:0}.splash-rabbit{width:300px;height:375px;position:absolute;top:420px;left:290px}.play-btn{border:10px solid var(--ink);background:var(--green);cursor:pointer;border-radius:50%;width:220px;height:220px;padding:0;animation:1.2s ease-in-out infinite pulse;position:absolute;top:480px;left:700px;box-shadow:0 14px #4a2f2f66}.play-btn svg{width:70%;height:70%}.rotate-hint{z-index:9999;color:#fff;text-align:center;background:#1e3250eb;flex-direction:column;justify-content:center;align-items:center;gap:24px;padding:24px;font-size:20px;font-weight:700;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.rotate-phone{border:6px solid #fff;border-radius:14px;width:70px;height:120px;animation:2s ease-in-out infinite rotate-phone}@keyframes rotate-phone{0%,20%{transform:rotate(0)}60%,to{transform:rotate(-90deg)}}.rotate-hint button{color:#fff;background:0 0;border:2px solid #fff;border-radius:20px;padding:10px 24px;font-size:16px}@media (prefers-reduced-motion:reduce){*,:before,:after{animation-duration:.01ms!important;animation-iteration-count:1!important}}.mood-pose1 .rb-body{animation:none;transform:rotate(-6deg)}.mood-pose1 .rb-arm-l{transform:rotate(150deg)}.mood-pose1 .rb-arm-r{transform:rotate(-50deg)}.mood-pose2 .rb-body{animation:none;transform:translateY(-12px)scale(1.04)}.mood-pose2 .rb-arm-l{transform:rotate(80deg)}.mood-pose2 .rb-arm-r{transform:rotate(-80deg)}.mood-pose3 .rb-body{animation:none;transform:rotate(6deg)}.mood-pose3 .rb-arm-l{transform:rotate(50deg)}.mood-pose3 .rb-arm-r{transform:rotate(-150deg)}.rb-body{transition:transform .18s cubic-bezier(.3,1.6,.6,1)}.pops{z-index:700;pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0}.pop-text{font-family:var(--kai);-webkit-text-stroke:4px var(--ink);paint-order:stroke fill;font-size:96px;font-weight:900;animation:1s cubic-bezier(.2,1.4,.5,1) forwards pop-up;position:absolute;transform:translate(-50%,-50%)}@keyframes pop-up{0%{opacity:1;transform:translate(-50%,-50%)scale(.2)rotate(-10deg)}40%{transform:translate(-50%,-110%)scale(1.15)rotate(4deg)}to{opacity:0;transform:translate(-50%,-160%)scale(1)}}.curtain-l,.curtain-r{transition:transform 1.2s cubic-bezier(.5,0,.3,1)}.curtain-l:not(.open){transform:translate(240px)}.curtain-r:not(.open){transform:translate(-240px)}.mask-card{border:7px solid var(--ink);cursor:pointer;background:#fff8e6;border-radius:30px;flex-direction:column;align-items:center;width:100%;height:100%;padding:18px 18px 0;transition:transform .15s;display:flex;box-shadow:0 10px #00000040}.mask-card:hover{transform:translateY(-8px)rotate(-2deg)}.mask-card svg{width:100%;height:210px}.mask-card span{margin-top:6px;font-size:38px;font-weight:900}.region.clickable:not(.on){cursor:pointer}.region.clickable:not(.on):hover path{fill-opacity:.4}.region.on path{transform-box:fill-box;transform-origin:50%;animation:.35s ease-out paint-in}.region.wrong path{animation:.4s shake}@keyframes paint-in{0%{transform:scale(.85)}}@keyframes shake{25%{transform:translate(-8px)}75%{transform:translate(8px)}}.paint-pot{cursor:pointer;background:0 0;border:0;width:100%;height:100%;padding:0;transition:transform .2s cubic-bezier(.3,1.6,.6,1);display:block}.paint-pot svg{width:100%;height:100%;overflow:visible}.paint-pot.on{transform:translateY(-26px)scale(1.12)}.paint-pot.nudge{animation:.5s ease-in-out 2 nudge}@keyframes nudge{50%{transform:translateY(-30px)rotate(-8deg)}}.instrument{cursor:pointer;transform-origin:50% 100%;background:0 0;border:0;width:100%;height:100%;padding:0;display:block}.instrument svg{width:100%;height:100%;overflow:visible}.instrument.hit-anim{animation:.25s ease-out hit}@keyframes hit{40%{transform:scale(1.12,.9)}}.audience{width:100%;height:100%;display:block}.audience.clap .fan{animation:.35s ease-in-out infinite alternate clap-jump}@keyframes clap-jump{to{transform:translateY(-16px)}}.beat-dots{z-index:40;background:#00000059;border-radius:40px;gap:16px;padding:12px 22px;display:flex;position:absolute;bottom:40px;left:50%;transform:translate(-50%)}.beat-dots span{border:4px solid #fff;border-radius:50%;width:34px;height:34px;transition:background .2s,transform .2s}.beat-dots span.on{background:var(--gold);transform:scale(1.2)}.swatch{width:100%;height:100%;box-shadow:0 0 0 6px var(--ink), 0 10px 0 6px #0003;cursor:pointer;border:8px solid #fff;border-radius:50%;transition:transform .15s}.swatch:active{transform:scale(.9)}.stamp{border:6px solid var(--ink);cursor:pointer;background:#fff;border-radius:30px;width:100%;height:100%;padding:14px;transition:transform .15s;box-shadow:0 8px #0003}.stamp svg{width:100%;height:100%;overflow:visible}.stamp.on{background:#fff1c2;transform:scale(1.08)}.kite-line{z-index:9;pointer-events:none;width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0}.flying-kite{z-index:10;pointer-events:none;will-change:transform;width:216px;height:187px;position:absolute;top:0;left:0}.flying-kite svg{width:100%;height:100%;overflow:visible}.bird{z-index:11;pointer-events:none;will-change:transform;width:120px;height:80px;position:absolute;top:0;left:0}.bird svg{width:100%;height:100%;transform:scaleX(-1)}.bird .wing{transform-origin:56px 44px;animation:.25s ease-in-out infinite alternate flap}.bird.caught{animation:1s ease-out forwards bird-happy}@keyframes bird-happy{to{opacity:0;margin-top:-200px;margin-left:120px}}.fly-pad{z-index:25;cursor:ns-resize;touch-action:none;position:absolute;top:140px;bottom:0;left:0;right:0}.fly-pad:focus-visible{outline-offset:-12px;outline:6px dashed #2f6fb3}.catch-count{z-index:60;background:#fff9;border-radius:40px;gap:6px;padding:8px 16px;display:flex;position:absolute;top:30px;right:40px}.catch-count span{opacity:.25;filter:grayscale();width:62px;height:42px;transition:opacity .3s,transform .3s}.catch-count span.on{opacity:1;filter:none;transform:scale(1.15)}.catch-count svg{width:100%;height:100%}.swatch.picked{box-shadow:0 0 0 6px var(--ink), 0 0 0 14px #fff6, 0 10px 0 6px #0003;transform:scale(1.1)}.pedestal{border:6px solid var(--ink);background:linear-gradient(#d9c7a6,#b9a27c);border-radius:50%;width:100%;height:100%;transition:opacity .4s}.pedestal.hide{opacity:0}.mount-in>svg{animation:.6s cubic-bezier(.3,1.4,.6,1) mount-in}@keyframes mount-in{0%{transform:translate(600px)}}.tuer>svg{filter:drop-shadow(0 12px 6px #00000040)}.flag-in{animation:.4s cubic-bezier(.3,1.6,.6,1) flag-in}@keyframes flag-in{0%{opacity:0;scale:.4}}.camera-btn svg{filter:drop-shadow(0 8px #00000040)}.flash{z-index:750;background:#fff;animation:.4s ease-out forwards flash;position:absolute;top:0;bottom:0;left:0;right:0}@keyframes flash{to{opacity:0}}.polaroid{z-index:740;border:6px solid var(--ink);background:#fff;border-radius:12px;flex-direction:column;align-items:center;width:480px;height:640px;padding:30px 30px 20px;animation:.8s cubic-bezier(.3,1.4,.6,1) forwards polaroid;display:flex;position:absolute;top:120px;left:560px;box-shadow:0 30px 60px #00000073}.polaroid svg{background:linear-gradient(#2a3570,#4a4f8f);border-radius:6px;width:100%;height:520px}.polaroid span{font-family:var(--kai);margin-top:8px;font-size:42px;font-weight:900}@keyframes polaroid{0%{opacity:0;transform:scale(.2)rotate(-30deg)}to{transform:rotate(-4deg)}}.twinkle{animation:2s ease-in-out infinite alternate twinkle}@keyframes twinkle{to{opacity:.2}}.stamp svg.crop{overflow:hidden}.bean-cell{transform-box:fill-box;transform-origin:50%;animation:.25s ease-out paint-in}.rolling-up>svg{transform-origin:50% 0;animation:.9s ease-in forwards roll-up}@keyframes roll-up{to{opacity:0;transform:scaleY(.2)translateY(-60px)}}.log-appear>svg{animation:.9s ease-out log-appear}@keyframes log-appear{0%,60%{opacity:0;transform:scaleY(.4)}}.log-roll>svg{animation:.45s ease-in-out infinite alternate log-roll}@keyframes log-roll{0%{transform:translate(-30px)rotate(-3deg)}to{transform:translate(30px)rotate(3deg)}}.donkey-pop>svg{animation:.6s cubic-bezier(.3,1.6,.6,1) donkey-pop}.donkey .roll{transform-origin:160px 140px;animation:.7s ease-in-out infinite alternate donkey-roll}.donkey .dust circle{transform-box:fill-box;transform-origin:50%;animation:1s ease-in-out infinite alternate dust}.donkey .dust circle:nth-child(odd){animation-delay:-.5s}@keyframes donkey-pop{0%{transform:scale(0)translateY(200px)}}@keyframes donkey-roll{0%{transform:rotate(-14deg)}to{transform:rotate(14deg)translate(10px)}}@keyframes dust{to{opacity:.5;transform:scale(1.25)translateY(-8px)}}.cut-line{cursor:pointer;background:repeating-linear-gradient(#4a2f2fbf 0 18px,#0000 18px 32px) 50%/8px 100% no-repeat;border:0;width:100%;height:100%}.cut-line:hover{background-color:#ffffff40;border-radius:20px}
