:root{color:#16231c;font-synthesis:none;text-rendering:optimizelegibility;--green:#146b49;--green-dark:#0f5138;--green-soft:#e9f5ef;--yellow:#f4b740;--red:#b42318;--red-soft:#fef0ee;--ink:#16231c;--muted:#657269;--line:#d8dfd9;--surface:#fcfaf5;--surface-alt:#f7f4ed;--shadow:0 8px 24px #16231c14;background:#fcfaf5;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{min-width:320px;min-height:100%}body{background:var(--surface);min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{letter-spacing:0}p{color:var(--muted);line-height:1.55}.skip-link{z-index:200;color:#fff;background:var(--green-dark);border-radius:5px;padding:10px 14px;font-weight:800;position:fixed;top:8px;left:8px;transform:translateY(-140%)}.skip-link:focus{transform:translateY(0)}.visually-hidden{clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;width:1px!important;height:1px!important;position:absolute!important;overflow:hidden!important}:where(a,button,input,select,textarea,summary):focus-visible{outline-offset:3px;outline:3px solid #f4b740}.boot-shell,.auth-shell{place-items:center;min-height:100vh;padding:24px;display:grid}.launch-screen{background:var(--surface);align-content:center;place-items:center;gap:22px;min-height:100vh;padding:24px;display:grid}.full-brand-logo{justify-items:center;display:grid}.full-brand-artwork{aspect-ratio:1/.8;width:100%;overflow:hidden}.full-brand-artwork img{width:100%;height:auto;display:block}.full-brand-beta{margin-top:8px}.full-brand-tagline{color:var(--green-dark);text-align:center;margin:10px 0 0;font-weight:800}.launch-brand-logo{width:min(520px,88vw)}.launch-brand-logo .full-brand-tagline{font-size:20px}.launch-status{min-height:44px;color:var(--green-dark);align-items:center;gap:11px;font-weight:750;display:flex}.boot-panel{border:1px solid var(--line);background:var(--surface);width:min(520px,100%);box-shadow:var(--shadow);border-radius:8px;padding:30px}.auth-shell{background:var(--surface);padding:0}.auth-panel{background:var(--surface);grid-template-columns:minmax(360px,44vw) minmax(420px,1fr);width:100%;min-height:100vh;display:grid}.auth-brand-side{border-right:1px solid var(--line);background:var(--surface-alt);place-items:center;min-width:0;padding:56px;display:grid}.auth-form-column{place-self:center;width:min(560px,100% - 64px);padding:48px 0}.auth-copy{max-width:550px}.auth-copy h1{margin:0 0 14px;font-size:46px;line-height:1.05}.auth-copy p{font-size:18px}.auth-panel h2{margin-bottom:8px;font-size:28px}.auth-links{justify-content:space-between;gap:16px;margin-top:20px;font-size:14px;display:flex}.auth-links a{color:var(--green);font-weight:700}.auth-legal-links{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;gap:8px 16px;margin-top:22px;padding-top:18px;font-size:12px;display:flex}.auth-legal-links a,.legal-choice a{color:var(--green-dark);font-weight:750}.auth-install-link{min-height:44px;color:var(--green-dark);align-items:center;gap:8px;margin-top:16px;font-weight:750;text-decoration:none;display:inline-flex}.access-code-field{gap:8px;display:grid}.access-code-entry{grid-template-columns:minmax(0,1fr) auto;gap:10px;display:grid}.access-code-entry .button{min-width:126px}.access-code-result{border-radius:5px;align-items:center;gap:7px;padding:10px 12px;font-size:14px;font-weight:750;display:flex}.access-code-result.success{color:#185b36;background:#e0f2e7}.access-code-result.error{color:#8b2f28;background:#f9e5e3}.signup-consent{gap:10px;display:grid}.legal-choice{align-items:flex-start;line-height:1.45}.legal-choice input{flex:none;margin-top:2px}.brand-mark{color:#fff;background:var(--green);border-radius:7px;flex:none;place-items:center;width:44px;height:44px;font-weight:800;display:grid}.brand-lockup{align-items:center;gap:12px;text-decoration:none;display:inline-flex}.brand-logo{object-fit:contain;object-position:left center;width:184px;height:48px;display:block}.brand-with-status{align-items:center;gap:8px;min-width:0;display:flex}.beta-badge{color:#684500;background:#fff3cf;border:1px solid #d6a83d;border-radius:4px;justify-content:center;align-items:center;min-height:22px;padding:3px 7px;font-size:11px;font-weight:800;line-height:1;display:inline-flex}.auth-brand-full{justify-content:center;width:100%;text-decoration:none;display:flex}.auth-brand-logo{width:min(460px,100%)}.auth-brand-logo .full-brand-tagline{font-size:18px}.brand-lockup>div:last-child{gap:1px;display:grid}.brand-lockup strong{font-size:18px}.brand-lockup span{color:var(--muted);font-size:12px}.app-frame{background:var(--surface);min-height:100vh}.topbar{z-index:30;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fcfaf5f5;justify-content:space-between;align-items:center;gap:20px;min-height:72px;padding:12px 24px;display:flex;position:sticky;top:0}.topbar-actions{align-items:center;gap:12px;display:flex}.user-email{max-width:240px;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.app-grid{grid-template-columns:230px minmax(0,1fr);min-height:calc(100vh - 72px);display:grid}.sidebar{height:calc(100vh - 72px);overscroll-behavior:contain;height:calc(100dvh - 72px);padding:22px 14px max(22px, env(safe-area-inset-bottom));border-right:1px solid var(--line);background:var(--surface);scrollbar-gutter:stable;-webkit-overflow-scrolling:touch;align-self:start;position:sticky;top:72px;overflow:hidden auto}.sidebar nav{gap:4px;display:grid}.nav-divider{background:var(--line);height:1px;margin:18px 8px}.nav-link{color:#46534b;background:0 0;border:0;border-radius:6px;align-items:center;gap:11px;min-height:44px;padding:10px 12px;font-weight:650;text-decoration:none;display:flex}.nav-link:hover{color:var(--ink);background:#f0f4f0}.nav-link.active{color:var(--green-dark);background:var(--green-soft)}.content{width:100%;max-width:1440px;margin:0 auto;padding:34px clamp(22px,4vw,58px) 70px}.bottom-nav{display:none}.legal-footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:20px;margin-top:54px;padding:22px 0 0;font-size:13px;display:flex}.legal-footer nav{flex-wrap:wrap;justify-content:flex-end;gap:8px 18px;display:flex}.legal-footer a{color:var(--green-dark);text-decoration:none}.public-shell{background:var(--surface-alt);min-height:100vh}.public-topbar{border-bottom:1px solid var(--line);background:var(--surface);justify-content:space-between;align-items:center;gap:18px;min-height:72px;padding:12px clamp(18px,4vw,48px);display:flex}.public-topbar-actions{align-items:center;gap:10px;display:flex}.public-content{width:min(960px,100% - 36px);min-height:calc(100vh - 190px);margin:0 auto;padding:42px 0 20px}.public-shell>.legal-footer{width:min(960px,100% - 36px);margin:26px auto 0;padding-bottom:28px}.legal-document{gap:24px;display:grid}.legal-copy{border:1px solid var(--line);background:#fff;border-radius:8px;padding:clamp(22px,4vw,42px)}.legal-copy h2{margin:30px 0 8px;font-size:20px}.legal-copy h2:first-child{margin-top:0}.legal-copy p{max-width:780px}.legal-contact{border-top:1px solid var(--line);margin-top:30px;padding-top:24px}.legal-contact a{color:var(--green-dark);font-weight:750}.legal-emphasis,.danger-zone{grid-template-columns:auto 1fr;gap:14px;display:grid}.legal-emphasis{border-left:4px solid var(--yellow);background:#fffae9;padding:18px}.legal-emphasis svg,.danger-zone>svg{color:var(--red)}.legal-emphasis p,.danger-zone p{margin:5px 0 0}.consent-panel{border:1px solid var(--line);width:min(680px,100%);box-shadow:var(--shadow);background:#fff;border-radius:8px;gap:18px;margin:0 auto;padding:clamp(24px,5vw,42px);display:grid}.consent-panel h1{margin:0;font-size:clamp(30px,5vw,44px)}.consent-panel>p{margin-bottom:4px}.consent-panel>small{color:var(--muted);text-align:center}.account-actions{flex-wrap:wrap;gap:10px;display:flex}.danger-zone{background:var(--red-soft);border-color:#efb0a8}.delete-confirmation{margin:24px 0 18px}.centered-state{text-align:center;align-content:center;place-items:center;gap:12px;min-height:340px;display:grid}.centered-state>svg{color:var(--green)}.centered-state h1{margin:0}.centered-state p{max-width:650px;margin-bottom:8px}.install-options{border-block:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.install-option{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:16px;min-width:0;padding:28px;display:grid}.install-option+.install-option{border-left:1px solid var(--line)}.install-option>svg{color:var(--green)}.install-option h2{margin-bottom:8px;font-size:22px}.install-option p{margin-bottom:0}.install-option .button{grid-column:2;justify-self:start}.install-fallback,.install-store-note{max-width:760px}.install-store-note{border-left:4px solid var(--yellow);background:#fffae9;padding:18px}.page-stack{gap:24px;min-width:0;display:grid}.page-header{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.page-header h1{overflow-wrap:anywhere;max-width:100%;margin-bottom:8px;font-size:clamp(30px,4vw,44px);line-height:1.08}.page-header p{max-width:760px;margin-bottom:0;font-size:16px}.eyebrow,.meal-slot{color:var(--green);letter-spacing:0;text-transform:uppercase;font-size:12px;font-weight:800;display:inline-block}.panel{border:1px solid var(--line);background:var(--surface);border-radius:8px;min-width:0;padding:24px;box-shadow:0 3px 12px #16231c0a}.section-heading,.day-heading,.meal-card-head,.calendar-action{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.section-heading h2,.day-heading h2,.calendar-action h2{margin-bottom:6px}.section-heading p,.day-heading p,.calendar-action p{margin-bottom:0}.button,.icon-button{cursor:pointer;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:8px;min-height:44px;font-weight:750;text-decoration:none;transition:background .12s,border-color .12s,color .12s,transform .12s;display:inline-flex}.button{padding:9px 15px}.button:hover:not(:disabled),.icon-button:hover:not(:disabled){transform:translateY(-1px)}.button:disabled,.icon-button:disabled{cursor:not-allowed;opacity:.55}.button.primary{color:#fff;background:var(--green)}.button.primary:hover:not(:disabled){background:var(--green-dark)}.button.secondary{color:var(--ink);background:#fff;border-color:#bdc9c0}.button.quiet{color:var(--green-dark);background:var(--green-soft)}.button.danger{color:var(--red);background:#fff;border-color:#e9aaa3}.button.saved{color:var(--green-dark);background:var(--green-soft);border-color:#9ccab4}.button.tiny{min-height:32px;padding:5px 10px;font-size:13px}.icon-button{border-color:var(--line);color:#46534b;background:#fff;width:42px;padding:0}.danger-text{color:var(--red)}.favorite{color:#b04b42;background:#fff0ef}.favorite-guide{background:snow;border:1px solid #e5b8b2;border-left:4px solid #b04b42;border-radius:7px;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;padding:15px 17px;display:grid}.favorite-guide>svg{color:#b04b42}.favorite-guide>div{gap:2px;display:grid}.favorite-guide span{color:var(--muted);font-size:13px}.favorite-guide>span{color:#8b3832;white-space:nowrap;font-weight:750}.start-panel{border-left:5px solid var(--green);box-shadow:var(--shadow);background:#fff;justify-content:space-between;align-items:center;gap:28px;padding:28px;display:flex}.start-panel h2{margin:6px 0 7px;font-size:27px}.start-panel p{margin-bottom:0}.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.metric-card{border:1px solid var(--line);background:var(--surface);border-radius:7px;gap:7px;min-height:164px;padding:20px;text-decoration:none;display:grid}.metric-card:hover{box-shadow:var(--shadow);border-color:#9fbdac}.metric-card>span:nth-child(2){color:var(--muted);font-weight:650}.metric-card strong{font-size:34px;line-height:1}.metric-card small{color:var(--muted)}.metric-icon{width:36px;height:36px;color:var(--green);background:var(--green-soft);border-radius:6px;place-items:center;display:grid}.health-summary{gap:15px;display:grid}.household-eater-picker{width:min(360px,100%)}.health-link-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.health-progress-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.health-progress-card{border:1px solid var(--line);background:#fff;border-radius:7px;align-content:start;gap:12px;min-height:174px;padding:18px;text-decoration:none;display:grid}.health-progress-card:hover{box-shadow:var(--shadow);border-color:#9fbdac}.health-progress-card.good{border-color:#9bcab1}.health-progress-card.bad{background:snow;border-color:#e9aaa3}.health-card-label{color:var(--muted);align-items:center;gap:8px;font-size:13px;font-weight:750;display:flex}.health-card-label .metric-icon{width:32px;height:32px}.health-card-label>svg:last-child{color:var(--green);margin-left:auto}.health-progress-card>strong{font-size:22px;line-height:1.15}.health-progress-card>small{color:var(--muted);line-height:1.4}.progress-track{background:#e3e9e4;border-radius:5px;width:100%;height:9px;position:relative;overflow:hidden}.progress-track>span{border-radius:inherit;background:var(--green);height:100%;transition:width .18s;display:block}.progress-track.empty{background:repeating-linear-gradient(90deg,#e3e9e4 0 8px,#f5f7f5 8px 12px)}.health-progress-card.bad .progress-track>span{background:var(--red)}.plan-completion-action{border:1px solid var(--line);background:#fff;border-left:5px solid #8c9b91;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:17px 18px;display:grid}.plan-completion-action>svg{color:var(--green)}.plan-completion-action>div{gap:3px;display:grid}.plan-completion-action span{color:var(--muted);line-height:1.4}.plan-completion-action .completion-date{min-width:170px}.nutrition-attention-details{border-top:1px solid var(--line);grid-column:1/-1;width:100%;padding-top:12px}.nutrition-attention-details summary{width:-moz-fit-content;width:fit-content;color:var(--green-dark);cursor:pointer;font-weight:800}.nutrition-attention-list{gap:8px;margin-top:12px;display:grid}.nutrition-attention-list>div{background:#fff8f7;border:1px solid #edc2bd;border-radius:6px;grid-template-columns:auto 1fr;gap:9px;padding:10px 12px;display:grid}.nutrition-attention-list svg{color:var(--red);margin-top:2px}.nutrition-attention-list span{gap:2px;display:grid}.nutrition-attention-list strong{color:var(--ink)}.nutrition-attention-list small{color:var(--muted);line-height:1.4}.plan-completion-action.within_targets{border-color:#9bcab1;border-left-color:var(--green);background:#f5fbf7}.plan-completion-action.needs_attention{background:#fffae9;border-color:#e6c46f #e6c46f #e6c46f #c98912}.plan-completion-action.incomplete_data{background:#fafbfa;border-left-color:#77857c}.consistency-panel{border-top:1px solid var(--line);gap:16px;padding:22px 0;display:grid}.consistency-panel .section-heading>svg{color:var(--green)}.consistency-stats{border:1px solid var(--line);background:var(--line);border-radius:7px;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.consistency-stats>div{background:#fff;gap:5px;min-height:80px;padding:15px;display:grid}.consistency-stats span{color:var(--muted);font-size:13px}.consistency-stats strong{font-size:20px}.adherence-chart{gap:10px;min-width:0;display:grid;overflow-x:auto}.adherence-chart svg{background:#fff;width:100%;min-width:680px;height:250px;overflow:visible}.adherence-chart text{fill:var(--muted);font-size:10px;font-weight:700}.chart-legend{color:var(--muted);flex-wrap:wrap;gap:16px;font-size:12px;font-weight:700;display:flex}.chart-legend span{align-items:center;gap:6px;display:inline-flex}.chart-legend i{border-radius:3px;width:13px;height:13px}.chart-legend i.aligned{background:#459867}.chart-legend i.attention{background:#e1a437}.chart-legend i.weight{background:#b14761;border-radius:2px;height:3px}.chart-grid-line{stroke:#e7ebe8;stroke-width:1px;vector-effect:non-scaling-stroke}.chart-bar-aligned{fill:#459867}.chart-bar-attention{fill:#e1a437}.adherence-chart .weight-trend-line{fill:none;stroke:#b14761;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.adherence-chart .weight-trend-point{fill:#fff;stroke:#b14761;stroke-width:3px;vector-effect:non-scaling-stroke}.chart-caption{color:var(--muted);font-size:13px;line-height:1.45}.consistency-empty{background:var(--surface-alt);border:1px dashed #b7c2ba;align-items:flex-start;gap:12px;padding:18px;display:flex}.consistency-empty>svg{color:var(--green)}.consistency-empty>div{gap:3px;display:grid}.consistency-empty span{color:var(--muted)}.omega-scale{background:linear-gradient(90deg,#cf5b52 0 44.4%,#58ad7b 44.4% 66.7%,#cf5b52 66.7% 100%);border-radius:5px;height:9px;position:relative}.omega-scale .omega-target{border-left:1px solid #0f513859;border-right:1px solid #0f513859;position:absolute;inset:-3px 33.3% -3px 44.4%}.omega-scale i{background:var(--ink);border-radius:2px;width:3px;height:17px;position:absolute;top:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 2px #fff}.hydration-panel>div{width:min(560px,100%)}.hydration-panel .progress-track{margin-top:12px}.hydration-goal{align-items:center;gap:7px;margin:12px 0 0;font-weight:750;display:flex}.hydration-goal.reached{color:var(--green-dark)}.inline-form{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.inline-form input,.inline-form select{min-height:44px;color:var(--ink);background:#fff;border:1px solid #b9c4bc;border-radius:5px;padding:9px 11px}.input-suffix{color:var(--muted);margin-left:-5px;font-weight:700}.summary-grid,.nutrition-grid{border:1px solid var(--line);background:var(--line);border-radius:7px;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.summary-item,.nutrition-grid>div,.nutrition-grid>.dashboard-total-link{background:#fff;gap:5px;min-height:84px;padding:16px;display:grid}.summary-item span,.nutrition-grid span{color:var(--muted);font-size:13px}.summary-item strong,.nutrition-grid strong{align-items:center;gap:6px;font-size:18px;display:flex}.nutrition-grid strong svg{color:var(--green)}.dashboard-total-link{color:var(--ink);text-decoration:none;transition:background .12s,box-shadow .12s}.dashboard-total-link:hover{background:var(--green-soft);box-shadow:inset 0 -3px 0 var(--green)}.plain-link-band{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:18px 0;display:grid}.plain-link-band div{gap:2px;display:grid}.plain-link-band span{color:var(--muted)}.plain-link-band a{color:var(--green);font-weight:750}.measurement-check-in.due{border:1px solid #e6c46f;border-left:5px solid var(--yellow);background:#fffae9;padding-left:14px;padding-right:14px}.measurement-reminder{border:1px solid var(--line);border-left:5px solid var(--green);background:#fff;grid-template-columns:auto 1fr;align-items:start;gap:12px;padding:17px 19px;display:grid}.measurement-reminder>svg{color:var(--green)}.measurement-reminder>div{gap:3px;display:grid}.measurement-reminder span{color:var(--muted);line-height:1.45}.measurement-reminder.due{border-color:#e6c46f;border-left-color:var(--yellow);background:#fffae9}.measurement-reminder.due>svg{color:#8a5c00}.weight-trend{gap:12px;display:grid}.weight-trend .section-heading p{margin-bottom:0}.weight-trend svg{border-bottom:1px solid var(--line);background:var(--surface-alt);width:100%;height:clamp(180px,26vw,260px);overflow:visible}.weight-trend-line{fill:none;stroke:var(--green);stroke-width:4px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.weight-trend-point{fill:#fff;stroke:var(--green-dark);stroke-width:3px;vector-effect:non-scaling-stroke}.weight-target-line{stroke:#b87800;stroke-width:2px;stroke-dasharray:7 6;vector-effect:non-scaling-stroke}.weight-trend-legend{color:var(--muted);flex-wrap:wrap;gap:18px;font-size:13px;font-weight:750;display:flex}.weight-trend-legend span{align-items:center;gap:7px;display:inline-flex}.weight-trend-legend i{border-radius:2px;width:22px;height:4px;display:inline-block}.weight-actual-key{background:var(--green)}.weight-target-key{border-top:2px dashed #b87800}.metric-log-list>div{grid-template-columns:minmax(150px,.7fr) minmax(240px,1.3fr) minmax(100px,1fr) auto;align-items:center}.health-measurement-note{padding-left:2px}.cgm-import-panel,.cgm-results,.cgm-comparison{gap:20px;display:grid}.file-button{position:relative;overflow:hidden}.file-button input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.file-button.disabled{cursor:not-allowed;opacity:.55}.privacy-inline,.cgm-comparison-wait{border-left:4px solid var(--green);background:var(--green-soft);grid-template-columns:auto 1fr;align-items:start;gap:12px;padding:15px 17px;display:grid}.privacy-inline svg,.cgm-comparison-wait svg{color:var(--green-dark)}.privacy-inline p,.cgm-comparison-wait p{margin:0}.cgm-mapping{border-top:1px solid var(--line);gap:18px;padding-top:18px;display:grid}.cgm-preview-grid,.cgm-stat-grid{border:1px solid var(--line);background:var(--line);border-radius:7px;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.cgm-preview-grid>div,.cgm-stat{background:#fff;align-content:center;gap:5px;min-height:78px;padding:14px;display:grid}.cgm-preview-grid span,.cgm-stat span{color:var(--muted);font-size:12px;font-weight:700}.cgm-preview-grid strong,.cgm-stat strong{font-size:18px}.cgm-consent{align-items:flex-start}.cgm-summary-controls{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.cgm-trend-chart{gap:6px;min-width:0;display:grid;overflow-x:auto}.cgm-trend-chart svg{border-bottom:1px solid var(--line);background:#fff;width:100%;min-width:620px;height:250px}.cgm-reference-band{fill:#e9f5ef}.cgm-trend-line{fill:none;stroke:#186f8d;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.cgm-trend-point{fill:#fff;stroke:#186f8d;stroke-width:3px;vector-effect:non-scaling-stroke}.cgm-trend-point.completed{fill:var(--green);stroke:var(--green-dark)}.cgm-chart-caption{min-width:620px;color:var(--muted);justify-content:space-between;font-size:12px;font-weight:700;display:flex}.cgm-range-legend{flex-wrap:wrap;gap:8px;display:flex}.cgm-range-legend span{border-radius:5px;padding:5px 8px;font-size:12px;font-weight:750}.cgm-range-legend .low,.cgm-range-legend .high{color:#7b332c;background:var(--red-soft)}.cgm-range-legend .range{color:var(--green-dark);background:var(--green-soft)}.cgm-reference-note{margin:0;font-size:13px}.cgm-empty{background:var(--surface-alt);text-align:center;border:1px dashed #b7c2ba;align-content:center;place-items:center;gap:7px;min-height:180px;display:grid}.cgm-empty svg{color:var(--green)}.cgm-empty h3,.cgm-empty p{margin:0}.comparison-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.comparison-grid>div{border:1px solid var(--line);background:#fff;gap:10px;padding:18px;display:grid}.comparison-grid h3{margin:0;font-size:17px}.comparison-grid>div>strong{color:var(--green-dark)}.comparison-grid dl{gap:8px;margin:0;display:grid}.comparison-grid dl>div{border-top:1px solid var(--line);justify-content:space-between;gap:16px;padding-top:8px;display:flex}.comparison-grid dt{color:var(--muted)}.comparison-grid dd{margin:0;font-weight:750}.cgm-import-list{border-top:1px solid var(--line);display:grid}.cgm-import-list>div{border-bottom:1px solid var(--line);grid-template-columns:1fr auto;align-items:center;gap:14px;padding:14px 0;display:grid}.cgm-import-list>div>div{gap:3px;display:grid}.cgm-import-list span,.cgm-import-list small{color:var(--muted)}.research-hero{border-left:5px solid var(--green);box-shadow:var(--shadow);background:#fff;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);align-items:center;gap:34px;padding:clamp(26px,5vw,52px);display:grid}.research-hero-copy h2{max-width:720px;margin:7px 0 13px;font-size:clamp(27px,3.5vw,43px);line-height:1.08}.research-hero-copy p{max-width:720px;margin-bottom:0;font-size:17px}.rule-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.rule-card{background:var(--green-soft);border:1px solid #bdd2c5;border-radius:7px;align-content:center;gap:8px;min-height:180px;padding:22px;display:grid}.rule-card strong{color:var(--green-dark);font-size:clamp(30px,4vw,44px);line-height:1}.rule-card span{color:var(--ink);font-weight:750;line-height:1.35}.rule-card small{color:var(--muted);line-height:1.4}.evidence-boundary{border:1px solid #e6c46f;border-left:5px solid var(--yellow);background:#fffae9;grid-template-columns:auto 1fr;gap:16px;padding:24px 26px;display:grid}.evidence-boundary>svg{color:#8a5c00}.evidence-boundary h2,.research-closing h2{margin-bottom:7px;font-size:22px}.evidence-boundary p,.research-closing p{max-width:1000px;margin-bottom:0}.research-explorer{padding:0;overflow:hidden}.research-explorer-heading{padding:26px 28px 13px}.research-explorer-heading h2{margin:6px 0 0;font-size:27px}.research-tabs{width:-moz-fit-content;width:fit-content;margin:0 28px 24px}.research-tabs button{align-items:center;gap:7px;display:inline-flex}.topic-browser{border-top:1px solid var(--line);grid-template-columns:minmax(230px,.34fr) minmax(0,1fr);min-height:600px;display:grid}.topic-choice-list{border-right:1px solid var(--line);background:var(--surface-alt);align-content:start;display:grid}.topic-choice-list button{border:0;border-bottom:1px solid var(--line);min-height:72px;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border-left:4px solid #0000;gap:4px;padding:14px 18px;display:grid}.topic-choice-list button:hover{background:#fff}.topic-choice-list button.active{border-left-color:var(--green);background:var(--green-soft)}.topic-choice-list strong{font-size:15px}.topic-choice-list span{color:var(--muted);font-size:12px;line-height:1.35}.research-detail{min-width:0;padding:clamp(24px,4vw,42px);scroll-margin-top:82px}.research-detail h3{margin:7px 0 14px;font-size:clamp(25px,3vw,34px)}.research-detail h4{margin:24px 0 9px;font-size:17px}.research-detail-intro{max-width:880px;font-size:17px;line-height:1.65}.research-key-points{gap:10px;max-width:900px;margin:0;padding-left:22px;display:grid}.research-key-points li{padding-left:3px;line-height:1.55}.research-key-points li::marker{color:var(--green)}.research-links{border-top:1px solid var(--line);gap:9px;max-width:920px;margin-top:28px;padding-top:22px;display:grid}.research-links h4,.research-links p{margin:0}.research-links>a{border:1px solid var(--line);min-height:60px;color:var(--ink);background:#fff;border-radius:6px;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:12px 14px;text-decoration:none;display:grid}.research-links>a:hover{background:var(--green-soft);border-color:#92b9a5}.research-links>a>svg:first-child{color:var(--green)}.research-links>a span{gap:2px;min-width:0;display:grid}.research-links>a small{color:var(--muted);line-height:1.35}.supplement-browser{border-top:1px solid var(--line)}.supplement-safety{background:#fffae9;border-bottom:1px solid #e6c46f;grid-template-columns:auto 1fr;gap:13px;padding:20px 28px;display:grid}.supplement-safety>svg{color:#8a5c00}.supplement-safety p{max-width:1000px;margin:4px 0 0}.supplement-filter-block{border-bottom:1px solid var(--line);gap:10px;padding:22px 28px;display:grid}.supplement-filter-block h3{margin:0;font-size:18px}.supplement-interests{width:-moz-fit-content;width:fit-content}.supplement-topic-tags{flex-wrap:wrap;gap:7px;display:flex}.supplement-topic-tags span{color:var(--green-dark);background:#f0f8f3;border:1px solid #a8c8b6;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:750}.supplement-layout{grid-template-columns:minmax(230px,.34fr) minmax(0,1fr);min-height:520px;display:grid}.supplement-list{border-right:1px solid var(--line);background:var(--surface-alt);grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:7px;padding:18px;display:grid}.supplement-list button{border:1px solid var(--line);min-height:48px;color:var(--ink);text-align:left;cursor:pointer;background:#fff;border-radius:5px;padding:9px 10px;font-weight:700}.supplement-list button:hover{border-color:#92b9a5}.supplement-list button.active{border-color:var(--green);color:var(--green-dark);background:var(--green-soft)}.supplement-detail p{max-width:880px;line-height:1.6}.supplement-form-list{border-top:1px solid var(--line);gap:0;max-width:880px;display:grid}.supplement-form-list>div{border-bottom:1px solid var(--line);padding:13px 0}.supplement-form-list p{margin:4px 0 0}.supplement-caution{border-left:4px solid var(--yellow);background:#fffae9;grid-template-columns:auto 1fr;gap:12px;max-width:880px;margin-top:24px;padding:17px;display:grid}.supplement-caution>svg{color:#8a5c00;margin-top:2px}.supplement-caution h4,.supplement-caution p{margin:0}.supplement-caution p{margin-top:5px}.research-source-action{min-height:44px;color:var(--green-dark);align-items:center;gap:7px;margin-top:22px;font-weight:800;text-decoration:none;display:inline-flex}.research-source-action:hover{text-decoration:underline}.research-source-actions{flex-wrap:wrap;gap:10px 20px;display:flex}.research-back-button{border:1px solid var(--line);min-height:42px;color:var(--green-dark);cursor:pointer;background:#fff;border-radius:5px;align-items:center;gap:7px;margin-top:26px;padding:9px 12px;font-weight:800;display:inline-flex}.research-back-button:hover{background:var(--green-soft);border-color:#92b9a5}.topic-choice-list,.supplement-list{scroll-margin-top:82px}.supplement-resources{border-top:1px solid var(--line);background:var(--surface-alt);flex-wrap:wrap;align-items:center;gap:10px 18px;padding:18px 28px;display:flex}.supplement-resources p{width:100%;margin:0;font-weight:750}.supplement-resources a{color:var(--green-dark);align-items:center;gap:5px;font-weight:750;display:inline-flex}.research-closing{grid-template-columns:auto 1fr;gap:16px;display:grid}.research-closing p+p{margin-top:10px}.research-closing>svg{color:var(--green)}.research-closing .button{margin-top:16px}.wizard{padding:0;overflow:hidden}.stepper{border-bottom:1px solid var(--line);background:var(--surface-alt);grid-template-columns:repeat(6,minmax(0,1fr));display:grid}.stepper button{border:0;border-right:1px solid var(--line);min-height:62px;color:var(--muted);background:0 0;justify-content:center;align-items:center;gap:8px;padding:10px;font-size:13px;font-weight:700;display:flex}.stepper button:last-child{border-right:0}.stepper button span{border:1px solid #acb8b0;border-radius:50%;place-items:center;width:24px;height:24px;font-size:12px;display:grid}.stepper button.active{color:var(--green-dark);box-shadow:inset 0 -3px var(--green);background:#fff}.stepper button.active span,.stepper button.done span{border-color:var(--green);color:#fff;background:var(--green)}.wizard-body{min-height:420px;padding:clamp(26px,5vw,54px)}.question{gap:20px;max-width:980px;margin:0 auto;display:grid}.question>h2{margin-bottom:-12px;font-size:30px}.question>p{margin-bottom:4px}.wizard-actions{border-top:1px solid var(--line);background:var(--surface-alt);justify-content:space-between;padding:18px 24px;display:flex}.option-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.budget-preference{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.budget-preference label,.budget-preference button{border:1px solid var(--line);min-width:0;color:var(--ink);cursor:pointer;text-align:left;font:inherit;background:#fff;border-radius:7px;padding:12px;display:flex}.budget-preference label.selected,.budget-preference button.selected{border-color:var(--green);box-shadow:inset 0 0 0 1px var(--green);background:var(--green-soft)}.budget-preference input{opacity:0;pointer-events:none;position:absolute}.budget-preference span,.budget-preference button{gap:4px;display:grid}.budget-preference small{color:var(--muted);line-height:1.35}.budget-result-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px;display:grid}.budget-result-summary>div{gap:3px;display:grid}.budget-result-summary>div span{color:var(--muted);font-size:13px}.budget-result-summary>div strong{color:var(--green-dark);font-size:18px}.budget-result-summary p{color:var(--muted);grid-column:1/-1;margin:0;font-size:13px}.option{border:1px solid var(--line);min-height:100px;color:var(--ink);text-align:left;cursor:pointer;background:#fff;border-radius:7px;grid-template-columns:26px 1fr;gap:4px 10px;padding:17px;display:grid;position:relative}.option:hover{border-color:#92b9a5}.option.selected{border:2px solid var(--green);background:var(--green-soft);padding:16px}.option-radio{border:1px solid #98a59c;border-radius:50%;grid-row:span 2;place-items:center;width:22px;height:22px;display:grid}.option.selected .option-radio{border-color:var(--green);color:#fff;background:var(--green)}.option strong{font-size:16px}.option small{color:var(--muted);line-height:1.4}.field{gap:7px;min-width:0;display:grid}.field>span,.field>label{font-weight:750}.field small{color:var(--muted);line-height:1.4}.field-with-help{align-content:start;gap:7px;display:grid}.field-with-help .field-help{margin:0}.field input,.field select,.field textarea,.slot-add select{width:100%;min-height:46px;color:var(--ink);background:#fff;border:1px solid #b9c4bc;border-radius:5px;padding:10px 12px}.field input:focus,.field select:focus,.field textarea:focus,.slot-add select:focus{border-color:var(--green);outline:3px solid #146b4921}.password-input-wrap{min-width:0;position:relative}.password-input-wrap input{padding-right:50px}.password-visibility-button{width:40px;height:38px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:5px;place-items:center;padding:0;display:grid;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.password-visibility-button:hover,.password-visibility-button:focus-visible{color:var(--green-dark);background:var(--green-soft)}.password-visibility-button:focus-visible{outline:2px solid var(--green);outline-offset:1px}.compact-field{min-width:160px}.form-stack{gap:17px;min-width:0;display:grid}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;min-width:0;display:grid}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.field.wide,.wide{grid-column:1/-1}.height-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.subform,.soft-box{border:1px solid var(--line);background:var(--surface-alt);border-radius:7px;padding:20px}.subform{gap:18px;display:grid}.soft-box{color:#405047}.check-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.chronic-condition-groups{gap:16px;margin-top:14px;display:grid}.chronic-condition-groups fieldset{border:1px solid var(--line);border-radius:6px;min-width:0;padding:14px}.chronic-condition-groups legend{padding:0 6px;font-weight:800}.medical-limit{border-top:1px solid var(--line);gap:12px;margin-top:18px;padding-top:18px;display:grid}.medical-limit .field-help{align-self:center;margin:0}.check,.choice{border:1px solid var(--line);background:#fff;border-radius:5px;align-items:center;gap:9px;min-height:44px;padding:10px 12px;display:flex}.check input,.choice input{width:18px;height:18px;accent-color:var(--green)}.toggle-row{align-items:center;gap:14px;padding:14px 0;display:flex}.toggle-row>span:last-child{gap:3px;display:grid}.toggle-row small{color:var(--muted)}.toggle{cursor:pointer;background:#a8b1ab;border:0;border-radius:20px;flex:none;width:48px;height:27px;padding:0;position:relative}.toggle span{background:#fff;border-radius:50%;width:19px;height:19px;transition:transform .14s;position:absolute;top:4px;left:4px}.toggle.on{background:var(--green)}.toggle.on span{transform:translate(21px)}.review-list{border:1px solid var(--line);border-radius:7px;display:grid;overflow:hidden}.review-list>div{border-bottom:1px solid var(--line);grid-template-columns:180px 1fr;gap:16px;padding:15px 18px;display:grid}.review-list>div:last-child{border-bottom:0}.review-list span{color:var(--muted)}.generation-progress,.notice{border-radius:6px;align-items:center;gap:10px;padding:14px 18px;line-height:1.45;display:flex}.generation-progress{color:var(--green-dark);background:var(--green-soft);margin:0 24px 18px}.notice{border:1px solid var(--line);background:#fff}.notice.success{color:var(--green-dark);background:var(--green-soft);border-color:#9bcab1}.notice.error{color:var(--red);background:var(--red-soft);border-color:#efb0a8;align-items:flex-start}.notice.error span{color:#7b332c}.notice-dismiss{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;margin-left:auto;padding:4px 7px;font-weight:700}.friend-code-form{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;max-width:680px;display:grid}.spin{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.result-days{gap:28px;display:grid}.day-result{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:8px;overflow:hidden}.day-heading{border-bottom:1px solid var(--line);padding:22px 24px}.status-chip,.swap-badge,.gl{border-radius:999px;align-items:center;gap:5px;width:-moz-fit-content;width:fit-content;padding:5px 9px;font-size:12px;font-weight:800;display:inline-flex}.status-chip.good{color:#fff;background:var(--green)}.status-chip.review{color:#6d4800;background:#fff0c8}.swap-badge{color:#6b4600;background:#fff0c8}.nutrition-grid{grid-template-columns:repeat(7,minmax(0,1fr));margin:20px 24px}.fat-quality{border:1px solid var(--line);border-left:4px solid var(--green);background:#fff;gap:10px;margin:0 24px 20px;padding:14px 16px;display:grid}.fat-quality.acceptable{border-left-color:#d49a21}.fat-quality.review{border-left-color:var(--red)}.fat-quality.unavailable{border-left-color:#8a948d}.fat-quality-heading{justify-content:space-between;align-items:center;gap:14px;display:flex}.fat-quality-heading>span{align-items:center;gap:7px;font-weight:800;display:flex}.fat-quality.good .fat-quality-heading svg{color:var(--green)}.fat-quality.acceptable .fat-quality-heading svg{color:#a96f00}.fat-quality.review .fat-quality-heading svg{color:var(--red)}.fat-quality-bar{background:var(--line);border-radius:3px;width:100%;height:12px;display:flex;overflow:hidden}.fat-quality-bar>span{min-width:0;display:block}.fat-quality .saturated{background:#dd6b5c}.fat-quality .monounsaturated{background:#3d8d61}.fat-quality .polyunsaturated{background:#d3a32c}.fat-quality-legend{color:var(--muted);flex-wrap:wrap;gap:8px 16px;font-size:12px;display:flex}.fat-quality-legend span{align-items:center;gap:5px;display:flex}.fat-quality-legend i{border-radius:2px;width:9px;height:9px}.fat-quality>small{color:var(--muted);line-height:1.45}.calendar-nutrition .fat-quality{margin:14px 0 0}.nutrition-grid>div{min-height:76px;padding:13px}.nutrition-grid.dashboard-nutrition-grid{grid-template-columns:repeat(6,minmax(0,1fr));margin:0}.meal-list{gap:12px;padding:0 24px 24px;display:grid}.meal-card{border:1px solid var(--line);background:#fff;border-radius:7px;overflow:hidden}.meal-card.recently-changed{border-color:#d69d24;box-shadow:0 0 0 3px #f4b74038}.meal-card.feedback-error{border-color:#d77468;box-shadow:0 0 0 3px #b841341f}.meal-card.feedback-success{border-color:#6eaf8a;box-shadow:0 0 0 3px #2b7a4c24}.meal-card:focus{outline-offset:3px;outline:3px solid #f4b74073}.meal-card-head{padding:18px}.meal-card-header-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.meal-card h3,.meal-card h2{margin:5px 0 9px;font-size:21px}.slot-row,.meal-meta,.meal-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.meal-meta{color:var(--muted);font-size:13px}.meal-meta>span:not(.gl){border-right:1px solid var(--line);padding-right:8px}.gl{color:#4e5b53;background:#edf0ee;padding:4px 8px}.gl.low{color:var(--green-dark);background:var(--green-soft)}.gl.medium{color:#6d4800;background:#fff0c8}.gl.high{color:var(--red);background:var(--red-soft)}.meal-actions{padding:0 18px 14px}.meal-action-status{color:var(--green-dark);background:var(--green-soft);border-radius:5px;align-items:center;gap:8px;margin:-2px 18px 14px;padding:9px 11px;font-size:13px;font-weight:750;display:flex}.meal-feedback{border-radius:5px;align-items:flex-start;gap:9px;margin:-2px 18px 14px;padding:11px 12px;font-size:13px;font-weight:700;line-height:1.45;display:flex}.meal-feedback svg{flex:none;margin-top:1px}.meal-feedback.success{color:var(--green-dark);background:var(--green-soft)}.meal-feedback.error{color:#7b332c;background:var(--red-soft)}.button.active-swap{border-color:var(--green);color:#fff;background:var(--green);opacity:1}.swap-note{border-left:3px solid var(--yellow);color:#684b13;background:#fffae9;margin:-5px 18px 14px;padding:8px 10px;font-size:13px}.meal-card details{border-top:1px solid var(--line)}.meal-card summary,.saved-row summary{color:var(--green-dark);background:var(--surface-alt);cursor:pointer;padding:14px 18px;font-weight:750}.meal-details{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:28px;padding:20px;display:grid}.meal-details h3,.meal-details h4{margin-bottom:12px}.meal-details ol{gap:9px;margin:0;padding-left:22px;line-height:1.5;display:grid}.cooking-guide{border-top:1px solid var(--line);background:#fff}.cooking-time-strip{background:var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;display:grid}.cooking-time-strip>div{background:#fff;gap:3px;min-width:0;padding:12px 16px;display:grid}.cooking-time-strip>div.emphasized{color:var(--green-dark);background:var(--green-soft)}.cooking-time-strip span{color:var(--muted);align-items:center;gap:6px;font-size:12px;font-weight:750;display:flex}.cooking-time-strip .emphasized span{color:var(--green-dark)}.cooking-time-strip strong{overflow-wrap:anywhere;font-size:15px}.cooking-guide details.cooking-guide-details{border-top:1px solid var(--line)}.cooking-guide details.cooking-guide-details>summary{min-height:48px;color:var(--green-dark);background:var(--surface-alt);cursor:pointer;justify-content:space-between;align-items:center;gap:16px;padding:12px 16px;list-style:none;display:flex}.cooking-guide details.cooking-guide-details>summary::-webkit-details-marker{display:none}.cooking-guide details.cooking-guide-details>summary>span{align-items:center;gap:8px;font-weight:800;display:flex}.cooking-guide details.cooking-guide-details>summary small{color:var(--muted);text-align:right;font-weight:650}.cooking-guide-body{gap:18px;padding:18px;display:grid}.cooking-schedule-controls{border-left:4px solid var(--green);background:var(--green-soft);grid-template-columns:minmax(140px,.45fr) minmax(140px,.45fr) minmax(220px,1fr);align-items:end;gap:12px;padding:14px;display:grid}.cooking-schedule-controls label{gap:5px;display:grid}.cooking-schedule-controls label>span{color:var(--muted);font-size:12px;font-weight:750}.cooking-schedule-controls input{width:100%;min-height:42px;color:var(--ink);background:#fff;border:1px solid #aebeb3;border-radius:5px;padding:8px 10px}.cooking-schedule-controls p{color:var(--green-dark);align-self:center;margin:0;font-size:13px}.cooking-step-list{counter-reset:none;gap:0;margin:0;padding:0;list-style:none;display:grid}.cooking-step-list>li{border-bottom:1px solid var(--line);gap:10px;padding:16px 0;display:grid}.cooking-step-list>li:first-child{padding-top:0}.cooking-step-list>li:last-child{border-bottom:0;padding-bottom:0}.cooking-step-heading{grid-template-columns:30px minmax(0,1fr);align-items:start;gap:10px;display:grid}.cooking-step-heading>div{gap:3px;display:grid}.cooking-step-heading small{color:var(--muted);font-size:12px}.cooking-step-check{border:1px solid var(--green);color:#fff;background:var(--green);cursor:pointer;border-radius:50%;place-items:center;width:30px;height:30px;padding:0;font-size:13px;font-weight:850;display:grid}.cooking-step-check:hover,.cooking-step-check:focus-visible{outline:3px solid color-mix(in srgb, var(--green) 24%, transparent);outline-offset:2px}.cooking-step-list>li.completed{opacity:.76}.cooking-step-list>li.completed .cooking-step-check{color:var(--green-dark);background:var(--green-soft)}.cooking-step-list>li.completed .cooking-step-heading strong{text-decoration:line-through;text-decoration-thickness:1px}.cooking-step-list>li>p{color:var(--ink);margin:0 0 0 40px;font-size:14px;line-height:1.55}.cooking-step-completed-at{color:var(--green-dark);margin-left:40px;font-weight:750}.cooking-step-list dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 16px;margin:0 0 0 40px;display:grid}.cooking-step-list dl>div{min-width:0}.cooking-step-list dt{color:var(--green-dark);text-transform:uppercase;align-items:center;gap:5px;font-size:11px;font-weight:800;display:flex}.cooking-step-list dd{color:var(--muted);margin:2px 0 0;font-size:12px;line-height:1.45}.cooking-progress-summary{border-left:4px solid var(--green);background:var(--green-soft);justify-content:space-between;align-items:center;gap:16px;padding:13px 15px;display:flex}.cooking-progress-summary>div{gap:3px;display:grid}.cooking-progress-summary span{color:var(--muted);font-size:12px}.cooking-downtime{border-left:4px solid var(--yellow);background:#fffae9;gap:8px;padding:13px 15px;display:grid}.cooking-downtime>div{grid-template-columns:minmax(90px,auto) 1fr;gap:10px;font-size:12px;display:grid}.cooking-downtime span{color:#74520c;font-weight:800}.cooking-downtime p{margin:0;font-size:12px}.saved-details>.cooking-guide{border-bottom:1px solid var(--line);margin:16px -18px}.calendar-meal-details .cooking-guide{border:1px solid var(--line);margin-top:5px}.calendar-meal-details .cooking-guide-details>summary{padding:9px 11px;font-size:12px}.calendar-meal-details .cooking-guide-body{padding:13px}.ingredient-list{gap:0;margin:0;padding:0;list-style:none;display:grid}.ingredient-list li{border-bottom:1px solid #e7ebe8;justify-content:space-between;align-items:center;gap:12px;min-height:42px;padding:8px 0;display:flex}.ingredient-list li>div{gap:3px;display:grid}.ingredient-list small{color:var(--muted)}.calendar-action{flex-wrap:wrap;align-items:end}.calendar-action>div:first-child{flex:1}.calendar-conflict,.calendar-success{border-radius:6px;grid-column:1/-1;width:100%;margin-top:14px;padding:16px}.calendar-conflict{background:#fff5ed;border:1px solid #e9a16c}.calendar-conflict>div:first-child,.calendar-success{align-items:center;gap:12px;display:flex}.calendar-conflict>div:first-child span,.calendar-success span{gap:3px;display:grid}.calendar-conflict ul{gap:8px;margin:14px 0;padding:0;list-style:none;display:grid}.calendar-conflict li{border-top:1px solid #723e1f2e;justify-content:space-between;gap:16px;padding-top:8px;display:flex}.calendar-conflict-actions{flex-wrap:wrap;gap:8px;display:flex}.calendar-success{background:#eef8f0;border:1px solid #84b992}.calendar-success span{flex:1}.family-serving-summary{gap:14px;margin:20px 24px;display:grid}.family-serving-intro{gap:4px;display:grid}.family-serving-intro small{color:var(--muted)}.family-person-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.family-person-grid>article{border:1px solid var(--line);background:var(--surface-alt);border-radius:7px;overflow:hidden}.family-person-grid>article.passed{border-color:#9bcab1}.family-person-grid>article.review{border-color:#e3bd68}.family-person-heading{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;gap:12px;padding:13px 14px;display:flex}.family-person-heading h3{margin:0;font-size:17px}.family-person-heading span{color:var(--green-dark);align-items:center;gap:5px;font-size:12px;font-weight:800;display:inline-flex}.family-person-grid>article.review .family-person-heading span{color:#7b570f}.family-nutrition-grid{background:var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid}.family-nutrition-grid>div{background:#fff;grid-template-columns:auto 1fr;align-items:center;gap:2px 7px;min-width:0;padding:9px 11px;display:grid}.family-nutrition-grid svg{grid-row:1/3}.family-nutrition-grid span{color:var(--muted);font-size:12px}.family-nutrition-grid strong{overflow-wrap:anywhere;font-size:12px}.family-nutrition-grid .pass svg{color:var(--green)}.family-nutrition-grid .fail svg{color:var(--red)}.family-nutrition-grid .neutral svg{color:#9a7219}.family-meal-portions{border-left:3px solid var(--green);background:var(--green-soft);gap:5px;margin-top:11px;padding:10px 11px;display:grid}.family-meal-portions>strong{font-size:13px}.family-meal-portions>div{flex-wrap:wrap;gap:6px 14px;display:flex}.family-meal-portions span{font-size:13px;font-weight:700}.family-meal-portions small{color:var(--muted)}.ingredient-person-portions{gap:2px;margin-top:3px;display:grid}.ingredient-person-portions small{color:var(--ink)}.ingredient-person-portions strong{color:var(--green-dark)}.calendar-person{min-width:170px}.calendar-serving{color:#41694e}.result-footer-action{justify-content:flex-end;padding-top:4px;display:flex}.segmented{border:1px solid var(--line);background:#fff;border-radius:7px;flex-wrap:wrap;gap:5px;padding:4px;display:flex}.segmented button{min-height:38px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:5px;padding:7px 13px;font-weight:700}.segmented button.active{color:#fff;background:var(--green)}.saved-list{gap:10px;display:grid}.saved-row{border:1px solid var(--line);background:#fff;border-radius:7px}.saved-row.is-favorite{border-color:#dfaaa4}.saved-row summary{color:var(--ink);justify-content:space-between;align-items:center;gap:18px;list-style:none;display:flex}.saved-row summary::-webkit-details-marker{display:none}.saved-row summary>span:first-child{gap:4px;display:grid}.saved-row summary small{color:var(--green);text-transform:uppercase}.favorite-label{color:#9a4038;align-items:center;gap:4px;width:-moz-fit-content;width:fit-content;font-size:12px;font-weight:750;display:inline-flex}.saved-row-actions{gap:6px;display:flex}.saved-details{border-top:1px solid var(--line);padding:18px}.saved-calendar-button{margin-bottom:14px}.saved-schedule-panel{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface-alt);gap:14px;margin:0 -18px 18px;padding:16px 18px;display:grid}.saved-schedule-fields{grid-template-columns:repeat(2,minmax(0,220px));gap:12px;display:grid}.saved-schedule-conflict{background:#fff5ed;border-left:4px solid #b55e30;gap:6px;padding:14px;display:grid}.saved-schedule-conflict>div{flex-wrap:wrap;gap:8px;margin-top:6px;display:flex}.saved-schedule-success{border-left:4px solid var(--green);background:#eef8f0;align-items:center;gap:11px;margin-bottom:16px;padding:13px 14px;display:flex}.saved-schedule-success>span{flex:1;gap:3px;display:grid}.saved-schedule-success small{color:var(--muted)}.date-nav{align-items:center;gap:7px;display:flex}.calendar-toolbar{justify-content:space-between;align-items:center;gap:16px;padding:12px 14px;display:flex}.calendar-range-toolbar{grid-template-columns:minmax(190px,1fr) minmax(360px,1.4fr) auto auto;align-items:end;display:grid}.calendar-range-title{color:var(--green-dark);align-self:center;align-items:center;gap:10px;display:flex}.calendar-range-title>span{gap:2px;display:grid}.calendar-range-title small{color:var(--muted)}.calendar-range-fields{grid-template-columns:repeat(2,minmax(150px,1fr));gap:10px;display:grid}.calendar-range-presets{gap:6px;display:flex}.compact-segmented{flex-wrap:nowrap}.calendar-days{gap:16px;display:grid}.calendar-day{border:1px solid var(--line);background:#fff;border-radius:7px}.calendar-day-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:16px 18px;display:flex}.calendar-day-head div{align-items:baseline;gap:9px;display:flex}.calendar-day-head .calendar-day-head-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center}.calendar-day-head span{color:var(--muted)}.calendar-supplement-plan{border-bottom:1px solid var(--line);background:#fff;padding:12px 18px}.calendar-slots{display:grid}.calendar-slot{border-bottom:1px solid #e7ebe8;grid-template-columns:100px 1fr;align-items:center;gap:14px;min-height:62px;padding:10px 18px;display:grid}.calendar-slot:last-child{border-bottom:0}.calendar-slot>span{color:var(--green-dark);font-size:13px;font-weight:800}.calendar-meal{grid-template-columns:1fr auto;align-items:center;gap:10px 12px;display:grid}.calendar-meal-summary{gap:2px;display:grid}.calendar-meal small{color:var(--muted)}.calendar-meal-details{border-top:1px solid var(--line);grid-column:1/-1}.calendar-meal-details summary{color:var(--green-dark);cursor:pointer;justify-content:space-between;align-items:center;gap:10px;padding:8px 0 2px;font-size:13px;font-weight:750;list-style:none;display:flex}.calendar-meal-details summary::-webkit-details-marker{display:none}.calendar-meal-details summary svg{transition:transform .16s}.calendar-meal-details[open] summary svg{transform:rotate(180deg)}.calendar-meal-details>div{color:var(--text);gap:7px;padding:8px 0 4px;font-size:13px;line-height:1.5;display:grid}.calendar-meal-details ul,.calendar-meal-details ol{gap:5px;margin:0;padding-left:20px;display:grid}.calendar-meal-details p{color:var(--muted);margin:0}.slot-add{color:var(--green);align-items:center;gap:8px;display:flex}.slot-add select{max-width:440px}.calendar-empty{color:var(--muted)!important;font-size:13px!important;font-weight:600!important}.calendar-nutrition{border-bottom:1px solid var(--line);background:var(--surface-alt);gap:12px;padding:14px 18px;display:grid}.calendar-nutrition.empty{color:var(--muted);grid-template-columns:auto 1fr;align-items:center}.calendar-nutrition-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.calendar-nutrition-head small{color:var(--muted)}.calendar-nutrition.needs-refinement{border-left:4px solid var(--red)}.calendar-refine-action{background:#fff5f3}.calendar-unavailable-action{color:var(--muted)}.calendar-unavailable-action svg{color:#9a7219;flex:none}.calendar-check-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;display:grid}.calendar-check-grid>div{background:#fff;border-radius:5px;grid-template-columns:auto 1fr;align-items:center;gap:3px 7px;min-width:0;padding:9px;display:grid}.calendar-check-grid svg{grid-row:1/3}.calendar-check-grid span{color:var(--muted);font-size:12px}.calendar-check-grid strong{overflow-wrap:anywhere;font-size:13px}.calendar-check-grid .pass svg{color:var(--green)}.calendar-check-grid .fail svg{color:var(--red)}.calendar-check-grid .neutral svg{color:#9a7219}.calendar-fill-action{border-top:1px solid var(--line);background:var(--surface-alt);align-items:center;gap:14px;padding:14px 18px;display:flex}.calendar-refine-action .field{min-width:min(100%,340px)}.calendar-fill-action small{max-width:620px;color:var(--muted);line-height:1.45}.grocery-setup{grid-template-columns:minmax(220px,.8fr) minmax(280px,1.35fr) auto;align-items:end;gap:18px;display:grid}.grocery-week-field small{color:var(--muted)}.grocery-audience{align-content:center;align-self:stretch;gap:7px;min-width:0;padding:2px 0;display:grid}.grocery-audience-title{color:var(--green-dark);align-items:center;gap:8px;font-weight:800;display:flex}.grocery-audience p,.grocery-audience small{color:var(--muted);margin:0}.grocery-audience small{line-height:1.45}.grocery-context-loading{color:var(--muted);align-items:center;gap:8px;display:flex}.grocery-eaters{flex-wrap:wrap;gap:7px;display:flex}.grocery-eaters span{color:var(--green-dark);background:var(--green-soft);border:1px solid #b9d3c3;border-radius:5px;padding:6px 9px;font-size:13px;font-weight:750}.grocery-build{min-width:185px}.grocery-legacy-servings{border-top:1px solid var(--line);grid-column:1/-1;justify-content:space-between;align-items:center;gap:18px;padding-top:14px;display:flex}.grocery-legacy-servings>div:first-child{gap:3px;display:grid}.grocery-legacy-servings small{color:var(--muted)}.quantity-stepper{grid-template-columns:42px 54px 42px;align-items:center;gap:6px;display:grid}.quantity-stepper output{border:1px solid var(--line);background:#fff;border-radius:5px;place-items:center;min-height:42px;font-weight:850;display:grid}.grocery-sheet{border:1px solid var(--line);background:#fff;border-radius:7px;overflow:hidden;box-shadow:0 8px 22px #1e31260f}.grocery-sheet-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;padding:22px 24px;display:flex}.grocery-sheet-head h2{margin:3px 0 0;font-size:22px}.grocery-sheet-head>strong{color:var(--green-dark);flex:none}.grocery-group{padding:0}.grocery-group+.grocery-group{border-top:1px solid var(--line)}.grocery-group h3{color:var(--green-dark);background:var(--surface-alt);margin:0;padding:11px 24px;font-size:15px}.grocery-items{display:grid}.grocery-item{cursor:pointer;border-bottom:1px solid #e8ece9;grid-template-columns:24px minmax(0,1fr);align-items:start;gap:12px;min-height:74px;padding:13px 24px;display:grid}.grocery-item:last-child{border-bottom:0}.grocery-item:hover{background:#fbfdfb}.grocery-item input{width:19px;height:19px;accent-color:var(--green);margin-top:3px}.grocery-item-copy{grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:3px 16px;min-width:0;display:grid}.grocery-item-copy strong{overflow-wrap:anywhere;font-size:16px}.grocery-item-copy b{color:var(--green-dark);text-align:right;font-size:16px}.grocery-item-copy small{color:var(--muted);grid-column:1/-1}.grocery-item.checked{color:#758078;background:#f7f9f7}.grocery-item.checked .grocery-item-copy strong,.grocery-item.checked .grocery-item-copy b{text-decoration:line-through}.member-list{gap:10px;display:grid}.member-list details{border:1px solid var(--line);background:#fff;border-radius:6px}.member-list summary{cursor:pointer;padding:14px 16px;font-weight:750}.details-body{border-top:1px solid var(--line);gap:12px;padding:0 16px 16px;display:grid}.details-body p{color:var(--muted);margin:14px 0 0}.member-actions,.subform-actions{flex-wrap:wrap;gap:10px;display:flex}.builder-controls{gap:18px;display:grid}.builder-controls .button{justify-self:start}.builder-result{padding:4px}.builder-form{gap:20px;display:grid;position:relative}.builder-complete-row{border:1px solid var(--line);background:var(--surface-alt);border-radius:6px;justify-content:space-between;align-items:center;gap:18px;padding:14px 16px;display:flex}.builder-complete-row>div{gap:3px;display:grid}.builder-complete-row small{color:var(--muted);line-height:1.4}.builder-complete-row .button{flex:none}.ingredient-search-row{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;display:grid}.ingredient-source-actions{flex-wrap:wrap;justify-content:flex-end;gap:9px;display:flex}.barcode-modal{z-index:100;background:#0f1e1694;place-items:center;padding:24px;display:grid;position:fixed;inset:0;overflow-y:auto}.barcode-panel{border:1px solid var(--line);background:#fff;border-radius:8px;gap:16px;width:min(620px,100%);max-height:calc(100vh - 48px);padding:22px;display:grid;overflow-y:auto;box-shadow:0 20px 60px #0000003d}.barcode-heading,.barcode-product-title{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.barcode-heading h2,.barcode-product h3{margin-bottom:5px}.barcode-heading p,.barcode-product p{margin-bottom:0}.barcode-camera{aspect-ratio:4/3;background:#132019;border-radius:6px;max-height:54vh;position:relative;overflow:hidden}.barcode-camera video{object-fit:cover;width:100%;height:100%}.barcode-viewfinder{pointer-events:none;border:2px solid #fff;border-radius:5px;position:absolute;inset:22% 5%;box-shadow:0 0 0 999px #0003}.barcode-actions{justify-content:center;display:flex}.barcode-manual{grid-template-columns:auto minmax(0,1fr) auto;align-items:end;gap:10px;display:grid}.barcode-manual>svg{color:var(--muted);align-self:center}.barcode-product{border-top:1px solid var(--line);gap:13px;padding-top:16px;display:grid}.barcode-product-title svg{color:var(--green)}.barcode-product>small{color:var(--muted);display:block}.barcode-evidence{background:var(--surface-alt);border-radius:6px;gap:4px;padding:12px;display:grid}.barcode-evidence span{color:var(--muted);font-size:13px;line-height:1.45}.barcode-grams{max-width:220px}.barcode-grams>div{align-items:center;gap:8px;display:flex}.barcode-grams input{min-width:0}.search-input{background:#fff;border:1px solid #b9c4bc;border-radius:5px;align-items:center;gap:9px;min-height:46px;padding:0 12px;display:flex}.search-input:focus-within{border-color:var(--green);outline:3px solid #146b4921}.search-input input{border:0;outline:0;flex:1;min-height:42px;padding:0}.search-status{color:var(--muted);align-items:center;gap:8px;font-size:14px;display:flex}.ingredient-results{z-index:10;border:1px solid var(--line);max-height:360px;box-shadow:var(--shadow);background:#fff;border-radius:7px;position:absolute;bottom:24px;left:24px;right:24px;overflow-y:auto;transform:translateY(100%)}.ingredient-results button{border:0;border-bottom:1px solid var(--line);width:100%;min-height:62px;color:var(--ink);text-align:left;cursor:pointer;background:#fff;justify-content:space-between;align-items:center;gap:16px;padding:11px 14px;display:flex}.ingredient-results button:last-child{border-bottom:0}.ingredient-results button:hover{background:var(--green-soft)}.ingredient-results button>span{gap:3px;display:grid}.ingredient-results small,.builder-ingredient-name small{color:var(--muted)}.pantry-panel{gap:14px;display:grid}.pantry-heading{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.pantry-heading h2{margin-bottom:5px}.pantry-heading p{max-width:680px;margin-bottom:0}.pantry-heading svg{color:var(--green);flex:none}.pantry-empty{color:var(--muted);background:var(--surface-alt);border:1px dashed #b9c4bc;border-radius:6px;padding:13px}.pantry-list{border:1px solid var(--line);background:var(--line);border-radius:7px;gap:1px;max-height:330px;display:grid;overflow-y:auto}.pantry-list article{background:#fff;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:11px 12px;display:grid}.pantry-list article>div{gap:3px;min-width:0;display:grid}.pantry-list article strong,.pantry-list article small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pantry-list article small{color:var(--muted)}.pantry-picker{min-height:min(560px,100vh - 48px)}.pantry-picker .pantry-list{max-height:min(390px,52vh)}.pantry-page-panel,.pantry-add-panel{gap:18px;display:grid}.pantry-add-panel .section-heading h2,.pantry-add-panel .section-heading p{margin-bottom:0}.pantry-add-methods{border-top:1px solid var(--line);grid-template-columns:minmax(0,1.45fr) minmax(260px,.75fr);gap:0;display:grid}.pantry-add-method{align-content:start;gap:14px;padding:20px 24px 4px 0;display:grid}.pantry-add-method+.pantry-add-method{border-left:1px solid var(--line);padding-left:24px;padding-right:0}.pantry-add-method-heading{align-items:flex-start;gap:11px;display:flex}.pantry-add-method-heading>svg{color:var(--green);flex:none;margin-top:2px}.pantry-add-method-heading h3,.pantry-add-method-heading p{margin:0}.pantry-add-method-heading h3{font-size:18px}.pantry-add-method-heading p{color:var(--muted);margin-top:3px}.pantry-add-results{border:1px solid var(--line);border-radius:7px;max-height:380px;display:grid;overflow-y:auto}.pantry-add-results article{background:#fff;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:11px 12px;display:grid}.pantry-add-results article+article{border-top:1px solid var(--line)}.pantry-add-results article>div{gap:2px;min-width:0;display:grid}.pantry-add-results strong,.pantry-add-results small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pantry-add-results small,.pantry-add-empty{color:var(--muted)}.pantry-add-results .button{min-width:86px}.pantry-add-scan{align-content:start}.pantry-add-scan>.button{width:100%;min-height:48px;margin-top:4px}.pantry-page-toolbar{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:18px;display:grid}.pantry-page-toolbar>span{color:var(--muted);padding-bottom:12px;font-weight:750}.pantry-page-search{max-width:620px}.pantry-category-groups{gap:22px;display:grid}.pantry-category-group{gap:9px;display:grid}.pantry-category-group>header{align-items:center;gap:9px;display:flex}.pantry-category-group>header h2{margin:0;font-size:18px}.pantry-category-group>header span{min-width:25px;height:25px;color:var(--green-dark);background:var(--green-soft);border-radius:999px;place-items:center;padding:0 7px;font-size:12px;font-weight:800;display:grid}.pantry-page-list{border:1px solid var(--line);background:var(--line);border-radius:7px;gap:1px;display:grid;overflow:hidden}.pantry-page-list article{background:#fff;grid-template-columns:minmax(0,1fr) minmax(160px,210px) auto auto;align-items:center;gap:14px;padding:14px 16px;display:grid}.pantry-category-select select{width:100%;min-height:40px;color:var(--ink);background:#fff;border:1px solid #b9c4bc;border-radius:5px;padding:7px 9px}.pantry-page-item-copy{gap:3px;min-width:0;display:grid}.pantry-page-item-copy strong,.pantry-page-item-copy span,.pantry-page-item-copy small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pantry-page-item-copy span,.pantry-page-item-copy small{color:var(--muted)}.pantry-page-item-copy span{font-size:14px}.pantry-page-item-copy small{font-size:12px}.pantry-page-empty{min-height:260px;color:var(--muted);text-align:center;align-content:center;place-items:center;gap:8px;padding:28px;display:grid}.pantry-page-empty svg{color:var(--green)}.pantry-page-empty h2,.pantry-page-empty p{margin:0}.builder-feedback{z-index:20;position:sticky;top:82px;box-shadow:0 8px 24px #1436261f}.empty-builder{text-align:center}.empty-builder h2{margin-bottom:6px}.empty-builder p{margin-bottom:0}.builder-layout{grid-template-columns:minmax(0,1.45fr) minmax(320px,.55fr);align-items:start;gap:18px;display:grid}.builder-side-stack{gap:18px;display:grid;position:sticky;top:96px}.builder-section-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.builder-section-heading h2{margin-bottom:4px}.builder-section-heading p{color:var(--muted);margin:0;font-size:14px}.builder-ingredient-list{border:1px solid var(--line);background:var(--line);border-radius:7px;gap:1px;display:grid;overflow:hidden}.builder-ingredient-list article{background:#fff;grid-template-columns:minmax(210px,1.3fr) minmax(150px,.7fr) minmax(190px,.8fr) auto;align-items:end;gap:12px;min-height:86px;padding:13px;display:grid}.builder-ingredient-list article.just-added{box-shadow:inset 4px 0 0 var(--green);background:#eef8f1}.builder-ingredient-name{align-self:center;gap:4px;display:grid}.ingredient-added-badge{width:-moz-fit-content;width:fit-content;color:var(--green-dark);background:#dcefe3;border-radius:999px;align-items:center;gap:4px;margin-top:3px;padding:4px 7px;font-size:12px;font-weight:800;display:inline-flex}.builder-ingredient-list label{gap:5px;display:grid}.builder-ingredient-list label>span{color:var(--muted);font-size:12px;font-weight:700}.builder-ingredient-list label>div{align-items:center;gap:7px;display:flex}.builder-ingredient-list input,.builder-ingredient-list select{background:#fff;border:1px solid #b9c4bc;border-radius:5px;width:100%;min-height:40px;padding:7px 9px}.builder-ingredient-list label small{color:var(--muted)}.builder-nutrition-grid{border:1px solid var(--line);background:var(--line);border-radius:6px;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.builder-nutrition-grid>div{background:#fff;gap:4px;padding:11px;display:grid}.builder-nutrition-grid span{color:var(--muted);font-size:12px}.builder-nutrition-grid strong{font-size:16px}.builder-nutrition-grid small{color:var(--muted);font-size:11px;line-height:1.35}.builder-nutrition-grid>div.good{box-shadow:inset 3px 0 #2f8755}.builder-nutrition-grid>div.low{box-shadow:inset 3px 0 #d49a21}.builder-nutrition-grid>div.high{box-shadow:inset 3px 0 #c84a42}.evidence-list{flex-wrap:wrap;gap:7px;margin-top:14px;display:flex}.evidence-chip{border-radius:999px;width:-moz-fit-content;width:fit-content;padding:5px 8px;font-size:12px;font-weight:800;display:inline-flex}.evidence-chip.complete{color:var(--green-dark);background:var(--green-soft)}.evidence-chip.partial{color:#765006;background:#fff0c8}.evidence-chip.neutral{color:#536158;background:#edf0ee}.builder-ratio{margin:14px 0 0}.builder-guidance{gap:14px;display:grid}.builder-guidance-heading{align-items:flex-start;gap:10px;display:flex}.builder-guidance-heading>svg{color:#a36a00;flex:none}.builder-guidance-heading h2{margin-bottom:4px;font-size:18px}.builder-guidance-heading p{color:var(--muted);margin:0;font-size:13px}.builder-guidance-list{gap:8px;display:grid}.builder-guidance-list>div{border-radius:6px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:8px;padding:10px;font-size:14px;line-height:1.45;display:grid}.builder-guidance-list .adjust{color:#654608;background:#fff5da}.builder-guidance-list .good{color:var(--green-dark);background:var(--green-soft)}.builder-instructions textarea{resize:vertical}.builder-save{justify-content:space-between;align-items:center;gap:24px;display:flex}.builder-save h2{margin-bottom:6px}.builder-save p{max-width:700px;margin-bottom:0}.builder-save-reasons{color:#8d322d;gap:3px;margin-top:10px;display:grid}.builder-save-reasons small:before{content:"- "}.empty-state,.loading-panel{text-align:center;align-content:center;place-items:center;gap:10px;min-height:180px;display:grid}.loading-panel{grid-template-columns:auto auto;min-height:120px}.spinner{border:3px solid #c9d5cd;border-top-color:var(--green);border-radius:50%;width:22px;height:22px;animation:.8s linear infinite spin}.mobile-only{display:none}.finance-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.admin-user-panel .section-heading h2{align-items:center;gap:8px;display:flex}.admin-user-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.admin-user-summary article{border:1px solid var(--line);background:var(--surface-alt);border-radius:6px;gap:6px;padding:15px 16px;display:grid}.admin-user-summary span{color:var(--muted);align-items:center;gap:5px;font-size:13px;display:flex}.admin-user-summary strong{color:var(--green-dark);font-size:28px;line-height:1}.admin-user-note{color:var(--muted);margin:14px 0 0;font-size:13px}.admin-access-heading{border-top:1px solid var(--line);justify-content:space-between;align-items:end;gap:16px;margin:24px 0 12px;padding-top:20px;display:flex}.admin-access-heading h3,.admin-access-heading p{margin:0}.admin-access-heading h3{font-size:18px}.admin-access-heading p{color:var(--muted);font-size:13px}.finance-currency{border:1px solid var(--line);background:#fff;border-radius:7px;overflow:hidden}.finance-currency-heading{border-bottom:1px solid var(--line);color:var(--green-dark);align-items:center;gap:9px;padding:16px 18px;display:flex}.finance-currency-heading h2{margin:0;font-size:18px}.finance-currency dl{grid-template-columns:repeat(4,minmax(0,1fr));margin:0;display:grid}.finance-currency dl>div{border-right:1px solid var(--line);gap:7px;padding:16px;display:grid}.finance-currency dl>div:last-child{border-right:0}.finance-currency dt{color:var(--muted);align-items:center;gap:6px;font-size:12px;display:flex}.finance-currency dd{margin:0;font-size:18px;font-weight:800}.positive{color:var(--green-dark)}.negative{color:var(--red)}.finance-type{width:-moz-fit-content;width:fit-content}.finance-submit{justify-self:start}.finance-history{padding:0;overflow:hidden}.finance-history>.section-heading{padding:22px 24px}.finance-empty{border-top:1px solid var(--line);min-height:180px;color:var(--muted);text-align:center;align-content:center;place-items:center;gap:7px;display:grid}.finance-table-wrap{border-top:1px solid var(--line);overflow-x:auto}.finance-table{border-collapse:collapse;width:100%;min-width:900px}.finance-table th,.finance-table td{text-align:left;vertical-align:top;border-bottom:1px solid #e7ebe8;padding:13px 15px}.finance-table th{color:var(--muted);background:var(--surface-alt);text-transform:uppercase;font-size:12px}.finance-table tbody tr:last-child td{border-bottom:0}.finance-table td:nth-child(3){gap:3px;max-width:360px;display:grid}.finance-table td small{color:var(--muted);line-height:1.4}.finance-table tr.voided{color:var(--muted);background:#fafbfa}.finance-table tr.voided strong,.finance-table tr.voided .finance-kind{text-decoration:line-through}.finance-kind{text-transform:capitalize;border-radius:5px;padding:4px 7px;font-size:12px;font-weight:800;display:inline-flex}.finance-kind.expense{color:#7b332c;background:var(--red-soft)}.finance-kind.revenue{color:var(--green-dark);background:var(--green-soft)}@media (max-width:1050px){.health-link-grid,.health-progress-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nutrition-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.nutrition-grid.dashboard-nutrition-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.summary-grid,.form-grid.four,.check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.builder-layout{grid-template-columns:1fr}.builder-side-stack{position:static}.builder-ingredient-list article{grid-template-columns:minmax(200px,1fr) minmax(140px,.5fr) minmax(180px,.7fr) auto}.finance-summary{grid-template-columns:1fr}.admin-user-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.research-hero{grid-template-columns:1fr}.grocery-setup{grid-template-columns:minmax(220px,.8fr) minmax(260px,1fr)}.grocery-build{justify-self:start}.calendar-range-toolbar{grid-template-columns:minmax(280px,1fr) auto auto}.calendar-range-title{grid-column:1/-1}}@media (max-width:820px){.desktop-only{display:none!important}.mobile-only{display:inline-flex}.topbar{min-height:calc(64px + env(safe-area-inset-top));padding:calc(10px + env(safe-area-inset-top)) 16px 10px}.brand-logo{width:142px;height:42px}.brand-with-status{gap:6px}.beta-badge{min-height:20px;padding:3px 6px;font-size:10px}.brand-lockup span,.user-email{display:none}.app-grid{min-height:calc(100vh - 64px - env(safe-area-inset-top));grid-template-columns:1fr}.sidebar{z-index:40;top:calc(64px + env(safe-area-inset-top));width:min(300px,88vw);height:auto;padding-bottom:calc(28px + env(safe-area-inset-bottom));border-left:1px solid var(--line);border-right:0;transition:transform .16s;position:fixed;bottom:0;left:auto;right:0;transform:translate(105%);box-shadow:-12px 0 30px #16231c24}.sidebar.open{transform:translate(0)}.sidebar-backdrop{z-index:35;inset:calc(64px + env(safe-area-inset-top)) 0 0;background:#16231c61;border:0;width:100%;position:fixed}.content{padding:26px 18px calc(96px + env(safe-area-inset-bottom))}.bottom-nav{z-index:25;padding-bottom:env(safe-area-inset-bottom);border-top:1px solid var(--line);background:#fff;grid-template-columns:repeat(6,minmax(0,1fr));display:grid;position:fixed;bottom:0;left:0;right:0}.bottom-nav .nav-link{border-radius:0;justify-content:center;gap:4px;min-width:0;min-height:68px;padding:7px 2px;font-size:10px}.bottom-nav .nav-link span{text-overflow:ellipsis;max-width:100%;display:block;overflow:hidden}.bottom-nav .nav-link svg{width:19px}.page-header{display:grid}.page-header h1{font-size:34px}.metric-grid{grid-template-columns:1fr}.metric-card{min-height:132px}.auth-shell{grid-template-columns:1fr}.auth-panel{min-height:100vh;grid-template-columns:1fr;align-content:center;min-height:100dvh}.auth-brand-side{background:var(--surface);border-right:0;padding:28px 24px 12px}.auth-form-column{width:min(560px,100%);padding:18px 24px calc(30px + env(safe-area-inset-bottom))}.auth-brand-logo{width:min(270px,76vw)}.auth-brand-logo .full-brand-tagline{font-size:14px}.auth-copy h1{font-size:34px}.access-code-entry{grid-template-columns:1fr}.access-code-entry .button{width:100%}.install-options{grid-template-columns:1fr}.install-option+.install-option{border-top:1px solid var(--line);border-left:0}.stepper{display:flex;overflow-x:auto}.stepper button{min-width:136px}.option-grid{grid-template-columns:1fr}.budget-preference{grid-template-columns:repeat(2,minmax(0,1fr))}.budget-result-summary{grid-template-columns:1fr}.budget-result-summary p{grid-column:auto}.meal-details{grid-template-columns:1fr}.calendar-action{display:grid}.calendar-check-grid{grid-template-columns:1fr 1fr}.builder-ingredient-list article{grid-template-columns:1fr 1fr auto;align-items:end}.builder-ingredient-name{grid-column:1/-1}.topic-browser,.supplement-layout{grid-template-columns:1fr}.topic-choice-list{border-right:0;border-bottom:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr))}.topic-choice-list button{border-left:0;border-bottom:1px solid var(--line)}.topic-choice-list button.active{box-shadow:inset 4px 0 var(--green)}.supplement-list{border-right:0;border-bottom:1px solid var(--line)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (max-width:600px){.panel{padding:18px}.panel.research-explorer{padding:0}.start-panel{padding:22px;display:grid}.summary-grid,.nutrition-grid,.form-grid,.form-grid.three,.form-grid.four,.check-grid,.nutrition-grid.dashboard-nutrition-grid,.health-progress-grid,.cgm-preview-grid,.cgm-stat-grid,.comparison-grid{grid-template-columns:1fr}.cgm-summary-controls{justify-content:flex-start}.plan-completion-action{grid-template-columns:auto 1fr;align-items:start}.plan-completion-action .completion-date,.plan-completion-action .button{grid-column:1/-1;width:100%}.consistency-stats{grid-template-columns:1fr}.wizard-body{min-height:360px;padding:26px 18px}.wizard-actions{padding:14px}.wizard-actions .button{min-width:105px}.review-list>div{grid-template-columns:1fr;gap:4px}.meal-card-head{display:grid}.meal-card-header-actions{justify-content:flex-start}.meal-card-header-actions .button{flex:auto}.cooking-time-strip>div{padding:11px 9px}.cooking-time-strip span{gap:4px;font-size:11px}.cooking-time-strip strong{font-size:13px}.cooking-guide details.cooking-guide-details>summary{flex-direction:column;align-items:flex-start;gap:3px}.cooking-guide details.cooking-guide-details>summary small{text-align:left}.cooking-schedule-controls{grid-template-columns:1fr 1fr}.cooking-schedule-controls p{grid-column:1/-1}.cooking-step-list dl{grid-template-columns:1fr}.cooking-downtime>div{grid-template-columns:1fr;gap:3px}.day-heading{padding:18px}.nutrition-grid,.family-serving-summary{margin:14px 18px}.family-person-grid,.family-nutrition-grid{grid-template-columns:1fr}.meal-list{padding:0 18px 18px}.calendar-slot{grid-template-columns:1fr;gap:5px}.favorite-guide{grid-template-columns:auto 1fr}.favorite-guide>span{grid-column:2}.calendar-meal{grid-template-columns:1fr auto}.calendar-meal small{grid-column:1}.calendar-toolbar,.calendar-nutrition-head,.calendar-fill-action{align-items:stretch;display:grid}.calendar-day-head{align-items:flex-start}.calendar-day-head .calendar-day-head-actions{justify-items:end;display:grid}.calendar-range-toolbar,.calendar-range-fields{grid-template-columns:1fr}.calendar-range-presets .button{flex:1}.saved-schedule-fields{grid-template-columns:1fr}.saved-schedule-success{flex-wrap:wrap;align-items:flex-start}.saved-schedule-success .button{width:100%}.date-nav{justify-content:space-between}.calendar-check-grid{grid-template-columns:1fr}.plain-link-band{grid-template-columns:auto 1fr}.plain-link-band a{grid-column:2}.builder-ingredient-list article{grid-template-columns:1fr auto}.builder-ingredient-list article label{grid-column:1/-1}.builder-save,.builder-complete-row{display:grid}.builder-complete-row .button{width:100%}.builder-nutrition-grid{grid-template-columns:1fr 1fr}.ingredient-search-row{grid-template-columns:1fr}.ingredient-source-actions{justify-content:flex-start}.ingredient-source-actions .button{flex:220px}.pantry-list article{grid-template-columns:1fr auto}.pantry-list article>div{grid-column:1/-1}.pantry-page-toolbar,.pantry-add-methods{grid-template-columns:1fr}.pantry-add-method,.pantry-add-method+.pantry-add-method{padding:18px 0}.pantry-add-method+.pantry-add-method{border-top:1px solid var(--line);border-left:0}.pantry-page-toolbar>span{padding-bottom:0}.pantry-page-list article{grid-template-columns:minmax(0,1fr) auto}.pantry-category-select{grid-column:1}.pantry-page-list article .evidence-chip{grid-column:1;justify-self:start}.pantry-page-list article .icon-button{grid-area:1/2/span 3}.barcode-modal{place-items:end center;padding:0}.barcode-panel{border-radius:8px 8px 0 0;width:100%;max-height:92vh}.barcode-manual{grid-template-columns:1fr}.barcode-manual>svg{display:none}.legal-footer{display:grid}.legal-footer nav{justify-content:flex-start}.public-topbar .brand-lockup span{display:none}.public-topbar-actions{gap:6px}.public-topbar-actions .button{padding:9px 10px}.legal-emphasis,.danger-zone{grid-template-columns:1fr}.finance-currency dl{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-currency dl>div:nth-child(2){border-right:0}.finance-currency dl>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.rule-grid,.grocery-setup{grid-template-columns:1fr}.grocery-build{width:100%}.grocery-legacy-servings{display:grid}.grocery-sheet{margin:0 -4px}.grocery-sheet-head{gap:8px;padding:18px;display:grid}.grocery-group h3{padding:10px 18px}.grocery-item{min-height:82px;padding:14px 18px}.grocery-item-copy{grid-template-columns:1fr;gap:4px}.grocery-item-copy b{text-align:left}.grocery-item-copy small{grid-column:1}.rule-card{min-height:150px}.evidence-boundary,.research-closing,.supplement-safety{grid-template-columns:1fr}.research-explorer-heading{padding:22px 18px 12px}.research-tabs{width:auto;margin:0 18px 18px}.research-tabs button{flex:100%;justify-content:flex-start}.topic-choice-list,.supplement-list{grid-template-columns:1fr}.research-detail{padding:25px 18px}.research-links>a{align-items:start}.supplement-safety,.supplement-filter-block,.supplement-resources{padding-left:18px;padding-right:18px}.supplement-interests{width:100%}.supplement-interests button{flex:auto}}.starter-journey{border-left:4px solid #2f7d57}.starter-journey-list{gap:.4rem;margin-top:1rem;display:grid}.starter-journey-list a{min-height:2.8rem;color:inherit;border-bottom:1px solid var(--line);grid-template-columns:1.4rem 1fr auto;align-items:center;gap:.65rem;padding:.55rem .7rem;text-decoration:none;display:grid}.starter-journey-list a.complete{color:#256446}.starter-step-dot{border:2px solid #87928b;border-radius:50%;width:.8rem;height:.8rem}.starter-journey-actions{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.feature-discovery{justify-content:space-between;align-items:center;gap:1rem;display:flex}.feature-discovery>div:last-child{align-items:center;gap:.55rem;display:flex}.feature-discovery h2,.feature-discovery p{margin:.2rem 0 0}.daily-check-in summary{cursor:pointer;font-weight:700}.daily-check-in[open] summary{margin-bottom:.75rem}.nutrition-label-entry{border:1px solid var(--line);background:#fff;gap:1rem;padding:1rem;display:grid}.nutrition-label-entry h3,.nutrition-label-entry p{margin:0}.household-upgrade{border-left:4px solid #2f7d57;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;display:grid}.household-upgrade h2,.household-upgrade p{margin:0}.household-upgrade p{color:var(--muted);margin-top:4px}.free-usage{border:1px solid var(--line);background:#fff;grid-template-columns:minmax(0,1fr) minmax(140px,260px) auto;align-items:center;gap:14px;padding:14px 18px;display:grid}.free-usage>div:first-child{gap:2px;display:grid}.free-usage span{color:var(--muted)}.free-usage-track{background:#e4e8e5;border-radius:4px;height:8px;overflow:hidden}.free-usage-track span{background:#2f7d57;height:100%;display:block}.free-usage a{color:#256446;font-weight:700}.pantry-limit-note{border:1px solid var(--line);background:#fff;justify-content:space-between;gap:16px;padding:12px 16px;display:flex}.pantry-limit-note span{color:var(--muted)}.pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.pricing-card{border:1px solid var(--line);background:#fff;align-content:start;gap:20px;padding:24px;display:grid}.pricing-card.featured{border-top:5px solid #2f7d57}.pricing-card h2{margin:4px 0;font-size:2rem}.pricing-card h2 small{color:var(--muted);font-size:1rem;font-weight:600}.pricing-card p{margin:0}.pricing-card ul{gap:10px;margin:0;padding-left:20px;display:grid}.pricing-limit{border-top:1px solid var(--line);color:var(--muted);padding-top:16px}.free-generated-results .meal-card-header-actions>:nth-child(n+2),.free-generated-results .calendar-action,.free-meal-builder .builder-save,.calendar-read-only .calendar-range-presets .danger,.calendar-read-only .calendar-day-head-actions button,.calendar-read-only .calendar-supplement-plan,.calendar-read-only .calendar-meal>.icon-button,.calendar-read-only .slot-add,.calendar-read-only .calendar-fill-action,.free-profile>form~section.panel:not(.household-upgrade){display:none}@media (max-width:680px){.friend-code-form{grid-template-columns:1fr}.friend-code-form .button{width:100%}.feature-discovery{flex-direction:column;align-items:flex-start}.feature-discovery>div:last-child{justify-content:space-between;width:100%}.household-upgrade,.free-usage,.pricing-grid{grid-template-columns:1fr}.household-upgrade .button{width:100%}.pantry-limit-note{flex-direction:column}}
