@import"https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@500;600&family=Zen+Kaku+Gothic+New:wght@400;500;700&display=swap";:root{--bg: #f7f0e6;--ink: #201a14;--muted: #6d5f53;--accent: #c6553b;--accent-dark: #2c5749;--card: #fff7ee;--card-strong: #f1e7db;--line: rgba(32, 26, 20, .12);--shadow: 0 20px 50px rgba(32, 26, 20, .15);--radius: 24px}*{box-sizing:border-box}body{margin:0;font-family:Zen Kaku Gothic New,Hiragino Kaku Gothic ProN,Yu Gothic,sans-serif;color:var(--ink);background:radial-gradient(circle at 20% 20%,#fff6eb 0,transparent 50%),radial-gradient(circle at 80% 10%,#f2e0d1 0,transparent 45%),linear-gradient(135deg,#f7f0e6,#f1e6d9,#eadbcb);min-height:100vh}h1,h2,h3,h4{font-family:Shippori Mincho,Hiragino Mincho ProN,serif;font-weight:600;letter-spacing:.02em}p{line-height:1.7}ul,ol{padding-left:1.2rem;margin:0}button,input,textarea,select{font-family:inherit}.app{padding:48px clamp(20px,6vw,80px) 80px;display:flex;flex-direction:column;gap:72px}.hero{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px;align-items:center}.hero h1{font-size:clamp(2.4rem,3.8vw,3.9rem);margin:12px 0 16px}.hero h1 span{display:block;color:var(--accent-dark)}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.75rem;color:var(--accent);margin:0}.lead{color:var(--muted);font-size:1.05rem}.hero-card{background:var(--card);border-radius:var(--radius);padding:24px 26px;box-shadow:var(--shadow);border:1px solid rgba(198,85,59,.1)}.hero-card ul{color:var(--muted)}.workspace{display:grid;grid-template-columns:1.1fr .9fr;gap:32px}.steps{display:grid;gap:20px}.steps-nav{display:flex;flex-wrap:wrap;gap:10px}.step-pill{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 14px;font-size:.85rem;display:inline-flex;align-items:center;gap:8px;cursor:pointer;transition:all .2s ease}.step-pill span{background:var(--accent);color:#fff;width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;font-size:.7rem}.step-pill.active{background:var(--accent-dark);color:#fff;border-color:transparent;box-shadow:0 12px 26px #2c574933}.step-pill.active span{background:#fff;color:var(--accent-dark)}.step-card{background:var(--card-strong);border-radius:24px;padding:28px;border:1px solid var(--line);box-shadow:0 18px 46px #201a141f;display:grid;gap:20px}.step-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.step-header p{color:var(--muted);margin:0}.step-actions{display:flex;gap:10px;flex-wrap:wrap}button.primary{background:var(--accent-dark);color:#fff;border:none;border-radius:999px;padding:10px 18px;cursor:pointer;transition:transform .2s ease}button.primary:disabled{opacity:.6;cursor:not-allowed}button.ghost{background:transparent;border:1px solid var(--line);border-radius:999px;padding:10px 18px;cursor:pointer}button.primary:hover,button.ghost:hover{transform:translateY(-1px)}.form-grid{display:grid;gap:16px}.field{display:grid;gap:6px}.field span{font-weight:600;font-size:.9rem}.field input,.field textarea,.field select{border:1px solid var(--line);border-radius:16px;padding:12px;background:#fff;font-size:.95rem}.summary{display:grid;gap:12px}.summary-row{background:#ffffffb3;border-radius:16px;padding:12px 16px;border:1px solid rgba(44,87,73,.1)}.summary-row span{font-weight:600}.summary-row p{margin:6px 0 0;color:var(--muted)}.step-footer{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:.85rem}.chat{background:#1f1a15;color:#f8efe3;border-radius:28px;padding:24px;display:grid;gap:16px;box-shadow:var(--shadow)}.chat-header p{margin:6px 0 0;color:#f8efe3b3}.chat-log{background:#ffffff0f;border-radius:18px;padding:16px;max-height:360px;overflow-y:auto;display:grid;gap:12px}.chat-bubble{padding:12px 14px;border-radius:16px;border:1px solid rgba(255,255,255,.12)}.chat-bubble.user{background:#c4553b40}.chat-bubble.assistant{background:#ffffff14}.chat-bubble span{font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;display:block;margin-bottom:6px}.chat-bubble p{margin:0;color:#f8efe3e6}.chat-input{display:grid;gap:10px}.chat-input textarea{border-radius:16px;border:none;padding:12px;background:#ffffff1a;color:#fff}.loading{color:#f8efe3b3;font-size:.85rem}.error{color:#ffb2a7;font-size:.9rem}.recipe-output{display:grid;gap:16px}.recipe-header p{margin:6px 0 0;color:var(--muted)}.recipe-card{background:var(--card);border-radius:24px;padding:26px;border:1px solid var(--line);box-shadow:var(--shadow);display:grid;gap:16px}.recipe-title{display:flex;flex-direction:column;gap:8px}.recipe-title h3{margin:0}.meta{display:flex;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:.85rem}.intro{color:var(--muted)}.recipe-body{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.tips{background:#fff;border-radius:16px;padding:12px 16px;border:1px solid rgba(198,85,59,.2)}.notes{font-size:.9rem;color:var(--muted)}.recipe-raw{background:#111;color:#f0e8dc;border-radius:18px;padding:18px;white-space:pre-wrap}.empty{color:var(--muted)}.footer{text-align:center;color:var(--muted);font-size:.85rem}@media(max-width:1100px){.workspace{grid-template-columns:1fr}}@media(max-width:900px){.hero{grid-template-columns:1fr}.step-header{flex-direction:column}}@media(prefers-reduced-motion:reduce){button.primary:hover,button.ghost:hover{transform:none}}
