:root{--ink:#183b2d;--ink2:#315748;--paper:#f5f3eb;--card:#fffef9;--mint:#cde8db;--mint2:#e6f3ec;--green:#34765a;--lime:#c9dc65;--orange:#ee9b63;--yellow:#efd56f;--line:#dcded3;--muted:#768179;--shadow:0 14px 45px rgba(38,73,57,.08);--radius:24px}
[hidden]{display:none!important}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Noto Sans SC",system-ui,sans-serif;min-height:100vh}.noise{position:fixed;inset:0;pointer-events:none;opacity:.25;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.05'/%3E%3C/svg%3E");z-index:10}.topbar{height:76px;border-bottom:1px solid rgba(49,87,72,.12);display:flex;align-items:center;justify-content:space-between;padding:0 34px;position:sticky;top:0;background:rgba(245,243,235,.92);backdrop-filter:blur(14px);z-index:9}.brand{display:flex;align-items:center;gap:12px;color:var(--ink);text-decoration:none;font-family:"ZCOOL XiaoWei",serif;font-size:28px}.brand-mark{width:35px;height:35px;display:grid;place-items:center;position:relative}.brand-mark i{position:absolute;background:var(--green);border-radius:99% 10% 99% 10%;width:18px;height:10px;transform-origin:right center}.brand-mark i:nth-child(1){transform:translate(-5px,-6px) rotate(26deg)}.brand-mark i:nth-child(2){transform:translate(4px,0) rotate(-35deg)}.brand-mark i:nth-child(3){transform:translate(-4px,7px) rotate(8deg)}.top-actions{display:flex;align-items:center;gap:18px}.privacy-pill{font-size:12px;color:var(--ink2);background:#e7ece5;border:1px solid #d6ded6;padding:8px 14px;border-radius:99px}.lock{font-size:7px;color:var(--green);vertical-align:2px;margin-right:5px}.avatar{width:39px;height:39px;border:0;background:var(--ink);color:#fff;border-radius:50%;font-size:15px;cursor:pointer}.app-shell{display:grid;grid-template-columns:210px 1fr;max-width:1540px;margin:auto}.sidebar{border-right:1px solid rgba(49,87,72,.12);min-height:calc(100vh - 76px);padding:34px 22px;display:flex;flex-direction:column;justify-content:space-between;position:sticky;top:76px;height:calc(100vh - 76px)}.sidebar nav{display:grid;gap:8px}.nav-item{border:0;background:none;color:#708078;font:600 14px inherit;padding:12px 18px;border-radius:14px;text-align:left;cursor:pointer;display:flex;align-items:center;gap:14px}.nav-item span{font-size:21px;width:20px;text-align:center;font-weight:400}.nav-item.active{background:var(--ink);color:#fff}.sidebar-note{background:#e8eee6;border:1px solid #d5ddd2;padding:18px;border-radius:18px;font-size:12px;line-height:1.7;color:var(--ink2)}.sidebar-note p{margin:6px 0 0}.mini-leaf{color:var(--green)}main{padding:42px 48px 90px;max-width:1250px;width:100%;margin:auto}.page{display:none;animation:appear .35s ease}.page.active{display:block}@keyframes appear{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}.welcome{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:32px}.eyebrow,.kicker{text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:800;color:var(--green)}.welcome h1,.subpage-head h1{font-family:"ZCOOL XiaoWei",serif;font-weight:400;font-size:42px;line-height:1.14;margin:10px 0 0;letter-spacing:.01em}.welcome h1 em,.subpage-head h1 em{font-style:normal;color:var(--green)}.outline-btn{background:transparent;border:1px solid #9caf9f;border-radius:99px;padding:11px 17px;color:var(--ink);font:600 13px inherit;cursor:pointer}.outline-btn:hover{background:var(--card)}.outline-btn span{margin-left:12px}.dashboard-grid,.lower-grid,.trend-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:18px}.card{background:rgba(255,254,249,.88);border:1px solid rgba(78,100,85,.14);border-radius:var(--radius);box-shadow:var(--shadow)}.score-card,.goal-card,.budget-card,.action-card,.chart-card,.insight-card{padding:24px}.card-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.card-head>div{display:grid;gap:4px}.card-head small{color:var(--muted);font-size:11px}.dots{border:0;background:none;color:#87938b;letter-spacing:2px;cursor:pointer}.score-wrap{display:flex;align-items:center;gap:30px;margin-top:22px}.score-ring{--score:82;width:146px;height:146px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--green) calc(var(--score)*1%),#e7e8df 0);position:relative;flex:0 0 auto}.score-ring:after{content:"";position:absolute;inset:12px;background:var(--card);border-radius:50%}.score-ring div{position:relative;z-index:1;text-align:center}.score-ring strong{display:block;font-family:"ZCOOL XiaoWei";font-size:50px;font-weight:400;line-height:1}.score-ring span{font-size:10px;color:var(--muted)}.score-copy h2,.quick-title h2,.action-card h2,.section-head h2{font-family:"ZCOOL XiaoWei";font-weight:400;margin:0 0 8px}.score-copy p{font-size:12px;line-height:1.8;color:#607168;margin:0;max-width:330px}.score-tags{display:flex;gap:6px;margin-top:14px;flex-wrap:wrap}.score-tags span,.pace,.unlimited{font-size:10px;padding:6px 9px;border-radius:99px;background:#e5f1e9;color:var(--green);font-weight:700}.score-tags .warn{background:#fff0df;color:#ad6537}.pace{background:#ecf3cd;color:#647527}.weight-line{display:flex;align-items:baseline;gap:5px;margin:30px 0 14px}.weight-line strong{font:400 34px "ZCOOL XiaoWei"}.weight-line span{font-size:11px;color:var(--muted)}.weight-line i{font-style:normal;color:#a8b0aa;margin:0 7px}.progress-track,.budget-bar{height:8px;background:#e8e8df;border-radius:99px;overflow:hidden}.progress-track i,.budget-bar i{display:block;height:100%;width:36%;background:var(--lime);border-radius:99px;transition:.4s}.progress-label{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);margin-top:8px}.progress-label b{color:var(--ink)}.goal-tip{background:#edf3e4;border-radius:12px;padding:10px 12px;font-size:10px;margin:20px 0 0;color:var(--ink2)}.goal-tip span{color:var(--green)}.quick-log{padding:26px;margin:18px 0}.quick-title{display:flex;justify-content:space-between;align-items:start}.quick-title h2{font-size:24px;margin-top:6px}.unlimited{background:#edf3e4}.log-controls{display:grid;grid-template-columns:1fr 45px 1.6fr;align-items:center;gap:18px;margin-top:20px}.photo-btn{border:1px dashed #9db5a6;background:#edf5ef;border-radius:18px;padding:20px;display:grid;grid-template-columns:48px 1fr;column-gap:14px;cursor:pointer;transition:.2s}.photo-btn:hover{transform:translateY(-2px);background:#e5f2e9}.photo-btn .camera{grid-row:1/3;background:var(--ink);color:#fff;width:48px;height:48px;border-radius:16px;display:grid;place-items:center;font-size:25px}.photo-btn b{font-size:13px;align-self:end}.photo-btn small{font-size:10px;color:var(--muted);align-self:start}.or{display:flex;align-items:center;gap:6px;font-size:10px;color:#9aa49d}.or span{height:1px;background:#d8ddd8;flex:1}.text-log>label{font-size:11px;color:var(--muted)}.text-log>div{display:flex;border-bottom:1px solid #9fb0a5}.text-log input{flex:1;border:0;background:none;padding:11px 2px;outline:none;font:500 13px inherit;color:var(--ink)}.text-log button,.big-log button{border:0;background:none;color:var(--green);font:700 12px inherit;cursor:pointer}.text-log p{font-size:9px;color:#98a19b;margin:7px 0 0}.photo-preview{display:grid;grid-template-columns:64px 1fr auto;align-items:center;gap:14px;background:#f2f4eb;border-radius:16px;padding:10px 14px;margin-top:16px}.photo-preview img{width:64px;height:54px;object-fit:cover;border-radius:12px}.photo-preview b{font-size:12px}.photo-preview p{font-size:10px;color:var(--muted);margin:3px 0}.photo-preview button{border:0;border-radius:99px;background:var(--ink);color:#fff;padding:9px 14px;cursor:pointer}.lower-grid{margin-bottom:42px}.budget-card .card-head>b{font:400 18px "ZCOOL XiaoWei"}.budget-bar{margin:19px 0 9px}.budget-bar i{width:53%;background:var(--green)}.remain{font-size:11px;color:var(--muted);margin:0 0 22px}.remain strong{color:var(--ink)}.nutrients{display:grid;grid-template-columns:1fr 1fr;gap:19px 28px}.nutrients>div>span,.nutrients>div>b{display:inline-flex;align-items:center;font-size:10px}.nutrients>div>b{float:right;color:var(--muted);font-weight:500}.nutrients em{font-style:normal}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:6px}.dot.protein{background:#688e78}.dot.veg{background:#b5cf55}.dot.salt{background:#df8d59}.dot.sugar{background:#d8bd50}.nutrients>div>div{height:4px;background:#e8e8df;margin-top:7px;border-radius:9px;overflow:hidden}.nutrients>div>div i{display:block;height:100%;width:50%;border-radius:9px;background:#688e78}.nutrients>div:nth-child(2)>div i{background:#b5cf55}.nutrients>div:nth-child(3)>div i{background:#df8d59}.nutrients>div:nth-child(4)>div i{background:#d8bd50}.action-card{background:var(--ink);color:#f7f6ef;position:relative;overflow:hidden}.action-card:after{content:"";position:absolute;width:180px;height:180px;border-radius:50%;background:#416c59;right:-90px;bottom:-90px}.action-card .kicker{color:#adc4b8}.action-icon{width:45px;height:45px;border-radius:50%;background:var(--lime);color:var(--ink);display:grid;place-items:center;font:400 18px "ZCOOL XiaoWei";margin:19px 0 13px}.action-card h2{font-size:23px;position:relative;z-index:1}.action-card p{font-size:11px;color:#c6d3cc;line-height:1.7;max-width:270px;position:relative;z-index:1}.action-card button{border:1px solid #7c9c8d;background:transparent;color:#fff;border-radius:99px;padding:8px 13px;font:600 11px inherit;margin-top:8px;cursor:pointer;position:relative;z-index:2}.recent-section{margin-top:8px}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:16px}.section-head h2{font-size:27px;margin-top:4px}.section-head button{border:0;background:none;color:var(--muted);font-size:10px;cursor:pointer}.meal-list{display:grid;gap:9px}.meal-row{display:grid;grid-template-columns:46px 1fr auto auto;gap:15px;align-items:center;background:rgba(255,254,249,.62);border-bottom:1px solid #dfe0d6;padding:13px 14px;border-radius:14px}.meal-icon{width:43px;height:43px;background:#e8efe4;border-radius:13px;display:grid;place-items:center;font-size:20px}.meal-row h3{font-size:12px;margin:0 0 4px}.meal-row p{font-size:9px;color:var(--muted);margin:0}.meal-impact{text-align:right}.meal-impact strong{font:400 17px "ZCOOL XiaoWei";display:block}.meal-impact span{font-size:9px;color:var(--muted)}.meal-badge{font-size:9px;border-radius:99px;padding:5px 8px;background:#e3f0e7;color:var(--green)}.meal-badge.warn{background:#fff0df;color:#ad6537}.subpage-head{padding:20px 0 34px}.subpage-head h1{font-size:44px}.subpage-head>p:last-child{color:var(--muted);font-size:13px}.method-grid,.learn-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.method-card{border:0;border-radius:24px;padding:28px;text-align:left;color:var(--ink);cursor:pointer;min-height:200px;transition:.25s}.method-card:hover,.learn-card:hover{transform:translateY(-4px)}.method-card>span{font-size:32px}.method-card h3{font:400 24px "ZCOOL XiaoWei";margin:35px 0 9px}.method-card p{font-size:11px;color:var(--ink2)}.mint{background:#cfe7da}.cream{background:#ebe2c8}.peach{background:#efcfb9}.full-log-card{margin-top:18px;padding:28px}.big-log{display:grid;grid-template-columns:1fr auto;gap:18px;margin-top:18px}.big-log textarea{min-height:130px;resize:vertical;border:1px solid #d9ddd4;border-radius:18px;background:#faf9f3;padding:18px;font:500 14px inherit;color:var(--ink);outline:none}.big-log button{align-self:end;background:var(--ink);color:#fff;padding:12px 17px;border-radius:99px}.trend-grid{grid-template-columns:1.35fr .65fr}.chart-card{min-height:360px}.up{font-size:10px;background:#e5f1e9;color:var(--green);padding:6px 9px;border-radius:99px}.bars{height:225px;display:flex;align-items:end;gap:8%;padding:30px 3% 0;border-bottom:1px solid #dfe1d8;background:repeating-linear-gradient(to bottom,transparent 0,transparent 55px,#ecece4 56px)}.bars i{display:block;flex:1;max-width:45px;background:#cbd9c7;border-radius:9px 9px 0 0;min-height:20px;transition:.7s cubic-bezier(.2,.8,.2,1);position:relative}.bars i:last-child{background:var(--green)}.bars i:after{content:attr(data-score);position:absolute;top:-21px;left:50%;transform:translateX(-50%);font-size:9px;color:var(--muted)}.day-labels{display:flex;justify-content:space-around;padding:10px 2%;font-size:9px;color:var(--muted)}.insight-card{background:#e8dfc3}.insight-card h2{font:400 28px/1.3 "ZCOOL XiaoWei";margin:35px 0 16px}.insight-card h2 em{font-style:normal;color:#a15e38}.insight-card p{font-size:11px;line-height:1.8;color:#665f4b}.insight-number{display:flex;align-items:center;gap:12px;margin-top:35px}.insight-number strong{font:400 38px "ZCOOL XiaoWei";color:#a15e38}.insight-number span{font-size:9px;color:#7b7259}.learn-card{border-radius:26px;padding:28px;min-height:330px;display:flex;flex-direction:column;transition:.25s}.learn-card>span{font-size:10px;font-weight:700;letter-spacing:.12em}.learn-card h2{font:400 29px/1.35 "ZCOOL XiaoWei";margin:65px 0 16px}.learn-card p{font-size:11px;line-height:1.8;max-width:250px}.learn-card button{margin-top:auto;align-self:flex-start;border:0;background:none;padding:0;font:700 11px inherit;color:var(--ink);cursor:pointer}.salt-bg{background:#e5d9c1}.sugar-bg{background:#e9c4ac}.veg-bg{background:#cbe2ce}.mobile-nav{display:none}dialog{border:0;border-radius:26px;padding:0;color:var(--ink);box-shadow:0 30px 90px rgba(20,50,36,.25);width:min(460px,calc(100vw - 30px))}dialog::backdrop{background:rgba(24,59,45,.35);backdrop-filter:blur(3px)}#goalForm{padding:28px;display:grid;gap:17px}.dialog-head{display:flex;justify-content:space-between}.dialog-head h2{font:400 25px "ZCOOL XiaoWei";margin:5px 0}.dialog-head button{border:0;background:#eff1ea;border-radius:50%;width:32px;height:32px;cursor:pointer}.dialog-head+label{margin-top:8px}#goalForm label{display:flex;justify-content:space-between;font-size:12px;align-items:center;border-bottom:1px solid #e2e4dc;padding-bottom:10px}#goalForm label span{color:var(--muted)}#goalForm input{width:74px;border:0;background:#f1f2eb;border-radius:8px;padding:7px;text-align:right;color:var(--ink);font-weight:700}.dialog-note{font-size:10px;line-height:1.7;color:var(--muted);background:#f5f3eb;padding:12px;border-radius:12px}.save-goal{border:0;border-radius:99px;background:var(--ink);color:#fff;padding:12px;font-weight:700;cursor:pointer}.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,30px);background:var(--ink);color:#fff;border-radius:99px;padding:11px 18px;font-size:12px;opacity:0;pointer-events:none;transition:.3s;z-index:99}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:1000px){.app-shell{grid-template-columns:76px 1fr}.sidebar{padding:30px 10px}.sidebar .nav-item{font-size:0;padding:12px;justify-content:center}.sidebar .nav-item span{font-size:21px}.sidebar-note{display:none}main{padding:35px 28px}.dashboard-grid,.lower-grid{grid-template-columns:1fr}.goal-card{min-height:auto}.method-grid,.learn-grid{grid-template-columns:1fr 1fr}.trend-grid{grid-template-columns:1fr}.insight-card{min-height:300px}}
@media(max-width:680px){body{padding-bottom:74px}.topbar{height:64px;padding:0 17px}.brand{font-size:24px}.privacy-pill{display:none}.avatar{width:35px;height:35px}.app-shell{display:block}.sidebar{display:none}main{padding:25px 14px 48px}.welcome{align-items:flex-start}.welcome h1{font-size:33px}.welcome .outline-btn{font-size:0;padding:10px}.welcome .outline-btn span{font-size:16px;margin:0}.dashboard-grid,.lower-grid{gap:12px}.score-card,.goal-card,.budget-card,.action-card,.chart-card,.insight-card{padding:20px}.score-wrap{gap:18px}.score-ring{width:118px;height:118px}.score-ring strong{font-size:42px}.score-copy p{font-size:10px}.quick-log{padding:20px;margin:12px 0}.log-controls{grid-template-columns:1fr;gap:12px}.or{display:none}.photo-btn{padding:15px}.text-log{padding-top:4px}.photo-preview{grid-template-columns:55px 1fr}.photo-preview img{width:55px}.photo-preview button{grid-column:1/3}.nutrients{grid-template-columns:1fr}.method-grid,.learn-grid{grid-template-columns:1fr}.method-card{min-height:150px}.method-card h3{margin-top:25px}.big-log{grid-template-columns:1fr}.meal-row{grid-template-columns:42px 1fr auto}.meal-badge{display:none}.subpage-head h1{font-size:35px}.chart-card{min-height:330px}.bars{gap:5%}.mobile-nav{position:fixed;display:flex;bottom:0;left:0;right:0;height:66px;background:rgba(255,254,249,.95);backdrop-filter:blur(12px);z-index:11;border-top:1px solid #dfe1d8;justify-content:space-around}.mobile-nav .nav-item{display:grid;gap:1px;justify-items:center;font-size:9px;padding:6px 14px}.mobile-nav .nav-item span{font-size:19px}.mobile-nav .nav-item.active{background:none;color:var(--green)}.top-actions{gap:8px}.section-head{align-items:center}.section-head h2{font-size:23px}}

.photo-preview{gap:10px 14px;padding:12px 14px}.photo-preview button:disabled{opacity:.55;cursor:wait}.photo-consent{grid-column:2/4;display:flex;gap:7px;align-items:flex-start;font-size:10px;color:var(--ink2);line-height:1.55}.photo-consent input{margin-top:2px;accent-color:var(--green)}#foodVisionSignIn{grid-column:2/4;color:var(--green);font-size:11px;font-weight:700}
@media(max-width:680px){.photo-consent,#foodVisionSignIn{grid-column:1/3}}
@media(max-width:390px){.score-wrap{display:block}.score-ring{margin:0 auto 20px}.score-copy{text-align:center}.score-tags{justify-content:center}.weight-line strong{font-size:30px}}

.score-detail-btn{border:0;background:none;color:var(--green);font:700 10px inherit;padding:13px 0 0;cursor:pointer}.score-detail-btn span{margin-left:5px}.saved-strip{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;border-top:1px solid #e2e4db;margin-top:18px;padding-top:15px}.saved-strip>span{font-size:10px;color:var(--muted)}.saved-strip>div{display:flex;gap:7px;overflow:auto;scrollbar-width:none}.saved-meal{white-space:nowrap;border:1px solid #dce2da;background:#f4f6ef;color:var(--ink2);border-radius:99px;padding:7px 11px;font:600 10px inherit;cursor:pointer}.saved-meal:hover{background:#e4efe7}.saved-strip>button{border:0;background:none;color:var(--green);font:700 10px inherit;cursor:pointer}.wide-dialog{width:min(880px,calc(100vw - 28px));max-width:none;background:#f8f6ef}.wide-dialog form{padding:0}.onboard-top{height:66px;border-bottom:1px solid #dfe2d8;display:flex;align-items:center;gap:11px;padding:0 28px;font:600 11px inherit;color:var(--ink2)}.onboard-top .brand-mark{transform:scale(.7);margin-left:-8px}.onboard-top b{margin-left:auto;color:var(--muted);font-size:9px}.onboard-grid{display:grid;grid-template-columns:.78fr 1.22fr;min-height:530px}.onboard-copy{background:var(--ink);color:#fff;padding:58px 42px;border-radius:0 0 0 26px;position:relative;overflow:hidden}.onboard-copy:after{content:"";position:absolute;width:240px;height:240px;border-radius:50%;background:#416b58;bottom:-135px;right:-80px}.onboard-copy .kicker{color:#a9c5b8}.onboard-copy h2{font:400 40px/1.28 "ZCOOL XiaoWei";margin:28px 0 20px;position:relative;z-index:1}.onboard-copy h2 em{font-style:normal;color:var(--lime)}.onboard-copy p{font-size:11px;line-height:1.9;color:#c5d5cd;max-width:245px;position:relative;z-index:1}.onboard-fields{padding:38px 42px;display:grid;gap:17px}.field-label{display:grid;gap:8px;font-size:10px;font-weight:700;color:var(--ink2)}.field-label>span{display:flex;align-items:center;gap:7px;color:var(--muted)}.field-label input,.field-label select{border:1px solid #d8ddd4;background:#fffef9;border-radius:12px;padding:11px 12px;outline:none;font:500 12px inherit;color:var(--ink);width:100%}.field-label>span input{width:100%}.onboard-fields fieldset,.portion-options{border:0;padding:0;margin:0}.onboard-fields legend,.portion-options legend{font-size:10px;font-weight:700;color:var(--ink2);margin-bottom:9px}.goal-options,.portion-options>div{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.goal-options input,.portion-options input{position:absolute;opacity:0}.goal-options span,.portion-options span{display:grid;border:1px solid #d8ddd4;border-radius:13px;padding:10px;background:#fffef9;font-size:11px;font-weight:700;cursor:pointer}.goal-options small,.portion-options small{font-size:8px;font-weight:400;color:var(--muted);margin-top:3px}.goal-options input:checked+span,.portion-options input:checked+span{border-color:var(--green);background:#e8f2eb;box-shadow:inset 0 0 0 1px var(--green)}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}.onboard-submit{border:0;background:var(--ink);color:#fff;border-radius:99px;padding:13px;font:700 11px inherit;cursor:pointer;margin-top:2px}.skip-onboard{border:0;background:none;color:var(--muted);font:500 9px inherit;cursor:pointer}.confidence{display:flex;justify-content:space-between;background:#edf3e8;border-radius:12px;padding:10px 12px;font-size:9px;color:var(--muted)}.confidence b{color:var(--green)}#portionForm{padding:28px;display:grid;gap:18px}.select-row{font-size:10px;font-weight:700;color:var(--ink2);display:flex;align-items:center;justify-content:space-between}.select-row select{border:1px solid #d8ddd4;background:#fffef9;border-radius:10px;padding:8px;color:var(--ink);font:500 10px inherit}.estimate-preview{display:grid;grid-template-columns:1fr auto;background:#f2f1e9;border-radius:15px;padding:14px}.estimate-preview span{font-size:9px;color:var(--muted)}.estimate-preview strong{font:400 19px "ZCOOL XiaoWei"}.estimate-preview small{grid-column:1/3;font-size:8px;color:var(--muted);margin-top:5px}.save-meal-check{font-size:9px;color:var(--muted);display:flex;gap:7px;align-items:center}.score-dialog{width:min(520px,calc(100vw - 28px))}.score-dialog-inner{padding:28px}.score-intro{font-size:10px;line-height:1.8;color:var(--muted);margin:5px 0 22px}.score-breakdown{display:grid;gap:15px}.score-part-head{display:flex;justify-content:space-between;font-size:10px;margin-bottom:7px}.score-part-head b{font-weight:700}.score-part-head span{color:var(--muted)}.score-part-bar{height:7px;background:#e9e9e1;border-radius:99px;overflow:hidden}.score-part-bar i{display:block;height:100%;background:var(--green);border-radius:99px}.score-part:nth-child(4) .score-part-bar i{background:#df9c67}.score-part small{display:block;font-size:8px;color:var(--muted);margin-top:5px}.score-method{background:#f1f2e9;border-radius:14px;padding:13px;margin-top:22px}.score-method b{font-size:9px}.score-method p{font-size:8px;line-height:1.7;color:var(--muted);margin:4px 0 0}
@media(max-width:680px){.saved-strip{grid-template-columns:1fr auto}.saved-strip>span{grid-column:1/3}.onboard-grid{grid-template-columns:1fr}.onboard-copy{padding:28px;border-radius:0;min-height:190px}.onboard-copy h2{font-size:31px;margin:15px 0 8px}.onboard-copy p{margin:0}.onboard-fields{padding:25px 20px}.goal-options{grid-template-columns:1fr}.goal-options span{grid-template-columns:auto 1fr;column-gap:8px}.goal-options small{align-self:center;margin:0}.field-pair{grid-template-columns:1fr 1fr}.portion-options>div{gap:5px}.portion-options span{padding:9px 7px}.score-detail-btn{padding-top:10px}}

.food-item-editor{display:grid;gap:9px}.food-edit-row{display:grid;grid-template-columns:1fr auto;gap:5px 14px;align-items:center;border:1px solid #dfe3da;border-radius:15px;padding:12px;background:#fffef9}.food-edit-name{display:flex;align-items:center;gap:10px}.food-edit-name>span{width:35px;height:35px;border-radius:11px;background:#e8f0e7;display:grid;place-items:center;font:400 13px "ZCOOL XiaoWei"}.food-edit-name>div{display:grid;gap:2px}.food-edit-name b{font-size:11px}.food-edit-name small{font-size:7px;color:var(--muted);max-width:190px}.food-qty{display:flex;align-items:center;border:1px solid #d7ddd5;border-radius:11px;overflow:hidden;background:#f6f6f0}.food-qty button{width:30px;height:32px;border:0;background:none;color:var(--green);font-size:16px;cursor:pointer}.food-qty input{width:50px;height:32px;border:0;border-left:1px solid #e0e3dd;background:#fff;text-align:center;font:700 11px inherit;color:var(--ink);outline:none}.food-qty select{height:32px;border:0;border-left:1px solid #e0e3dd;background:#fff;padding:0 6px;font:500 10px inherit;color:var(--ink);outline:none}.gram-hint{grid-column:2;text-align:right;font-size:7px;color:var(--muted)}.candidate-dialog{width:min(500px,calc(100vw - 28px))}.candidate-inner{padding:28px}.candidate-inner>p{font-size:9px;line-height:1.8;color:var(--muted);margin:3px 0 18px}.candidate-list{display:grid;gap:7px;max-height:390px;overflow:auto}.candidate-option{border:1px solid #dce1d8;background:#fffef9;border-radius:14px;padding:11px;display:grid;grid-template-columns:35px 1fr auto;align-items:center;gap:10px;text-align:left;color:var(--ink);cursor:pointer}.candidate-option:hover{border-color:var(--green);background:#eef5ef}.candidate-option>span{width:35px;height:35px;border-radius:10px;background:#e6f0e8;display:grid;place-items:center}.candidate-option>div{display:grid;gap:3px}.candidate-option b{font-size:11px}.candidate-option small{font-size:8px;color:var(--muted)}.candidate-option em{font-style:normal;font-size:9px;color:var(--green);background:#e8f1e8;border-radius:99px;padding:5px 7px}.unknown-food{width:100%;border:0;background:none;color:var(--muted);font:600 9px inherit;padding:15px 0 0;cursor:pointer}.no-match{background:#f2f2ea;border-radius:15px;padding:18px;display:grid;gap:5px}.no-match b{font-size:11px}.no-match span{font-size:8px;line-height:1.6;color:var(--muted)}
@media(max-width:680px){.food-edit-row{grid-template-columns:1fr}.food-qty{width:100%;justify-content:space-between}.food-qty input{flex:1}.gram-hint{grid-column:1}.candidate-inner{padding:22px}.candidate-option{grid-template-columns:32px 1fr}.candidate-option em{grid-column:2;justify-self:start}}

.trend-page-head{display:flex;align-items:end;justify-content:space-between;gap:24px}
.history-date{display:grid;gap:7px;font-size:10px;font-weight:700;color:var(--muted);min-width:170px}
.history-date input{border:1px solid #cfd9cf;border-radius:12px;background:#fffef9;color:var(--ink);padding:10px 12px;font:600 11px inherit}
.bars{gap:5%;padding-left:2%;padding-right:2%}
.trend-bar{flex:1;align-self:stretch;display:flex;align-items:end;justify-content:center;border:0;background:transparent;padding:0 4px;cursor:pointer;border-radius:9px 9px 0 0}
.bars .trend-bar i{width:100%;max-width:45px;min-height:0!important;background:#cbd9c7;border-radius:9px 9px 0 0;position:relative;transition:.45s cubic-bezier(.2,.8,.2,1)}
.trend-bar i:after{content:attr(data-score);position:absolute;top:-21px;left:50%;transform:translateX(-50%);font-size:9px;color:var(--muted)}
.bars .trend-bar.selected i{background:var(--green);box-shadow:0 0 0 3px rgba(52,118,90,.1)}
.trend-bar:hover{background:rgba(52,118,90,.04)}
.history-detail{margin-top:18px;padding:24px}
.history-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin-bottom:27px}
.history-stats>div{border:1px solid #e0e5dd;border-radius:15px;background:#f8f8f2;padding:13px 14px;display:grid;grid-template-columns:1fr auto;align-items:end}
.history-stats span{grid-column:1/3;color:var(--muted);font-size:9px;margin-bottom:6px}
.history-stats strong{font:400 25px "ZCOOL XiaoWei",serif}
.history-stats small{font-size:8px;color:var(--muted);padding-bottom:3px}
.history-empty{text-align:center;border:1px dashed #cbd5cc;border-radius:18px;padding:30px;color:var(--muted)}
.history-empty span{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;margin:0 auto 9px;background:#edf0e8;color:var(--green);font:400 18px "ZCOOL XiaoWei",serif}
.history-empty b{display:block;color:var(--ink2);font-size:12px}.history-empty p{font-size:9px;margin:5px 0 0}
@media(max-width:680px){.trend-page-head{align-items:stretch;flex-direction:column}.history-date{min-width:0}.history-stats{grid-template-columns:repeat(2,1fr)}.history-stats>div:first-child{grid-column:1/3}.trend-bar{padding:0 2px}.bars{gap:2%}}
