:root{--bg:#f4efe8;--surface:#fffdf9;--surface-soft:#faf6f0;--ink:#18201a;--muted:#667167;--line:#18201a1a;--accent:#c85f33;--shadow:0 8px 24px #29231d0d}*{box-sizing:border-box}html{background:var(--bg);min-height:100%}body{color:var(--ink);margin:0;font-family:Avenir Next,Segoe UI,sans-serif}a{color:inherit}h1,h2,h3,p,ul{margin:0}.appShell{width:min(1120px,100vw - 24px);margin:0 auto;padding:8px 0 28px}.topbar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;padding:2px 2px 6px;display:flex}.headerCopy{text-align:left;flex:auto;min-width:0}.headerLine{align-items:flex-end;gap:6px;min-width:0;display:flex}.eyebrow{color:var(--accent);letter-spacing:-.02em;white-space:nowrap;font-size:1.6rem;font-weight:650;line-height:1}.headerDot{color:#18201a6b;flex:none;font-size:1.05rem;line-height:1;transform:translateY(-1px)}.cardLabel{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;font-size:1.05rem;font-weight:700}.pageTitle{letter-spacing:-.01em;color:#18201a94;white-space:nowrap;margin:0;font-size:1.28rem;font-weight:600;line-height:1;transform:translateY(-1px)}.lede{color:var(--muted);margin-top:4px;font-size:.9rem}.navTabs{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.topbarActions{align-items:center;gap:8px;display:flex}.mobileOnly{display:none}.navLink{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:999px;padding:8px 12px;font-size:.92rem;text-decoration:none}.navLink.active{background:var(--ink);border-color:var(--ink);color:#fff}.accountBadge{text-overflow:ellipsis;white-space:nowrap;max-width:220px;color:var(--muted);font-size:.84rem;overflow:hidden}.accountButton{cursor:pointer;font:inherit}.menuButton{border:1px solid var(--line);background:var(--surface);width:36px;height:36px;color:var(--muted);font:inherit;appearance:none;cursor:pointer;border-radius:999px;place-items:center;padding:0;line-height:1;display:grid}.menuGlyph{align-content:center;justify-items:center;gap:4px;width:16px;display:inline-grid}.menuGlyph span{background:currentColor;border-radius:999px;width:16px;height:1.5px;display:block}.mobileMenuPanel,.mobileMenuScrim{display:none}.mobileMenuLink{border-bottom:1px solid var(--line);color:var(--muted);text-align:left;justify-content:space-between;align-items:center;padding:14px 0;text-decoration:none;display:flex}.mobileMenuLink.active{color:var(--ink)}.mobileMenuChevron,.sectionTag{color:var(--muted);font-size:.82rem;font-weight:600}.mobileMenuTop{justify-content:space-between;align-items:start;gap:12px;display:flex}.mobileMenuList{margin-top:18px}.mobileMenuEmail{color:var(--muted);margin-bottom:10px;font-size:.88rem}.mobileMenuAction{cursor:pointer;width:100%;font:inherit;text-align:left;background:0 0;border:0;padding:14px 0}.menuCloseButton{border:1px solid var(--line);background:var(--surface);width:36px;height:36px;color:var(--muted);font:inherit;cursor:pointer;border-radius:999px;font-size:1.2rem}.pageGrid{grid-template-columns:1fr;gap:12px;display:grid}.mainColumn,.sideColumn,.stackGap{gap:12px;display:grid}.pageGrid>:only-child{grid-column:1/-1}.panel,.card,.mealLog,.summaryItem{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:14px}.panel,.card{padding:16px}.sectionTitle,.card h2{letter-spacing:-.03em;font-size:1.15rem;line-height:1.1}.panelHeader{justify-content:space-between;align-items:start;gap:12px;display:flex}.solidButton,.ghostButton,.chip,.iconButton,.dayArrow,.dayCenter,.mealToggle{font:inherit;cursor:pointer;appearance:none}.solidButton,.ghostButton,.chip,.mealToggle,.iconButton{border-radius:999px;padding:8px 12px}.solidButton{background:var(--ink);color:#fff;border:0}.ghostButton,.chip,.mealToggle,.iconButton{border:1px solid var(--line);background:var(--surface);color:var(--muted)}.iconButton{text-align:center;min-width:36px}.mealToggle.active{background:var(--ink);border-color:var(--ink);color:#fff}.dayBar{gap:0;display:grid}.dayCard{border:1px solid var(--line);box-shadow:var(--shadow);background:linear-gradient(#ffffff8c,#fffdf9f5);border-radius:18px;overflow:hidden}.dayNavigator{justify-content:center;align-items:center;gap:12px;padding:12px 14px 10px;display:flex}.dayArrow,.dayCenter{background:var(--surface);border:1px solid var(--line)}.dayArrow{width:40px;height:40px;color:var(--ink);border-radius:999px;padding:0;font-size:1.4rem;line-height:1}.dayArrow:disabled{opacity:.4;cursor:default}.dayCenter{min-width:180px;color:var(--ink);text-align:center;border-radius:14px;padding:10px 18px}.dayCenter strong{font-size:1rem;line-height:1.1;display:block}.dayCenter span{color:var(--muted);margin-top:2px;font-size:.86rem;display:block}.helperText{color:var(--muted);text-align:center;font-size:.9rem;line-height:1.45}.calorieBalanceCard{width:100%;color:var(--ink);text-align:left;background:0 0;border-top:1px solid #18201a14;padding:10px 14px 12px}.calorieBalanceHeader{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.calorieBalanceHeader span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.76rem;font-weight:700}.calorieBalanceHeader strong{font-size:1rem;line-height:1.1}.calorieBalancePrimary{letter-spacing:-.03em;margin-top:4px;font-size:1.65rem;font-weight:700;line-height:1.02}.calorieBalanceMeta{color:var(--muted);flex-wrap:wrap;gap:6px 12px;margin-top:6px;font-size:.82rem;display:flex}.calorieRailTrack{background:#ece5dc;border-radius:999px;height:5px;margin-top:10px;position:relative;overflow:hidden}.calorieRailFood,.calorieRailNet{border-radius:999px;transition:width .22s,background-color .22s;position:absolute;inset:0 auto 0 0}.calorieRailFood{background:#18201a1f}.calorieRailNet.safe{background:linear-gradient(90deg,#7c867a,#90998d)}.calorieRailNet.caution{background:linear-gradient(90deg,#cf8a3c,#e09f48)}.calorieRailNet.danger{background:linear-gradient(90deg,#bf5948,#cf705e)}.dailyScorecardSection{background:linear-gradient(#fffffffa,#fffcf8eb);border:1px solid #18201a14;border-radius:16px;margin:10px 14px 0;padding:12px}.dailyScorecardHeader{display:block}.dailyScorecardEyebrow{color:#18201a8f;letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:700}.dailyScorecardRows{gap:6px;margin-top:10px;display:grid}.dailyScorecardRow{background:#ffffffd1;border:1px solid #18201a14;border-radius:10px;overflow:hidden}.dailyScorecardRow.expanded{background:#fffffff0;border-color:#18201a1f}.micronutrientScorecardRow{background:#fffcf8eb}.dailyScorecardRowButton{width:100%;color:var(--ink);text-align:left;background:0 0;border:0;padding:9px 10px;position:relative;overflow:hidden}.micronutrientRowButton{width:100%;color:var(--ink);text-align:left;background:0 0;border:0;padding:9px 10px}.dailyScorecardRowButton:before{content:"";width:var(--scorecard-fill-percent,0%);background:#18201a0a;transition:width .22s,background-color .22s;position:absolute;inset:0}.dailyScorecardRowButton:after{content:"";opacity:.55;pointer-events:none;background:linear-gradient(90deg,#ffffff24,#fff0);position:absolute;inset:0}.dailyScorecardRowTop{z-index:1;align-items:center;gap:10px;display:flex;position:relative}.micronutrientRowTop{align-items:center;gap:8px;min-width:0;display:flex}.dailyScorecardRowLabel{white-space:nowrap;font-size:.9rem;font-weight:700}.micronutrientRowDots{align-items:center;gap:5px;min-width:0;margin-left:auto;display:inline-flex}.micronutrientDot{background:#18201a29;border-radius:999px;width:8px;height:8px}.micronutrientDot.good{background:#4f8a63}.micronutrientDot.low,.micronutrientDot.very_low{background:#d08836}.micronutrientDot.unknown{background:#18201a38}.dailyScorecardRowValueGroup{align-items:center;gap:6px;min-width:0;margin-left:auto;display:flex}.dailyScorecardRowValue{color:#18201ad1;text-align:right;white-space:nowrap;min-width:92px;font-size:.8rem;font-weight:600}.dailyScorecardChevron{color:#18201a61;font-size:1rem;transition:transform .18s;transform:rotate(90deg)}.dailyScorecardChevron.expanded{transform:rotate(-90deg)}.dailyScorecardRowButton.safe:before{background:#7c867a24}.dailyScorecardRowButton.caution:before{background:#d0883629}.dailyScorecardRowButton.hit:before{background:#4f8a6329}.dailyScorecardRowButton.neutral:before{background:#aeb5ac2e}.dailyScorecardRowButton.danger:before{background:#bf594829}.dailyScorecardExpanded{background:#fffcf8ad;border-top:1px solid #18201a0f;gap:10px;padding:0 10px 10px;display:grid}.dailyScorecardExpandedBlock{gap:3px;display:grid}.dailyScorecardExpandedLabel{color:#18201a8f;letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:700}.dailyScorecardExpandedBody{color:#18201ad1;margin:0;font-size:.82rem;line-height:1.4}.dailyScorecardExpandedAction{color:var(--brand);background:0 0;border:0;justify-self:start;padding:0;font-size:.82rem;font-weight:700}.dailyScorecardMeta{color:#18201a9e;margin:10px 0 0;font-size:.78rem;line-height:1.3}.dailyScorecardGapFooter{color:#18201a99;text-align:left;cursor:pointer;background:0 0;border:0;border-top:1px solid #18201a0f;justify-content:space-between;align-items:center;gap:12px;margin:10px 0 0;padding-top:10px;font-size:.78rem;display:flex}.dailyScorecardGapFooterText{gap:2px;display:grid}.dailyScorecardGapFooter strong{color:var(--ink);font-size:.84rem}.dailyScorecardGapFooter small{color:#18201a7a;font-size:.74rem}.dailyScorecardGapFooterChevron{color:#18201a66;font-size:1rem}.dailyCheckModal{width:min(560px,100%)}.micronutrientModal{width:min(520px,100%)}.micronutrientModalIntro{color:#18201a9e;margin:8px 0 0;font-size:.9rem;font-weight:700}.micronutrientModalSummary{color:#18201ac7;margin:14px 0 0;font-size:.92rem;line-height:1.45}.micronutrientModalSection{gap:10px;margin-top:18px;display:grid}.micronutrientModalSection h3{color:var(--ink);margin:0;font-size:.9rem}.micronutrientModalList{gap:8px;display:grid}.micronutrientModalCard{background:#fffcf8d9;border:1px solid #18201a14;border-radius:12px;gap:5px;padding:11px 12px;display:grid}.micronutrientModalCard.low,.micronutrientModalCard.very_low{background:#fff8f0f0;border-color:#d088362e}.micronutrientModalCardTop{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.micronutrientModalCardLabel{align-items:center;gap:8px;min-width:0;display:inline-flex}.micronutrientModalCardTop strong{font-size:.92rem}.micronutrientModalCardTop span,.micronutrientModalCard p{color:#18201aa8;font-size:.84rem}.micronutrientModalStatus{white-space:nowrap;font-weight:600}.micronutrientModalStatus.low,.micronutrientModalStatus.very_low{color:#b56d1e}.micronutrientModalCard p{margin:0;line-height:1.35}.micronutrientModalPills{flex-wrap:wrap;gap:8px;display:flex}.micronutrientModalPill{border-radius:999px;align-items:center;gap:7px;padding:6px 10px;font-size:.82rem;font-weight:600;display:inline-flex}.micronutrientModalPill.good{color:#315742;background:#4f8a631f}.micronutrientModalPill.unknown{color:#18201a9e;background:#18201a14}.micronutrientModalStatusDot{background:#18201a29;border-radius:999px;flex:none;width:8px;height:8px}.micronutrientModalStatusDot.good{background:#4f8a63}.micronutrientModalStatusDot.low,.micronutrientModalStatusDot.very_low{background:#d08836}.micronutrientModalStatusDot.unknown{background:#18201a38}.micronutrientModalCta{width:100%;color:var(--ink);text-align:left;font:inherit;background:#fffcf8f5;border:1px solid #18201a14;border-radius:14px;justify-content:space-between;align-items:center;gap:14px;margin-top:22px;padding:13px 14px;display:flex}.micronutrientModalCta span{color:#18201a8a;letter-spacing:.06em;text-transform:uppercase;font-size:.74rem;font-weight:700;display:block}.micronutrientModalCta strong{margin-top:3px;font-size:.92rem;line-height:1.25;display:block}.dailyCheckModalIntro{color:#18201aa8;margin:8px 0 0;font-size:.88rem;line-height:1.35}.dailyCheckModalSummary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px;display:grid}.dailyCheckModalSummaryCard{background:#fffcf8d1;border:1px solid #18201a14;border-radius:12px;gap:2px;padding:10px 11px;display:grid}.dailyCheckModalSummaryCard span{color:#18201a8a;letter-spacing:.06em;text-transform:uppercase;font-size:.72rem;font-weight:700}.dailyCheckModalSummaryCard strong{color:var(--ink);font-size:.88rem;line-height:1.3}.dailyCheckRecommendationStack{gap:10px;margin-top:16px;display:grid}.dailyCheckRecommendationCard{background:#fffcf8e0;border:1px solid #18201a14;border-radius:14px;overflow:hidden}.dailyCheckRecommendationCard.expanded{background:#fffffff5;border-color:#18201a1f}.dailyCheckRecommendationButton{width:100%;color:var(--ink);text-align:left;background:0 0;border:0;padding:14px}.dailyCheckRecommendationTop{justify-content:space-between;align-items:start;gap:12px;display:flex}.dailyCheckRecommendationTitleBlock{gap:4px;display:grid}.dailyCheckRecommendationTitleBlock strong{font-size:.96rem;line-height:1.3}.dailyCheckRecommendationTitleBlock span{color:#18201aa8;font-size:.82rem;line-height:1.35}.dailyCheckRecommendationTag{color:var(--brand);white-space:nowrap;background:#fff4ebf2;border-radius:999px;padding:5px 8px;font-size:.74rem;font-weight:700}.dailyCheckRecommendationMetaRow{color:#18201acc;justify-content:space-between;align-items:center;gap:10px;margin-top:10px;font-size:.8rem;font-weight:600;display:flex}.dailyCheckRecommendationExpanded{background:#fffcf8b8;border-top:1px solid #18201a0f;gap:10px;padding:0 14px 14px;display:grid}.dailyCheckRecommendationFoods{gap:8px;display:grid}.dailyCheckRecommendationFood{justify-content:space-between;align-items:center;gap:12px;display:flex}.dailyCheckRecommendationFood strong{font-size:.88rem}.dailyCheckRecommendationFood span,.dailyCheckRecommendationTotals,.dailyCheckRecommendationHelps{color:#18201aad;font-size:.8rem}.dailyCheckRecommendationHelps,.dailyCheckRecommendationTotals{justify-content:space-between;align-items:center;gap:12px;display:flex}.dailyCheckRecommendationHelps strong{color:var(--ink);font-size:.82rem}.targetInlineItem{color:var(--ink);text-align:left;background:0 0;border:0;padding:0}.targetInlineText{gap:2px;display:grid}.targetInlineText span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.76rem;font-weight:700}.targetInlineTrack{background:#18201a14;border-radius:999px;height:4px;margin-top:4px;overflow:hidden}.activityQuickRow{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;padding:10px 14px 0;display:grid}.activityQuickChip{min-width:0;color:var(--ink);text-align:left;font:inherit;cursor:pointer;background:#fff9f5f5;border:1px solid #18201a14;border-radius:14px;align-content:start;gap:2px;padding:10px 12px;display:grid}.activityQuickChip strong{font-size:.92rem;line-height:1.1}.activityQuickChip span{color:var(--muted);font-size:.8rem}.activityQuickChipAdd{background:#fff2e9f5}.activityPillRow{flex-wrap:wrap;gap:8px;padding:9px 14px 12px;display:flex}.activityPill{background:#ffffffe6;border:1px solid #18201a14;border-radius:999px;align-items:center;gap:8px;max-width:100%;padding:7px 8px 7px 10px;display:inline-flex}.activityPill div{gap:1px;min-width:0;display:grid}.activityPill strong{text-overflow:ellipsis;white-space:nowrap;font-size:.84rem;line-height:1.1;overflow:hidden}.activityPill span{color:var(--muted);font-size:.75rem}.activityPillRemove{width:22px;height:22px;color:var(--muted);font:inherit;cursor:pointer;background:#18201a0f;border:0;border-radius:999px;flex:none;place-items:center;padding:0;font-size:1rem;line-height:1;display:grid}.activityDrawerBody{gap:8px;margin-top:6px;display:grid}.activityStepsButton{width:100%;color:var(--ink);text-align:left;font:inherit;cursor:pointer;background:#fff9f5f5;border:1px solid #18201a14;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.activityStepsButton strong,.activityRow strong{font-size:.98rem;line-height:1.1;display:block}.activityStepsButton p,.activityRow p{color:var(--muted);font-size:.84rem}.activityItemLabel{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.74rem;font-weight:700;display:block}.activityList{gap:8px;display:grid}.activityRow{background:#ffffffdb;border:1px solid #18201a14;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.activityRow .iconButton{flex:none}.summaryStrip{border-top:1px solid #18201a14;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;display:grid}.summaryItem{box-shadow:none;border:0;border-right:1px solid #18201a14;border-radius:0;padding:12px 16px}.summaryButton{width:100%;color:var(--ink);text-align:left;font:inherit;cursor:pointer;border-top:0;border-bottom:0;border-left:0}.summaryItem span{color:var(--muted);font-size:.82rem;display:block}.summaryItem strong{margin-top:4px;font-size:1.3rem;line-height:1.1;display:block}.summaryItem p{color:var(--muted);margin-top:4px;font-size:.9rem}.progressTrack{background:#ece5dc;border-radius:999px;height:6px;margin-top:10px;overflow:hidden}.progressFill{border-radius:999px;height:100%}.progressFill.safe{background:#4f8a63}.progressFill.caution{background:#d08836}.progressFill.danger{background:#c65a4b}.progressFill.hit{background:#2f7a49}.summaryItem:last-child{border-right:0}.mealLogHeader{background:0 0;border-bottom:1px solid #18201a14;justify-content:space-between;align-items:center;gap:12px;padding:2px 0 8px;display:flex}.mealLogToggle{min-width:0;color:var(--ink);text-align:left;font:inherit;cursor:pointer;background:0 0;border:0;flex:auto;justify-content:space-between;align-items:center;gap:12px;padding:0;display:flex}.mealStack{gap:10px;display:grid}.mealLog{background:linear-gradient(#fffffffa,#fffcf9f5);border-color:#18201a1a;padding:12px 14px;position:relative;overflow:hidden;box-shadow:0 10px 28px #1517140f}.mealLog:before{content:"";background:linear-gradient(90deg,#c85f33eb,#df7b3d61);height:3px;position:absolute;inset:0 0 auto}.mealLogSummary{gap:3px;min-width:0;display:grid}.mealLabel{color:var(--accent);letter-spacing:.14em;text-transform:uppercase;font-size:.78rem;font-weight:800}.mealHeadline{align-items:baseline;gap:10px;display:flex}.mealHeadline span{color:var(--muted);font-size:.88rem}.mealChevron{color:var(--muted);flex:none;font-size:1.4rem;line-height:1;transition:transform .18s;transform:rotate(90deg)}.mealChevron.expanded{transform:rotate(-90deg)}.mealPromptRow{align-items:center;padding:10px 0 2px;display:flex}.mealFrequentStrip{flex-wrap:wrap;gap:8px;width:100%;display:flex}.mealUsualButton{max-width:100%;color:var(--ink);font:inherit;cursor:pointer;background:#fff4ebf2;border:1px solid #c85f332e;border-radius:999px;align-items:center;gap:10px;padding:7px 11px;display:inline-flex}.mealUsualEyebrow{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;font-size:.68rem;font-weight:800}.mealUsualButton strong{text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;overflow:hidden}.mealFrequentStrip .mealUsualButton{max-width:min(100%,260px)}.mealHeaderAction{border:1px solid var(--line);background:var(--surface);width:30px;height:30px;color:var(--muted);font:inherit;cursor:pointer;border-radius:999px;place-items:center;padding:0;font-size:1.1rem;line-height:1;display:grid}.mealHeaderActionPrimary{color:#fff9f4;background:linear-gradient(135deg,#df7b3d,#c85f33);border-color:#c85f3347;width:34px;height:34px;font-size:1.2rem;box-shadow:0 10px 22px #c85f3338}.mealTable{margin-top:6px;display:grid}.mealTableRow{gap:10px;padding:12px 0;display:grid}.entryMetaTag{color:var(--muted);letter-spacing:.02em;background:#f3ede4;border-radius:999px;margin-right:8px;padding:2px 7px;font-size:.74rem;font-weight:700;display:inline-flex}.mealTableRow{background:0 0;border-bottom:1px solid #18201a14}.mealTableRow:last-child{border-bottom:0}.entryMainRow{justify-content:space-between;align-items:start;gap:12px;display:flex}.entryOpenButton{color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;flex:auto;padding:0}.foodCell h3{font-size:1rem;line-height:1.2}.foodCell p{color:var(--muted);margin-top:3px;font-size:.9rem}.entryActions{flex:none;align-items:center;gap:8px;display:flex}.caloriePill{background:#fffcf8eb;border:1px solid #18201a1a;border-radius:999px;align-items:baseline;gap:5px;padding:6px 10px;display:flex}.caloriePill strong{font-size:.98rem}.caloriePill span{color:var(--muted);font-size:.8rem}.macroCell{flex-wrap:wrap;gap:6px 10px;display:flex}.macroBadge{background:0 0;border-radius:0;align-items:center;gap:4px;padding:1px 0;font-size:.82rem;font-weight:600;display:inline-flex}.macroBadge strong{letter-spacing:.06em;font-size:.68rem}.macroBadge.protein{color:#2f7a49}.macroBadge.carbs{color:#ad6b16}.macroBadge.fat{color:#9a553f}.macroBadge.fiber{color:#5f7750}.previewServingLine{color:var(--muted);margin-top:6px;font-size:.88rem}.previewMacroCell{margin-top:7px}.mealFooter{color:var(--muted);background:0 0;border-top:1px solid #18201a14;justify-content:space-between;align-items:center;gap:12px;padding:10px 0 0;font-size:.92rem;display:flex}.mealFooter strong{color:var(--ink)}.cardGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.recipeLibrary{gap:10px;padding-top:0;display:grid}.recipeLoadingState{gap:10px;padding:8px 0 2px;display:grid}.recipeLoadingLabel{color:var(--muted);margin:0 2px;font-size:.92rem}.recipeLoadHint{color:var(--muted);margin:-2px 2px 4px;font-size:.84rem}.recipeLoadingRow{background:linear-gradient(90deg,#ffffffb8,#fffffff5,#ffffffb8);border:1px solid #18201a0d;border-radius:16px;height:124px;box-shadow:0 4px 14px #15171406}.recipeEmptyState{margin-top:4px}.recipeLoadIssue{background:#fffaf6f5;border:1px solid #c85f3324;border-radius:16px;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.recipeLoadIssue p{color:var(--muted);margin:0;font-size:.92rem}.recipeRetryButton{flex:none;min-height:40px;padding:0 14px}.recipesAddButton{z-index:2;color:#fff;min-height:44px;font:inherit;cursor:pointer;appearance:none;background:linear-gradient(135deg,#df7b3d,#c85f33);border:0;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:.96rem;font-weight:650;display:inline-flex;position:relative;box-shadow:0 10px 22px #c85f332e}.recipesToolbar{justify-content:flex-end;padding:0 2px 2px;display:flex}.recipesSectionHeader{z-index:2;justify-content:flex-start;align-items:center;gap:12px;padding:0 2px 4px;display:flex;position:relative}.recipesSectionHeader .sectionTitle{color:var(--muted);letter-spacing:-.01em;font-size:.96rem;font-weight:650}.recipesSurface{gap:6px}.progressSurface{background:linear-gradient(#fffffffa,#fffcf9f5);border-color:#18201a1a;position:relative;overflow:hidden;box-shadow:0 10px 28px #1517140d}.progressSurface:before,.progressGoalsPanel:before,.trendList:before{content:"";background:linear-gradient(90deg,#c85f33eb,#df7b3d61);height:3px;position:absolute;inset:0 0 auto}.recipePageNote{color:var(--muted);margin-top:4px;font-size:.92rem}.recipeCard{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);cursor:pointer;border-radius:16px;gap:12px;padding:16px;display:grid}.recipeLibrary{gap:12px;margin-top:4px;display:grid}.recipeListRow{cursor:pointer;background:0 0;border-top:1px solid #18201a14;gap:10px;padding:14px 2px;display:grid}.settingsStack,.settingsPanel{gap:12px;display:grid}.settingsPanelHeader{justify-content:space-between;align-items:start;gap:12px;display:flex}.settingsPanelHeader h2{margin:0}.settingsValue{color:var(--muted);margin:0;font-size:1rem}.settingsHint{color:var(--muted);margin:0;font-size:.92rem;line-height:1.45}.settingsHint code{font-size:.88em}.settingsForm,.settingsDangerList{gap:10px;display:grid}.settingsActionButton,.settingsDangerButton{justify-content:center;min-height:48px}.settingsDangerButton{color:#9a553f;border-color:#9a553f33}.settingsError{color:#9a553f;margin:0;font-size:.92rem}.recipeListMain{justify-content:space-between;align-items:start;gap:12px;display:flex}.recipeListMain h2{font-size:1.08rem;line-height:1.1}.recipeListMeta{text-align:right;flex:none;gap:2px;display:grid}.recipeListMeta span{color:var(--muted);font-size:.86rem}.recipeListStats{flex-wrap:wrap;gap:6px 8px;display:flex}.recipeListStats span{color:var(--muted);background:#f6f0e8;border-radius:999px;padding:3px 8px;font-size:.76rem}.recipeDrawer{background:linear-gradient(#fffffffa,#fffcf9f7);border:1px solid #18201a12;border-radius:16px;padding:14px 14px 12px;position:relative;overflow:hidden;box-shadow:0 6px 18px #15171409}.recipeDrawer:before{content:"";background:linear-gradient(90deg,#c85f33b8,#df7b3d38);height:2px;position:absolute;inset:0 0 auto}.recipeDrawerHeader{gap:6px;display:grid}.recipeDrawerTopRow{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;display:grid}.recipeDrawerToggle{min-width:0;color:var(--ink);text-align:left;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;display:block}.recipeDrawerSummary{gap:0;min-width:0;display:grid}.recipeDrawerHeadline{min-width:0}.recipeDrawerHeadline h2{margin:0;font-size:1.18rem;font-weight:700;line-height:1.08}.recipeDrawerMetaLine{color:var(--muted);flex-wrap:wrap;align-items:baseline;gap:6px;font-size:.88rem;font-weight:400;display:flex}.recipeDrawerMetaLine strong{color:var(--ink);font-size:.9rem;font-weight:550;line-height:1.1}.recipeDrawerMetaLine span{color:inherit;font-size:inherit;white-space:nowrap;font-weight:400}.recipeDrawerStats{flex-wrap:wrap;gap:3px 9px;display:flex}.recipeDrawerStats .macroBadge{background:0 0;border-radius:0;gap:4px;padding:0;font-size:.82rem;font-weight:500}.recipeDrawerStats .macroBadge strong{letter-spacing:.06em;font-size:.68rem}.recipeDrawerActions{flex:none;align-items:center;gap:8px;padding-top:2px;display:flex}.recipeActionButton{min-height:30px;color:var(--muted);white-space:nowrap;background:#ffffff9e;border:1px solid #18201a0f;border-radius:999px;justify-content:center;padding:4px 10px;font-size:.8rem;font-weight:650}.recipeChevronButton{width:auto;height:auto;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;flex:none;place-self:center;place-items:center;padding:0;display:grid}.recipeChevronButton .mealChevron{place-items:center;font-size:1.4rem;display:inline-grid}.recipeDrawerBody{border-top:1px solid #18201a14;gap:8px;margin-top:8px;padding-top:8px;display:grid}.recipeDrawerFooter{justify-content:flex-end;padding-top:2px;display:flex}.recipeDeleteButton{color:#c85f33eb;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:.9rem;font-weight:600}.recipeDrawerIngredientList{background:0 0;border:0;gap:0;padding:0}.recipeDrawerIngredientList .ingredientRow{padding:9px 0}.recipeDrawerIngredientList .ingredientRow strong{font-size:.98rem;font-weight:700}.recipeDrawerIngredientList .ingredientRow p{color:var(--muted);font-size:.86rem;font-weight:400}.recipeLogMeta{grid-template-columns:minmax(0,1fr);align-items:center;gap:4px}.recipeCardTop{justify-content:space-between;align-items:start;gap:12px;display:flex}.recipeDefaultLog{text-align:right;gap:4px;display:grid}.recipeDefaultLog span,.recipeNote,.recipeStat span,.recipeStat p{color:var(--muted);font-size:.9rem}.recipeDefaultLog strong,.recipeStat strong{font-size:1rem}.recipeStats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.recipeStat{background:#fffcf8d6;border:1px solid #18201a14;border-radius:12px;gap:4px;padding:12px;display:grid}.recipeEditorGrid,.recipeManualGrid,.ingredientList{gap:12px;display:grid}.recipeBuilderGrid{gap:14px;margin-top:16px;display:grid}.ingredientSummaryLine,.ingredientTotalsLine{margin:0}.ingredientSummaryLine{color:var(--muted);font-size:.88rem;font-weight:500}.ingredientTotalsLine{color:#18201ad1;font-size:.9rem;font-weight:500}.stepHint{color:var(--muted);margin:0;font-size:.88rem;line-height:1.35}.recipeBuilderSteps{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:10px;display:grid}.recipeStepChip{border:1px solid var(--line);background:var(--surface-soft);width:100%;color:var(--muted);text-align:center;border-radius:999px;padding:8px 10px;font-size:.82rem;font-weight:700;line-height:1.1}.recipeStepChip.active{background:var(--ink);border-color:var(--ink);color:#fff}.recipeEditorRow{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.recipeEditorRow .ingredientAddButton{align-self:end}.recipeYieldRow{grid-template-columns:repeat(2,minmax(0,1fr))}.ingredientBuilder{background:0 0;border:0;border-radius:0;gap:0;padding:0;display:grid}.ingredientRow p,.ingredientRowMeta span{color:var(--muted);font-size:.88rem}.ingredientStepHint{margin-top:1px}.ingredientRow{border-top:1px solid #18201a1f;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.ingredientList>:first-child{border-top:0;padding-top:0}.ingredientRowMain{gap:4px;min-width:0;display:grid}.ingredientRowMain strong{font-size:1rem;font-weight:600;display:block}.ingredientRowMeta{flex:none;justify-content:flex-end;align-items:center;gap:0;min-height:40px;display:flex}.ingredientSearchResult.active{background:var(--surface-soft);border-color:#18201a3d}.ingredientInlineEditor,.recipeSummaryCard{background:#fffcf8d6;border:1px solid #18201a14;border-radius:14px;gap:8px;padding:10px 12px;display:grid}.ingredientInlineEditor{background:0 0;border:0;border-radius:0;padding:0}.ingredientStepTop,.ingredientConfirmHeader{justify-content:space-between;align-items:start;gap:12px;display:flex}.ingredientStepTop h3,.ingredientConfirmHeader h3{margin:0}.ingredientConfirmRow{grid-template-columns:minmax(0,1fr) minmax(136px,180px);align-items:end;gap:10px;display:grid}.ingredientAddButton{white-space:nowrap;width:100%}.ingredientUnitField{min-width:0}.ingredientStepTop .ghostButton,.ingredientConfirmHeader .ghostButton{min-height:40px;padding:0 14px}.ingredientSearchField{margin-top:0}.ingredientSearchField span{display:none}.ingredientSearchRow{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:12px;display:grid}.ingredientScanTrigger{justify-content:center;min-width:124px}.searchResults{gap:8px;margin-top:0}.searchResults .emptyState{border-radius:12px;padding:12px 14px}.ingredientSearchResult{padding:10px 12px}.ingredientSearchResult strong{line-height:1.15}.ingredientSearchResult p{margin:2px 0 0}.ingredientRow .iconButton{background:#ffffffb8;border:1px solid #18201a14;width:28px;min-width:40px;height:28px;min-height:40px;padding:0}.ingredientScanQueue{background:#fffcf8d6;border:1px solid #18201a14;border-radius:14px;gap:12px;padding:12px;display:grid}.ingredientScanRow{align-items:start}.ingredientScanControls{flex:none;grid-template-columns:72px 110px auto;align-items:center;gap:8px;display:grid}.ingredientScanAmount{border:1px solid var(--line);min-width:0;height:42px;color:var(--ink);font:inherit;background:#fff;border-radius:12px;padding:0 12px}.ingredientScanUnit{min-width:0}.ingredientScanFooter{gap:10px;display:grid}.ingredientScanAddAllButton{width:100%}.barcodeScanSummary{background:#fffcf8d6;border-radius:12px;gap:4px;padding:12px 14px;display:grid}.barcodeScanSummary p,.barcodeScanSummary strong{margin:0}.ingredientPreviewRow{justify-content:space-between;align-items:center;gap:10px;padding-top:2px;display:flex}.ingredientPreviewPrimary{gap:2px;display:grid}.ingredientPreviewPrimary strong{font-size:1rem}.ingredientPreviewPrimary span,.ingredientPreviewMacros span,.yieldInlineSummary span{color:var(--muted);font-size:.84rem}.ingredientPreviewMacros{flex-wrap:wrap;justify-content:flex-end;gap:6px 10px;display:flex}.yieldSummary{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.yieldInlineSummary{flex-wrap:wrap;align-items:center;gap:8px 12px;padding:0 2px;display:flex}.recipeSummaryTop{justify-content:space-between;align-items:start;gap:10px;padding:0;display:flex}.recipeSummaryIdentity{min-width:0}.recipeSummaryIdentity h3{margin:0;line-height:1}.recipeBuilderActions{align-items:center;gap:10px;display:flex}.recipeSummaryMetrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.recipeSummaryNutrition{background:#ffffffb8;border:1px solid #18201a14;border-radius:12px;gap:6px;padding:10px 12px;display:grid}.recipeSummaryNutritionTop{justify-content:space-between;align-items:start;gap:6px;display:flex}.recipeSummaryNutritionTop span{color:var(--muted);font-size:.88rem}.recipeSummaryNutritionTop strong{font-size:1.18rem;font-weight:700;line-height:1.08;display:block}.recipeSummaryNutritionTop p{color:var(--muted);text-align:right;margin:0;font-size:.88rem}.ingredientSummaryCard{background:#fffcf8d6;border:1px solid #18201a14;border-radius:14px;gap:0;padding:12px 14px}.ingredientSummaryCard .ingredientList{gap:0}.ingredientSummaryCard .ingredientList>:first-child{padding-top:12px}.ingredientBuilderHeader{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.ingredientBuilderHeader h3{align-items:baseline;gap:8px;margin:0;display:flex}.ingredientSummaryRowMain{min-width:0}.ingredientSummaryInlineEdit{color:var(--muted);font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;font-size:.92rem;font-weight:500;text-decoration:underline}.ingredientSummaryCount{color:var(--muted);font-size:.92rem}.progressSummaryGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.progressHero{text-align:center;justify-items:center;gap:6px;padding:8px 8px 4px;display:grid}.progressHeroWeightButton{color:inherit;font:inherit;cursor:pointer;text-underline-offset:8px;background:0 0;border:0;padding:0;-webkit-text-decoration:underline #18201a2e;text-decoration:underline #18201a2e;text-decoration-thickness:2px}.progressHero h2{letter-spacing:-.06em;margin:0;font-size:3.35rem;line-height:.9}.progressHeroTertiary{color:#18201ab8;text-align:center;margin:0;font-size:1rem;font-weight:600}.progressWeighInModal{width:min(520px,100%)}.progressWeighInForm{margin-top:14px}.progressChartCard,.progressGoalsPanel{gap:10px;display:grid}.progressChartCard{padding-top:26px;position:relative}.progressChartControls{z-index:1;position:absolute;top:0;right:0}.progressChartHeader,.progressGoalsHeader{justify-content:space-between;align-items:start;gap:10px;display:flex}.progressModeTabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.progressModeTabsQuiet{gap:6px}.progressModeTab{min-height:36px;color:var(--muted);font:inherit;cursor:pointer;background:#ffffff80;border:1px solid #18201a14;border-radius:999px;padding:7px 12px;font-size:.88rem;font-weight:600}.progressModeTab.active{color:var(--ink);background:#fff4ebb8;border-color:#c85f3324}.rangeTabs{background:#ffffff6b;border:1px solid #18201a0f;border-radius:999px;gap:4px;padding:2px;display:inline-flex}.rangeTab{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:5px 9px;font-size:.8rem;font-weight:600}.rangeTab.active{color:var(--ink);background:#18201a14}.progressChart{width:100%;height:auto;overflow:visible}.chartGridLine{stroke:#18201a14;stroke-width:.8px}.chartAxisLabel{fill:var(--muted);font-size:9px}.chartWeightLine{fill:none;stroke:#c85f33;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.1px}.chartTrendLine{fill:none;stroke:#2f7a49;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px}.chartPoint{fill:var(--surface);stroke:#c85f33;stroke-width:1.5px}.chartGoalLine{stroke:#2f7a49b3;stroke-dasharray:6 6;stroke-width:1.2px}.chartGoalLabel{fill:#2f7a49;text-anchor:end;font-size:10px;font-weight:700}.chartLegend{color:var(--muted);flex-wrap:wrap;gap:10px 14px;font-size:.78rem;display:flex}.legendSwatch{vertical-align:middle;border-radius:999px;width:18px;height:3px;margin-right:6px;display:inline-block}.legendSwatch.actual{background:#c85f33}.legendSwatch.trend,.legendSwatch.goal{background:#2f7a49}.progressGoalsGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;display:grid}.progressInlineButton{align-self:end}.progressMacroGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;display:grid}.card p:last-child,.metricBlock span,.trendRow span{color:var(--muted);font-size:.94rem;line-height:1.5}.trendList{gap:0;padding:2px 0 0;display:grid}.trendRow{border-top:1px solid #18201a0f;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 0;display:grid}.progressEntriesHeader h3{margin:0 0 4px}.metricBlock{border-top:1px solid var(--line);gap:4px;padding:12px 0;display:grid}.trendList>:first-child,.panel>.metricBlock:first-of-type{border-top:0;padding-top:0}.metricBlock strong,.trendRow strong{text-align:right;justify-self:end;font-size:1.08rem;display:block}.metricLabel,.metricDetail{white-space:nowrap}.metricLabel{color:var(--muted);text-transform:uppercase;letter-spacing:.12em;font-size:.76rem;font-weight:700}.metricDetail{text-align:right}.metricGain.good{color:#2f7a49}.metricGain.bad{color:#c65a4b}.goalTargetSummary{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.goalCaloriesHero,.goalTargetCard,.goalPanel{background:#fffcf8d6;border:1px solid #18201a14;border-radius:14px;gap:10px;padding:14px;display:grid}.goalCaloriesHero span,.goalTargetCard span,.goalPanelLabel{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:.8rem;font-weight:700}.goalCaloriesHero{text-align:center;justify-items:center;gap:8px;padding:18px 16px 16px}.goalCaloriesHero strong{letter-spacing:-.06em;font-size:3.2rem;line-height:.92}.goalTargetCard strong{font-size:1.1rem}.goalTargetCard{gap:6px;padding:12px 14px}.goalInputRow,.goalPanelTop,.macroSliderLabel{justify-content:space-between;align-items:center;gap:10px;display:flex}.goalInputStack,.macroSliderStack{gap:10px;display:grid}.goalInputRow input,.goalInputStack input{border:1px solid var(--line);width:100%;font:inherit;color:var(--ink);background:#fff;border-radius:12px;padding:12px 14px;font-size:16px}.goalRange{width:100%;accent-color:var(--accent);touch-action:pan-y}.macroSliderLabel span{color:var(--ink);letter-spacing:0;text-transform:none;font-size:.92rem;font-weight:600}.emptyState{color:var(--muted);padding:14px 6px 10px}.emptyState p{font-size:.94rem}.authShell{place-items:center;min-height:100dvh;padding:20px;display:grid}.authCard{border:1px solid var(--line);background:var(--surface);border-radius:20px;gap:14px;width:min(440px,100%);padding:24px;display:grid;box-shadow:0 24px 80px #1517141a}.authTitle{letter-spacing:-.04em;font-size:clamp(1.8rem,6vw,2.6rem);line-height:.95}.authCopy,.authMessage{color:var(--muted);font-size:.95rem;line-height:1.5}.authForm{gap:2px;display:grid}.authTabs{margin-top:6px}.authSubmit{justify-content:center;margin-top:16px}.modalScrim{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#18201a57;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modalCard{overscroll-behavior:contain;border:1px solid var(--line);background:var(--surface);border-radius:18px;width:min(760px,100%);max-height:min(100dvh - 24px,860px);padding:20px;overflow:auto;box-shadow:0 24px 80px #15171429}.modalCard .panelHeader{flex-direction:row;align-items:start}.editForm{gap:12px;margin-top:14px;display:grid}.editEntryTopRow{grid-template-columns:minmax(0,1.3fr) minmax(112px,.9fr);align-items:end;gap:10px;display:grid}.editEntryTopRow .searchField,.editMealPicker{margin-top:0}.editMealPicker{gap:8px;display:grid}.editMealLabel{color:var(--muted);font-size:.92rem}.editMealChips{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.editMealChip{border:1px solid var(--line);background:var(--surface);color:var(--muted);font:inherit;cursor:pointer;appearance:none;border-radius:999px;padding:10px 12px;font-size:.92rem;font-weight:600}.editMealChip.active{color:var(--accent);background:#fff4ebf2;border-color:#c85f333d}.addStepForm{gap:8px;margin-top:8px}.selectField{border:1px solid var(--line);width:100%;font:inherit;color:var(--ink);background:#fff;border-radius:12px;padding:12px 14px;font-size:16px}.servingFields{grid-template-columns:120px minmax(0,1fr);gap:10px;display:grid}.addStepMeta{margin-top:2px;display:grid}.selectedFoodHeaderRow{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.selectedFoodName{margin:0;font-size:1.18rem;font-weight:700;line-height:1.08}.selectedFoodMetaInline{color:var(--muted);font-size:.88rem;line-height:1.1}.selectedMealBadge{color:var(--accent);letter-spacing:.03em;text-transform:uppercase;cursor:pointer;background:#ffb89229;border:0;border-radius:999px;flex:none;align-items:center;padding:6px 10px;font-size:.82rem;font-weight:700;display:inline-flex}.logRecipeMealRow{justify-content:space-between;align-items:center;gap:12px;padding:2px 2px 0;display:flex}.logRecipeMealLabel{color:var(--muted);font-size:.9rem;font-weight:600}.logRecipeMealToggle{justify-content:center;min-width:112px}.modalItemTitle{font-size:clamp(1.45rem,5.5vw,2rem);line-height:1.05}.modalCloseButton{border:1px solid var(--line);background:var(--surface);width:36px;height:36px;color:var(--muted);font:inherit;cursor:pointer;border-radius:999px;flex:none;place-items:center;padding:0;font-size:1.4rem;line-height:1;display:grid}.servingFields .searchField{margin-top:0}.editPreview{border:1px solid var(--line);background:radial-gradient(circle at top left,#ffb8921f,transparent 40%),var(--surface-soft);border-radius:12px;padding:11px 14px}.editPreview strong{font-size:1.18rem;font-weight:700;line-height:1.08;display:block}.editPreview p{color:var(--muted);margin-top:6px;font-size:.88rem}.editPreview .macroBadge,.recipeSummaryNutrition .macroBadge{background:0 0;border-radius:0;gap:4px;padding:0;font-size:.82rem;font-weight:500}.editPreview .macroBadge strong,.recipeSummaryNutrition .macroBadge strong{letter-spacing:.06em;font-size:.68rem}.modalActions{justify-content:space-between;gap:10px;margin-top:10px;display:flex}.editEntryActions>*{flex:1 1 0;justify-content:center}.editDeleteButton{color:#a3594b;background:#fff9f7f5;border-color:#c65a4b33}.addStepForm .modalActions{justify-content:flex-end;margin-top:6px}.searchField{color:var(--muted);gap:8px;margin-top:16px;font-size:.92rem;display:grid}.searchInputRow{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;display:grid}.searchFieldInline{margin-top:0}.searchField input{border:1px solid var(--line);width:100%;font:inherit;color:var(--ink);background:#fff;border-radius:12px;padding:12px 14px;font-size:16px}.searchField select,.searchSelect{border:1px solid var(--line);width:100%;min-height:48px;color:var(--ink);font:inherit;appearance:none;background-color:#0000;background-image:linear-gradient(45deg,#0000 50%,#18201a8c 50%),linear-gradient(135deg,#18201a8c 50%,#0000 50%);background-position:calc(100% - 18px) calc(50% - 2px),calc(100% - 12px) calc(50% - 2px);background-repeat:no-repeat;background-size:6px 6px,6px 6px;background-attachment:scroll;background-origin:padding-box;background-clip:border-box;border-radius:12px;padding:12px 40px 12px 14px;font-size:16px}.scanTrigger{min-height:46px;color:var(--accent);font:inherit;cursor:pointer;background:radial-gradient(circle at 0 0,#ffb8922e,#0000 48%),#fffaf6fa;border:1px solid #c85f333d;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-size:.95rem;font-weight:700;display:inline-flex}.scanTriggerIcon{letter-spacing:.06em;font-size:.88rem;line-height:1;transform:rotate(90deg)}.searchResults{gap:10px;margin-top:16px;display:grid}.searchSectionLabel{color:var(--accent);letter-spacing:.14em;text-transform:uppercase;margin-top:4px;padding-top:2px;font-size:.8rem;font-weight:800}.breakdownCard{border-color:#18201a0f;max-width:540px;padding:18px;box-shadow:0 18px 56px #1517141a}.breakdownCard .modalCloseButton{color:#18201a7a;border-color:#18201a14;width:32px;height:32px;font-size:1.2rem}.breakdownList{gap:0;margin-top:16px;display:grid}.breakdownRow{border-top:1px solid #18201a0f;justify-content:space-between;align-items:start;gap:12px;padding:12px 0;display:flex}.breakdownList>:first-child{border-top:0;padding-top:0}.breakdownSummary{gap:4px;margin-top:8px;margin-bottom:10px;display:grid}.breakdownSummaryPrimary{letter-spacing:-.03em;color:var(--ink);font-size:1.65rem;font-weight:700;line-height:1.02}.breakdownSummarySecondary{color:var(--ink);font-size:1rem;font-weight:600}.breakdownCard .modalItemTitle{color:var(--accent)}.breakdownSummaryTertiary{color:var(--muted);font-size:.88rem}.breakdownSummaryTrack{background:#18201a0f;height:4px;margin-top:8px}.breakdownSummaryTrack .progressFill.safe,.breakdownSummaryTrack .progressFill.hit{background:linear-gradient(90deg,#6e8c79,#7ea08b)}.breakdownRow strong{font-size:.98rem;font-weight:600;line-height:1.15;display:block}.breakdownRow p{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;margin-top:3px;font-size:.82rem;line-height:1.3;display:flex}.breakdownRowTag{color:#c85f33d1;letter-spacing:.04em;text-transform:uppercase;font-size:.74rem;font-weight:600}.breakdownRowDot{color:#18201a3d}.breakdownValue{text-align:right;flex:none;padding-top:1px}.breakdownValue strong{font-size:.88rem;font-weight:550}.searchResult{border:1px solid var(--line);background:var(--surface);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:12px 14px;display:flex}.searchResultBest{background:radial-gradient(circle at top left,#ffb89229,transparent 34%),var(--surface);border-color:#c85f3347;box-shadow:0 10px 24px #c85f3314}.toast{z-index:140;color:#fff;background:radial-gradient(circle at 0 0,#ffb8922e,#0000 38%),linear-gradient(135deg,#18201afc,#212c23fc);border:1px solid #c85f3357;border-radius:16px;align-items:center;gap:12px;min-width:min(320px,100vw - 24px);max-width:calc(100vw - 24px);padding:14px 16px;font-size:1rem;font-weight:650;display:inline-flex;position:fixed;top:18px;left:50%;transform:translate(-50%);box-shadow:0 24px 52px #15171447,inset 0 0 0 1px #ffffff0a}.toastCheck{color:#fff7f1;background:linear-gradient(135deg,#ffb58a,#c85f33);border-radius:999px;flex:none;place-items:center;width:28px;height:28px;font-size:1rem;display:grid;box-shadow:0 8px 18px #c85f3347}.searchResult p,.searchResult span{color:var(--muted);font-size:.86rem}.searchResult+.searchSectionLabel{margin-top:2px}.searchResultMain{min-width:0;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;flex:auto;gap:3px;padding:0;display:grid}.searchResultTitleRow{align-items:center;gap:8px;min-width:0;display:flex}.searchResultTitleRow strong{min-width:0;font-size:1.02rem;line-height:1.2}.searchResultBadges{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.searchResultBadge{text-transform:lowercase;background:#18201a0f;border-radius:999px;align-items:center;padding:2px 7px;font-weight:600;line-height:1;display:inline-flex;color:var(--muted)!important;font-size:.72rem!important}.searchResultMain p{text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.searchBestMatchBadge{letter-spacing:.02em;text-transform:uppercase;background:#c85f331f;border-radius:999px;flex:none;align-items:center;padding:3px 8px;font-weight:700;line-height:1;display:inline-flex;color:var(--accent)!important;font-size:.72rem!important}.searchQuickAdd{width:36px;height:36px;color:var(--accent);font:inherit;cursor:pointer;background:#ffb89229;border:1px solid #c85f333d;border-radius:999px;flex:none;place-items:center;padding:0;font-size:1.3rem;font-weight:500;line-height:1;display:grid}.barcodeCard{max-width:540px}.barcodeBody{gap:12px;margin-top:14px;display:grid}.barcodePreview{border:1px solid var(--line);background:linear-gradient(#18201af5,#232c25f5);border-radius:16px;min-height:220px;position:relative;overflow:hidden}.barcodeVideo,.barcodeFallback{width:100%;height:100%;min-height:220px}.barcodeVideo,.barcodeScanner,.barcodeScannerVideo{object-fit:cover}.barcodeScanner,.barcodeScannerVideo{width:100%;height:100%;min-height:220px}.barcodeFallback{color:#fffffff0;text-align:center;place-items:center;gap:6px;padding:20px;display:grid}.barcodeFallback p,.barcodeHint,.barcodeError{margin:0;font-size:.9rem}.barcodeHint{color:var(--muted)}.barcodeError{color:#a3594b}.barcodeOverlay{pointer-events:none;border:2px solid #ffffffe0;border-radius:14px;position:absolute;inset:16px;box-shadow:0 0 0 999px #0f121029}@media (max-width:900px){.toolbarRow,.mealFooter{flex-direction:column;grid-template-columns:1fr;align-items:start}.navTabs{justify-content:flex-start}.cardGrid{grid-template-columns:1fr}.panelHeader,.recipeCardTop{flex-direction:column}.searchResult{padding:11px 12px}.searchInputRow{grid-template-columns:minmax(0,1fr) 88px}.addStepMeta{margin-top:0}.selectedFoodName{font-size:1.18rem}.searchResultTitleRow{align-items:start;gap:6px}.searchResultTitleRow strong{font-size:.98rem}.searchBestMatchBadge{margin-top:1px}.recipeDefaultLog{text-align:left}.recipeStats,.recipeSummaryMetrics,.recipeEditorRow,.recipeManualGrid,.progressSummaryGrid,.progressGoalsGrid,.progressMacroGrid{grid-template-columns:1fr}.goalTargetSummary{grid-template-columns:repeat(2,minmax(0,1fr))}.recipeListMain{flex-direction:column;align-items:start}.recipeBuilderSteps{padding-inline:0;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-inline:0;padding-bottom:0;overflow:visible}.recipeStepChip{min-width:0;padding:8px 6px;font-size:.78rem}.yieldSummary,.recipeYieldRow{grid-template-columns:1fr}.ingredientConfirmRow{grid-template-columns:minmax(0,1fr);align-items:end;gap:10px}.ingredientAddButton{width:100%}.ingredientConfirmHeader{align-items:start}.recipeSummaryNutritionTop,.ingredientPreviewRow{flex-direction:column;align-items:start}.ingredientPreviewMacros{justify-content:flex-start}.progressChartHeader,.progressGoalsHeader{flex-direction:column}.progressChartCard{padding-top:30px}.progressChartControls{top:2px;right:0}.progressHeroTertiary{text-align:center}.rangeTabs{width:fit-content;max-width:100%;overflow-x:auto}.dayNavigator{gap:8px}.dayCenter{flex:1;min-width:0}}@media (max-width:640px){.modalScrim{padding:8px}.modalCard{border-radius:20px;width:100%;max-height:calc(100dvh - 16px);padding:16px}.recipeBuilderGrid{gap:12px;margin-top:12px}.recipesToolbar{padding-bottom:0}.recipesAddButton{min-height:46px;padding:0 18px}.recipeSummaryCard,.progressChartCard,.progressGoalsPanel{padding:12px}.ingredientRow p,.ingredientRowMeta span,.recipeNote,.stepHint,.recipeStat span,.recipeStat p{font-size:.84rem}.ingredientRow{align-items:start}.ingredientRowMeta{flex-direction:column;align-items:end;gap:6px}.yieldInlineSummary{padding:0}.toast{min-width:calc(100vw - 20px);max-width:calc(100vw - 20px);padding:12px 13px;font-size:.92rem;top:10px}.appShell{width:min(100vw - 16px,1120px);padding:10px 0 84px}.progressMetricStrip,.goalTargetSummary{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar{flex-direction:row;justify-content:space-between;align-items:center;margin-bottom:8px;padding:2px 2px 4px;display:flex}.eyebrow{letter-spacing:-.03em;font-size:1.55rem}.headerLine{gap:5px}.headerDot{font-size:.98rem}.pageTitle{font-size:1.2rem}.desktopTabs{display:none}.mobileOnly{display:initial}.menuButton.mobileOnly{display:grid}.mobileMenuScrim{z-index:60;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#18201a38;display:block;position:fixed;inset:0}.mobileMenuPanel{z-index:61;border:1px solid var(--line);background:#fffdf9fc;border-radius:24px;padding:18px 18px 24px;display:block;position:fixed;inset:10px 10px 10px 56px;box-shadow:0 24px 80px #17141229}.lede{display:none}.dayBar{z-index:25;background:linear-gradient(180deg,var(--bg)82%,#f4efe800);gap:0;padding:8px 0 6px;position:sticky;top:0}.dayNavigator{gap:6px}.dayArrow{width:36px;height:36px;font-size:1.2rem}.dayCenter{padding:8px 12px}.dayCenter strong{font-size:.95rem}.dayCenter span,.helperText{font-size:.8rem}.summaryStrip{grid-template-columns:repeat(3,minmax(0,1fr))}.summaryItem{padding:9px 8px 10px}.summaryItem strong{font-size:.98rem}.summaryItem p,.summaryItem span{font-size:.72rem;line-height:1.28}.progressTrack{height:5px;margin-top:7px}.toolbarRow{z-index:15;background:linear-gradient(180deg,var(--bg)70%,#f4efe800);flex-flow:row;align-items:center;gap:8px;padding:8px 0 2px;position:sticky;top:62px}.solidButton{white-space:nowrap;flex:none;width:auto;min-width:0;padding:9px 13px;font-weight:600}.mealLog{box-shadow:none;border-radius:14px;padding:0 10px 10px}.calorieBalanceCard{padding:8px 10px 10px}.calorieBalanceHeader strong{font-size:.9rem}.calorieBalancePrimary{font-size:1.32rem}.calorieBalanceMeta,.targetInlineText span,.activityQuickChip span,.activityPill span{font-size:.74rem}.targetInlineRow{gap:8px;padding:8px 10px 0}.activityQuickRow{gap:6px;padding:8px 10px 0}.activityQuickChip{border-radius:12px;padding:9px 10px}.activityQuickChip strong{font-size:.86rem}.activityPillRow{gap:6px;padding:8px 10px 10px}.activityPill{padding:6px 7px 6px 9px}.activityPill strong{font-size:.8rem}.mealLogHeader{flex-direction:row;justify-content:space-between;align-items:center;gap:6px;padding:10px 0 8px}.mealLogToggle{gap:8px}.mealHeaderAction{width:28px;height:28px;font-size:1rem}.sectionTitle{font-size:1.02rem}.editEntryTopRow{grid-template-columns:minmax(0,1fr) 132px}.editMealChips{grid-template-columns:repeat(3,minmax(0,1fr))}.mealTableRow{gap:8px;padding:10px 0}.entryMainRow{align-items:start}.foodCell h3{font-size:.95rem}.foodCell p,.macroCell,.mealFooter,.mealLogHeader .helperText{font-size:.82rem}.macroCell{gap:6px 8px}.editEntryActions{flex-direction:row}.editEntryActions>*{min-width:0}.iconButton{border-radius:999px;width:28px;min-width:28px;height:28px;padding:0;font-size:1rem}.caloriePill{padding:6px 8px}.caloriePill strong{font-size:.9rem}.caloriePill span,.macroCell span{font-size:.78rem}.mealFooter{padding:8px 0 0}.searchResult{align-items:start;padding:12px}.searchResultMain{width:100%}.modalActions,.addStepForm .modalActions{flex-direction:column}.recipeBuilderGrid+.modalActions{flex-direction:row;grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch;align-items:center;display:grid}.ingredientRow,.ingredientRowMeta{flex-direction:column;align-items:start}.ingredientBuilder .ingredientRow{flex-direction:row;align-items:center}.ingredientBuilder .ingredientRowMeta{flex-direction:row;justify-content:flex-end;align-items:center}.recipeBuilderActions{flex-direction:row;width:100%}.recipeBuilderGrid+.modalActions>.ghostButton,.recipeBuilderActions>.ghostButton,.recipeBuilderActions>.solidButton{flex:none;justify-content:center;width:100%;min-height:52px}.servingFields{grid-template-columns:minmax(0,1fr) 120px}.recipeDrawer{padding:12px 12px 10px}.recipeDrawerHeader{gap:8px}.recipeDrawerTopRow{grid-template-columns:minmax(0,1fr) auto;gap:8px}.recipeDrawerActions{align-items:center;gap:6px;display:flex}.recipeActionButton{padding-inline:10px;font-size:.8rem}.addStepMeta{flex-direction:column;align-items:start}.metricBlock{grid-template-columns:minmax(0,1fr) auto;gap:4px 10px}.metricDetail{text-align:right;grid-column:2}.metricLabel,.metricBlock strong{grid-column:1}.goalTargetCard{min-height:0;padding:10px 12px}.goalTargetCard strong{font-size:1rem}}
