:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#f4e9d0;background:#2c2e28;font-synthesis:none;color-scheme:dark}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,input{font:inherit}button{min-height:44px;padding:10px 15px;border:1px solid #d3c29d65;border-radius:30px;color:inherit;background:#1b211bd9;cursor:pointer;touch-action:manipulation;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}button:hover{background:#343b2d}button:focus-visible,input:focus-visible,canvas:focus-visible{outline:2px solid #f3d08d;outline-offset:3px}button:disabled{opacity:.5;cursor:wait}.kitchen-app{position:relative;width:100%;height:100dvh;overflow:hidden}canvas{display:block;width:100%;height:100%;touch-action:none}header{position:absolute;top:max(14px,env(safe-area-inset-top));left:max(18px,env(safe-area-inset-left));right:max(18px,env(safe-area-inset-right));display:flex;align-items:flex-start;justify-content:space-between;gap:16px;pointer-events:none;padding-right:54px}.wordmark{display:flex;align-items:center;gap:10px;text-shadow:0 2px 6px #0009}h1{font:500 clamp(21px,2.2vw,30px) / 1.2 Georgia,"Songti SC",serif;margin:0}.wordmark p{font-size:11px;letter-spacing:.06em;margin:4px 0 0;color:#e5d8bd}.tomato-mark{width:25px;height:25px;background:#b64026;border-radius:50%;box-shadow:inset -5px -3px #7c271d}.tomato-mark:after{content:"";display:block;width:12px;height:8px;background:#6b8b41;margin:-2px auto;clip-path:polygon(50% 0,65% 32%,100% 20%,72% 65%,90% 100%,50% 75%,10% 100%,28% 55%,0 20%,40% 32%)}nav{display:flex;gap:6px;pointer-events:auto}nav button{width:44px;height:44px;padding:0;font-size:13px}.hint{position:absolute;top:max(78px,calc(env(safe-area-inset-top) + 65px));left:50%;transform:translate(-50%);max-width:min(580px,76%);padding:8px 16px;border-radius:22px;background:#182019bc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:12px;line-height:1.5;text-align:center;pointer-events:none}.hint:empty{display:none}.object-label{position:absolute;transform:translate(-50%,-100%);padding:5px 9px;min-height:44px;max-width:155px;border-color:#c8c4a533;border-radius:8px;background:#172019b8;white-space:nowrap;line-height:1.3;box-shadow:0 2px 8px #0002}.object-label strong{display:block;font-size:11px;font-weight:500}.object-label small{display:block;font-size:10px;color:#e3ca99;margin-top:3px}.controls{position:absolute;bottom:max(14px,env(safe-area-inset-bottom));left:max(18px,env(safe-area-inset-left));right:max(18px,env(safe-area-inset-right));display:flex;justify-content:space-between;align-items:center;gap:14px;pointer-events:none}.heat{display:flex;align-items:center;gap:10px;background:#192119e8;padding:3px 14px;border-radius:30px;pointer-events:auto;border:1px solid #d5c19c45}.heat label{font-size:11px;letter-spacing:.08em;text-transform:uppercase}.heat input{accent-color:#dda65c;width:120px;min-height:44px}.heat output{font-size:11px;min-width:80px;color:#e8c88f}.actions{display:flex;gap:8px;pointer-events:auto}.primary{background:#edc88d;color:#242a20;font-weight:650;border-color:#edc88d}.primary:hover{background:#faddad}.tool-note{position:absolute;left:50%;transform:translate(-50%);bottom:max(79px,calc(env(safe-area-inset-bottom) + 70px));padding:6px 8px 6px 15px;border-radius:30px;border:1px solid #b8c0a848;background:#182019ed;display:flex;align-items:center;gap:10px;max-width:90%;font-size:12px}.tool-note button{font-size:11px;padding:6px 12px}.result{position:absolute;right:max(24px,env(safe-area-inset-right));bottom:86px;width:320px;padding:20px;background:#172019f5;border:1px solid #b8c0a859;border-radius:16px;box-shadow:0 14px 40px #0004;text-align:center}.result .eyebrow{font-size:10px;letter-spacing:.17em;text-transform:uppercase;color:#e1bf83}.result h2{font:500 27px/1.15 Georgia,Songti SC,serif;margin:9px 0;color:#f3dec0}.result h2.golden{color:#ffd17f}.result p{font-size:12px;line-height:1.6;margin:8px 0;color:#e5e6d8}.result .dish{color:#f0ce94}.result .amounts,.result .same-food,.result .share-note{font-size:10px;color:#c6d0bd}.share-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:14px}.share-actions button{font-size:11px;padding:7px 10px}.result .share-note{margin-bottom:0}.modal,.graphics-error{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;display:grid;place-items:center;background:#10180ee3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:20px}.modal section,.graphics-error{color:#eee6d5;text-align:center}.modal section{max-width:520px;max-height:95%;overflow:auto;background:#252e23;border:1px solid #b0baa351;border-radius:20px;padding:30px}.modal h2,.graphics-error h2{font:400 30px/1.2 Georgia,Songti SC,serif;margin:0 0 15px}.modal p,.graphics-error p{font-size:14px;line-height:1.8}.modal small{display:block;margin:14px 0;color:#c3cbb8;font-size:11px}.modal button{margin:6px}.graphics-error{display:flex;flex-direction:column;justify-content:center}.graphics-error p{max-width:440px}.toast{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);max-width:85%;border-radius:12px;padding:10px 17px;color:#ffdf9f;background:#172019ed;border:1px solid #d7ba7455;pointer-events:none;font-size:12px;text-align:center}.toast:empty{display:none}[hidden]{display:none!important}@media (max-width: 650px){header{top:max(10px,env(safe-area-inset-top));left:10px;right:8px;padding-right:46px;gap:4px}.wordmark{gap:6px}h1{font-size:19px}.wordmark p,.tomato-mark{display:none}nav{gap:3px}nav button{width:44px}.hint{top:max(64px,calc(env(safe-area-inset-top) + 54px));max-width:88%;width:max-content;padding:7px 12px;font-size:11px}.object-label{padding:3px 6px;max-width:130px}.object-label strong{font-size:10px}.object-label small{font-size:9px}.controls{left:9px;right:9px;bottom:max(10px,env(safe-area-inset-bottom));gap:6px;align-items:flex-end;flex-wrap:wrap}.heat{gap:4px;padding:1px 10px}.heat label{font-size:9px}.heat input{width:68px}.heat output{min-width:55px;font-size:10px}.actions{gap:5px;flex-wrap:wrap;justify-content:flex-end;margin-left:auto}.actions button{font-size:11px;padding:8px 12px}.tool-note{bottom:76px;font-size:10px;gap:5px;padding-left:10px}.tool-note button{padding:6px 9px}.result{left:10px;right:10px;bottom:73px;width:auto;padding:13px 15px;max-height:43%;overflow:auto}.result h2{font-size:24px;margin:5px 0}.result p{font-size:11px;line-height:1.4;margin:6px 0}.result .amounts,.result .same-food{font-size:9px}.share-actions{margin-top:8px;gap:5px}.share-actions button{min-height:44px}.result .share-note{display:none}.modal section{padding:24px 18px}}@media (max-height: 520px){header{top:7px;left:14px;right:12px;padding-right:50px}.wordmark p,.tomato-mark{display:none}h1{font-size:21px}.hint{top:8px;max-width:40%;padding:6px 10px;font-size:10px}.object-label{padding:3px 7px}.object-label small{font-size:9px}.controls{bottom:8px;left:12px;right:12px}.heat input{width:90px}.actions button{padding:8px 13px;font-size:11px}.tool-note{bottom:65px;font-size:10px}.result{left:auto;right:14px;bottom:66px;width:280px;max-height:68%;padding:12px;overflow:auto}.result h2{font-size:22px;margin:4px 0}.result p{font-size:10px;margin:5px 0}.result .same-food,.result .share-note{display:none}.result .amounts{font-size:9px}.share-actions{margin-top:7px;gap:5px}.share-actions button{min-height:44px;font-size:10px;padding:5px}.result .eyebrow{display:none}}@media (prefers-reduced-motion: reduce){*{transition:none!important;animation:none!important}}.object-label{transform:translate(-50%,-50%);width:54px;height:46px;max-width:none;padding:0;background:transparent;border-color:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.object-label:hover{background:#f0d8a51a}.object-label strong{display:none}.object-label small{position:absolute;top:100%;left:50%;transform:translate(-50%);padding:2px 5px;border-radius:5px;background:#182019cf;white-space:nowrap;pointer-events:none}.object-label[data-target=salt] strong,.object-label[data-target=sugar] strong{display:block;position:absolute;bottom:100%;width:100%;font-size:12px;text-shadow:0 1px 3px #000}.object-label[data-target=handle]{width:110px}.object-label[data-target=handle] small{font-size:10px}#recipe-panel{position:absolute;left:16px;bottom:130px;max-width:340px;padding:16px;border:1px solid #d3bc8355;border-radius:15px;background:#172019ef;font-size:13px;line-height:1.8;white-space:pre-line}@media (max-width:650px) and (min-height:521px){.hint{max-width:94%;top:62px;font-size:11px}.controls{flex-direction:column;align-items:stretch;gap:5px}.heat{align-self:flex-start}.actions{width:100%;margin:0;justify-content:space-between;gap:4px}.actions button{padding:7px 10px;flex:1 0 auto}.tool-note{bottom:125px;width:94%;border-radius:12px}.object-label{width:58px;height:48px}.object-label small{max-width:115px;font-size:9px}#recipe-panel{bottom:134px;left:10px;right:10px;max-width:none}}.x-panel{border-top:1px solid #c8c4a533;margin-top:10px;padding-top:8px}.x-panel p{line-height:1.5}.x-panel button{margin:3px 2px;font-size:11px}.next-tip{color:#e9c98f}.result:has(h2.golden){border-color:#edc66c;box-shadow:0 0 28px #eab84d42}@media (prefers-reduced-motion:reduce){.result h2.golden{animation:none}}.object-label{touch-action:none;user-select:none;-webkit-user-select:none}.helper-actions{display:flex;gap:8px;justify-content:center;margin:12px 0}button{-webkit-tap-highlight-color:transparent}.pan-thermometer{display:flex;align-items:center;gap:7px;font-size:11px;color:#d9dfce;pointer-events:none;grid-column:1/-1;justify-self:center}.pan-thermometer i{display:block;width:86px;height:7px;border-radius:9px;background:linear-gradient(90deg,#d1c86b,#f09047 60%,#e46048);position:relative;box-shadow:inset 0 0 0 1px #ffffff25}.pan-thermometer i:after{content:"";position:absolute;left:var(--temperature);top:-3px;width:2px;height:13px;background:#fff3d8;box-shadow:0 0 3px #000}.pan-thermometer b{min-width:40px;font-variant-numeric:tabular-nums;font-weight:500}.cooking-feedback{position:absolute;right:22px;top:112px;max-width:180px;color:#24352b;font-size:17px;line-height:1.6;pointer-events:none;font-weight:600;text-shadow:0 1px 4px #ffe7bb,0 0 12px #ffe7bb;animation:moment-glow 3.5s ease-out}.cooking-feedback:empty{display:none}@keyframes moment-glow{0%{opacity:0;transform:translateY(5px)}20%,80%{opacity:1}to{opacity:.7;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.cooking-feedback{animation:none}}@media (max-width:600px){.cooking-feedback{right:12px;top:110px;max-width:190px;font-size:15px}}
