:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#342b25;background:#f8f5ed;font-synthesis:none;--paper:#fffefa;--primary:#9b3c24;--ink:#342b25;--muted:#71675c;--line:#d8cec0;--error:#a02920;--success:#3f6135}*{box-sizing:border-box}body{margin:0}button,input{font:inherit;font-weight:400}button,a,input{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.55;cursor:not-allowed}button{transition:background .15s}a{color:inherit}svg{flex-shrink:0}button:focus-visible,a:focus-visible{outline:3px solid var(--primary);outline-offset:4px}input:focus-visible{outline:2px solid var(--primary);outline-offset:2px}h1,h2,h3,p{margin:0}h1,h2,.brand,.note-card h3{font-family:Georgia,Times New Roman,serif;font-weight:400}h1{font-size:52px;line-height:1.1;letter-spacing:-1.8px}h2{font-size:30px;letter-spacing:-.6px;overflow-wrap:anywhere}h2:focus{outline:none}h3{font-size:16px;font-weight:600}.site-header{height:88px;max-width:1280px;margin:auto;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:0 38px;gap:20px}.brand{display:flex;align-items:center;gap:11px;font-size:25px;letter-spacing:-.7px;text-decoration:none;white-space:nowrap}.brand em{color:var(--primary);font-size:23px}.brand-icon{display:grid;place-items:center;border:1px solid var(--primary);border-radius:50%;width:40px;height:40px;color:var(--primary)}.header-note{color:var(--muted);font-size:12px;display:flex;align-items:center;gap:8px}.local-dot{width:6px;height:6px;background:#68764c;border-radius:50%}.nav-link{display:flex;align-items:center;gap:8px;background:transparent;border:0;color:var(--primary);font-size:13px;padding:12px 0}main{max-width:1144px;margin:0 auto;padding:0 28px}.intro{position:relative;padding:46px 0 32px}.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:600;color:var(--primary)}.intro .eyebrow{margin-bottom:16px}.intro p{font-size:14px;color:var(--muted);margin-top:17px;line-height:1.7}.features{display:flex;gap:23px;list-style:none;padding:0;margin:22px 0 0;color:#594e43;font-size:12px}.features li{display:flex;align-items:center;gap:7px}.features svg{height:14px;width:14px;color:var(--primary)}.workspace{display:grid;grid-template-columns:minmax(0,714px) minmax(250px,300px);gap:38px;align-items:start}.steps{display:flex;align-items:center;gap:14px;font-size:12px;margin-bottom:18px;color:var(--muted)}.steps>span:not(.step-line){display:flex;align-items:center;gap:8px}.steps b{border:1px solid #8d8173;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:400}.steps .active{color:var(--primary);font-weight:600}.steps .active b{border-color:var(--primary);background:var(--primary);color:#fff}.step-line{height:1px;width:45px;background:var(--line)}.sheet{background:var(--paper);border:1px solid var(--line);border-radius:12px;box-shadow:0 5px 17px #493c2210;overflow:hidden}.sheet-heading{padding:27px 30px 24px;display:flex;justify-content:space-between;align-items:center;gap:16px}.sheet-heading .eyebrow{font-size:9px;letter-spacing:1.5px;display:block;margin-bottom:8px}.sheet-symbol{color:#927757}.form-section{padding:0 30px 25px;border-bottom:1px solid #e9e2d7}label{display:block;font-size:12px;font-weight:600;margin-bottom:8px}input{width:100%;height:43px;border:1px solid #a99c8b;background:#fffefa;border-radius:5px;padding:10px 12px;color:var(--ink);font-size:14px;min-width:0}input::placeholder{color:#7f756a}input[aria-invalid=true]{border-color:var(--error);background:#fff9f5}.servings{display:grid;grid-template-columns:1fr 20px 1fr;gap:16px;align-items:start;margin-top:22px}.serving-arrow{margin-top:37px;color:#8a7a68}.number-field{display:flex;align-items:center;border:1px solid #a99c8b;border-radius:5px;overflow:visible;background:#fffefa}.number-field input{border:0;background:transparent;font-weight:600;flex:1;font-variant-numeric:tabular-nums}.number-field span{padding:0 13px;color:var(--muted);font-size:12px}.number-field.target{border-color:var(--primary);background:#fdf4ed}.ingredients-section{padding:25px 30px 22px}.section-title{display:flex;justify-content:space-between;align-items:center;gap:10px}.section-title h3{display:flex;align-items:center;gap:8px}.section-title h3>span,.count{background:#eee8dd;border-radius:4px;padding:2px 6px;font-size:10px;color:#665647;font-weight:400}.subtle{font-size:11px;color:var(--muted);line-height:1.6}.row-labels{display:grid;grid-template-columns:105px 95px 1fr 24px;gap:9px;margin-top:22px;margin-bottom:8px;font-size:9px;letter-spacing:.7px;color:#695d51}.row-labels small{font-size:9px;letter-spacing:0}.ingredient-row{display:grid;grid-template-columns:105px 95px 1fr 24px;gap:9px;margin-bottom:11px;align-items:center}.ingredient-row input{height:41px}.ingredient-row .quantity-cell input{font-variant-numeric:tabular-nums}.icon-button{border:0;background:none;display:grid;place-items:center;color:#776858;padding:4px;border-radius:3px}.icon-button:hover{background:#f6e2d7;color:var(--primary)}.mobile-label{display:none}.row-errors{grid-column:1/-1}.field-error{font-size:12px;line-height:1.5;color:var(--error);display:flex;align-items:flex-start;gap:5px;margin-top:6px}.field-error svg{margin-top:2px}.add-button{background:none;border:0;color:var(--primary);display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;padding:8px 0;margin-top:6px}.sheet-footer{padding:21px 30px;background:#faf8f3;display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #e9e2d7}.sheet-footer>span{font-size:11px;color:var(--muted)}.primary{background:var(--primary);border:1px solid var(--primary);color:#fffefa;border-radius:5px;padding:12px 18px;font-size:13px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:10px;min-height:44px}.primary:hover:not(:disabled){background:#7e2e1a}aside{padding-top:40px}.note-card{background:#eee7d9;border:1px solid #e1d6c4;border-radius:9px;padding:12px 25px 25px}.note-illustration{margin:0 -6px 13px}.note-illustration svg{width:100%;height:116px}.note-card .eyebrow{font-size:8px;letter-spacing:1.3px;color:#75523c}.note-card h3{font-size:25px;line-height:1.2;letter-spacing:-.4px;margin:10px 0 13px}.note-card p{font-size:12px;line-height:1.8;color:#655749}.formula{border-top:1px solid #cbbba4;padding-top:16px;margin-top:19px;font-size:10px;color:#695442;display:flex;flex-wrap:wrap;gap:7px}.formula b{font-weight:600;flex-basis:100%;margin-top:2px;color:var(--primary)}.saved-section{margin-top:29px}.saved-section>.subtle{margin-top:9px}.saved-empty{padding:24px 12px;text-align:center;border:1px dashed #bbae9a;border-radius:7px;margin-top:16px;color:#81705c}.saved-empty p{font-size:11px;margin:10px 0 5px;color:#584a3f}.saved-empty span{font-size:10px;color:#71675c}.saved-list{margin-top:12px}.saved-list button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;padding:14px 0;border:0;border-bottom:1px solid var(--line);background:none;color:var(--ink)}.saved-list strong{font-size:13px;font-weight:600;display:block;overflow-wrap:anywhere}.saved-list small{font-size:11px;color:var(--muted);display:block;margin-top:5px}.saved-list svg{color:var(--primary)}.empty{text-align:center;padding:28px 10px;border:1px dashed #bbae9a;margin-top:20px;border-radius:6px;color:var(--muted)}.empty p{margin:7px 0;font-size:14px}.empty span{font-size:12px}.page-footer{display:flex;gap:20px;justify-content:space-between;font-size:10px;color:var(--muted);padding:27px 0 25px;margin-top:34px;border-top:1px solid var(--line)}.page-footer span:first-child{font-family:Georgia,serif;font-size:14px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.result-summary{margin:0 30px;display:flex;align-items:center;gap:20px;padding:20px;background:#f5f0e6;border-radius:6px}.result-summary>div>span{display:block;font-size:10px;color:var(--muted);margin-bottom:7px}.result-summary strong{font-size:27px;font-weight:500;font-variant-numeric:tabular-nums}.result-summary small{font-size:11px;color:var(--muted);font-weight:400}.result-summary>svg{color:#8a7a68}.result-summary .factor{margin-left:auto;padding-left:20px;border-left:1px solid #c9baa4;color:var(--primary)}.result-ingredients{padding:27px 30px}.result-ingredients h3{margin-bottom:15px}.result-row{display:grid;grid-template-columns:8px 1fr auto 60px;gap:13px;padding:18px 0;border-bottom:1px solid #e9e2d7;align-items:baseline;font-size:14px}.ingredient-dot{height:5px;width:5px;border-radius:50%;background:#9b3c24;align-self:center}.result-row strong{font-size:21px;font-weight:500;font-variant-numeric:tabular-nums}.result-row>span:last-child{color:var(--muted);overflow-wrap:anywhere}.result-name{overflow-wrap:anywhere}.precision{font-size:10px;line-height:1.7;color:var(--muted);margin-top:16px}.save-area{padding:22px 30px;background:#faf8f3;border-top:1px solid #e9e2d7}.save-area>div:first-child{display:flex;align-items:flex-start;gap:10px}.save-area>div:first-child>svg{color:var(--primary);margin-top:2px}.save-area h3{font-size:14px}.save-area p{font-size:11px;line-height:1.7;color:var(--muted);margin-top:5px}.save-area .primary{margin-top:18px;width:100%}.status{display:flex;align-items:flex-start;justify-content:center;gap:6px;font-size:12px;color:var(--success);line-height:1.6}.status:not(:empty){margin-top:12px}.error-status{color:var(--error)}.result-actions{display:flex;justify-content:space-between;gap:12px;padding:19px 30px;border-top:1px solid #e9e2d7}.text-button{display:flex;align-items:center;gap:7px;border:0;background:none;color:var(--primary);padding:4px 0;font-size:12px;min-height:30px}.side-tip{padding:27px 0}.side-tip p{font-size:12px;line-height:1.8;color:var(--muted);margin-top:12px}.side-tip .text-button{margin-top:13px}@media(min-width:1000px){.intro{padding-top:48px}.intro h1 br{display:none}.intro h1{font-size:48px}}@media(max-width:950px){.workspace{gap:24px;grid-template-columns:minmax(0,1fr) 255px}.sheet-heading,.ingredients-section,.form-section,.result-ingredients,.save-area{padding-left:22px;padding-right:22px}.ingredient-row,.row-labels{grid-template-columns:80px 70px 1fr 24px}.header-note{display:none}.result-summary{margin:0 22px;gap:12px;padding:15px}.result-summary .factor{padding-left:12px}.result-summary small{display:block}}@media(max-width:740px){.site-header{height:72px;padding:0 22px}.brand{font-size:22px}.brand em{font-size:21px}.brand-icon{width:34px;height:34px}.nav-link{font-size:11px}.nav-link svg{display:none}main{padding:0 20px}.intro{padding:32px 0 28px}h1{font-size:40px;letter-spacing:-1.3px}.intro p{font-size:13px;max-width:320px}.features{gap:8px 16px;flex-wrap:wrap;font-size:11px;margin-top:18px}.workspace{grid-template-columns:1fr;gap:0}.sheet-heading{padding-top:24px}.sheet-heading h2{font-size:28px}.steps{font-size:11px}.form-section{padding-bottom:22px}.servings{gap:12px}.number-field span{padding-right:10px;font-size:11px}.ingredients-section{padding-top:22px}.section-title>.subtle{font-size:10px}.row-labels{display:none}.ingredient-list{margin-top:18px}.ingredient-row{grid-template-columns:1fr 1fr 26px;gap:12px 10px;padding-bottom:17px;margin-bottom:17px;border-bottom:1px solid #e9e2d7;align-items:end}.mobile-label{display:block;font-size:10px;margin-bottom:6px}.quantity-cell{grid-column:1}.unit-cell{grid-column:2}.name-cell{grid-column:1/3;grid-row:2}.ingredient-row>.icon-button{grid-column:3;grid-row:2;height:41px}.row-errors{grid-row:3}.sheet-footer{padding:19px 22px;flex-direction:column;gap:13px;align-items:stretch}.sheet-footer .primary{order:-1}.sheet-footer>span{text-align:center;font-size:10px}aside{padding-top:28px;display:flex;flex-direction:column}.note-card{order:2;margin-top:26px;padding:20px 24px;position:relative}.note-illustration{width:112px;float:right;margin:0 0 5px 15px}.note-card h3{font-size:23px}.note-card p{clear:both}.note-card .formula{display:none}.saved-section{margin-top:0}.saved-empty{padding:19px}.page-footer{flex-wrap:wrap;gap:12px;padding-bottom:24px;margin-top:28px}.page-footer>span:nth-child(2){display:none}.result-summary{gap:12px;padding:16px 12px}.result-summary strong{font-size:25px}.result-summary>div>span{font-size:9px}.result-row{grid-template-columns:6px 1fr auto 46px;gap:9px;font-size:13px}.result-row strong{font-size:20px}.result-actions{padding:16px 22px}.result-actions .text-button{font-size:11px}.side-tip{padding:0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
