@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500&display=swap');

:root{font-family:'DM Sans',sans-serif;color:#243d32;background:#f5f3ec;font-synthesis:none;--green:#264e3c;--muted:#7a8176;--line:#dedfd3}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 75% 30%,#e9eddc80,transparent 55%),#f5f3ec}button,input,textarea{font:inherit}button,a,textarea,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #8ca16a;outline-offset:5px}button{transition:background .2s,transform .2s}button:hover{transform:translateY(-2px)}[hidden]{display:none!important}.site-header{max-width:1440px;margin:auto;padding:34px 6%;display:flex;justify-content:space-between;align-items:center}.brand{font-size:21px;font-weight:600;letter-spacing:-.7px;text-decoration:none;color:inherit;display:flex;gap:12px;align-items:center}.brand-mark{font-size:34px;font-weight:400}.header-note,.eyebrow,.servings,.meta-label{font-size:10px;font-weight:600;letter-spacing:2px}.header-note{color:var(--muted)}main{max-width:760px;margin:55px auto 90px;padding:0 24px}.conversation{text-align:center}.eyebrow{display:flex;align-items:center;justify-content:center;gap:8px}.status-dot{height:6px;width:6px;border-radius:50%;background:#839762;box-shadow:0 0 0 4px #83976212}h1{font-family:'Playfair Display',Georgia,serif;font-size:clamp(60px,8vw,88px);line-height:1.08;letter-spacing:-4px;font-weight:500;margin:25px 0 22px}h1 em{color:#6c8154;font-weight:500}.intro{font-size:15px;line-height:1.7;color:var(--muted);margin:0 0 35px}.composer{text-align:left;background:#fffef8;border:1px solid #d4d9c8;border-radius:22px;padding:22px 22px 15px;box-shadow:0 12px 40px #344f3510}.composer:focus-within{border-color:#80996d;box-shadow:0 10px 40px #344f3518}textarea{display:block;width:100%;resize:vertical;min-height:96px;max-height:250px;border:0;background:transparent;outline:none;color:#243d32;font-size:17px;line-height:1.6}textarea::placeholder{color:#999d90}.composer-bottom{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:12px}.composer-bottom>span{font-size:11px;color:#9a9e91}.send,.primary{border:0;background:var(--green);color:white;border-radius:12px;padding:12px 20px;font-size:13px;font-weight:500}.send span{margin-left:14px;font-size:20px}.send:hover,.primary:hover{background:#36684f}.examples{margin:26px auto 0}.examples-label{font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:#9a9e91}.prompt-list{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:12px}.prompt-list button{border:1px solid var(--line);border-radius:24px;background:transparent;color:#7a8176;font-size:11px;padding:9px 14px}.prompt-list button:hover{background:#e9eddf}.result{scroll-margin-top:30px;margin-top:50px;padding:30px;background:#e9eddf;border:1px solid #dce2d0;border-radius:24px;animation:reveal .5s ease}.result-top{display:flex;justify-content:space-between;align-items:center;gap:10px}.result-top .eyebrow{justify-content:start;color:#637750}.servings{color:#87927a;font-size:9px;letter-spacing:1.5px}.dish-layout{display:grid;grid-template-columns:1.6fr 1fr;align-items:center;gap:20px;margin:28px 0}.dish-copy h2{font-family:'Playfair Display',Georgia,serif;font-size:36px;font-weight:500;letter-spacing:-1px;line-height:1.2;margin:0 0 15px}.dish-copy p{font-size:13px;line-height:1.7;color:#75816c}.dish-meta{display:flex;gap:35px;margin-top:23px}.dish-meta>span{display:grid;gap:7px}.meta-label{font-size:8px;color:#869077;letter-spacing:1.4px}.dish-meta strong{font-size:13px;font-weight:500}.dish-art{text-align:center;--food:#c69b53}.dish-art[data-color=red]{--food:#bb6750}.dish-art[data-color=green]{--food:#92a55f}.dish-art[data-color=pink]{--food:#d8987c}.plate{position:relative;margin:auto;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,#f0eee0 57%,#fdfbf2 58%,#e1e0d1 61%,#fbfaf1 64%,#f6f4e9 71%);box-shadow:9px 15px 22px #55674415;transform:rotate(-15deg)}.food{position:absolute;inset:43px 37px;border-radius:45% 55% 40% 60%;background:radial-gradient(ellipse at 30% 30%,#fff4c570,transparent 50%),var(--food);box-shadow:inset -6px -9px 14px #7f5c2525,4px 5px 7px #6c4e2520}.plate i{position:absolute;width:30px;height:14px;background:#6f8851;border-radius:0 80% 0 80%;top:40px;left:67px;transform:rotate(35deg)}.plate i:nth-of-type(2){top:105px;left:118px;transform:rotate(-65deg)}.plate i:nth-of-type(3){top:125px;left:50px;transform:rotate(30deg)}.art-caption{display:block;font-family:Georgia,serif;font-style:italic;font-size:11px;color:#93a082;margin-top:19px}.primary{width:100%;display:flex;align-items:center;justify-content:center;gap:20px;font-size:14px;padding:16px}.alternatives{display:flex;justify-content:space-between;gap:10px;margin-top:17px}.alternatives button{border:0;background:transparent;font-size:11px;color:#68785b;padding:8px 0}.alternatives span{margin-left:6px}.feedback{font-size:12px;line-height:1.6;color:#6e7d61;margin:15px 0 0}.feedback:empty{display:none}.ingredient-form{margin-top:22px}.ingredient-form label{font-size:12px;display:block;margin-bottom:10px}.ingredient-form>div{display:flex;gap:8px}.ingredient-form input{min-width:0;flex:1;border:1px solid #bcc9ae;background:#fffdf6;border-radius:10px;padding:12px;font-size:12px}.cooking{border-top:1px solid #cfd8c3;margin-top:30px;padding-top:25px;scroll-margin-top:25px}.cooking .eyebrow{justify-content:start}.cooking h3{font-family:Georgia,serif;font-size:22px;font-weight:400}.cooking li{font-size:13px;line-height:1.7;margin:8px 0;padding-left:5px}.cooking-note{font-size:11px;color:#7a866f}footer{max-width:1440px;margin:auto;padding:25px 6%;border-top:1px solid #e4e5da;display:flex;justify-content:space-between;font-size:10px;color:#959b8b}footer>span:last-child{letter-spacing:1.5px;font-size:8px}.footer-star{font-size:16px;margin-left:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes reveal{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media(max-width:600px){.site-header{padding:23px 24px}.header-note{display:none}main{margin-top:45px;padding:0 20px}h1{letter-spacing:-2.8px}.intro{font-size:14px}.composer{padding:17px}.composer-bottom>span{max-width:160px;line-height:1.6}textarea{font-size:16px}.result{padding:23px 20px}.dish-layout{grid-template-columns:1fr}.dish-art{display:none}.dish-copy h2{font-size:33px}.alternatives{flex-wrap:wrap;justify-content:center;column-gap:22px}.ingredient-form>div{flex-direction:column}footer{gap:20px;line-height:1.6}footer>span:first-child{max-width:190px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Chef's Choice details extend the original visual language; opening styles stay intact. */
.request-context{font-size:11px;line-height:1.7;color:#7a866f;padding-bottom:15px;border-bottom:1px solid #d5ddca;margin:18px 0 0;overflow-wrap:anywhere}.ingredient-match{font-size:11px;color:#637750;line-height:1.8;margin:0 0 22px}.other-ideas{margin-top:22px;border-top:1px solid #cfd8c3;padding-top:15px}.other-ideas:empty{display:none}.other-ideas>p{font-size:9px;text-transform:uppercase;letter-spacing:1.6px;color:#829174}.other-ideas button{display:block;width:100%;padding:12px 0;text-align:left;border:0;border-bottom:1px solid #d9e0d0;background:transparent;color:#49613e}.other-ideas button:last-child{border-bottom:0}.other-ideas button span{font-family:Georgia,serif;font-size:16px;display:block}.other-ideas button small{display:block;margin-top:6px;color:#7a866f;font-size:10px;line-height:1.6}.no-match h3{font-family:Georgia,serif;font-weight:400;font-size:28px}.no-match p{font-size:13px;line-height:1.8;color:#75816c}.back-to-chef{border:0;background:transparent;color:#68785b;padding:0 0 28px;font-size:12px}.cooking-mode .conversation,.cooking-mode .result-top,.cooking-mode #request-context,.cooking-mode #choice-content,.cooking-mode #feedback,.cooking-mode #no-match{display:none!important}.cooking-mode main{margin-top:25px}.cooking-mode .result{margin-top:0}.cooking-mode .cooking{border:0;margin:0;padding:0}.cooking h2{font-family:'Playfair Display',Georgia,serif;font-weight:500;font-size:36px;line-height:1.2;letter-spacing:-1px}.cooking-meta{font-size:12px;color:#75816c}.cooking ul{padding-left:20px}.cooking ol{padding-left:22px}.cooking li{margin-bottom:14px}.cooking-note{line-height:1.8}.ingredient-match,.other-ideas button,.cooking li{overflow-wrap:anywhere}button:disabled{opacity:.5;cursor:default}h2:focus,h3:focus{outline:none}
