@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/geist-latin-ext.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/geist-latin.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}:root{color-scheme:light;--bg:#f7f8f6;--surface:#ffffff;--surface-2:#f8f9f4;--surface-3:#eef2e7;--ink:#163a2e;--ink-2:#3d5347;--muted:#76827a;--line:#e2e7db;--line-strong:#cfd8c4;--forest:#173e31;--forest-ink:#eef5e4;--forest-muted:#b3c7ab;--hero-glow:#2c624b;--hero-base:#173e31;--lime:#d6f580;--lime-strong:#c2e763;--lime-ink:#1f3319;--accent:#58812a;--accent-strong:#7aa840;--selected-bg:#173e31;--selected-ink:#ffffff;--protein:#6c9a3a;--carbs:#dba53a;--fat:#3f9a8c;--water:#2f86cf;--water-soft:#dfeefa;--danger:#c24e34;--danger-soft:#fdebe6;--warn-bg:#fff4dc;--warn-ink:#85611a;--ok-soft:#e6f3d3;--ok-ink:#3f6a1c;--streak-bg:#ffeedd;--streak-ink:#b4521c;--focus:#94b44b;--meal-breakfast:#fff0cc;--meal-breakfast-ink:#ae7710;--meal-lunch:#e5f2d2;--meal-lunch-ink:#54802a;--meal-dinner:#e3e7f6;--meal-dinner-ink:#4a5ca3;--meal-snack:#fce3da;--meal-snack-ink:#bb5737;--shadow-sm:0 1px 2px rgba(22,58,46,0.06),0 1px 1px rgba(22,58,46,0.04);--shadow:0 10px 30px -12px rgba(22,58,46,0.25);--font-geist:"Geist",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;--font-system:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;--font-serif:Georgia,"Times New Roman",serif;--font:var(--font-geist);--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px)}:root[data-theme=dark]{color-scheme:dark;--bg:#0e1813;--surface:#15231c;--surface-2:#192a21;--surface-3:#1f3328;--ink:#e7efe4;--ink-2:#bfcdc0;--muted:#8d9c90;--line:#25382d;--line-strong:#34493c;--forest:#1c4636;--accent:#b6dd68;--accent-strong:#9fcf55;--selected-bg:#d6f580;--selected-ink:#1f3319;--protein:#a3d46b;--carbs:#f0c35c;--fat:#6fcab9;--water:#6db3f2;--water-soft:#173247;--danger:#ff8d73;--danger-soft:#3a1f19;--warn-bg:#362b12;--warn-ink:#f2d38a;--ok-soft:#22381a;--ok-ink:#bfe38a;--streak-bg:#3a2517;--streak-ink:#ffb489;--meal-breakfast:#3a3015;--meal-breakfast-ink:#f3c860;--meal-lunch:#243a1c;--meal-lunch-ink:#b3dc79;--meal-dinner:#232a45;--meal-dinner-ink:#a9b8f2;--meal-snack:#3d241c;--meal-snack-ink:#ffa888;--shadow-sm:0 1px 2px rgba(0,0,0,0.3);--shadow:0 12px 30px -12px rgba(0,0,0,0.6)}:root[data-theme=pink]{color-scheme:light;--bg:#fcf4f7;--surface:#fffcfd;--surface-2:#fcf5f8;--surface-3:#f6e8ee;--ink:#573746;--ink-2:#755563;--muted:#957582;--line:#ecdbe3;--line-strong:#dfc3d0;--forest:#72475c;--forest-ink:#fff5f9;--forest-muted:#e8cbd9;--hero-glow:#935d76;--hero-base:#623c51;--lime:#f4c2d7;--lime-strong:#ebacc7;--lime-ink:#593448;--accent:#a55178;--accent-strong:#bd7192;--selected-bg:#86536d;--selected-ink:#ffffff;--protein:#a55c84;--carbs:#c39851;--fat:#719c94;--focus:#bd7192;--shadow-sm:0 1px 3px rgba(98,60,81,0.07);--shadow:0 10px 30px -12px rgba(98,60,81,0.18)}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%}html:has(dialog[open]){overflow:hidden}:root[data-font-size=small]{font-size:87.5%}:root[data-font-size=medium]{font-size:100%}:root[data-font-size=large]{font-size:112.5%}:root[data-font-family=system]{--font:var(--font-system)}:root[data-font-family=serif]{--font:var(--font-serif)}body{background:var(--bg);color:var(--ink);font-family:var(--font);font-size:.9375rem;line-height:1.4;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}body,h1,h2,h3,p{margin:0}h1{font-size:1.625rem;line-height:1.2;letter-spacing:-.04em;font-weight:450}h2{font-size:1.0625rem;letter-spacing:-.025em}h2,h3{font-weight:550}h3{font-size:.9375rem}strong{font-weight:550}button{font:inherit;color:inherit;border:0;background:none;cursor:pointer;padding:0}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}input:not([type=range]):not([type=checkbox]),select,textarea{width:100%;font:inherit;font-size:1rem;color:var(--ink);background:var(--surface-2);border:1px solid var(--line);border-radius:14px;padding:12px 14px;outline:none;transition:border-color .15s,box-shadow .15s}input:not([type=range]):not([type=checkbox]):focus,select:focus,textarea:focus{border-color:var(--accent-strong);box-shadow:0 0 0 4px color-mix(in srgb,var(--lime) 45%,transparent)}input::placeholder,textarea::placeholder{color:color-mix(in srgb,var(--muted) 75%,transparent)}input[type=range]{width:100%;accent-color:var(--accent-strong);height:28px;margin:0}input[type=checkbox]{accent-color:var(--accent-strong);width:18px;height:18px;margin:1px 0 0;flex:none}input[type=number]{-moz-appearance:textfield}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.muted{color:var(--muted)}.small{font-size:.8125rem}.fine,.small{line-height:1.5}.fine{font-size:.75rem;color:var(--muted)}.center{text-align:center}.center-pad{display:grid;place-items:center;padding:28px}.grow{flex:1;min-width:0}.block{width:100%}.row-between{display:flex;justify-content:space-between;align-items:center;gap:10px}.row-end{display:flex;justify-content:flex-end;gap:8px}.eyebrow{display:block;font-size:.6875rem;letter-spacing:.14em;font-weight:700;color:var(--accent);margin-bottom:6px}.eyebrow.light{color:var(--lime)}.brand{display:inline-flex;align-items:center;gap:10px;font-weight:350;font-size:1.8125rem;letter-spacing:-.055em;color:var(--ink)}.brand-mark{--mark-size:40px;position:relative;display:block;width:var(--mark-size);height:var(--mark-size);border-radius:13px;background:var(--forest);color:var(--forest-ink);flex:none}.brand-mark:after{content:"";position:absolute;inset:0;border-radius:inherit;background:#173e31 url(/icon-192.png?v=6) 50%/cover no-repeat}.brand-sm{font-size:1.5rem;gap:8px}.brand-sm .brand-mark{--mark-size:34px;border-radius:11px}:root[data-theme=dark] .brand-mark{background:var(--lime);color:var(--lime-ink)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 18px;border-radius:14px;border:1px solid transparent;font-weight:700;font-size:.9375rem;white-space:nowrap;transition:transform .12s,background .15s,border-color .15s}.btn:active:not(:disabled){transform:scale(.98)}.btn-primary{background:var(--lime);color:var(--lime-ink);border-color:var(--lime-strong)}.btn-primary:hover:not(:disabled){background:var(--lime-strong)}.btn-ghost{background:var(--surface);color:var(--ink);border-color:var(--line)}.btn-ghost:hover:not(:disabled){background:var(--surface-3)}.btn-danger{background:var(--danger);color:#fff}.btn-danger-ghost{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 35%,transparent)}.btn-lg{min-height:52px;padding:14px 20px;font-size:1rem;border-radius:16px}.btn-sm{min-height:36px;padding:6px 12px;font-size:.84375rem;border-radius:11px}.btn .spinner{width:18px;height:18px}.text-btn{color:var(--accent);font-weight:700;padding:2px}.text-btn:hover{text-decoration:underline;text-underline-offset:3px}.text-btn.light{color:var(--lime)}.icon-btn{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;color:var(--ink-2);flex:none;transition:background .15s}.icon-btn:hover:not(:disabled){background:var(--surface-3)}.icon-btn.outline{border:1px solid var(--line)}.add-btn{display:grid;place-items:center;width:40px;height:40px;border-radius:14px;background:var(--lime);color:var(--lime-ink);flex:none;transition:transform .12s,background .2s}.add-btn:active:not(:disabled){transform:scale(.92)}.add-btn.sm{width:38px;height:38px;border-radius:12px}.add-btn.done{background:var(--selected-bg);color:var(--selected-ink)}.add-btn.water{background:var(--water-soft);color:var(--water)}.add-btn .spinner{width:16px;height:16px}.chip{display:inline-flex;align-items:center;gap:4px;flex:none;min-height:36px;padding:7px 14px;border-radius:999px;background:var(--surface);border:1px solid var(--line);color:var(--ink-2);font-size:.875rem;font-weight:600;white-space:nowrap;transition:background .15s}.chip small{font-weight:500;opacity:.7;font-size:.78125rem}.chip.on{background:var(--selected-bg);border-color:var(--selected-bg);color:var(--selected-ink)}.pill{display:inline-flex;font-size:.71875rem;font-weight:700;padding:3px 9px;border-radius:999px;background:var(--surface-3);color:var(--ink-2);white-space:nowrap}.pill.ok{background:var(--ok-soft);color:var(--ok-ink)}.pill.over{background:var(--warn-bg);color:var(--warn-ink)}.tag{margin-left:6px;padding:1px 7px;border-radius:999px;background:var(--lime);color:var(--lime-ink);font-size:.65625rem;font-weight:700;vertical-align:2px}.spinner,.tag{display:inline-block}.spinner{width:22px;height:22px;border-radius:50%;border:2.5px solid;border-right:2.5px solid transparent;opacity:.75;animation:spin .7s linear infinite}.avatar{position:relative;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--lime);color:var(--lime-ink);font-weight:800;font-size:.875rem;flex:none;overflow:hidden}.avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.avatar-button{display:grid;border-radius:50%}.avatar.lg{width:58px;height:58px;font-size:1.25rem}.streak-chip{display:inline-flex;align-items:center;gap:5px;padding:6px 10px;border-radius:999px;background:var(--streak-bg);color:var(--streak-ink);font-weight:700;font-size:.8125rem}.form{gap:16px}.field,.form{display:flex;flex-direction:column}.field{gap:7px;font-size:.8125rem;font-weight:600;color:var(--ink-2)}.field small{font-weight:400;color:var(--muted)}.field-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.field-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.big-number input{font-size:1.75rem!important;font-weight:700;letter-spacing:-.02em}.input-with-btn{position:relative}.input-with-btn input{padding-right:58px}.input-with-btn .text-btn{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:.8125rem}.input-with-btn .password-visibility{position:absolute;right:8px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:42px;height:42px;border-radius:12px;color:var(--ink-2)}.input-with-btn .password-visibility:hover{background:var(--surface-3)}.check{display:flex;align-items:flex-start;gap:10px;font-size:.8125rem;line-height:1.45;color:var(--ink-2);cursor:pointer}.form-error{background:var(--danger-soft);color:var(--danger);font-size:.84375rem}.form-error,.hint-chip{padding:10px 12px;border-radius:12px;line-height:1.45}.hint-chip{display:flex;align-items:flex-start;gap:8px;background:var(--surface-3);color:var(--ink-2);font-size:.8125rem}.hint-chip svg{flex:none;margin-top:1px}.hint-chip.warn{background:var(--warn-bg);color:var(--warn-ink)}.inline-form{display:flex;gap:8px}.inline-form input{flex:1;min-width:0}.range-labels{display:flex;justify-content:space-between;font-size:.75rem;color:var(--muted);font-weight:500}.segmented{display:flex;gap:4px;padding:4px;border-radius:14px;background:var(--surface-3)}.segmented button{flex:1;min-height:36px;padding:6px 10px;border-radius:10px;font-size:.84375rem;font-weight:600;color:var(--muted);white-space:nowrap;transition:background .15s,color .15s}.segmented button.on{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm)}.segmented.wide{margin-bottom:16px}.stepper{display:flex;align-items:stretch;border:1px solid var(--line);border-radius:14px;background:var(--surface-2);overflow:hidden}.stepper button{width:48px;display:grid;place-items:center;color:var(--ink)}.stepper button:hover:not(:disabled){background:var(--surface-3)}.stepper input{border:0!important;background:transparent!important;box-shadow:none!important;text-align:center;font-weight:700;padding:11px 0!important;border-radius:0!important}.card{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:18px;margin-bottom:14px}.card-head{align-items:center;gap:10px;margin-bottom:14px;flex-wrap:wrap}.card-head,.view-head{display:flex;justify-content:space-between}.view-head{align-items:flex-end;gap:12px;margin:8px 0 16px}.empty{display:flex;flex-direction:column;align-items:center;gap:6px;padding:28px 12px;text-align:center;color:var(--muted)}.empty-icon{display:grid;place-items:center;width:52px;height:52px;margin-bottom:6px;border-radius:16px;background:var(--surface-3);color:var(--accent)}.empty strong{color:var(--ink);font-size:.9375rem}.empty p{font-size:.84375rem;max-width:300px;line-height:1.5}.empty .btn{margin-top:8px}.sheet{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;background:transparent;color:var(--ink);overflow:hidden}.sheet::backdrop{background:rgba(8,22,16,.5);backdrop-filter:blur(3px)}.sheet-inner{position:absolute;left:0;right:0;bottom:0;display:flex;flex-direction:column;max-height:calc(100dvh - var(--safe-top) - 16px);background:var(--surface);border-radius:26px 26px 0 0;box-shadow:0 -10px 40px rgba(0,0,0,.18);animation:sheet-up .28s cubic-bezier(.2,.9,.25,1)}.sheet-full .sheet-inner{height:calc(100dvh - var(--safe-top) - 10px)}.sheet-head{position:relative;display:flex;align-items:center;gap:10px;padding:20px 14px 12px 20px}.sheet-grip{position:absolute;top:7px;left:50%;width:40px;height:4px;border-radius:2px;background:var(--line-strong);transform:translateX(-50%)}.sheet-title{flex:1;min-width:0}.sheet-title h2{font-size:1.1875rem}.sheet-title p{font-size:.8125rem;color:var(--muted);margin-top:1px}.sheet-body{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:4px 20px calc(24px + var(--safe-bottom))}.sheet-foot{padding:12px 20px calc(12px + var(--safe-bottom));border-top:1px solid var(--line)}.meal-select{position:relative;display:flex;align-items:center}.meal-select select{appearance:none;-webkit-appearance:none;width:auto;min-height:38px;padding:7px 32px 7px 14px;border:0;border-radius:999px;background:var(--selected-bg);color:var(--selected-ink);font-weight:700;font-size:.90625rem}.meal-select svg{position:absolute;right:11px;pointer-events:none;color:var(--selected-ink)}.preloader{min-height:100dvh;display:grid;place-items:center;padding:calc(32px + var(--safe-top)) 24px calc(32px + var(--safe-bottom));background:radial-gradient(ellipse at 50% 42%,color-mix(in srgb,var(--lime) 18%,transparent),transparent 58%),var(--bg)}.preloader-content{display:flex;flex-direction:column;align-items:center;max-width:360px;text-align:center;animation:preloader-in .45s ease-out both}.preloader .brand{flex-direction:column;gap:18px;font-size:2.25rem}.preloader .brand-mark{margin:28px;transform:scale(1.7);box-shadow:0 8px 20px color-mix(in srgb,var(--forest) 16%,transparent)}.preloader .brand-mark:before{content:"";position:absolute;inset:-12px;border-left:1.2px solid var(--line);border-bottom:1.2px solid var(--line);border-right-color:var(--line);border-top-color:var(--line);border-top:1.2px solid var(--accent-strong);border-right:1.2px solid var(--accent-strong);border-radius:50%;animation:spin 2.2s linear infinite}.preloader-copy{margin-top:10px;color:var(--ink-2);font-size:.875rem;line-height:1.6;text-wrap:balance}.preloader-track{width:160px;height:4px;margin-top:30px;border-radius:999px;overflow:hidden;background:var(--line)}.preloader-track span{display:block;width:45%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),var(--accent-strong));animation:preloader-progress 1.6s ease-in-out infinite}.preloader-status{margin-top:12px;color:var(--muted);font-size:.75rem}.auth{min-height:100dvh;display:grid;grid-template-columns:1fr;background:var(--bg)}.auth-hero{position:relative;overflow:hidden;padding:calc(24px + var(--safe-top)) 22px 72px;background:radial-gradient(120% 80% at 100% 0,#2d6a50 0,transparent 55%),#173e31;color:var(--forest-ink)}.auth-hero .brand{color:#fff}.auth-hero .brand-mark{background:var(--lime);color:#173e31}.auth-hero-copy{margin-top:28px}.auth-hero h1{font-size:1.875rem;color:#fff;margin-bottom:10px}.auth-hero p{color:var(--forest-muted);line-height:1.55;font-size:.90625rem;max-width:460px}.auth-points{display:none}.auth-panel{padding:0 16px calc(32px + var(--safe-bottom))}.auth-card{position:relative;max-width:440px;margin:-44px auto 0;background:var(--surface);border:1px solid var(--line);border-radius:26px;padding:18px 18px 20px;box-shadow:var(--shadow)}.auth-card h2{font-size:1.375rem;margin:18px 0 4px}.auth-card>.muted{font-size:.875rem;margin-bottom:18px}.auth-mobile-brand{display:none}.auth-switch{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border-radius:16px;background:var(--surface-3)}.auth-switch button{min-height:42px;border-radius:12px;font-weight:700;color:var(--muted)}.auth-switch button.on{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm)}.auth-foot{margin-top:16px;text-align:center;font-size:.875rem;color:var(--muted)}.auth-login-options{display:flex;align-items:center;justify-content:space-between;gap:12px}.auth-login-options .check{align-items:center}.auth-login-options .check span{display:flex;flex-direction:column;color:var(--ink);font-weight:600}.auth-login-options .check small{margin-top:1px;color:var(--muted);font-size:.68rem;font-weight:400}.auth-social-wrap{margin-top:16px}.auth-social-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.auth-social-button{width:100%;min-width:0;gap:8px;padding-inline:10px;font-size:.78rem;white-space:normal}.auth-social-button.google{background:#fff;border-color:#747775;color:#1f1f1f}.auth-social-button.google:hover:not(:disabled){background:#f8fafd}.auth-social-button.apple{padding:0;overflow:hidden;background:#000;border-color:#000;border-radius:12px}.auth-social-button.apple img{display:block;width:100%;max-width:196px;height:auto}.google-mark{display:block;width:18px;height:18px;object-fit:contain;flex:none}.auth-provider-note{margin-top:8px;color:var(--muted);font-size:.72rem;line-height:1.4}@media (max-width:450px){.auth-social-grid{grid-template-columns:1fr}}.auth-home{display:block;margin-top:16px;font-size:.75rem;color:var(--muted);text-decoration:none}.auth-home:hover{color:var(--ink);text-decoration:underline}.onb-page{min-height:100dvh;background:var(--bg)}.onb-bar{display:flex;align-items:center;justify-content:space-between;padding:calc(14px + var(--safe-top)) 20px 6px}.onb-bar,.onboarding{max-width:640px;margin:0 auto}.onboarding{padding:12px 20px calc(24px + var(--safe-bottom))}.onboarding.embedded{padding:0}.onb-head h1{font-size:1.75rem;margin-bottom:8px}.onb-head .muted{font-size:.90625rem;line-height:1.55}.onb-steps{display:flex;gap:6px;list-style:none;padding:0;margin:20px 0 16px}.onb-steps li{flex:1;display:flex;align-items:center;gap:6px;font-size:.78125rem;font-weight:600;color:var(--muted)}.onb-steps li span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--surface-3);font-size:.75rem;flex:none}.onb-steps li.on{color:var(--ink)}.onb-steps li.on span{background:var(--selected-bg);color:var(--selected-ink)}.onb-steps li.done span{background:var(--lime);color:var(--lime-ink)}.onb-card{background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:18px}.onboarding.embedded .onb-card{background:transparent;border:0;padding:0}.choice-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.choice{min-height:50px;border-radius:14px;border:1px solid var(--line);background:var(--surface-2);font-weight:700;color:var(--ink-2)}.choice.on{background:var(--selected-bg);border-color:var(--selected-bg);color:var(--selected-ink)}.option-list{display:flex;flex-direction:column;gap:8px}.option{display:flex;align-items:center;gap:12px;padding:13px 14px;border-radius:16px;border:1px solid var(--line);background:var(--surface-2);text-align:left}.option>span:nth-child(2){flex:1;display:flex;flex-direction:column;gap:1px}.option strong{font-size:.9375rem}.option small{font-size:.8125rem;color:var(--muted)}.option>svg{color:var(--accent)}.option.on{border-color:var(--accent-strong);background:var(--surface-3);box-shadow:inset 0 0 0 1px var(--accent-strong)}.option-dots{display:flex;align-items:flex-end;gap:3px;width:36px;justify-content:center}.option-dots i{width:5px;height:16px;border-radius:3px;background:var(--line-strong)}.option-dots i:first-child{height:6px}.option-dots i:nth-child(2){height:9px}.option-dots i:nth-child(3){height:12px}.option-dots i:nth-child(4){height:15px}.option-dots i:nth-child(5){height:18px}.option-dots i.fill{background:var(--accent-strong)}.option-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:var(--surface-3);color:var(--accent);font-size:1.125rem;font-weight:800}.option.on .option-icon{background:var(--surface)}.plan{display:flex;flex-direction:column;gap:14px}.plan-hero{padding:22px 18px;border-radius:22px;text-align:center;background:radial-gradient(100% 90% at 100% 0,#2d6a50 0,transparent 60%),#173e31;color:var(--forest-ink)}.plan-hero span{font-size:.8125rem;color:var(--forest-muted)}.plan-hero strong{display:block;font-size:3.125rem;font-weight:750;letter-spacing:-.045em;line-height:1.1;margin:4px 0;font-variant-numeric:tabular-nums}.plan-hero strong small{font-size:1.125rem;letter-spacing:0;font-weight:500;color:var(--forest-muted)}.plan-hero p{font-size:.78125rem;color:var(--forest-muted)}.plan-macros{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.pm{padding:12px 6px 10px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2);text-align:center}.pm strong{display:block;font-size:1rem}.pm span{font-size:.71875rem;color:var(--muted)}.pm.protein strong{color:var(--protein)}.pm.carbs strong{color:var(--carbs)}.pm.fat strong{color:var(--fat)}.pm.water strong{color:var(--water)}.onb-actions{position:sticky;bottom:0;z-index:2;display:flex;justify-content:space-between;gap:10px;margin-top:12px;padding:12px 0 calc(4px + var(--safe-bottom));background:linear-gradient(to bottom,transparent,var(--bg) 35%)}.onboarding.embedded .onb-actions{background:linear-gradient(to bottom,transparent,var(--surface) 35%);padding-bottom:0}.onb-actions .btn{min-width:120px}.shell{min-height:100dvh}.sidebar{display:none}.topbar{position:sticky;top:0;z-index:30;justify-content:space-between;min-height:calc(60px + var(--safe-top));padding:calc(10px + var(--safe-top)) 16px 10px;background:color-mix(in srgb,var(--surface) 90%,transparent);backdrop-filter:blur(18px) saturate(1.35);-webkit-backdrop-filter:blur(18px) saturate(1.35);border-bottom:1px solid color-mix(in srgb,var(--line) 88%,transparent);box-shadow:0 8px 24px -24px rgba(15,39,30,.65)}.topbar,.topbar-brand{display:flex;align-items:center}.topbar-brand{min-width:0;border-radius:12px}.topbar-brand:active{transform:scale(.98)}.topbar-right{display:flex;align-items:center;gap:10px}.topbar .avatar-button{padding:2px;border:1px solid color-mix(in srgb,var(--line-strong) 76%,transparent);background:var(--surface)}.main{max-width:720px;margin:0 auto;padding:20px 16px calc(104px + var(--safe-bottom))}.bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:40;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));align-items:end;padding:6px 6px calc(6px + var(--safe-bottom));background:color-mix(in srgb,var(--surface) 90%,transparent);backdrop-filter:blur(18px) saturate(1.4);-webkit-backdrop-filter:blur(18px) saturate(1.4);border-top:1px solid var(--line)}.nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;min-height:52px;gap:3px;padding:4px 0 2px;font-size:.625rem;font-weight:600;color:var(--muted);transition:color .15s}.nav-item svg{box-sizing:content-box;padding:4px 9px;border-radius:999px;transition:background .2s}.nav-item.on{color:var(--ink)}.nav-item.on svg{background:color-mix(in srgb,var(--lime) 70%,transparent);color:var(--lime-ink)}.fab{justify-self:center;display:grid;place-items:center;width:clamp(44px,12vw,60px);height:clamp(44px,12vw,60px);margin-top:-30px;margin-bottom:4px;border-radius:20px;background:var(--forest);color:var(--lime);border:4px solid var(--bg);box-shadow:0 10px 24px -6px rgba(23,62,49,.55);transition:transform .15s}.fab:active{transform:scale(.94)}:root[data-theme=dark] .fab{background:var(--lime);color:var(--lime-ink);box-shadow:0 10px 24px -6px rgba(0,0,0,.7)}.toast{position:fixed;inset:auto auto calc(96px + var(--safe-bottom)) 50%;transform:translateX(-50%);margin:0;z-index:60;display:flex;align-items:center;gap:14px;width:max-content;max-width:calc(100vw - 32px);padding:12px 12px 12px 16px;border:0;border-radius:16px;background:#10241b;color:#eef5e4;font-size:.875rem;line-height:1.4;box-shadow:0 16px 40px -12px rgba(0,0,0,.5);animation:toast-in .25s ease;overflow:visible}.toast button{flex:none;padding:6px 10px;border-radius:10px;color:var(--lime);font-weight:800}.toast button:hover{background:rgba(255,255,255,.08)}:root[data-theme=dark] .toast{background:#e7efe4;color:#10241b}:root[data-theme=dark] .toast button{color:#3f6a1c}.today-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:6px 0 14px}.today-head h1{font-size:1.5rem}.week-strip{display:grid;grid-template-columns:30px repeat(7,minmax(0,1fr)) 30px;align-items:center;gap:2px;margin-bottom:14px}.week-strip .icon-btn{width:30px;height:44px;border-radius:10px}.wday{display:flex;flex-direction:column;align-items:center;gap:3px;padding:7px 0;border-radius:14px;font-size:.6875rem;font-weight:600;color:var(--muted);text-transform:capitalize;transition:background .15s}.wday strong{font-size:1rem;color:var(--ink);font-variant-numeric:tabular-nums}.wday:hover:not(.on){background:var(--surface-3)}.wday.on{background:var(--selected-bg);color:color-mix(in srgb,var(--selected-ink) 70%,transparent)}.wday.on strong{color:var(--selected-ink)}.wday.is-today:not(.on) strong{color:var(--accent)}.wday.future{opacity:.55}.dot{width:6px;height:6px;border-radius:50%;background:var(--accent-strong)}.dot.none{background:transparent;box-shadow:inset 0 0 0 1.5px var(--line-strong)}.dot.over{background:var(--carbs)}.wday.on .dot:not(.none):not(.over){background:var(--lime)}:root[data-theme=dark] .wday.on .dot:not(.none):not(.over){background:#3f6a1c}.hero-card{margin-bottom:14px;padding:18px 16px 16px;border-radius:28px;background:radial-gradient(120% 90% at 100% 0,#2c624b 0,transparent 60%),#173e31;color:var(--forest-ink);box-shadow:0 18px 40px -22px rgba(23,62,49,.7)}.hero-top{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:4px}.hero-stat{display:flex;flex-direction:column;align-items:center;text-align:center}.hero-stat span{font-size:.75rem;color:var(--forest-muted)}.hero-stat strong{font-size:1.375rem;font-weight:700;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.hero-stat small{font-size:.6875rem;color:var(--forest-muted)}.ring{position:relative;display:grid;place-items:center;flex:none}.ring svg{position:absolute;inset:0}.ring-track{stroke:rgba(255,255,255,.12)}.ring-value{stroke:var(--lime);transition:stroke-dashoffset .7s cubic-bezier(.2,.8,.2,1)}.ring.over .ring-value{stroke:#ffb489}.ring-center{position:relative;display:flex;flex-direction:column;align-items:center}.ring-num{font-size:2.125rem;font-weight:750;letter-spacing:-.045em;line-height:1.05;font-variant-numeric:tabular-nums}.ring-label{font-size:.75rem;color:var(--forest-muted)}.hero-macros{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}.macro-top{display:flex;flex-direction:column;margin-bottom:7px}.macro-top span{font-size:.75rem;color:var(--forest-muted)}.macro-top strong{font-size:.9375rem;font-variant-numeric:tabular-nums}.macro-top small{font-size:.6875rem;font-weight:500;color:var(--forest-muted)}.bar{height:6px;border-radius:6px;background:rgba(255,255,255,.12);overflow:hidden}.bar span{display:block;height:100%;border-radius:inherit;transition:width .6s cubic-bezier(.2,.8,.2,1)}.macro-protein .bar span{background:#d6f580}.macro-carbs .bar span{background:#f0c86a}.macro-fat .bar span{background:#7fd3c0}.hero-streak{display:flex;align-items:center;gap:6px;margin-top:14px;padding:8px 10px;border-radius:12px;background:rgba(255,255,255,.07);font-size:.78125rem;color:#d9e8c9}.hero-streak svg{color:#ffb489;flex:none}.hero-streak>span{flex:1;min-width:0}.streak-dismiss{display:grid;place-items:center;flex:none;width:36px;height:36px;margin:-4px -4px -4px 0;border-radius:10px}.streak-dismiss:hover{background:rgba(255,255,255,.1)}.hero-streak .streak-dismiss svg{color:var(--forest-muted)}.meals{display:flex;flex-direction:column;gap:10px;margin-bottom:10px}.meal-journal{min-width:0}.meal-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;padding:5px;margin:14px 0 12px;background:var(--surface-3);border:1px solid var(--line);border-radius:17px}.meal-tabs button{min-height:42px;padding:8px 4px;border-radius:12px;color:var(--muted);font-size:.875rem;font-weight:450;transition:background .15s,color .15s}.meal-tabs button:hover{color:var(--ink)}.meal-tabs button[aria-selected=true]{background:var(--selected-bg);color:var(--selected-ink);box-shadow:var(--shadow-sm)}.meal-card,.water-card{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:12px 12px 12px 14px}.meal-card header,.water-card header{display:flex;align-items:center;gap:12px}.meal-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;flex:none}.meal-breakfast{background:var(--meal-breakfast);color:var(--meal-breakfast-ink)}.meal-lunch{background:var(--meal-lunch);color:var(--meal-lunch-ink)}.meal-dinner{background:var(--meal-dinner);color:var(--meal-dinner-ink)}.meal-snack{background:var(--meal-snack);color:var(--meal-snack-ink)}.meal-water{background:var(--water-soft);color:var(--water)}.meal-title{flex:1;min-width:0}.meal-title h2{font-size:1rem}.meal-title span{font-size:.8125rem;color:var(--muted);font-variant-numeric:tabular-nums}.entry-list{list-style:none;margin:10px 0 0;padding:0;border-top:1px solid var(--line)}.entry{display:flex;align-items:center;gap:10px;width:100%;padding:10px 2px;text-align:left;border-bottom:1px dashed var(--line);border-radius:0}.entry-list li:last-child .entry{border-bottom:0;padding-bottom:2px}.entry:hover .entry-main strong{color:var(--accent)}.entry-main{flex:1;min-width:0;display:flex;flex-direction:column}.entry-main strong{font-size:.90625rem;font-weight:600}.entry-main small,.entry-main strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.entry-main small{font-size:.78125rem;color:var(--muted)}.entry-kcal{text-align:right;flex:none}.entry-kcal strong{display:block;font-size:.9375rem;font-variant-numeric:tabular-nums}.entry-kcal small{font-size:.6875rem;color:var(--muted)}.meal-empty{align-items:center;padding:8px 0 2px 54px;font-size:.84375rem;color:var(--muted)}.meal-empty,.water-btns{display:flex;gap:8px}.water-btns .icon-btn{width:40px;height:40px;border-radius:14px}.water-amounts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) 88px;gap:6px;margin-top:16px}.water-amounts>button{min-height:42px;border-radius:12px;border:1px solid var(--line);font-size:.8125rem;background:var(--surface-2);color:var(--ink-2)}.water-amounts>button[aria-pressed=true]{border-color:var(--water);background:var(--water-soft);color:var(--water)}.water-custom{position:relative;min-width:0}.water-custom input{height:42px;padding:8px 24px 8px 10px!important;border-radius:12px!important;font-size:.875rem!important}.water-custom>span:last-child{position:absolute;right:10px;top:12px;font-size:.75rem;color:var(--muted);pointer-events:none}.water-hint{margin-top:8px;color:var(--muted);font-size:.71875rem}.glasses{display:grid;grid-template-columns:repeat(auto-fill,minmax(30px,1fr));gap:6px;margin-top:12px}.glass{display:grid;place-items:center;height:38px;border-radius:11px;background:var(--surface-3);color:var(--line-strong);transition:background .2s,color .2s}.glass.full{background:var(--water-soft);color:var(--water)}.day-foot{margin:14px 0;text-align:center;font-size:.78125rem;color:var(--muted)}.pro-lock{width:100%;margin-top:12px;padding:11px 14px;border:1px solid color-mix(in srgb,var(--accent) 40%,var(--line));border-radius:14px;background:color-mix(in srgb,var(--accent) 8%,var(--surface));color:var(--text);font:inherit;font-weight:700;cursor:pointer}.notification-settings h3{margin:18px 0 4px}.reminder-row{display:grid;gap:8px;padding:12px 0;border-bottom:1px solid var(--line)}.notification-settings .row-between>input[type=time]{min-height:42px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text)}.add-tabs{position:sticky;top:-4px;z-index:3;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;margin-bottom:12px;padding:4px;border-radius:16px;background:var(--surface-3);box-shadow:0 -8px 0 var(--surface)}.add-tabs.tabs-2{grid-template-columns:repeat(2,minmax(0,1fr))}.add-tabs.tabs-6{display:flex;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;scrollbar-width:none;touch-action:pan-x}.add-tabs.tabs-6::-webkit-scrollbar{display:none}.add-tabs.tabs-6 button{flex:0 0 calc((100% - 12px) / 4);min-width:66px;scroll-snap-align:start}.add-tabs button{display:flex;flex-direction:column;align-items:center;gap:2px;padding:7px 0 6px;border-radius:12px;font-size:.71875rem;font-weight:600;color:var(--muted)}.add-tabs button.on{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm)}.add-tabs button.on svg{color:var(--accent)}.search-box{display:flex;align-items:center;gap:6px;margin-bottom:12px;padding:0 6px 0 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2);color:var(--muted)}.search-box:focus-within{border-color:var(--accent-strong);box-shadow:0 0 0 4px color-mix(in srgb,var(--lime) 45%,transparent)}.search-box input{border:0!important;background:transparent!important;box-shadow:none!important;padding:12px 4px!important}.search-box input::-webkit-search-cancel-button{display:none}.chip-scroll{display:flex;gap:8px;width:calc(100% + 40px);max-width:none;min-width:0;overflow-x:auto;overflow-y:hidden;margin:0 -20px 4px;padding:2px 20px 10px;scrollbar-width:none;overscroll-behavior-inline:contain;touch-action:pan-x pan-y pinch-zoom;-webkit-overflow-scrolling:touch}.chip-scroll::-webkit-scrollbar{display:none}.category-scroller{cursor:grab;scroll-snap-type:x proximity;touch-action:pan-y pinch-zoom}.category-scroller:focus-visible{outline-offset:-3px;border-radius:10px}.category-scroller.is-dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}.category-scroller .chip{scroll-snap-align:start}.category-edit-chip{border-style:dashed;color:var(--accent-strong)}.food-sort-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.food-sort-row>span{color:var(--muted);font-size:.71875rem;font-weight:650}.food-sort-row select{width:auto;max-width:220px;min-height:36px;padding:7px 30px 7px 10px;border-radius:11px;background-color:var(--surface-2);font-size:.75rem}.recommendation-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:12px 0 4px}.recommendation-heading h3{margin:0}.recommendation-heading span{color:var(--muted);font-size:.65625rem;text-align:right}.add-section h3{margin:12px 0 4px;font-size:.71875rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.food-list{list-style:none;margin:0;padding:0}.food-row{display:flex;align-items:center;gap:10px;padding:3px 0;border-bottom:1px solid var(--line)}.food-list .food-row:last-child{border-bottom:0}.food-main{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:9px 0;text-align:left}.food-main strong{font-size:.9375rem;font-weight:600}.food-main small,.food-main strong{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.food-main small{font-size:.78125rem;color:var(--muted)}.create-food,button.food-main:hover strong{color:var(--accent)}.create-food{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin:14px 0 4px;padding:13px;border:1.5px dashed var(--line-strong);border-radius:14px;font-weight:700}.create-food:hover{background:var(--surface-2)}.special-food-form{padding-top:2px}.special-intro{padding:14px;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--line));border-radius:16px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 13%,var(--surface)),var(--surface-2));color:var(--ink)}.special-intro span,.special-intro strong{display:block}.special-intro strong{color:var(--ink);font-size:.9375rem}.special-intro span{margin-top:4px;color:var(--ink-2);font-size:.78125rem;line-height:1.45}.save-custom-toggle{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2);cursor:pointer}.save-custom-toggle input{width:18px;height:18px;margin-top:2px;accent-color:var(--accent)}.save-custom-toggle small,.save-custom-toggle strong{display:block}.save-custom-toggle strong{font-size:.84375rem}.save-custom-toggle small{margin-top:2px;color:var(--muted);font-size:.71875rem}.category-editor ol{display:flex;flex-direction:column;gap:7px;margin:14px 0;padding:0;list-style:none}.category-editor li{display:grid;grid-template-columns:30px minmax(0,1fr) 36px 36px;align-items:center;gap:7px;padding:8px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2)}.category-editor li strong{font-size:.8125rem}.category-editor .icon-btn{width:34px;height:34px}.category-editor li .icon-btn:first-of-type svg,.category-editor li .icon-btn:last-of-type svg{transform:rotate(90deg)}.category-position{display:grid;place-items:center;width:26px;height:26px;border-radius:8px;background:var(--surface-3);color:var(--muted);font-size:.6875rem;font-weight:750}.copy-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:2px 0 8px;padding:12px 14px;border-radius:16px;background:var(--surface-3)}.copy-row strong{display:block;font-size:.90625rem}.copy-row small{font-size:.78125rem;color:var(--muted)}.picker{display:flex;flex-direction:column;gap:16px}.picker-head h3{font-size:1.3125rem;letter-spacing:-.02em}.picker-head .muted{font-size:.8125rem}.picker-nutrition{display:flex;align-items:center;gap:16px;padding:14px 16px;border-radius:20px;background:#173e31;color:var(--forest-ink)}.pn-kcal{flex:none}.pn-kcal strong{display:block;font-size:2.25rem;font-weight:750;letter-spacing:-.04em;line-height:1;font-variant-numeric:tabular-nums}.pn-kcal span{font-size:.75rem;color:var(--forest-muted)}.pn-macros{flex:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.pn-macros span{display:flex;flex-direction:column;font-size:.6875rem;color:var(--forest-muted)}.pn-macros b{font-size:.9375rem;font-variant-numeric:tabular-nums}.pn-macros .protein b{color:#d6f580}.pn-macros .carbs b{color:#f0c86a}.pn-macros .fat b{color:#7fd3c0}.serving-chips{display:flex;flex-wrap:wrap;gap:8px}.picker-row{gap:14px}.picker-row,.picker-total{display:flex;align-items:flex-end}.picker-total{flex-direction:column;padding-bottom:8px;white-space:nowrap}.picker-total span{font-size:.75rem;color:var(--muted)}.picker-total strong{font-size:1.1875rem;font-variant-numeric:tabular-nums}.picker-actions{display:flex;gap:10px}.order{display:flex;flex-direction:column;gap:12px}.platform-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.platform{display:flex;align-items:center;justify-content:center;gap:7px;min-height:46px;padding:8px;border:1px solid var(--line);border-radius:14px;background:var(--surface);font-size:.8125rem;font-weight:600;color:var(--ink-2)}.platform.on{border-color:var(--accent-strong);background:var(--surface-3);box-shadow:inset 0 0 0 1px var(--accent-strong);color:var(--ink)}.platform-icon{display:grid;place-items:center;width:22px;height:22px;border-radius:7px;color:#fff;font-weight:800;font-size:.875rem;flex:none}.trendyol .platform-icon{background:#f27a1a}.yemeksepeti .platform-icon{background:#ea004b}.migros .platform-icon{background:#f58b32;font-size:.75rem}.order-text{min-height:150px;resize:vertical;line-height:1.7;font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:.875rem!important}.upload{display:flex;flex-direction:column;align-items:center;gap:8px;padding:28px 16px;border:1.5px dashed var(--line-strong);border-radius:18px;background:var(--surface-2);color:var(--muted);text-align:center}.upload strong{color:var(--ink)}.order-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-radius:18px;background:#173e31;color:var(--forest-ink)}.order-summary span{display:block;font-size:.75rem;color:var(--forest-muted)}.order-summary strong{font-size:1.5rem;letter-spacing:-.03em}.order-summary .text-btn{color:var(--lime)}.order-items{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.order-items>li{padding:12px;border:1px solid var(--line);border-radius:16px;background:var(--surface-2)}.order-items>li.unmatched{border-color:color-mix(in srgb,var(--warn-ink) 35%,transparent);background:var(--warn-bg)}.order-items .add-btn:disabled{opacity:.4;cursor:not-allowed}.oi-top{display:flex;align-items:flex-start;gap:8px}.oi-name{flex:1;min-width:0}.oi-name strong{display:block;font-size:.90625rem;overflow-wrap:anywhere}.oi-name small{display:block;font-size:.75rem;color:var(--muted);margin-top:2px}.oi-kcal{padding-top:2px;font-weight:700;font-size:.875rem;white-space:nowrap}.oi-top .icon-btn{width:30px;height:30px;margin:-4px -4px 0 0}.oi-match{display:flex;align-items:center;gap:10px;margin-top:8px}.oi-match select{flex:1;padding:9px 10px;font-size:.875rem}.oi-manual{display:flex;flex-direction:column;gap:8px;margin-top:10px}.oi-manual input{padding:9px 10px}.oi-controls{display:grid;grid-template-columns:72px 92px minmax(0,1fr);align-items:end;gap:10px;margin-top:10px}.oi-controls label{display:flex;flex-direction:column;gap:4px;font-size:.71875rem;font-weight:600;color:var(--muted)}.oi-controls input:not([type=range]){padding:8px 10px;font-size:.9375rem;background:var(--surface)}.oi-range span{display:flex;justify-content:space-between}.oi-range b{color:var(--ink)}.barcode{display:flex;flex-direction:column;gap:12px}.scan-box{position:relative;display:grid;place-items:center;aspect-ratio:4/3;max-height:340px;overflow:hidden;border-radius:20px;background:#173e31;color:#dfeccf}.scan-box video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:none}.scan-box.live video{display:block}.scan-idle{display:flex;flex-direction:column;align-items:center;gap:12px;max-width:320px;padding:20px;text-align:center;font-size:.875rem;line-height:1.5}.scan-idle svg{color:var(--lime)}.scan-line{position:absolute;left:12%;right:12%;top:30%;height:2px;background:var(--lime);box-shadow:0 0 14px var(--lime);animation:scan 1.6s ease-in-out infinite alternate}.scan-stop{position:absolute;bottom:12px}.stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px}.stat{display:flex;flex-direction:column;gap:1px;padding:14px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}.stat svg{color:var(--accent);margin-bottom:6px}.stat strong{font-size:1.4375rem;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.stat span{font-size:.78125rem;color:var(--muted)}.section-kicker{display:block;margin-bottom:3px;color:var(--accent-strong);font-size:.6875rem;font-weight:750;letter-spacing:.11em}.history-calendar-card{overflow:hidden}.calendar-card-head{align-items:flex-start}.calendar-card-head h2{margin-top:2px}.history-calendar-layout{display:grid;gap:14px}.data-calendar{position:relative;min-width:0;transition:opacity .15s}.data-calendar.loading{opacity:.58}.calendar-toolbar{display:grid;grid-template-columns:38px 1fr 38px;align-items:center;gap:8px;margin-bottom:10px}.calendar-toolbar>strong{text-align:center;text-transform:capitalize;font-size:.9375rem}.calendar-nav{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--line);border-radius:12px;color:var(--ink);background:var(--surface-2)}.calendar-nav:hover:not(:disabled){border-color:var(--accent);background:var(--selected-bg);color:var(--selected-ink)}.calendar-nav:disabled{opacity:.3}.calendar-days,.calendar-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.calendar-weekdays{margin-bottom:4px}.calendar-weekdays span{padding:4px 0;text-align:center;color:var(--muted);font-size:.65625rem;font-weight:700}.calendar-day{position:relative;display:grid;place-items:center;min-width:0;aspect-ratio:1;border:1px solid transparent;border-radius:12px;color:var(--ink-2);font-size:.8125rem;font-weight:650;font-variant-numeric:tabular-nums;transition:background .15s,border-color .15s,color .15s,transform .15s}.calendar-day:hover:not(:disabled){border-color:var(--line-strong);background:var(--surface-3);transform:translateY(-1px)}.calendar-day.outside{color:var(--line-strong)}.calendar-day:disabled{opacity:.22;cursor:default}.calendar-day.today{border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}.calendar-day.selected{border-color:var(--accent-strong);background:var(--forest);color:var(--forest-ink);box-shadow:0 6px 14px -10px var(--forest)}.calendar-day i{position:absolute;left:50%;bottom:5px;width:4px;height:4px;border-radius:50%;transform:translateX(-50%);background:var(--muted)}.calendar-day.ok i{background:var(--accent)}.calendar-day.over i{background:var(--carbs)}.calendar-day.water i{background:var(--water)}.calendar-day.selected i{background:var(--lime)}.calendar-inspector{display:flex;flex-direction:column;min-height:244px;padding:18px;border-radius:20px;background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 9%,var(--surface-3)),var(--surface-3));border:1px solid var(--line)}.calendar-inspector-date{display:flex;flex-direction:column;gap:2px}.calendar-inspector-date span{color:var(--accent-strong);font-size:.71875rem;font-weight:750;text-transform:uppercase;letter-spacing:.08em}.calendar-inspector-date strong{font-size:1rem}.calendar-kcal{display:flex;align-items:baseline;gap:6px;margin-top:20px}.calendar-kcal strong{font-size:2rem;line-height:1;letter-spacing:-.04em;font-variant-numeric:tabular-nums}.calendar-kcal span{color:var(--muted);font-size:.78125rem}.calendar-progress{margin:10px 0 16px}.calendar-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.calendar-facts span{display:flex;align-items:center;gap:5px;min-width:0;padding:8px;border-radius:11px;background:var(--surface);color:var(--muted);font-size:.71875rem}.calendar-facts svg{color:var(--accent);flex:none}.calendar-facts b{color:var(--ink)}.calendar-macros{display:flex;gap:10px;margin-top:12px;color:var(--muted);font-size:.71875rem}.calendar-macros span{display:flex;align-items:center;gap:4px}.calendar-macros i{width:6px;height:6px;border-radius:50%}.calendar-macros i.protein{background:var(--protein)}.calendar-macros i.carbs{background:var(--carbs)}.calendar-macros i.fat{background:var(--fat)}.calendar-macros b{color:var(--ink)}.calendar-inspector .btn{margin-top:auto}.calendar-legend{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px;color:var(--muted);font-size:.6875rem}.calendar-legend span{display:flex;align-items:center;gap:5px}.calendar-legend span:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--muted)}.calendar-legend .ok:before{background:var(--accent)}.calendar-legend .over:before{background:var(--carbs)}.chart-card .segmented button{min-height:30px;padding:4px 10px;font-size:.78125rem}.bars{position:relative;display:flex;align-items:flex-end;gap:6px;height:180px;padding-top:22px}.bars-7{margin-bottom:22px}.bars-30{gap:3px}.bars-90{gap:1px}.bar-col{position:relative;flex:1;min-width:0;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center}.bar-col small{position:absolute;bottom:-22px;font-size:.6875rem;color:var(--muted);text-transform:capitalize}.bar-fill{width:100%;max-width:34px;min-height:3px;border-radius:8px 8px 3px 3px;background:var(--accent-strong);transition:height .5s cubic-bezier(.2,.8,.2,1),opacity .15s}.bars-90 .bar-fill{border-radius:2px}.bar-col:hover .bar-fill{opacity:.75}.bar-fill.over{background:var(--carbs)}.bar-fill.today{background:var(--forest)}:root[data-theme=dark] .bar-fill.today{background:var(--lime)}.target-line{position:absolute;left:0;right:0;z-index:1;border-top:1.5px dashed var(--muted);pointer-events:none}.target-line em{position:absolute;right:0;top:-19px;padding:0 4px;background:var(--surface);font-style:normal;font-size:.6875rem;color:var(--muted)}.split-bar{display:flex;gap:2px;height:12px;border-radius:6px;overflow:hidden}.split-bar .protein{background:var(--protein)}.split-bar .carbs{background:var(--carbs)}.split-bar .fat{background:var(--fat)}.split-legend{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:10px;font-size:.78125rem;color:var(--muted)}.split-legend span:before{content:"";display:inline-block;width:8px;height:8px;margin-right:6px;border-radius:50%}.split-legend .protein:before{background:var(--protein)}.split-legend .carbs:before{background:var(--carbs)}.split-legend .fat:before{background:var(--fat)}.split-legend b{color:var(--ink)}.day-list{list-style:none;margin:0;padding:0}.day-row{display:flex;align-items:center;gap:12px;width:100%;padding:11px 0;border-bottom:1px solid var(--line);text-align:left;color:var(--muted)}.day-list li:last-child .day-row{border-bottom:0}.day-date{display:flex;flex-direction:column;align-items:center;justify-content:center;width:46px;height:50px;border-radius:14px;background:var(--surface-3);flex:none}.day-date strong{font-size:1.125rem;color:var(--ink);line-height:1.1}.day-date small{font-size:.6875rem;text-transform:capitalize}.day-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px}.day-line{display:flex;align-items:center;justify-content:space-between;gap:8px}.day-line strong{font-size:.90625rem;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.day-main small{font-size:.78125rem}.mini-bar{height:5px;border-radius:4px;background:var(--surface-3);overflow:hidden}.mini-bar span{display:block;height:100%;border-radius:inherit}.mini-bar .ok{background:var(--accent-strong)}.mini-bar .over{background:var(--carbs)}.mini-bar .under{background:var(--muted)}.fav-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.fav{position:relative;padding:10px 40px 10px 12px;border-radius:14px;background:var(--surface-3);text-align:left;min-width:0;transition:background .15s}.fav:hover:not(:disabled){background:color-mix(in srgb,var(--lime) 18%,var(--surface-3))}.fav-add{position:absolute;right:10px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:24px;height:24px;border-radius:8px;background:var(--lime);color:var(--lime-ink)}.fav.done .fav-add{background:var(--selected-bg);color:var(--selected-ink)}.fav-add .spinner{width:14px;height:14px}.fav strong{display:block;font-size:.875rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fav small{font-size:.75rem;color:var(--muted)}.progress-head p{max-width:560px;margin-top:5px;color:var(--muted);font-size:.875rem;line-height:1.5}.weight-hero{position:relative;overflow:hidden}.weight-hero:after{content:"";position:absolute;right:-34px;bottom:-48px;width:150px;height:150px;border:24px solid rgba(255,255,255,.035);border-radius:50%;pointer-events:none}.weight-entry-card{border-color:color-mix(in srgb,var(--accent) 22%,var(--line))}.card-title-with-icon{display:flex;align-items:center;gap:10px}.card-title-with-icon>span{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:var(--selected-bg);color:var(--selected-ink);flex:none}.card-title-with-icon small{display:block;margin-top:2px;color:var(--muted);font-size:.71875rem;font-weight:400}.progress-chart-head>div:first-child{display:flex;flex-direction:column;gap:2px}.progress-chart-head .segmented button{min-height:30px;padding:4px 9px;font-size:.71875rem}.weight-chart-wrap{padding:8px 4px 0;border-radius:18px;background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 5%,var(--surface-2)),transparent)}.weight-summary-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:10px;padding:10px 0;border-block:1px solid var(--line)}.weight-summary-strip span{padding:0 10px;border-right:1px solid var(--line);min-width:0}.weight-summary-strip span:last-child{border-right:0}.weight-summary-strip small,.weight-summary-strip strong{display:block}.weight-summary-strip small{color:var(--muted);font-size:.65625rem}.weight-summary-strip strong{margin-top:3px;font-size:.875rem;font-variant-numeric:tabular-nums}.weight-summary-strip strong.down{color:var(--accent-strong)}.weight-summary-strip strong.up{color:var(--carbs)}.wh-top{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.wh-top span{display:block;font-size:.78125rem;color:var(--forest-muted)}.wh-top strong{font-size:2.625rem;font-weight:750;letter-spacing:-.045em;line-height:1.05;font-variant-numeric:tabular-nums}.wh-top strong small{font-size:1.0625rem;letter-spacing:0;color:var(--forest-muted);font-weight:500}.wh-change{text-align:right;font-size:1.1875rem;font-weight:700;font-variant-numeric:tabular-nums}.wh-change small{display:block;font-size:.71875rem;font-weight:400;color:var(--forest-muted)}.wh-change.down{color:#d6f580}.wh-change.up{color:#ffb489}.goal-track{height:10px;margin:18px 0 8px;border-radius:6px;background:rgba(255,255,255,.12);overflow:hidden}.goal-track span{display:block;height:100%;border-radius:inherit;background:var(--lime);transition:width .6s}.wh-foot{display:flex;justify-content:space-between;font-size:.75rem;color:var(--forest-muted)}.wh-eta{display:flex;align-items:center;gap:6px;margin-top:12px;font-size:.8125rem;color:#d9e8c9}.weight-chart{display:block;width:100%;height:auto;color:var(--accent-strong);overflow:visible}.wc-line{stroke:currentColor;stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round}.wc-dot{fill:var(--surface);stroke:currentColor;stroke-width:2}.wc-target{stroke:var(--muted);stroke-dasharray:4 4}.wc-label{font-size:.625rem;fill:var(--muted);font-family:var(--font)}.weight-list{list-style:none;margin:10px 0 0;padding:0}.weight-list li{display:grid;grid-template-columns:minmax(0,1fr) auto 56px 34px;align-items:center;gap:8px;padding:5px 0;border-top:1px solid var(--line);font-size:.875rem}.weight-list li span{color:var(--muted)}.weight-list small{text-align:right;font-weight:600;color:var(--muted);font-variant-numeric:tabular-nums}.weight-list small.down{color:var(--accent)}.weight-list small.up{color:var(--carbs)}.weight-list .icon-btn{width:34px;height:34px;color:var(--muted)}.two-col{display:grid;gap:14px;margin-bottom:14px}.two-col .card{margin:0}.bmi{display:flex;align-items:center;gap:10px}.bmi strong{font-size:2.125rem;letter-spacing:-.04em}.bmi-scale{position:relative;height:10px;margin:14px 0 6px;border-radius:6px;background:linear-gradient(90deg,#7fb3d9 0 14%,#8cc56a 14% 40%,#e9c057 40% 60%,#e07a5f 60% 100%)}.bmi-scale .marker{position:absolute;top:-5px;width:4px;height:20px;border-radius:2px;background:var(--ink);transform:translateX(-50%);box-shadow:0 0 0 2px var(--surface);transition:left .5s}.bmi-legend{position:relative;height:18px;margin-bottom:8px;font-size:.6875rem;color:var(--muted)}.bmi-legend span{position:absolute;transform:translateX(-50%)}.bmi-legend span:first-child{left:14%}.bmi-legend span:nth-child(2){left:40%}.bmi-legend span:nth-child(3){left:60%}.kv{flex-direction:column;margin:0}.kv,.kv>div{display:flex}.kv>div{justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px dashed var(--line)}.kv>div:last-child{border-bottom:0}.kv dt{font-size:.84375rem;color:var(--muted)}.kv dd{margin:0;font-size:.875rem;font-weight:600;text-align:right}.profile-heading p{max-width:560px;margin-top:5px;color:var(--muted);font-size:.875rem;line-height:1.5}.profile-card{display:flex;align-items:center;gap:14px;margin:8px 0 14px;padding:20px;border-radius:24px;background:radial-gradient(120% 90% at 100% 0,#2c624b 0,transparent 60%),#173e31;color:var(--forest-ink)}.profile-card>div{min-width:0}.profile-card h2{font-size:1.3125rem}.profile-card p{font-size:.84375rem;color:var(--forest-muted);overflow:hidden;text-overflow:ellipsis}.profile-card small{font-size:.75rem;color:#9fb799}.profile-identity{flex:1}.profile-plan-status{display:flex;flex-direction:column;align-items:flex-end;gap:3px;margin-left:auto;text-align:right}.profile-plan-status>span{display:inline-flex;align-items:center;gap:5px;padding:6px 9px;border-radius:999px;background:var(--lime);color:var(--lime-ink);font-size:.71875rem;font-weight:750}.profile-plan-status button{margin-top:4px;color:var(--lime);font-size:.71875rem;font-weight:700;text-decoration:underline;text-underline-offset:3px}.profile-photo{position:relative;flex:none}.profile-photo>button{position:absolute;right:-5px;bottom:-4px;display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:var(--lime);color:var(--lime-ink);border:3px solid var(--hero-base)}.profile-menu-grid,.profile-overview{display:grid;gap:14px}.profile-menu-grid>.card,.profile-overview>.card{margin:0}.profile-menu-grid,.profile-overview{margin-bottom:14px}.profile-goals-card{border-color:color-mix(in srgb,var(--accent) 18%,var(--line))}.target-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.tg{padding:13px 15px;border:1px solid var(--line);border-radius:16px;background:var(--surface-2);box-shadow:var(--shadow-sm)}.tg strong{display:block;font-size:1.125rem;font-variant-numeric:tabular-nums}.tg span{font-size:.75rem;color:var(--muted)}.tg.kcal{grid-column:1/-1;border-color:transparent;background:linear-gradient(115deg,#173e31,#234c3b);color:var(--forest-ink)}.tg.kcal strong{font-size:1.75rem;letter-spacing:-.03em}.tg.kcal span{color:var(--forest-muted)}.target-grid+.fine{margin-top:10px}.menu-card{padding:6px}.profile-menu-section>header{padding:12px 12px 8px}.profile-menu-section>header h2{font-size:1rem}.menu-row{display:flex;align-items:center;gap:12px;width:100%;padding:13px 12px;border-radius:14px;font-size:.9375rem;font-weight:600;text-align:left;text-decoration:none;color:var(--ink)}.menu-row span{flex:1}.menu-row>svg:first-child{box-sizing:border-box;width:36px;height:36px;padding:8px;flex:none;border-radius:11px;background:var(--surface-3);color:var(--muted)}.menu-row>svg:last-child:not(:first-child){color:var(--line-strong)}.menu-row:hover{background:var(--surface-3)}.menu-row:hover>svg:first-child{background:var(--selected-bg);color:var(--selected-ink)}.menu-row.danger,.menu-row.danger svg{color:var(--danger)!important}.account-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:0}.account-actions .menu-row:last-child{border-left:1px solid var(--line)}.about h3{margin:16px 0 6px;font-size:.9375rem}.about h3:first-child{margin-top:0}.about p{font-size:.875rem;line-height:1.6;color:var(--ink-2)}.about-list{display:flex;flex-direction:column;gap:8px;list-style:none;margin:10px 0;padding:0}.about-list li{padding:10px 12px;border-radius:12px;background:var(--surface-3)}.about-list strong{display:block;font-size:.84375rem}.about-list span{font-size:.8125rem;color:var(--muted);line-height:1.5}.about .fine{margin-top:14px}@media (max-width:380px){.today-head h1,h1{font-size:1.375rem}.hero-card{padding:16px 10px 14px}.hero-stat strong{font-size:1.125rem}.ring-num{font-size:1.8125rem}.hero-macros{gap:8px}.field-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.add-tabs button{font-size:.65625rem}.onb-steps{gap:10px}.onb-steps li{flex:none}.onb-steps li:not(.on){font-size:0;gap:0}.onb-steps li.on{flex:1}.oi-controls{grid-template-columns:64px 84px minmax(0,1fr)}.platform{font-size:.71875rem;gap:5px}.profile-card{align-items:flex-start}.profile-plan-status{display:none}.account-actions{grid-template-columns:1fr}.account-actions .menu-row:last-child{border-left:0;border-top:1px solid var(--line)}}@media (min-width:720px){.sheet-inner{left:50%;right:auto;top:50%;bottom:auto;width:min(560px,calc(100vw - 48px));max-height:min(88dvh,880px);border-radius:26px;transform:translate(-50%,-50%);animation:modal-in .22s ease;box-shadow:0 30px 80px -20px rgba(0,0,0,.45)}.sheet-full .sheet-inner{width:min(660px,calc(100vw - 48px));height:min(88dvh,880px)}.sheet-grip{display:none}.sheet-body{padding-bottom:24px}.stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.history-calendar-layout{grid-template-columns:minmax(0,1.35fr) minmax(220px,.65fr);align-items:stretch}.two-col{grid-template-columns:1fr 1fr}.fav-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.target-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.profile-menu-grid,.profile-overview{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.auth-hero{padding-bottom:80px}}@media (min-width:960px){.bottom-nav{display:none}.topbar{display:flex;margin-left:256px;padding:calc(14px + var(--safe-top)) 40px 14px}.sidebar{position:fixed;inset:0 auto 0 0;z-index:20;display:flex;flex-direction:column;gap:10px;width:256px;padding:28px 18px 20px;background:var(--surface);border-right:1px solid var(--line);overflow-y:auto}.sidebar-brand{align-self:flex-start;padding:2px 8px 12px}.sidebar-add{width:100%;margin-bottom:10px}.sidebar nav{display:flex;flex-direction:column;gap:4px}.side-link{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:14px;color:var(--muted);font-weight:600;font-size:.9375rem;text-align:left;transition:background .15s,color .15s}.side-link:hover{background:var(--surface-2);color:var(--ink)}.side-link.on{background:var(--surface-3);color:var(--ink)}.side-link.on svg{color:var(--accent)}.sidebar-foot{margin-top:auto;display:flex;flex-direction:column;align-items:flex-start;gap:10px}.side-user{display:flex;align-items:center;gap:10px;width:100%;padding:10px;border:1px solid var(--line);border-radius:16px;background:var(--surface-2);text-align:left}.side-user>span:last-child{min-width:0}.side-user strong{display:block;font-size:.875rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.side-user small{font-size:.75rem;color:var(--muted)}.main{max-width:none;margin-left:256px;padding:32px 40px 60px}.view{max-width:1040px;margin:0 auto}.toast{bottom:28px;margin-left:128px}.today-head h1,h1{font-size:1.875rem}.auth{grid-template-columns:1.05fr 1fr}.auth-hero{display:flex;flex-direction:column;padding:48px 56px;min-height:100dvh}.auth-hero-copy{margin-top:auto}.auth-hero h1{font-size:2.875rem;margin-bottom:16px}.auth-hero p{font-size:1rem}.auth-points{display:flex;flex-direction:column;gap:12px;list-style:none;margin:34px 0 auto;padding:0}.auth-points li{display:flex;align-items:center;gap:10px;font-size:.9375rem;color:#dcead0}.auth-points svg{color:var(--lime)}.auth-panel{display:grid;place-items:center;padding:40px}.auth-card{margin:0;width:100%;padding:26px;border:0;box-shadow:none;background:transparent}}@media (min-width:1200px){.view.today{display:grid;grid-template-columns:400px minmax(0,1fr);grid-template-rows:auto auto auto auto 1fr;column-gap:24px;align-items:start}.today-head,.week-strip{grid-column:1/-1}.view.today .day-foot,.view.today .hero-card,.view.today .water-card{grid-column:1}.view.today .meal-journal{grid-column:2;grid-row:3/span 4}.week-strip{max-width:640px}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes preloader-in{0%{opacity:0;translate:0 8px}to{opacity:1;translate:0 0}}@keyframes preloader-progress{0%{transform:translateX(-105%)}to{transform:translateX(330%)}}@keyframes sheet-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes modal-in{0%{opacity:0;transform:translate(-50%,-47%) scale(.98)}to{opacity:1;transform:translate(-50%,-50%)}}@keyframes toast-in{0%{opacity:0;translate:0 12px}to{opacity:1;translate:0 0}}@keyframes scan{0%{top:22%}to{top:78%}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;transition-duration:.01ms!important}.preloader .brand-mark:before,.preloader-content,.preloader-track span{animation:none!important}}.order{position:relative}.platform-row.four{grid-template-columns:repeat(3,minmax(0,1fr))}.dropzone{position:relative;display:flex;flex-direction:column;gap:12px;padding:16px;border:1.5px dashed var(--line-strong);border-radius:20px;background:var(--surface-2);transition:border-color .15s,background .15s}.order.dragging .dropzone{border-color:var(--accent-strong);background:color-mix(in srgb,var(--lime) 16%,var(--surface-2))}.dz-empty{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 6px 4px;text-align:center}.dz-empty strong{font-size:1rem}.dz-empty p{font-size:.84375rem;color:var(--muted)}.dz-icon{display:grid;place-items:center;width:56px;height:56px;margin-bottom:4px;border-radius:18px;background:var(--surface);color:var(--accent);box-shadow:var(--shadow-sm)}.dz-buttons{gap:8px;flex-wrap:wrap}.dz-buttons,.dz-overlay{display:flex;justify-content:center}.dz-overlay{position:absolute;inset:0;align-items:center;gap:10px;border-radius:20px;background:color-mix(in srgb,var(--surface) 88%,transparent);color:var(--accent);font-weight:700;pointer-events:none}kbd{display:inline-block;padding:1px 6px;border:solid var(--line-strong);border-width:1px 1px 2px;border-radius:6px;background:var(--surface);font:600 .75rem var(--font);color:var(--ink-2)}.thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px;list-style:none;margin:0;padding:0}.thumbs li{position:relative;aspect-ratio:3/4;border-radius:14px;overflow:hidden;background:var(--surface);border:1px solid var(--line)}.thumbs img{width:100%;height:100%;object-fit:cover;object-position:top;display:block}.thumb-remove{position:absolute;top:5px;right:5px;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:rgba(8,22,16,.72);color:#fff}.thumb-add{display:grid;place-items:center;width:100%;height:100%;color:var(--accent)}.analyze-status,.thumb-add:hover{background:var(--surface-3)}.analyze-status{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;font-size:.84375rem;color:var(--ink-2)}.analyze-status .spinner{width:18px;height:18px;color:var(--accent)}.sample-links{display:flex;gap:12px;flex-wrap:wrap}.api-note{font-size:.8125rem;color:var(--muted)}.api-note summary{cursor:pointer;font-weight:600;color:var(--ink-2)}.api-note p{margin-top:6px;line-height:1.55}.desktop-only{display:none}@media (hover:hover) and (pointer:fine){.desktop-only{display:inline}.mobile-only{display:none!important}}.order-summary small{display:block;margin-top:2px;font-size:.75rem;color:var(--forest-muted)}.order-group{display:flex;flex-direction:column;gap:8px;padding:12px;border:1px solid var(--line);border-radius:20px;background:var(--surface)}.order-group.plain{padding:0;border:0;background:transparent}.og-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.og-head strong{display:block;font-size:.9375rem}.og-head small{font-size:.78125rem;color:var(--muted)}.og-share{display:flex;gap:4px;padding:3px;border-radius:12px;background:var(--surface-3)}.og-share button{padding:5px 9px;border-radius:9px;font-size:.78125rem;font-weight:700;color:var(--muted)}.og-share button.on{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm)}.og-add{align-self:flex-start;display:inline-flex;align-items:center;gap:4px;font-size:.84375rem}.oi-badges{display:flex;flex-wrap:wrap;gap:4px;margin:4px 0 2px}.badge{display:inline-flex;padding:2px 8px;border-radius:999px;background:var(--surface-3);color:var(--ink-2);font-size:.6875rem;font-weight:700}.badge.ok{background:var(--ok-soft);color:var(--ok-ink)}.badge.soft{background:color-mix(in srgb,var(--water) 16%,var(--surface));color:var(--water)}.badge.warn{background:var(--warn-bg);color:var(--warn-ink)}.oi-kcal{display:flex;flex-direction:column;align-items:flex-end}.oi-kcal strong{font-size:1.125rem;line-height:1.1;font-variant-numeric:tabular-nums}.oi-kcal small{font-size:.6875rem;font-weight:500;color:var(--muted)}.oi-macros{margin-top:4px;font-size:.78125rem;color:var(--muted);font-variant-numeric:tabular-nums}.order-items .oi-controls{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end}.order-items .oi-range{grid-column:1/-1}.oi-serving input,.oi-serving select{padding:9px 10px;font-size:.875rem!important;background:var(--surface)}.oi-qty{display:flex;flex-direction:column;gap:4px;font-size:.71875rem;font-weight:600;color:var(--muted)}.oi-qty .stepper{background:var(--surface)}.oi-qty .stepper button{width:38px}.oi-qty .stepper input{padding:8px 0!important;font-size:.9375rem!important}.oi-actions{display:flex;gap:14px;margin-top:8px;font-size:.8125rem}.picker-panel{display:flex;flex-direction:column;gap:8px;margin-top:10px;padding:12px;border:1px solid var(--accent-strong);border-radius:16px;background:var(--surface);box-shadow:var(--shadow)}.picker-panel-head{display:flex;align-items:center;justify-content:space-between}.picker-panel .search-box{margin:0}.chip-scroll.tight{width:calc(100% + 24px);margin:0 -12px;padding:2px 12px 4px}.picker-results{max-height:320px;overflow-y:auto}.sticky-save{position:sticky;bottom:0;z-index:2;box-shadow:0 -12px 16px var(--surface)}.today-add-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:12px}.order-cta{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;border:1px dashed var(--line-strong);border-radius:22px;background:var(--surface);text-align:left;color:var(--muted)}.order-cta:hover{border-color:var(--accent-strong)}.order-cta-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.order-cta-text strong{font-size:.9375rem;color:var(--ink)}.order-cta-text small{font-size:.78125rem;line-height:1.45}.meal-order{background:color-mix(in srgb,var(--lime) 45%,var(--surface));color:var(--lime-ink)}.meal-add{background:var(--meal-lunch);color:var(--meal-lunch-ink)}:root[data-theme=dark] .meal-order{color:var(--lime);background:color-mix(in srgb,var(--lime) 14%,var(--surface))}@media (max-width:560px){.today-add-actions{gap:8px}.today-add-actions .order-cta{gap:8px;padding:10px;border-radius:18px}.today-add-actions .order-cta-text small,.today-add-actions .order-cta>svg:last-child{display:none}.today-add-actions .order-cta-text strong{font-size:.84375rem}}.btn,.chip,.entry-main strong,.eyebrow,.field,.meal-select select,.nav-item,.side-link,.text-btn{font-weight:500}.hero-stat strong,.plan-hero strong,.ring-num{font-weight:450}.avatar{font-weight:550}.auth-hero,.hero-card,.plan-hero,.profile-card{background:radial-gradient(120% 90% at 100% 0,var(--hero-glow) 0,transparent 60%),var(--hero-base)}.auth-hero .brand-mark{color:var(--lime-ink)}.auth-points li,.hero-streak{color:var(--forest-ink)}.macro-protein .bar span{background:var(--lime)}.theme-picker{position:relative;display:inline-flex;align-items:center;flex:none;color:var(--ink-2)}.theme-picker select{appearance:none;width:108px;min-height:38px;padding:8px 24px 8px 30px;border-radius:999px;background:var(--surface);font-size:.8125rem;font-weight:450;cursor:pointer}.theme-picker>svg{position:absolute;pointer-events:none}.theme-picker>svg:first-child{left:10px}.theme-picker>svg:last-child{right:9px}.appearance-settings{display:flex;flex-direction:column;gap:22px}.session-options{display:grid;gap:8px;margin:0;padding:0;border:0}.session-options legend{margin-bottom:4px;font-size:.86rem;font-weight:650}.session-options label{display:flex;align-items:flex-start;gap:11px;padding:12px 13px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2);cursor:pointer}.session-options label.selected{border-color:var(--accent-strong);background:var(--accent-soft)}.session-options input{width:17px;height:17px;margin-top:2px;flex:none;accent-color:var(--accent-strong)}.session-options small,.session-options span,.session-options strong{display:block}.session-options strong{font-size:.85rem}.session-options small{margin-top:2px;color:var(--muted);font-size:.72rem;line-height:1.4}.appearance-group{min-width:0;margin:0;padding:0;border:0}.appearance-group legend{margin-bottom:10px;padding:0;font-size:.875rem;font-weight:550}.appearance-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.appearance-option{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-width:0;min-height:82px;padding:12px 6px;border:1px solid var(--line);border-radius:16px;background:var(--surface-2);cursor:pointer;font-size:.8125rem}.appearance-font.on,.appearance-option.on{border-color:var(--accent-strong);background:var(--surface-3);box-shadow:inset 0 0 0 1px var(--accent-strong)}.appearance-font:focus-within,.appearance-option:focus-within{outline:2px solid var(--accent-strong);outline-offset:3px}.appearance-font input,.appearance-option input{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);opacity:0}.appearance-size-sample{line-height:1}.appearance-size-sample.small{font-size:1.125rem}.appearance-size-sample.medium{font-size:1.4375rem}.appearance-size-sample.large{font-size:1.75rem}.appearance-fonts{display:grid;gap:8px}.appearance-font{position:relative;display:flex;align-items:center;gap:14px;padding:12px 14px;border:1px solid var(--line);border-radius:16px;background:var(--surface-2);cursor:pointer}.appearance-font strong{display:block;font-size:.875rem}.appearance-font small{display:block;margin-top:3px;font-size:.75rem;color:var(--muted)}.font-sample{display:grid;place-items:center;width:44px;height:40px;font-size:1.5rem;flex:none}.font-geist{font-family:var(--font-geist)}.font-system{font-family:var(--font-system)}.font-serif{font-family:var(--font-serif)}.appearance-theme-sample{width:28px;height:28px;border-radius:50%;border:1px solid rgba(100,100,100,.3)}.appearance-theme-sample.theme-white{background:#f7f8f6}.appearance-theme-sample.theme-dark{background:#0e1813}.appearance-theme-sample.theme-pink{background:#fcf4f7}.appearance-preview{padding:16px;border-radius:18px;border:1px solid var(--line);background:var(--surface-2);overflow-wrap:anywhere}.appearance-preview strong{font-size:1.125rem}.appearance-preview p{margin-top:6px;color:var(--muted);font-size:.875rem;line-height:1.5}.side-account{width:100%;padding:12px;border:1px solid var(--line);border-radius:20px;background:var(--surface-2)}.side-account-tools{display:flex;align-items:center;justify-content:space-between;gap:8px}.side-account .side-user{border:0;background:none;padding:10px 0 0}.chain-intro{margin-bottom:14px}.chain-head p,.chain-intro p{margin-top:3px;color:var(--muted);font-size:.8125rem}.chain-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.chain-grid>button{display:flex;align-items:center;gap:10px;min-width:0;padding:11px;border:1px solid var(--line);border-radius:16px;background:var(--surface);text-align:left;transition:border-color .15s,transform .12s}.chain-grid>button:active{transform:scale(.98)}.chain-grid>button:hover{border-color:var(--accent-strong)}.chain-grid>button>span:nth-child(2){display:flex;flex-direction:column;min-width:0;flex:1}.chain-grid strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.84375rem}.chain-grid small{color:var(--muted);font-size:.71875rem}.chain-mark{display:grid;place-items:center;width:40px;height:40px;flex:none;border-radius:13px;background:var(--surface-3);color:var(--ink);font-size:.75rem;font-weight:650;letter-spacing:-.03em}.chain-mark.tone-1{background:var(--meal-breakfast);color:var(--meal-breakfast-ink)}.chain-mark.tone-2{background:var(--meal-lunch);color:var(--meal-lunch-ink)}.chain-mark.tone-3{background:var(--meal-dinner);color:var(--meal-dinner-ink)}.chain-mark.tone-4{background:var(--meal-snack);color:var(--meal-snack-ink)}.chain-mark.tone-5{background:var(--water-soft);color:var(--water)}.chain-head{display:flex;align-items:center;gap:12px;margin-bottom:14px}.chain-disclaimer{margin:14px 2px 0;color:var(--muted);font-size:.71875rem;line-height:1.5}@media (min-width:620px){.chain-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:390px){.topbar{padding-left:12px;padding-right:12px}.topbar-right{gap:7px}.topbar-right .streak-chip{display:none}.water-amounts{grid-template-columns:repeat(3,minmax(0,1fr)) 76px}}@media (max-width:520px){.topbar-right .streak-chip{display:none}}@media (min-width:720px){.order-items .oi-controls{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1.3fr)}.order-items .oi-range{grid-column:auto}}.oi-fixed{display:flex;flex-direction:column;gap:4px;font-size:.71875rem;font-weight:600;color:var(--muted)}.oi-fixed strong{display:flex;align-items:center;min-height:40px;padding:0 10px;border-radius:14px;background:var(--surface-3);color:var(--ink);font-size:.875rem}.language-overlay{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;padding:20px;background:rgba(6,23,17,.7);overflow:auto}.language-dialog{width:min(540px,100%);padding:30px;border-radius:24px;background:#f7f8f6;color:#123d30;text-align:center;box-shadow:0 24px 80px #0004}.language-dialog h1{font-size:25px;line-height:1.3;margin:18px 0}.language-dialog p{line-height:1.65;color:#526255}.language-brand{font-size:32px;font-weight:500}.language-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-block-start:18px}.language-grid button{min-height:50px;border:1px solid #dce6ce;border-radius:13px;background:#fff;color:#123d30;padding:12px;cursor:pointer;font-size:16px;font-family:inherit}.language-grid button:focus-visible,.language-grid button:hover,.language-grid button[aria-pressed=true]{background:#e8f1d7;border-color:#123d30;outline:2px solid #7aa840;outline-offset:2px}.language-floating{position:fixed;inset-block-start:10px;inset-inline-end:12px;z-index:1000;border:1px solid #dce6ce;border-radius:20px;padding:8px 12px;background:#f7f8f6;color:#123d30;cursor:pointer;font-family:inherit;font-size:12px;box-shadow:0 2px 10px #0001}html[dir=rtl] body{direction:rtl}html[dir=rtl] input[autocomplete=one-time-code],html[dir=rtl] input[type=email],html[dir=rtl] input[type=password]{direction:ltr;text-align:left}html[dir=rtl] .sidebar{text-align:right}@media(max-width:420px){.language-dialog{padding:22px}.language-dialog h1{font-size:21px}}