@font-face{font-family:DM Sans;font-style:normal;font-weight:100 1000;font-display:swap;src:url(/_next/static/media/7ab938503e4547a1-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:DM Sans;font-style:normal;font-weight:100 1000;font-display:swap;src:url(/_next/static/media/13971731025ec697-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:DM Sans Fallback;src:local("Arial");ascent-override:94.90%;descent-override:29.66%;line-gap-override:0.00%;size-adjust:104.53%}.__className_0d7163{font-family:DM Sans,DM Sans Fallback;font-style:normal}.__variable_0d7163{--font-sans:"DM Sans","DM Sans Fallback"}@font-face{font-family:"Instrument Serif";font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/35f3de0ebb1cfc70-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:"Instrument Serif";font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/e6099e249fd938cc-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:"Instrument Serif Fallback";src:local("Times New Roman");ascent-override:117.94%;descent-override:36.93%;line-gap-override:0.00%;size-adjust:83.94%}.__className_315a98{font-family:"Instrument Serif","Instrument Serif Fallback";font-weight:400;font-style:normal}.__variable_315a98{--font-serif:"Instrument Serif","Instrument Serif Fallback"}

/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer theme{:host,:root{--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-serif:ui-serif,Georgia,Cambria,"Times New Roman",Times,serif;--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components,utilities;:root{--ink:#17352b;--forest:#163b2d;--cream:#f6f5ed;--paper:#fffef9;--lime:#d8f05b;--coral:#ff775f;--muted:#68776f;--line:#dfe2d7}*{box-sizing:border-box}body,html{background:var(--cream);min-height:100%;color:var(--ink);font-family:var(--font-sans),sans-serif;margin:0}button,input{font:inherit}button{color:inherit}.app-shell{grid-template-columns:260px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--forest);color:#fff;z-index:10;flex-direction:column;height:100vh;padding:32px 24px 24px;display:flex;position:sticky;top:0}.logo{grid-template-rows:20px 16px;grid-template-columns:38px auto;align-items:center;column-gap:11px;display:grid}.logo>span{background:var(--lime);width:38px;height:38px;color:var(--forest);font:28px/1 var(--font-serif);border-radius:10px 10px 14px;grid-row:1/3;place-items:center;display:grid;transform:rotate(-3deg)}.logo strong{letter-spacing:-.5px;font-size:20px}.logo small{color:#a8b8b0;letter-spacing:.09em;text-transform:uppercase;font-size:10px}.nav-list{flex-direction:column;gap:6px;margin-top:50px;display:flex}.sidebar-spacer{flex:1}.nav-button{color:#b9c5bf;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:12px;align-items:center;gap:13px;width:100%;padding:13px 14px;font-size:14px;display:flex}.nav-button svg{width:19px}.nav-button span{flex:1}.nav-button b{color:var(--forest);background:var(--lime);border-radius:20px;padding:2px 7px;font-size:11px}.nav-button.active{color:#fff;background:#285343}.target-card{color:#fff;text-align:left;cursor:pointer;background:#214839;border:1px solid #3d6254;border-radius:15px;align-items:center;gap:10px;padding:14px;display:flex}.target-card>span:nth-child(2){flex:1}.target-card small,.target-card strong{display:block}.target-card small{color:#a8b8b0;margin-bottom:4px;font-size:10px}.target-card strong{font-size:12px}.target-icon{width:33px;height:33px;color:var(--forest);background:var(--lime);border-radius:10px;place-items:center;display:grid}.free-note{color:#839c91;text-align:center;margin:17px 0 0;font-size:11px}.free-note span{background:var(--lime);border-radius:50%;width:6px;height:6px;margin-right:5px;display:inline-block}.main-content{min-width:0}.topbar{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:8;background:#f9f8f2cc;justify-content:flex-end;align-items:center;height:74px;padding:0 4vw;display:flex;position:sticky;top:0}.mobile-logo{display:none}.location{grid-template-rows:20px 17px;grid-template-columns:24px auto;align-items:center;margin-right:auto;font-size:13px;display:grid}.location svg{grid-row:1/3}.location small{color:var(--muted);font-size:11px}.filter-button,.settings-button{border:1px solid var(--line);background:var(--paper);cursor:pointer;border-radius:12px;align-items:center;gap:8px;padding:10px 14px;font-size:13px;font-weight:600;display:flex}.content-wrap{max-width:1240px;margin:0 auto;padding:46px 4vw 70px}.hero{background:var(--forest);color:#fff;border-radius:24px;justify-content:space-between;align-items:center;padding:40px 46px;display:flex;position:relative;overflow:hidden}.hero:after{content:"";border:1px solid #ffffff12;border-radius:50%;width:320px;height:320px;position:absolute;top:-100px;right:-60px;box-shadow:0 0 0 40px #ffffff06,0 0 0 80px #ffffff04}.hero-copy{z-index:1;max-width:690px}.eyebrow{color:#6b7f76;letter-spacing:.12em;align-items:center;gap:7px;margin:0 0 13px;font-size:10px;font-weight:800;display:flex}.hero .eyebrow{color:var(--lime)}.hero h1,.log-summary h1{font:46px/1.03 var(--font-serif);letter-spacing:-1px;margin:0 0 13px}.hero h1 em{color:var(--lime);font-weight:400}.hero-copy>p:last-child{color:#bdcbc5;max-width:590px;margin:0;font-size:14px;line-height:1.6}.target-ring{--score:90%;background:conic-gradient(var(--lime) var(--score),#ffffff1c 0);z-index:1;border-radius:50%;place-items:center;width:116px;height:116px;margin-right:12px;display:grid;position:relative}.target-ring:after{content:"";background:var(--forest);border-radius:50%;position:absolute;inset:8px}.target-ring div{z-index:1;text-align:center}.target-ring small,.target-ring strong{display:block}.target-ring strong{font:36px/1 var(--font-serif)}.target-ring small{color:#aebfb7;text-transform:uppercase;letter-spacing:.08em;font-size:9px}.toolbar{grid-template-columns:1fr auto;gap:12px;margin:28px 0 18px;display:grid}.search-box{background:var(--paper);border:1px solid var(--line);color:var(--muted);border-radius:14px;align-items:center;padding:0 15px;display:flex}.search-box input{width:100%;color:var(--ink);background:0 0;border:0;outline:0;padding:13px 11px;font-size:14px}.search-box button{cursor:pointer;background:0 0;border:0}.filter-button span{background:var(--forest);color:#fff;border-radius:50%;place-items:center;min-width:20px;height:20px;font-size:10px;display:grid}.restaurant-scroll{scrollbar-width:none;gap:9px;padding:2px 0 12px;display:flex;overflow:auto}.restaurant-pill{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:30px;flex:none;align-items:center;gap:8px;padding:6px 13px 6px 7px;font-size:12px;font-weight:600;display:flex}.restaurant-pill span{background:#e7e9df;border-radius:50%;place-items:center;width:28px;height:28px;display:grid}.restaurant-pill.active{background:var(--forest);color:#fff;border-color:var(--forest)}.results-heading{justify-content:space-between;align-items:end;margin:23px 0 16px;display:flex}.results-heading h2{margin:0;font-size:20px}.results-heading p{color:var(--muted);margin:4px 0 0;font-size:12px}.score-key{color:var(--muted);align-items:center;gap:6px;font-size:11px;display:flex}.meal-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.meal-card{background:var(--paper);border:1px solid var(--line);border-radius:18px;min-width:0;padding:18px;transition:transform .2s,box-shadow .2s;position:relative}.meal-card:hover{transform:translateY(-2px);box-shadow:0 13px 30px #17352b0c}.meal-card.featured{border-color:#9caf48;box-shadow:inset 0 0 0 1px #d8f05b}.best-ribbon{background:var(--lime);color:var(--forest);letter-spacing:.1em;border-radius:5px;padding:4px 9px;font-size:9px;font-weight:900;position:absolute;top:-9px;left:18px}.card-top{justify-content:space-between}.card-top,.restaurant-badge{align-items:center;display:flex}.restaurant-badge{cursor:pointer;background:0 0;border:0;gap:8px;padding:0}.restaurant-badge span{border-radius:9px;place-items:center;width:30px;height:30px;display:grid}.restaurant-badge small{font-size:11px;font-weight:700}.save-button{color:#9ca9a3;cursor:pointer;background:0 0;border:0;padding:5px}.save-button.saved{color:var(--coral)}.card-main{text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:55px 1fr;gap:14px;width:100%;min-height:118px;padding:19px 0 13px;display:grid}.score{width:52px;height:52px;color:var(--forest);background:#edf5c9;border-radius:50%;justify-content:center;align-items:baseline;padding-top:14px;display:flex}.score strong{font:24px/1 var(--font-serif)}.score span{font-size:8px}.card-main h3{font:21px/1.1 var(--font-serif);margin:1px 0 7px}.card-main p{color:var(--muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:11px;line-height:1.45;display:-webkit-box;overflow:hidden}.detail-macros,.macro-row{background:#f1f1e9;border-radius:11px;grid-template-columns:repeat(4,1fr);padding:9px 5px;display:grid}.macro{text-align:center;border-right:1px solid #d9ddd3}.macro:last-child{border:0}.macro small,.macro strong{display:block}.macro strong{font-size:12px}.macro small{color:var(--muted);text-transform:uppercase;margin-top:2px;font-size:8px}.macro.accent strong{color:#607b00}.reason-row{gap:7px;height:34px;overflow:hidden}.reason-row,.reason-row span{align-items:center;display:flex}.reason-row span{color:#547161;flex:none;gap:3px;font-size:9px}.reason-row svg{color:#6e8900}.log-button{border:0;border-top:1px solid var(--line);cursor:pointer;background:0 0;justify-content:space-between;align-items:center;width:100%;padding:13px 3px 0;font-size:11px;font-weight:800;display:flex}.log-button.logged{color:#668300;justify-content:center;gap:7px}.disclaimer{color:#88948e;text-align:center;margin:27px 0 0;font-size:10px}.bottom-nav{display:none}.overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:30;background:#0a1d16aa;justify-content:flex-end;animation:fade .2s;display:flex;position:fixed;inset:0}.panel{background:var(--paper);width:min(470px,100%);height:100%;padding:30px 34px;animation:slide .25s;overflow:auto;box-shadow:-20px 0 50px #07150f22}.panel-header{justify-content:space-between;align-items:start;display:flex}.panel-header h2{font:34px/1 var(--font-serif);margin:0}.panel-header>button{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:50%;place-items:center;width:38px;height:38px;display:grid}.detail-description,.panel-intro{color:var(--muted);font-size:13px;line-height:1.5}fieldset{border:0;margin:28px 0;padding:0}legend{margin-bottom:11px;font-size:12px;font-weight:800}.segment{background:#edede5;border-radius:11px;grid-template-columns:repeat(3,1fr);padding:4px;display:grid}.segment button{cursor:pointer;text-transform:capitalize;background:0 0;border:0;border-radius:8px;padding:10px 5px;font-size:11px}.segment button.active{background:var(--paper);font-weight:800;box-shadow:0 2px 8px #17352b14}.target-inputs{grid-template-columns:repeat(2,1fr);gap:9px;display:grid}.target-inputs label{border:1px solid var(--line);border-radius:10px;padding:9px 11px}.target-inputs small{color:var(--muted);font-size:9px;display:block}.target-inputs span{align-items:baseline;display:flex}.target-inputs input{background:0 0;border:0;outline:0;width:100%;padding:4px 0 0;font-weight:800}.target-inputs b{color:var(--muted);font-size:9px}.choice-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.chip-grid button,.choice-grid button{border:1px solid var(--line);text-transform:capitalize;cursor:pointer;background:0 0;border-radius:9px;justify-content:center;align-items:center;gap:5px;padding:10px;font-size:11px;display:flex}.chip-grid button.active,.choice-grid button.active{background:#edf5c9;border-color:#a6bc46;font-weight:800}.chip-grid{flex-wrap:wrap;gap:7px;display:flex}.chip-grid button{padding:7px 10px}.primary-button,.secondary-button{cursor:pointer;border:0;border-radius:11px;justify-content:center;align-items:center;gap:8px;padding:13px 18px;font-size:12px;font-weight:800;display:flex}.primary-button{background:var(--forest);color:#fff;width:100%}.secondary-button{border:1px solid var(--line);background:0 0}.detail-panel h2{font:38px/1.08 var(--font-serif);margin:24px 0 10px}.detail-score{align-items:center;gap:12px;margin-top:34px;display:flex}.detail-score>strong{background:var(--lime);width:64px;height:64px;font:30px var(--font-serif);border-radius:50%;place-items:center;display:grid}.detail-score span>*{display:block}.detail-score span b{font-size:14px}.detail-score span small{color:var(--muted);margin-top:3px;font-size:10px}.detail-macros{margin:25px 0;padding:14px 5px}.detail-section{border-top:1px solid var(--line);padding:18px 0}.detail-section h3{margin:0 0 10px;font-size:12px}.detail-section p{color:var(--muted);align-items:center;gap:7px;margin:7px 0;font-size:11px;display:flex}.detail-section a{color:#507500;font-size:11px;font-weight:700}.detail-actions{background:var(--paper);grid-template-columns:1fr 2fr;gap:9px;padding:15px 0 30px;display:grid;position:sticky;bottom:-30px}.log-summary{background:#e7efc4;border-radius:22px;grid-template-columns:1fr 1fr;align-items:center;gap:40px;padding:30px 36px;display:grid}.log-summary h1{margin-bottom:8px;font-size:38px}.log-summary>div>p:last-child{color:var(--muted);font-size:12px}.log-numbers{grid-template-columns:1fr 1fr;gap:12px;display:grid}.macro-stat span{justify-content:space-between;align-items:baseline;display:flex}.macro-stat small{color:var(--muted);font-size:9px}.macro-stat strong{font-size:11px}.macro-stat i{color:var(--muted);font-style:normal;font-weight:400}.macro-stat>div{background:#ffffff90;border-radius:5px;height:5px;margin-top:6px;overflow:hidden}.macro-stat b{background:var(--forest);border-radius:5px;height:100%;display:block}.empty-state{text-align:center;background:var(--paper);border:1px dashed #c8cec4;border-radius:18px;padding:55px 20px}.empty-state>span{font:48px var(--font-serif)}.empty-state h3{font:25px var(--font-serif);margin:8px 0}.empty-state p{color:var(--muted);font-size:12px}.empty-state button{background:var(--forest);color:#fff;cursor:pointer;border:0;border-radius:9px;padding:10px 15px}@keyframes fade{0%{opacity:0}}@keyframes slide{0%{transform:translate(40px)}}@media (max-width:1050px){.meal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.app-shell{padding-bottom:66px;display:block}.sidebar{display:none}.topbar{justify-content:space-between;height:63px;padding:0 17px}.mobile-logo{display:block}.mobile-logo .logo{grid-template-rows:16px 13px;grid-template-columns:32px auto}.mobile-logo .logo>span{width:32px;height:32px;font-size:23px}.mobile-logo .logo strong{font-size:17px}.mobile-logo .logo small{font-size:7px}.location,.settings-button span{display:none}.settings-button{padding:9px}.content-wrap{padding:19px 14px 35px}.hero{border-radius:18px;padding:28px 24px}.hero h1{font-size:35px}.hero-copy>p:last-child{padding-right:65px;font-size:12px}.target-ring{width:73px;height:73px;margin:0;position:absolute;bottom:19px;right:10px}.target-ring:after{inset:6px}.target-ring strong{font-size:25px}.target-ring small{font-size:7px}.toolbar{grid-template-columns:1fr auto;margin-top:16px}.filter-button{padding:0 12px}.filter-button:not(span){font-size:0}.filter-button svg{margin:0}.restaurant-scroll{margin-right:-14px}.results-heading{margin-top:17px}.score-key{display:none}.meal-grid{grid-template-columns:1fr}.meal-card{padding:17px}.card-main{min-height:103px}.disclaimer{padding:0 12px}.bottom-nav{background:var(--paper);border-top:1px solid var(--line);z-index:20;height:67px;padding:6px 12px env(safe-area-inset-bottom);grid-template-columns:repeat(3,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.bottom-nav .nav-button{color:#89958f;flex-direction:column;justify-content:center;gap:2px;padding:4px;font-size:9px}.bottom-nav .nav-button svg{width:20px}.bottom-nav .nav-button.active{color:var(--forest);background:0 0}.bottom-nav .nav-button.active svg{color:#698600}.bottom-nav .nav-button b{display:none}.panel{padding:23px 20px}.log-summary{grid-template-columns:1fr;gap:20px;padding:24px}.detail-panel h2,.log-summary h1{font-size:33px}}