@charset "UTF-8";
:root{--paper:#faf6ed;--ink:#43372e;--muted:#8b7967;--red:#a44e40;--line:#e2d7c7;--cream:#fffdf6;font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;color:var(--ink);background:var(--paper);font-size:14px;color-scheme:light}*{box-sizing:border-box}body{margin:0}button,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:1px solid var(--line);background:var(--cream);color:inherit;border-radius:8px;min-height:42px;padding:8px 13px;transition:background .15s,transform .15s}button:hover{background:#eee4d5}button:active{transform:translateY(1px)}button:disabled{opacity:.5;cursor:default}button:focus-visible,a:focus-visible,select:focus-visible,canvas:focus-visible{outline:3px solid #bb7760;outline-offset:3px}a{color:inherit;text-underline-offset:3px}[hidden]{display:none!important}main{max-width:1250px;margin:auto;padding:0 26px}.topbar{height:74px;display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line)}.brand{font-size:11px;letter-spacing:1.4px;display:flex;align-items:center;gap:10px}.brand i{font:28px Georgia,serif;color:var(--red);font-style:normal;border:1px solid #cfa58a;border-radius:50%;width:35px;height:35px;text-align:center}.topbar nav{display:flex;gap:8px}.topbar button{font-size:11px;background:transparent;min-height:36px}.masthead{display:grid;grid-template-columns:1fr 350px;gap:35px;align-items:center;padding:30px 0 26px}.eyebrow{font-size:10px;letter-spacing:2.2px;color:var(--red);font-weight:600;margin:0 0 12px}.masthead h1{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-weight:500;font-size:43px;letter-spacing:2px;line-height:1.5;margin:0 0 7px}.masthead h1 em{font-style:normal;color:var(--red)}.masthead p:not(.eyebrow){font-size:12px;line-height:1.8;color:var(--muted);margin:0}.masthead figure{margin:0;position:relative;height:175px;overflow:hidden;border-radius:90px 12px 12px 12px}.masthead img{width:100%;height:100%;object-fit:cover;object-position:70% 60%}.masthead figcaption{position:absolute;right:10px;bottom:8px;font-size:9px;color:#66533a;background:#fff8e5ce;padding:5px 9px;border-radius:4px}.kitchen{display:grid;grid-template-columns:minmax(0,1fr) 355px;gap:25px;align-items:start}.worktop{min-width:0}.steps{list-style:none;display:flex;padding:0 3px;margin:0 0 14px;gap:5px;counter-reset:step}.steps li{flex:1;color:#aa9c88;font-size:10px;white-space:nowrap;padding:10px 0;position:relative;border-bottom:2px solid var(--line)}.steps li:before{counter-increment:step;content:counter(step,decimal-leading-zero) " ";font-size:10px;margin-right:3px}.steps li[aria-current]{color:var(--red);border-color:var(--red);font-weight:700}.steps li.done{color:#6b765b;border-color:#a8ad95}.scene-wrap{position:relative;background:#232b2a;border-radius:13px;overflow:hidden;box-shadow:0 12px 35px #57402515}#scene{display:block;width:100%;height:auto;touch-action:none;user-select:none;-webkit-user-select:none}.scene-badge{position:absolute;left:18px;top:16px;pointer-events:none;font-size:9px;letter-spacing:1.8px;color:#dbceb2;background:#151c1b5c;padding:7px 10px;border-radius:5px}.scene-bottom{display:flex;justify-content:space-between;gap:8px;margin:14px 0 9px;font-size:11px}.scene-bottom span:last-child{color:var(--muted)}.progress{height:4px;background:#e6dccc;overflow:hidden;border-radius:5px}.progress span{display:block;height:100%;background:#ae6953;transition:width .1s;width:0}#status{min-height:37px;font-size:12px;line-height:1.8;color:#80644b;margin:12px 0}.paused{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;background:#15201ac7;color:#fff4df;line-height:2;backdrop-filter:blur(3px)}.paused small{font-size:11px}.controls{background:#fffcf5;border:1px solid var(--line);border-radius:13px;padding:23px 20px;box-shadow:0 5px 20px #614c3510}.control-heading{display:flex;gap:12px;align-items:center}.step-number{font:italic 35px Georgia,serif;color:#c49c7a}.control-heading .eyebrow{font-size:8px;letter-spacing:1.5px;margin:0 0 6px}h2{font:500 22px/1.6 "Yu Mincho","Hiragino Mincho ProN",serif;letter-spacing:.4px;margin:0}.control-heading h2{font-size:19px}.hint{font-size:11px;line-height:1.85;color:var(--muted);margin:14px 0 17px}.preset-label,.field-label{font-size:10px;color:var(--muted);display:block;margin:0 0 7px}select{padding:11px 10px;background:#f4ecdf;border:1px solid var(--line);border-radius:7px;width:100%;color:var(--ink);font-size:12px}.selected-header{display:flex;align-items:center;justify-content:space-between;font-size:10px;margin-top:13px}.selected-header b{color:var(--red);margin-left:6px}.text-button{border:0;background:transparent;font-size:11px;text-decoration:underline;text-underline-offset:4px;padding:5px 8px;min-height:36px}.selected{display:flex;flex-wrap:wrap;gap:4px;min-height:31px;margin:5px 0 13px}.selected button{border:1px solid #e3c8b7;background:#f8ebdf;color:#80513e;border-radius:20px;font-size:10px;padding:4px 9px;min-height:29px}.tabs{display:flex;gap:5px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:11px;margin-bottom:10px}.tabs button{font-size:10px;min-height:30px;padding:5px 9px;border-radius:15px;background:transparent}.tabs button[aria-pressed=true]{background:#a44e40;color:white;border-color:#a44e40}.ingredients{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;max-height:250px;overflow-y:auto;padding:2px 6px 5px 2px;scrollbar-width:thin;scrollbar-color:#cab59d transparent}.ingredient{padding:5px 2px;min-height:77px;background:#fffdf8;position:relative;font-size:9px;line-height:1.4;border-color:#e7dfd2}.ingredient .thumb{display:block;width:43px;height:43px;margin:0 auto 3px;background-image:url('assets/ingredients.webp');background-size:500% 500%;background-repeat:no-repeat}.ingredient .sauce-thumb{background:none;position:relative}.sauce-thumb:before{content:'';position:absolute;inset:10px 3px;border-radius:50%;background:var(--sauce);box-shadow:inset -2px -3px 4px #2d1a1220,inset 1px 3px 2px #fffbdf70;transform:rotate(-20deg)}.ingredient[aria-pressed=true]{border-color:#ac6b52;background:#f8eee1;box-shadow:inset 0 0 0 1px #ac6b5220}.ingredient[aria-pressed=true]:after{content:'✓';position:absolute;right:4px;top:3px;font-size:11px;color:#a04f3e}.actions{margin-top:18px;display:grid;gap:8px}.primary,.secondary{width:100%;min-height:46px;font-size:12px;letter-spacing:.4px}.primary{background:#9f4d3e;color:#fff8e9;border-color:#9f4d3e;box-shadow:0 4px 12px #9f4d3e18}.primary:hover{background:#863f32}.secondary{background:transparent;color:#80624c}.mini{font-size:10px;line-height:1.8;color:var(--muted)}.heat-buttons{display:flex;gap:8px}.heat-buttons button{flex:1}.heat-buttons button[aria-pressed=true]{background:#9f4d3e;color:white}.doneness{margin:20px 0 8px;padding-top:12px;display:flex;justify-content:space-between;border-top:6px solid transparent;border-image:linear-gradient(to right,#f4dda5,#c78a47,#694020) 1;font-size:10px;color:var(--muted)}.tray{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.tray .ingredient[aria-pressed=true]{background:#f0dfc9}.support{display:flex;justify-content:space-between;align-items:center;gap:15px;text-decoration:none;border:1px solid #dac6ab;background:#f4ebdc;padding:17px 22px;margin:22px 0;border-radius:9px;color:#805a3f}.support span{font-size:12px;font-weight:600}.support small{font-size:10px}footer{display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:10px;line-height:1.9;padding:3px 0 27px}footer nav{display:flex;gap:14px;align-items:center}footer button{border:0;background:transparent;min-height:40px;padding:0;text-decoration:underline;font-size:10px}dialog{width:min(530px,calc(100% - 28px));max-height:90dvh;overflow:auto;border:1px solid #deccb2;border-radius:17px;padding:30px;background:var(--paper);color:var(--ink);box-shadow:0 20px 100px #0004}dialog::backdrop{background:#201b15ac;backdrop-filter:blur(6px)}dialog h2{font-size:27px}dialog p{font-size:12px;line-height:1.9}dialog .dialog-intro{color:var(--muted)}.recipe{padding:0;list-style:none;margin:24px 0;display:grid;grid-template-columns:1fr 1fr;gap:22px}.recipe b{color:var(--red);font-size:11px}.recipe b span{color:var(--ink);margin-left:5px}.recipe p{font-size:11px;color:var(--muted);margin:8px 0 0}.result-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px}.result-buttons .primary{grid-column:1/-1}#result{width:min(620px,calc(100% - 24px));padding:25px}#result-card{width:100%;height:auto;display:block;border-radius:9px;margin:14px 0;border:1px solid var(--line)}.support-link{display:block;text-align:center;font-size:12px;color:var(--red);margin:15px 0 0}#reset-dialog .secondary{margin-top:8px}#research-dialog li{font-size:12px;line-height:2}#asset-error{padding:12px;background:#fff1e8;border:1px solid #dcb3a1;border-radius:8px}#asset-error p{font-size:12px}body.playing .masthead{padding:18px 0}body.playing .masthead figure{height:100px}body.playing .masthead h1{font-size:32px}body.playing .masthead .eyebrow,body.playing .masthead p:not(.eyebrow){display:none}
@media(min-width:1000px){body.playing .controls{min-height:400px}.kitchen{gap:30px}#result-card{max-height:58dvh;width:auto;max-width:100%;margin-left:auto;margin-right:auto}}
@media(max-width:850px){main{padding:0 18px}.kitchen{grid-template-columns:minmax(0,1fr) 305px;gap:18px}.masthead{grid-template-columns:1fr 250px}.masthead h1{font-size:34px}.controls{padding:18px 14px}.steps li{font-size:9px}.steps li:before{font-size:8px}.topbar{height:66px}}
@media(max-width:680px){main{padding:0 14px}.topbar{height:63px;gap:7px}.brand{font-size:9px;letter-spacing:.2px;gap:7px}.brand i{width:27px;height:27px;font-size:22px}.topbar nav{gap:4px}.topbar button{font-size:10px;padding:6px 7px;min-height:36px}.masthead{grid-template-columns:1fr 115px;gap:5px;padding:24px 0 20px}.masthead h1{font-size:28px;letter-spacing:0;line-height:1.5}.masthead h1 em{display:block}.masthead .eyebrow{font-size:7px;letter-spacing:1px;margin-bottom:9px}.masthead p:not(.eyebrow){font-size:10px}.masthead figure{height:155px;border-radius:65px 8px 8px 8px}.masthead img{object-position:65%}.masthead figcaption{display:none}.kitchen{display:flex;flex-direction:column;gap:12px}.worktop,.controls{width:100%}.steps{margin-bottom:9px}.steps li{font-size:10px;padding:8px 0}.scene-badge{font-size:7px;left:9px;top:10px}.scene-bottom{font-size:10px;margin-top:11px}#status{font-size:11px;min-height:36px;margin:8px 0 0}.controls{padding:17px}.control-heading h2{font-size:18px}.hint{margin:9px 0 14px}.ingredients{grid-template-columns:repeat(4,1fr);max-height:244px}.ingredient{font-size:9px;min-height:75px}.tray{grid-template-columns:repeat(4,1fr)}.support{padding:14px;flex-direction:column;align-items:flex-start;gap:5px}footer{flex-direction:column;gap:4px}footer nav{flex-wrap:wrap}dialog{padding:24px 20px}.recipe{gap:17px 15px;margin:20px 0}.recipe b{font-size:10px}.recipe b span{display:block;margin:4px 0}.recipe p{font-size:11px}dialog h2{font-size:25px}body.playing .masthead{padding:13px 0}body.playing .masthead figure{height:52px;border-radius:9px}body.playing .masthead h1{font-size:22px}body.playing .masthead h1 em{display:inline}body.playing .controls{margin-bottom:0}#result{padding:19px}#result h2{font-size:22px}.result-buttons{gap:7px}.result-buttons button{font-size:11px}}
@media(min-width:851px) and (max-height:800px){body.playing .topbar{height:58px}body.playing .masthead{padding:10px 0;grid-template-columns:1fr 190px}body.playing .masthead figure{height:60px}body.playing .masthead h1{font-size:28px}body.playing .scene-wrap{max-width:calc((100dvh - 260px)*1.356);margin-inline:auto}body.playing .steps{margin-bottom:8px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

.recipe-details{margin:20px 0;border-block:1px solid var(--line);padding:14px 0}.recipe-details summary{cursor:pointer;font-size:12px;color:var(--red)}body:not(.with-guide) .guide-detail{display:none}#guide-toggle{margin-top:8px;color:var(--red)}#action-feedback:empty,#assist-note:empty{display:none}
