:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#243b31;background:#f4f6ef;font-family:Arial,Helvetica,sans-serif}*{box-sizing:border-box}body{margin:0}main{max-width:700px;margin:auto;padding:32px 22px}.brand{color:inherit;letter-spacing:-1px;font-size:22px;font-weight:800;text-decoration:none;display:inline-block}.brand span{color:#82aa5b;margin-left:5px}.card{background:#fff;border:1px solid #e1e7db;border-radius:24px;margin-top:42px;padding:40px;box-shadow:0 12px 44px #243b3108}.eyebrow{color:#617653;letter-spacing:2px;font-size:10px;font-weight:700}h1{letter-spacing:-2px;margin:20px 0;font-size:clamp(32px,7vw,46px);line-height:1.08}h2{margin-top:28px;font-size:19px}p{line-height:1.6}.intro,footer{color:#6e7b72}label{gap:7px;margin:18px 0;font-size:14px;font-weight:600;display:grid}input{width:100%;font:inherit;background:#fafbf8;border:1px solid #ced9c9;border-radius:9px;padding:13px}input:focus-visible,button:focus-visible,a:focus-visible{outline-offset:3px;outline:3px solid #82aa5b}button{color:#fff;width:100%;font:inherit;cursor:pointer;background:#31523d;border:none;border-radius:9px;padding:14px}button:disabled{opacity:.6;cursor:wait}.switch{color:#31523d;background:0 0;margin-top:9px;font-size:13px}.status{background:#f1f5ec;border-radius:8px;padding:12px}.error{color:#9a342b;font-size:14px}.ai-box{border:1px solid #e1e7db;border-radius:12px;margin:24px 0;padding:20px}.ai-box h3{margin:0;font-size:17px}.ai-prompt{color:#6e7b72;font-size:14px}.ai-reply{white-space:pre-wrap;overflow-wrap:anywhere;background:#f4f6ef;border-radius:8px;min-height:64px;margin:12px 0 18px;padding:14px;line-height:1.6}.food-result h4{margin:24px 0 8px;font-size:21px}.food-origin,.food-attribution{color:#617653;font-size:12px}.food-nutrients{margin:0}.food-nutrients div{border-bottom:1px solid #e1e7db;justify-content:space-between;gap:16px;padding:9px 0;display:flex}.food-nutrients dd{margin:0;font-weight:600}.food-attribution a{color:inherit}footer{text-align:center;padding:28px;font-size:12px}@media (max-width:480px){.card{margin-top:28px;padding:25px}}:root{color:#20392e;background:#f7f8f4;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.app-shell{max-width:1050px;padding:0 32px 100px}.app-header{border-bottom:1px solid #e2e8df;justify-content:space-between;align-items:center;height:86px;display:flex}.app-logo{color:#1f3b2e;letter-spacing:-1.2px;font-size:23px;font-weight:800;text-decoration:none}.app-logo>span:first-child{color:#fff;letter-spacing:0;background:#315844;border-radius:13px;place-items:center;width:38px;height:38px;margin-right:8px;font-size:25px;display:inline-grid}.header-right{align-items:center;gap:13px;display:flex}.greeting-name{color:#738178;font-size:13px;font-weight:600}.avatar{color:#315844;background:#dce9d2;border-radius:50%;width:37px;height:37px;padding:0;font-size:14px;font-weight:800}.top-nav{border-bottom:1px solid #e5ebe1;gap:32px;display:flex}.top-nav button{color:#849088;background:0 0;border-bottom:3px solid #0000;border-radius:0;width:auto;padding:21px 0 17px;font-size:13px;font-weight:700}.page-body{padding:47px 0 30px}.page-title-row{justify-content:space-between;align-items:center;gap:20px;margin-bottom:32px;display:flex}.app-shell h1{letter-spacing:-2.4px;margin:10px 0 8px;font-family:Georgia,Times New Roman,serif;font-size:clamp(39px,6vw,56px);font-weight:500;line-height:1}.app-shell h2{letter-spacing:-.6px;margin:5px 0;font-size:22px}.app-shell h3{margin:0;font-size:15px}.kicker{color:#819274;letter-spacing:1.6px;margin:0;font-size:10px;font-weight:800}.page-subtitle{color:#8a978e;margin:0;font-size:14px}.date-picker{margin:0}.date-picker input{color:#53655a;background:#fff;border:1px solid #e1e9dd;width:auto;max-width:160px;padding:10px;font-size:12px}.summary-grid,.settings-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.summary-card{background:#fff;border:1px solid #e7ece3;border-radius:18px;padding:23px;box-shadow:0 5px 25px #20392e08}.summary-top{color:#819187;letter-spacing:1px;align-items:center;gap:8px;font-size:10px;font-weight:800;display:flex}.metric-icon{color:#52775b;font-size:19px}.text-button{color:#7d8e7d;letter-spacing:0;background:0 0;width:auto;margin-left:auto;padding:0;font-size:11px;text-decoration:underline}.metric{white-space:nowrap;margin:22px 0 14px}.metric strong{letter-spacing:-1.6px;font-size:clamp(30px,4vw,39px);font-weight:700}.metric>span{color:#9aa69c;font-size:12px}.progress-track{background:#e8eee4;border-radius:999px;height:8px;overflow:hidden}.progress-track>div{border-radius:inherit;background:#82aa70;height:100%}.summary-card>p{color:#8c9a8e;margin:11px 0 0;font-size:12px}.section-header{justify-content:space-between;align-items:end;gap:12px;margin:43px 0 18px;display:flex}.small-primary{white-space:nowrap;background:#315844;border-radius:10px;width:auto;padding:12px 18px;font-size:12px;font-weight:700}.meal-list{grid-template-columns:1fr 1fr;gap:14px;display:grid}.meal-card{background:#fff;border:1px solid #e7ece3;border-radius:16px;padding:18px}.meal-card-head{align-items:center;gap:13px;display:flex}.meal-card-head>div:nth-child(2){flex:1}.meal-card-head h3{margin:0;font-size:14px}.meal-card-head p{color:#a1aca3;margin:3px 0 0;font-size:11px}.meal-icon{color:#bc8f4e;background:#fbf1df;border-radius:13px;flex:0 0 42px;place-items:center;height:42px;font-size:22px;display:grid}.meal-icon-1{color:#799661;background:#edf4e8}.meal-icon-2{color:#8e85a5;background:#f0edf7}.meal-icon-3{color:#bd8d7a;background:#faefeb}.add-circle{color:#789375;background:#f3f7f1;border-radius:50%;width:32px;height:32px;padding:0;font-size:20px}.diary-row,.ingredient-row{border-top:1px solid #edf1eb;align-items:center;gap:10px;margin-top:10px;padding:13px 0 2px;font-size:13px;display:flex}.diary-row>div:first-child,.ingredient-row>div:first-child{flex:1;min-width:0}.diary-row strong,.ingredient-row strong{overflow-wrap:anywhere;display:block}.diary-row small,.ingredient-row small,.library-name small,.library-stat small{color:#9aa79d;margin-top:4px;font-size:11px;display:block}.diary-row>span small{display:inline}.row-delete{color:#a9b3a9;background:0 0;width:23px;padding:0;font-size:20px}.quiet-button{color:#7a8e79;background:0 0;width:auto;margin:22px auto;font-size:12px;font-weight:700;display:block}.bottom-nav{display:none}.search-card{background:#fff;border:1px solid #e6ece2;border-radius:15px;gap:10px;padding:12px;display:flex}.search-card input{background:0 0;border:0}.search-card .secondary{white-space:nowrap;width:auto}.list-caption{color:#9aa99a;letter-spacing:1.2px;margin:29px 0 12px;font-size:10px;font-weight:800}.library-list{background:#fff;border:1px solid #e6ece2;border-radius:16px;padding:0 16px}.library-row{text-align:left;color:#2c4435;background:0 0;border-bottom:1px solid #edf1eb;border-radius:0;align-items:center;gap:12px;width:100%;padding:14px 0;display:flex}.library-row:last-child{border-bottom:0}.list-emoji{color:#78986c;background:#eef4eb;border-radius:11px;flex:0 0 38px;place-items:center;height:38px;font-size:22px;display:grid}.library-name{flex:1;min-width:0}.library-name strong{overflow-wrap:anywhere;font-size:13px;display:block}.library-stat{text-align:right;font-size:12px;font-weight:700}.feature-note{background:#eaf2e5;border:1px solid #dfebd9;border-radius:15px;gap:15px;padding:20px;display:flex}.feature-note>span{color:#6e9862;font-size:27px}.feature-note strong{font-size:14px}.feature-note p{color:#80937d;margin:4px 0 0;font-size:12px}.recipe-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.recipe-card{background:#fff;border:1px solid #e6ece2;border-radius:16px;overflow:hidden}.recipe-art{color:#96b481;background:#edf3e7;place-items:center;height:105px;font-size:50px;display:grid}.recipe-content{padding:17px}.recipe-content h3{margin:8px 0}.recipe-content p{color:#708174;font-size:11px}.recipe-content p span{color:#a6b0a8}.recipe-tag{color:#89a57c;letter-spacing:1px;font-size:9px;font-weight:800}.recipe-actions{align-items:center;gap:8px;margin-top:15px;display:flex}.empty-state{text-align:center;background:#fff;border:1px dashed #d9e5d3;border-radius:16px;grid-column:1/-1;padding:45px 20px}.empty-state>span{color:#a9c49c;font-size:32px}.empty-state h3{margin:10px 0}.empty-state p,.empty,.muted{color:#94a199;font-size:13px}.empty-state .small-primary{margin-top:8px}.settings-grid .summary-card h2{margin:16px 0;font-size:27px}.settings-grid h2 small{color:#91a095;font-size:13px}.weight-history{background:#fff;border-radius:15px;margin-top:30px;padding:20px}.secondary{color:#416248;background:#eef4eb;border:1px solid #dfebd9;font-size:12px;font-weight:700}.icon-btn{color:#829386;background:#f1f4ef;border-radius:50%;flex:0 0 33px;width:33px;height:33px;padding:0;font-size:21px}.loading{color:#8a978e;padding:50px 0}.toast{z-index:20;color:#fff;background:#315844;border-radius:10px;padding:12px 18px;font-size:13px;position:fixed;top:20px;right:24px;box-shadow:0 5px 20px #20392e24}.overlay{z-index:30;background:#20372fc0;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.sheet{background:#fff;border-radius:20px;width:min(520px,100%);max-height:min(850px,92vh);padding:27px;overflow-y:auto;box-shadow:0 20px 70px #1b302b40}.sheet-heading{justify-content:space-between;align-items:start;gap:15px;display:flex}.sheet-heading h2{letter-spacing:-1px;margin:7px 0;font-family:Georgia,serif;font-size:29px;font-weight:500}.stack>label{margin:14px 0}.stack input,.stack select,.search-card input{min-height:44px}.stack select{color:#243b31;width:100%;font:inherit;background:#fafbf8;border:1px solid #ced9c9;border-radius:9px;padding:12px}.stack>button:not(.icon-btn){margin-top:10px}.sheet-results{max-height:320px;overflow-y:auto}.lookup-actions{grid-template-columns:1fr 1fr;gap:10px;margin:12px 0;display:grid}.barcode-form{gap:8px;display:flex}.barcode-form button{width:auto;padding:0 20px;font-size:12px}.nutrition-grid{grid-template-columns:1fr 1fr;gap:0 12px;display:grid}.nutrition-grid label{margin:8px 0}.form-caption{color:#829486;letter-spacing:1px;font-size:10px;font-weight:800}.form-caption span{float:right;color:#aab4ab;letter-spacing:0;font-weight:400}.optional{color:#a5b0a7;font-weight:400}.photo-button{text-align:center;color:#547b54;cursor:pointer;background:#f3f8f0;border:1px dashed #b3c7ac;border-radius:10px;padding:14px;font-size:13px;display:block}.photo-button input{display:none}.label-preview{object-fit:contain;border-radius:10px;width:100%;max-height:200px}.notice{color:#5b7755;background:#f2f6eb;border-radius:9px;padding:12px;font-size:12px}.help-text{color:#91a095;margin:-7px 0 10px;font-size:11px}.portion-summary{color:#315844;background:#f2f7ee;border-radius:11px;gap:28px;padding:16px;font-size:23px;font-weight:750;display:flex}.portion-summary small{color:#8da087;font-size:11px;font-weight:600}.compact{margin:25px 0 10px}.scanner video{object-fit:cover;background:#20392e;border-radius:10px;width:100%;max-height:270px}.scanner p{color:#839487;font-size:12px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:700px){.app-shell{padding:0 20px 95px}.app-header{height:70px}.app-logo{font-size:20px}.app-logo>span:first-child{width:34px;height:34px}.top-nav{display:none}.page-body{padding-top:34px}.page-title-row{align-items:start}.page-title-row>.small-primary{margin-top:11px}.summary-grid{gap:10px}.summary-card{padding:17px}.metric{margin-top:17px}.metric strong{font-size:28px}.metric>span{margin-top:2px;display:block}.meal-list{grid-template-columns:1fr;gap:10px}.section-header{margin-top:32px}.recipe-grid{grid-template-columns:1fr 1fr}.bottom-nav{z-index:10;padding:7px 8px max(7px, env(safe-area-inset-bottom));background:#fff;border-top:1px solid #e6ece2;justify-content:space-around;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-nav button{color:#a4afa5;background:0 0;flex:1;justify-items:center;gap:2px;width:auto;padding:4px;font-size:10px;font-weight:700;display:grid}.bottom-nav button span{font-size:22px;line-height:1}.bottom-nav button.active{color:#315844}.overlay{align-items:end;padding:0}.sheet{max-height:92dvh;padding:24px 20px max(24px, env(safe-area-inset-bottom));border-radius:20px 20px 0 0}.greeting-name{display:none}}@media (max-width:430px){.date-picker input{width:125px;font-size:11px}.summary-top{font-size:9px}.text-button{font-size:10px}.search-card{display:block}.search-card .secondary{width:100%}.settings-grid,.recipe-grid{grid-template-columns:1fr}}:root{color:#17263a;background:#f4f6fa}button{background:#2758c7}input,.stack select{color:#17263a;background:#f8faff;border-color:#d5dce8}input:focus-visible,button:focus-visible,a:focus-visible{outline-color:#5279db}.app-logo,.library-row{color:#17263a}.app-logo>span:first-child,.small-primary,.toast{background:#2758c7}.logo-dot,.title-dot{color:#4f7ce6}.app-shell h1,.sheet-heading h2{letter-spacing:-1.5px;font-family:inherit;font-weight:750}.app-shell h1{font-size:clamp(34px,5vw,46px)}.kicker,.list-caption{color:#697a96}.top-nav button.nav-active{color:#2758c7;border-bottom-color:#2758c7}.avatar{color:#234ea8;background:#e3eaff}.summary-card,.meal-card,.library-list,.recipe-card,.search-card{border-color:#e1e6ef}.protein-card{background:#eef3ff}.metric-icon,.text-button{color:#5374b4}.progress-track{background:#e4eaf4}.progress-track>div{background:#386bd7}.protein-card .progress-track>div{background:#8a6bd4}.secondary{color:#3159ab;background:#edf2ff;border-color:#dce6ff}.list-emoji,.add-circle{color:#426ac4;background:#edf2ff}.bottom-nav button.active{color:#2758c7}.account-wrap{position:relative}.account-menu{z-index:25;background:#fff;border:1px solid #dfe5ef;border-radius:12px;width:200px;padding:8px;position:absolute;top:46px;right:0;box-shadow:0 12px 30px #17263a20}.account-menu strong{padding:10px;font-size:13px;display:block}.account-menu button{text-align:left;color:#233550;background:0 0;padding:11px 10px;font-size:13px}.account-menu button:hover{background:#f2f5fa}.day-controls{align-items:center;gap:6px;margin-top:14px;display:flex}.day-controls button{color:#3159ab;background:#eaf0fc;width:auto;padding:5px 12px;font-weight:700}.day-controls button:first-child,.day-controls button:last-child{place-items:center;width:36px;height:32px;padding:4px;display:grid}.day-controls button svg{fill:none;stroke:currentColor;stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.full-screen-overlay{background:#f4f6fa;align-items:stretch;padding:0}.full-screen-sheet{width:100%;height:100%;max-height:none;padding:max(24px, env(safe-area-inset-top)) 20px max(36px, env(safe-area-inset-bottom));box-shadow:none;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:#f8faff;border-radius:0;overflow-y:auto}.full-screen-sheet>.stack{width:min(680px,100%);margin:0 auto}.full-screen-sheet .sheet-results{max-height:none;overflow:visible}.full-screen-sheet .library-row{background:#fff;padding:14px 12px}.picker-tabs{scrollbar-width:none;gap:8px;margin:20px 0 4px;display:flex;overflow-x:auto}.picker-tabs button{color:#52647f;background:#edf1f7;border-radius:999px;flex:none;width:auto;padding:9px 15px;font-size:13px;font-weight:700}.picker-tabs button[aria-selected=true]{color:#fff;background:#2758c7}.portion-summary{color:#244b9b;background:#edf2ff}.photo-button{color:#3159ab;background:#edf2ff;border-color:#aabfee}@media (max-width:700px){.full-screen-sheet{border-radius:0;height:100dvh;max-height:100dvh}}.diary-entry{color:#17263a;text-align:left;background:0 0;border-radius:0;width:100%}.diary-entry-name{flex:1;min-width:0}.diary-entry-name strong{overflow-wrap:anywhere;display:block}.diary-entry-name small{color:#7b8ba0;margin-top:4px;font-size:11px;display:block}.entry-chevron{color:#8b9ab0;padding-left:5px;font-size:22px}.recipe-open{color:#17263a;text-align:left;background:0 0;gap:9px;width:100%;padding:18px;display:grid}.recipe-title{overflow-wrap:anywhere;font-size:16px}.recipe-open>span:not(.recipe-tag){color:#667891;font-size:12px}.meal-card{border-radius:18px;padding:22px}.meal-card-head{gap:14px;min-height:52px}.meal-card-head h3{color:#17263a;letter-spacing:-.4px;font-size:21px;font-weight:750}.meal-card-head p{color:#71819a;margin-top:5px;font-size:12px}.meal-icon{border-radius:15px;flex-basis:50px;width:50px;height:50px;font-size:26px}.meal-icon-1,.meal-icon-2,.meal-icon-3{color:#426ac4;background:#edf2ff}.meal-nutrition{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:20px 0 4px;display:grid}.meal-nutrition>div{background:#f5f7fb;border-radius:11px;gap:5px;min-width:0;padding:11px 9px;display:grid}.meal-nutrition strong{color:#243b60;text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:750;overflow:hidden}.meal-nutrition strong small{font-size:11px;font-weight:600}.meal-nutrition span{color:#71819a;font-size:10px;font-weight:700}.meal-entries{border-top:1px solid #e8edf5;margin-top:14px}.meal-entries .diary-row{border-top:0;margin-top:0;padding-top:14px}.meal-card-actions{justify-content:flex-end;margin-top:18px;display:flex}.meal-add-button{color:#fff;background:#2758c7;border-radius:999px;justify-content:center;align-items:center;gap:10px;width:auto;min-width:142px;padding:12px 18px;font-size:14px;font-weight:700;display:inline-flex}.meal-add-button span{font-size:18px;line-height:1}@media (max-width:430px){.meal-card{padding:18px}.meal-nutrition{gap:6px}.meal-nutrition>div{padding:10px 7px}.meal-nutrition strong{font-size:14px}.meal-nutrition span{font-size:9px}.meal-add-button{min-width:132px}}.recipe-open small{color:#8b99ab}.danger-button{color:#a3322c;background:#fff2f1;border:1px solid #f2d4d1;font-weight:700}.screen-back{color:#3159ab;text-align:left;background:0 0;width:auto;margin:0 0 16px;padding:8px 2px;font-weight:700}.screen-back:before{content:"←";margin-right:8px}.stack>.screen-back:not(.icon-btn){margin-top:0}.food-icon{background:#edf2ff;border-radius:11px;flex:0 0 38px;place-items:center;width:38px;height:38px;font-size:22px;line-height:1;display:inline-grid}.recipe-icon{margin-bottom:2px}.icon-picker{background:#fff;border:1px solid #dfe6f2;border-radius:12px;margin:14px 0;padding:12px}.icon-picker summary{cursor:pointer;color:#3159ab;font-size:13px;font-weight:700}.icon-picker summary span{vertical-align:middle;margin-right:8px;font-size:23px}.icon-choices{grid-template-columns:repeat(auto-fill,minmax(42px,1fr));gap:7px;padding-top:14px;display:grid}.icon-choices button{background:#f4f6fa;border:2px solid #0000;width:42px;height:42px;padding:0;font-size:23px}.icon-choices button[aria-pressed=true]{background:#e6edff;border-color:#2758c7}.icon-reset{color:#526b98;background:0 0;width:auto;margin-top:10px;padding:6px 0;font-size:12px}.estimate-entry{width:100%;margin:10px 0 4px;padding:13px}.estimate-badge{background:#f0eaff;border-radius:999px;width:fit-content;padding:3px 7px;font-weight:700;color:#6549a4!important;display:inline-block!important}.stack textarea{resize:vertical;color:#17263a;width:100%;min-height:120px;font:inherit;background:#f8faff;border:1px solid #d5dce8;border-radius:9px;padding:12px;line-height:1.5}.stack textarea:focus-visible{outline-offset:1px;outline:2px solid #5279db}.estimate-entry+.picker-tabs{margin-top:14px}@media (max-width:700px){.bottom-nav button{font-size:9px}}.confirm-backdrop{z-index:60;background:#17263a70;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.confirm-card{color:#17263a;background:#fff;border:1px solid #e1e6ef;border-radius:18px;width:min(430px,100%);padding:24px;box-shadow:0 20px 60px #17263a30}.confirm-card h2{margin:8px 0 16px;font-size:22px}.confirm-card p{color:#687991;font-size:14px;line-height:1.5}.confirm-card p strong{color:#243550}.confirm-actions{justify-content:flex-end;gap:10px;margin-top:22px;display:flex}.confirm-actions button{width:auto;padding:11px 16px}.collection-search{max-width:520px;margin:18px 0 4px}.estimate-source{background:#f8faff;border:1px solid #dfe6f2;border-radius:12px;margin:16px 0;padding:14px}.estimate-source .kicker{display:block}.estimate-source p:not(.kicker){color:#52647f;white-space:pre-wrap;margin:9px 0;line-height:1.5}.save-estimate-option{background:#fff;border:1px solid #dfe6f2;border-radius:10px;align-items:center;gap:10px;padding:12px;display:flex}.stack .save-estimate-option input{flex:0 0 20px;width:20px;height:20px;min-height:20px;margin:0}.ingredient-estimate-details{color:#526b98;margin-top:7px;font-size:12px}.ingredient-estimate-details summary{cursor:pointer;font-weight:700}.ingredient-estimate-details p{color:#52647f;white-space:pre-wrap}
