.dandori{--bg:#f4f5f1;--surface:#e9ecea;--board:#e6e3d6;--ink:#2b3138;--soft:#8b929b;--line:#dde0da;--noren:#2f4d7d;--noren-deep:#223c66;--hi:#c9503a;--herb:#5f9464;--tamago:#d9a62e;--steam:#8fa3b0;--content-width:820px;background-color:var(--bg);color:var(--ink);background-image:radial-gradient(120% 60% at 50% -20%,#e7edf5 0%,#e7edf500 70%);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(--hi)}.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{max-width:calc(var(--content-width) - 32px);text-align:center;width:calc(100% - 32px);height:clamp(200px,42vw,250px);margin:16px auto 0;position:relative}.dandori .noren-svg{width:100%;height:100%;position:absolute;inset:0}.dandori .noren-rod{fill:#e6e3d6}.dandori .noren-chichi,.dandori .noren-obi{fill:#2f4d7d}.dandori .noren-panel{fill:var(--noren);transform-box:fill-box;transform-origin:top;animation:6s ease-in-out infinite norenSway}.dandori .noren-panel:first-of-type{animation-delay:0s}.dandori .noren-panel:nth-of-type(2){animation-delay:-.45s}.dandori .noren-panel:nth-of-type(3){animation-delay:-.9s}.dandori .noren-panel:nth-of-type(4){animation-delay:-1.35s}@keyframes norenSway{0%,to{transform:skew(2.4deg)}50%{transform:skew(-2.2deg)}}.dandori .cook-noren h1{color:#fff;letter-spacing:.18em;text-shadow:0 1px 3px #1521378c,0 0 14px #15213773;font-size:clamp(23px,5.5vw,34px);font-weight:700;line-height:1.6;position:absolute;top:58%;left:16px;right:16px;transform:translateY(-50%)}@keyframes norenTextSway{0%,to{transform:translateY(-50%)skew(2.4deg)}50%{transform:translateY(-50%)skew(-2.2deg)}}@media (min-width:601px){.dandori .hero-br{display:none}}.dandori .cook-lead{max-width:var(--content-width);text-align:center;color:var(--soft);letter-spacing:.08em;margin:30px 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{background:var(--surface);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 #2f4d7d1f}.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 #2f4d7d1f}.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);transform:translateY(-1px);box-shadow:0 8px 24px #2f4d7d4d}.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:linear-gradient(90deg, var(--tamago), var(--hi));border-radius:999px;height:100%;transition:width .35s}.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:#2f4d7d1a}.dandori .tag-dish{background:var(--board);color:var(--ink);font-weight:500}.dandori .tag-servings{color:var(--noren);background:#2f4d7d1a}.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 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}}
