:root{--ink:#364049;--ink-soft:#8a99a8;--pink:#ffccd5;--pink-soft:#ffe3ea;--pink-deep:#ff9db3;--strawberry:#ff7a93;--blue:#b2d9ff;--blue-soft:#dcecff;--purple:#e6b2ff;--lavender:#e9ddff;--cream:#fff6e8;--paper:#fffaf3;--butter:#ffe9a8;--mint:#bff0da;--radius:22px;--pill:999px;--shadow:0 6px 0 #ff9db359, 0 10px 24px #a096d240;--sat:env(safe-area-inset-top,0px);--sab:env(safe-area-inset-bottom,0px);--sal:env(safe-area-inset-left,0px);--sar:env(safe-area-inset-right,0px);--grad:linear-gradient(135deg, #b2d9ff, #ffccd5);--bounce:cubic-bezier(.34, 1.56, .64, 1)}*{box-sizing:border-box}html,body{height:100%;color:var(--ink);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation;overscroll-behavior:none;background:#dcecff;margin:0;padding:0;font-family:Nunito,Apple SD Gothic Neo,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-weight:800;overflow:hidden}#app{background:#dcecff;width:100vw;height:100vh;position:fixed;top:0;left:0;overflow:clip;transform:translateZ(0);container:stage/size}body.letterbox{background:radial-gradient(circle at 20% 20%,#ffe3ea 0 18%,#0000 19%) 0 0/46px 46px,linear-gradient(135deg,#b2d9ff,#ffccd5)}body.letterbox #app{border-radius:18px;box-shadow:0 10px 40px #a096d273,0 0 0 5px #fff}#game{outline:none;display:block;position:absolute;top:0;bottom:0;left:0;right:0}canvas{touch-action:none}#app{-webkit-touch-callout:none}#ui{pointer-events:none;z-index:10;position:fixed;top:0;bottom:0;left:0;right:0}:where(#ui)>*{pointer-events:auto}#ui .passthrough,#ui .passthrough *{pointer-events:none}button{font:inherit;color:inherit;cursor:pointer;-webkit-appearance:none;background:0 0;border:0}.hidden{display:none!important}.boot{z-index:100;background:radial-gradient(circle at 50% 40%,#fff 0%,#ffe3ea 45%,#dcecff 100%);place-content:center;justify-items:center;gap:10px;transition:opacity .5s;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.boot-sheep{font-size:56px;animation:.7s ease-in-out infinite hop}.boot-text{color:var(--strawberry);letter-spacing:.5px}@keyframes hop{0%,to{transform:translateY(0)}50%{transform:translateY(-16px)rotate(-6deg)}}.candy{border-radius:var(--pill);background:linear-gradient(#fff, var(--pink-soft));min-height:48px;box-shadow:0 4px 0 var(--pink-deep), 0 8px 18px #ff7a9340;color:var(--ink);transition:transform .15s var(--bounce);border:3px solid #fff;justify-content:center;align-items:center;gap:6px;padding:10px 22px;font-size:17px;font-weight:900;display:inline-flex}.candy:active{box-shadow:0 1px 0 var(--pink-deep);transform:translateY(3px)scale(.97)}.candy.blue{background:linear-gradient(#fff, var(--blue-soft));box-shadow:0 4px #86b8f0,0 8px 18px #86b8f04d}.candy.primary{background:linear-gradient(#ffb3c4, var(--strawberry));color:#fff;text-shadow:0 2px #c83c5a59;box-shadow:0 4px #e85a78,0 8px 18px #ff7a9359}.candy.mint{background:linear-gradient(#fff, var(--mint));box-shadow:0 4px #8fdcbc,0 8px 18px #8fdcbc4d}.candy.small{min-height:38px;padding:6px 14px;font-size:14px}.candy[disabled]{opacity:.5;filter:grayscale(.4)}.paper{background:var(--paper);border-radius:var(--radius);box-shadow:var(--shadow);background-image:radial-gradient(#ffb3c140 1.2px,#0000 1.3px);background-size:14px 14px;border:4px solid #fff}.stitch{border:2.5px dashed var(--pink);border-radius:calc(var(--radius) - 6px)}.grad-text{background:linear-gradient(135deg,#7fb7f5,#ff7a93);color:#0000;-webkit-background-clip:text;background-clip:text}.ribbon{background:var(--strawberry);color:#fff;letter-spacing:.5px;border-radius:10px;padding:8px 26px;font-weight:900;display:inline-block;position:relative;box-shadow:0 3px #e85a78}.ribbon:before,.ribbon:after{content:"";z-index:-1;background:#ff9db3;width:18px;height:100%;position:absolute;top:8px}.ribbon:before{clip-path:polygon(0 0,100% 0,100% 100%,0 100%,40% 50%);left:-12px}.ribbon:after{clip-path:polygon(0 0,100% 0,60% 50%,100% 100%,0 100%);right:-12px}.hud-top{padding:calc(10px + var(--sat)) calc(12px + var(--sar)) 0 calc(12px + var(--sal));pointer-events:none;justify-content:space-between;align-items:flex-start;display:flex;position:fixed;top:0;left:0;right:0}.hud-top>*{pointer-events:auto}.hearts{border-radius:var(--pill);box-shadow:0 3px 0 var(--pink-deep), 0 6px 16px #ff7a9333;background:#fff;align-items:center;gap:6px;min-width:92px;padding:6px 16px 6px 8px;font-size:20px;font-weight:900;display:flex}.hearts .h-icon{background:var(--pink);width:34px;height:34px;color:var(--strawberry);border-radius:50%;place-items:center;font-size:20px;display:grid}.hearts.bump{animation:bump .45s var(--bounce)}@keyframes bump{0%{transform:scale(1)}40%{transform:scale(1.18)rotate(-3deg)}to{transform:scale(1)}}.hud-btns{gap:8px;display:flex}.icon-btn{width:50px;height:50px;transition:transform .15s var(--bounce);background:#fff;border-radius:16px;place-items:center;font-size:24px;display:grid;position:relative;box-shadow:0 3px #c9d8f3,0 6px 14px #86b8f040}.icon-btn:active{transform:scale(.92)}.icon-btn .dot{background:var(--strawberry);border:2px solid #fff;border-radius:50%;width:14px;height:14px;position:absolute;top:-4px;right:-4px}.place-tag{left:50%;top:calc(14px + var(--sat));color:var(--ink-soft);border-radius:var(--pill);pointer-events:none;white-space:nowrap;background:#ffffffbf;padding:4px 12px;font-size:13px;position:fixed;transform:translate(-50%)}@container (width<=520px){.place-tag{top:calc(66px + var(--sat))}}.hud-bottom{right:calc(16px + var(--sar));bottom:calc(18px + var(--sab));flex-direction:column;align-items:center;gap:10px;display:flex;position:fixed}.act-btn{background:radial-gradient(circle at 35% 30%, #fff 0 12%, #ffb3c4 13% 55%, var(--strawberry) 100%);color:#fff;width:92px;height:92px;transition:transform .15s var(--bounce), opacity .2s, filter .2s;border:5px solid #fff;border-radius:50%;place-items:center;font-size:38px;display:grid;box-shadow:0 5px #e85a78,0 12px 26px #ff7a9373}.act-btn:active{transform:scale(.9)}.act-btn.idle{opacity:.55;filter:saturate(.5)}.act-btn.ready{animation:1.2s ease-in-out infinite pulse}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.07)}}.act-label{white-space:nowrap;box-shadow:0 3px 0 var(--pink-deep);transition:opacity .2s, transform .2s var(--bounce);background:#fff;border-radius:14px;padding:6px 12px;font-size:15px;position:absolute;bottom:102px;right:0}.act-label.off{opacity:0;transform:translateY(8px)scale(.9)}.cam-btn{background:#fff;border-radius:50%;align-self:flex-end;width:44px;height:44px;font-size:20px;box-shadow:0 3px #c9d8f3}body:not(.touch) .cam-btn{display:none}.joy{pointer-events:none;z-index:9;opacity:0;background:radial-gradient(circle,#ffffff73 0 55%,#ffccd580 56% 100%);border:3px solid #ffffffe6;border-radius:50%;width:124px;height:124px;margin:-62px 0 0 -62px;transition:opacity .15s;position:fixed}.joy.on{opacity:1}.joy-knob{background:radial-gradient(circle at 35% 30%, #fff 0 20%, var(--pink) 60%, var(--pink-deep));border:3px solid #fff;border-radius:50%;width:58px;height:58px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 4px 10px #ff7a9366}.joy-hint{left:calc(34px + var(--sal));bottom:calc(40px + var(--sab));color:#fff;text-align:center;pointer-events:none;text-shadow:0 1px 3px #ff7a93cc;background:#ffffff26;border:3px dashed #ffffffd9;border-radius:50%;place-items:center;width:110px;height:110px;font-size:13px;display:grid;position:fixed}body:not(.touch) .joy-hint{display:none}.world-layer{pointer-events:none;position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}.prompt{white-space:nowrap;box-shadow:0 3px 0 var(--pink-deep);background:#fff;border-radius:14px;padding:5px 12px;font-size:14px;animation:1.4s ease-in-out infinite floaty;position:absolute;transform:translate(-50%,-100%)}.prompt:after{content:"";border:7px solid #0000;border-top-color:#fff;border-bottom:0;margin-left:-7px;position:absolute;bottom:-7px;left:50%}.prompt kbd{font:inherit;background:var(--pink);border-radius:6px;margin-right:4px;padding:1px 6px;font-size:11px}body.touch .prompt kbd{display:none}@keyframes floaty{0%,to{margin-top:0}50%{margin-top:-5px}}.react{white-space:nowrap;box-shadow:0 3px 0 var(--pink), 0 6px 14px #ff7a9340;animation:reactIn 1.6s var(--bounce) forwards;background:#fff;border-radius:16px;padding:4px 12px;font-size:18px;position:absolute;transform:translate(-50%,-100%)}.react.big{font-size:24px}.react.plain{box-shadow:none;text-shadow:0 2px #fff,0 0 8px #fff;background:0 0;font-size:30px}@keyframes reactIn{0%{opacity:0;margin-top:10px;scale:.5}15%{opacity:1;margin-top:0;scale:1.1}25%{scale:1}80%{opacity:1;margin-top:-18px}to{opacity:0;margin-top:-30px}}.float-plus{color:var(--strawberry);text-shadow:0 2px #fff;pointer-events:none;z-index:50;font-size:22px;font-weight:900;animation:1s ease-out forwards plusUp;position:fixed}@keyframes plusUp{0%{opacity:0;transform:translateY(10px)scale(.6)}20%{opacity:1;transform:none}to{opacity:0;transform:translateY(-40px)}}.banner{top:calc(24% + var(--sat));text-align:center;pointer-events:none;z-index:20;position:fixed;left:50%;transform:translate(-50%)}.banner .ribbon{font-size:22px}.banner .sub{color:var(--ink);border-radius:var(--pill);background:#ffffffd9;margin-top:10px;padding:4px 14px;font-size:14px;display:inline-block}.banner.show{animation:bannerIn 2.6s var(--bounce) forwards}@keyframes bannerIn{0%{opacity:0;transform:translate(-50%,-20px)scale(.8)}12%{opacity:1;transform:translate(-50%)scale(1)}80%{opacity:1}to{opacity:0;transform:translate(-50%,-10px)}}.toasts{top:calc(74px + var(--sat));pointer-events:none;z-index:40;flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;left:50%;transform:translate(-50%)}.toast{box-shadow:0 4px 0 var(--butter), 0 8px 20px #c8aa5040;animation:toastIn 3s var(--bounce) forwards;background:#fff;border-radius:18px;align-items:center;gap:10px;max-width:min(92cqw,420px);padding:8px 18px 8px 10px;font-size:15px;display:flex}.toast .t-icon{background:var(--butter);border-radius:12px;flex:none;place-items:center;width:38px;height:38px;font-size:22px;display:grid}.toast .t-new{color:var(--strawberry);font-size:12px;display:block}@keyframes toastIn{0%{opacity:0;transform:translateY(-16px)scale(.8)}10%{opacity:1;transform:none}85%{opacity:1}to{opacity:0;transform:translateY(-10px)}}.dialogue{left:50%;bottom:calc(16px + var(--sab));z-index:30;width:min(94cqw,640px);animation:dlgIn .35s var(--bounce);padding:18px 20px 16px;position:fixed;transform:translate(-50%)}.dialogue .name{background:var(--strawberry);color:#fff;border-radius:var(--pill);border:3px solid #fff;align-items:center;gap:6px;padding:5px 14px 5px 6px;font-size:15px;display:flex;position:absolute;top:-18px;left:22px;box-shadow:0 3px #e85a78}.dialogue .name .portrait{background:#fff;border-radius:50%;place-items:center;width:30px;height:30px;font-size:18px;display:grid}.dialogue .text{min-height:52px;padding-top:6px;font-size:18px;font-weight:800;line-height:1.45}.dialogue .next{color:var(--strawberry);font-size:14px;animation:1s infinite floaty;position:absolute;bottom:10px;right:18px}.dialogue .choices{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:10px;display:flex}@keyframes dlgIn{0%{opacity:0;transform:translate(-50%,30px)}to{opacity:1;transform:translate(-50%)}}.modal-wrap{z-index:60;-webkit-backdrop-filter:blur(2px);padding:calc(12px + var(--sat)) 12px calc(12px + var(--sab));background:#ffe3ea8c;place-items:center;animation:.2s fadeIn;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}@keyframes fadeIn{0%{opacity:0}}.modal{width:min(94cqw,560px);max-height:calc(100cqh - 20px);animation:popIn .35s var(--bounce);flex-direction:column;display:flex;position:relative}@keyframes popIn{0%{opacity:0;transform:scale(.85)}}.modal-head{justify-content:center;align-items:center;padding:18px 56px 8px;display:flex;position:relative}.modal-head h2{text-align:center;margin:0;font-size:24px;font-weight:900}.modal-close{background:var(--pink);color:#fff;width:44px;height:44px;box-shadow:0 3px 0 var(--pink-deep);border-radius:50%;font-size:22px;position:absolute;top:10px;right:10px}.modal-body{-webkit-overflow-scrolling:touch;touch-action:pan-y;overscroll-behavior:contain;flex:auto;min-height:0;padding:8px 18px 20px;overflow-y:auto}.tabs{touch-action:pan-x;scrollbar-width:none;gap:6px;padding:4px 14px 8px;display:flex;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tab{border-radius:var(--pill);white-space:nowrap;background:#fff;flex:none;padding:8px 14px;font-size:14px;box-shadow:0 2px #e8dff5}.tab.on{background:var(--strawberry);color:#fff;box-shadow:0 2px #e85a78}.menu-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.menu-card{box-shadow:0 3px 0 var(--pink);background:#fff;border-radius:18px;flex-direction:column;align-items:center;gap:4px;padding:16px 10px;font-size:16px;display:flex}.menu-card .e{font-size:34px}.menu-card small{color:var(--ink-soft);font-size:12px}.loc-list{flex-direction:column;gap:8px;display:flex}.loc{box-shadow:0 3px 0 var(--blue);text-align:left;background:#fff;border-radius:16px;align-items:center;gap:12px;padding:10px 12px;display:flex}.loc .e{background:var(--blue-soft);border-radius:12px;place-items:center;width:44px;height:44px;font-size:28px;display:grid}.loc .n{flex:1;font-size:16px}.loc .n small{color:var(--ink-soft);font-size:12px;display:block}.loc.locked{opacity:.55}.loc.here{box-shadow:0 3px 0 var(--strawberry)}.stk-grid{grid-template-columns:repeat(auto-fill,minmax(78px,1fr));gap:10px;display:grid}.stk{aspect-ratio:1;box-shadow:0 3px 0 var(--lavender);background:#fff;border-radius:18px;place-items:center;font-size:34px;display:grid;position:relative}.stk.missing{color:#cfc4dd;background:#f4eff8;font-size:26px}.stk span{color:var(--ink-soft);font-size:10px;position:absolute;bottom:4px}.sect{align-items:center;gap:6px;margin:14px 0 8px;font-size:16px;display:flex}.photos{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;display:grid}.polaroid{transform:rotate(var(--r,-2deg));background:#fff;border-radius:6px;padding:6px 6px 22px;position:relative;box-shadow:0 4px 12px #a096d24d}.polaroid img{border-radius:3px;width:100%;display:block}.polaroid span{text-align:center;color:var(--ink-soft);font-size:11px;position:absolute;bottom:3px;left:0;right:0}.quest{background:#fff;border-radius:14px;align-items:center;gap:10px;margin-bottom:8px;padding:8px 12px;font-size:14px;display:flex}.quest.done{opacity:.6;text-decoration:line-through}.set-row{border-bottom:2px dotted var(--pink);align-items:center;gap:12px;padding:10px 4px;font-size:16px;display:flex}.set-row label{flex:1}.set-row input[type=range]{accent-color:var(--strawberry);touch-action:pan-x;flex:1.3;height:30px}.toggle{background:#e8e2f0;border-radius:99px;width:58px;height:32px;transition:background .2s;position:relative}.toggle:after{content:"";width:26px;height:26px;transition:transform .25s var(--bounce);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 2px 4px #00000026}.toggle.on{background:var(--strawberry)}.toggle.on:after{transform:translate(26px)}.credits p{margin:8px 0;font-size:14px;font-weight:700;line-height:1.55}.credits h3{color:var(--strawberry);margin:14px 0 4px;font-size:16px}.note{color:var(--ink-soft);font-size:13px;font-weight:700}.result{text-align:center;padding:20px 22px 22px}.result .big-emoji{font-size:64px;line-height:1;animation:1s ease-in-out infinite hop}.result h2{margin:8px 0 4px;font-size:28px}.result .stats{flex-wrap:wrap;justify-content:center;gap:12px;margin:12px 0;display:flex}.result .stat{box-shadow:0 3px 0 var(--lavender);background:#fff;border-radius:16px;min-width:84px;padding:8px 14px}.result .stat b{font-size:22px;display:block}.result .stat small{color:var(--ink-soft);font-size:12px}.result .reward{color:var(--strawberry);margin:6px 0 14px;font-size:22px}.result .btns{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.trans{z-index:90;pointer-events:none;position:fixed;top:0;bottom:0;left:0;right:0}.trans.cover{pointer-events:auto}.trans .cloud{transition:transform .55s var(--bounce);background:#fff;border-radius:50%;position:absolute;box-shadow:inset -10px -14px #ffccd573}.trans .fill{opacity:0;background:radial-gradient(circle at 50% 45%,#fff 0%,#ffe3ea 55%,#dcecff 100%);transition:opacity .35s;position:absolute;top:0;bottom:0;left:0;right:0}.trans.cover .fill{opacity:1;transition-delay:.25s}.trans .t-center{text-align:center;opacity:0;transition:opacity .3s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.trans.cover .t-center{opacity:1;transition-delay:.35s}.trans .t-sheep{font-size:54px;animation:.8s ease-in-out infinite sheepHop;display:inline-block}.trans .t-text{color:var(--strawberry);margin-top:6px;font-size:16px}.trans .t-hearts{letter-spacing:6px;color:var(--pink-deep)}.trans .t-hearts i{font-style:normal;animation:.9s ease-in-out infinite hop;display:inline-block}.trans .t-hearts i:nth-child(2){animation-delay:.15s}.trans .t-hearts i:nth-child(3){animation-delay:.3s}@keyframes sheepHop{0%,to{transform:translate(-40px)scaleX(-1)}25%{transform:translate(-20px,-24px)scaleX(-1)}50%{transform:translate(0)scaleX(-1)}75%{transform:translate(20px,-24px)scaleX(-1)}}.title{z-index:25;padding:calc(28px + var(--sat)) 16px calc(26px + var(--sab));pointer-events:none;flex-direction:column;justify-content:space-between;align-items:center;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.title>*{pointer-events:auto}.logo{text-align:center;animation:logoIn 1s var(--bounce)}.logo .l1{color:#fff;letter-spacing:4px;text-shadow:0 2px 0 var(--pink-deep), 0 0 18px #ff7a9399;font-size:clamp(16px,4cqw,22px)}.logo .l2{color:#fff;letter-spacing:1px;text-shadow:0 4px #ff9db3,0 8px #e85a78,0 14px 24px #e85a7873;-webkit-text-stroke:2px #fff;font-size:clamp(40px,10.5cqw,78px);font-weight:900;line-height:.95}.logo .l2 span{color:#ff7a93}.logo .l3{color:#7fb7f5;background:#ffffffd9;border-radius:99px;margin-top:8px;padding:4px 14px;font-size:clamp(13px,3.4cqw,16px);display:inline-block}@keyframes logoIn{0%{opacity:0;transform:scale(.6)translateY(-30px)}}.title-btns{width:min(80cqw,300px);animation:logoIn 1.2s var(--bounce);flex-direction:column;align-items:center;gap:12px;display:flex}.title-btns .candy{width:100%}.title-btns .row{gap:10px;width:100%;display:flex}.title-btns .row .candy{flex:1}.title .fine{color:#36404999;text-align:center;margin-top:8px;font-size:11px;font-weight:700}.tut{left:50%;top:calc(76px + var(--sat));z-index:22;width:min(92cqw,420px);animation:popIn .35s var(--bounce);align-items:center;gap:12px;padding:14px 18px;display:flex;position:fixed;transform:translate(-50%)}.tut .ti{font-size:38px;animation:1s ease-in-out infinite hop}.tut .tt{flex:1;font-size:16px;line-height:1.35}.tut .skip{color:var(--ink-soft);align-self:flex-start;padding:8px;font-size:12px}.tut .tsteps{gap:5px;display:flex;position:absolute;bottom:-12px;left:50%;transform:translate(-50%)}.tut .tsteps i{width:8px;height:8px;box-shadow:0 1px 0 var(--pink-deep);background:#fff;border-radius:50%}.tut .tsteps i.on{background:var(--strawberry)}.tut-arrow{z-index:22;pointer-events:none;font-size:34px;animation:.9s ease-in-out infinite floaty;position:fixed}.mg{z-index:15;pointer-events:none;position:fixed;top:0;bottom:0;left:0;right:0}.mg>*{pointer-events:auto}.mg-top{top:calc(10px + var(--sat));pointer-events:none;justify-content:space-between;align-items:flex-start;gap:8px;display:flex;position:absolute;left:12px;right:12px}.mg-top>*{pointer-events:auto}.mg-pill{box-shadow:0 3px 0 var(--pink-deep);white-space:nowrap;background:#fff;border-radius:16px;padding:6px 14px;font-size:18px}.mg-pill small{color:var(--ink-soft);font-size:11px;display:block}.meter{width:min(40cqw,200px);height:18px;box-shadow:inset 0 2px 0 #0000000f, 0 3px 0 var(--pink);background:#fff;border-radius:99px;position:relative;overflow:hidden}.meter i{background:linear-gradient(90deg, var(--pink), var(--strawberry));border-radius:99px;transition:width .2s;position:absolute;top:0;bottom:0;left:0}.meter.blue i{background:linear-gradient(90deg, var(--blue), #7fb7f5)}.meter.mint i{background:linear-gradient(90deg, var(--mint), #6fd3a8)}.big-center{color:#fff;pointer-events:none;text-shadow:0 5px 0 var(--strawberry), 0 12px 24px #e85a7866;-webkit-text-stroke:2px #fff;font-size:88px;font-weight:900;position:absolute;top:42%;left:50%;transform:translate(-50%,-50%)}.big-center.pop{animation:countPop .8s var(--bounce) forwards}@keyframes countPop{0%{opacity:0;transform:translate(-50%,-50%)scale(.3)}30%{opacity:1;transform:translate(-50%,-50%)scale(1.15)}70%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-50%)scale(1.3)}}.judge{pointer-events:none;animation:judgeIn .6s var(--bounce) forwards;text-shadow:0 3px #fff,0 0 10px #fff;font-size:30px;font-weight:900;position:absolute;top:30%;left:50%;transform:translate(-50%)}.judge.perfect{color:#ff7a93}.judge.good{color:#7fb7f5}.judge.miss{color:#a9a2b8}@keyframes judgeIn{0%{opacity:0;transform:translate(-50%)scale(.4)}40%{opacity:1;transform:translate(-50%)scale(1.15)}to{opacity:0;transform:translate(-50%)translateY(-24px)scale(1)}}.mg-controls{bottom:calc(18px + var(--sab));padding:0 calc(16px + var(--sar)) 0 calc(16px + var(--sal));pointer-events:none;justify-content:space-between;display:flex;position:absolute;left:0;right:0}.mg-controls>*{pointer-events:auto}.pad-btn{width:84px;height:84px;box-shadow:0 5px 0 var(--pink-deep), 0 10px 20px #ff7a934d;touch-action:none;background:#ffffffeb;border-radius:26px;font-size:36px}.pad-btn:active,.pad-btn.down{box-shadow:0 1px 0 var(--pink-deep);transform:translateY(4px)}.pad-btn.jump{background:linear-gradient(#fff, var(--blue-soft));box-shadow:0 5px #86b8f0}.rotate-hint{left:50%;top:calc(70px + var(--sat));box-shadow:0 3px 0 var(--blue);z-index:16;pointer-events:none;white-space:nowrap;background:#fff;border-radius:99px;padding:8px 16px;font-size:14px;animation:4s forwards toastIn;position:fixed;transform:translate(-50%)}.debug-stats{z-index:200;pointer-events:none;background:#ffffffd9;border-radius:10px;padding:4px 10px;font:700 12px monospace;position:fixed;bottom:8px;left:8px}.wd-panel{left:50%;bottom:calc(10px + var(--sab));width:min(96cqw,620px);max-height:46cqh;animation:dlgIn .35s var(--bounce);flex-direction:column;padding:8px 4px 10px;display:flex;position:absolute;transform:translate(-50%)}@container (orientation:landscape){.wd-panel{left:auto;right:calc(10px + var(--sar));top:calc(10px + var(--sat));bottom:calc(10px + var(--sab));width:min(52cqw,470px);max-height:none;transform:none}.mg.wardrobe .mg-top{right:calc(min(52cqw, 470px) + 24px + var(--sar))}}.wd-rot{left:calc(12px + var(--sal));bottom:calc(12px + var(--sab));gap:8px;display:flex;position:absolute}@container (orientation:landscape) and (height<=520px){.wd-panel{padding:6px 2px 8px}.wd-panel .tabs{gap:4px;padding:2px 10px 4px}.wd-panel .tab{padding:5px 10px;font-size:12px}.wd-grid{grid-template-columns:repeat(auto-fill,minmax(86px,1fr));gap:6px;padding:6px 10px}.wd-card{border-radius:12px;padding:6px 3px 5px}.wd-card .e{font-size:24px}.wd-card b{font-size:11px}.wd-card small{font-size:9px}.wd-actions{gap:6px;padding:4px 10px 0}.wd-actions .candy{padding:7px 12px;font-size:13px}.wd-rot .icon-btn{width:40px;height:40px}}.wd-sub{padding-top:0}.wd-sub .tab{padding:6px 12px;font-size:13px}.wd-grid{touch-action:pan-y;-webkit-overflow-scrolling:touch;flex:1;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;padding:4px 12px 8px;display:grid;overflow-y:auto}.wd-card{box-shadow:0 3px 0 var(--lavender);transition:transform .15s var(--bounce);background:#fff;border-radius:16px;flex-direction:column;align-items:center;gap:1px;min-height:92px;padding:8px 4px 6px;font-size:12px;display:flex;position:relative}.wd-card:active{transform:scale(.95)}.wd-card .e{font-size:30px;line-height:1.2}.wd-card b{text-align:center;font-size:12px;line-height:1.15}.wd-card small{color:var(--ink-soft);font-size:10px}.wd-card.on{box-shadow:0 0 0 3px var(--strawberry), 0 3px 0 var(--pink-deep)}.wd-card.locked .e{filter:grayscale(.5)opacity(.7)}.wd-card .price{background:var(--strawberry);color:#fff;border:2px solid #fff;border-radius:99px;padding:1px 7px;font-size:11px;font-style:normal;position:absolute;top:-6px;right:-4px}.wd-note{color:var(--ink-soft);grid-column:1/-1;font-size:12px}.wd-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:6px 12px 0;display:flex}.wd-loading{box-shadow:0 3px 0 var(--pink);background:#fff;border-radius:99px;padding:6px 16px;font-size:14px;position:absolute;top:18%;left:50%;transform:translate(-50%)}.cred-tags{flex-wrap:wrap;justify-content:center;gap:6px;margin-top:6px;display:inline-flex}.cred-tags span{box-shadow:0 2px 0 var(--pink);background:#fff;border-radius:99px;padding:3px 10px;font-size:13px}.rotate-screen{z-index:2000;text-align:center;background:radial-gradient(circle at 50% 40%,#fff 0%,#ffe3ea 50%,#dcecff 100%);flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:24px;display:none;position:fixed;top:0;bottom:0;left:0;right:0}.rotate-screen.on{display:flex}.rs-phone{width:86px;height:150px;animation:rsTurn 2.4s var(--bounce) infinite;background:linear-gradient(#b2d9ff,#ffccd5);border:6px solid #fff;border-radius:20px;place-items:center;display:grid;box-shadow:0 6px #ff9db3,0 12px 30px #ff7a9359}.rs-screen{font-size:40px;animation:.8s ease-in-out infinite hop}.rs-title{color:var(--strawberry);font-size:24px;font-weight:900}.rs-sub{color:var(--ink-soft);max-width:280px;font-size:14px;font-weight:700}@keyframes rsTurn{0%,25%{transform:rotate(0)}55%,85%{transform:rotate(-90deg)}to{transform:rotate(0)}}@container (orientation:landscape){.title{padding-left:calc(5cqw + var(--sal));justify-content:center;align-items:flex-start;gap:min(4cqh,22px)}.title .logo{text-align:left}.logo .l1{font-size:clamp(12px,3.2cqh,20px)}.logo .l2{font-size:clamp(30px,min(8cqw,14cqh),84px)}.logo .l3{font-size:clamp(11px,2.8cqh,16px)}.title-btns{align-items:stretch;width:min(34cqw,300px)}.title .fine{text-align:left;max-width:34cqw}}@container (orientation:landscape) and (height<=480px){.title .candy{min-height:40px;padding:6px 16px;font-size:15px}.title-btns{gap:8px}.title .fine{display:none}}body.lang-ko{font-family:Jua,Nunito,Apple SD Gothic Neo,Malgun Gothic,sans-serif}body.lang-ja{font-family:"M PLUS Rounded 1c",Nunito,Hiragino Maru Gothic ProN,Hiragino Sans,Yu Gothic,sans-serif}body.lang-zh{font-family:Nunito,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Noto Sans SC,sans-serif}body.lang-ko .logo .l2,body.lang-ja .logo .l2,body.lang-zh .logo .l2{font-family:Nunito,sans-serif}.lang-pills{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.lang-pill{box-shadow:0 2px 0 var(--lavender);background:#fff;border-radius:99px;padding:6px 12px;font-size:14px}.lang-pill.on{background:var(--strawberry);color:#fff;box-shadow:0 2px #e85a78}.title-lang{top:calc(12px + var(--sat));right:calc(12px + var(--sar));color:var(--ink);box-shadow:0 3px 0 var(--lavender), 0 4px 14px #785a8c2e;pointer-events:auto;background:#fff;border-radius:99px;align-items:center;gap:6px;padding:8px 14px 8px 10px;font-size:16px;font-weight:800;display:flex;position:absolute}.title-lang .ic{width:1.4em;height:1.4em}.title-lang .caret{opacity:.6;font-size:11px}.lang-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.lang-grid .candy{font-size:18px}.modal-wrap .modal{max-height:calc(100cqh - 20px)}@container (height<=520px){.modal-head{padding:10px 50px 4px}.modal-head h2{font-size:19px}.modal-body{padding:4px 14px 12px}.result{padding:8px 12px 10px}.result .big-emoji{font-size:38px}.result h2{margin:2px 0;font-size:21px}.result .stats{gap:6px;margin:6px 0}.result .stat{min-width:64px;padding:4px 10px}.result .stat b{font-size:17px}.result .reward{margin:2px 0 8px;font-size:17px}.result .btns .candy{min-height:38px;padding:6px 14px;font-size:14px}}.ic{vertical-align:-.24em;background:50%/contain no-repeat;flex:none;width:1.18em;height:1.18em;display:inline-block;position:relative}.ic-t{clip-path:inset(50%);opacity:0;white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.menu-card.lang-card{box-shadow:0 3px 0 var(--blue,#b2d9ff);background:#eef7ff;flex-direction:row;grid-column:1/-1;justify-content:center;gap:10px;padding:10px 12px}.menu-card.lang-card .e{font-size:26px}.menu-card.lang-card small{font-size:13px}button{word-break:keep-all}.title-btns .row .candy{white-space:nowrap;flex:auto}.cam-hint{right:calc(118px + var(--sar));bottom:calc(44px + var(--sab));color:#fff;text-align:center;pointer-events:none;text-shadow:0 1px 3px #ff7a93cc;max-width:150px;font-size:12px;font-weight:800;transition:opacity .6s;position:fixed}.cam-hint.used{opacity:0}body:not(.touch) .cam-hint{display:none}
