:root{--bg:#f7f9f6;--card:#ffffff;--ink:#17211c;--muted:#64716a;--line:#dce6dd;--accent:#2f6b4f;--accent-strong:#24513c;--accent-soft:#e4f0e8;--warm:#b75a35;--warm-soft:#f7e6dc;--blue:#315d8c;--blue-soft:#e7eff8;--good:#2f7d4f}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased}.wrap{width:100%;max-width:760px;margin:0 auto;padding:40px 20px 80px}.homewrap{max-width:1120px;padding-top:22px}.appbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px}.brandlink{color:var(--accent);text-decoration:none}.toplinks{display:flex;align-items:center;gap:10px;font-size:.9rem;font-weight:700}.toplinks a{color:var(--muted);text-decoration:none;border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 12px}.toplinks a:hover{color:var(--accent);border-color:var(--accent)}header h1{font-size:1.9rem;margin:0 0 6px;letter-spacing:-.02em}header p{margin:0;color:var(--muted);line-height:1.5}.brandline{display:inline-flex;align-items:center;gap:10px;margin-bottom:14px;color:var(--accent);font-size:.82rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.brandline img{width:42px;height:42px;object-fit:contain}.appbar .brandline{margin-bottom:0}.todayhero{min-width:0;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);grid-gap:22px;gap:22px;align-items:stretch;margin-bottom:22px}.todaycopy{min-width:0;min-height:330px;display:flex;flex-direction:column;justify-content:center;padding:22px 0}.eyebrow{color:var(--accent);font-size:.78rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.todaycopy h1{max-width:680px;margin:10px 0 12px;font-size:clamp(2.15rem,5vw,4.35rem);line-height:.98;letter-spacing:0}.agentstrip p,.todaycopy p{max-width:620px;margin:0;color:var(--muted);font-size:1.04rem;line-height:1.55}.heroactions{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}.actionbutton{min-width:0;min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);padding:0 15px;font:inherit;font-weight:750;text-decoration:none;text-align:center;cursor:pointer}.actionbutton:hover{border-color:var(--accent);color:var(--accent)}.actionbutton svg,.buttonicon{width:18px;height:18px;flex:0 0 auto}.primaryaction{background:var(--accent);border-color:var(--accent);color:#fff}.primaryaction:hover{background:var(--accent-strong);color:#fff}.flowsteps{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.flowsteps span{border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);padding:5px 9px;font-size:.78rem;font-weight:750}.todaypanel{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:20px;box-shadow:0 16px 50px rgba(23,33,28,.08)}.paneltop{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:22px}.paneltop strong{display:block;margin-top:5px;word-break:break-word}.panelkicker{color:var(--muted);font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.meterlist{display:grid;grid-gap:18px;gap:18px}.meterrow>div:first-child{display:flex;justify-content:space-between;gap:16px;margin-bottom:8px;font-size:.9rem}.meterrow span{color:var(--muted)}.meterrow strong{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.meterbar{height:9px;overflow:hidden;border-radius:999px;background:#edf2ed}.meterbar span{display:block;height:100%;border-radius:inherit;background:var(--warm)}.proteinbar span{background:var(--blue)}.macrotiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:9px;gap:9px;margin-top:22px}.macrotiles span{min-height:66px;display:flex;flex-direction:column;justify-content:center;border:1px solid var(--line);border-radius:8px;background:#fbfdfb;padding:10px;color:var(--muted);font-size:.82rem}.macrotiles b{margin-top:3px;color:var(--ink);font-size:1.1rem}.card{min-width:0;background:var(--card);border:1px solid var(--line);border-radius:8px;padding:22px;margin-top:24px}.accountcard{background:linear-gradient(180deg,#fbfdfb,#fff)}.resulthead,.uploadhead{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px}.resulthead h2,.uploadhead h2{margin:6px 0 5px;font-size:1.28rem;letter-spacing:-.01em}.resulthead p,.uploadhead p{margin:0;color:var(--muted);line-height:1.45;font-size:.92rem}.trialhead{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.trialhead h2{margin:6px 0 5px;font-size:1.28rem;letter-spacing:-.01em}.trialhead p{margin:0;color:var(--muted);line-height:1.45}.trialbadge{display:inline-flex;width:-moz-fit-content;width:fit-content;border:1px solid var(--accent-soft);background:#fff;color:var(--accent);border-radius:999px;padding:4px 9px;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.triallink{color:var(--accent);font-size:.84rem;font-weight:700;white-space:nowrap;text-decoration:none}.triallink:hover{text-decoration:underline}.inlineform{margin-top:18px}.quicktrialform{margin-top:16px}.inlinecontrols{display:grid;grid-template-columns:1fr 180px;grid-gap:10px;gap:10px}.inlinecontrols button.primary{margin-top:0;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:8px}.accountstatus{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:18px}.accountstatus,.fieldhint{color:var(--muted);font-size:.86rem}.fieldhint{margin:-2px 0 12px;line-height:1.45}label.field{display:block;font-size:.82rem;font-weight:600;color:var(--muted);margin-bottom:6px;text-transform:uppercase;letter-spacing:.04em}input[type=email],input[type=password],input[type=text]{width:100%;padding:11px 13px;border:1px solid var(--line);border-radius:9px;font-size:.95rem;background:#fff;color:var(--ink)}input:focus{outline:2px solid var(--accent-soft);border-color:var(--accent)}.dropzone:focus-visible,a:focus-visible,button:focus-visible,label[role=button]:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.row{margin-bottom:16px}.dropzone{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;border:2px dashed var(--line);border-radius:8px;padding:30px;text-align:center;cursor:pointer;transition:border-color .15s,background .15s;background:#fdfcfa;color:var(--ink);font:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none}.dropzone.drag,.dropzone:hover{border-color:var(--accent);background:var(--accent-soft)}.dropzone p{margin:6px 0 0;color:var(--muted);font-size:.9rem}.dropicon{width:24px;height:24px;margin-bottom:9px;color:var(--accent)}.fileinput{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap;opacity:0;pointer-events:none}.preview{margin-top:16px;border-radius:8px;max-height:320px;width:100%;object-fit:contain;background:#f0ece4}.samples{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap}.samples button{border:1px solid var(--line);background:#fff;border-radius:8px;padding:6px 10px;font-size:.82rem;cursor:pointer;color:var(--muted)}.samples button:hover{border-color:var(--accent);color:var(--accent)}button.primary{width:100%;margin-top:18px;padding:13px;background:var(--accent);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer}button.primary:disabled{background:#dbe7df;color:#284637;cursor:not-allowed;opacity:1}button.secondary{width:100%;margin-top:12px;padding:11px;background:#fff;color:var(--accent);border:1px solid var(--accent-soft);border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer}button.secondary:hover{border-color:var(--accent)}button.secondary:disabled{background:#f8f4ee;border-color:#e8ded5;color:#82695b;cursor:not-allowed;opacity:1}.tokenbox{display:grid;grid-template-columns:minmax(0,1fr) 42px 42px;grid-gap:8px;gap:8px;align-items:center}.tokenbox input{min-width:0}.iconcontrol{width:42px;height:42px;margin:0;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--muted);cursor:pointer}.iconcontrol:hover:not(:disabled){border-color:var(--accent);color:var(--accent);background:#fffaf6}.iconcontrol:disabled{opacity:.45;cursor:not-allowed}.iconcontrol svg{width:18px;height:18px;stroke-width:2}.creditnote{margin:14px 0 0;color:var(--muted);font-size:.86rem}.demoauth{margin:4px 0 16px;border:1px solid var(--line);border-radius:8px;background:#fbfdfb;padding:10px 12px}.demoauth summary{color:var(--accent);cursor:pointer;font-size:.9rem;font-weight:700}.demoauth .row{margin:12px 0 0}.error{margin-top:16px;padding:12px 14px;background:#fbe9e6;border:1px solid #f0c4bb;border-radius:8px;color:#9a3a26;font-size:.9rem}.total{display:flex;align-items:baseline;gap:10px;margin-bottom:4px}.total .kcal{font-size:2.2rem;font-weight:700;letter-spacing:-.02em}.total .unit{color:var(--muted)}.resultcard{scroll-margin-top:16px}.resulthead .total{flex:0 0 auto;margin:0;border:1px solid var(--line);border-radius:8px;background:#fbfdfb;padding:10px 12px}.resulthead .total .kcal{font-size:1.8rem}.macros{display:flex;gap:16px;flex-wrap:wrap;color:var(--muted);font-size:.88rem;margin-bottom:18px}.macros b{color:var(--ink)}.mobileeditlist{display:none}.tablewrap{overflow-x:auto;margin-inline:-4px;padding-inline:4px}table{width:100%;border-collapse:collapse;font-size:.92rem}td,th{text-align:left;padding:9px 8px;border-bottom:1px solid var(--line)}th{font-size:.74rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}td.num,th.num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}th.metric{width:72px;min-width:72px}td.foodcell{min-width:170px}.ingredientfield{display:block;margin-top:7px}.ingredientfield span{display:block;margin:0 0 4px;color:var(--muted);font-size:.68rem;font-weight:750;letter-spacing:.04em;text-transform:uppercase}.ingredientedit{width:100%;min-height:46px;padding:7px 8px;border:1px solid transparent;border-radius:7px;background:#fbfaf7;color:var(--ink);font:inherit;font-size:.84rem;line-height:1.35;resize:vertical}.ingredientedit:hover{border-color:var(--line)}.ingredientedit:focus{outline:none;border-color:var(--accent);background:#fff}.editcard{border:1px solid var(--line);border-radius:8px;background:#fff;padding:12px}.editcardtop{display:grid;grid-template-columns:minmax(0,1fr) 34px;grid-gap:8px;gap:8px;align-items:start}.editcardtop>div{min-width:0}.foodnameinput{font-weight:700}.basispill{display:inline-flex;max-width:100%;margin-top:6px;padding:3px 8px;border:1px solid var(--accent-soft);border-radius:999px;background:#f3fbf6;color:var(--accent);font-size:.72rem;font-weight:750;line-height:1.25;overflow-wrap:anywhere}.metricgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px;margin-top:10px}.metricgrid label{min-width:0}.editcardactions>span,.metricgrid label span{display:block;margin:0 0 4px;color:var(--muted);font-size:.68rem;font-weight:750;letter-spacing:.04em;text-transform:uppercase}.editcardactions{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:10px}.conf{font-size:.72rem;padding:2px 7px;border-radius:20px;background:var(--accent-soft);color:var(--accent)}.conf.high{background:#e3f1e8;color:var(--good)}.conf.low{background:#f3efe6;color:var(--muted)}.notes{margin-top:16px;padding:12px 14px;background:#fbf7ee;border:1px solid var(--line);border-radius:9px;font-size:.88rem;color:#6b6151;line-height:1.5}input.cell{width:100%;padding:7px 8px;border:1px solid transparent;border-radius:7px;font-size:.92rem;background:#fbfaf7;color:var(--ink)}input.cell:hover{border-color:var(--line)}input.cell:focus{outline:none;border-color:var(--accent);background:#fff}input.cell.num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.iconbtn{border:none;background:transparent;color:var(--muted);font-size:1.3rem;line-height:1;cursor:pointer;padding:2px 6px;border-radius:6px}.iconbtn:hover{background:#fbe9e6;color:var(--accent)}.rate{display:flex;gap:4px}.thumb{border:1px solid var(--line);background:#fff;border-radius:7px;padding:3px 6px;font-size:.82rem;line-height:1;cursor:pointer;filter:grayscale(1);opacity:.55;transition:opacity .12s,filter .12s,border-color .12s,background .12s}.thumb:hover{opacity:.9;filter:grayscale(.3)}.thumb.on{opacity:1;filter:grayscale(0)}.thumb.on.up{border-color:#bfe0cb;background:#e3f1e8}.thumb.on.down{border-color:#f0c4bb;background:#fbe9e6}.addrow{margin-top:10px;border:1px dashed var(--line);background:#fff;color:var(--muted);border-radius:8px;padding:8px 12px;font-size:.85rem;cursor:pointer}.addrow:hover{border-color:var(--accent);color:var(--accent)}textarea.notesedit{width:100%;min-height:70px;padding:11px 13px;border:1px solid var(--line);border-radius:9px;font-size:.92rem;font-family:inherit;resize:vertical;background:#fff;color:var(--ink);line-height:1.5}textarea.notesedit:focus{outline:2px solid var(--accent-soft);border-color:var(--accent)}.thanks{margin-top:18px;padding:13px 15px;background:#e3f1e8;border:1px solid #bfe0cb;border-radius:8px;color:var(--good);font-size:.92rem;font-weight:500}.agentstrip{display:grid;grid-template-columns:minmax(0,.95fr) minmax(320px,1.05fr);grid-gap:20px;gap:20px;align-items:center;margin-top:24px;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.agentstrip h2{margin:7px 0 8px;font-size:1.45rem;letter-spacing:0}.promptgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px}.promptgrid span{min-height:104px;display:flex;flex-direction:column;gap:10px;justify-content:center;border:1px solid var(--line);border-radius:8px;background:#fff;padding:14px;color:var(--ink);font-size:.9rem;line-height:1.35}.promptgrid svg{width:20px;height:20px;color:var(--accent)}.meta{margin-top:14px;font-size:.78rem}.meta,footer{color:var(--muted)}footer{margin-top:36px;font-size:.8rem;line-height:1.6}footer a{color:var(--accent)}.spin{display:inline-block;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}@media (max-width:640px){.homewrap{padding:16px 14px 64px}.appbar{gap:8px;margin-bottom:16px}.appbar .brandline{min-width:0}.appbar .brandline span{overflow:hidden;text-overflow:ellipsis}.toplinks{flex:1 1 auto;justify-content:flex-end;gap:6px;font-size:.82rem;min-width:0}.toplinks a{min-width:0;padding:7px 9px;white-space:nowrap}.todayhero{width:100%;display:flex;flex-direction:column;gap:12px;margin-bottom:14px}.todaycopy{width:100%;min-width:0;min-height:0;padding:2px 0 0}.todaycopy h1{max-width:100%;margin-top:7px;font-size:2.12rem;line-height:1.03;overflow-wrap:break-word}.agentstrip p,.dropzone p,.resulthead p,.todaycopy p,.uploadhead p{font-size:.96rem;overflow-wrap:break-word}.heroactions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:16px}.heroactions .actionbutton:nth-child(n+3){grid-column:1/-1}.actionbutton{width:100%;min-height:48px;padding-inline:10px;line-height:1.18;overflow-wrap:anywhere;white-space:normal}.flowsteps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:6px;gap:6px}.flowsteps span{min-width:0;overflow:hidden;padding:6px 5px;text-align:center;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem}.todaypanel.emptyestimate{display:none}.todaypanel{padding:16px}.paneltop{flex-direction:column;margin-bottom:18px}.macrotiles{grid-template-columns:1fr 1fr 1fr}.macrotiles span{min-height:58px;padding:8px}.card{margin-top:16px;padding:16px}.resulthead,.trialhead,.uploadhead{flex-direction:column;gap:10px}.resulthead>div,.trialhead>div,.uploadhead>div{min-width:0;width:100%}.uploadhead{margin-bottom:12px}.resulthead h2,.uploadhead h2{font-size:1.15rem}.uploadhead .creditpill{align-self:flex-start}.dropzone{min-width:0;overflow:hidden;min-height:142px;padding:22px 16px}.dropzone p,.dropzone strong{max-width:100%}.samples{flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px}.samples button{flex:0 0 auto;min-height:36px}.preview{max-height:260px}.analyzebutton{z-index:4}.analyzebutton.isready{position:-webkit-sticky;position:sticky;bottom:10px;box-shadow:0 10px 28px rgba(23,33,28,.18)}.resultcard{scroll-margin-top:8px}.resulthead .total{width:100%;justify-content:space-between}.macros{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;gap:8px;margin-bottom:12px}.macros span{border:1px solid var(--line);border-radius:8px;background:#fbfdfb;padding:8px}.desktopedit{display:none}.mobileeditlist{display:grid;grid-gap:10px;gap:10px}.ingredientedit{min-height:56px}.editcardactions .rate{gap:7px}.thumb{min-width:38px;min-height:34px;font-size:.95rem}.agentstrip{padding:18px 0}.agentstrip,.promptgrid{grid-template-columns:1fr}.promptgrid span{min-height:72px}.inlinecontrols{grid-template-columns:1fr}.tokenbox{grid-template-columns:minmax(0,1fr) 40px 40px;gap:6px}.iconcontrol{width:40px;height:40px}}.docnav{display:flex;justify-content:space-between;gap:12px;margin-bottom:24px;font-size:.88rem}.docnav a{color:var(--accent);text-decoration:none}.docnav a:hover{text-decoration:underline}.doctoc{position:-webkit-sticky;position:sticky;top:0;z-index:2;display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 22px;padding:10px 0 14px;background:var(--bg);border-bottom:1px solid var(--line)}.doctoc a{border:1px solid var(--line);border-radius:999px;padding:6px 10px;background:#fff;color:var(--muted);text-decoration:none;font-size:.82rem;font-weight:600}.doctoc a:hover{border-color:var(--accent);color:var(--accent)}.doc{line-height:1.6;color:var(--ink)}.doc h1{font-size:1.9rem;letter-spacing:-.02em;margin:0 0 8px}.doc h2{font-size:1.25rem;margin:36px 0 12px;padding-bottom:6px;border-bottom:1px solid var(--line);scroll-margin-top:74px}.doc h3{font-size:1.02rem;margin:24px 0 8px}.doc p{margin:12px 0}.doc a{color:var(--accent)}.doc ol,.doc ul{padding-left:22px}.doc li{margin:4px 0}.doc hr{border:none;border-top:1px solid var(--line);margin:32px 0}.doc blockquote{margin:16px 0;padding:8px 14px;border-left:3px solid var(--accent-soft);background:#fbf7ee;color:#6b6151}.doc code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.86em;background:#f3efe6;padding:1px 5px;border-radius:5px}.doc pre{background:#1f1d1a;color:#f4f1ea;padding:42px 16px 14px;border-radius:10px;overflow-x:auto;font-size:.84rem;line-height:1.5}.doc pre code{background:none;padding:0;color:inherit;font-size:inherit}.codeblock{position:relative;margin:16px 0}.copycode{position:absolute;top:8px;right:8px;z-index:1;border:1px solid rgba(244,241,234,.26);border-radius:7px;padding:5px 9px;background:rgba(255,255,255,.1);color:#f4f1ea;font-size:.76rem;font-weight:700;cursor:pointer}.copycode:hover{background:rgba(255,255,255,.18)}.doc table{width:100%;border-collapse:collapse;margin:16px 0;font-size:.88rem;display:block;overflow-x:auto}.doc td,.doc th{border:1px solid var(--line);padding:7px 10px;text-align:left;vertical-align:top}.doc th{background:#fbf7ee;font-weight:600}@media (max-width:640px){.doctoc{flex-wrap:nowrap;overflow-x:auto;padding-bottom:12px}.doctoc a{flex:0 0 auto}}.accountbar{display:flex;justify-content:space-between;gap:16px;align-items:center}.accountbar p{margin:3px 0 0;color:var(--muted);font-size:.86rem}.creditpill{border:1px solid #bfe0cb;background:#e3f1e8;color:var(--good);border-radius:999px;padding:6px 10px;font-weight:700;white-space:nowrap}.pricinggrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:14px;gap:14px;margin-top:24px}.pricecard{background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px}.pricecard h2{font-size:1rem;margin:0 0 8px}.price{font-size:1.7rem;font-weight:800;letter-spacing:-.02em}.pricecard p{color:var(--muted);font-size:.9rem;line-height:1.45;min-height:40px}.pricehint{min-height:0!important;margin:12px 0 0;font-size:.78rem!important}@media (max-width:720px){.pricinggrid{grid-template-columns:1fr}.accountbar{align-items:flex-start;flex-direction:column}}