*{box-sizing:border-box} :root{--green:#176b52;--mint:#e7f4ee;--bg:#f5f7f5;--ink:#1b2923;--muted:#7a8981;--line:#e8ede9}
body{margin:0;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;padding-bottom:88px}
.topbar{padding:18px 20px 10px;display:flex;justify-content:space-between;align-items:center;background:#fff}.eyebrow{font-size:9px;letter-spacing:1.5px;color:var(--muted);font-weight:800}h1{margin:3px 0;font-size:27px;letter-spacing:-1px}h1 span{color:var(--green)}button{font:inherit;border:0;cursor:pointer}.iconbtn{background:var(--mint);color:var(--green);border-radius:14px;width:42px;height:42px;font-size:21px}
main{padding:12px 16px 22px;max-width:650px;margin:auto}.date-line{display:flex;justify-content:space-between;align-items:center;text-align:center;margin:4px 0 14px}.date-line button{background:white;border:1px solid var(--line);border-radius:12px;width:38px;height:38px;font-size:23px;color:var(--green)}.date-line b,.date-line small{display:block}.date-line small{color:var(--muted);font-size:12px;margin-top:3px}
.card{background:#fff;border:1px solid var(--line);border-radius:21px;padding:17px;box-shadow:0 5px 18px #142c1b08}.hero{background:linear-gradient(145deg,#fff,#f3faf6)}.hero-head{display:flex;justify-content:space-between;align-items:center}.muted,small{color:var(--muted)}.muted{font-size:13px}.cal-number{display:flex;align-items:baseline;gap:5px;margin-top:4px}.cal-number strong{font-size:36px;letter-spacing:-1.5px}.cal-number span{font-size:13px;color:var(--muted)}.ring{width:100px;height:100px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--green) 0deg,#e9efeb 0deg);position:relative}.ring:before{content:"";position:absolute;inset:8px;background:#f8fcf9;border-radius:50%}.ring div{position:relative;text-align:center}.ring b{display:block;font-size:17px}.ring small{font-size:9px}.progress{height:7px;border-radius:10px;background:#e9efeb;margin:17px 0 18px;overflow:hidden}.progress i,.mini i{display:block;height:100%;background:var(--green);border-radius:10px;width:0}.macro-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.macro-grid>div{position:relative;padding-left:12px}.macro-grid b,.macro-grid small{display:block}.macro-grid b{font-size:15px;margin:3px 0}.macro-grid small{font-size:10px}.dot{position:absolute;width:7px;height:7px;border-radius:50%;left:0;top:5px}.protein{background:#3984d6}.carbs{background:#e5a33d}.fat{background:#a16bd0}.mini{height:4px;background:#edf0ee;border-radius:8px;margin-top:8px}.mini i{background:#3984d6}.macro-grid>div:nth-child(2) .mini i{background:#e5a33d}.macro-grid>div:nth-child(3) .mini i{background:#a16bd0}
.section-title{display:flex;justify-content:space-between;align-items:center;margin:22px 2px 10px}.section-title h2{font-size:18px;margin:0}.textbtn{color:var(--green);font-weight:750;background:transparent}.meal{background:#fff;border:1px solid var(--line);border-radius:17px;margin-bottom:9px;overflow:hidden}.meal-head{display:flex;align-items:center;padding:13px 14px;gap:10px}.meal-emoji{width:36px;height:36px;border-radius:12px;background:var(--mint);display:grid;place-items:center;font-size:18px}.meal-name{flex:1}.meal-name b{display:block;font-size:14px}.meal-name small{font-size:11px}.meal-kcal{font-size:13px;font-weight:750}.addmeal{background:transparent;color:var(--green);font-size:20px;padding:5px}.food-row{border-top:1px solid var(--line);padding:10px 14px 10px 60px;display:flex;justify-content:space-between;gap:8px;font-size:12px}.food-row small{display:block;margin-top:3px}.delete{color:#b75a50;background:none;font-size:16px}.water-card{display:flex;justify-content:space-between;align-items:center;margin-top:16px}.water-card b,.water-card small{display:block}.water-card small{font-size:11px;margin-top:4px}.water-actions{display:flex;align-items:center;gap:12px}.water-actions button{width:30px;height:30px;border-radius:10px;background:var(--mint);color:var(--green);font-size:19px}.water-actions span{font-weight:800}.tool-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.tool{text-align:left;display:grid;gap:5px;padding:15px}.tool span{font-size:23px}.tool b{font-size:13px}.tool small{font-size:10px}.footnote{font-size:10px;color:var(--muted);line-height:1.5;margin:18px 3px}.bottomnav{position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid var(--line);display:flex;justify-content:space-around;padding:9px 4px calc(9px + env(safe-area-inset-bottom));z-index:4}.bottomnav button{background:none;color:#87938c;font-size:21px;display:grid;justify-items:center;gap:2px;min-width:55px}.bottomnav small{font-size:9px}.bottomnav .active{color:var(--green);font-weight:800}
.modal{display:none;position:fixed;inset:0;background:#10251d66;z-index:10;align-items:flex-end}.modal.show{display:flex}.sheet{background:#f8faf8;border-radius:24px 24px 0 0;width:100%;max-height:88vh;overflow:auto;padding:18px 17px calc(24px + env(safe-area-inset-bottom));}.sheet-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.sheet-head h2{font-size:19px;margin:0}.sheet-head button{background:#e9efeb;border-radius:50%;width:32px;height:32px}.field{display:grid;gap:6px;margin:11px 0}.field label{font-size:12px;font-weight:700;color:#526158}.field input,.field select{width:100%;padding:13px;border:1px solid #dce5de;border-radius:12px;background:#fff;font:inherit;outline-color:var(--green)}.primary{width:100%;padding:14px;border-radius:13px;background:var(--green);color:white;font-weight:800;margin-top:10px}.secondary{padding:12px;border-radius:12px;background:var(--mint);color:var(--green);font-weight:750}.results{display:grid;gap:8px;margin-top:12px}.result{background:white;border:1px solid var(--line);border-radius:14px;padding:12px;display:flex;justify-content:space-between;align-items:center;gap:10px}.result b{font-size:13px}.result small{display:block;font-size:10px;margin-top:4px}.result button{background:var(--mint);color:var(--green);padding:9px;border-radius:10px;font-weight:800}.storechips{display:flex;gap:7px;margin:10px 0}.chip{padding:8px 12px;border-radius:20px;background:#e9efeb;color:#526158;font-size:11px;font-weight:750}.chip.selected{background:var(--green);color:white}.hint{font-size:11px;color:var(--muted);line-height:1.5}.scannerbox{background:#10251d;border-radius:16px;overflow:hidden;min-height:220px;display:grid;place-items:center;color:white}.scannerbox video{width:100%;max-height:280px;object-fit:cover}.statrow{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--line);font-size:13px}
