:root{--ink:#202820;--muted:#718071;--paper:#fffdf8;--line:#e6e7de;--leaf:#367151;--dark:#24503a;--soft:#f4f2e9;--red:#a44237}*{box-sizing:border-box}html,body{background:var(--paper);min-height:100%;color:var(--ink);overscroll-behavior-y:none;margin:0;font-family:Arial,Helvetica,sans-serif}.legal-page{color:#29231e;width:min(680px,100% - 40px);margin:0 auto;padding:48px 0 72px;font-size:1rem;line-height:1.65}.legal-page h1{margin:0 0 .2rem;font-size:clamp(2rem,8vw,3rem);line-height:1.1}.legal-page h2{margin:2rem 0 .45rem;font-size:1.2rem}.legal-page p{margin:.55rem 0}.legal-eyebrow{color:#847568;font-weight:700}.legal-updated{color:#756a60;font-size:.9rem}button,input,select{font:inherit}button{cursor:pointer}.app-shell{width:min(100%,640px);min-height:100dvh;padding:max(20px, env(safe-area-inset-top)) 20px calc(102px + env(safe-area-inset-bottom));margin:auto}.app-header,.sheet-title,.date-heading,.meal-heading,.food-row,.food-actions,.search-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.app-header{grid-template-columns:1fr auto 1fr;margin-bottom:19px;display:grid}.app-header .avatar{justify-self:end}.streak{color:#b96500;background:#fff7dc;border:1px solid #f2d783;border-radius:999px;align-items:center;gap:3px;min-height:30px;padding:5px 8px;font-size:.82rem;font-weight:800;line-height:1;display:inline-flex}.streak svg{color:#f39b16;width:16px;height:16px}.brand,.wordmark{letter-spacing:-.07em;font-size:1.55rem;font-weight:800}.brand span,.wordmark span{color:var(--leaf)}.avatar{background:var(--soft);width:36px;height:36px;color:var(--dark);border:0;border-radius:50%;place-items:center;font-weight:800;display:grid;position:relative;overflow:hidden}.avatar-initial{line-height:1}.avatar-image{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.page{padding-bottom:18px}.my-foods-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.my-foods-header h1{margin-bottom:0}.my-foods-add-button{flex:none;padding:10px 13px;font-size:.86rem}.eyebrow{color:var(--leaf);letter-spacing:.1em;text-transform:uppercase;margin:0 0 4px;font-size:.72rem;font-weight:800}h1,h2,p{margin-top:0}h1{letter-spacing:-.06em;margin-bottom:8px;font-size:2rem}h1 span{color:var(--muted);letter-spacing:0;font-size:1rem}h2{letter-spacing:-.025em;margin:0;font-size:1.06rem}.muted{color:var(--muted);line-height:1.45}.week-pies{grid-template-columns:repeat(7,1fr);gap:3px;margin:0;display:grid}.home-week-navigation{text-align:center;justify-content:center;margin:0 0 4px;display:flex}.home-day-navigation{grid-template-columns:32px minmax(0,1fr) 32px;align-items:center;gap:6px;margin:0 0 14px;display:grid}.home-week-navigation button,.day-navigation-button,.performance-week-navigation button{border:1px solid var(--line);min-height:32px;color:var(--dark);background:#fff;border-radius:9px;font-size:1rem;font-weight:800}.day-navigation-button{padding:0;font-size:.68rem}.week-range-button,.performance-week-navigation b{color:var(--muted);font-size:.73rem;font-weight:750}.week-range-button{background:0 0;border:0;width:100%;min-height:32px;padding:0}.home-week-budget{border:1px solid var(--line);background:#fffefa;border-radius:13px;justify-content:center;align-items:baseline;gap:8px;margin:0 0 14px;padding:8px 10px;display:flex}.home-week-budget b{color:var(--dark);font-size:.86rem}.home-week-budget small{color:var(--muted);text-transform:uppercase;font-size:.68rem;font-weight:800}.home-week-budget span{color:var(--muted);font-size:.7rem;font-weight:700}.home-week-budget.over span,.home-week-budget.over b{color:var(--red)}.day-pie{min-height:70px;color:var(--ink);background:0 0;border:0;border-radius:12px;justify-items:center;gap:2px;padding:5px 1px;font-size:.68rem;display:grid}.day-pie.selected{box-shadow:inset 0 0 0 2px var(--leaf);color:var(--dark);background:#edf4ed}.day-pie:focus-visible{outline-offset:2px;outline:3px solid #9fcbb0}.day-pie-total,.day-pie-target,.day-pie-divider{color:var(--ink);font-size:.55rem;font-weight:800;line-height:1}.day-pie-divider{color:var(--muted);font-weight:500}.calorie-status.under{color:var(--leaf)}.calorie-status.over{color:var(--red)}.day-pie.future-empty .day-pie-total,.day-pie.future-empty .day-pie-target,.day-pie.future-empty .day-pie-divider{color:var(--muted)}.calorie-status{white-space:nowrap}.home-page .calorie-status{margin:0;font-size:1.42rem}.pie{background:#d9ead3;border-radius:50%;place-items:center;width:26px;height:26px;display:grid;box-shadow:inset 0 0 0 1px #8fb787}.day-pie.past-empty .pie{background:#fff2cc;box-shadow:inset 0 0 0 1px #d8b253}.day-pie.over .pie{background:#f4cccc;box-shadow:inset 0 0 0 1px #df8d8d}.day-pie.future-empty .pie{background:#e7eae5;box-shadow:inset 0 0 0 1px #cfd5cc}.day-pie-day{color:var(--dark);font-size:.66rem;line-height:1}.scan-button,.secondary-button,.search-row button,.food-results button,.settings>button{border:1px solid var(--line);color:var(--dark);background:#fff;border-radius:10px;padding:10px 12px;font-size:.82rem;font-weight:700}.home-nutrient-summary{border:1px solid var(--line);background:var(--soft);border-radius:13px;margin-top:0;padding:7px}.home-nutrient-heading{justify-content:space-between;align-items:baseline;gap:8px;margin:0 2px 5px;display:flex}.home-nutrient-heading small,.home-nutrient-heading span,.home-nutrient dt,.home-nutrient dt small{color:var(--muted);letter-spacing:.07em;text-transform:uppercase;font-size:.62rem;font-weight:800}.home-nutrient-heading span{letter-spacing:.03em;text-transform:none;font-size:.56rem}.home-nutrient-grid{background:#e1e5dc;border:1px solid #e1e5dc;border-radius:11px;grid-template-columns:repeat(3,1fr);gap:1px;margin:0;display:grid;overflow:hidden}.home-nutrient{background:#fffefa;min-width:0;padding:5px 6px}.home-nutrient dt{white-space:nowrap;gap:3px;display:flex;overflow:hidden}.home-nutrient dt small{color:#94a294;letter-spacing:.03em;font-size:.5rem}.home-nutrient dd{color:var(--ink);letter-spacing:-.025em;text-overflow:ellipsis;white-space:nowrap;margin:2px 0 4px;font-size:.78rem;font-weight:800;overflow:hidden}.nutrient-progress{background:#dfe5dd;border-radius:999px;height:3px;display:block;overflow:hidden}.nutrient-progress>span{border-radius:inherit;background:var(--leaf);height:100%;display:block}.home-nutrient.allocation .nutrient-progress>span{background:#668b70}.home-nutrient.limit .nutrient-progress>span{background:#91a996}.home-nutrient.over-limit .nutrient-progress>span{background:var(--red)}.home-nutrient.over-limit dd{color:var(--red)}.home-nutrient-note{color:var(--muted);margin:8px 2px 0;font-size:.63rem;line-height:1.3}.performance-view-toggle{grid-template-columns:repeat(2,1fr);gap:7px;margin-bottom:11px;display:grid}.performance-view-toggle button{border:1px solid var(--line);min-height:36px;color:var(--muted);background:#fffefa;border-radius:10px;font-size:.76rem;font-weight:800}.performance-view-toggle button.active{border-color:var(--leaf);color:var(--dark);background:#edf4ed}.performance-week-navigation{text-align:center;grid-template-columns:32px 1fr 32px;align-items:center;gap:8px;margin-bottom:13px;display:grid}.home-week-navigation button:focus-visible,.performance-week-navigation button:focus-visible,.performance-view-toggle button:focus-visible,.performance-calendar-heading button:focus-visible,.week-range-button:focus-visible{outline:2px solid var(--leaf);outline-offset:2px}.nutrient-trend-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.nutrient-trend{border:1px solid var(--line);background:var(--soft);border-radius:10px;min-width:0;margin:0;padding:8px}.nutrient-trend figcaption b{text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.nutrient-trend svg{width:100%;margin-top:5px;display:block}.nutrient-trend-axis{stroke:#d5dbd1;stroke-width:1px}.nutrient-trend-target{fill:none;stroke:var(--muted);stroke-dasharray:4 3;stroke-width:2px}.nutrient-trend-actual{fill:none;stroke:var(--leaf);stroke-linecap:round;stroke-linejoin:round;stroke-width:3px}.performance-period{color:var(--muted);margin:9px 2px 13px;font-size:.76rem;font-weight:700}.performance-budget-card,.performance-average-card{background:var(--dark);color:#fff;border-radius:16px;gap:5px;padding:15px;display:grid}.performance-budget-card small,.performance-average-card small,.performance-card-heading small{color:#d7e8d9;letter-spacing:.08em;text-transform:uppercase;font-size:.67rem;font-weight:800}.performance-budget-card b{letter-spacing:-.05em;font-size:1.3rem}.performance-budget-card span{color:#d7e8d9;font-size:.76rem;font-weight:700}.performance-budget-card span.over{color:#ffd7d1}.performance-card{border:1px solid var(--line);background:#fffefa;border-radius:16px;margin-top:11px;padding:12px;box-shadow:0 3px 10px #18231908}.performance-card-heading{justify-content:space-between;align-items:baseline;gap:8px;margin:1px 2px 10px;display:flex}.performance-card-heading small{color:var(--muted)}.performance-card-heading span{color:var(--muted);font-size:.64rem}.performance-calendar{padding:11px}.performance-calendar-heading{text-align:center;grid-template-columns:32px 1fr 32px;align-items:center;gap:8px;display:grid}.performance-calendar-heading button{border:1px solid var(--line);min-height:32px;color:var(--dark);background:#fff;border-radius:9px;font-size:1rem;font-weight:800}.performance-calendar-heading b{color:var(--dark);font-size:.84rem}.performance-calendar-weekdays,.performance-calendar-days{grid-template-columns:repeat(7,1fr);gap:3px;display:grid}.performance-calendar-weekdays{color:var(--muted);text-align:center;margin-top:11px;font-size:.58rem;font-weight:800}.performance-calendar-days{margin-top:5px}.performance-calendar-day,.calendar-blank{min-height:48px}.performance-calendar-day{background:var(--soft);border-radius:8px;align-content:center;place-items:center;gap:2px;display:grid}.performance-calendar-day .performance-calendar-calories{color:var(--dark);font-size:.9rem;line-height:1}.performance-calendar-day .performance-calendar-date{color:var(--leaf);font-size:.5rem;font-weight:800}.performance-calendar-day.over .performance-calendar-calories{color:var(--red)}.performance-calendar-day.future{background:#f2f4f0}.performance-calendar-day.future .performance-calendar-calories,.performance-calendar-day.future .performance-calendar-date{color:#a1aaa1}.performance-total-table-head,.performance-total-table-values{text-align:center;grid-template-columns:repeat(3,1fr);display:grid}.performance-daily-strip{text-align:center;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;display:grid}.performance-total-table-head,.performance-daily-strip-day b{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;padding-bottom:6px;font-size:.58rem;font-weight:800}.performance-total-table-values{background:var(--soft);color:var(--dark);border-radius:9px;padding:8px 0 1px;font-size:.78rem}.performance-daily-strip-day{background:var(--soft);min-height:58px;color:var(--ink);border-radius:8px;align-content:start;gap:3px;padding:6px 2px;font-size:.55rem;font-weight:700;display:grid}.performance-daily-strip-day b{color:var(--dark)}.performance-daily-strip-day small{color:var(--leaf);font-size:.56rem;font-weight:800}.performance-daily-strip-day.over small{color:var(--red)}.performance-daily-strip-day.future,.performance-daily-strip-day.future b,.performance-daily-strip-day.future small{color:#a1aaa1}.performance-average-card{background:var(--soft);color:var(--ink);margin-top:11px;padding:13px 15px}.performance-average-card small{color:var(--muted)}.performance-average-card b{letter-spacing:-.04em;font-size:1.18rem}.performance-nutrient-grid{background:#e1e5dc;border:1px solid #e1e5dc;border-radius:11px;grid-template-columns:repeat(2,1fr);gap:1px;margin:0;display:grid;overflow:hidden}.performance-nutrient{background:var(--soft);min-width:0;padding:9px}.performance-nutrient dt{color:var(--muted);letter-spacing:.025em;text-overflow:ellipsis;white-space:nowrap;font-size:.62rem;font-weight:800;overflow:hidden}.performance-nutrient dd{color:var(--ink);letter-spacing:-.025em;margin:4px 0 0;font-size:.78rem;font-weight:800}.performance-nutrient.limit dd{color:var(--dark)}.performance-empty,.performance-nutrient-note{color:var(--muted);margin:2px;font-size:.72rem;line-height:1.4}.performance-nutrient-note{margin-top:9px;font-size:.63rem}.meal-list{gap:12px;margin-top:18px;display:grid}.meal{border:1px solid var(--line);background:#fffefa;border-radius:16px;padding:15px;box-shadow:0 3px 10px #18231908}.meal-name{align-items:center;gap:9px;display:flex}.meal-icon{width:32px;height:32px;color:var(--dark);border-radius:10px;place-items:center;display:grid}.meal-icon svg{width:21px;height:21px}.meal-icon-breakfast{color:#9a6424;background:#fff0d8}.meal-icon-lunch{color:var(--leaf);background:#edf4ed}.meal-icon-dinner{color:#486453;background:#eaf0e8}.meal-icon-snacks{color:#69755f;background:#f2f0e8}.meal-total>span{color:var(--muted);font-size:.84rem}.meal-total{align-items:center;gap:9px;display:flex}.meal-add{border:1px solid var(--line);width:31px;height:31px;color:var(--dark);background:#fff;border-radius:9px;font-size:1.25rem;line-height:1}.meal ul{margin:7px 0 0;padding:0;list-style:none}.food-row{text-align:left;background:0 0;border:0;width:100%;padding:12px 0 2px}.food-row b{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.96rem;overflow:hidden}.food-row-copy{gap:3px;min-width:0;display:grid}.food-row-copy small{color:var(--muted);font-size:.8rem;font-weight:500}.food-more{color:var(--muted);margin-left:auto;font-size:1.2rem}.food-row strong{white-space:nowrap;margin-left:auto;font-size:.88rem}.food-quantity{min-width:34px;color:var(--muted);font-size:.9rem}.empty-meal{color:#a1aaa1;margin:13px 0 1px;font-size:.86rem}.add-button{border:1px solid var(--line);color:var(--muted);background:#fff;border-radius:9px;margin:22px auto;padding:8px 10px;font-size:.78rem;font-weight:700;display:block}.add-actions{grid-template-columns:repeat(2,minmax(0,1fr));justify-content:center;gap:8px;display:grid}.add-actions .add-button,.add-actions .scan-button{min-height:64px;color:var(--dark);text-align:center;border-radius:12px;place-items:center;margin:22px 0;padding:8px 6px;font-size:.75rem;line-height:1.15;display:grid}.bottom-nav{z-index:3;width:min(100%,640px);padding:7px max(12px, env(safe-area-inset-left)) calc(7px + env(safe-area-inset-bottom));border-top:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffdf8f5;grid-template-columns:repeat(4,1fr);display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.bottom-nav button{min-height:50px;color:var(--muted);background:0 0;border:0;place-items:center;padding:6px 2px;display:grid}.nav-icon{width:28px;height:28px}.bottom-nav button.active{color:var(--dark);font-weight:800}.bottom-nav button.active .nav-icon{stroke-width:2.35px}.stack-form{gap:14px;display:grid}label{color:var(--muted);gap:6px;font-size:.8rem;font-weight:700;display:grid}input,select{width:100%;color:var(--ink);outline-color:var(--leaf);background:#fff;border:1px solid #d9ddd4;border-radius:10px;padding:11px}.two-up,.three-up{gap:10px;display:grid}.two-up{grid-template-columns:1fr 1fr}.three-up{grid-template-columns:repeat(3,1fr)}.food-form-section{border:1px solid #dfe4da;border-radius:12px;gap:10px;margin:0;padding:12px;display:grid}.food-form-section legend{color:var(--leaf);padding:0 4px;font-size:.78rem;font-weight:800}.primary-button{background:var(--leaf);color:#fff;border:0;border-radius:11px;padding:13px;font-weight:800}.generic-food-choices{gap:10px;display:grid}.food-actions{flex-wrap:wrap;justify-content:flex-start}.secondary-button{background:var(--soft)}.daily-targets{grid-template-columns:repeat(7,1fr);gap:5px;display:grid}.daily-targets div{background:var(--soft);text-align:center;border-radius:8px;gap:4px;padding:8px 2px;display:grid}.daily-targets small{color:var(--muted);font-size:.6rem}.daily-targets b{font-size:.67rem}.search-row input{flex:1}.search-row button{padding:11px}.food-filters{scrollbar-width:none;gap:7px;margin:10px -2px 0;padding:2px;display:flex;overflow-x:auto}.food-filters::-webkit-scrollbar{display:none}.food-filters button{border:1px solid var(--line);min-height:34px;color:var(--muted);background:#fff;border-radius:999px;flex:none;padding:7px 11px;font-size:.76rem;font-weight:700}.food-filters button.active{border-color:var(--leaf);background:var(--leaf);color:#fff}.autocomplete{position:relative}.meal-picker-add-new{margin-top:8px}.autocomplete-menu{z-index:9;border:1px solid var(--line);background:#fff;border-radius:12px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:hidden;box-shadow:0 12px 24px #18231920}.food-search-sheet{flex-direction:column;height:min(68dvh,560px);max-height:calc(100dvh - 32px);display:flex;overflow:hidden}.food-search-sheet:has(.selected-master-food){height:auto;max-height:calc(100dvh - env(safe-area-inset-top) - 16px)}.food-search-sheet>.autocomplete{flex-direction:column;flex:1;min-height:0;display:flex}.recent-meal-suggestions{margin-top:10px}.recent-meal-suggestions>small{color:var(--muted);text-transform:uppercase;margin:0 2px 5px;font-size:.66rem;font-weight:800;display:block}.recent-meal-suggestions>div{border:1px solid var(--line);border-radius:12px;overflow:hidden}.recent-meal-suggestion{border-bottom:1px solid var(--line);background:#fff;align-items:stretch;display:flex}.recent-meal-suggestion:last-child{border-bottom:0}.recent-meal-suggestion .autocomplete-option{border-bottom:0;flex:1;min-width:0}.recent-meal-quick-add{border:0;border-left:1px solid var(--line);background:var(--soft);color:var(--dark);flex:0 0 48px;font-size:1.45rem;font-weight:500;line-height:1}.recent-meal-quick-add:disabled{color:var(--muted);cursor:wait}.food-search-sheet .autocomplete-menu{flex:1;min-height:0;margin-top:9px;display:block;position:static;overflow:hidden auto}.autocomplete-option{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--ink);text-align:left;background:#fff;gap:3px;padding:11px 12px;display:grid}.autocomplete-option:last-child{border-bottom:0}.autocomplete-option small{color:var(--muted);font-size:.76rem}.autocomplete-message,.autocomplete-empty{color:var(--muted);margin:0;padding:13px;font-size:.86rem}.autocomplete-empty p{margin:0 0 10px}.picker-error{margin-top:12px}.label-upload{background:#fbfcf8;border:1px dashed #bfcbbb;border-radius:11px;margin:17px 0;padding:13px}.label-upload input{display:none}.label-upload span{font-weight:500;line-height:1.4}.food-results{gap:8px;margin-top:17px;display:grid}.my-foods-section{margin-top:22px}.my-foods-section>h2{letter-spacing:.08em;text-transform:uppercase;font-size:.84rem}.my-foods-section>.muted{margin:11px 0 0;font-size:.84rem}.my-foods-section .food-results{margin-top:10px}.see-all-foods{border:1px solid var(--line);width:100%;color:var(--dark);background:#fff;border-radius:10px;margin-top:10px;padding:10px 12px;font-size:.82rem;font-weight:800}.see-all-foods:disabled{color:var(--muted)}.food-results article{border:1px solid var(--line);background:#fff;border-radius:12px;justify-content:space-between;align-items:center;gap:13px;padding:13px;display:flex}.food-card-actions{flex:none;gap:6px;display:grid}.food-card-actions button{min-width:48px}.food-card-actions .food-card-edit{border:1px solid var(--line);color:var(--dark);background:#fff}.picker-food,.selected-master-food{border:1px solid var(--line);width:100%;color:var(--ink);text-align:left;background:#fff;border-radius:12px;gap:4px;padding:13px;display:grid}.picker-food small,.selected-master-food small{color:var(--muted);font-size:.78rem}.compact-results{margin-top:12px}.empty-picker{text-align:center;padding:18px 0}.food-results article .food-card-copy{gap:4px;min-width:0;display:grid}.food-card-name{align-items:baseline;gap:7px;min-width:0;margin:0;display:flex}.food-card-name b{text-overflow:ellipsis;white-space:nowrap;font-size:.96rem;overflow:hidden}.food-card-name span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;overflow:hidden}.food-results small{color:var(--muted);font-size:.75rem}.food-card-macros{text-overflow:ellipsis;white-space:nowrap;line-height:1.35;overflow:hidden;color:var(--ink)!important;font-size:.68rem!important}.account-page{padding:29px 4px 30px}.account-page-title{letter-spacing:-.06em;margin:0 0 47px;font-size:2.15rem}.account-section{margin-bottom:42px}.account-section-label{color:#787875;letter-spacing:.11em;text-transform:uppercase;margin:0 0 15px 6px;font-size:.76rem;font-weight:800}.account-profile-card,.account-information-card,.account-preferences-card,.account-action-card{background:#fff;border:1px solid #e8e7e3;border-radius:23px;overflow:hidden;box-shadow:0 3px 5px #20282012,0 1px 2px #20282012}.account-profile-card{align-items:center;gap:22px;min-height:160px;padding:23px 28px;display:flex}.account-profile-avatar{background:var(--soft);width:86px;height:86px;color:var(--dark);border:1px solid #d7d7d2;border-radius:50%;flex:none;place-items:center;font-size:1.4rem;font-weight:800;display:grid;position:relative;overflow:hidden}.account-profile-avatar .avatar-image{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.account-profile-copy{gap:5px;min-width:0;display:grid}.account-profile-copy strong{letter-spacing:-.03em;text-overflow:ellipsis;white-space:nowrap;font-size:1.1rem;overflow:hidden}.account-profile-copy span,.account-profile-copy small{color:#7c7d79;text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;font-weight:500;line-height:1.25;overflow:hidden}.account-profile-copy small{font-size:.79rem}.account-information-card{margin:0}.account-information-card div{border-bottom:1px solid #e7e7e4;justify-content:space-between;align-items:center;gap:20px;min-height:65px;padding:14px 24px;display:flex}.account-information-card div:last-child{border-bottom:0}.account-information-card dt{color:#7c7d79;font-size:.92rem}.account-information-card dd{color:var(--ink);text-align:right;margin:0;font-size:.92rem;font-weight:800}.account-preferences-card{padding:20px 24px 22px}.account-row-heading{align-items:center;gap:14px;display:flex}.account-row-heading>div{gap:3px;display:grid}.account-row-heading strong{font-size:.96rem}.account-row-heading span{color:#7c7d79;font-size:.77rem;font-weight:600}.account-choice-grid{grid-template-columns:1fr 1fr;margin-top:17px}.account-action-card{display:grid}.account-action-row{width:100%;min-height:68px;color:var(--ink);text-align:left;background:#fff;border:0;border-bottom:1px solid #e7e7e4;justify-content:space-between;align-items:center;gap:14px;padding:14px 22px;display:flex}.account-action-row:last-child{border-bottom:0}.account-action-row:not(article){transition:background .15s}.account-action-row:not(article):hover{background:#fcfdfa}.account-action-row:not(article):focus-visible,.account-sign-out:focus-visible{z-index:1;outline-offset:-3px;outline:3px solid #9fcbb0;position:relative}.settings-card-title{align-items:center;gap:11px;min-width:0;font-size:.94rem;font-weight:800;display:flex}.settings-card-copy{gap:3px;display:grid}.settings-card-copy small{color:var(--muted);font-size:.68rem;font-weight:600;line-height:1.3}.settings-icon{background:var(--soft);width:31px;height:31px;color:var(--leaf);border-radius:10px;flex:none;place-items:center;display:grid}.settings-icon svg{width:18px;height:18px}.settings-chevron{color:var(--muted);font-size:1.45rem;font-weight:400;line-height:1}.account-danger-section{margin-bottom:24px}.account-danger-row{color:var(--red)}.account-danger-row .settings-icon{color:var(--red);background:#fde5df}.account-sign-out{width:100%;color:var(--dark);background:0 0;border:0;border-radius:15px;justify-content:center;align-items:center;gap:9px;margin-top:17px;padding:12px;font-size:.9rem;font-weight:800;display:flex}.account-info-lede{color:var(--dark);margin-bottom:18px;font-size:1.04rem;font-weight:750;line-height:1.45}.account-info-list{gap:10px;margin:0 0 18px;display:grid}.account-info-list p,.account-info-callout{border:1px solid var(--line);background:#fff;border-radius:13px;margin:0;padding:13px 14px}.account-info-list p{gap:4px;display:grid}.account-info-list b{font-size:.88rem}.account-info-list span,.account-info-callout{color:var(--muted);font-size:.82rem;font-weight:600;line-height:1.45}.account-info-callout{color:var(--dark);background:#f2f7f1;border-color:#d5e2d6;margin-bottom:15px}.account-info-version{color:var(--muted);text-align:center;margin:0;font-size:.72rem;font-weight:700}.danger{color:var(--red)!important;background:#fff0ed!important;border:0!important}.sheet-backdrop{z-index:8;background:#18231966;align-items:end;display:flex;position:fixed;inset:0}.sheet{width:min(100%,640px);max-height:92vh;padding:22px 20px calc(22px + env(safe-area-inset-bottom));background:var(--paper);border-radius:24px 24px 0 0;margin:auto;overflow:auto;box-shadow:0 -10px 35px #1823192b}.sheet-title{margin-bottom:16px}.sheet-title button{background:var(--soft);border:0;border-radius:50%;width:34px;height:34px;font-size:1.4rem}.quantity-control{grid-template-columns:42px 1fr 42px;gap:8px;margin:15px 0;display:grid}.quantity-control button{background:var(--soft);color:var(--dark);border:0;border-radius:10px;font-size:1.35rem}.quantity-control input{text-align:center;font-weight:800}.picker-quantity-control{margin:0}.quantity-label{margin-top:14px}.quantity-control button{min-height:46px}.quantity-control input,.food-search-sheet input,.food-search-sheet select{font-size:16px}.amount-unit{margin-top:12px}.picker-amount-summary{margin:11px 0 15px}.nutrition{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;margin:20px 0;display:grid}.nutrition div{border-bottom:1px solid var(--line);justify-content:space-between;gap:8px;padding:11px 0;display:flex}.nutrition div:nth-child(odd){margin-right:16px}.nutrition dt{color:var(--muted);font-size:.8rem}.nutrition dd{margin:0;font-size:.8rem;font-weight:800}.scanner-video{background:#1d251e;border-radius:12px;width:100%;min-height:120px;margin:12px 0;display:block}.welcome,.loading{text-align:center;flex-direction:column;justify-content:center;align-items:center;width:min(100%,500px);min-height:100vh;margin:auto;padding:28px;display:flex}.welcome{background:radial-gradient(circle at 66% 38%, #ffe3bf 0 8%, transparent 8.5%), var(--paper)}.wordmark{font-size:clamp(3.2rem,16vw,5rem)}.welcome>p{color:var(--muted);margin:24px 0 30px}.welcome .primary-button{width:min(100%,280px)}.apple-sign-in{color:#fff;background:#000;border:0;border-radius:11px;width:min(100%,280px);margin-top:10px;padding:13px;font-weight:700}.apple-sign-in span{font-size:1.1em}.error{color:var(--red);margin:0 0 12px;font-size:.86rem}@media (min-width:641px){.pie{width:36px;height:36px}.week-pies{gap:9px}}.budget-card{background:var(--dark);color:#fff;border-radius:18px;grid-template-columns:1fr auto;align-items:center;gap:3px 12px;margin-bottom:14px;padding:16px;display:grid}.budget-card span,.budget-card small{letter-spacing:.08em;text-transform:uppercase;color:#d7e8d9;font-size:.7rem;font-weight:800}.budget-card b{letter-spacing:-.06em;align-items:baseline;gap:6px;font-size:1.65rem;display:flex}.budget-card .budget-unit{color:#d7e8d9;letter-spacing:.04em;font-size:.66rem}.budget-card button{color:#fff;background:#ffffff20;border:0;border-radius:9px;grid-area:1/2/span 2;padding:9px 11px;font-weight:800}.daily-calorie-limit{border:1px solid var(--line);background:#fffefa;border-radius:14px;gap:7px;margin:11px 0 15px;padding:12px;display:grid}.daily-calorie-limit>small{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.66rem;font-weight:800}.daily-calorie-control{grid-template-columns:42px minmax(0,1fr) 42px;align-items:center;gap:9px;display:grid}.daily-calorie-control>button{border:1px solid var(--line);background:var(--soft);min-height:42px;color:var(--dark);border-radius:10px;font-size:1.35rem;font-weight:800}.daily-calorie-control>label{display:block;position:relative}.daily-calorie-control input{color:var(--dark);text-align:center;padding-right:43px;font-size:1.15rem;font-weight:800}.daily-calorie-control label span{color:var(--muted);font-size:.7rem;font-weight:800;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.daily-calorie-save-state{min-height:1em;color:var(--muted);font-size:.64rem}.profile-controls{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:15px;display:grid}.profile-controls button{border:1px solid var(--line);min-height:75px;color:var(--ink);text-align:left;background:#fff;border-radius:14px;gap:5px;padding:12px 8px;display:grid}.profile-controls small,.plan-choice>small,.daily-preview>small{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;font-weight:800}.profile-controls b{text-overflow:ellipsis;white-space:nowrap;font-size:.98rem;overflow:hidden}.plan-choice,.daily-preview{background:var(--soft);border-radius:16px;margin:10px 0;padding:10px}.choice-grid{grid-template-columns:repeat(3,1fr);gap:7px;margin-top:0;display:grid}.activity-grid{grid-template-columns:repeat(2,1fr)}.activity-grid button:last-child{grid-column:1/-1}.nutrition-plan>small{margin:2px 2px 9px;display:block}.nutrition-plan-grid{grid-template-columns:repeat(2,1fr)}.nutrient-targets{border-top:1px solid #dfe4da;margin-top:12px;padding-top:10px}.nutrient-targets>small{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0 2px 8px;font-size:.68rem;font-weight:800;display:block}.nutrient-targets dl{grid-template-columns:repeat(3,1fr);gap:7px;margin:0;display:grid}.nutrient-targets dl div{background:#fff;border-radius:10px;min-width:0;padding:8px}.nutrient-targets dt{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.64rem;font-weight:750;overflow:hidden}.nutrient-targets dd{color:var(--ink);margin:3px 0 0;font-size:.78rem;font-weight:800}.nutrient-limit-form{border-top:1px solid #dfe4da;gap:10px;margin-top:12px;padding-top:10px;display:grid}.nutrient-limit-form>small{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;font-weight:800}.choice-grid button{min-height:45px;color:var(--muted);background:#fff;border:1px solid #dfe4da;border-radius:11px;padding:8px;font-size:.78rem;font-weight:750}.choice-grid button.chosen{border-color:var(--leaf);background:var(--leaf);color:#fff;box-shadow:0 4px 12px #3671512d}.wheel-picker{background:var(--soft);text-align:center;border:0;border-radius:14px;min-height:210px;font-size:1.25rem}.wheel-picker option{padding:11px}.daily-preview .daily-targets{margin-top:8px}.units-setting .choice-grid{grid-template-columns:1fr 1fr}
