:root{--bg: #f6f0e2;--panel: #fffdf7;--text: #25211c;--muted: #5c554b;--accent: #206f4d;--accent-strong: #12563a;--line: #d8c8ae;--shadow: 0 14px 32px rgba(50, 33, 13, .12)}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{background:radial-gradient(circle at top left,#f8f4e4,#f2ead8 38%,#f7f4eb);color:var(--text);min-width:320px;font-family:Trebuchet MS,Lucida Grande,Lucida Sans Unicode,sans-serif}h1,h2,h3,h4{font-family:Baskerville,Book Antiqua,Palatino Linotype,serif;letter-spacing:.01em}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #216b8480;outline-offset:2px}.studio{width:min(1400px,95vw);margin:1.2rem auto 2.4rem;display:grid;gap:.9rem}.hero{display:flex;justify-content:space-between;gap:1rem;align-items:stretch;padding:1rem;border-radius:1rem;background:linear-gradient(125deg,#fff7e3,#f4f0dd 45%,#e2f4ea);border:1px solid var(--line);box-shadow:var(--shadow)}.kicker{margin:0;font-weight:700;letter-spacing:.09em;font-size:.78rem;color:var(--accent-strong)}.hero h1{margin:.2rem 0 .5rem;font-size:clamp(1.5rem,3vw,2.4rem)}.hero p{margin:0;max-width:68ch;color:var(--muted)}.hero-metrics{display:grid;gap:.45rem;min-width:220px}.hero-metrics p{margin:0;padding:.65rem .75rem;border-radius:.7rem;background:#fff8eb;border:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.hero-metrics strong{font-size:1.35rem}.banner{margin:0;border-radius:.8rem;padding:.6rem .8rem}.banner.status{border:1px solid #8ec8a8;background:#e9f9ef}.banner.error{border:1px solid #e3a4a4;background:#ffecec;color:#8f2323}.workspace{display:grid;grid-template-columns:minmax(320px,400px) 1fr;gap:.85rem;align-items:start}.panel{border:1px solid var(--line);background:var(--panel);border-radius:.95rem;padding:.9rem;box-shadow:var(--shadow)}.controls{display:grid;gap:.8rem;max-height:calc(100vh - 2.4rem);overflow-y:auto}.output{min-height:540px;display:grid;gap:.9rem}fieldset{border:1px solid var(--line);border-radius:.75rem;padding:.7rem;margin:0;display:grid;gap:.4rem}legend{font-weight:700;padding:0 .35rem}label{font-size:.92rem;color:var(--muted)}input,textarea,select,button{font:inherit}input,textarea,select{border:1px solid #cfc3ad;border-radius:.55rem;padding:.48rem .55rem;background:#fffef9;color:var(--text)}textarea{min-height:84px;resize:vertical}button{border:1px solid transparent;border-radius:.55rem;padding:.48rem .72rem;background:var(--accent);color:#fff;cursor:pointer}button:hover{background:var(--accent-strong)}button:disabled{cursor:not-allowed;opacity:.62}.primary{font-weight:700;background:linear-gradient(120deg,#1f6f50,#216489)}.ghost{background:#f7f2e5;border-color:var(--line);color:var(--text)}.ghost:hover{background:#ede4cf}.danger{background:#a93636}.danger:hover{background:#862626}.row-form{display:grid;grid-template-columns:1fr auto;gap:.35rem}.row-form label{grid-column:1 / -1}.inline-check{display:flex;gap:.4rem;align-items:center;font-size:.88rem}.check-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:.35rem}.chips{display:flex;flex-wrap:wrap;gap:.35rem}.chip{font-size:.82rem;background:#f9f4e7;border-color:var(--line);color:var(--text)}.token-list,.cookbook-list{list-style:none;margin:0;padding:0;display:grid;gap:.45rem}.token-list li,.cookbook-list li{border:1px solid var(--line);border-radius:.65rem;padding:.55rem;background:#fffdf8;display:grid;gap:.4rem}.token-list li{display:flex;justify-content:space-between;align-items:center}.link{border:0;background:transparent;color:var(--accent-strong);padding:0}.link:hover{background:transparent;text-decoration:underline}.upload-label{border:1px dashed var(--line);border-radius:.55rem;padding:.45rem .6rem;cursor:pointer;text-align:center}input[type=file]{display:none}.cookbook-list p{margin:0;color:var(--muted);font-size:.86rem}.cookbook-list .empty{color:var(--muted)}.topline{display:flex;justify-content:space-between;gap:.8rem;align-items:baseline}.topline h2{margin:0}.shopping-inline{border:1px dashed var(--line);border-radius:.65rem;padding:.45rem .6rem;background:#fff9ed}.shopping-inline span{font-size:.8rem;color:var(--muted);display:block}.shopping-inline p{margin:0;font-size:.88rem}.empty-hero{border:1px dashed var(--line);border-radius:.8rem;padding:1rem;background:#fffef9}.empty-hero h3{margin-top:0}.recipe-grid{display:grid;gap:.75rem}.recipe-card{border:1px solid var(--line);border-radius:.9rem;padding:.8rem;background:#fffcf5;display:grid;gap:.55rem}.recipe-card.selected{border-color:#2c7f60;box-shadow:0 0 0 2px #2c7f6033}.recipe-card header h3{margin:0}.recipe-card header p{margin:.25rem 0 0}.recipe-card .meta{color:var(--muted);font-size:.9rem}.recipe-card h4{margin:0}.recipe-card ul,.recipe-card ol{margin:0;padding-left:1.2rem;display:grid;gap:.25rem}.action-row{display:flex;flex-wrap:wrap;gap:.35rem}.meter{position:relative;border:1px solid var(--line);border-radius:999px;overflow:hidden;height:24px;background:#f2ebdd}.meter div{position:absolute;inset:0 auto 0 0;background:linear-gradient(90deg,#368461,#6cab43)}.meter span{position:relative;z-index:1;display:block;text-align:center;font-size:.78rem;line-height:22px;color:#17382a;font-weight:700}.edit-line{display:grid;grid-template-columns:1fr 90px 90px;gap:.35rem;align-items:center}.edit-line textarea{min-height:64px}.compare-panel,.conversation-panel{border:1px solid var(--line);border-radius:.8rem;padding:.75rem;background:#fffdf8}.compare-panel h3,.conversation-panel h3{margin-top:0}.compare-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.6rem}.compare-grid div{border:1px dashed var(--line);border-radius:.65rem;padding:.55rem;background:#fff9ef}.compare-grid h4{margin:0}.compare-grid ul,.conversation-panel ul{margin:.45rem 0 0;padding-left:1rem;display:grid;gap:.3rem}.cook-mode{position:fixed;inset:0;background:#14191ab8;display:grid;place-items:center;padding:1rem}.cook-card{width:min(640px,92vw);border-radius:.9rem;border:1px solid var(--line);background:#fff8eb;padding:.95rem;box-shadow:var(--shadow)}.cook-card header{display:flex;justify-content:space-between;gap:.6rem;align-items:center}.cook-card h2{margin:0;font-size:1.25rem}.cook-step{font-size:1.15rem;margin:.4rem 0}.cook-note,.timer{margin:.35rem 0;color:var(--muted)}@media(max-width:1100px){.workspace{grid-template-columns:1fr}.controls{max-height:unset}.hero{flex-direction:column}.hero-metrics{grid-template-columns:repeat(3,1fr);min-width:0}}@media(max-width:720px){.hero-metrics,.edit-line,.compare-grid{grid-template-columns:1fr}}
