:root{--cream:#fff3dd;--cream-deep:#ffe7bd;--paper:#fffdf7;--ink:#3b2b25;--ink-soft:#7a6457;--tomato:#ff5a4e;--tomato-deep:#d63b30;--mustard:#ffc23d;--mustard-deep:#e09a00;--teal:#2bb3a3;--teal-deep:#15806f;--sky:#5fb7ef;--pink:#ff8fb5;--grape:#9b7ede;--line:3px solid var(--ink);--r-lg:26px;--r-md:18px;--shadow-sticker:0 5px 0 var(--ink);--shadow-sticker-sm:0 3px 0 var(--ink);--font-display:var(--font-baloo),var(--font-noto),sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}body,html{margin:0;padding:0;height:100%;overscroll-behavior:none}body{font-family:var(--font-display);color:var(--ink);background:var(--cream);background-image:radial-gradient(var(--cream-deep) 12%,transparent 13%);background-size:36px 36px;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:manipulation}button{font-family:inherit;color:inherit;cursor:pointer}.sticker{border:var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sticker)}.btn,.sticker{background:var(--paper)}.btn{border:var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-sticker-sm);font-size:22px;font-weight:700;padding:14px 22px;transition:transform .08s ease,box-shadow .08s ease}.btn:active{transform:translateY(3px);box-shadow:0 0 0 var(--ink)}.btn-tomato{background:var(--tomato);color:#fff}.btn-mustard{background:var(--mustard)}.btn-teal{background:var(--teal);color:#fff}@keyframes bounceIn{0%{transform:scale(.3) translateY(40px);opacity:0}60%{transform:scale(1.08) translateY(-6px);opacity:1}to{transform:scale(1) translateY(0)}}@keyframes wobble{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}@keyframes floatUp{0%{transform:translateY(0) scale(.6);opacity:0}15%{opacity:1;transform:translateY(-12px) scale(1.1)}to{transform:translateY(-150px) scale(1);opacity:0}}@keyframes danmaku{0%{transform:translateX(0);opacity:0}6%{opacity:1}90%{opacity:1}to{transform:translateX(calc(-100vw - 100%));opacity:0}}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-8px)}75%{transform:translateX(8px)}}@keyframes popStar{0%{transform:scale(0) rotate(0deg);opacity:1}70%{transform:scale(1.4) rotate(18deg);opacity:1}to{transform:scale(1) rotate(18deg);opacity:0}}@keyframes steam{0%{transform:translateY(0) scaleX(1);opacity:.7}to{transform:translateY(-26px) scaleX(1.6);opacity:0}}@keyframes slideIn{0%{transform:translateX(120px);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes pulseLive{0%,to{transform:scale(1)}50%{transform:scale(1.12)}}@keyframes confettiFall{0%{transform:translateY(-20px) rotate(0deg);opacity:1}to{transform:translateY(70vh) rotate(2turn);opacity:0}}.anim-bounce-in{animation:bounceIn .5s cubic-bezier(.34,1.56,.64,1) both}.anim-wobble{animation:wobble 1.6s ease-in-out infinite}.anim-shake{animation:shake .35s ease-in-out}.anim-slide-in{animation:slideIn .45s cubic-bezier(.34,1.56,.64,1) both}