:root{color-scheme:dark;--bg:#101613;--panel:#1c2520;--line:#303b33;--text:#f1f3ed;--muted:#a3afa6;--lime:#d0f28a;--orange:#edb787;--red:#ffb5ab}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:disabled{opacity:.45;cursor:default}button:focus-visible,a:focus-visible{outline:2px solid var(--lime);outline-offset:4px}button{border:0}a{color:var(--lime)}.app{max-width:760px;margin:auto;padding:0 24px 110px}header{display:flex;align-items:center;justify-content:space-between;padding:24px 0 30px}.brand{font-size:32px;font-weight:750;letter-spacing:-1.5px;text-decoration:none;color:var(--text);display:flex;align-items:center;gap:9px}.brandmark{color:var(--lime);font-size:36px}.branddot{color:var(--lime);margin-left:-9px}.iconbtn{width:44px;height:44px;border-radius:50%;background:transparent;font-size:25px;display:inline-grid;place-items:center;flex-shrink:0}.iconbtn:hover{background:#ffffff0c}.eyebrow{font-size:11px;font-weight:650;letter-spacing:1.8px;color:var(--muted)}h1,h2,h3,p{margin:0}h1{font-size:clamp(26px,5vw,36px);font-weight:550;letter-spacing:-1.2px}.titleline{display:flex;justify-content:space-between;align-items:center;margin:7px 0 20px;gap:12px}.localbadge{font-size:12px;color:var(--muted);border:1px solid var(--line);border-radius:20px;padding:5px 9px;white-space:nowrap}.datebar{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.datepick{position:relative;font-size:16px;font-weight:550;text-align:center}.datepick input{position:absolute;inset:0;width:100%;opacity:0;cursor:pointer}.summary{background:var(--panel);border:1px solid var(--line);border-radius:24px;padding:24px;display:grid;grid-template-columns:1fr 124px;gap:20px}.calnumber{display:flex;flex-direction:column;margin-top:10px}.calnumber>span{font-size:48px;line-height:1.1;letter-spacing:-2px;font-weight:600}.calnumber small{color:var(--muted);font-size:14px;margin-top:4px}.summary p{font-size:14px;margin:10px 0 2px;color:var(--muted)}.textbutton{background:none;color:var(--lime);padding:8px 0;font-size:14px}.calring{width:124px;height:124px;border-radius:50%;background:conic-gradient(var(--lime) 0%,#364237 0);padding:9px;align-self:center}.calring>div{border-radius:50%;background:var(--panel);width:100%;height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column}.calring span{font-size:25px;font-weight:600}.calring small{font-size:12px;color:var(--muted)}.macros{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);padding-top:18px;gap:18px}.macro label{color:var(--muted);font-size:13px}.macro b{display:block;font-size:19px;font-weight:550}.macro i{font-size:12px;color:var(--muted);font-style:normal}.microbar{height:4px;background:#354038;border-radius:4px;margin-top:9px;overflow:hidden}.microbar span{display:block;height:100%;background:var(--lime)}.scanhero{margin:20px 0 12px;width:100%;display:flex;align-items:center;gap:16px;text-align:left;background:var(--lime);color:#182213;padding:20px;border-radius:18px}.scanhero strong{font-size:19px;display:block}.scanhero small{display:block;font-size:13px;margin-top:3px;color:#435432}.scanicon{font-size:37px;line-height:1}.scanarrow{margin-left:auto;font-size:30px}.quickactions{display:flex;gap:12px}.quickactions button{width:50%;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:14px 8px;font-size:20px}.quickactions span{font-size:14px}.sectiontitle{display:flex;align-items:center;justify-content:space-between;margin:28px 0 12px}.sectiontitle h2{font-size:20px;font-weight:550}.meal{border-bottom:1px solid var(--line);padding:16px 0}.mealhead{display:flex;align-items:center;gap:12px}.mealemoji{width:39px;height:39px;background:#ffffff08;border-radius:12px;display:grid;place-items:center;font-size:21px;color:var(--orange)}.mealhead h3{font-size:16px;font-weight:550}.mealhead small{font-size:12px;color:var(--muted)}.mealhead .iconbtn{margin-left:auto;border:1px solid var(--line);font-size:24px;width:36px;height:36px;color:var(--lime)}.emptymeal{color:var(--muted);font-size:14px;margin:8px 0 0 51px}.entry{display:flex;gap:10px;align-items:center;padding:13px 0 0 51px}.entrybutton{padding:0;background:none;text-align:left;flex:1;min-width:0}.entrybutton strong{font-size:14px;font-weight:500;display:block;overflow-wrap:anywhere}.entrybutton small{font-size:12px;color:var(--muted)}.entry>span{font-size:14px}.watercard{display:flex;align-items:center;justify-content:space-between;background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:16px;margin-top:25px}.watercard strong{font-size:15px}.watercard small{display:block;color:var(--muted);font-size:12px;margin-left:29px}.watericon{color:#97c9e8;margin-right:12px}.wateractions{display:flex}.wateractions .iconbtn{color:#97c9e8}.privacyline{font-size:12px;text-align:center;color:var(--muted);margin:24px 0}.bottomnav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:100%;max-width:760px;background:#152019f5;backdrop-filter:blur(20px);border-top:1px solid var(--line);display:flex;justify-content:space-around;padding:10px 8px calc(10px + env(safe-area-inset-bottom));z-index:5}.bottomnav button{background:none;color:var(--muted);font-size:12px;display:flex;flex-direction:column;align-items:center;gap:3px;min-width:70px}.bottomnav span{font-size:23px;height:30px}.bottomnav .active{color:var(--lime)}dialog{background:var(--bg);color:var(--text);border:1px solid var(--line);border-radius:24px;width:min(600px,100%);max-height:90dvh;padding:24px;overflow-y:auto;overscroll-behavior:contain}dialog::backdrop{background:#0009;backdrop-filter:blur(5px)}.sheethead{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:22px}.sheethead h2{font-size:26px;font-weight:550;letter-spacing:-.6px}.sheethead .eyebrow{font-size:10px;margin-bottom:4px}input,select{width:100%;background:var(--panel);border:1px solid #455248;color:var(--text);border-radius:12px;padding:13px;min-height:48px;font-size:16px}input:focus,select:focus{outline:2px solid var(--lime);outline-offset:1px}label.field{display:block;font-size:14px;color:var(--muted);margin:14px 0}.field input,.field select{margin-top:7px}.primary,.secondary,.danger{padding:14px 18px;border-radius:12px;min-height:48px;width:100%;font-weight:600;margin-top:14px}.primary{background:var(--lime);color:#192313}.secondary{background:var(--panel);border:1px solid var(--line)}.danger{background:#442824;color:var(--red)}.hint{font-size:14px;color:var(--muted);margin:12px 0;line-height:1.6}.searchrow{display:flex;gap:8px}.searchrow input{min-width:0}.searchrow button{width:auto;margin:0;white-space:nowrap}.tabs{display:flex;gap:8px;margin:16px 0}.tabs button{background:var(--panel);color:var(--muted);padding:10px 14px;border-radius:25px;font-size:14px}.tabs .selected{background:var(--lime);color:#172012}.product{display:flex;gap:13px;align-items:center;text-align:left;width:100%;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:14px;margin:10px 0}.product img,.foodplaceholder{width:48px;height:54px;object-fit:contain;border-radius:7px;background:white;flex-shrink:0}.foodplaceholder{display:grid;place-items:center;background:#344337;color:var(--lime);font-size:23px}.product>div{min-width:0;flex:1}.product strong{display:block;font-size:15px;font-weight:550}.product small{display:block;color:var(--muted);font-size:12px;margin-top:4px}.product>span{color:var(--lime)}.status{padding:18px;border:1px dashed var(--line);border-radius:14px;margin:14px 0;font-size:14px;color:var(--muted)}.error{color:var(--red)}.camera{position:relative;background:#070a08;border:1px solid var(--line);border-radius:18px;overflow:hidden;aspect-ratio:4/3}.camera video{width:100%;height:100%;object-fit:cover}.camera:after{content:'';position:absolute;inset:25% 12%;border:2px solid var(--lime);border-radius:12px;pointer-events:none}.camera p{position:absolute;inset:0;display:grid;place-items:center;color:var(--muted);padding:30px;text-align:center}.divider{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:12px;margin:22px 0}.divider:before,.divider:after{content:'';height:1px;background:var(--line);flex:1}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.nutritiongrid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:18px 0}.nutritiongrid>div{padding:12px;background:var(--panel);border-radius:10px}.nutritiongrid small{display:block;color:var(--muted);font-size:12px}.nutritiongrid b{font-size:18px;font-weight:550}.producttitle{display:flex;gap:16px;align-items:center}.producttitle img{width:70px;height:80px;object-fit:contain;background:white;border-radius:10px}.producttitle h3{font-size:22px;line-height:1.2}.producttitle p{color:var(--muted);font-size:14px;margin-top:6px}.row{display:flex;gap:10px;align-items:center}.row>*{flex:1}.source{font-size:12px;color:var(--muted);margin:18px 0;overflow-wrap:anywhere}.tiny{font-size:12px}.notice{background:#263421;border-left:3px solid var(--lime);padding:14px;font-size:14px;border-radius:0 10px 10px 0;margin:14px 0}.settingblock{border-top:1px solid var(--line);padding:18px 0}.settingblock h3{font-size:17px}.settingblock p{font-size:14px;color:var(--muted);margin:8px 0}.recipeitem{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:10px 0;font-size:14px}#toast{position:fixed;bottom:100px;left:50%;transform:translateX(-50%);padding:13px 22px;background:var(--lime);color:#182213;border-radius:12px;max-width:90%;z-index:30;box-shadow:0 4px 30px #0006;display:none;font-size:14px}body.modalopen{overflow:hidden}@media(min-width:700px){.app{padding-top:15px}.summary{padding:30px;grid-template-columns:1fr 144px}.calring{width:144px;height:144px}.calnumber>span{font-size:60px}#meals{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}}@media(max-width:480px){.app{padding-left:18px;padding-right:18px}header{padding:16px 0 23px}.localbadge{display:none}.summary{padding:20px;gap:15px;grid-template-columns:1fr 110px}.calring{width:110px;height:110px}.calnumber>span{font-size:44px}dialog{max-height:94dvh;margin:auto 0 0;width:100%;max-width:100%;border-radius:24px 24px 0 0;padding:22px 20px calc(24px + env(safe-area-inset-bottom))}.entry{padding-left:0}.scanhero{padding:18px}.eyebrow{font-size:10px}.calring small{font-size:11px}}@media(prefers-reduced-motion:no-preference){button{transition:background .15s,transform .15s}button:active{transform:scale(.98)}dialog[open]{animation:appear .18s ease-out}@keyframes appear{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}}
/* Plate: soft pink stationery, quiet surfaces, precise typography. */
:root{color-scheme:light;--bg:#fff9fb;--panel:#ffffff;--line:#eadde3;--text:#392c34;--muted:#796c75;--lime:#8e3e65;--orange:#b65b7b;--red:#a3273e}body{background:#f7eef2}.app{background:var(--bg);min-height:100vh}.brandmark,.branddot{color:#b85a80}.summary{background:#fbe4ed;border-color:#f2d2df;border-radius:20px}.summary .eyebrow{color:#875e72}.calring{background:conic-gradient(#aa5279 0%,#efcada 0)}.calring>div{background:#fbe4ed}.microbar{background:#eaceDA}.microbar span{background:#a64c74}.scanhero{background:#edb8cd;color:#452d39;border-radius:15px}.scanhero small{color:#684856}.scanicon{font-size:40px}.bottomnav{background:#fff9fbf5}.iconbtn:hover{background:#edb8cd33}.mealemoji{background:#faeaf0}.foodplaceholder{background:#faeaf0;color:#aa5279}.primary{background:#863c60;color:#fff}.notice{background:#faeaf0}.danger{background:#fbe5e7}.camera{background:#282128}.camera p{color:#efdae4}.camera:after{border-color:#f4bad2}.status{background:#fff}.watericon,.wateractions .iconbtn{color:#87618b}#toast{background:#4b2e3d;color:#fff}.summary .textbutton{color:#7a3856}.privacyline{color:#84727e}.quickactions button{background:#fff}.calring span{color:#713d55}
.trackergrid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.trackercard{background:white;border:1px solid var(--line);border-radius:15px;text-align:left;padding:17px}.trackercard>span{display:block;font-size:14px;color:var(--muted)}.trackercard strong{font-size:23px;display:block;margin-top:6px;font-weight:550}.trackercard small{font-size:12px;font-weight:400;color:var(--muted)}.diarytools{display:flex;justify-content:space-between;margin:16px 0;gap:12px}.diarytools button{background:none;font-size:14px;color:var(--lime);padding:8px}.daycomplete{border:1px dashed #d8becb;border-radius:12px;padding:13px;width:100%;background:transparent;font-size:14px;color:#875571}.daycomplete.iscomplete{background:#f6e3ec;border-style:solid}.undo{background:transparent;color:inherit;text-decoration:underline;padding:0 0 0 14px;font-weight:600}.multifood{display:flex;gap:8px;align-items:center;border-bottom:1px solid var(--line);padding:14px 0}.multifood label{display:flex;gap:10px;align-items:center;flex:1;font-size:14px}.multifood input[type=checkbox]{width:20px;height:20px;min-height:20px;accent-color:#863c60;flex-shrink:0}.multifood input[type=number]{width:78px;padding:9px}.multifood small{width:20px}textarea{width:100%;font:inherit;background:var(--panel);border:1px solid #455248;border-radius:12px;padding:13px;color:var(--text);margin-top:7px;resize:vertical}.reporthead{display:flex;justify-content:space-between;align-items:center}.reporthead h3{font-size:20px}.reportsub{font-size:16px;margin-top:24px}.barchart{display:flex;gap:5px;height:160px;margin:22px 0 0}.chartcolumn{flex:1;min-width:0;display:flex;flex-direction:column;text-align:center}.chartcolumn small{font-size:11px;height:19px}.charttrack{height:115px;display:flex;align-items:flex-end;justify-content:center}.charttrack>span{width:75%;background:#a35379;border-radius:5px 5px 0 0}.charttrack .partial{background:#e8bdcf}.chartcolumn label{font-size:11px;color:var(--muted);padding-top:6px}.weightchart{background:#fbeaf1;border-radius:15px;padding:16px}.weightchart svg{width:100%;display:block}.weightchart small{font-size:12px}.ocrtext{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px}details{font-size:14px;margin:12px 0}#packetFields[hidden]{display:none}.tabs{flex-wrap:wrap}.source a{color:#7a3856}
.brand{max-width:calc(100% - 54px)}.brand img{width:290px;max-width:100%;height:auto;display:block}header{padding:12px 0 20px}.brand img{mix-blend-mode:multiply}@media(max-width:480px){.brand img{width:260px}header{padding:10px 0 18px}}
@font-face{font-family:Fredoka;src:url('vendor/fredoka.woff2') format('woff2');font-style:normal;font-weight:300 700;font-display:swap}@font-face{font-family:Geist;src:url('vendor/geist.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}:root{--bg:#fffaf6;--text:#4b101a;--muted:#79515a;--line:#4b101a2e;--lime:#8b3447;--panel:#fffdfb}body{font-family:Geist,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;background:#f6dada}.summary{background:#fce6e8;border-color:#f1ced2}.calring>div{background:#fce6e8}.scanhero{background:#fbc1c6;color:#4b101a}.scanhero small{color:#79515a}.bottomnav{background:#fffaf6f5}.brand img{width:310px}.brandstory{background:#fce6e8;border:1px solid var(--line);border-radius:15px;padding:20px;margin-bottom:20px}.brandstory h3{font-family:Fredoka,sans-serif;font-size:25px}.brandstory>span,.brandstory small{font-size:12px;color:var(--muted)}.brandstory p{font-size:14px;line-height:1.7;margin:15px 0}h1,h2,h3,.scanhero strong{font-family:Fredoka,Geist,sans-serif;font-weight:500}.calnumber>span{font-family:Fredoka,sans-serif;font-weight:500}.primary{background:#4b101a}.foodplaceholder,.mealemoji{background:#fce6e8}.trackercard{background:#fffdfb}.brand img{mix-blend-mode:multiply}.brand{max-width:calc(100% - 46px)}.titleline h1{font-size:32px;letter-spacing:-.5px}@media(max-width:480px){.brand img{width:285px}.titleline h1{font-size:27px}}
.ocrconfirm{display:flex;align-items:flex-start;gap:10px;font-size:14px;margin:16px 0}.ocrconfirm input{width:20px;height:20px;min-height:20px;accent-color:#863c60;flex-shrink:0}
.brand{display:flex;flex-direction:column;align-items:center;gap:5px}.brand-logo{display:block;width:310px;max-width:100%;height:82px;overflow:hidden}.brand-logo img{width:310px;max-width:100%;height:auto}.brand-tagline{display:block;width:310px;max-width:100%;color:#4b101a;font-family:Fredoka,Geist,sans-serif;font-size:clamp(12px,3.2vw,15px);font-weight:450;line-height:1.15;letter-spacing:0;text-align:center}.brand-tagline strong{font-weight:650}@media(max-width:480px){.brand-logo{width:285px;height:75px}.brand-logo img{width:285px}.brand-tagline{width:285px}}
.app>header{position:relative;display:block;padding:18px 0 30px}.app>header .iconbtn{position:absolute;right:0;top:16px;z-index:2;background:#fffaf6cc}.brand{width:100%;max-width:none;padding:0 18px}.brand-logo{width:100%;height:112px}.brand-logo img{width:100%}.brand-tagline{width:100%;max-width:520px;font-size:clamp(16px,4.4vw,20px);line-height:1.2;margin-top:4px}@media(max-width:480px){.app>header{padding:12px 0 27px}.app>header .iconbtn{right:-5px;top:10px}.brand{padding:0}.brand-logo{width:100%;height:102px}.brand-logo img{width:100%}.brand-tagline{width:100%;font-size:17px;padding:0 12px}}
.app>header{padding:14px 0 24px}.brand{width:calc(100% + 36px);margin-left:-18px;padding:0 22px;gap:2px}.brand-logo{width:100%;height:auto;overflow:visible}.brand-logo img{width:100%;height:auto;mix-blend-mode:normal}.brand-tagline{width:100%;max-width:none;margin:0;color:#79515a;font-family:Geist,sans-serif;font-size:13px;font-weight:500;line-height:1.2;letter-spacing:.15px}.app>header .iconbtn{right:-7px;top:6px;background:#fffaf6e6}@media(max-width:480px){.app>header{padding:10px 0 22px}.brand{width:calc(100% + 36px);margin-left:-18px;padding:0 8px}.brand-logo{width:100%;height:auto}.brand-logo img{width:100%;height:auto}.brand-tagline{width:100%;padding:0 30px;font-size:10px;white-space:nowrap}.app>header .iconbtn{right:-9px;top:2px}}
