.dandori{--bg:#f4f5f1;--surface:#ece9e2;--board:#e8e2d1;--ink:#2b3138;--soft:#8b929b;--line:#e0dcd0;--noren:#2f4d84;--noren-deep:#223c66;--hi:#c9503a;--herb:#5f9464;--tamago:#d9a62e;--steam:#8fa3b0;--content-width:820px;color:var(--ink);background-color:#fffdf8;background-image:linear-gradient(#f5faff 0%,#f8fcff 300px,#fffdf8 680px);background-repeat:no-repeat;flex-direction:column;min-height:100vh;display:flex}.dandori button,.dandori input{font-family:inherit}@media (min-width:1024px){.dandori .cook-card{padding:28px 32px}}.dandori .cook-header{max-width:var(--content-width);justify-content:space-between;align-items:center;width:100%;margin:0 auto;padding:20px 16px 0;display:flex}.dandori .cook-logo{letter-spacing:.1em;color:var(--ink);align-items:center;gap:8px;font-size:20px;font-weight:700;text-decoration:none;display:flex}.dandori .cook-logo-flame{width:22px;height:22px;color:var(--noren)}.dandori .cook-home-link{color:var(--soft);letter-spacing:.06em;font-size:11px;text-decoration:none}.dandori .cook-home-link:hover{color:var(--noren)}.dandori .cook-noren{width:min(620px,100% - 48px);margin:32px auto 0;position:relative;container-type:inline-size}.dandori .noren-svg{filter:drop-shadow(0 2px 3px #232d4b1a);width:100%;height:auto;display:block}.dandori .np{transform-origin:50% 0;transform-box:fill-box;animation:9s ease-in-out infinite alternate norenSway}.dandori .np-1{animation-duration:8.4s;animation-delay:-1.2s}.dandori .np-2{animation-duration:10.2s;animation-delay:-4.6s}.dandori .np-3{animation-duration:9s;animation-delay:-2.8s}.dandori .np-4{animation-duration:10.8s;animation-delay:-6.1s}.dandori .np-5{animation-duration:8.8s;animation-delay:-.4s}@keyframes norenSway{0%{transform:skew(-.12deg)}to{transform:skew(.12deg)}}@media (prefers-reduced-motion:reduce){.dandori .np{animation:none}}body.dandori-complete .dandori .np{animation:1.2s ease-in-out norenCelebrate}@keyframes norenCelebrate{0%{transform:skew(0)}30%{transform:skew(-1.4deg)}60%{transform:skew(1deg)}to{transform:skew(0)}}@media (prefers-reduced-motion:reduce){body.dandori-complete .dandori .np{animation:none}}.dandori .noren-chars{color:#fbfaf7;font-feature-settings:"palt" 1;text-shadow:0 1px 2px #1c30552e;margin:0;font-size:clamp(26px,9cqw,58px);font-weight:900;line-height:1;display:flex;position:absolute;top:39%;left:5%;right:5%}.dandori .noren-chars span{text-align:center;flex:1}.dandori .hero-copy{max-width:var(--content-width);text-align:center;color:var(--ink);letter-spacing:.1em;font-feature-settings:"palt" 1;margin:28px auto 0;padding:0 16px;font-size:clamp(20px,3.2vw,30px);font-weight:900;line-height:1.4}.dandori .hero-copy-em{letter-spacing:.04em;color:var(--noren);font-size:1.18em;font-style:normal}@media (max-width:600px){.dandori .cook-noren{width:calc(100% - 24px)}.dandori .noren-chars{font-size:clamp(22px,8.6cqw,34px);top:38%}.dandori .hero-copy{letter-spacing:.08em;margin-top:20px;font-size:clamp(17px,4.8vw,22px)}}.dandori .cook-lead{max-width:var(--content-width);text-align:center;color:var(--soft);letter-spacing:.08em;margin:10px auto 32px;padding:0 16px;font-size:13px;line-height:1.9}.dandori .cook-main{max-width:var(--content-width);flex:1;width:100%;margin:0 auto;padding:0 16px 64px}.dandori .cook-card{border:1px solid var(--line);background:#fff;border-radius:16px;padding:24px 20px;box-shadow:0 2px 8px #3a342c0a,0 14px 36px #3a342c0f}.dandori .cook-card+.cook-card{margin-top:20px}.dandori .cook-section-label{letter-spacing:.25em;color:var(--noren);align-items:baseline;gap:8px;margin-bottom:12px;font-size:12px;font-weight:700;display:flex}.dandori .cook-section-note{color:var(--soft);letter-spacing:.05em;font-size:9px;font-weight:400}.dandori .mode-tabs{border:1px solid var(--line);background:0 0;border-radius:999px;gap:4px;margin-bottom:20px;padding:4px;display:flex}.dandori .mode-tab{letter-spacing:.1em;color:var(--soft);cursor:pointer;background:0 0;border:none;border-radius:999px;flex:1;padding:9px 0;font-size:13px;font-weight:700;transition:all .15s}.dandori .mode-tab:hover{color:var(--ink)}.dandori .mode-tab.active{color:var(--noren);background:#fff;box-shadow:0 1px 4px #2b31381a}.dandori .ingredients-input{border:1.5px solid var(--line);width:100%;color:var(--ink);resize:vertical;background:#fff;border-radius:12px;outline:none;min-height:88px;padding:13px 14px;font-family:inherit;font-size:15px;line-height:1.8;transition:border-color .2s,box-shadow .2s}.dandori .ingredients-input::placeholder{color:#b9c0c7}.dandori .ingredients-input:focus{border-color:var(--noren);box-shadow:0 0 0 3px #2f4d841f}.dandori .servings-row{align-items:center;gap:10px;margin-top:16px;display:flex}.dandori .servings-label{letter-spacing:.1em;color:var(--soft);font-size:12px;font-weight:700}.dandori .servings-group{gap:4px;display:flex}.dandori .servings-btn{border:1.5px solid var(--line);width:34px;height:34px;color:var(--ink);cursor:pointer;font-variant-numeric:tabular-nums;background:#fff;border-radius:999px;font-size:13px;font-weight:700;transition:all .15s}.dandori .servings-btn:hover{border-color:var(--noren);color:var(--noren)}.dandori .servings-btn.active{background:var(--noren);border-color:var(--noren);color:#fff}.dandori .servings-unit{color:var(--soft);font-size:12px}.dandori .plan-list{flex-direction:column;gap:12px;display:flex}.dandori .plan-card{border:1.5px solid var(--line);border-radius:12px;padding:16px;transition:border-color .15s}.dandori .plan-card:hover{border-color:var(--noren)}.dandori .plan-head{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:10px;display:flex}.dandori .plan-badge{letter-spacing:.08em;white-space:nowrap;border-radius:999px;padding:3px 10px;font-size:11px;font-weight:700}.dandori .plan-raku{color:#a2791b;background:#d9a62e29}.dandori .plan-balance{color:var(--herb);background:#5f946424}.dandori .plan-ganbaru{color:var(--hi);background:#c9503a1f}.dandori .plan-title{letter-spacing:.04em;font-size:15px;font-weight:700}.dandori .plan-dishes{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.dandori .plan-note{color:var(--soft);margin-bottom:12px;font-size:12.5px;line-height:1.7}.dandori .plan-select{letter-spacing:.06em;color:var(--noren);border:1.5px solid var(--noren);cursor:pointer;background:0 0;border-radius:999px;padding:9px 16px;font-size:13px;font-weight:700;transition:all .15s}.dandori .plan-select:hover{background:var(--noren);color:#fff}.dandori .dish-rows{flex-direction:column;gap:8px;display:flex}.dandori .dish-row{align-items:center;gap:8px;display:flex}.dandori .dish-num{background:var(--board);width:26px;height:26px;color:var(--ink);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex}.dandori .dish-input{border:1.5px solid var(--line);min-width:0;color:var(--ink);background:#fff;border-radius:12px;outline:none;flex:1;padding:13px 14px;font-size:15px;transition:border-color .2s,box-shadow .2s}.dandori .dish-input::placeholder{color:#b9c0c7}.dandori .dish-input:focus{border-color:var(--noren);box-shadow:0 0 0 3px #2f4d841f}.dandori .dish-remove{border:1.5px solid var(--line);width:30px;height:30px;color:var(--soft);cursor:pointer;background:0 0;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;line-height:1;transition:all .15s;display:flex}.dandori .dish-remove:hover{border-color:var(--hi);color:var(--hi)}.dandori .cook-actions{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}.dandori .add-dish-btn{color:var(--noren);border:1.5px dashed var(--noren);cursor:pointer;letter-spacing:.05em;background:0 0;border-radius:999px;padding:9px 16px;font-size:13px;font-weight:700;transition:all .15s}.dandori .add-dish-btn:hover:not(:disabled){background:var(--noren);color:#fff;border-style:solid}.dandori .add-dish-btn:disabled{opacity:.35;cursor:default}.dandori .generate-btn{letter-spacing:.15em;color:#fff;background:var(--noren);border:1.5px solid var(--noren);cursor:pointer;border-radius:999px;flex:1;min-width:200px;padding:14px 20px;font-size:15px;font-weight:700;transition:all .2s}.dandori .generate-btn:hover:not(:disabled){background:var(--noren-deep);border-color:var(--noren-deep);box-shadow:0 3px 10px #2f4d842e}.dandori .generate-btn:disabled{background:var(--soft);border-color:var(--soft);cursor:default}.dandori .cook-error{color:#c0392b;margin-top:12px;font-size:13px;line-height:1.7}.dandori .cook-loading{text-align:center;padding:40px 16px}.dandori .steam{align-items:flex-end;gap:10px;height:36px;margin-bottom:14px;display:inline-flex}.dandori .steam span{background:var(--steam);opacity:.5;border-radius:999px;width:5px;animation:1.6s ease-in-out infinite steamRise;display:block}.dandori .steam span:first-child{height:22px;animation-delay:0s}.dandori .steam span:nth-child(2){height:32px;animation-delay:.35s}.dandori .steam span:nth-child(3){height:24px;animation-delay:.7s}@keyframes steamRise{0%,to{opacity:.35;transform:translateY(0)scaleY(.85)}50%{opacity:.75;transform:translateY(-7px)scaleY(1.1)}}.dandori .cook-loading p{color:var(--soft);letter-spacing:.1em;font-size:13px;animation:1.6s ease-in-out infinite pulseSoft}@keyframes pulseSoft{0%,to{opacity:.55}50%{opacity:1}}.dandori .recipe-head{flex-wrap:wrap;align-items:baseline;gap:8px 14px;margin-bottom:6px;display:flex}.dandori .recipe-title{letter-spacing:.06em;font-size:20px;font-weight:700;line-height:1.5}.dandori .recipe-time{color:var(--noren);white-space:nowrap;font-size:13px;font-weight:700}.dandori .recipe-dishes{flex-wrap:wrap;gap:6px;margin-bottom:16px;display:flex}.dandori .progress-wrap{align-items:center;gap:10px;margin-bottom:4px;display:flex}.dandori .progress-track{background:var(--surface);border-radius:999px;flex:1;height:8px;overflow:hidden}.dandori .progress-fill{background:var(--noren);border-radius:999px;height:100%;transition:width .35s,background .35s}.dandori .progress-fill.progress-done{background:var(--hi)}.dandori .progress-text{color:var(--soft);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:12px;font-weight:700}.dandori .progress-done{color:var(--noren)}.dandori .step-list{flex-direction:column;display:flex}.dandori .step-item{text-align:left;border:none;border-bottom:1px solid var(--line);cursor:pointer;background:0 0;align-items:flex-start;gap:12px;width:100%;padding:14px 2px;transition:background .15s;display:flex}.dandori .step-item:last-child{border-bottom:none}.dandori .step-item:hover{background:#e9ecea80}.dandori .step-check{border:1.5px solid var(--line);color:#0000;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;margin-top:1px;font-size:13px;transition:all .15s;display:flex}.dandori .step-item.done .step-check{background:var(--noren);border-color:var(--noren);color:#fff}.dandori .step-body{flex:1;min-width:0}.dandori .step-text{color:var(--ink);font-size:14.5px;line-height:1.8;transition:color .15s}.dandori .step-item.done .step-text{color:var(--soft);-webkit-text-decoration:line-through #a0948099;text-decoration:line-through #a0948099}.dandori .step-meta{flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px;display:flex}.dandori .step-minutes{color:var(--steam);white-space:nowrap;font-size:11px;font-weight:700}.dandori .step-num{color:var(--soft);text-align:right;font-variant-numeric:tabular-nums;flex-shrink:0;width:20px;margin-top:5px;font-size:11px;font-weight:700}.dandori .tag{letter-spacing:.04em;white-space:nowrap;border-radius:999px;padding:2.5px 9px;font-size:10.5px;font-weight:700}.dandori .tag-matome,.dandori .tag-shitagoshirae{color:var(--herb);background:#5f946424}.dandori .tag-hi{color:var(--hi);background:#c9503a1f}.dandori .tag-heikou{color:#a2791b;background:#d9a62e29}.dandori .tag-machi{color:#5f7382;background:#8fa3b02e}.dandori .tag-shiage{color:var(--noren);background:#2f4d841a}.dandori .tag-dish{background:var(--board);color:var(--ink);font-weight:500}.dandori .tag-servings{color:var(--noren);background:#2f4d841a}.dandori .recipe-foot{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}.dandori .reset-btn{color:var(--soft);border:1.5px solid var(--line);cursor:pointer;letter-spacing:.08em;background:0 0;border-radius:999px;padding:9px 16px;font-size:12px;font-weight:700;transition:all .15s}.dandori .reset-btn:hover{border-color:var(--soft);color:var(--ink)}.dandori .cook-footer{border-top:1px solid var(--line);text-align:center;padding:24px 16px 40px}.dandori .cook-footer-brand{letter-spacing:.1em;color:var(--ink);align-items:center;gap:6px;margin-bottom:16px;font-size:16px;font-weight:700;display:inline-flex}.dandori .cook-footer-brand .cook-logo-flame{width:20px;height:20px}.dandori .cook-footer p{max-width:var(--content-width);color:var(--soft);letter-spacing:.02em;margin:0 auto 6px;font-size:11px;line-height:1.8}.dandori .cook-footer a{color:var(--soft);text-underline-offset:2px;text-decoration:underline}.dandori .cook-footer a:hover{color:var(--noren)}.dandori :focus-visible{outline:2px solid var(--noren);outline-offset:2px}@media (prefers-reduced-motion:reduce){.dandori *,.dandori :before,.dandori :after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
