:root{--ink:#17241c;--cream:#f4f0e6;--paper:#fffdf7;--green:#16563d;--mint:#d9eadc;--coral:#ef775b;--gold:#e4ac3f;--blue:#6f9bb5;--line:#dcd7c9;--muted:#6b716c}*{box-sizing:border-box}html{background:var(--cream)}body{color:var(--ink);font-family:var(--font-sans),sans-serif;background:var(--cream);margin:0}button,input,select{font:inherit}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}.brand{letter-spacing:.01em;align-items:center;gap:11px;font-size:13px;font-weight:900;line-height:1.05;display:flex}.brand-light{color:#fff}.brand-mark{background:var(--coral);color:#fff;width:43px;height:43px;font-family:var(--font-display),serif;border-radius:50%;place-items:center;font-size:17px;display:grid}.eyebrow{text-transform:uppercase;letter-spacing:.13em;color:var(--green);margin:0 0 9px;font-size:11px;font-weight:900}.eyebrow.light,.tiny.light{color:#d7e5dc}.muted{color:var(--muted)}.tiny{color:var(--muted);font-size:12px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--font-display),serif;line-height:1.03}h1{letter-spacing:-.035em;font-size:clamp(38px,5vw,68px)}h2{letter-spacing:-.025em;font-size:30px}label{gap:8px;font-size:13px;font-weight:800;display:grid}input,select{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:12px;outline:none;padding:13px 14px}input:focus,select:focus{border-color:var(--green);box-shadow:0 0 0 3px #16563d1f}.primary-button,.secondary-button,.ghost-button,.ink-button{cursor:pointer;border:0;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:13px 18px;font-weight:900;display:inline-flex}.primary-button{background:var(--coral);color:#fff;box-shadow:0 7px #c95640}.primary-button:hover{transform:translateY(1px);box-shadow:0 6px #c95640}.primary-button:disabled,.ink-button:disabled{opacity:.65;cursor:wait}.secondary-button{background:var(--mint);color:var(--green)}.ghost-button{border:1px solid var(--line);background:0 0}.ink-button{background:var(--ink);color:#fff}.form-message{color:#9e3e2c;background:#fff1ec;border-radius:10px;padding:11px;font-size:13px;font-weight:800}.auth-shell{grid-template-columns:minmax(360px,1fr) minmax(460px,1.05fr);min-height:100vh;display:grid}.auth-story{background:var(--green);color:#fff;flex-direction:column;justify-content:space-between;padding:44px clamp(35px,6vw,90px);display:flex;position:relative;overflow:hidden}.auth-story:after{content:"";border:90px solid #ffffff0d;border-radius:50%;width:430px;height:430px;position:absolute;bottom:-160px;right:-180px}.auth-story h1{max-width:760px;margin-bottom:24px;font-size:clamp(50px,6vw,86px)}.auth-copy{color:#e2eee7;max-width:550px;font-size:19px;line-height:1.55}.auth-panel{background:var(--cream);place-items:center;padding:40px;display:grid}.auth-card{background:var(--paper);border:1px solid var(--line);border-radius:24px;width:min(100%,500px);padding:clamp(28px,5vw,52px);box-shadow:0 24px 70px #1e2d2217}.auth-card h2{margin-bottom:10px}.segmented{background:#e9e5da;border-radius:11px;grid-template-columns:1fr 1fr;margin:28px 0 22px;padding:4px;display:grid}.segmented button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:10px;font-weight:900}.segmented button.active{color:var(--ink);background:#fff;box-shadow:0 2px 8px #00000012}.stack-form{gap:18px;display:grid}.stack-form .primary-button{margin-top:5px}.auth-card>.tiny{text-align:center;margin:25px 0 0}.simple-header{background:var(--paper);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:86px;padding:0 clamp(20px,5vw,72px);display:flex}.onboarding-shell{min-height:100vh}.onboarding-card{background:var(--paper);border:1px solid var(--line);border-radius:24px;width:min(860px,100% - 32px);margin:55px auto;padding:clamp(25px,6vw,64px);box-shadow:0 25px 70px #1e2d2214}.onboarding-card h1{margin-bottom:16px;font-size:clamp(40px,6vw,62px)}.onboarding-card h3{margin:28px 0 11px}.steps{align-items:center;margin-bottom:42px;display:flex}.steps span{border:2px solid var(--line);width:30px;height:30px;color:var(--muted);border-radius:50%;place-items:center;font-weight:900;display:grid}.steps span.done{background:var(--green);border-color:var(--green);color:#fff}.steps i{background:var(--line);width:65px;height:2px}.large-field{margin:35px 0}.large-field input{padding:16px;font-size:20px}.choice-grid{flex-wrap:wrap;gap:9px;display:flex}.choice{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:999px;padding:10px 13px;font-weight:800}.choice.selected{background:var(--mint);border-color:var(--green);color:var(--green)}.choice.selected.warning{border-color:var(--coral);color:#9e3e2c;background:#fff0ea}.choice-grid+label{margin-top:28px}.button-row{justify-content:space-between;gap:12px;margin-top:35px;display:flex}.goal-grid{grid-template-columns:repeat(2,1fr);gap:16px;margin:30px 0;display:grid}.goal-field{background:#f6f3eb;border-radius:13px;padding:14px}.input-with-unit{align-items:center;display:flex}.input-with-unit input{background:0 0;border:0;padding:4px;font-size:25px;font-weight:900}.input-with-unit b{color:var(--muted)}.app-shell{min-height:100vh;padding-left:250px}.sidebar{background:var(--green);color:#fff;z-index:10;flex-direction:column;width:250px;padding:30px 22px;display:flex;position:fixed;inset:0 auto 0 0}.sidebar nav{gap:6px;margin-top:55px;display:grid}.sidebar nav a,.sidebar-bottom>a,.sidebar-bottom button{color:#cfe1d6;border-radius:10px;align-items:center;gap:13px;padding:12px 13px;font-size:14px;font-weight:800;display:flex}.sidebar svg{width:19px}.sidebar nav a.active{color:#fff;background:#ffffff1f}.sidebar-bottom{border-top:1px solid #ffffff24;margin-top:auto;padding-top:15px}.sidebar-bottom button{text-align:left;cursor:pointer;background:0 0;border:0;width:100%}.sidebar-bottom button span{display:grid}.sidebar-bottom small{color:#adc8b8;font-weight:600}.dashboard{max-width:1400px;margin:auto;padding:44px clamp(24px,4vw,64px) 80px}.dashboard-header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:32px;display:flex}.dashboard-header h1{margin:0 0 8px;font-size:52px}.dashboard-header p:last-child{margin-bottom:0}.add-main svg{width:18px}.hero-card{background:var(--green);color:#fff;border-radius:20px;grid-template-columns:1fr 1fr;align-items:center;gap:50px;padding:30px 34px;display:grid}.hero-card strong{font-family:var(--font-display);font-size:53px;display:inline}.hero-card span{color:#c9ddd1;margin-left:9px}.progress{background:#ffffff2e;border-radius:99px;height:9px;margin-top:19px;overflow:hidden}.progress i{background:var(--coral);border-radius:inherit;height:100%;display:block}.hero-message{border-left:1px solid #ffffff2e;align-items:center;gap:15px;padding-left:35px;display:flex}.hero-message svg{color:#ffcb62;flex:none}.hero-message p{color:#e1ece5;margin:0;line-height:1.5}.macro-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin:16px 0;display:grid}.macro{background:var(--paper);border:1px solid var(--line);border-radius:16px;justify-content:space-between;align-items:center;padding:18px;display:flex}.macro p{margin-bottom:7px;font-size:12px;font-weight:900}.macro strong{font-family:var(--font-display);font-size:26px}.macro small{font-size:13px}.macro span{color:var(--muted);font-size:11px;display:block}.macro-ring{--ring:#777;background:conic-gradient(var(--ring) var(--progress),#ebe8df 0);border-radius:50%;place-items:center;width:52px;height:52px;display:grid;position:relative}.macro-ring:after{content:"";background:var(--paper);border-radius:50%;position:absolute;inset:6px}.macro-ring span{z-index:1;color:var(--ink);font-size:9px;font-weight:900}.macro.coral .macro-ring{--ring:var(--coral)}.macro.gold .macro-ring{--ring:var(--gold)}.macro.blue .macro-ring{--ring:var(--blue)}.macro.green .macro-ring{--ring:#67a375}.day-grid{grid-template-columns:minmax(0,1fr) 330px;gap:16px;display:grid}.diary-card,.idea-card{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:26px}.section-title{justify-content:space-between;align-items:flex-start;gap:15px;display:flex}.section-title h2{margin-bottom:0}.text-button,.close{color:var(--green);cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;font-weight:900;display:flex}.text-button svg{width:16px}.empty-state{text-align:center;padding:55px 20px}.empty-state>span{background:var(--mint);width:58px;height:58px;color:var(--green);border-radius:50%;place-items:center;margin:0 auto 18px;display:grid}.empty-state h3{margin-bottom:7px;font-size:18px}.empty-state p{color:var(--muted);max-width:410px;margin:0 auto 20px}.entry-list{margin-top:20px}.entry-list article{border-top:1px solid var(--line);justify-content:space-between;align-items:center;padding:15px 0;display:flex}.entry-list h3{margin:4px 0 1px}.entry-list p{color:var(--muted);margin:0;font-size:12px}.entry-list>article>strong{font-family:var(--font-display);font-size:22px}.entry-list small{font-family:var(--font-sans);font-size:11px}.meal-pill{text-transform:uppercase;letter-spacing:.12em;font-weight:900;color:var(--green)!important;font-size:9px!important}.idea-card{background:#f1c958;position:relative;overflow:hidden}.idea-card:after{content:"";border:45px solid #ffffff29;border-radius:50%;width:180px;height:180px;position:absolute;bottom:-90px;right:-85px}.idea-icon{background:var(--ink);color:#fff;border-radius:50%;place-items:center;width:52px;height:52px;margin-bottom:38px;display:grid}.idea-card h2{font-size:37px}.idea-card p:not(.eyebrow){line-height:1.5}.idea-card small{z-index:1;color:#5e4c19;margin-top:22px;line-height:1.4;display:block;position:relative}.modal-backdrop{z-index:30;background:#0c1811ad;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:var(--paper);border-radius:20px;gap:18px;width:min(650px,100%);max-height:calc(100vh - 40px);padding:30px;display:grid;overflow:auto;box-shadow:0 30px 100px #0000004d}.close{font-size:30px}.two-fields{grid-template-columns:1fr 1fr;gap:12px;display:grid}.nutrition-fields{grid-template-columns:repeat(5,1fr);gap:8px;display:grid}.nutrition-fields label{font-size:10px}.nutrition-fields input{padding:10px 8px}@media (max-width:1050px){.macro-grid{grid-template-columns:repeat(2,1fr)}.day-grid{grid-template-columns:1fr}.idea-card{min-height:320px}}@media (max-width:760px){.auth-shell{grid-template-columns:1fr}.auth-story{min-height:46vh}.auth-panel{padding:18px}.simple-header .tiny{display:none}.goal-grid{grid-template-columns:1fr}.app-shell{padding-bottom:72px;padding-left:0}.sidebar{flex-direction:row;align-items:center;width:100%;height:72px;padding:7px 14px;position:fixed;top:auto}.sidebar>.brand,.sidebar-bottom{display:none}.sidebar nav{grid-template-columns:repeat(4,1fr);gap:2px;width:100%;margin:0;display:grid}.sidebar nav a{flex-direction:column;justify-content:center;gap:1px;padding:8px;font-size:0;display:flex}.sidebar nav a:after{font-size:9px}.sidebar nav a:first-child:after{content:"Today"}.sidebar nav a:nth-child(2):after{content:"Foods"}.sidebar nav a:nth-child(3):after{content:"Recipes"}.sidebar nav a:nth-child(4):after{content:"Shop"}.dashboard{padding:25px 15px 50px}.dashboard-header{align-items:flex-end}.dashboard-header h1{font-size:40px}.dashboard-header .muted{display:none}.add-main{padding:12px;font-size:0}.add-main svg{margin:0}.hero-card{grid-template-columns:1fr;gap:22px;padding:25px}.hero-message{border-top:1px solid #ffffff2e;border-left:0;padding:19px 0 0}.macro-grid{grid-template-columns:1fr 1fr}.macro{padding:13px}.macro-ring{width:45px;height:45px}.diary-card,.idea-card{padding:20px}.nutrition-fields{grid-template-columns:repeat(2,1fr)}}:root{--font-display:Georgia,"Times New Roman",serif;--font-sans:"Segoe UI",Arial,sans-serif}textarea{font:inherit;resize:vertical;border:1px solid var(--line);width:100%;min-height:110px;color:var(--ink);background:#fff;border-radius:12px;outline:none;padding:13px 14px}textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px #16563d1f}.entry-actions{align-items:center;gap:12px;display:flex}.entry-actions>strong{font-family:var(--font-display);font-size:22px}.feature-page{max-width:1320px}.search-box{background:var(--paper);border:1px solid var(--line);border-radius:14px;align-items:center;gap:10px;margin-bottom:18px;padding:4px 13px;display:flex}.search-box svg{width:19px;color:var(--muted)}.search-box input{background:0 0;border:0;box-shadow:none!important}.status-message{background:var(--mint);color:var(--green);border-radius:12px;padding:13px 16px;font-weight:800}.empty-panel,.form-card,.feature-card,.shopping-card{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:25px}.empty-panel{text-align:center;padding:70px 25px}.empty-panel>svg{width:48px;height:48px;color:var(--green);margin-bottom:15px}.empty-panel p{color:var(--muted);margin-bottom:0}.card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.feature-card{position:relative}.feature-card h2{padding-right:65px;font-size:28px}.feature-card>.secondary-button{margin-top:12px}.card-actions{gap:4px;display:flex;position:absolute;top:15px;right:15px}.icon-button{width:35px;height:35px;color:var(--muted);cursor:pointer;background:#efede5;border:0;border-radius:50%;place-items:center;display:grid}.icon-button svg{width:16px}.icon-button.favourite{color:var(--coral);background:#fff0eb}.icon-button.favourite svg{fill:currentColor}.icon-button.danger:hover{color:#a84231;background:#fff0eb}.split-layout{grid-template-columns:minmax(280px,390px) minmax(0,1fr);align-items:start;gap:18px;display:grid}.split-layout>div:first-child,.feature-stack{gap:16px;display:grid}.form-card{gap:15px;display:grid}.form-card h2{margin-bottom:3px;font-size:27px}.item-list,.plain-list{margin:18px 0;padding:0;list-style:none}.item-list li{border-top:1px solid var(--line);justify-content:space-between;align-items:center;padding:10px 0;display:flex}.item-list span{font-weight:800;display:grid}.item-list small{color:var(--muted);font-weight:500}.plain-list li{border-top:1px solid var(--line);padding:8px 0}.recipe-method{white-space:pre-wrap;background:#f4f1e9;border-radius:12px;padding:13px;line-height:1.5}.button-cluster{flex-wrap:wrap;gap:9px;display:flex}.button-cluster svg{width:17px}.shopping-layout{grid-template-columns:330px minmax(0,1fr);align-items:start;gap:18px;display:grid}.sticky-card{position:sticky;top:20px}.shopping-items{margin-top:18px}.shopping-items article{border-top:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:center;gap:13px;padding:15px 0;display:grid}.shopping-items h3{margin:0 0 4px}.shopping-items p{color:var(--muted);margin:0;font-size:12px}.shopping-items article.checked h3{color:var(--muted);text-decoration:line-through}.check-button{border:2px solid var(--green);color:#fff;cursor:pointer;background:#fff;border-radius:8px;place-items:center;width:28px;height:28px;display:grid}.checked .check-button{background:var(--green)}.check-button svg{width:17px}@media (max-width:1050px){.card-grid{grid-template-columns:repeat(2,1fr)}.split-layout,.shopping-layout{grid-template-columns:1fr}.sticky-card{position:static}}@media (max-width:760px){.sidebar nav{grid-template-columns:repeat(5,1fr)}.sidebar nav a{font-size:0}.sidebar nav a span{font-size:9px}.sidebar nav a:after{display:none}.card-grid{grid-template-columns:1fr}.feature-page .dashboard-header{align-items:flex-end}.feature-page .dashboard-header h1{font-size:38px}.button-cluster{display:grid}.button-cluster button{width:100%}}.pound-icon{border:1px solid;border-radius:50%;place-items:center;width:19px;height:19px;font-size:12px;display:grid!important}.product-search-modal{width:min(820px,100%)}.product-search-modal .search-box{grid-template-columns:auto 1fr auto;margin:0;display:grid}.product-results{gap:8px;display:grid}.product-results article{border:1px solid var(--line);background:#fff;border-radius:13px;justify-content:space-between;align-items:center;gap:15px;padding:14px;display:flex}.product-results h3{margin:0 0 4px}.product-results p{color:var(--muted);margin:0;font-size:12px}.product-results .eyebrow{color:var(--green);margin-bottom:4px}.catalogue-credit{text-align:center;margin:4px 0 0}.feed-summary{background:var(--green);color:#fff;border-radius:18px;align-items:center;gap:16px;margin-bottom:16px;padding:22px 25px;display:flex}.feed-summary>svg{color:#f3c75d}.feed-summary strong{font-family:var(--font-display);font-size:34px}.feed-summary p{color:#dce8e0;margin:2px 0 0}.feed-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.meal-idea{background:var(--paper);border:1px solid var(--line);border-radius:20px;flex-direction:column;padding:25px;display:flex}.meal-idea.featured{border:2px solid var(--coral);box-shadow:0 14px 34px #3f301f14}.meal-idea h2{font-size:30px}.idea-strapline{color:var(--muted);line-height:1.5}.idea-numbers{flex-wrap:wrap;align-items:baseline;gap:8px;padding:14px 0;display:flex}.idea-numbers strong{font-family:var(--font-display);font-size:30px}.idea-numbers small{font-family:var(--font-sans);font-size:12px}.idea-numbers span{background:var(--mint);color:var(--green);border-radius:99px;padding:6px 8px;font-size:11px;font-weight:800}.meal-idea .button-cluster{margin-top:auto}.safety-note{text-align:center;margin:22px 0}.billing-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.plan-card{background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:32px}.plan-card.current{background:var(--green);color:#fff}.plan-card.current .eyebrow,.plan-card.current p{color:#dce8e0}.plan-card h2{font-size:36px}.plan-card>strong{font-family:var(--font-display);font-size:40px}.benefit-list{gap:15px;padding:0;list-style:none;display:grid}.benefit-list li{align-items:center;gap:10px;font-weight:800;display:flex}.benefit-list svg{width:19px;color:var(--green)}.billing-security{background:var(--mint);color:var(--green);border-radius:13px;align-items:flex-start;gap:12px;margin-top:28px;padding:15px;line-height:1.4;display:flex}.billing-security svg{flex:none}.system-page{place-items:center;min-height:100vh;padding:25px;display:grid}.system-card{background:var(--paper);border:1px solid var(--line);text-align:center;border-radius:24px;width:min(560px,100%);padding:45px}.system-card h1{font-size:52px}.loading-dot{background:var(--coral);border-radius:50%;width:20px;height:20px;margin:0 auto 25px;animation:1s infinite alternate pulse;display:block}@keyframes pulse{to{opacity:.45;transform:scale(1.5)}}button:focus-visible,a:focus-visible{outline:3px solid var(--gold);outline-offset:3px}@media (max-width:1050px){.feed-grid{grid-template-columns:1fr 1fr}.billing-grid{grid-template-columns:1fr}}@media (max-width:760px){.sidebar nav{grid-template-columns:repeat(6,1fr)}.feed-grid{grid-template-columns:1fr}.product-search-modal .search-box{grid-template-columns:auto 1fr}.product-search-modal .search-box button{grid-column:1/-1}.product-results article{flex-direction:column;align-items:flex-start}.system-card{padding:30px 20px}.system-card h1{font-size:40px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.sidebar nav a{position:relative}.sidebar nav a.scan-tab{background:var(--coral);color:#fff}@media (max-width:760px){.sidebar nav{align-items:end;grid-template-columns:repeat(5,1fr)!important}.sidebar nav a{padding:8px 2px!important;font-size:0!important}.sidebar nav a:after{content:none!important;display:none!important}.sidebar nav a span{font-weight:800;font-size:10px!important}.sidebar nav a.scan-tab{border:4px solid var(--cream);border-radius:50%;width:62px;height:62px;margin:0 auto;transform:translateY(-14px);box-shadow:0 6px 16px #00000040}.sidebar nav a.scan-tab svg{width:24px}.sidebar nav a.scan-tab span{font-size:0!important}.app-shell{padding-bottom:84px}}.day-nav{align-items:center;gap:8px;display:flex}.day-nav .icon-button:disabled{opacity:.35;cursor:default}.meal-block{margin-top:22px}.meal-head{border-bottom:2px solid var(--ink);align-items:center;gap:10px;padding-bottom:7px;display:flex}.meal-head h3{font-family:var(--font-display);margin:0;font-size:20px}.meal-head span{color:var(--muted);margin-left:auto;font-size:13px;font-weight:900}.add-link{background:var(--mint);width:30px;height:30px;color:var(--green);border-radius:50%;place-items:center;display:grid}.meal-empty{color:var(--muted);margin:10px 0 0;font-size:13px}.meal-block .entry-list{margin-top:0}.meal-block .entry-list article:first-child{border-top:0}.entry-list article h3{margin:0 0 2px;font-size:15px}.diary-loading{padding:30px 0}.inline-edit{align-items:center;gap:6px;margin-top:6px;display:flex}.inline-edit input{width:90px;padding:8px}.inline-edit button{padding:8px 12px}.nutrient-card{background:var(--paper);border:1px solid var(--line);border-radius:18px;margin-top:16px;padding:26px}.nutrient-list{margin:14px 0}.nutrient-row{border-top:1px solid var(--line)}.nutrient-row>button{text-align:left;cursor:pointer;width:100%;color:var(--ink);background:0 0;border:0;grid-template-columns:130px 100px 1fr;align-items:center;gap:12px;padding:11px 0;display:grid}.nutrient-row>button:disabled{cursor:default;color:var(--muted)}.nutrient-row small{color:var(--muted);grid-column:1/-1;font-size:11px}.mini-bar{background:#ebe8df;border-radius:9px;height:7px;display:block;overflow:hidden}.mini-bar u{background:var(--green);height:100%;display:block}.nutrient-row ul{background:#f4f1e9;border-radius:10px;margin:0 0 12px;padding:10px 14px;list-style:none}.nutrient-row li{justify-content:space-between;padding:4px 0;font-size:13px;display:flex}.scan-page{max-width:640px}.scanner-card{gap:16px;display:grid}.viewfinder{aspect-ratio:4/3;background:#101a14;border-radius:20px;place-items:center;display:grid;position:relative;overflow:hidden}.viewfinder video{object-fit:cover;width:100%;height:100%;display:none;position:absolute;inset:0}.viewfinder.live video{display:block}.viewfinder-idle{color:#9db3a5;text-align:center;justify-items:center;gap:6px;display:grid}.viewfinder-idle svg{width:48px;height:48px}.scan-line{background:var(--coral);height:3px;box-shadow:0 0 14px var(--coral);animation:1.8s ease-in-out infinite alternate sweep;position:absolute;top:50%;left:10%;right:10%}@keyframes sweep{0%{transform:translateY(-70px)}to{transform:translateY(70px)}}.scan-actions .primary-button{width:100%;padding:16px}.scan-actions .ghost-button{width:100%}.typed-code{grid-template-columns:1fr auto;align-items:end;gap:10px;display:grid}.typed-code label span{align-items:center;gap:6px;display:flex}.typed-code svg{width:16px}.log-sheet{width:min(560px,100%)}.log-sheet h2{margin:0;font-size:26px}.quick-amounts{flex-wrap:wrap;gap:7px;display:flex}.nutrition-table{border-collapse:collapse;width:100%;font-size:14px}.nutrition-table th{text-align:left;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);padding:6px 0;font-size:11px}.nutrition-table th:not(:first-child),.nutrition-table td:not(:first-child){text-align:right}.nutrition-table td{border-top:1px solid var(--line);padding:7px 0}.nutrition-table tr.micro td:first-child{color:var(--muted);padding-left:10px}.unknown{color:var(--muted);font-style:italic}.allergen-alert{border:1px solid var(--coral);color:#8c3322;background:#fff0ea;border-radius:12px;align-items:flex-start;gap:9px;margin:0;padding:11px;font-size:13px;font-weight:800;display:flex}.allergen-alert svg{flex:none;width:18px}.ingredients-text{font-size:13px;line-height:1.5}.log-sheet summary{cursor:pointer;font-weight:900}.note{background:#f4f1e9;border-radius:9px;margin:6px 0 0;padding:8px 10px;font-size:12px}.note-allergen{background:#fff6e0}.manual-fields{grid-template-columns:repeat(2,1fr)!important}.manual-fields label{font-size:12px}.food-list{gap:8px;margin:18px 0;display:grid}.food-list h2{margin:0 0 4px;font-size:22px}.food-row{text-align:left;background:var(--paper);border:1px solid var(--line);cursor:pointer;color:var(--ink);border-radius:13px;justify-content:space-between;align-items:center;gap:14px;padding:13px 15px;display:flex}.food-row:hover{border-color:var(--green)}.food-row>span:first-child{display:grid}.food-row small{color:var(--muted);font-weight:500}.food-row-n{white-space:nowrap;align-items:center;gap:6px;font-weight:900;display:flex}.food-row .fav{width:14px;color:var(--coral);fill:currentColor}@media (max-width:760px){.nutrient-row>button{grid-template-columns:1fr auto}.mini-bar{grid-column:1/-1}.typed-code{grid-template-columns:1fr}.modal{padding:20px}.modal-backdrop{align-items:end;padding:0}.modal{border-radius:20px 20px 0 0;max-height:92vh}}.mobile-menu{display:none}.settings-list{gap:8px;margin-bottom:24px;display:grid}.settings-list a{background:var(--paper);border:1px solid var(--line);border-radius:13px;align-items:center;gap:12px;padding:15px;font-weight:800;display:flex}.settings-list svg{width:19px;color:var(--green)}.settings-actions{justify-items:start;gap:14px;display:grid}.danger-text{color:#a84231}.danger-text svg{width:16px}@media (max-width:760px){.mobile-menu{z-index:9;background:var(--paper);border:1px solid var(--line);width:40px;height:40px;color:var(--green);border-radius:50%;place-items:center;display:grid;position:fixed;top:10px;right:12px}.mobile-menu svg{width:20px}.dashboard-header{padding-right:44px}}.button-cluster.center{justify-content:center;margin-top:18px}.picker-list h3{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin:10px 0 2px;font-size:12px}.picker-backdrop{z-index:50}.builder-totals{background:var(--mint);border-radius:12px;margin:0;padding:12px!important}.builder textarea{min-height:80px}.shopping-items h3.aisle{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.12em;color:var(--green);margin:20px 0 0;font-size:11px}@media (max-width:900px){.auth-shell{grid-template-columns:1fr}.auth-story{min-height:40vh}.auth-panel{padding:18px}}.text-button,.forgot-link{min-height:44px;padding:0 6px}.add-link{width:40px;height:40px}.add-link svg{width:18px}.landing-nav nav a:not(.primary-button){align-items:center;min-height:44px;padding:0 8px;display:inline-flex}.landing-nav nav a.primary-button{min-height:44px}@media (max-width:860px){.landing-nav nav a:not(.primary-button):not([href=\/login]){display:none}}
.landing,.legal{background:var(--cream);min-height:100vh}.landing-nav{justify-content:space-between;align-items:center;padding:18px clamp(18px,5vw,72px);display:flex}.landing-nav nav{align-items:center;gap:20px;font-size:14px;font-weight:800;display:flex}.landing-nav .primary-button{color:#fff;padding:10px 16px;box-shadow:0 4px #c95640}.landing-hero{grid-template-columns:1.2fr 1fr;align-items:center;gap:40px;max-width:1300px;margin:auto;padding:40px clamp(18px,5vw,72px) 70px;display:grid}.landing-hero h1{margin:0 0 20px;font-size:clamp(40px,6vw,76px)}.lede{color:#3b4a40;max-width:560px;font-size:19px;line-height:1.55}.landing-hero .button-cluster{margin:26px 0 14px}.landing-hero .button-cluster a{align-items:center;gap:8px;display:inline-flex}.phone-mock{border:9px solid var(--ink);background:var(--ink);border-radius:42px;justify-self:center;width:290px;transform:rotate(3deg);box-shadow:0 30px 60px #17241c38}.phone-screen{background:var(--paper);border-radius:32px;flex-direction:column;gap:12px;min-height:480px;padding:26px 20px;display:flex}.phone-screen strong{font-family:var(--font-display);font-size:42px}.phone-screen small{font-size:13px;font-family:var(--font-sans)}.progress.dark{background:#e7e3d6;margin:0}.phone-screen ul{gap:8px;margin:8px 0;padding:0;list-style:none;display:grid}.phone-screen li{background:#f4f1e9;border-radius:12px;padding:10px 12px;display:grid}.phone-screen li span{text-transform:uppercase;letter-spacing:.1em;color:var(--green);font-size:10px;font-weight:900}.fake-scan{background:var(--coral);color:#fff;border-radius:14px;justify-content:center;gap:8px;margin-top:auto;padding:14px;font-weight:900;display:flex}.landing-section{max-width:1200px;margin:auto;padding:60px clamp(18px,5vw,72px)}.landing-section h2{margin-bottom:28px;font-size:clamp(32px,4vw,48px)}.landing-section.narrow{max-width:820px}.feature-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;display:grid}.feature-grid article{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:24px}.feature-grid svg{width:28px;height:28px;color:var(--coral)}.feature-grid h3{font-family:var(--font-display);margin:14px 0 8px;font-size:22px}.feature-grid p{color:var(--muted);margin:0;line-height:1.5}.landing-band{background:var(--green);color:#fff;text-align:center;padding:64px clamp(18px,5vw,72px)}.landing-band h2{font-size:clamp(36px,5vw,60px)}.landing-band p{color:#dce8e0;max-width:620px;margin:0 auto;font-size:18px;line-height:1.55}.price-card{background:var(--paper);border:2px solid var(--ink);max-width:440px;box-shadow:8px 8px 0 var(--ink);border-radius:24px;gap:12px;padding:32px;display:grid}.price-card strong{font-family:var(--font-display);font-size:60px}.price-card small{font-size:16px;font-family:var(--font-sans)}.price-card .benefit-list{margin:8px 0}details{background:var(--paper);border:1px solid var(--line);border-radius:14px;margin-bottom:10px;padding:16px 18px}summary{cursor:pointer;font-weight:900}details p{color:var(--muted);margin:10px 0 0;line-height:1.55}.landing-footer{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:14px;padding:30px clamp(18px,5vw,72px);font-size:13px;display:flex}.landing-footer p{margin:0}.landing-footer nav{flex-wrap:wrap;gap:16px;font-weight:800;display:flex}.legal-body{max-width:760px;margin:auto;padding:30px clamp(18px,5vw,40px) 70px;line-height:1.65}.legal-body h1{font-size:clamp(34px,5vw,52px)}.legal-body h2{margin:30px 0 8px;font-size:24px}.legal-body a{color:var(--green);text-decoration:underline}.forgot-link{margin:12px auto 0}@media (max-width:860px){.landing-hero{grid-template-columns:1fr}.phone-mock{transform:none}}
