@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{font-family:'DM Sans',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:#233228;background:#f6f8f4;font-synthesis:none;-webkit-font-smoothing:antialiased;--green:#247659;--deep:#173e30;--light:#e7f3e9;--muted:#7f8d84;--line:#e6ede7;--paper:#fff;--shadow:0 10px 35px rgba(44,74,52,.04)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}input,select{outline-color:#84b29a}a{color:var(--green)}h1,h2,h3,h4,p{margin:0}h1,h2,h3{font-family:Manrope,'DM Sans',sans-serif}h1{font-size:clamp(25px,2.8vw,34px);letter-spacing:-1.3px;font-weight:800}h2{font-size:21px;letter-spacing:-.6px}h3{font-size:16px;letter-spacing:-.4px}.muted{color:var(--muted)}.small{font-size:12px}.semibold{font-weight:700}.hide{display:none!important}.ico{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0}.ico svg{width:100%;height:100%;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;fill:none;stroke-width:1.8}.app-content{margin-left:252px;min-height:100vh;display:flex;flex-direction:column}.sidebar{position:fixed;inset:0 auto 0 0;width:252px;padding:34px 21px 28px;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:20}.brand{display:flex;align-items:center;gap:10px;font:800 26px/1 Manrope,sans-serif;letter-spacing:-1.6px}.branddot{color:#68b48b}.brandmark{display:flex;align-items:center;justify-content:center;color:#fff;background:#31775b;width:36px;height:36px;border-radius:12px}.brandmark svg{width:30px;height:30px}.sidebar-sub{color:#9baa9e;font-size:11px;margin:13px 0 42px;letter-spacing:.1px}.side-nav{display:grid;gap:8px}.nav-button,.bottom-button{border:0;background:transparent;color:#728078}.nav-button{display:flex;align-items:center;gap:14px;padding:14px 16px;font-weight:700;border-radius:12px;text-align:left;font-size:14px}.nav-button:hover,.bottom-button:hover{background:#f1f7f1}.nav-button.active{background:#e7f3eb;color:#2a7655}.sidebar-note{background:#ecf6ed;border-radius:15px;padding:18px;margin-top:auto;font-size:13px;color:#397259}.sidebar-note strong{font-size:14px}.sidebar-note p{font-size:12px;line-height:1.55;margin-top:7px;color:#709581}.note-sparkle{font-size:19px;display:block;margin-bottom:5px}.sidebar-bottom{font-size:10px;color:#acb6ac;margin-top:28px;text-align:center}.sidebar-bottom span{color:#58a777}.topbar{height:80px;padding:0 clamp(24px,4.8vw,73px);display:flex;align-items:center;justify-content:space-between;background:#f6f8f4;border-bottom:1px solid #e9eee9}.breadcrumb{font-size:12px;font-weight:700;color:#a2aca3}.breadcrumb span{margin:0 9px;color:#c8d3ca}.topright{display:flex;align-items:center;gap:18px}.online-indicator{font-weight:700;font-size:11px;color:#6c8b75;display:flex;align-items:center;gap:7px;background:#edf5ec;padding:9px 12px;border-radius:100px}.status-dot{height:7px;width:7px;background:#60ac78;border-radius:50%}.avatar{height:34px;width:34px;border-radius:100%;background:#dcece2;color:#487259;display:grid;place-items:center;font-size:13px;font-weight:800}.mobile-brand,.bottom-nav{display:none}main{padding:42px clamp(24px,4.8vw,73px) 70px;max-width:1420px;width:100%;margin:0 auto;flex:1}.page-footer{text-align:center;color:#9ba89e;font-size:11px;margin:5px 24px 34px}.page-footer a{color:#69967a}.eyebrow{font-size:11px;font-weight:800;letter-spacing:1.4px;text-transform:uppercase;color:#60a27c;margin-bottom:10px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px}.page-heading p{color:#91a196;font-size:14px;margin-top:8px}.date-control{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--line);border-radius:13px;padding:7px}.date-control button{width:31px;height:31px;display:grid;place-items:center;border:0;background:#f4f8f3;border-radius:8px;color:#50745c}.date-control button:hover{background:#e9f3ea}.date-label{min-width:126px;text-align:center;font-weight:800;font-size:12px}.button{border:0;background:var(--green);color:#fff;border-radius:12px;padding:12px 18px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-size:13px;font-weight:800;min-height:44px;transition:transform .1s,background .1s}.button:hover{background:#195f46}.button:active,.icon-button:active{transform:scale(.98)}.button-secondary{background:#e9f3ea;color:#257558}.button-secondary:hover{background:#d9eadd}.button-ghost{background:#fff;color:#4b6b55;border:1px solid #dfe9df}.button-ghost:hover{background:#f4f9f3}.button-danger{background:#fff5f3;border:1px solid #f6dad3;color:#b64e42}.button-danger:hover{background:#fce8e3}.button-sm{padding:9px 13px;font-size:12px;min-height:38px;border-radius:10px}.icon-button{border:1px solid var(--line);background:white;width:38px;height:38px;display:grid;place-items:center;border-radius:11px;color:#6c8574}.icon-button:hover{background:#f5f9f5}.card{background:var(--paper);border:1px solid #e6ede7;border-radius:19px;box-shadow:var(--shadow)}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.95fr);gap:20px}.calorie-card{padding:30px 34px;min-height:272px;display:flex;flex-direction:column;justify-content:space-between}.card-top{display:flex;align-items:center;justify-content:space-between}.card-top .overline{color:#92a399;text-transform:uppercase;letter-spacing:1.3px;font-size:11px;font-weight:800}.pill{display:inline-flex;align-items:center;padding:7px 11px;border-radius:30px;font-size:11px;font-weight:800;background:#e6f3e9;color:#43835d}.calorie-center{display:flex;align-items:center;justify-content:space-between;gap:20px}.calorie-big strong{font:800 clamp(38px,5vw,61px)/1 Manrope,sans-serif;letter-spacing:-3px;display:block;color:#273e2f}.calorie-big small{display:block;margin-top:9px;font-size:13px;color:#8fa197}.calorie-big .remaining{margin-top:25px;font-size:12px;color:#8b9a90}.calorie-big .remaining b{color:#317857}.ring{width:173px;height:173px;border-radius:50%;background:conic-gradient(#3e9b72 var(--ring),#eaf0e9 0);display:grid;place-items:center;flex-shrink:0;position:relative}.ring:before{content:'';position:absolute;inset:17px;background:#fff;border-radius:50%}.ring-inner{z-index:1;text-align:center}.ring-inner strong{font:800 27px Manrope,sans-serif}.ring-inner small{display:block;font-size:11px;color:#99a99e;margin-top:3px}.macro-card{padding:27px;display:flex;flex-direction:column;gap:23px}.macro-row{display:flex;flex-direction:column;gap:9px}.macro-title{display:flex;align-items:center;justify-content:space-between;font-size:13px;font-weight:700}.macro-title strong{font-size:14px}.macro-title small{font-size:11px;font-weight:500;color:#91a399}.progress-track{width:100%;height:8px;background:#eef3ee;border-radius:100px;overflow:hidden}.progress-fill{height:100%;border-radius:100px;background:#3c9a74}.progress-fill.blue{background:#84a8d9}.progress-fill.orange{background:#f0ad78}.section-head{display:flex;align-items:center;justify-content:space-between;margin:34px 0 16px}.section-head p{font-size:12px;color:#9aab9e;margin-top:6px}.section-head .button{flex-shrink:0}.meal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.meal-card{padding:21px 23px;min-height:164px}.meal-header{display:flex;justify-content:space-between;align-items:center;gap:12px}.meal-name{display:flex;gap:10px;align-items:center}.meal-emoji{height:38px;width:38px;display:grid;place-items:center;border-radius:11px;background:#f5f6e9;font-size:18px}.meal-card:nth-child(2) .meal-emoji{background:#ecf4f9}.meal-card:nth-child(3) .meal-emoji{background:#f8f0eb}.meal-card:nth-child(4) .meal-emoji{background:#f3eefa}.meal-name h3{font-size:14px}.meal-name p{font-size:11px;color:#9aac9f;margin-top:3px}.meal-cal{font-size:15px;font-weight:800;white-space:nowrap}.meal-list{margin:14px 0 0;display:grid;gap:9px}.meal-entry{display:flex;justify-content:space-between;gap:10px;align-items:center;border-top:1px dashed #e9eeea;padding-top:10px}.meal-entry strong{display:block;font-size:12px;line-height:1.4}.meal-entry small{display:block;margin-top:4px;color:#91a195;font-size:11px}.meal-entry .right{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:800}.remove-entry{border:0;background:transparent;color:#a8b6a9;display:grid;place-items:center;padding:5px}.remove-entry:hover{color:#ba5a4c}.meal-empty{font-size:12px;color:#b3bcb3;margin-top:21px}.meal-card .add-meal{margin-top:16px;border:0;background:#eef7ef;color:#368366;border-radius:9px;font-size:11px;font-weight:800;padding:9px 12px;display:inline-flex;align-items:center;gap:6px}.meal-card .add-meal:hover{background:#e2f1e6}.hint-banner{margin-top:22px;background:#ebf4e9;padding:18px 22px;border:1px solid #e1ece0;border-radius:15px;display:flex;align-items:center;gap:14px;color:#537963}.hint-banner strong{font-size:13px}.hint-banner p{font-size:12px;color:#7d9a85;margin-top:5px}.hint-icon{height:42px;width:42px;border-radius:12px;background:white;color:#5c9d74;display:grid;place-items:center;flex-shrink:0}.search-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(250px,.65fr);gap:20px;align-items:start}.search-main{padding:26px}.tabline{display:flex;gap:8px;background:#f3f6f2;border-radius:12px;padding:5px;margin-bottom:23px}.seg-tab{border:0;background:transparent;flex:1;border-radius:9px;color:#829488;font-size:12px;font-weight:800;padding:12px 8px;display:flex;align-items:center;justify-content:center;gap:6px}.seg-tab.active{background:white;color:#357854;box-shadow:0 3px 9px #335f3a10}.field-label{font-size:12px;font-weight:800;color:#596d60;margin:0 0 8px;display:block}.field,.select{width:100%;background:#fff;border:1px solid #dde7dd;color:#263b2c;border-radius:11px;padding:12px 13px;min-height:44px;font-size:14px}.field::placeholder{color:#adb9ad}.form-row{display:flex;gap:10px;align-items:flex-end}.form-row .flex{flex:1}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.field-grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.field-hint{font-size:11px;color:#91a196;line-height:1.6;margin-top:9px}.search-results{margin-top:21px;display:grid;gap:9px}.result{padding:13px;border:1px solid #e8eee7;border-radius:13px;display:flex;align-items:center;gap:13px;background:#fff}.result:hover{border-color:#c9decf}.product-picture{height:50px;width:50px;flex-shrink:0;border-radius:11px;background:#f6f8f5;display:grid;place-items:center;color:#8caa93;overflow:hidden}.product-picture img{height:100%;width:100%;object-fit:contain}.result-body{min-width:0;flex:1}.result-body strong{font-size:12px;display:block;line-height:1.35;overflow-wrap:anywhere}.result-body p{font-size:11px;color:#95a59a;margin-top:4px}.result .button{min-height:35px}.source-mini{display:block;color:#91a398;font-size:10px;margin-top:5px}.help-card{padding:24px;background:#f0f7ee}.help-card h3{font-size:17px;margin-bottom:10px}.help-card p{font-size:12px;color:#789283;line-height:1.7}.help-card .step{padding-top:18px;border-top:1px solid #deeadf;margin-top:19px;display:flex;align-items:start;gap:11px}.help-card .number{flex-shrink:0;background:#fff;color:#4c8a64;width:27px;height:27px;display:grid;place-items:center;border-radius:9px;font-weight:800;font-size:11px}.help-card .step strong{font-size:12px}.help-card .step p{margin-top:5px}.empty-state{text-align:center;padding:35px 18px;border:1px dashed #dce8dd;border-radius:14px;color:#8ca090}.empty-state .empty-icon{background:#edf5ee;color:#6da080;width:54px;height:54px;border-radius:16px;display:grid;place-items:center;margin:0 auto 13px}.empty-state strong{display:block;color:#567561;font-size:14px}.empty-state p{font-size:12px;line-height:1.6;margin:8px auto 0;max-width:300px}.result-area-title{display:flex;justify-content:space-between;align-items:center;color:#80968a;font-weight:800;font-size:12px;margin-top:20px}.pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.pill-button{border:1px solid #dfebdf;background:white;color:#5e816a;padding:9px 13px;border-radius:40px;font-weight:700;font-size:11px}.pill-button:hover{background:#eff7ee}.saved-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.saved-card{padding:20px;display:flex;align-items:center;gap:14px}.saved-card h3{font-size:13px}.saved-card p{font-size:11px;color:#8fa195;margin-top:6px}.saved-card .actions{display:flex;gap:7px;margin-left:auto}.weight-layout{display:grid;grid-template-columns:1.35fr .9fr;gap:20px}.weight-chart-card{padding:26px}.chart-legend{display:flex;justify-content:space-between;align-items:center}.stat-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:22px}.stat-box{padding:21px}.stat-box small{font-size:11px;color:#93a699}.stat-box strong{display:block;font-size:25px;letter-spacing:-1px;margin-top:6px;font-family:Manrope}.svg-chart{width:100%;height:auto;display:block}.weight-list{padding:22px}.weight-list h3{margin-bottom:17px}.weight-item{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #edf1ec;padding:12px 0;font-size:12px}.weight-item:last-child{border:0}.weight-item strong{font-size:14px}.setting-card{padding:28px;margin-bottom:18px}.setting-card h2{margin-bottom:7px}.setting-card .description{color:#8a9d8e;font-size:12px;line-height:1.6;margin-bottom:23px}.settings-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.setting-card .button{margin-top:19px}.warning{color:#976e46;background:#fff9e8;border:1px solid #f4e5c1;border-radius:11px;padding:14px;font-size:12px;line-height:1.5}.modal-overlay{position:fixed;inset:0;background:#142d20a6;z-index:60;display:flex;align-items:center;justify-content:center;padding:20px;backdrop-filter:blur(4px)}.modal{background:#fff;width:min(100%,500px);border-radius:22px;max-height:min(92vh,850px);overflow:auto;padding:25px;box-shadow:0 25px 80px #18362733}.modal-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:21px}.modal-title{font-size:22px;letter-spacing:-.8px}.modal-sub{font-size:12px;color:#93a597;margin-top:6px}.modal .field-grid{margin-bottom:16px}.modal-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;background:#edf6ed;padding:16px 13px;border-radius:14px;margin:16px 0 20px;text-align:center}.modal-summary strong{display:block;font-size:17px}.modal-summary small{font-size:10px;color:#819889}.modal-actions{display:flex;gap:10px}.modal-actions .button{flex:1}.scan-area{min-height:180px;border:2px dashed #cbdfcf;background:#f5faf4;border-radius:14px;display:grid;place-items:center;text-align:center;padding:16px;color:#7e9582;font-size:12px;margin:18px 0}.scan-area video{border-radius:10px}.separator{display:flex;align-items:center;gap:10px;color:#a4b2a6;font-size:11px;text-transform:uppercase;margin:18px 0}.separator:before,.separator:after{content:'';height:1px;background:#e6ece5;flex:1}.alert{padding:12px 14px;background:#fff6e7;color:#8f763f;font-size:12px;border-radius:10px;line-height:1.55;margin-top:14px}.alert.error{background:#fff0ee;color:#a24d41}.alert.success{background:#e9f7ec;color:#307957}.inline-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.custom-form{margin-top:5px;display:grid;gap:17px}.custom-form .button{width:100%}.faded{opacity:.4}.tip{font-size:11px;color:#91a299;margin-top:8px;line-height:1.55}#toast{pointer-events:none;position:fixed;bottom:95px;left:50%;transform:translate(-50%,20px);background:#223f2e;color:white;padding:12px 18px;border-radius:12px;font-weight:700;font-size:12px;z-index:90;opacity:0;transition:opacity .2s,transform .2s;box-shadow:0 8px 30px #142e1533}#toast.visible{opacity:1;transform:translate(-50%,0)}.no-wrap{white-space:nowrap}.break-all{overflow-wrap:anywhere}@media(min-width:1500px){.dashboard-grid{grid-template-columns:minmax(0,1.55fr) minmax(310px,.9fr)}}@media(max-width:1120px){.sidebar{width:216px;padding:30px 15px}.app-content{margin-left:216px}.dashboard-grid{grid-template-columns:1fr}.macro-card{display:grid;grid-template-columns:repeat(3,1fr)}.search-layout,.weight-layout{grid-template-columns:1fr}.help-card{display:none}}@media(max-width:760px){body{background:#f7faf6}.sidebar{display:none}.app-content{margin-left:0;min-height:100dvh}.mobile-brand{display:flex;align-items:center;gap:7px;font:800 21px Manrope,sans-serif;letter-spacing:-1.3px}.brandmark.mini{width:28px;height:28px;font:700 20px sans-serif;border-radius:9px}.breadcrumb{display:none}.topbar{height:65px;padding:0 18px}.topright{gap:12px}.online-indicator{font-size:10px;padding:7px 10px}.avatar{width:30px;height:30px}main{padding:25px 16px 100px}.bottom-nav{position:fixed;display:grid;grid-template-columns:repeat(5,1fr);inset:auto 0 0;height:calc(66px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:#fff;border-top:1px solid #e6efe7;z-index:30;box-shadow:0 -5px 20px #263f3108}.bottom-button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:6px 0;border-radius:0;font-weight:800;font-size:10px}.bottom-button .ico{height:22px;width:22px}.bottom-button.active{color:#317b5b}.page-footer{margin:-65px 30px 100px;font-size:10px}.page-heading{align-items:start;flex-direction:column;gap:15px;margin-bottom:22px}.page-heading .date-control{align-self:stretch;justify-content:space-between}.page-heading p{font-size:12px;margin-top:7px}.calorie-card{padding:22px 20px;min-height:240px}.calorie-big strong{font-size:38px;letter-spacing:-2px}.calorie-big small{font-size:11px}.calorie-big .remaining{margin-top:23px;font-size:11px}.ring{height:128px;width:128px}.ring:before{inset:13px}.ring-inner strong{font-size:22px}.ring-inner small{font-size:10px}.macro-card{padding:20px;gap:17px}.macro-title{font-size:10px;gap:5px}.macro-title strong{font-size:11px}.macro-title small{display:none}.progress-track{height:7px}.dashboard-grid{gap:13px}.meal-grid{grid-template-columns:1fr;gap:12px}.meal-card{min-height:141px;padding:19px}.section-head{margin-top:27px}.section-head h2{font-size:18px}.hint-banner{padding:15px}.hint-banner p{font-size:11px}.search-main{padding:18px}.seg-tab{padding:12px 4px;font-size:11px}.help-card{display:none}.field-grid-4{grid-template-columns:repeat(2,1fr)}.saved-grid{grid-template-columns:1fr}.settings-controls{grid-template-columns:1fr 1fr}.setting-card{padding:19px}.modal-overlay{align-items:flex-end;padding:0}.modal{border-radius:22px 22px 0 0;width:100%;max-height:91dvh;padding:22px 18px calc(23px + env(safe-area-inset-bottom))}.modal-summary strong{font-size:15px}.result{padding:11px;gap:10px}.product-picture{height:46px;width:46px}.result .button{padding:9px 11px}.form-row{align-items:stretch}.form-row .button{flex-shrink:0}.weight-chart-card{padding:18px}.weight-list{padding:18px}}@media(max-width:390px){.calorie-big strong{font-size:32px}.ring{height:110px;width:110px}.ring:before{inset:11px}.macro-card{padding:16px}.date-label{min-width:120px}.button{padding:11px 12px}.tabline{gap:2px}.seg-tab{font-size:10px}}
/* Keep the macro heading across the full three-column layout on tablets/phones. */
@media(max-width:1120px){.macro-card .card-top{grid-column:1 / -1}}

/* Cloud account controls — Fuelday 1.1 */
.auth-switch{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin:12px 0 22px;font-size:13px;font-weight:650;color:#355442}
.auth-switch label{display:flex;align-items:center;gap:8px;cursor:pointer}.auth-switch input{accent-color:#3b9a70;width:17px;height:17px}
.setting-card .inline-actions{flex-wrap:wrap}.setting-card button[disabled]{opacity:.45;cursor:not-allowed}
