:root{color:#1c1915;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#f3efe6;font-family:Iowan Old Style,Palatino,Palatino Linotype,Georgia,serif}*{box-sizing:border-box}body{background:radial-gradient(1200px 500px at 50% -10%,#efe6d2 0%,#0000 60%),#f3efe6;min-height:100vh;margin:0}#root{min-height:100vh}.screen{width:min(100%,28rem);padding:calc(1.5rem + env(safe-area-inset-top)) 1.25rem calc(2rem + env(safe-area-inset-bottom));margin:0 auto}.eyebrow{color:#1f4d3a;letter-spacing:.14em;text-transform:uppercase;margin:0 0 .75rem;font-family:Avenir Next,Segoe UI,sans-serif;font-size:.78rem;font-weight:700}h1{letter-spacing:-.03em;margin:0;font-size:2.4rem;font-weight:600;line-height:1.05}.lede{margin:1rem 0 0;font-size:1.15rem;line-height:1.45}.points{margin:1.5rem 0 0;padding:0;list-style:none}.points li{border-top:1px solid #ddd4c4;margin:0;padding:.9rem 0;font-family:Avenir Next,Segoe UI,sans-serif;font-size:1rem;line-height:1.4}.points li:last-child{border-bottom:1px solid #ddd4c4}.status{color:#5c564c;margin:1.5rem 0 0;font-family:Avenir Next,Segoe UI,sans-serif;font-size:.92rem}.account{margin-top:1.5rem}.account .status{margin:0 0 .85rem}.account .notice{margin-top:.75rem}.stack{flex-direction:column;gap:.85rem;margin-top:1.25rem;display:flex}.field{flex-direction:column;gap:.35rem;font-family:Avenir Next,Segoe UI,sans-serif;font-size:.95rem;font-weight:600;display:flex}.field input{min-height:48px;color:inherit;background:#fffdf8;border:1px solid #cfc6b6;border-radius:12px;padding:.65rem .8rem;font:400 1.05rem Avenir Next,Segoe UI,sans-serif}.field input.code-input{letter-spacing:.35em;text-align:center;font-size:1.8rem}.button{color:#f6f1e6;background:#1f4d3a;border:0;border-radius:12px;justify-content:center;align-items:center;width:100%;min-height:48px;margin-top:.35rem;padding:.75rem 1rem;font:600 1.05rem Avenir Next,Segoe UI,sans-serif;display:flex}.button.secondary{color:#1f4d3a;background:0 0;border:1px solid #1f4d3a}.button:disabled{opacity:.55}.or{color:#5c564c;text-align:center;margin:1rem 0 0;font-family:Avenir Next,Segoe UI,sans-serif}.links{flex-direction:column;align-items:flex-start;gap:.15rem;margin-top:.75rem;display:flex}.linkish{color:#1f4d3a;text-underline-offset:.18em;background:0 0;border:0;min-height:44px;padding:0;font:600 1rem Avenir Next,Segoe UI,sans-serif;text-decoration:underline}.notice{color:#7a2e24;margin:0;font-family:Avenir Next,Segoe UI,sans-serif;font-size:.98rem;line-height:1.35}.facts{margin:1.25rem 0 0}.facts div{border-top:1px solid #ddd4c4;grid-template-columns:8.5rem 1fr;gap:.35rem;padding:.45rem 0;font-family:Avenir Next,Segoe UI,sans-serif;font-size:.92rem;display:grid}.facts dt,.facts dd{margin:0}.facts dt{color:#5c564c}.facts dd{overflow-wrap:anywhere}.check{border-top:1px solid #ddd4c4;margin-top:1.75rem;padding-top:1.15rem}.check h2{letter-spacing:0;margin:0;font-family:Avenir Next,Segoe UI,sans-serif;font-size:1.15rem;font-weight:650;line-height:1.2}.check-head{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.verdict{flex-shrink:0;gap:.4rem;display:flex}.chip{color:#1f4d3a;background:0 0;border:1px solid #1f4d3a;border-radius:999px;min-height:36px;padding:.25rem .7rem;font:600 .85rem Avenir Next,Segoe UI,sans-serif}.chip[aria-pressed=true]{color:#f6f1e6;background:#1f4d3a}.hint,.meta,.result{color:#5c564c;margin:.7rem 0 0;font-family:Avenir Next,Segoe UI,sans-serif;font-size:.95rem;line-height:1.4}.result{color:#1c1915}.field textarea{min-height:7.5rem;color:inherit;resize:vertical;background:#fffdf8;border:1px solid #cfc6b6;border-radius:12px;padding:.75rem .8rem;font:400 1.05rem Avenir Next,Segoe UI,sans-serif}.file-button{position:relative;overflow:hidden}.file-button input{opacity:0;position:absolute;inset:0}.preview{object-fit:contain;background:#fffdf8;border-radius:12px;width:100%;max-height:16rem;margin-top:.75rem;display:block}.field select{min-height:48px;color:inherit;background:#fffdf8;border:1px solid #cfc6b6;border-radius:12px;padding:.65rem .8rem;font:400 1.05rem Avenir Next,Segoe UI,sans-serif}.hits{margin:.25rem 0 0;padding:0;list-style:none}.food-hit{width:100%;min-height:48px;color:inherit;text-align:left;background:0 0;border:0;border-top:1px solid #ddd4c4;flex-direction:column;align-items:flex-start;gap:.15rem;margin:0;padding:.75rem .15rem;font:600 1rem Avenir Next,Segoe UI,sans-serif;display:flex}.hits li:last-child .food-hit{border-bottom:1px solid #ddd4c4}.food-hit[aria-pressed=true]{background:#fffdf8}.food-hit small{color:#5c564c;letter-spacing:.06em;text-transform:uppercase;font-size:.78rem;font-weight:700}.intake{margin-top:.35rem}.quiet{color:#5c564c;margin:.85rem 0 0;font-family:Avenir Next,Segoe UI,sans-serif;font-size:.92rem;line-height:1.4}.meal-block{flex-direction:column;gap:.85rem;margin-top:.35rem;display:flex}.meal-block h2{margin:.4rem 0 0}.log-list{margin:0;padding:0;list-style:none}.log-row{border-top:1px solid #ddd4c4;justify-content:space-between;align-items:flex-start;gap:.75rem;padding:.75rem 0;display:flex}.log-list li:last-child .log-row{border-bottom:1px solid #ddd4c4}.log-row p{margin:.2rem 0 0}.log-row .linkish{flex:none}.update-banner{z-index:2;left:.75rem;right:.75rem;bottom:calc(.75rem + env(safe-area-inset-bottom));color:#f6f1e6;background:#1f4d3a;border:0;border-radius:12px;min-height:48px;padding:.75rem 1rem;font:600 1rem Avenir Next,Segoe UI,sans-serif;position:fixed}.summary{color:#1c1915;white-space:pre-wrap;overflow-wrap:anywhere;background:#fffdf8;border:1px solid #ddd4c4;border-radius:12px;margin:0;padding:.8rem;font:400 .82rem/1.45 ui-monospace,SF Mono,Menlo,Consolas,monospace;overflow-x:auto}.dashboard{--dashboard-tab-reserve:0px;--dashboard-ink:#1c1c1e;--dashboard-muted:#8e8e93;--kcal-ring-track:#ececef;--kcal-ring-value:#2f6fed;--macro-bar-track:#ececef;--macro-protein:#ef6d4e;--macro-fat:#e6b325;--macro-carbs:#3cba6a;width:min(100%,28rem);min-height:100dvh;padding:calc(.35rem + env(safe-area-inset-top)) calc(1.15rem + env(safe-area-inset-right)) calc(1.25rem + var(--dashboard-tab-reserve) + env(safe-area-inset-bottom)) calc(1.15rem + env(safe-area-inset-left));color:#1c1c1e;background:#fff;margin:0 auto;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Avenir Next,Segoe UI,sans-serif}.dashboard h1{letter-spacing:-.04em;margin:.15rem 0 0;font-family:inherit;font-size:2rem;font-weight:700;line-height:1.05}.dashboard-focus{letter-spacing:-.03em;margin:.85rem 0 0;font-size:1.35rem;font-weight:700;line-height:1.2}.day-nav{grid-template-columns:2.75rem minmax(0,1fr) 2.75rem;align-items:center;margin:0 -.35rem .85rem;display:grid}.day-heading{color:#8e8e93;letter-spacing:.08em;text-align:center;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:600;line-height:1.3}.day-step{color:#1c1c1e;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;width:2.75rem;height:2.75rem;padding:0;display:flex}.chevron{width:1.35rem;height:1.35rem}.today-link{margin-top:.35rem}.dashboard .linkish{color:#1c1c1e}.macro-panel{margin-top:1.35rem}.macro-panel .quiet,.macro-panel .notice{margin:0 0 .85rem}.macro-hero{grid-template-columns:minmax(0,1fr) 9.75rem minmax(0,1fr);align-items:center;column-gap:.15rem;display:grid}.macro-side{text-align:center;margin:0}.macro-side strong{letter-spacing:-.03em;font-size:1.25rem;font-weight:700;line-height:1.1;display:block}.macro-side span{color:#8e8e93;margin-top:.2rem;font-size:.72rem;font-weight:500;line-height:1.25;display:block}.kcal-ring-wrap,.kcal-ring-button{width:9.75rem;height:9.75rem;color:inherit;font:inherit;background:0 0;border:0;margin:0 auto;padding:0;position:relative}.target-link{color:inherit;font:inherit;text-align:center;background:0 0;border:0;min-height:2.75rem;margin:0;padding:.35rem .15rem}.target-link strong{letter-spacing:-.03em;font-size:1.25rem;font-weight:700;line-height:1.1;display:block}.target-link span{color:var(--dashboard-muted);text-underline-offset:.16em;margin-top:.2rem;font-size:.72rem;font-weight:500;line-height:1.25;text-decoration:underline;display:block}.kcal-ring{width:100%;height:100%;display:block}.kcal-ring-track,.kcal-ring-value{fill:none;stroke-width:10px}.kcal-ring-track{stroke:var(--kcal-ring-track)}.kcal-ring-value{stroke:var(--kcal-ring-value);stroke-linecap:round}.kcal-center{text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:18%}.kcal-center strong{letter-spacing:-.04em;font-size:1.7rem;font-weight:700;line-height:1}.kcal-center strong.kcal-word{letter-spacing:-.02em;font-size:.95rem;font-weight:650;line-height:1.15}.kcal-center span{color:#8e8e93;margin-top:.28rem;font-size:.72rem;line-height:1.2}.kcal-center em{color:#8e8e93;margin-top:.15rem;font-size:.68rem;font-style:normal;font-weight:600}.macro-bars{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-top:1.75rem;display:grid}.macro-bars h3{color:#3a3a3c;text-align:center;margin:0 0 .45rem;font-size:.95rem;font-weight:600}.macro-bars p{text-align:center;margin:.45rem 0 0;font-size:.82rem;font-weight:600}.macro-note{color:#8e8e93;min-height:1rem;font-size:.68rem;font-weight:500}.macro-bar{width:100%;height:.45rem;display:block}.macro-bar-track{fill:var(--macro-bar-track)}.tone-protein .macro-bar-fill{fill:var(--macro-protein)}.tone-fat .macro-bar-fill{fill:var(--macro-fat)}.tone-carbs .macro-bar-fill{fill:var(--macro-carbs)}.macro-hero.is-over .kcal-center em,.macro-side.is-over span,.macro-note.is-over{color:var(--dashboard-ink);font-weight:700}.macro-toggle{justify-content:center;gap:.35rem;margin-top:1.15rem;display:flex}.macro-toggle button{color:#1c1c1e;background:0 0;border:0;border-radius:999px;min-height:2.75rem;padding:.55rem 1.15rem;font:600 1rem inherit}.macro-toggle button[aria-pressed=true]{color:#fff;background:#111}.day-meals{margin-top:1.5rem}.day-meals ul{margin:0;padding:0;list-style:none}.day-meals li{padding:.85rem 0 0}.day-meals h3{margin:0;font-size:1rem;font-weight:700}.day-meals p{color:#3a3a3c;margin:.25rem 0 0;font-size:.88rem;line-height:1.35}.day-meals li ul{margin-top:.35rem}.day-meals li li{color:#8e8e93;padding:.2rem 0 0;font-size:.85rem}.dashboard-actions{border-top:1px solid #ececef;flex-direction:column;align-items:flex-start;gap:.35rem;margin-top:1.75rem;padding-top:1.25rem;display:flex}.dashboard-primary,.dashboard-secondary{color:#fff;background:#111;border:0;border-radius:999px;width:100%;min-height:3rem;margin-bottom:.85rem;padding:.75rem 1rem;font:600 1.05rem inherit}.dashboard-secondary{color:#111;background:0 0;border:1px solid #111}.dashboard-primary:disabled,.dashboard-secondary:disabled{opacity:.55}.dashboard-actions .account{margin-top:.35rem}.dashboard-actions .status{margin:0 0 .35rem}.targets-screen h1{margin-bottom:.35rem}.targets-screen .linkish{margin:.2rem 0 .85rem}.estimate-notice,.floor-flag,.targets-screen .hint{color:var(--dashboard-muted);margin:.85rem 0 0;font-size:.92rem;line-height:1.4}.floor-flag{background:var(--macro-bar-track);color:var(--dashboard-ink);border-radius:12px;padding:.85rem .9rem}.estimate-card{background:var(--macro-bar-track);border-radius:16px;margin-top:1.15rem;padding:.95rem .95rem .8rem}.estimate-card h2,.targets-screen h2{margin:0;font-size:1.05rem;font-weight:700}.estimate-lines{margin:.7rem 0 0}.estimate-lines div{border-top:1px solid #e1e1e6;justify-content:space-between;gap:.75rem;padding:.4rem 0;font-size:.98rem;display:flex}.estimate-lines dt,.estimate-lines dd{margin:0}.estimate-lines dd{font-weight:700}.targets-screen .field,.targets-screen .field input,.targets-screen .field select,.targets-screen .choice-set,.targets-screen .ack{font-family:inherit}.targets-screen form,.targets-screen .stack,.targets-screen .field,.targets-screen .split-fields,.targets-screen .age-row,.targets-screen .field{min-width:0;max-width:100%}.targets-screen .field input,.targets-screen .field select{box-sizing:border-box;width:100%;min-width:0;max-width:100%;font-size:1rem;display:block}.age-row{grid-template-columns:minmax(0,1fr) auto auto;align-items:end;column-gap:.45rem;width:100%;display:grid}.age-or{height:48px;color:var(--dashboard-muted);letter-spacing:.04em;align-items:center;margin:0;font-size:.78rem;font-weight:700;display:flex}.targets-screen .field select{min-height:48px;color:inherit;background:#fff;border:1px solid #cfc6b6;border-radius:12px;padding:.65rem .8rem}.targets-screen .age-row .field:last-child{width:max-content}.targets-screen .age-row select{width:4.75rem;min-width:4.75rem;max-width:4.75rem;padding-left:.35rem;padding-right:.15rem}.targets-screen input[type=date]{appearance:none;box-sizing:border-box;text-align:left;width:100%;min-width:0;max-width:100%;margin:0;display:block}.targets-screen input[type=date]::-webkit-datetime-edit{text-align:left;width:100%;min-width:0;margin:0;padding:0;display:inline-block}.targets-screen input[type=date]::-webkit-date-and-time-value{text-align:left;width:100%;min-width:0;margin:0;padding:0;display:inline-block}.split-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.75rem;width:100%;display:grid}.choice-set{border:0;margin:.35rem 0 0;padding:0}.choice-set legend{margin-bottom:.35rem;font-size:.95rem;font-weight:600}.choice-set label,.ack{align-items:center;gap:.7rem;min-height:48px;font-size:1rem;font-weight:600;display:flex}.choice-set input,.ack input{width:1.25rem;height:1.25rem;margin:0}.ack{align-items:flex-start;margin-top:.75rem;font-weight:500}.targets-screen .stack{margin-top:1.1rem}.targets-screen .notice{margin-top:.85rem}
