:root{--bg: #fff5f0;--panel: #ffffff;--panel2: #fff8fb;--border: #ffd6e4;--text: #3d1f2b;--muted: #c4899a;--pink: #ff6b9d;--pink-l: #ffb3cc;--peach: #ff9a6c;--lavender: #b8a4f8;--mint: #72d9c0;--yellow: #ffd166;--red: #ff4466}*{margin:0;padding:0;box-sizing:border-box}body{background:linear-gradient(155deg,#fff8f0,#fff0f8 55%,#f5f0ff);font-family:Nunito,sans-serif;color:var(--text);min-height:100vh;overflow:hidden}.bg-deco{position:fixed;pointer-events:none;z-index:0;opacity:.07;user-select:none;font-size:64px}header{position:fixed;top:0;left:0;right:0;z-index:100;background:#fffafcf0;backdrop-filter:blur(14px);border-bottom:2px solid var(--border);padding:10px 24px;display:flex;align-items:center;justify-content:space-between}.logo h1{font-size:22px;font-weight:900;letter-spacing:-.5px;background:linear-gradient(135deg,#ff6b9d,#ff9a6c);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.logo p{font-size:11px;font-weight:700;color:var(--muted);letter-spacing:1px}.hstats{display:flex;gap:10px}.pill{display:flex;align-items:center;gap:6px;background:var(--panel);border:2px solid var(--border);border-radius:20px;padding:5px 14px;font-size:13px;font-weight:800}.pill .lbl{color:var(--muted);font-weight:700;font-size:11px}#cal-val{color:var(--peach)}#ing-val{color:var(--mint)}.layout{display:grid;grid-template-columns:210px 1fr 288px;height:calc(100vh - 62px);margin-top:62px;overflow:hidden}.lpanel{background:var(--panel);border-right:2px solid var(--border);overflow-y:auto;padding:16px 12px;display:flex;flex-direction:column;gap:14px}.lpanel::-webkit-scrollbar{width:3px}.lpanel::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.sec-label{font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:2px;color:var(--muted);padding-bottom:6px;border-bottom:2px solid var(--border)}.base-card{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:14px;border:2px solid var(--border);cursor:pointer;transition:all .18s;background:var(--panel2)}.base-card:hover{border-color:var(--c,var(--pink));transform:translate(3px)}.base-card.sel{border-color:var(--c,var(--pink));background:var(--cbg,rgba(255,107,157,.07));box-shadow:0 2px 10px var(--cglow,rgba(255,107,157,.2))}.base-dot{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;flex-shrink:0}.base-name{font-size:12px;font-weight:900}.base-meta{font-size:10px;color:var(--muted);font-weight:700}.base-chk{margin-left:auto;font-size:13px;opacity:0;transition:opacity .15s}.base-card.sel .base-chk{opacity:1}.sauce-card{display:flex;align-items:center;gap:7px;padding:7px 10px;border-radius:12px;border:2px solid var(--border);cursor:pointer;transition:all .18s;background:var(--panel2);font-size:12px}.sauce-card:hover{border-color:var(--lavender)}.sauce-card.sel{border-color:var(--lavender);background:#b8a4f814;box-shadow:0 2px 8px #b8a4f833}.sauce-lbl{font-weight:900;flex:1}.sauce-cal{font-size:10px;color:var(--muted);font-weight:700}.sauce-hint{font-size:10px;color:var(--lavender);font-weight:700}.cpanel{display:flex;flex-direction:column;align-items:center;overflow-y:auto;padding:16px 18px 0}.cpanel::-webkit-scrollbar{width:3px}.cpanel::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.steam-row{display:flex;gap:22px;pointer-events:none;margin-bottom:4px}.steam{width:8px;border-radius:50px;opacity:0;background:linear-gradient(to top,rgba(200,200,255,.7),transparent);animation:steamUp 2.2s ease-out infinite}.steam:nth-child(1){height:34px;animation-delay:0s}.steam:nth-child(2){height:46px;animation-delay:.55s}.steam:nth-child(3){height:30px;animation-delay:1.1s}.steam:nth-child(4){height:40px;animation-delay:1.65s}@keyframes steamUp{0%{opacity:0;transform:translateY(0) scaleX(1)}25%{opacity:.75}75%{opacity:.3}to{opacity:0;transform:translateY(-55px) scaleX(2.2)}}#pot-svg{width:360px;height:360px;filter:drop-shadow(0 10px 28px rgba(255,107,157,.18)) drop-shadow(0 3px 8px rgba(0,0,0,.1));transition:filter .6s;flex-shrink:0}.seg-path{transition:opacity .35s ease,fill .35s ease}.seg-emoji{transition:opacity .35s ease;font-size:22px}.bub{animation:bubUp var(--bd,2s) ease-in infinite var(--bdel,0s)}@keyframes bubUp{0%{transform:translateY(0);opacity:.7}to{transform:translateY(-55px);opacity:0}}.fly{position:fixed;pointer-events:none;z-index:500;font-size:26px;animation:flyIn .65s cubic-bezier(.25,.46,.45,.94) forwards}@keyframes flyIn{0%{transform:scale(1.4) translateY(0);opacity:1}65%{transform:scale(.6) translateY(90px);opacity:.6}to{transform:scale(0) translateY(180px);opacity:0}}.chips-lbl{align-self:flex-start;margin-top:12px;margin-bottom:7px;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:2px;color:var(--muted)}.chips-zone{width:100%;display:flex;flex-wrap:wrap;gap:5px;max-height:110px;overflow-y:auto;padding:2px 0;min-height:36px}.chips-zone::-webkit-scrollbar{height:3px}.chips-zone::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.chip{display:flex;align-items:center;gap:4px;background:#fff;border:2px solid var(--border);border-radius:20px;padding:3px 9px 3px 6px;font-size:11px;font-weight:800;animation:popIn .22s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes popIn{0%{transform:scale(0)}to{transform:scale(1)}}.chip-e{font-size:13px}.chip-cal{color:var(--muted);font-size:10px}.chip-n{background:var(--pink);color:#fff;border-radius:10px;padding:0 5px;font-size:10px}.chip-x{background:none;border:none;cursor:pointer;color:var(--muted);font-size:14px;line-height:1;padding:0 1px;transition:color .13s}.chip-x:hover{color:var(--red)}.chips-mt{width:100%;text-align:center;padding:9px;font-size:11px;font-weight:800;color:var(--muted);border:2px dashed var(--border);border-radius:12px}.cook-row{margin:14px 0;width:100%;display:flex;justify-content:center}#cook-btn{background:linear-gradient(135deg,#ff6b9d,#ff9a6c);color:#fff;border:none;border-radius:30px;padding:14px 50px;font-size:17px;font-weight:900;font-family:Nunito,sans-serif;cursor:pointer;letter-spacing:.5px;box-shadow:0 4px 18px #ff6b9d66;animation:cookGlow 2.5s ease-in-out infinite;transition:transform .1s,box-shadow .2s}#cook-btn:hover{transform:scale(1.06) translateY(-2px);box-shadow:0 8px 28px #ff6b9d99;animation:none}#cook-btn:active{transform:scale(.97)}@keyframes cookGlow{0%,to{box-shadow:0 4px 18px #ff6b9d66}50%{box-shadow:0 4px 32px #ff6b9db3}}.rpanel{background:var(--panel);border-left:2px solid var(--border);display:flex;flex-direction:column;overflow:hidden}.ing-tabs{display:flex;border-bottom:2px solid var(--border);background:var(--panel2);flex-shrink:0}.ing-tab{flex:1;padding:7px 2px 5px;text-align:center;font-size:8.5px;font-weight:900;text-transform:uppercase;letter-spacing:.2px;color:var(--muted);cursor:pointer;transition:all .18s;border-bottom:3px solid transparent;position:relative;top:2px}.ing-tab .tab-e{display:block;font-size:16px;margin-bottom:1px}.ing-tab:hover{color:var(--text)}.ing-tab.act{color:var(--tc,var(--pink));border-bottom-color:var(--tc,var(--pink))}.ing-scroll{flex:1;overflow-y:auto;padding:10px}.ing-scroll::-webkit-scrollbar{width:3px}.ing-scroll::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.ing-panel{display:none}.ing-panel.act{display:grid;grid-template-columns:1fr 1fr;gap:7px}.ing-card{background:var(--panel2);border:2px solid var(--border);border-radius:14px;padding:10px 7px;cursor:pointer;transition:all .16s;text-align:center;position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;gap:3px}.ing-card:hover{border-color:var(--tc,var(--pink));transform:scale(1.04);background:#fff}.ing-card.sel{border-color:var(--tc,var(--pink));background:#fff;box-shadow:0 2px 10px #ff6b9d26}.ing-card:active{transform:scale(.95)}.ing-e{font-size:30px;line-height:1}.ing-n{font-size:11px;font-weight:900;line-height:1.2}.ing-c{font-size:10px;font-weight:800;color:var(--peach)}.ing-bdg{position:absolute;top:3px;right:3px;background:var(--pink);color:#fff;border-radius:10px;padding:0 5px;font-size:10px;font-weight:900;display:none}.ing-card.sel .ing-bdg{display:block}#flash{position:fixed;inset:0;z-index:900;background:#ffa0c84d;pointer-events:none;opacity:0;transition:opacity .08s}#flash.on{opacity:1}#voverlay{position:fixed;inset:0;z-index:800;background:#3d0a1ea6;backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .35s}#voverlay.show{opacity:1;pointer-events:all}.vbox{background:#fff;border:3px solid var(--border);border-radius:26px;padding:36px 44px;max-width:480px;width:92%;text-align:center;box-shadow:0 20px 60px #ff6b9d38,0 4px 20px #00000014;transform:translateY(28px) scale(.95);position:relative;overflow:hidden;transition:transform .4s cubic-bezier(.34,1.56,.64,1)}#voverlay.show .vbox{transform:translateY(0) scale(1)}.vbox:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#ff6b9d,#ff9a6c,#ffd166,#72d9c0,#b8a4f8,#ff6b9d);background-size:200% 100%;animation:rail 3s linear infinite}@keyframes rail{0%{background-position:0%}to{background-position:200%}}.v-emj{font-size:58px;line-height:1;margin-bottom:6px}.v-title{font-size:22px;font-weight:900;margin-bottom:3px}.v-quote{font-size:13px;color:var(--muted);font-weight:700;margin-bottom:18px;line-height:1.5}.score-ring{width:118px;height:118px;border-radius:50%;margin:0 auto 14px;background:conic-gradient(var(--sc,var(--pink)) var(--sp,0%),#ffd6e4 0%);display:flex;align-items:center;justify-content:center;position:relative}.score-ring:before{content:"";position:absolute;inset:12px;background:#fff;border-radius:50%}.score-in{position:relative;z-index:1}.score-num{font-size:32px;font-weight:900;color:var(--sc,var(--pink))}.score-of{font-size:10px;color:var(--muted);font-weight:800;letter-spacing:1px}.v-stars{font-size:22px;letter-spacing:3px;margin-bottom:14px}.v-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:14px}.v-cell{background:#fff5f8;border:2px solid var(--border);border-radius:12px;padding:7px 12px;text-align:left}.v-clbl{font-size:10px;font-weight:900;color:var(--muted);text-transform:uppercase;letter-spacing:1px}.v-cval{font-size:15px;font-weight:900;margin-top:1px}.v-tags{display:flex;flex-wrap:wrap;gap:5px;justify-content:center;margin-bottom:18px}.v-tag{background:#fff0f8;border:2px solid var(--border);border-radius:20px;padding:3px 12px;font-size:11px;font-weight:800;color:var(--lavender)}#restart-btn{background:linear-gradient(135deg,#ff6b9d,#ff9a6c);color:#fff;border:none;border-radius:22px;padding:11px 36px;font-size:14px;font-weight:900;font-family:Nunito,sans-serif;cursor:pointer;transition:all .18s}#restart-btn:hover{transform:scale(1.05);box-shadow:0 4px 16px #ff6b9d73}.mascot-wrap{position:fixed;bottom:0;right:296px;z-index:55;pointer-events:none;width:118px;transform-origin:50% 100%;animation:bearBob 3.5s ease-in-out infinite;filter:drop-shadow(0 4px 10px rgba(255,107,157,.25))}@keyframes bearBob{0%,to{transform:translateY(0) rotate(0)}35%{transform:translateY(-7px) rotate(1.5deg)}70%{transform:translateY(-3px) rotate(-1deg)}}.mascot-wrap.cook-bounce{animation:bearCook .65s cubic-bezier(.36,.07,.19,.97) both!important}@keyframes bearCook{0%{transform:translateY(0) rotate(0)}18%{transform:translateY(-12px) rotate(-9deg)}42%{transform:translateY(-18px) rotate(9deg)}68%{transform:translateY(-7px) rotate(-4deg)}85%{transform:translateY(-2px) rotate(2deg)}to{transform:translateY(0) rotate(0)}}.bubble{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background:#fff;border:2px solid var(--border);border-radius:14px;padding:5px 11px;font-family:Nunito,sans-serif;font-size:10.5px;font-weight:800;color:var(--text);white-space:nowrap;box-shadow:0 3px 10px #ff6b9d29;transition:opacity .25s,transform .25s}.bubble:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:#fff;margin-top:-1px}.bubble:before{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:7px solid transparent;border-top-color:var(--border)}#tip{position:fixed;z-index:600;pointer-events:none;background:#fff;border:2px solid var(--border);border-radius:12px;padding:7px 12px;font-size:12px;font-weight:700;opacity:0;transition:opacity .13s;box-shadow:0 4px 12px #ff6b9d26;max-width:160px;line-height:1.4}#tip.show{opacity:1}
