:root{--ink:#243127;--muted:#687269;--cream:#f7f1e6;--paper:#fffdf8;--line:#ded7c9;--green:#305945;--green-dark:#244535;--terracotta:#c94f2e;--terracotta-dark:#a83d21;--gold:#d9aa52;--shadow:0 18px 60px #342f231f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}body,button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button,a{transition:color .15s,background-color .15s,border-color .15s,transform .15s}a{color:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}:focus-visible{outline-offset:3px;outline:3px solid #c94f2e59}.shell{width:min(1160px,100% - 32px);margin:0 auto}.site-header{z-index:30;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffdf8f0;border-bottom:1px solid #2431271a;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:20px;min-height:68px;display:flex}.wordmark{color:var(--green-dark);align-items:center;gap:10px;font-family:Georgia,Times New Roman,serif;font-size:1.25rem;font-weight:700;text-decoration:none;display:inline-flex}.wordmark-dot{background:var(--terracotta);color:#fff;border-radius:50%;place-items:center;width:34px;height:34px;font-family:Georgia,Times New Roman,serif;font-size:1.05rem;display:inline-grid}.header-nav{align-items:center;gap:24px;font-size:.9rem;font-weight:650;display:flex}.header-nav a{text-decoration:none}.header-nav a:hover{color:var(--terracotta)}.header-nav .header-cta{background:var(--green);color:#fff;border-radius:999px;padding:10px 16px}.header-nav .header-cta:hover{background:var(--green-dark);color:#fff}.hero{background-color:var(--cream);background-image:radial-gradient(circle,#3059451f 1px,#0000 1px);background-size:22px 22px;padding:64px 0 76px;overflow:hidden}.hero-grid{grid-template-columns:minmax(0,1fr) minmax(380px,.8fr);align-items:center;gap:72px;display:grid}.hero-copy h1,.section-heading h2,.pricing-copy h2,.legal-page h1,.status-card h1{letter-spacing:-.035em;margin:0;font-family:Georgia,Times New Roman,serif;font-weight:600;line-height:1.03}.hero-copy h1{max-width:680px;font-size:clamp(3.1rem,7vw,5.8rem)}.hero-copy>p{color:#4f5e52;max-width:600px;margin:26px 0 32px;font-size:clamp(1.05rem,2vw,1.24rem);line-height:1.7}.hero-proof{color:var(--green-dark);flex-wrap:wrap;gap:18px 26px;font-size:.92rem;font-weight:700;display:flex}.hero-proof span{align-items:center;gap:8px;display:inline-flex}.hero-proof b{border:1px solid #30594552;border-radius:50%;place-items:center;width:26px;height:26px;font-size:.75rem;display:inline-grid}.import-card{background:var(--paper);box-shadow:var(--shadow);border:1px solid #24312724;border-radius:18px;padding:30px}.import-card h2{margin:0 0 6px;font-family:Georgia,Times New Roman,serif;font-size:1.8rem}.import-card>p{color:var(--muted);margin:0 0 22px}.mode-tabs{background:#eee8dc;border-radius:10px;grid-template-columns:1fr 1fr;margin:0 0 22px;padding:4px;display:grid}.mode-tabs button{color:var(--muted);background:0 0;border:0;border-radius:7px;padding:10px 12px;font-size:.9rem;font-weight:700}.mode-tabs button.active{background:var(--paper);color:var(--ink);box-shadow:0 2px 8px #2c2a211a}.field-label{color:var(--ink);justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px;font-size:.84rem;font-weight:750;display:flex}.field-label span{color:var(--muted);font-size:.72rem;font-weight:500}.import-row{gap:8px;display:flex}.text-input,.text-area,.day-row select{width:100%;color:var(--ink);background:#fff;border:1px solid #cbc4b7;border-radius:9px;outline:none}.text-input{min-height:48px;padding:0 13px}.text-area{resize:vertical;min-height:164px;padding:12px 13px}.text-input:focus,.text-area:focus,.day-row select:focus{border-color:var(--green);box-shadow:0 0 0 3px #3059451f}.field-help,.checkout-note{color:var(--muted);margin:9px 0 0;font-size:.76rem;line-height:1.45}.free-used{border-left:3px solid var(--gold);background:#fbf4e6;padding:10px 12px;font-size:.82rem;color:#6c5730!important;margin:14px 0 0!important}.form-error{color:#9b2d1f;margin:12px 0 0;font-size:.82rem;font-weight:650}.button{white-space:nowrap;border:1px solid #0000;border-radius:9px;min-height:46px;padding:0 17px;font-weight:750}.button:hover:not(:disabled){transform:translateY(-1px)}.button-primary{background:var(--terracotta);color:#fff}.button-primary:hover:not(:disabled){background:var(--terracotta-dark)}.button-secondary{border-color:var(--line);color:var(--green-dark);background:#fff}.full-button{width:100%;margin-top:10px}.workspace-section{background:var(--paper);padding:58px 0 88px}.workspace-nav{border:1px solid var(--line);scrollbar-width:none;background:#f5f0e8;border-radius:999px;width:fit-content;max-width:100%;margin:0 auto 28px;padding:5px;display:flex;overflow-x:auto}.workspace-nav::-webkit-scrollbar{display:none}.workspace-nav button{min-height:40px;color:var(--muted);background:0 0;border:0;border-radius:999px;flex:none;padding:0 17px;font-size:.84rem;font-weight:700}.workspace-nav button.active{background:var(--green);color:#fff}.workspace-nav button span{background:#ffffff2e;border-radius:50%;place-items:center;min-width:19px;height:19px;margin-left:4px;font-size:.68rem;display:inline-grid}.recipe-sheet,.tool-panel{border:1px solid var(--line);background:#fff;border-radius:20px;max-width:1000px;margin:0 auto;box-shadow:0 12px 46px #342f2314}.recipe-sheet{overflow-wrap:anywhere;padding:clamp(24px,5vw,58px)}.tool-panel{overflow-wrap:anywhere}.recipe-topline{color:var(--terracotta);letter-spacing:.1em;text-transform:uppercase;justify-content:space-between;align-items:center;margin-bottom:14px;font-size:.75rem;font-weight:800;display:flex}.recipe-topline a{color:var(--green);letter-spacing:0;text-transform:none}.recipe-sheet>h2{letter-spacing:-.04em;max-width:700px;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.35rem,5vw,4.3rem);font-weight:600;line-height:1.05}.recipe-description{max-width:700px;color:var(--muted);margin:16px 0 0;font-size:1.05rem;line-height:1.7}.recipe-facts{gap:10px;margin:30px 0 42px;display:flex}.recipe-facts>div{border-left:2px solid var(--gold);background:#faf6ee;min-width:140px;padding:12px 16px}.recipe-facts>div>span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px;font-size:.7rem;font-weight:700;display:block}.portion-control{align-items:center;gap:10px;display:flex}.portion-control button{border:1px solid var(--line);width:36px;height:36px;color:var(--green);background:#fff;border-radius:50%;place-items:center;line-height:1;display:grid}.recipe-columns{grid-template-columns:minmax(260px,.72fr) minmax(0,1.25fr);gap:clamp(36px,7vw,82px);display:grid}.recipe-columns h3{border-bottom:1px solid var(--line);margin:0 0 20px;padding-bottom:11px;font-family:Georgia,Times New Roman,serif;font-size:1.45rem}.ingredient-list,.step-list,.feature-list,.shopping-list{margin:0;padding:0;list-style:none}.ingredient-list{gap:13px;display:grid}.ingredient-list li{color:#3f4c42;align-items:flex-start;gap:10px;line-height:1.45;display:flex}.ingredient-list li span{background:var(--terracotta);border-radius:50%;flex:none;width:7px;height:7px;margin-top:8px}.step-list{gap:24px;display:grid}.step-list li{grid-template-columns:34px 1fr;align-items:start;gap:14px;display:grid}.step-list li>span{background:var(--green);color:#fff;border-radius:50%;place-items:center;width:34px;height:34px;font-family:Georgia,Times New Roman,serif;font-weight:700;display:grid}.step-list p{color:#3f4c42;margin:4px 0 0;line-height:1.65}.recipe-save-row{border-top:1px solid var(--line);align-items:center;gap:18px;margin-top:46px;padding-top:24px;display:flex}.recipe-save-row>span{max-width:340px;color:var(--muted);font-size:.76rem}.tool-panel{min-height:470px;padding:clamp(22px,4vw,42px)}.panel-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;margin-bottom:28px;padding-bottom:22px;display:flex}.panel-heading p,.section-heading>p,.pricing-copy>p:first-child{color:var(--terracotta);letter-spacing:.1em;text-transform:uppercase;margin:0 0 5px;font-size:.72rem;font-weight:800}.panel-heading h2{margin:0;font-family:Georgia,Times New Roman,serif;font-size:2rem}.panel-count{color:var(--muted);font-size:.82rem}.saved-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.saved-card{border:1px solid var(--line);background:#fbf8f1;border-radius:13px;min-height:190px;padding:22px}.saved-card>span{color:var(--terracotta);text-transform:uppercase;font-size:.72rem;font-weight:750}.saved-card h3{margin:13px 0 8px;font-family:Georgia,Times New Roman,serif;font-size:1.35rem;line-height:1.15}.saved-card p{color:var(--muted);margin:0 0 22px;font-size:.8rem}.saved-card>div{gap:14px;display:flex}.saved-card button{color:var(--green);background:0 0;border:0;padding:0;font-size:.82rem;font-weight:750}.saved-card .remove-button{color:#9b4a3a}.empty-state{text-align:center;place-content:center;min-height:280px;padding:30px;display:grid}.empty-state h3{margin:0 0 8px;font-family:Georgia,Times New Roman,serif;font-size:1.6rem}.empty-state p{max-width:430px;color:var(--muted);margin:0}.week-grid{grid-template-columns:1fr 1fr;gap:10px 18px;display:grid}.day-row{border:1px solid var(--line);border-radius:10px;grid-template-columns:82px 1fr;align-items:center;gap:10px;padding:10px 12px;display:grid}.day-row>span{font-size:.82rem;font-weight:750}.day-row select{min-height:40px;padding:0 10px;font-size:.82rem}.shopping-list{grid-template-columns:1fr 1fr;gap:2px 24px;display:grid}.shopping-list li{border-bottom:1px solid #eee8dc}.shopping-list label{cursor:pointer;align-items:flex-start;gap:11px;padding:13px 4px;display:flex}.shopping-list input{width:18px;height:18px;accent-color:var(--green);margin:2px 0 0}.shopping-list .checked span{color:#8b918b;text-decoration:line-through}.how-section{background:var(--green-dark);color:#fff;padding:86px 0}.section-heading{max-width:630px;margin-bottom:42px}.section-heading>p{color:#e6b860}.section-heading h2{font-size:clamp(2.3rem,5vw,4rem)}.how-grid{background:#ffffff2e;border:1px solid #ffffff2e;grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.how-grid article{background:var(--green-dark);min-height:260px;padding:34px}.how-grid article>span{color:#e6b860;font-family:Georgia,Times New Roman,serif;font-size:1.1rem}.how-grid h3{margin:56px 0 10px;font-family:Georgia,Times New Roman,serif;font-size:1.55rem}.how-grid p{color:#ffffffb8;margin:0;line-height:1.65}.pricing-section{background:#eee1cf;padding:88px 0}.pricing-grid{grid-template-columns:1fr 440px;align-items:center;gap:72px;display:grid}.pricing-copy h2{max-width:650px;font-size:clamp(2.5rem,5vw,4.6rem)}.pricing-copy>p:last-child{color:#576057;max-width:590px;margin:22px 0 0;font-size:1.05rem;line-height:1.7}.pricing-card,.paywall-modal{background:var(--paper);box-shadow:var(--shadow);border:1px solid #24312724;border-radius:18px}.pricing-card{padding:30px}.checkout-price{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;gap:18px;padding-bottom:20px;display:flex}.checkout-price>div{align-items:baseline;gap:7px;display:flex}.checkout-price strong{font-family:Georgia,Times New Roman,serif;font-size:2.55rem;line-height:1}.checkout-price span,.checkout-price p{color:var(--muted);font-size:.78rem}.checkout-price p{text-align:right;max-width:150px;margin:0}.feature-list{gap:10px;margin:20px 0;display:grid}.feature-list li{color:#435147;padding-left:24px;font-size:.88rem;position:relative}.feature-list li:before{content:"✓";color:var(--green);font-weight:900;position:absolute;left:0}.terms-check{color:#5b655d;cursor:pointer;grid-template-columns:18px 1fr;align-items:start;gap:10px;margin:17px 0 15px;font-size:.72rem;line-height:1.5;display:grid}.terms-check input{width:17px;height:17px;accent-color:var(--green);margin:2px 0 0}.terms-check a{color:var(--green);font-weight:700}.checkout-button{width:100%}.checkout-note{text-align:center}.text-button{color:var(--muted);background:0 0;border:0;margin:13px auto 0;font-size:.78rem;text-decoration:underline;display:block}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#18221bb3;place-items:center;padding:18px;display:grid;position:fixed;inset:0;overflow-y:auto}.paywall-modal{width:min(500px,100%);max-height:calc(100vh - 36px);padding:32px;position:relative;overflow-y:auto}.modal-close{border:1px solid var(--line);width:34px;height:34px;color:var(--ink);background:#fff;border-radius:50%;place-items:center;font-size:1.3rem;line-height:1;display:grid;position:absolute;top:13px;right:13px}.modal-kicker{color:var(--terracotta);letter-spacing:.08em;text-transform:uppercase;margin:0 0 7px;font-size:.72rem;font-weight:800}.paywall-modal>h2{max-width:400px;margin:0;padding-right:22px;font-family:Georgia,Times New Roman,serif;font-size:2rem;line-height:1.05}.modal-copy{color:var(--muted);margin:11px 0 22px;font-size:.88rem}.site-footer{color:#ffffffc7;background:#18271e;padding:54px 0 22px}.footer-grid{grid-template-columns:1fr 1fr;gap:50px;display:grid}.footer-wordmark{color:#fff}.footer-grid p{max-width:440px;margin:16px 0 0;font-size:.88rem}.footer-links{grid-template-columns:1fr 1fr;align-content:start;gap:12px 26px;display:grid}.footer-links a{font-size:.82rem;text-decoration:none}.footer-links a:hover{color:#fff}.footer-bottom{color:#ffffff7a;border-top:1px solid #ffffff1f;margin-top:42px;padding-top:20px;font-size:.72rem}.legal-main,.status-main{background:var(--cream);min-height:calc(100vh - 68px);padding:64px 0 90px}.legal-page,.status-card{border:1px solid var(--line);background:var(--paper);border-radius:18px;max-width:780px;margin:0 auto;padding:clamp(24px,5vw,54px);box-shadow:0 12px 46px #342f2312}.legal-page h1,.status-card h1{font-size:clamp(2.3rem,6vw,4rem)}.legal-updated{color:var(--muted);margin:12px 0 36px;font-size:.8rem}.legal-page h2{margin:34px 0 10px;font-family:Georgia,Times New Roman,serif;font-size:1.45rem}.legal-page p,.legal-page li{color:#4e5c51;line-height:1.72}.legal-page a{color:var(--green)}.legal-callout{border-left:3px solid var(--terracotta);background:#f8efe4;margin:26px 0;padding:18px}.status-card{text-align:center;max-width:620px}.status-icon{background:var(--green);color:#fff;border-radius:50%;place-items:center;width:62px;height:62px;margin:0 auto 22px;font-size:1.6rem;font-weight:800;display:grid}.status-card p{color:var(--muted);line-height:1.65}.status-actions{justify-content:center;gap:10px;margin-top:26px;display:flex}.status-actions a{align-items:center;text-decoration:none;display:inline-flex}.status-error{color:#9b2d1f!important}.recovery-form{border:1px solid var(--line);background:var(--cream);text-align:left;border-radius:12px;gap:10px;margin:24px auto 18px;padding:22px;display:grid}.recovery-form label{color:var(--green-dark);font-size:.82rem;font-weight:800}.recovery-form input{border:1px solid var(--line);background:#fff;border-radius:8px;width:100%;min-height:46px;padding:10px 12px;font-size:16px}.recovery-form .button{width:100%}.recovery-message{text-align:center;font-size:.82rem;color:var(--green-dark)!important;margin:4px 0 0!important}@media (max-width:900px){.hero-grid,.pricing-grid{grid-template-columns:1fr;gap:44px}.hero-copy{text-align:center}.hero-copy>p{margin-left:auto;margin-right:auto}.hero-proof{justify-content:center}.import-card,.pricing-card{width:min(520px,100%);margin:0 auto}.saved-grid,.how-grid{grid-template-columns:1fr}.how-grid article{min-height:210px}.how-grid h3{margin-top:30px}.pricing-copy{text-align:center}.pricing-copy h2,.pricing-copy>p:last-child{margin-left:auto;margin-right:auto}}@media (max-width:680px){.shell{width:calc(100% - 22px);max-width:1160px}.header-inner{min-height:62px}.header-nav>a:not(.header-cta){display:none}.header-nav>.header-account{font-size:.78rem;display:inline-flex}.header-nav .header-cta{display:none}.hero{background-size:19px 19px;padding:42px 0 52px}.hero-copy h1{font-size:clamp(2.7rem,13vw,4rem)}.hero-copy>p{margin:20px 0 25px;font-size:1rem}.hero-proof{gap:10px 15px;font-size:.78rem}.import-card{border-radius:14px;padding:21px}.import-row{display:grid}.workspace-section{padding:34px 0 58px}.workspace-nav{border-radius:12px;justify-content:flex-start;margin-left:0}.workspace-nav button{min-height:38px;padding:0 13px}.recipe-sheet{border-radius:14px}.recipe-topline{align-items:flex-start;gap:10px}.recipe-sheet>h2{font-size:2.45rem}.recipe-facts{grid-template-columns:1fr 1fr;margin:25px 0 34px;display:grid}.recipe-facts>div{min-width:0;padding:10px 12px}.recipe-columns{grid-template-columns:1fr;gap:38px}.recipe-save-row{display:grid}.recipe-save-row .button{width:100%}.week-grid,.shopping-list,.footer-grid,.footer-links{grid-template-columns:1fr}.panel-heading{align-items:flex-start}.panel-heading .button,.panel-count{font-size:.72rem}.day-row{grid-template-columns:76px 1fr}.how-section,.pricing-section{padding:60px 0}.section-heading h2,.pricing-copy h2{font-size:2.65rem}.pricing-card,.paywall-modal{padding:22px}.checkout-price{align-items:flex-start}.checkout-price p{max-width:125px}.footer-grid{gap:30px}.footer-links{gap:10px}.legal-main,.status-main{padding:26px 0 58px}.legal-page,.status-card{border-radius:13px}.status-actions{display:grid}.status-actions a,.status-actions button{justify-content:center;width:100%}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important}}.consent{z-index:100;border:1px solid var(--green);background:var(--cream);border-radius:13px;width:min(440px,100% - 40px);padding:18px;position:fixed;bottom:20px;right:20px;box-shadow:0 18px 48px #23312633}.consent p{margin:0 0 14px;font-size:.82rem}.consent-actions{justify-content:flex-end;gap:9px;display:flex}.privacy-preferences{z-index:35;border:1px solid var(--line);color:var(--muted);font:inherit;cursor:pointer;background:#fffdf8;border-radius:999px;padding:7px 10px;font-size:.72rem;position:fixed;bottom:12px;right:12px}@media (max-width:520px){.consent{width:calc(100% - 28px);bottom:14px;right:14px}.consent-actions{flex-direction:column-reverse;align-items:stretch}}
