:root{--pink-50: #fff7fb;--pink-100: #ffeaf4;--pink-150: #ffdcec;--pink-200: #ffcde4;--pink-300: #ffb3d4;--pink-400: #ff8fbe;--pink-500: #ff6fab;--pink-600: #f0528f;--cream: #fffcf8;--lav: #c9a7f5;--lav-soft: #ece0ff;--mint: #a8e6cf;--mint-soft: #d9f6ec;--yellow: #ffd97d;--yellow-soft: #fff3d4;--sky: #bfe6ff;--sky-soft: #e4f5ff;--ink: #4a2b3a;--ink-soft: #7d5b6b;--line: #f6dbe7;--shadow-clay: 0 10px 0 rgba(240, 160, 195, .32), 0 18px 34px rgba(214, 128, 165, .18);--shadow-soft: 0 8px 22px rgba(214, 128, 165, .16);--shadow-press: 0 4px 0 rgba(240, 160, 195, .34), 0 8px 16px rgba(214, 128, 165, .16);--r-sm: 14px;--r-md: 22px;--r-lg: 32px;--r-xl: 44px;--ease: cubic-bezier(.34, 1.56, .64, 1)}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:Quicksand,system-ui,sans-serif;color:var(--ink);background:#ffeef6;-webkit-font-smoothing:antialiased;overscroll-behavior-y:none}h1,h2,h3,h4,.display{font-family:"Baloo 2",Quicksand,sans-serif;font-weight:700;letter-spacing:-.01em;margin:0;line-height:1.1}button{font-family:inherit;color:inherit;border:none;background:none;cursor:pointer}button:focus-visible,[role=button]:focus-visible{outline:3px solid var(--pink-500);outline-offset:4px}#root{min-height:100vh}.app{min-height:100dvh;position:relative;background:radial-gradient(1100px 560px at 12% -8%,#fffafd,#fffafd00 62%),radial-gradient(900px 500px at 100% 2%,#fff2f9,#fff2f900 58%),linear-gradient(180deg,#ffeef6,#ffe7f2 48%,#fff0f7);overflow-x:hidden}.home{max-width:1180px;margin:0 auto;padding:22px clamp(16px,4vw,40px) 56px}.home-top{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.brand{display:flex;align-items:center;gap:10px}.brand-kitty{flex:none;filter:drop-shadow(0 7px 10px rgba(214,128,165,.25))}.brand-txt h1{font-size:clamp(19px,2.3vw,26px)}.brand-txt p{margin:1px 0 0;font-size:10.5px;font-weight:700;color:#b488a0;letter-spacing:.16em;text-transform:uppercase}.top-actions{display:flex;align-items:center;gap:10px}.round-btn{width:46px;height:46px;border-radius:50%;background:#fff;display:grid;place-items:center;color:var(--ink);box-shadow:0 5px #ffd7e8,0 10px 18px #d680a529;transition:transform .18s var(--ease),box-shadow .18s}.round-btn:hover{transform:translateY(-2px)}.round-btn:active{transform:translateY(2px);box-shadow:0 2px #ffd7e8}.soft-btn{display:inline-flex;align-items:center;gap:8px;background:#fff;border-radius:999px;padding:11px 15px;font-weight:700;font-size:13.5px;box-shadow:0 5px #ffd7e8,0 10px 18px #d680a524;transition:transform .18s var(--ease),box-shadow .18s}.soft-btn:hover{transform:translateY(-2px)}.soft-btn:active{transform:translateY(2px);box-shadow:0 2px #ffd7e8}.soft-btn b{background:var(--pink-150);color:var(--pink-600);border-radius:999px;padding:2px 9px;font-size:11.5px}.soft-btn.small{font-size:12.5px;padding:8px 12px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:999px;padding:13px 22px;font-family:"Baloo 2",sans-serif;font-size:16px;font-weight:700;transition:transform .18s var(--ease),box-shadow .18s}.btn-primary{background:linear-gradient(180deg,#ff8fbe,#ff6fab);color:#fff;box-shadow:0 7px #e8568f,0 16px 26px #f0528f4d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 9px #e8568f,0 20px 30px #f0528f57}.btn-primary:active{transform:translateY(3px);box-shadow:0 3px #e8568f}.btn-ghost{background:#fff;color:var(--ink);box-shadow:0 6px #ffd7e8,0 12px 20px #d680a524}.btn-ghost:hover{transform:translateY(-2px)}.btn-ghost:active{transform:translateY(2px);box-shadow:0 2px #ffd7e8}.hero{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(20px,4vw,52px);align-items:center;margin-top:clamp(22px,3.5vw,44px)}.eyebrow{display:inline-flex;align-items:center;gap:7px;font-size:10.5px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:var(--pink-600);background:#fff;padding:7px 14px;border-radius:999px;box-shadow:0 4px #ffe0ee}.hero-copy h2{font-size:clamp(32px,5vw,56px);margin:16px 0 14px;line-height:1.02}.hero-copy h2 em{font-style:normal;color:var(--pink-500);position:relative;display:inline-block}.hero-copy h2 em:after{content:"";position:absolute;left:-4px;right:-4px;bottom:4px;height:12px;background:#ffd9e9;border-radius:99px;z-index:-1}.hero-copy p{max-width:46ch;color:var(--ink-soft);font-size:15.5px;line-height:1.68;margin:0 0 22px}.hero-btns{display:flex;gap:12px;flex-wrap:wrap}.hero-facts{display:flex;gap:26px;margin-top:26px;font-size:12px;color:var(--ink-soft);font-weight:600}.hero-facts b{display:block;font-family:"Baloo 2",sans-serif;font-size:19px;color:var(--ink);line-height:1.2}.hero-art{display:flex;justify-content:center}.hero-frame{position:relative;width:min(100%,400px);aspect-ratio:1 / 1;border-radius:46% 54% 48% 52%/50% 46% 54% 50%;background:radial-gradient(circle at 50% 32%,#fff,#ffeaf4 52%,#ffd3e7);box-shadow:inset 0 0 0 9px #fff,0 22px 46px #d680a542;display:grid;place-items:end center;overflow:hidden;animation:floaty 7s ease-in-out infinite}.hero-frame .kitty{margin-bottom:-6px}.hero-scallop{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;background:radial-gradient(circle at 50% 118%,rgba(255,255,255,.85),transparent 42%)}.hero-sparkles{position:absolute;left:50%;top:46%;width:0;height:0}.hero-dish{position:absolute;right:24px;bottom:34px;transform:rotate(6deg);filter:drop-shadow(0 8px 12px rgba(190,110,150,.22))}.hero-tag{position:absolute;left:22px;bottom:30px;background:#fff;color:var(--pink-600);font-family:"Baloo 2",sans-serif;font-size:12px;font-weight:700;letter-spacing:.06em;padding:6px 13px;border-radius:999px;transform:rotate(-6deg);box-shadow:0 4px #ffe0ee}.menu{margin-top:clamp(40px,6vw,78px)}.menu-head h3{font-size:clamp(24px,3vw,32px)}.menu-head p{color:var(--ink-soft);margin:5px 0 22px;font-size:14.5px}.recipe-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:18px}.recipe-card{position:relative;background:var(--card-bg);border:3px solid #fff;border-radius:var(--r-lg);padding:16px;display:flex;flex-direction:column;gap:12px;box-shadow:0 8px #d28caf29,0 16px 28px #d680a524;cursor:pointer;transition:transform .24s var(--ease),box-shadow .24s;overflow:hidden}.recipe-card:hover{transform:translateY(-6px) rotate(-.5deg);box-shadow:0 14px #d28caf29,0 26px 36px #d680a538}.recipe-card:active{transform:translateY(-1px)}.card-art{position:relative;display:grid;place-items:center;height:128px}.card-blob{position:absolute;width:118px;height:118px;border-radius:50%;background:#ffffff9e;box-shadow:inset 0 -6px 14px #ffffffe6}.card-dish{position:relative;transition:transform .3s var(--ease)}.recipe-card:hover .card-dish{transform:scale(1.07) rotate(-3deg)}.card-info h4{font-size:16.5px;line-height:1.15}.card-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.card-new{font-size:9.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;background:#fff;color:var(--pink-600);padding:3px 9px;border-radius:999px;flex:none}.card-stars{display:flex;gap:1px;color:#e2b2c6;flex:none}.card-stars .on{color:#f7a8c6;fill:#ffb3d4;stroke:#f78bb4}.card-info p{margin:6px 0 0;font-size:12.5px;color:#7d5768;line-height:1.45;min-height:36px}.card-foot{display:flex;align-items:center;gap:7px;margin-top:12px}.pill{font-size:11px;font-weight:700;background:#fff;padding:5px 10px;border-radius:999px;color:var(--ink)}.pill.ghost{background:#ffffff80}.card-go{margin-left:auto;width:31px;height:31px;border-radius:50%;background:#fff;display:grid;place-items:center;color:var(--pink-600);transition:transform .2s var(--ease)}.recipe-card:hover .card-go{transform:translate(3px)}.how{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin-top:50px}.how-card{background:#fff;border-radius:26px;padding:18px 20px;box-shadow:0 6px #ffe1ee,0 12px 22px #d680a51a}.how-num{display:grid;place-items:center;width:33px;height:33px;border-radius:50%;background:var(--pink-150);color:var(--pink-600);font-family:"Baloo 2",sans-serif;font-weight:800;margin-bottom:9px}.how-card h4{font-size:15px}.how-card p{margin:5px 0 0;font-size:12.5px;color:var(--ink-soft);line-height:1.5}.home-foot{margin-top:42px;text-align:center;font-size:12px;color:#b58ba2;display:flex;align-items:center;justify-content:center;gap:5px;flex-wrap:wrap}.home-foot svg{color:var(--pink-400)}.game{max-width:1100px;margin:0 auto;min-height:100dvh;display:flex;flex-direction:column;gap:12px;padding:14px clamp(10px,3vw,26px) 20px}.game-bar{display:flex;align-items:center;gap:10px}.game-title{flex:1;display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap}.game-recipe{font-family:"Baloo 2",sans-serif;font-size:17px;font-weight:700}.dots{display:flex;gap:6px;align-items:center}.dot{width:15px;height:15px;border-radius:50%;background:#fff;display:grid;place-items:center;color:#fff;box-shadow:inset 0 0 0 2px #f6cadd;transition:all .32s var(--ease)}.dot.done{background:var(--accent);box-shadow:none}.dot.now{width:25px;border-radius:999px;background:var(--accent);box-shadow:0 0 0 4px #fff,0 0 0 6px var(--soft)}.scene{position:relative;flex:1;display:flex;flex-direction:column;min-height:500px;border-radius:34px;overflow:hidden;background:linear-gradient(180deg,#ffeaf4,#ffdcec);box-shadow:inset 0 0 0 4px #fff,0 16px 34px #d680a533}.hint-row{position:relative;z-index:4;display:flex;align-items:flex-start;gap:8px;padding:12px clamp(10px,2vw,22px) 0}.hint-kitty{flex:none;margin-top:-4px;filter:drop-shadow(0 6px 9px rgba(214,128,165,.28));animation:bob 3.4s ease-in-out infinite}.speech{position:relative;background:#fff;border-radius:5px 20px 20px;padding:9px 15px;font-size:13px;font-weight:600;line-height:1.45;color:var(--ink);max-width:44ch;box-shadow:0 6px 14px #d680a529}.speech p{margin:0}.speech.is-pop{animation:pop .4s var(--ease)}.counter{position:relative;z-index:2;margin-top:auto;padding:12px clamp(8px,2vw,20px) 16px;background:linear-gradient(180deg,#fffbf8f7,#fff4f9);border-top:4px solid #ffd9e8;border-radius:30px 30px 0 0;box-shadow:0 -12px 26px #d680a524}.step-host{position:relative}.game-foot{display:flex;flex-direction:column;gap:1px;padding:0 clamp(6px,2vw,16px) 4px}.step-count{font-size:10.5px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--pink-600)}.step-title{font-size:19px}.kitchen-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;overflow:hidden}.k-wall{position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(circle at 12px 12px,rgba(255,255,255,.6) 2.2px,transparent 2.4px),radial-gradient(circle at 29px 29px,rgba(255,255,255,.35) 1.8px,transparent 2px);background-size:34px 34px}.k-window{position:absolute;top:7%;right:4.5%;width:min(26%,210px);aspect-ratio:.9;border-radius:18px 18px 10px 10px;overflow:hidden;background:linear-gradient(180deg,#eaf9ff,#cbeaff);box-shadow:0 0 0 8px #fff,0 0 0 11px #ffd9e8,0 12px 20px #d680a529}.k-sky{position:absolute;top:0;right:0;bottom:0;left:0}.k-sun{position:absolute;top:11%;right:13%;width:25%;aspect-ratio:1;border-radius:50%;background:#ffe9a8;box-shadow:0 0 24px #ffe9a8e6}.k-cloud{position:absolute;height:13px;border-radius:999px;background:#fff;opacity:.95}.k-cloud:before,.k-cloud:after{content:"";position:absolute;background:#fff;border-radius:50%}.k-cloud:before{width:17px;height:17px;left:8px;top:-8px}.k-cloud:after{width:22px;height:22px;right:12px;top:-11px}.k-cloud.c1{top:30%;left:8%;width:42%}.k-cloud.c2{top:58%;left:38%;width:30%;transform:scale(.8);opacity:.8}.k-cross{position:absolute;background:#fff}.k-cross.v{left:50%;top:0;bottom:0;width:6px;transform:translate(-50%)}.k-cross.h{top:52%;left:0;right:0;height:6px}.k-curtain{position:absolute;top:0;width:26%;height:74%;background:repeating-linear-gradient(90deg,#ffb3d4 0,#ffb3d4 8px,#ff9fc4 8px,#ff9fc4 16px);box-shadow:0 6px 10px #d680a52e}.k-curtain.l{left:0;border-radius:0 0 60% 12px}.k-curtain.r{right:0;border-radius:0 0 12px 60%}.k-sill{position:absolute;bottom:0;left:-6%;right:-6%;height:9%;background:#fff;box-shadow:0 -2px #ffd9e8}.k-picture{position:absolute;top:12%;left:30%;width:clamp(52px,6vw,70px);aspect-ratio:1;border-radius:14px;display:grid;place-items:center;background:#fff;box-shadow:0 0 0 5px #ffd9e8,0 8px 14px #d680a524;transform:rotate(-4deg)}.k-heart{color:#ffb3d4;font-size:22px;line-height:1}.k-shelf{position:absolute;top:30%;left:4%;width:min(24%,190px);height:10px;border-radius:6px;background:#f6c8da;box-shadow:0 5px #eeb0c9,0 10px 16px #d680a529}.k-jar{position:absolute;bottom:8px;width:26px;height:32px;border-radius:7px 7px 11px 11px;box-shadow:inset 0 0 0 2.5px #ffffffd9}.k-jar i{position:absolute;top:-6px;left:3px;right:3px;height:7px;border-radius:4px;background:#fff}.k-jar.pink{left:12%;background:#ffc7de}.k-jar.mint{left:34%;background:#bfe9d8;height:27px}.k-jar.cream{left:56%;background:#fff0d0;height:36px}.k-plant{position:absolute;right:8%;bottom:8px;width:34px;height:26px}.k-plant:after{content:"";position:absolute;bottom:-14px;left:4px;width:24px;height:16px;border-radius:4px 4px 9px 9px;background:#f7dcc7;box-shadow:inset 0 0 0 2px #fff}.k-plant b{position:absolute;bottom:0;width:15px;height:22px;border-radius:50% 50% 40% 40%;background:#a8e6cf}.k-plant b:nth-child(1){left:0;transform:rotate(-22deg)}.k-plant b:nth-child(2){left:9px;background:#8edcbb}.k-plant b:nth-child(3){right:0;transform:rotate(22deg)}.k-counter{position:absolute;left:0;right:0;bottom:26%;height:8px;background:#ffffff59}.k-hang{display:none}.step{display:flex;flex-direction:column;gap:12px}.stage-row{display:flex;align-items:flex-end;justify-content:center;gap:clamp(10px,3vw,38px);flex-wrap:wrap}.stage-row.wide{align-items:center}.stage-note{text-align:center;font-size:12px;font-weight:600;color:#ab7b91;margin:0}.station{position:relative;display:grid;place-items:center;padding:4px;border-radius:26px;transition:transform .2s var(--ease),background .2s,box-shadow .2s}.station.is-active{background:#ffffff80;transform:translateY(-3px) scale(1.015);box-shadow:inset 0 0 0 3px #fff,0 0 0 6px #ff8fbe59}.station-inner{display:grid;place-items:center}.station-label{position:absolute;bottom:-7px;left:50%;transform:translate(-50%);font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#b3778f;background:#fff;padding:3px 9px;border-radius:999px;white-space:nowrap;box-shadow:0 3px #ffe1ee}.bowl-station svg{width:clamp(140px,24vw,210px);height:auto}.step-tray{display:flex;flex-direction:column;gap:8px;align-items:center;background:#ffffff9e;border-radius:26px;padding:11px 12px 10px;box-shadow:inset 0 0 0 2px #ffffffe6}.tray-label{font-size:9.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#b3778f}.chip-row{display:flex;gap:9px;flex-wrap:wrap;justify-content:center;width:100%}.chip-wrap{touch-action:none}.chip{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;width:clamp(62px,13vw,80px);padding:8px 5px 6px;border-radius:20px;background:#fff;box-shadow:0 5px 0 var(--chip-ring),0 10px 16px #d680a524;transition:transform .18s var(--ease),box-shadow .18s;cursor:grab}.chip:hover{transform:translateY(-4px)}.chip:active{transform:translateY(1px);box-shadow:0 2px 0 var(--chip-ring)}.chip-label{font-size:9.5px;font-weight:700;color:#8a6076;text-align:center;line-height:1.1}.chip.is-used{opacity:.42;filter:grayscale(.3);cursor:default}.chip-tick{position:absolute;top:-6px;right:-6px;width:20px;height:20px;border-radius:50%;background:#7fd8b4;color:#fff;display:grid;place-items:center;box-shadow:0 2px #5cbf99}.chip.is-shake{animation:shake .45s}.chip-art svg{width:100%;height:100%;display:block}.checklist{background:#ffffffb8;border-radius:22px;padding:11px 15px;box-shadow:inset 0 0 0 2px #fff;min-width:166px}.mini-title{font-family:"Baloo 2",sans-serif;font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:#b3778f;margin:0 0 6px}.checklist ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:3px}.checklist li{display:flex;align-items:center;gap:7px;font-size:11.5px;font-weight:600;color:#c9a9b8;transition:color .25s}.checklist li.on{color:var(--ink)}.tick-dot{margin-left:auto;width:17px;height:17px;border-radius:50%;background:#ffeaf4;display:grid;place-items:center;color:#fff;box-shadow:inset 0 0 0 1.5px #ffd1e6;transition:all .25s var(--ease)}.checklist li.on .tick-dot{background:#7fd8b4;box-shadow:0 2px #5cbf99}.drag-ghost{position:fixed;left:0;top:0;width:76px;height:76px;display:grid;place-items:center;pointer-events:none;z-index:9999;opacity:0;transition:opacity .12s}.drag-ghost.is-on{opacity:1}.drag-ghost>*{width:100%;height:100%;filter:drop-shadow(0 12px 12px rgba(120,60,90,.28));animation:ghost .7s ease-in-out infinite}body.is-dragging,body.is-dragging *{cursor:grabbing!important;-webkit-user-select:none;user-select:none}.stir-stage{display:flex;flex-direction:column;align-items:center;gap:6px;width:100%}.bowl-hold{position:relative;width:clamp(180px,32vw,290px);display:grid;place-items:center;touch-action:none}.bowl-hold .art-bowl{width:100%;height:auto}.swirl{position:absolute;left:50%;top:43%;width:62%;height:26%;transform:translate(-50%,-50%);border-radius:50%;pointer-events:none;opacity:.9;background:conic-gradient(from 0deg,#fffffff2,#fff0 35%,#ffffffe6 65%,#fff0);animation:spin 2s linear infinite;animation-play-state:paused}.swirl.is-on{animation-play-state:running}.whisk-hold{position:absolute;left:50%;top:50%;margin-top:-30px;width:clamp(74px,12vw,104px);cursor:grab;touch-action:none;transition:transform .06s linear}.whisk-hold:active{cursor:grabbing}.whisk-hold svg{width:100%;height:auto;filter:drop-shadow(0 8px 8px rgba(160,90,120,.22))}.wiggle-hint{position:absolute;bottom:4%;left:50%;transform:translate(-50%);background:#fff;color:var(--pink-600);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:4px 10px;border-radius:999px;box-shadow:0 3px #ffe1ee;animation:bob 2s ease-in-out infinite;white-space:nowrap}.mix-meter{width:min(320px,76%);display:flex;align-items:center;gap:10px}.mix-track{flex:1;height:13px;border-radius:99px;background:#fff;box-shadow:inset 0 0 0 2px #ffd9e8;overflow:hidden}.mix-fill{height:100%;border-radius:99px;background:linear-gradient(90deg,#ffb3d4,#ff6fab);transition:width .15s linear}.mix-pct{font-family:"Baloo 2",sans-serif;font-size:13px;color:var(--pink-600);width:36px;text-align:right}.cut-stage{display:flex;flex-direction:column;align-items:center;gap:6px;width:100%}.board{position:relative;width:min(100%,430px);display:grid;place-items:center;touch-action:none}.board .dish-art{width:100%;height:auto}.cutter-hold{position:absolute;left:50%;top:50%;margin-top:-18px;width:clamp(66px,11vw,92px);cursor:grab;touch-action:none}.cutter-hold:active{cursor:grabbing}.cut-star{position:absolute;width:8.5%;aspect-ratio:1;transform:translate(-50%,-50%);background:#ffeacb;animation:starPop .4s var(--ease) both;clip-path:polygon(50% 0%,61% 34%,97% 35%,68% 56%,79% 91%,50% 70%,21% 91%,32% 56%,3% 35%,39% 34%);filter:drop-shadow(0 2px 0 rgba(200,150,110,.6));pointer-events:none}.cut-score{display:flex;align-items:center;gap:6px;font-size:11.5px;font-weight:700;color:#a9778f}.cut-score p{margin:0 0 0 4px}.star-slot{width:14px;height:14px;border-radius:4px;background:#fff;box-shadow:inset 0 0 0 2px #ffd9e8;transition:all .3s var(--ease)}.star-slot.on{background:#ffd97d;box-shadow:none;transform:rotate(12deg)}.pick-bowl,.pick-item,.pick-dish{position:relative;display:grid;place-items:center;cursor:grab;touch-action:none;transition:transform .2s var(--ease),opacity .3s}.pick-bowl:active,.pick-item:active,.pick-dish:active{cursor:grabbing}.pick-bowl{width:clamp(110px,18vw,160px)}.pick-bowl .art-bowl{width:100%;height:auto}.pick-bowl.is-poured{opacity:.3}.hold-tag{position:absolute;bottom:-6px;left:50%;transform:translate(-50%);background:#fff;color:#a9778f;font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:3px 9px;border-radius:999px;white-space:nowrap;box-shadow:0 3px #ffe1ee}.pick-item{width:clamp(140px,24vw,200px)}.pick-item svg{width:100%;height:auto}.pick-item.is-placed{opacity:.35}.fill-arrow{color:#ffaed1;flex:none;animation:nudge 1.8s ease-in-out infinite}.fill-target svg{width:clamp(150px,26vw,220px);height:auto}.drop-hint{position:absolute;bottom:6%;left:50%;transform:translate(-50%);font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#c98bab}.pour-stream{position:absolute;left:50%;top:-2%;width:13px;height:52%;transform:translate(-50%);border-radius:99px;background:linear-gradient(180deg,#fff1dc,#ffe0b8);animation:pourStream .9s ease-in forwards;box-shadow:0 0 12px #ffe0b8e6}.oven-station .art-oven{width:clamp(160px,26vw,225px);height:auto}.oven-station.is-baking{filter:drop-shadow(0 0 20px rgba(255,186,96,.55))}.oven-station.is-done{animation:ovenPop .6s var(--ease)}.oven-light{animation:blink 1s steps(2) infinite}.bake-timer{position:absolute;top:-10px;right:-14px;display:flex;flex-direction:column;align-items:center;gap:1px;background:#fff;border-radius:999px;padding:4px 6px;box-shadow:0 6px 14px #d680a538}.bake-timer span{font-size:8.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#b3778f}.bake-done{position:absolute;top:-6px;right:-8px;background:#fff;color:#3f9d78;font-family:"Baloo 2",sans-serif;font-weight:700;font-size:12px;padding:6px 12px;border-radius:999px;box-shadow:0 4px #d9f6ec;animation:pop .4s var(--ease)}.steam{position:absolute;bottom:80%;left:50%;transform:translate(-50%);display:flex;gap:12px}.steam span{width:9px;height:26px;border-radius:99px;background:linear-gradient(180deg,#fff0,#fffffff2);animation:steam 2.4s ease-in-out infinite}.decor-stage{display:grid;place-items:center;padding:2px 0}.decor-station{width:min(100%,300px)}.dish-wrap{position:relative;display:grid;place-items:center}.dish-wrap .dish-art{width:clamp(160px,30vw,232px);height:auto;filter:drop-shadow(0 12px 14px rgba(160,90,120,.16))}.decor-station:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:70%;height:14px;border-radius:50%;background:#d680a529;filter:blur(4px)}.swatch-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:center}.swatches{display:flex;gap:7px}.swatch{width:25px;height:25px;border-radius:50%;padding:0;box-shadow:inset 0 0 0 3px #fff,0 3px #0000000f;transition:transform .18s var(--ease),box-shadow .18s}.swatch.is-on{transform:scale(1.2);box-shadow:inset 0 0 0 3px #fff,0 0 0 2.5px var(--pink-500)}.over-dish{position:absolute;left:50%;top:42%}.plate-station .art-plate{width:clamp(200px,34vw,310px);height:auto}.pick-dish{width:clamp(100px,18vw,140px)}.pick-dish .dish-art{width:100%;height:auto}.pick-dish.is-gone{opacity:.22}.served-dish{position:absolute;bottom:30%;left:50%;transform:translate(-50%);animation:land .5s var(--ease)}.served-dish .dish-art{width:clamp(120px,22vw,165px);height:auto}.sparkles{position:absolute;width:0;height:0;pointer-events:none}.sparkle-bit{position:absolute;left:0;top:0;width:9px;height:9px;border-radius:50%;animation:sparkleOut .95s var(--ease) forwards}.confetti{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:60;overflow:hidden}.confetti-bit{position:absolute;top:-24px;border-radius:2px;animation:fall linear forwards}.confetti-bit.is-heart{background:transparent!important;font-size:15px;line-height:1}.float-hearts{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.float-hearts span{position:absolute;bottom:0;color:#ffb3d4;animation:rise 4s ease-in infinite}.reward{min-height:100dvh;display:grid;place-items:center;padding:26px 16px;position:relative}.reward-card{position:relative;z-index:2;width:min(560px,100%);background:#fff;text-align:center;border-radius:40px;padding:clamp(22px,4vw,36px);animation:cardIn .6s var(--ease);box-shadow:0 12px #ffd1e6bf,0 30px 60px #d680a542}.reward-card h2{font-size:clamp(23px,4vw,32px);margin:13px 0 8px;line-height:1.15}.reward-sub{color:var(--ink-soft);font-size:13px;margin:0 auto;max-width:34ch;line-height:1.55}.reward-stage{position:relative;height:208px;display:grid;place-items:center;margin:4px 0}.reward-kitty{position:absolute;left:2%;bottom:4px;animation:bob 3s ease-in-out infinite}.reward-plate{position:absolute;right:4%;bottom:16px;width:64%;height:34px;border-radius:50%;background:radial-gradient(ellipse at 50% 35%,#fff,#ffe9f3);box-shadow:inset 0 -4px #ffd9e8,0 8px 14px #d680a533}.reward-dish{position:absolute;right:8%;bottom:36px;animation:riseIn .7s var(--ease) both}.reward-dish .dish-art{width:clamp(130px,26vw,172px);height:auto;filter:drop-shadow(0 12px 14px rgba(160,90,120,.18))}.star-row{display:flex;justify-content:center;gap:10px;margin:2px 0 14px}.reward-star{color:#ffe3ee;fill:#ffe3ee;opacity:0}.reward-star.on{animation:starIn .7s var(--ease) forwards}.reward-sticker{display:inline-flex;align-items:center;gap:8px;background:#fff6fb;color:#a9778f;font-size:12px;padding:9px 16px;border-radius:999px;margin-bottom:18px;box-shadow:inset 0 0 0 1.5px #ffe1ee}.reward-sticker b{color:var(--pink-600)}.reward-btns{display:flex;gap:9px;justify-content:center;flex-wrap:wrap}.reward-btns .btn{font-size:14.5px;padding:12px 18px}.book,.studio{max-width:980px;margin:0 auto;padding:18px clamp(14px,4vw,34px) 52px;min-height:100dvh}.sub-top{display:flex;align-items:center;gap:14px}.sub-top h2{font-size:clamp(21px,3vw,27px)}.sub-note{margin:2px 0 0;font-size:11.5px;color:var(--ink-soft)}.soft-chip{margin-left:auto;display:inline-flex;align-items:center;gap:5px;background:#fff;border-radius:999px;padding:8px 14px;font-size:11.5px;font-weight:700;color:var(--pink-600);box-shadow:0 4px #ffe1ee;white-space:nowrap}.book-note{font-size:12.5px;color:#a9778f;margin:18px 0 20px;max-width:58ch;line-height:1.6}.sticker-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:18px}.sticker{position:relative;background:#fff;border-radius:30px;padding:20px 16px 14px;text-align:center;box-shadow:0 8px #ffe1ee,0 14px 24px #d680a51f;transition:transform .2s var(--ease)}.sticker.is-on{cursor:pointer;background:var(--sticker-bg)}.sticker.is-on:hover{transform:translateY(-5px) rotate(-1deg)}.sticker.is-locked{opacity:.8}.sticker-tape{position:absolute;top:-8px;left:50%;transform:translate(-50%) rotate(-2deg);width:62px;height:17px;border-radius:3px;background:#ffffffc7;box-shadow:0 2px 4px #0000000d}.sticker-art{display:grid;place-items:center;height:118px}.sticker.is-locked .sticker-art{filter:grayscale(1);opacity:.45}.sticker-lock{width:54px;height:54px;border-radius:50%;background:#ffeaf4;display:grid;place-items:center;color:#c9a9b8}.sticker h4{font-size:14.5px;margin-bottom:6px}.sticker-stars{display:flex;justify-content:center;gap:2px;color:#e6cbdb}.sticker-stars .on{color:#ffc94d;fill:#ffd97d;stroke:#f0b93f}.book-tip{margin-top:28px;display:flex;gap:12px;align-items:flex-start;background:#fff;border-radius:24px;padding:15px 19px;box-shadow:0 6px #ffe1ee;font-size:12px;color:#a9778f}.book-tip p{margin:0;line-height:1.55}.book-tip-emoji{color:#ff9fc4;font-size:17px;line-height:1.2}.studio-stage{margin-top:18px;display:flex;flex-direction:column;align-items:center;gap:16px}.studio-stand{position:relative;width:min(100%,440px);aspect-ratio:1.45;display:grid;place-items:center;background:linear-gradient(180deg,#fffdfe,#fff2f8);border-radius:40px;box-shadow:inset 0 0 0 4px #fff,0 10px #ffe1ee,0 20px 36px #d680a529}.studio-stand:after{content:"";position:absolute;bottom:12%;width:46%;height:20px;border-radius:50%;background:#d680a529;filter:blur(6px)}.studio-dish{position:relative;z-index:1}.studio-dish .dish-art{width:clamp(180px,38vw,245px);height:auto;filter:drop-shadow(0 14px 16px rgba(160,90,120,.18))}.studio-dish.is-pop{animation:pop .35s var(--ease)}.dish-tabs{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.tab{background:#fff;border-radius:999px;padding:9px 16px;font-size:12.5px;font-weight:700;color:#a9778f;box-shadow:0 4px #ffe1ee;transition:all .18s var(--ease)}.tab:hover{transform:translateY(-2px)}.tab.is-on{background:linear-gradient(180deg,#ff9fc4,#ff6fab);color:#fff;box-shadow:0 4px #e8568f}.studio-controls{margin-top:20px;background:#fff;border-radius:30px;padding:15px;display:flex;flex-direction:column;gap:12px;box-shadow:0 8px #ffe1ee,0 16px 26px #d680a51f}.control-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:center}.control-btns{display:flex;gap:8px;margin-left:auto}.studio-note{text-align:center;font-size:11.5px;color:#a9778f;margin-top:18px;display:flex;align-items:center;justify-content:center;gap:6px}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes floaty{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-9px) rotate(-1deg)}}@keyframes pop{0%{transform:scale(.92);opacity:.7}60%{transform:scale(1.04)}to{transform:scale(1);opacity:1}}@keyframes shake{0%,to{transform:translate(0) rotate(0)}20%{transform:translate(-6px) rotate(-3deg)}40%{transform:translate(6px) rotate(3deg)}60%{transform:translate(-4px) rotate(-2deg)}80%{transform:translate(4px) rotate(2deg)}}@keyframes sparkleOut{0%{opacity:0;transform:translate(0) scale(.3)}25%{opacity:1}to{opacity:0;transform:translate(var(--tx),var(--ty)) scale(.25)}}@keyframes spin{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes ghost{0%,to{transform:rotate(-4deg) scale(1)}50%{transform:rotate(4deg) scale(1.04)}}@keyframes nudge{0%,to{transform:translate(0)}50%{transform:translate(6px)}}@keyframes pourStream{0%{height:0;opacity:0}30%{opacity:1}to{height:52%;opacity:.15}}@keyframes steam{0%{opacity:0;transform:translateY(8px) scale(.7)}40%{opacity:.9}to{opacity:0;transform:translateY(-28px) scale(1.35)}}@keyframes starPop{0%{opacity:0;transform:translate(-50%,-50%) scale(.3) rotate(-25deg)}60%{opacity:1;transform:translate(-50%,-50%) scale(1.15) rotate(6deg)}to{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(0)}}@keyframes starIn{0%{opacity:0;transform:scale(.3) rotate(-25deg)}60%{opacity:1;transform:scale(1.18) rotate(6deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes land{0%{opacity:0;transform:translate(-50%,-26px) scale(.86)}to{opacity:1;transform:translate(-50%) scale(1)}}@keyframes riseIn{0%{opacity:0;transform:translateY(-22px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes rise{0%{opacity:0;transform:translateY(0) scale(.6)}20%{opacity:.8}to{opacity:0;transform:translateY(-160px) scale(1.1)}}@keyframes fall{0%{opacity:0;transform:translateY(-20px) rotate(0)}8%{opacity:1}to{opacity:.9;transform:translateY(106vh) rotate(680deg)}}@keyframes cardIn{0%{opacity:0;transform:translateY(24px) scale(.96)}to{opacity:1;transform:none}}@keyframes ovenPop{0%{transform:scale(1)}40%{transform:scale(1.06)}to{transform:scale(1)}}@keyframes blink{50%{opacity:.2}}.speech:before{content:"";position:absolute;left:-7px;top:0;width:14px;height:14px;background:#fff;clip-path:polygon(0 0,100% 0,100% 100%)}.kitty .eye{animation:blinkEye 5.2s infinite;transform-box:fill-box;transform-origin:center}.kitty-bow{transform-box:fill-box;transform-origin:center;animation:bowSway 5s ease-in-out infinite}.fill-source{display:flex;align-items:center;justify-content:center}.decor-station{min-height:210px}.hero-copy,.menu-head,.how-card,.recipe-card{animation:fadeUp .6s ease both}.recipe-card:nth-child(2){animation-delay:.06s}.recipe-card:nth-child(3){animation-delay:.12s}.recipe-card:nth-child(4){animation-delay:.18s}.how-card:nth-child(2){animation-delay:.08s}.how-card:nth-child(3){animation-delay:.16s}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes blinkEye{0%,95%,to{transform:scaleY(1)}97%{transform:scaleY(.12)}}@keyframes bowSway{0%,to{transform:rotate(0)}50%{transform:rotate(4deg)}}@media (max-width: 880px){.hero{grid-template-columns:1fr;gap:26px}.hero-art{order:2}.hero-frame{width:min(100%,320px)}.hero-copy h2 br,.k-picture{display:none}.k-window{width:min(30%,170px)}.k-shelf{width:min(30%,160px)}.scene{min-height:470px}.game-foot{padding-left:4px}}@media (max-width: 620px){.home{padding:14px 14px 40px}.home-top{gap:10px}.brand-txt h1{font-size:17px}.brand-txt p{font-size:9px;letter-spacing:.1em}.brand-kitty{width:46px;height:46px}.hero-facts{gap:16px;margin-top:20px}.hero-facts b{font-size:17px}.hero-copy p{font-size:14px}.btn{padding:12px 18px;font-size:15px}.recipe-grid{grid-template-columns:repeat(2,1fr);gap:12px}.recipe-card{padding:11px;border-radius:24px}.card-art{height:92px}.card-blob{width:86px;height:86px}.card-dish svg{width:84px;height:84px}.card-info h4{font-size:13.5px}.card-info p{font-size:11px;min-height:0}.card-new{font-size:8px;padding:2px 6px}.pill{font-size:9.5px;padding:4px 7px}.card-go{width:26px;height:26px}.card-foot{margin-top:8px}.how{grid-template-columns:1fr}.game{padding:10px 8px 14px;gap:8px}.scene{min-height:430px;border-radius:26px}.game-recipe{font-size:14px}.game-title{gap:8px}.dot{width:12px;height:12px}.dot.now{width:20px}.round-btn{width:40px;height:40px}.hint-row{padding:9px 10px 0;gap:6px}.hint-kitty{width:58px;height:58px}.speech{font-size:11.5px;padding:8px 12px}.counter{padding:10px 8px 12px;border-radius:24px 24px 0 0}.step-title{font-size:16px}.step-count{font-size:9px}.stage-row{gap:8px}.bowl-station svg{width:132px}.checklist{min-width:0;padding:8px 10px;border-radius:16px}.checklist li{font-size:10px;gap:5px}.mini-title{font-size:10px;margin-bottom:4px}.chip{width:56px;padding:6px 4px 5px;border-radius:16px}.chip-label{font-size:8.5px}.chip-art{width:34px!important;height:34px!important}.step-tray{padding:9px 8px 8px;border-radius:20px;gap:6px}.tray-label{font-size:8.5px}.fill-arrow{width:22px}.pick-bowl{width:100px}.pick-item{width:116px}.fill-target svg{width:128px}.oven-station .art-oven{width:140px}.oven-station .steam{display:none}.plate-station .art-plate{width:200px}.pick-dish{width:92px}.decor-station{min-height:170px}.dish-wrap .dish-art{width:172px}.swatch{width:22px;height:22px}.board{width:100%}.cut-star{width:10%}.reward-stage{height:176px}.reward-kitty{width:108px;height:108px}.reward-btns .btn{font-size:13px;padding:10px 14px}.sticker-grid{grid-template-columns:repeat(2,1fr);gap:12px}.sticker{padding:16px 10px 12px;border-radius:24px}.sticker-art{height:86px}.sticker-art svg{width:78px;height:78px}.sticker h4{font-size:12px}.studio-stand{aspect-ratio:1.3}.control-btns{margin-left:0;width:100%;justify-content:center}}@media (max-width: 380px){.brand-txt h1{font-size:15px}.chip{width:50px}.chip-art{width:30px!important;height:30px!important}.bowl-station svg{width:118px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}.hero-copy h2 em{background:linear-gradient(transparent 64%,#ffd9e9 64%,#ffd9e9 92%,transparent 92%);padding:0 2px}.hero-copy h2 em:after{display:none}.step{width:100%;max-width:780px;margin:0 auto}.k-picture{display:none}.k-window{width:min(21%,168px);aspect-ratio:.94;top:9%}.k-shelf{top:33%;width:min(21%,168px)}.k-bunting{position:absolute;top:0;left:0;right:0;height:44px}.k-bunting:before{content:"";position:absolute;top:7px;left:0;right:0;height:2px;background:#ffffffbf}.k-bunting span{position:absolute;top:9px;left:calc(3% + var(--i) * 12.2%);width:0;height:0;border-left:13px solid transparent;border-right:13px solid transparent;border-top:22px solid #ffb3d4;filter:drop-shadow(0 2px 1px rgba(214,128,165,.12))}.k-bunting span:nth-child(2n){border-top-color:#ffe0ee}.k-bunting span:nth-child(3n){border-top-color:#c9a7f5}.k-bunting span:nth-child(4n){border-top-color:#ffe9a8}@media (max-width: 620px){.k-window{width:96px;top:10%;right:3%}.k-shelf{width:96px;left:3%;top:36%}.k-jar{width:18px;height:24px}.k-plant{width:24px}.k-bunting{height:34px}.k-bunting span{border-left-width:9px;border-right-width:9px;border-top-width:16px}}@media (max-width: 430px){.k-window,.k-shelf{display:none}}
