@import "https://fonts.googleapis.com/css2?family=Fredoka:wght@400;500;600;700&display=swap";*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;background:#fbefdd;font-family:Fredoka,PingFang SC,Hiragino Sans GB,sans-serif;overflow:hidden}.app{position:fixed;inset:0;overflow:hidden}.room-bg{z-index:0;position:fixed;inset:0}.room-bg svg{width:100%;height:100%;display:block}.scene-fade,.painted-scene{width:100%;height:100%}.painted-scene{object-fit:cover;object-position:center;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;filter:saturate(.92)contrast(1.015);display:block}.character-layer{z-index:10;position:fixed;inset:0}.character-layer canvas{cursor:none}.glove-layer,.glove-layer *{pointer-events:none!important}.glove-layer{z-index:100;position:fixed;inset:0;overflow:hidden}.glove-visual{opacity:0;transform-origin:42% 48%;will-change:transform;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:clamp(88px,23vw,116px);height:min-content;transition:opacity .12s;position:fixed;top:0;left:0}.glove-visual.show{opacity:1}.glove-art{opacity:0;transform-origin:48% 52%;filter:drop-shadow(0 4px 1px #57463f2e);width:100%;height:auto;transition:opacity .12s,transform .18s cubic-bezier(.2,.9,.3,1);display:block}.glove-art.show{opacity:1}.glove-pointer-tip{opacity:0;transform-origin:70% 80%;filter:drop-shadow(0 3px 1px #6c433533);width:43%;height:auto;transition:opacity .14s,transform .2s cubic-bezier(.2,1.35,.35,1);position:absolute;top:-12%;left:-10%;transform:translate(12px,14px)rotate(-18deg)scale(.65)}.glove-visual.pointer-mode .glove-art{opacity:0;transform:translate(12%,8%)rotate(13deg)scale(.72)}.glove-visual.pointer-mode .glove-pointer-tip{opacity:1;width:48%;top:43%;left:34%;transform:translate(0)rotate(-7deg)scale(1)}.score-pill{top:max(14px, env(safe-area-inset-top));z-index:20;background:#fff8ec;border:3px solid #57463f;border-radius:999px;align-items:baseline;gap:6px;padding:6px 14px;display:flex;position:fixed;left:16px;transform:rotate(-2deg);box-shadow:0 3px #57463f40}.punch-layer{z-index:30;pointer-events:none;position:fixed;inset:0;overflow:hidden}.punch-burst{width:0;height:0;position:absolute}.burst-star{animation:.55s ease-out forwards starBurst;position:absolute;top:0;left:0}@keyframes starBurst{0%{opacity:1;transform:translate(-50%,-50%)scale(.4)rotate(0)}to{transform:translate(calc(-50% + var(--dx)), calc(-50% + var(--dy))) scale(1.1) rotate(var(--rot));opacity:0}}.floating-score{color:#e86a6a;text-shadow:-2px -2px #fff6e8,2px -2px #fff6e8,-2px 2px #fff6e8,2px 2px #fff6e8,0 4px #57463f2e;font-size:30px;font-weight:700;animation:.95s ease-out forwards floatUp;position:absolute;top:0;left:0}@keyframes floatUp{0%{opacity:0;transform:translate(-50%,-34%)scale(.55)rotate(-4deg)}12%{opacity:1;transform:translate(-50%,-92%)scale(1.16)rotate(2deg)}28%{opacity:1;transform:translate(-50%,-126%)scale(1)rotate(-1deg)}to{opacity:0;transform:translate(-50%,-285%)scale(.92)rotate(1deg)}}.custom-btn{right:18px;bottom:max(22px, env(safe-area-inset-bottom));z-index:20;cursor:pointer;background:#fff8ec;border:3.5px solid #57463f;border-radius:22px;justify-content:center;align-items:center;width:64px;height:64px;transition:transform .12s;display:flex;position:fixed;box-shadow:0 4px #57463f4d}.custom-btn:active{transform:scale(.9)rotate(-3deg)}.wardrobe-overlay{z-index:40;background:#57463f59;justify-content:center;align-items:flex-end;animation:.18s ease-out fadeIn;display:flex;position:fixed;inset:0}.wardrobe-panel{width:min(92vw,420px);max-height:88vh;padding:26px 22px calc(28px + env(safe-area-inset-bottom));background:#fff8ec;border:4px solid #57463f;border-bottom:none;border-radius:26px 26px 0 0;animation:.28s cubic-bezier(.2,1.4,.4,1) slideUp;position:relative;overflow-y:auto}@keyframes slideUp{0%{transform:translateY(60%)}to{transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}}.tape{opacity:.85;background:#f6d66b;border:2px solid #57463f59;width:74px;height:24px;position:absolute;top:-14px}.tape-left{left:34px;transform:rotate(-6deg)}.tape-right{right:34px;transform:rotate(5deg)}.wardrobe-close{color:#57463f;cursor:pointer;background:#f3a6b7;border:3px solid #57463f;border-radius:50%;width:34px;height:34px;font-family:inherit;font-size:20px;font-weight:700;line-height:1;position:absolute;top:12px;right:14px}.wardrobe-tabs{gap:8px;margin:14px 0 18px;display:flex}.tab-chip{color:#b39e8d;background:#fbf1e2;border:2.5px dashed #cbb6a4;border-radius:999px;padding:6px 14px;font-family:inherit;font-size:14px;font-weight:600}.tab-chip.active{color:#fff8ec;background:#e86a6a;border-style:solid;border-color:#57463f}.option-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.option-card{background:#fdf6ec;border:2.5px solid #e4d3bc;border-radius:16px;flex-direction:column;align-items:center;gap:6px;padding:12px 6px 10px;font-family:inherit;transition:transform .12s,border-color .12s,background .12s;display:flex;position:relative}.option-card:active{transform:scale(.95)}.option-card.selected{background:#fff3d9;border-color:#57463f;box-shadow:0 3px #57463f33}.option-label{color:#8a6f5f;font-size:12px;font-weight:600}.option-card.selected .option-label{color:#57463f}.option-check{color:#57463f;background:#f6d66b;border:2px solid #57463f;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:12px;line-height:1;display:flex;position:absolute;top:-8px;right:-6px}.scene-dots{bottom:calc(20px + env(safe-area-inset-bottom));z-index:20;background:#fdf6ece0;border:2.5px solid #57463f;border-radius:999px;gap:10px;padding:8px 12px;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 3px #57463f2e}.dot{background:#fdf6ec;border:2px solid #57463f;border-radius:50%;width:12px;height:12px;padding:0;transition:transform .2s,background .2s}.scene-fade{width:100%;height:100%;animation:.5s ease-out sceneIn}@keyframes sceneIn{0%{opacity:0;transform:translateY(14px)scale(1.02)}to{opacity:1;transform:none}}.wardrobe-empty{text-align:center;color:#a08a7b;background:#fdf6ea;border:3px dashed #cbb6a4;border-radius:18px;padding:26px 16px}.wardrobe-empty p{margin-top:10px;font-size:15px;font-weight:500;line-height:1.7}.wardrobe-note{color:#c0ac9a;margin-top:10px;font-size:12px;display:inline-block}.face-section-head{justify-content:space-between;align-items:flex-end;margin:16px 0 10px;display:flex}.face-section-head h3{color:#57463f;letter-spacing:1px;font-size:16px;font-weight:700}.face-hint{color:#c0ac9a;margin-top:3px;font-size:12px;font-weight:500}.wardrobe-done{color:#57463f;cursor:pointer;background:#f6d66b;border:2.5px solid #57463f;border-radius:999px;padding:6px 16px;font-family:inherit;font-size:13px;font-weight:700;box-shadow:0 2px #57463f40}.wardrobe-done:active{box-shadow:none;transform:translateY(2px)}.face-grid{grid-template-columns:repeat(auto-fill,minmax(74px,1fr));gap:12px;max-height:38vh;padding:8px 4px 4px;display:grid;overflow-y:auto}.face-tile{aspect-ratio:1;cursor:pointer;-webkit-touch-callout:none;touch-action:manipulation;background:#fdf6ea;border:3px solid #57463f;border-radius:20px;justify-content:center;align-items:center;padding:0;transition:transform .12s,border-color .12s,background .12s;display:flex;position:relative;box-shadow:0 3px #57463f2e}.face-tile:active{transform:scale(.93)}.face-tile.selected{background:#fff;border-color:#e86a6a;transform:rotate(-2deg);box-shadow:0 3px #e86a6a59}.face-tile.add{color:#b39e8d;box-shadow:none;background:#fbf1e2;border-style:dashed;border-color:#cbb6a4;flex-direction:column;gap:2px}.face-add-plus{font-size:28px;font-weight:600;line-height:1}.face-add-text{font-size:11px;font-weight:600}.face-thumb{aspect-ratio:1;pointer-events:none;background:#fff;border-radius:50%;width:82%;display:block;overflow:hidden}.face-thumb.default{background:#6fb7bc}.face-thumb img{object-fit:cover;width:100%;height:100%;display:block}.face-check{color:#fff8ec;background:#e86a6a;border:2.5px solid #57463f;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:13px;font-weight:700;line-height:1;display:flex;position:absolute;top:-6px;right:-6px}.face-del{color:#57463f;cursor:pointer;background:#f3a6b7;border:2.5px solid #57463f;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:16px;font-weight:700;line-height:1;display:flex;position:absolute;top:-7px;left:-7px;box-shadow:0 2px #57463f40}.face-grid.manage .face-tile:has(.face-del){animation:.28s ease-in-out infinite faceWiggle}.face-grid.manage .face-tile:nth-child(2n):has(.face-del){animation-delay:-.14s}@keyframes faceWiggle{0%,to{transform:rotate(-2.5deg)}50%{transform:rotate(2.5deg)}}.wardrobe-foot{text-align:center;color:#c0ac9a;margin-top:14px;font-size:12px}.cropper-panel{text-align:center;background:#fff8ec;border:4px solid #57463f;border-radius:24px;width:min(92vw,380px);padding:20px 18px 18px;animation:.28s cubic-bezier(.2,1.4,.4,1) slideUp}.cropper-panel h3{color:#57463f;letter-spacing:1px;margin-bottom:14px;font-size:18px;font-weight:700}.crop-viewport{aspect-ratio:1;touch-action:none;cursor:grab;background:#e9d9c5;border:3px solid #57463f;border-radius:16px;width:min(74vw,300px);margin:0 auto;position:relative;overflow:hidden}.crop-viewport:active{cursor:grabbing}.crop-img{pointer-events:none;-webkit-user-select:none;user-select:none;max-width:none;position:absolute;top:50%;left:50%}.crop-hole{pointer-events:none;border-radius:50%;position:absolute;inset:4px;box-shadow:0 0 0 999px #57463f73,inset 0 0 0 8px #fff8ece6}.crop-dash{pointer-events:none;border:2.5px dashed #fff8ecf2;border-radius:50%;position:absolute;inset:16px}.crop-zoom{align-items:center;gap:10px;margin-top:14px;padding:0 6px;display:flex}.crop-zoom-mark{color:#a08a7b;font-size:18px;font-weight:700}.crop-zoom input[type=range]{accent-color:#e86a6a;cursor:pointer;flex:1;height:28px}.crop-tip{color:#c0ac9a;margin-top:6px;font-size:12px}.crop-actions{gap:10px;margin-top:14px;display:flex}.crop-btn{color:#57463f;cursor:pointer;border:3px solid #57463f;border-radius:999px;flex:1;padding:11px 0;font-family:inherit;font-size:15px;font-weight:700;transition:transform .1s,box-shadow .1s;box-shadow:0 3px #57463f47}.crop-btn.ghost{background:#fbf1e2}.crop-btn.primary{background:#f6d66b}.crop-btn:disabled{opacity:.5;cursor:default}.glove-cursor{z-index:25;pointer-events:none;opacity:0;will-change:transform;width:76px;height:76px;transition:opacity .15s;position:fixed;top:0;left:0}.glove-cursor.show{opacity:1}.glove-cursor svg{filter:drop-shadow(0 3px #57463f2e);width:100%;height:100%;display:block}.app,.app *{cursor:none!important}.face-section-title{color:#8a6f5f;text-align:center;background:#f6e2c4;border:2px dashed #cbb6a4;border-radius:12px;padding:6px 12px;font-size:14px}.face-thumb{object-fit:cover;background:#fdf6ec;border:2.5px solid #57463f;border-radius:50%;width:44px;height:44px}.option-card .face-delete{color:#57463f;background:#fdf6ec;border:2px solid #57463f;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:12px;font-weight:700;line-height:1;transition:transform .15s,background .15s;display:flex;position:absolute;top:-4px;left:-4px;box-shadow:0 2px #57463f33}.option-card .face-delete.confirming{color:#fff8ec;background:#e86a6a;transform:scale(1.2)}.option-card.add-face{color:#cbb6a4;background:#fffdf7;border-style:dashed;border-color:#cbb6a4}.option-card.add-face:active{transform:scale(.96)}.cropper-overlay{z-index:60;background:#57463f73;justify-content:center;align-items:center;padding:20px;animation:.25s popIn;display:flex;position:fixed;inset:0}.cropper-panel{background:#fff8ec;border:3px solid #57463f;border-radius:22px;flex-direction:column;align-items:center;gap:10px;max-width:92vw;padding:18px;display:flex;box-shadow:0 8px #57463f40}.cropper-panel h3{color:#57463f;margin:0;font-size:18px}.cropper-hint{color:#a08b7a;margin:0;font-size:12px}.crop-box{aspect-ratio:1;touch-action:none;background:repeating-conic-gradient(#efe2cf 0% 25%,#fdf6ec 0% 50%) 0 0/24px 24px;border:3px solid #57463f;border-radius:18px;width:min(280px,72vw);height:min(280px,72vw);position:relative;overflow:hidden}.crop-box img{transform-origin:50%;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;pointer-events:none;max-width:none;max-height:none;position:absolute;top:50%;left:50%}.crop-circle{pointer-events:none;border:3px dashed #fff8ec;border-radius:50%;position:absolute;inset:0;box-shadow:0 0 0 999px #57463f59}.crop-zoom{align-items:center;gap:10px;width:100%;display:flex}.crop-zoom input[type=range]{accent-color:#e86a6a;flex:1;height:28px}.zoom-label{color:#8a6f5f;font-size:12px}.crop-actions{gap:12px;display:flex}.crop-btn{border:2.5px solid #57463f;border-radius:999px;padding:9px 22px;font-family:inherit;font-size:15px;font-weight:600;transition:transform .12s;box-shadow:0 3px #57463f40}.crop-btn:active{transform:translateY(2px);box-shadow:0 1px #57463f40}.crop-btn.cancel{color:#57463f;background:#fdf6ec}.crop-btn.confirm{color:#fff8ec;background:#e86a6a}.crop-btn.confirm:disabled{opacity:.5}body{color:var(--pencil);background:radial-gradient(circle at 18% 12%, #ffffff8c, transparent 28%), var(--paper)}.app:after{content:"";z-index:90;pointer-events:none;opacity:.2;mix-blend-mode:multiply;background-image:repeating-linear-gradient(7deg,#766a6309 0 1px,#0000 1px 5px),repeating-linear-gradient(93deg,#ffffff14 0 1px,#0000 1px 7px);position:fixed;inset:0}.room-bg svg{filter:saturate(.68)contrast(.94)brightness(1.025)}.room-bg svg [stroke=\#57463F],.room-bg svg [stroke=\#3E3650]{stroke:#8d8077}.score-pill{top:max(20px, env(safe-area-inset-top));color:var(--pencil);border:1.5px dashed var(--pencil-soft);background:#faf6eec7;border-radius:13px 16px 14px 12px;gap:5px;padding:7px 12px;left:20px;transform:rotate(-1.2deg);box-shadow:2px 3px #766a6314}.score-label{color:#9d9087;font-size:12px;font-weight:500}.score-num{color:#b98283;font-size:16px;font-weight:600}.custom-btn{right:22px;bottom:max(26px, env(safe-area-inset-bottom));border:1.8px solid var(--pencil);background:#faf6eee6;border-radius:47% 53% 48% 52%;width:56px;height:56px;transform:rotate(1.5deg);box-shadow:2px 3px #766a631f}.custom-btn svg{opacity:.82;width:29px;height:29px}.scene-dots{bottom:calc(25px + env(safe-area-inset-bottom));box-shadow:none;background:0 0;border:0;gap:12px;padding:6px 8px}.dot{border:1.5px solid var(--pencil-soft);background:#faf6eeb8;width:9px;height:9px}.dot.active{background:var(--pink-wash);transform:scale(1.18)rotate(7deg)}.wardrobe-overlay{-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px);background:#685e572e}.wardrobe-panel{width:min(94vw,430px);max-height:84vh;padding:32px 26px calc(34px + env(safe-area-inset-bottom));color:var(--pencil);background:radial-gradient(circle at 14% 9%, #ffffff9e, transparent 24%), var(--paper-light);border:2px solid var(--pencil);border-bottom:0;border-radius:30px 25px 0 0;box-shadow:0 -5px 24px #766a631a}.wardrobe-panel h2{color:var(--pencil);letter-spacing:3px;font-size:20px;font-weight:600}.tape{background:#dccb917a;border:1px solid #766a632e;height:20px}.wardrobe-close{border:1.5px solid var(--pencil);color:var(--pencil);box-shadow:none;background:#e1b9bc}.wardrobe-tabs{justify-content:space-between;gap:5px;margin:18px 0 24px}.tab-chip{color:#a89b91;background:0 0;border:1.3px dashed #c7b9ad;padding:7px 10px;font-size:13px;font-weight:500}.tab-chip.active{color:var(--pencil);background:#ead6d5;border:1.5px solid #9b8780;transform:rotate(-1.5deg)}.option-grid{gap:16px 14px}.option-card{min-height:106px;box-shadow:none;background:#faf6ee99;border:1.4px dashed #d0c4b7;border-radius:17px 14px 18px 15px;gap:8px;padding:15px 7px 12px}.option-card:nth-child(2n){transform:rotate(.7deg)}.option-card.selected{background:#eee6d8;border:1.7px solid #92857d;transform:rotate(-.8deg);box-shadow:2px 3px #766a6314}.option-label{color:#8f827a;font-weight:500}.option-check{background:var(--yellow-wash);border:1.5px solid var(--pencil)}.floating-score{color:#b98283;text-shadow:1px 2px #faf6eee6;font-size:24px;font-weight:600}.cropper-panel,.face-tile{background:var(--paper-light);border-color:var(--pencil);box-shadow:2px 3px #766a631a}.scene-fade{animation:.65s ease-out pageWashIn}@keyframes pageWashIn{0%{opacity:0;filter:saturate(.35)}to{opacity:1;filter:none}}:root{--paper:#fff4d8;--paper-light:#fffaf0;--paper-deep:#f3d994;--pencil:#6c5148;--pencil-soft:#a77d6f;--blue-wash:#74cbd7;--green-wash:#9bd36a;--pink-wash:#f49aa9;--yellow-wash:#f6cf5a}body{background:radial-gradient(circle at 18% 12%, #ffffffb8, transparent 28%), var(--paper)}.painted-scene{filter:saturate(1.2)contrast(1.045)brightness(1.035)}.scene-cozy .painted-scene{filter:saturate(1.2)contrast(1.04)brightness(1.045)}.scene-garden .painted-scene{filter:saturate(1.18)contrast(1.05)brightness(1.035)}.scene-night .painted-scene{filter:saturate(1.13)contrast(1.06)brightness(1.025)}.scene-fantasy .painted-scene{filter:saturate(1.16)contrast(1.045)brightness(1.04)}.room-bg:after{content:"";pointer-events:none;mix-blend-mode:soft-light;background:radial-gradient(circle at 18% 14%,#ffe87e1f,#0000 32%),radial-gradient(circle at 82% 32%,#53cdd714,#0000 38%);position:absolute;inset:0}.app:after{opacity:.11}.score-pill{color:var(--pencil);border:2px solid var(--pencil);background:linear-gradient(145deg,#ffffffdb,#fff4d2eb);box-shadow:0 3px #6c514829,inset 0 1px #fffc}.score-label{color:#987264}.score-num{color:#ed6675;font-weight:700}.custom-btn{border:2.2px solid var(--pencil);background:radial-gradient(circle at 32% 24%,#fff 0 8%,#0000 9%),linear-gradient(145deg,#fff9e9,#ffe4a8);box-shadow:0 5px #6c51482e,inset 0 2px #ffffffbf}.custom-btn svg{opacity:1}@media (hover:hover) and (pointer:fine){.custom-btn:hover{transform:rotate(-2deg)translateY(-2px)scale(1.04);box-shadow:0 7px #6c514826,inset 0 2px #ffffffbf}}.scene-dots .dot{border-color:var(--pencil);background:#fffaf0e6;box-shadow:inset 0 1px #ffffffd9}.scene-dots .dot.active{background:var(--pink-wash);box-shadow:0 1px #6c51482e}.wardrobe-panel,.cropper-panel{color:var(--pencil);border-color:var(--pencil);background:radial-gradient(circle at 14% 9%,#ffffffb8,#0000 25%),linear-gradient(#fffaf0,#fff0ca);box-shadow:0 -6px 24px #6c514821}.tab-chip{color:#9c766a;background:#fffaf0bd;border-color:#d6aa89}.tab-chip.active{color:#69483f;border-color:var(--pencil);background:#f7a5b2;box-shadow:0 2px #6c514821}.option-card{background:#fffaf0d1;border-color:#dfb997}.option-card.selected{border-color:var(--pencil);background:#fff1b9;box-shadow:0 3px #6c514821,inset 0 1px #fffc}.option-label,.option-card.selected .option-label{color:#79574d}.floating-score{color:#f25f70;letter-spacing:-2px;text-shadow:-2px -2px #fff8dd,2px -2px #fff8dd,-2px 2px #fff8dd,2px 2px #fff8dd,0 4px #6c514833;font-size:clamp(38px,11vw,46px);font-weight:700}@media (prefers-reduced-motion:reduce){.scene-fade,.burst-star,.floating-score,.wardrobe-overlay,.wardrobe-panel{animation-duration:.01ms!important}}.reward-overlay{z-index:95;pointer-events:none;background:radial-gradient(circle,#fffae038,#6c514814 58%,#0000 78%);place-items:center;padding:22px;display:grid;position:fixed;inset:0}.reward-card{text-align:center;width:min(88vw,370px);color:var(--pencil);border:2.5px solid var(--pencil);will-change:transform, opacity;background:radial-gradient(circle at 18% 10%,#ffffffe6,#0000 28%),linear-gradient(155deg,#fffaf0,#ffe9b1);border-radius:28px 23px 30px 25px;padding:22px 20px 20px;animation:2.8s cubic-bezier(.2,.85,.25,1) forwards rewardCardLife;box-shadow:0 9px #6c514824,0 18px 36px #6c51482e,inset 0 2px #ffffffd9}.reward-title{z-index:2;color:#765249;text-wrap:balance;text-shadow:0 2px #fffc;font-size:clamp(20px,5.7vw,25px);font-weight:700;line-height:1.25;position:relative}.reward-face-stage{width:168px;height:168px;margin:14px auto 10px;position:relative}.reward-face{border:3px solid var(--pencil);background:#fff8e8;border-radius:48% 52% 51% 49%/50% 47% 53% 50%;animation:2.8s ease-out forwards rewardFaceBounce;position:absolute;inset:12px;overflow:hidden;box-shadow:0 5px #6c514824,inset 0 0 0 5px #ffffff8c}.reward-face img{object-fit:cover;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;display:block}.reward-default-face{color:#604942;letter-spacing:2px;background:radial-gradient(circle at 35% 43%,#f49aa9 0 5%,#0000 5.8%),radial-gradient(circle at 65% 43%,#f49aa9 0 5%,#0000 5.8%),linear-gradient(145deg,#fff7dc,#f3d994);place-items:center;width:100%;height:100%;font-size:37px;font-weight:700;display:grid}.reward-encouragement{z-index:2;color:#8c665b;background:#fffaf0cc;border:1.5px dashed #c8997d;border-radius:999px;padding:7px 13px;font-size:13px;font-weight:600;display:inline-block;position:relative;transform:rotate(-1deg)}.reward-event{z-index:3;pointer-events:none;position:absolute;inset:0}.reward-projectile,.reward-splat,.reward-bucket,.reward-water-splash,.reward-pie span{filter:drop-shadow(0 4px 1px #6c514833);line-height:1;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.reward-projectile{opacity:0;font-size:58px;animation:1.7s cubic-bezier(.2,.8,.3,1) .3s forwards rewardThrow}.reward-splat{opacity:0;font-size:86px;animation:1.75s ease-out .3s forwards rewardSplat}.reward-tomato .reward-projectile{font-size:64px;animation-name:rewardTomatoThrow}.reward-bucket{opacity:0;transform-origin:60% 70%;font-size:68px;animation:1.85s ease-in-out .22s forwards rewardBucket;top:2%}.reward-water-splash{opacity:0;font-size:105px;animation:1.7s ease-out .48s forwards rewardWaterSplash;top:55%}.reward-pie span{z-index:2;opacity:0;font-size:102px;animation:1.8s cubic-bezier(.2,.8,.25,1) .28s forwards rewardPie}.reward-pie i{opacity:0;filter:drop-shadow(0 4px 1px #6c514829);background:radial-gradient(circle at 25% 32%,#fff 0 8%,#0000 9%),radial-gradient(circle at 62% 24%,#fff 0 11%,#0000 12%),radial-gradient(circle at 52% 68%,#fffdf6 0 15%,#0000 16%),#fff7df;border-radius:50%;width:126px;height:106px;animation:1.8s ease-out .28s forwards rewardPieCream;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(.2)rotate(-12deg)}.reward-confetti i{opacity:0;background:var(--confetti-color);width:10px;height:18px;animation:rewardConfetti 1.65s calc(.3s + var(--confetti-delay)) cubic-bezier(.15, .75, .25, 1) forwards;border-radius:3px;position:absolute;top:50%;left:50%}@keyframes rewardCardLife{0%{opacity:0;transform:scale(.78)rotate(-2deg)}10%{opacity:1;transform:scale(1.045)rotate(1deg)}17%,76%{opacity:1;transform:scale(1)rotate(-.4deg)}to{opacity:0;transform:scale(.96)rotate(.5deg)}}@keyframes rewardFaceBounce{0%,37%,to{transform:rotate(0)scale(1)}43%{transform:rotate(-4deg)scale(.96)}49%{transform:rotate(4deg)scale(1.035)}55%{transform:rotate(-2deg)scale(1)}}@keyframes rewardThrow{0%,8%{opacity:0;transform:translate(-210px,-170px)rotate(-80deg)scale(.65)}18%{opacity:1}42%{opacity:1;transform:translate(-50%,-50%)rotate(28deg)scale(1)}45%,to{opacity:0;transform:translate(-50%,-50%)rotate(35deg)scale(.7)}}@keyframes rewardTomatoThrow{0%,8%{opacity:0;transform:translate(165px,-185px)rotate(70deg)scale(.65)}18%{opacity:1}42%{opacity:1;transform:translate(-50%,-50%)rotate(-24deg)scale(1)}45%,to{opacity:0;transform:translate(-50%,-50%)scale(.7)}}@keyframes rewardSplat{0%,40%{opacity:0;transform:translate(-50%,-50%)scale(.15)rotate(-12deg)}48%,66%{opacity:.95;transform:translate(-50%,-50%)scale(1.05)rotate(4deg)}83%,to{opacity:0;transform:translate(-50%,-50%)scale(1.14)rotate(8deg)}}@keyframes rewardBucket{0%{opacity:0;transform:translate(-50%,-115px)rotate(-18deg)scale(.72)}18%,35%{opacity:1;transform:translate(-50%,-50%)rotate(-6deg)scale(1)}48%,62%{opacity:1;transform:translate(-30%,-44%)rotate(112deg)scale(1)}78%,to{opacity:0;transform:translate(50px,-80px)rotate(128deg)scale(.75)}}@keyframes rewardWaterSplash{0%,22%{opacity:0;transform:translate(-50%,-75%)scale(.2)}35%,63%{opacity:.95;transform:translate(-50%,-50%)scale(1.05)}82%,to{opacity:0;transform:translate(-50%,15%)scale(1.12)}}@keyframes rewardPie{0%,8%{opacity:0;transform:translate(190px,55px)rotate(55deg)scale(.65)}18%{opacity:1}40%{opacity:1;transform:translate(-50%,-50%)rotate(-8deg)scale(1)}45%,to{opacity:0;transform:translate(-50%,-50%)rotate(-8deg)scale(.75)}}@keyframes rewardPieCream{0%,39%{opacity:0;transform:translate(-50%,-50%)scale(.2)rotate(-12deg)}48%,68%{opacity:.95;transform:translate(-50%,-50%)scale(1)rotate(3deg)}84%,to{opacity:0;transform:translate(-50%,-50%)scale(1.08)rotate(5deg)}}@keyframes rewardConfetti{0%{opacity:0;transform:translate(-50%,-50%)scale(.2)rotate(0)}12%{opacity:1}65%{opacity:1;transform:translate(calc(-50% + var(--confetti-x)), calc(-50% + var(--confetti-y))) scale(1) rotate(var(--confetti-rotation))}to{opacity:0;transform:translate(calc(-50% + var(--confetti-x)), calc(-50% + var(--confetti-y) + 70px)) scale(.8) rotate(calc(var(--confetti-rotation) + 150deg))}}@media (height<=620px){.reward-card{padding-top:15px;padding-bottom:15px}.reward-face-stage{width:142px;height:142px;margin-block:8px}}@media (prefers-reduced-motion:reduce){.reward-card{animation-name:rewardCardLifeReduced}.reward-event{display:none}.reward-face{animation:none}}@keyframes rewardCardLifeReduced{0%,to{opacity:0}8%,82%{opacity:1}}
