@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,d09GMgABAAAAAAa0ABQAAAAADOwAAAZHAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhYbbhwoP0hWQVJtP01WQVJGBmA/U1RBVIEcAGQvXBEICoMkgmcLFgAwhEwBNgIkAyYEIAWGXAdiDAcbOgtRlHLSRcD8TEzkdoghPRuspKefbVnJIM5yRfA8vZv9uTNJSCZY21Scrigr6qyJ/C3sE1OFKuVP3e+lxUTbYio1zb/kFdk2bufY2BlhWERRBrcDUBhB5GEpd2Cy+MDxqf9zLPX+XVsk5r+s50d6IpWLatqbdT6f2MAikiOKQocbjya2QT0DqPDX4R0jQBgAUAiCRhDA0EkvYeLk9X3I2bEWI8jBAihIANm+kUWQBgggWChcBBdFhXlAUgOCAgBA0AgKjUJ8HKvjddFCKSgAVklEBYAeEJgCQJH0qB3B+neDg4sAA4hAD0AVIEAA0IACJGeaUjMIIIhBUE/zNABjTQMBwEVRcwcYBUCObLERABAgjAA1M/ZSa9hSi4OlpsnZ2KBOVUsAZlRGl1W0NZ6gSwhQPIAFs7YFL0QS91vRQgdgx2VDAnIegKpQvwAJIoLgooBAGtCJcHizg0TDiz8vhPgIcVXaDJu37ZyDAIjFy4AAiC1JAA0olJwN6nFAACQk/zfQVUuA3t5ELKMT9hpBSRj+HBSggYCIAIEkUoC4PCIQIWHGA8+IStxf0PW15ntP22gc+Wo+BLyQAHECQiAVd+c3Ba8gZ4NOACBaLOhsbIMkAXEmuHsSAvkf4oJaAogH6nEQAzoBIEihUAwAA0AACAObAGcANYAAABaqgMmpWAhiiVyrvNyqFV8tMQ5Iyq6r9Lf7W82i8ILl2cv8zbfdJ5lnPzSnvt/XXPfRR/5pH3xA+u5uS0798EPJ3Fft33w36Wc+8E/7aIB/9fvvb1pE9erNXLB9mkw//cSg8Cnx03VGXDvZnRzKqV9Xkhn7eRHb3wVjHpg19nkZpX9bBU+vnHegrsuQcbW9Bi7oO33h+8SU0Tly/MbeYUuG1cftVz6oNxrW0qH1iezq446fkDFo/rgvTkqt7zmteFzncZ0uxXti09FFF2z+C7CODpjUudOE5NSeb3bv/mbPKcmOEzpWQ3VBgBAuj/AOY3qMm7UvgA8qo3+qvAUBBAX0wADQG4AG+jCKaSxkBe/zvcTG8jRpRZgqhCog4sd++cOo7J+/RdvaaMoc78Ri/PNPSclx6fDvG1Kt3qQFi1rq+5EaavTtt9TVvfvucYsA5wc4oESU+E1ikF9TkrOkIsIH5Fawx7SBNLnMcWlM3skBluCmQNs7GeyFvYVDamsqwhxx18n/+WdxzDgOLU1AqbUlb3m+KOT9+ONvY/7XlrdLS//5v7nN97XHj0VzJpJvz4spq0V7ioXDuv2YrSxtF/KZmvbWfKtorXSh8dfvgGu+ev/nFSaXM6jyuCE/f/EpmuP7Rqu8R98vP/+tXUdrOgKlZP9Q/s+fRF9+3CHZd4EugfPv158me9X7v/6aSMCxMJmIr//65bNXngl7+uiPP5oKx+y27D8trp+psUzMacpm80XlnYeMAct0LynxhNYgaP3dtn8/LBAi+ksr+7NvjjtJV+UXrz0uLXV1x08AZRN1S2A8EaVE5afk/dfGjz//+fdHn36Xdttz2d9/z+bawZ8/slNN1aYtq+ZPGzNuPGdwOsfYflwmHCkPgs5DcKizvdpS/3gEUMW9/lvQvWp1bGTW1fpngC/uSVYAfH3TeSusL8TtlHUD4KAAEHjahk4YpuffGwEBN/dUmpHqdHyJ3Ap8O3UlQ4gCNrMRwLBBKiskL6a+RoBi/9XGlgc8L4/CUejQxaiIyqmomdhktOhfgDbDfaNDb4+yKIPd6IgmzDa0CByijWFmL2dlSRKagTIWXeIU9HDphoZiJeBTjAefHMxDhVSRFUgVcOkW3EGMahYVMFjWHhMluB2wAcbHYqF1LpsDF9C6s+CI2fDgh4wSuFEyGadjXAmIk3CugIRibLIti9ZtC8S4VSqfikGqPaoI122XyRYLBmsOmdiiTpqK1OklUQzpMcZmQRQV4M4oJCMkfRQXK+qvjifUcQd1bRdetW/LWjacYxvcttnVjWg5h0q4xw6rZyejSpZVZ78LzC4uyDNRQ4bymHSTMyM+SZ7D75mg/7YTlmNz7W8T00h0VEiGKB+F7iWYZFvSTiA4LVxttm2ATt5EoUWLJbY4EnLGrfsvEROlHtzlKn3H9VUT5tU/2dt3/EBv7foYzV/W4upyj04woO/gh6Vwwt3WGQAA)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-vietnamese-wght-normal-qRpaaN48.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-latin-ext-wght-normal-DmpS2jIq.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-latin-wght-normal-eXO_dkmS.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/outfit-latin-ext-wght-normal-DdQaqQDo.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Outfit Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/outfit-latin-wght-normal-Bc-8i84L.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-vietnamese-soft-normal-DSA2Kggd.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-ext-soft-normal-DKHvU-YN.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-soft-normal-C-lS_vzd.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--text:#5c6185;--text-h:#1b1e4b;--bg:#f7f4ee;--surface:#ffffff9e;--surface-hover:#f1f2fd;--border:#e3e5f4;--accent:#3434d4;--accent-strong:#2420b0;--accent-soft:#ecedfd;--accent-border:#4f46e573;--accent-ring:#4f46e529;--danger:#c4314b;--over:#b0173a;--over-stripes:repeating-linear-gradient(135deg, var(--accent) 0 3px, #3434d44d 3px 6px);--shadow:0 1px 2px #1b1e4b0a, 0 16px 40px -16px #3434d433;--sans:"Plus Jakarta Sans Variable", system-ui, "Segoe UI", Roboto, sans-serif;font:16px/145% var(--sans);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{box-sizing:border-box;flex-direction:column;width:1020px;max-width:100%;min-height:100svh;margin:0 auto;display:flex}body{margin:0}h1,h2{color:var(--text-h);font-weight:700}h1{letter-spacing:-.5px;margin:0;font-size:28px}h2{letter-spacing:-.2px;margin:0 0 8px;font-size:18px}p{margin:0}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.app{flex-direction:column;flex-grow:1;gap:24px;padding:24px 16px 32px;display:flex}.brand{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.brand .brand-link svg{display:block}.brand h1{font-family:"Outfit Variable", var(--sans);letter-spacing:-.3px;font-size:23px;font-weight:600}.brand-link{color:inherit;border-radius:8px;align-items:center;gap:10px;text-decoration:none;display:flex}.brand-link:focus-visible{outline:2px solid var(--accent-border);outline-offset:4px}.account-menu{position:relative}.account-button{width:34px;height:34px;color:var(--accent);background:var(--accent-soft);cursor:pointer;border:1px solid #3434d426;border-radius:50%;place-items:center;padding:0;transition:color .15s,background-color .15s,border-color .15s;display:grid}.account-button:hover,.account-button[aria-expanded=true]{border-color:var(--accent-border)}.account-button.current{color:#fff;background:var(--accent);border-color:var(--accent)}.account-button:focus-visible{outline:2px solid var(--accent-border);outline-offset:2px}.account-button svg{width:18px;height:18px}.menu-note{border-bottom:1px solid var(--border);flex-direction:column;gap:2px;margin:0 0 6px;padding:8px 12px 12px;font-size:13px;display:flex}.menu-note strong{color:var(--text-h);overflow-wrap:anywhere;font-size:14px;font-weight:600}a.link-button{text-decoration:none}.top-nav{align-items:center;gap:20px;margin-left:auto;display:flex}.top-nav [aria-current=page]{color:var(--text-h);text-decoration:underline;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-underline-offset:8px;text-decoration-thickness:2px}.top-nav a,.top-nav button{white-space:nowrap}@media (width<=560px){.top-nav{flex-wrap:wrap;flex-basis:100%;order:1;gap:0 18px;margin-left:0}}.header-account{margin-left:auto}.header-account a{white-space:nowrap}.top-nav+.header-account{margin-left:10px}@media (width<=560px){.top-nav+.header-account{margin-left:auto}}.welcome{flex-direction:column;gap:56px;display:flex}.welcome-actions{flex-wrap:wrap;align-items:center;gap:20px;margin-top:8px;display:flex}.welcome-note{font-size:14px}.app-paper{--ink:#16151b;--paper:#f7f4ee;--sand:#ece6dc;--line:#16151b24;--text-h:var(--ink);--text:#57555f;--border:#e6e2da;--surface:#fff;--surface-hover:#f1ede6;--accent-soft:#f0ece4;--card-border:transparent;--shadow:0 1px 2px #3c2d190d, 0 10px 30px -12px #3c2d1938;--shadow-hover:0 2px 4px #3c2d190f, 0 18px 40px -14px #3c2d1952;--skeleton:#ebe5da;--skeleton-light:#f6f2eb;--serif:"Fraunces Variable", Georgia, serif;--gutter:clamp(16px, 5vw, 56px);--inset:max(var(--gutter), (100% - 1180px) / 2);padding:0 var(--inset) 40px;color:var(--text)}#root:has(.app-paper){width:auto}.app-paper>.brand{grid-template-columns:1fr auto 1fr;grid-template-areas:"name menu account";align-items:center;gap:12px 24px;min-height:44px;padding-block:20px;display:grid}.app-paper>.brand h1{font-family:var(--serif);font-variation-settings:"SOFT" 100;letter-spacing:-.02em;color:var(--ink);grid-area:name;font-size:28px;font-weight:600}.app-paper>.brand .link-button{color:var(--ink)}.app-paper>.brand .link-button:hover{color:var(--accent)}.app-paper>.brand .top-nav{grid-area:menu;gap:4px;margin:0;font-size:15px}.app-paper>.brand .top-nav .link-button{color:var(--text);border-radius:999px;padding:10px 16px;transition:color .15s,background-color .15s}.app-paper>.brand .top-nav .link-button:hover{color:var(--ink);background:var(--surface-hover)}.app-paper>.brand .top-nav [aria-current=page]{color:var(--ink);background:var(--sand);text-decoration:none}.app-paper>.brand .top-nav [aria-current=page]:hover{background:var(--sand)}.app-paper>.brand .header-account{grid-area:account;justify-self:end;margin:0}.app-paper>.brand .account-button{width:44px;height:44px;color:var(--ink);background:var(--sand);border:0}.app-paper>.brand .account-button:hover,.app-paper>.brand .account-button[aria-expanded=true]{background:#e2dacd}.app-paper>.brand .account-button.current{color:#fff;background:var(--ink)}.app-paper>.brand .account-button svg{width:20px;height:20px}@media (width<=640px){.app-paper>.brand{grid-template-columns:1fr auto;grid-template-areas:"name account""menu menu"}.app-paper>.brand .top-nav{flex-wrap:wrap;justify-self:start;gap:2px;margin-left:-12px}.app-paper>.brand .top-nav .link-button{padding:8px 12px;font-size:14px}}.app-paper>footer a{color:var(--ink);-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line)}.app-landing{gap:0;padding:0}.app-landing>.brand{padding-inline:var(--inset)}.app-landing>footer{padding:28px var(--inset) 40px}.app-paper .hero-title{max-width:760px;font-family:var(--serif);font-variation-settings:"SOFT" 100;letter-spacing:-.025em;font-size:clamp(42px,6vw,76px);font-weight:560;line-height:1}.app-paper .hero-text{font-size:clamp(17px,1.5vw,20px)}.app-paper .section-title{font-family:var(--serif);font-variation-settings:"SOFT" 100;letter-spacing:-.01em;font-size:26px;font-weight:560}.app-paper .card,.app-paper .choice-card,.app-paper .day-summary,.app-paper .meal{border-color:var(--card-border);-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:16px}.app-paper .choice-card:has(input:checked){box-shadow:0 0 0 1px var(--accent), var(--shadow)}.app-paper .field>.activities{align-self:stretch}.app-paper .activities>.choice-card{background:var(--paper)}.app-paper .activities>.choice-card:has(input:checked){box-shadow:0 0 0 1px var(--accent);background:#fff}.app-paper .choice-icon{background:0 0;justify-items:start;width:auto;height:auto;margin-bottom:18px}.app-paper .choice-icon svg{width:26px;height:26px}.app-paper .field-input{box-shadow:none}.app-paper .primary-button{background:var(--accent);box-shadow:none;border-radius:999px;padding:16px 28px;font-weight:700;transition:background-color .15s}.app-paper .primary-button:hover:not(:disabled){background:var(--accent-strong);box-shadow:none;transform:none}.app-paper .page-header{flex-direction:column-reverse;gap:6px}.app-paper .page-header,.app-paper .day-nav{margin-bottom:8px}.app-paper .activity-day-header h3{font-family:var(--serif);font-variation-settings:"SOFT" 100;letter-spacing:-.01em;font-size:22px;font-weight:560}.app-paper .saved-meal-row{border-radius:16px}.app-paper .saved-meal-toggle{font-family:var(--serif);font-variation-settings:"SOFT" 100;letter-spacing:-.01em;font-size:22px;font-weight:560}.app-paper .dashboard-card-header h3{font-family:var(--serif);font-variation-settings:"SOFT" 100;letter-spacing:-.01em;font-size:24px;font-weight:560}.app-paper .weight-glance strong,.app-paper .today-left strong,.app-paper .dashboard-stats>div>dd:first-of-type,.app-paper .energy-share{font-family:var(--serif);font-variation-settings:"SOFT" 100;letter-spacing:-.02em;font-weight:560}.app-paper .weight-glance strong{font-size:32px}.app-paper .day-nav{grid-template-areas:"subtitle buttons""title buttons";gap:6px 16px}@media (width<=560px){.app-paper .day-nav{grid-template-areas:"subtitle buttons""title title"}.app-paper .day-nav .day-subtitle{align-self:center}}.app-paper .day-title{font-family:var(--serif);font-variation-settings:"SOFT" 100;letter-spacing:-.025em;font-size:clamp(32px,4vw,60px);font-weight:560;line-height:1}.app-paper .day-subtitle{color:var(--accent);font-size:15px;font-weight:600}.app-paper .day-buttons .icon-button,.app-paper .day-buttons .today-button{box-shadow:none}@media (width>=1080px){.app-paper .day{grid-template:"main summary""main extras"1fr/minmax(0,1fr) 360px;align-items:start;gap:20px 40px;display:grid}.app-paper .day-summary{grid-area:summary}.app-paper .day-main{grid-area:main}.app-paper .day-extras{grid-area:extras}.app-paper .calorie-stat dd:not(.calorie-activity){font-size:22px}.app-paper .macro-goals{gap:14px}.app-paper .macro-goals div{grid-template-columns:1fr;gap:4px}.app-paper .day-extras-grid{grid-template-columns:1fr}.app-paper .day-extras-title{margin-top:0}}.app-paper .calorie-stat dd:not(.calorie-activity),.app-paper .calorie-ring dd{font-family:var(--serif);font-variation-settings:"SOFT" 100;letter-spacing:-.02em;font-weight:560}.app-paper .calorie-stat dd:not(.calorie-activity){font-size:26px}.app-paper .calorie-ring dd{font-size:38px}@media (width<=520px){.app-paper .calorie-ring dd{font-size:32px}}.app-paper .meal-header h2,.app-paper .day-nutrients-heading,.app-paper .day-extras-title{font-family:var(--serif);font-variation-settings:"SOFT" 100;letter-spacing:-.01em;text-transform:none;color:var(--ink);font-size:24px;font-weight:560}.app-paper .day-extras-title{margin-top:16px}.app-paper .day-nutrients-hint{font-family:var(--sans);letter-spacing:0}.app-paper .day-nutrients-toggle:after{border-radius:16px}.app-paper .day-tile{border-color:var(--card-border);box-shadow:var(--shadow);background:#fff}.app-paper .day-tile-icon{display:none}.app-paper .day-tile-detail{font-family:var(--serif);font-variation-settings:"SOFT" 100;letter-spacing:-.01em;font-size:26px;font-weight:560}.app-paper .dialog{box-shadow:0 32px 80px -24px #16151b73}.app-paper .dialog::backdrop{-webkit-backdrop-filter:none;backdrop-filter:none;background:#16151b59}.app-paper .dialog-header{-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff}.app-paper .dialog-header h2{font-family:var(--serif);font-variation-settings:"SOFT" 100;letter-spacing:-.01em;font-size:24px;font-weight:560}.landing-hero{box-sizing:border-box;min-height:clamp(560px,82svh,820px);padding:72px var(--inset);background:var(--border);align-items:center;display:flex;position:relative}.landing-hero:after{content:"";background:linear-gradient(90deg,#f7f4eef2 0%,#f7f4eed1 36%,#f7f4ee00 66%);position:absolute;inset:0}@media (width<=860px){.landing-hero{background:0 0;min-height:0;padding:0;display:block}.landing-hero:after{display:none}}.landing-hero-photo{object-fit:cover;object-position:75% 45%;width:100%;height:100%;position:absolute;inset:0}@media (width<=860px){.landing-hero-photo{aspect-ratio:5/4;height:auto;display:block;position:static}}.landing-hero-text{z-index:1;max-width:620px;position:relative}@media (width<=860px){.landing-hero-text{padding:36px var(--gutter) 64px}}.landing-kicker{color:var(--accent);margin-bottom:20px;font-size:15px;font-weight:600}.landing-title{font-family:var(--serif);font-variation-settings:"SOFT" 100;letter-spacing:-.025em;text-wrap:balance;margin:0;font-size:clamp(48px,6.4vw,92px);font-weight:560;line-height:.98}.landing-lead{max-width:520px;margin-top:28px;font-size:clamp(17px,1.5vw,20px);line-height:1.55}.landing-start{flex-wrap:wrap;align-items:center;gap:12px 20px;margin-top:36px;display:flex}.landing-start p{font-size:15px}.landing-free{margin:16px 0 0;font-size:15px;font-weight:600}.landing-button{font:inherit;color:#fff;background:var(--accent);cursor:pointer;border:0;border-radius:999px;padding:16px 28px;font-weight:700;transition:background-color .15s}.landing-button:hover{background:var(--accent-strong)}.landing-button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.landing-button-secondary{color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--ink);background:0 0}.landing-button-secondary:hover{color:#fff;background:var(--ink)}.landing-heading{max-width:760px;font-family:var(--serif);font-variation-settings:"SOFT" 100;letter-spacing:-.02em;text-wrap:balance;margin:0;font-size:clamp(34px,4.6vw,60px);font-weight:560;line-height:1.02}.landing-features{padding:clamp(72px, 9vw, 120px) var(--inset);border-top:1px solid var(--line)}.landing-feature-list{counter-reset:feature;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 40px;margin:56px 0 0;padding:0;list-style:none;display:grid}@media (width<=960px){.landing-feature-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.landing-feature-list{grid-template-columns:minmax(0,1fr)}}.landing-feature-list li{border-top:3px solid var(--ink);counter-increment:feature;padding-top:18px}.landing-feature-list li:before{content:counter(feature);font-family:var(--serif);font-variation-settings:"SOFT" 100;color:var(--accent);margin-bottom:24px;font-size:44px;font-weight:500;line-height:1;display:block}.landing-feature-list h3{color:var(--ink);margin:0 0 8px;font-size:18px;font-weight:700}.landing-feature-list p{font-size:15px;line-height:1.55}.landing-sources{padding:clamp(72px, 9vw, 120px) var(--inset);background:var(--sand);grid-template-columns:minmax(0,1fr) minmax(0,2.6fr);gap:24px clamp(40px,6vw,96px);display:grid}@media (width<=860px){.landing-sources{grid-template-columns:minmax(0,1fr)}}.landing-sources h2{color:var(--accent);margin:0;padding-top:14px;font-size:15px;font-weight:600}.landing-statement{font-family:var(--serif);font-variation-settings:"SOFT" 100;letter-spacing:-.015em;text-wrap:pretty;color:var(--ink);font-size:clamp(26px,3.1vw,42px);font-weight:400;line-height:1.24}.landing-statement a{color:inherit;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-underline-offset:6px;text-decoration-thickness:3px;transition:color .15s}.landing-statement a:hover{color:var(--accent)}.landing-statement a:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}.landing-statement-note{max-width:520px;margin-top:28px;font-size:16px;line-height:1.55}.landing-cta{padding:clamp(56px, 7vw, 88px) var(--inset);color:#ffffffd1;background:var(--accent);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:48px clamp(40px,6vw,96px);display:grid}@media (width<=760px){.landing-cta{grid-template-columns:minmax(0,1fr)}}.landing-cta .landing-heading{color:#fff}.landing-cta p{max-width:480px;margin:16px 0 32px;font-size:18px;line-height:1.55}.landing-cta .landing-button{color:var(--ink);background:#fff}.landing-cta .landing-button:hover{background:var(--paper)}.landing-cta .landing-button:focus-visible{outline-color:#fff}.landing-cta .preview{width:380px}@media (width<=760px){.landing-cta .preview{width:auto;max-width:380px}}.preview{color:var(--text);pointer-events:none;-webkit-user-select:none;user-select:none;flex-direction:column;gap:16px;display:flex}@media (width>=1200px){.landing-cta .preview{flex-direction:row;align-items:flex-start;width:auto}.landing-cta .preview>*{width:340px}}.preview>.day-summary,.preview>.meal{box-shadow:0 30px 60px -28px #0a083c99}.preview .macro-goals{gap:14px}.preview .macro-goals div{grid-template-columns:1fr;gap:4px}.preview-entries{margin:4px 0 0;padding:0;font-size:14px;list-style:none}.preview-entries li{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.preview-value{color:var(--text-h);font-variant-numeric:tabular-nums;font-weight:600}.save-error{color:var(--danger);background:#fff;border:1px solid;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;padding:12px 16px;font-size:14px;display:flex}.save-error .link-button{flex:none;padding:0}.dashboard{flex-direction:column;gap:20px;display:flex}.page-header{flex-direction:column;gap:2px;display:flex}.page-header h2{margin:0}.dashboard>.page-header,.my-goals-page>.page-header{margin-bottom:12px}.saved-meals-page>.page-header{margin-bottom:30px}.dashboard-grid{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}@media (width<=720px){.dashboard-grid{grid-template-columns:1fr}}.card.dashboard-card{gap:16px;padding:24px}.dashboard-card-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.dashboard-card-header h3{color:var(--text-h);margin:0;font-size:17px;font-weight:700}.dashboard-muted{font-size:13px}.dashboard-action{align-self:flex-start;margin-top:auto;padding-bottom:0}.card.today-card{flex-flow:wrap;align-items:center;gap:16px 40px;padding:20px 24px}@media (width<=760px){.today-card>.card-link{position:absolute;top:20px;right:20px}}.today-calories{flex-direction:column;flex:220px;gap:2px;min-width:0;display:flex}.today-calories h3{color:var(--text);margin:0;font-size:13px;font-weight:700}.today-left{margin:0;font-size:15px;font-weight:600}.today-left strong{color:var(--accent);font-size:32px;line-height:1.1}.today-left.over strong{color:var(--text-h)}.today-bar{background:var(--border);border-radius:4px;height:8px;margin-top:10px;display:block;overflow:hidden}.today-bar span{background:var(--accent);border-radius:4px;height:100%;display:block}.today-bar.over{gap:2px;display:flex}.today-bar.over span{border-radius:0}.today-bar.over .today-bar-over{background:var(--over-stripes);flex:1}.today-macros{flex:2 380px;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:0;display:grid}.today-macros div{flex-direction:column;gap:4px;min-width:0;display:flex}.today-macros dt{color:var(--text-h);font-size:13px;font-weight:600}.today-macros dd{margin:0}.today-macros .summary-bar{margin-top:2px}@media (width<=520px){.today-macros{gap:12px}}.dashboard-columns{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:20px 40px;display:grid}@media (width<=960px){.dashboard-columns{grid-template-columns:minmax(0,1fr)}}.dashboard-column{flex-direction:column;gap:20px;min-width:0;display:flex}.dashboard-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0;display:grid}.dashboard-stats.two{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-stats>div{border-left:1px solid var(--border);padding-left:16px}.dashboard-stats>div:first-child{border-left:0;padding-left:0}.dashboard-stats dt{font-size:13px}.dashboard-stats dd{margin:0}.dashboard-stats>div>dd:first-of-type{color:var(--text-h);font-variant-numeric:tabular-nums;font-size:22px}.dashboard-stats>div>dd:first-of-type span{font-family:var(--sans);letter-spacing:0;color:var(--text);font-size:13px;font-weight:600}@media (width<=520px){.dashboard-stats:not(.two){grid-template-columns:minmax(0,1fr);gap:0}.dashboard-stats:not(.two)>div{border-top:1px solid var(--border);border-left:0;justify-content:space-between;align-items:baseline;gap:12px;padding:8px 0;display:flex}.dashboard-stats:not(.two)>div:first-child{border-top:0}}.dashboard-card-header:has(.week-legend){flex-wrap:wrap}.week-legend{align-items:center;gap:16px;margin:0;font-size:13px;display:flex}.week-legend span{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.week-legend .week-legend-bar:before{content:"";background:var(--accent);border-radius:3px;width:12px;height:12px}.week-legend .week-legend-over:before{content:"";background:var(--over-stripes);border-radius:3px;width:12px;height:12px}.week-legend .week-legend-goal:before{content:"";background:var(--goal-line);width:18px;height:1.5px}.week-chart{border-bottom:1px solid var(--border);align-items:flex-end;gap:12px;height:180px;margin-top:8px;padding-right:44px;display:flex;position:relative}.week-chart,.week-legend{--goal-line:repeating-linear-gradient(90deg, #16151b59 0 4px, transparent 4px 8px)}.week-goal{right:0;bottom:var(--at);background:var(--goal-line);height:1.5px;position:absolute;left:0}.week-goal span{color:var(--text);font-size:12px;font-weight:600;position:absolute;bottom:5px;right:0}.week-day{cursor:default;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;border-radius:6px 6px 0 0;outline:none;flex-direction:column;flex:1;justify-content:flex-end;align-items:center;min-width:0;height:100%;display:flex;position:relative}.week-day:focus-visible{box-shadow:0 0 0 2px var(--accent-border)}.week-chart:has(.week-day:is(:hover,:focus-visible)) .week-day:not(:hover,:focus-visible) :is(.week-bar,.week-bar-over){opacity:.4}.week-day:is(:hover,:focus-visible) .week-bar,.today.week-day:is(:hover,:focus-visible)>.week-bar{background:var(--accent-strong)}.week-tip{bottom:calc(var(--height) + 10px);z-index:3;color:#ffffffc7;background:var(--text-h);pointer-events:none;border-radius:10px;flex-direction:column;gap:2px;width:max-content;max-width:220px;padding:10px 12px;font-size:13px;line-height:1.35;display:none;position:absolute;left:50%;transform:translate(-50%);box-shadow:0 10px 24px -10px #16151b80}.week-tip strong{color:#fff;font-size:15px;font-weight:700}.week-tip:after{content:"";border:6px solid #0000;border-top-color:var(--text-h);position:absolute;top:100%;left:50%;transform:translate(-50%)}.week-day:first-of-type .week-tip{left:max(0px,50% - 14px);transform:none}.week-day:first-of-type .week-tip:after{left:14px}.week-day:last-of-type .week-tip{left:auto;right:max(0px,50% - 14px);transform:none}.week-day:last-of-type .week-tip:after{left:auto;right:14px;transform:translate(50%)}.week-day:is(:hover,:focus-visible)>.week-tip{display:flex}.week-bar{width:100%;max-width:28px;height:var(--within);background:var(--accent);border-radius:6px 6px 0 0;transition:opacity .15s,background-color .15s}.today>.week-bar{background:#3434d44d}.week-bar-over+.week-bar{border-radius:0}.week-bar-over{width:100%;max-width:28px;height:var(--over-height);background:var(--over-stripes);border-radius:6px 6px 0 0;margin-bottom:2px;transition:opacity .15s}.week-days{gap:12px;padding-right:44px;font-size:12px;display:flex}.week-days span{text-align:center;flex:1;min-width:0}.week-days .today{color:var(--text-h);font-weight:700}.energy-split{border-radius:5px;gap:2px;height:10px;display:flex;overflow:hidden}.energy-split span{background:var(--macro)}.energy-legend{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0;display:grid}.energy-legend dt{color:var(--text-h);align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.energy-legend dt:before{content:"";background:var(--macro);border-radius:50%;flex:none;width:10px;height:10px}.energy-legend dd{margin:0}.energy-share{color:var(--text-h);font-size:24px}.activity-chart-label{margin:0 0 8px;font-size:13px}.week-chart.activity-chart{height:56px;margin-top:0;padding-right:0}.week-chart.activity-chart .week-bar{background:#d9d1c4}.week-chart.activity-chart .today>.week-bar{background:var(--sand,#ece6dc)}.week-chart.activity-chart .week-day:is(:hover,:focus-visible)>.week-bar{background:#b7ab98}.week-days.burn-days{padding-right:0;font-size:11px}.ring{--ring:var(--accent);--band:10px;text-align:center;flex-direction:column;flex:none;justify-content:center;align-items:center;display:flex;position:relative}.ring:before{content:"";background:conic-gradient(var(--ring) var(--progress), var(--border) 0);-webkit-mask:radial-gradient(farthest-side, transparent calc(100% - var(--band)), #000 calc(100% - var(--band) + 1px));mask:radial-gradient(farthest-side, transparent calc(100% - var(--band)), #000 calc(100% - var(--band) + 1px));border-radius:50%;position:absolute;inset:0}.ring strong{color:var(--text-h);font-weight:800;line-height:1}.ring span{font-size:12px}.ring.over{--ring:var(--over)}.ring.over span{font-weight:600}.dashboard-card:has(.card-link){transition:transform .15s,box-shadow .15s;position:relative}.dashboard-card:has(.card-link):has(.card-link:hover){box-shadow:var(--shadow-hover);transform:translateY(-2px)}.dashboard-card:has(.card-link):has(.card-link:focus-visible){outline:2px solid var(--accent-border);outline-offset:3px}.dashboard-card:has(.card-link) :is(button,form){z-index:2;position:relative}.card-link.quiet{color:var(--text);transition:color .15s}.card-link.quiet svg{width:20px;height:20px}.dashboard-card:hover .card-link.quiet{color:var(--accent)}.card-link{color:var(--accent);align-items:center;gap:2px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.card-link svg{width:16px;height:16px}.card-link:after{content:"";z-index:1;border-radius:inherit;position:absolute;inset:0}.card-link:focus-visible{outline:none}@media (prefers-reduced-motion:reduce){.dashboard-card:has(.card-link:hover){transform:none}}#vikt,#naringsamnen{scroll-margin-top:24px}.weight-glance{justify-content:space-between;align-items:center;gap:12px;display:flex}.weight-glance>div{flex-direction:column;gap:2px;display:flex}.weight-glance strong{letter-spacing:-.5px;color:var(--text-h);font-size:26px;font-weight:800}.sparkline{flex:none;overflow:visible}.sparkline polyline{fill:none;stroke:var(--accent);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.sparkline circle{fill:var(--accent);stroke:#fff;stroke-width:2px}.dashboard-card .weight-form{grid-template-columns:1fr}.dashboard-card .weight-form .weight-form-actions{justify-content:flex-end}.workout-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.workout-list li{border-bottom:1px solid var(--border);grid-template-columns:1fr auto;align-items:center;padding:6px 0;display:grid}.workout-list .workout-name,.workout-list .workout-detail{grid-column:1}.workout-list .remove-button{grid-area:1/2/span 2}.workout-name{color:var(--text-h);font-weight:600}.workout-detail{font-size:13px}.workout-form{flex-direction:column;gap:12px;display:flex}.workout-form fieldset{border:0;margin:0;padding:0}.workout-form .weight-form-actions{justify-content:flex-end}.workout-activities{flex-wrap:wrap;gap:6px;display:flex}.workout-activities legend{margin-bottom:8px}.chip.workout-chip{cursor:pointer;padding:4px 12px;font-size:13px}.chip.workout-chip:has(input:checked){color:var(--accent);background:var(--accent-soft);border-color:var(--accent-border)}.chip.workout-chip:has(input:focus-visible){outline:2px solid var(--accent-border);outline-offset:2px}.workout-duration{flex-direction:column;gap:8px;display:flex}.workout-duration .field{align-items:stretch}.workout-duration .field-input{width:110px;padding-block:8px}.workout-duration .chip{padding:3px 10px;font-size:12px}.day{flex-direction:column;gap:24px;display:flex}.day-nutrients{padding:4px 20px;transition:box-shadow .15s;position:relative}.day-nutrients:not(.open):has(.day-nutrients-toggle:hover){box-shadow:var(--shadow-hover)}.day-nutrients:not(.open){padding-bottom:18px}.day-nutrients.open .day-nutrients-heading{position:relative}.day-nutrients-heading{margin:0;font-size:17px}.day-nutrients-toggle{width:100%;font:inherit;color:var(--text-h);text-align:left;cursor:pointer;background:0 0;border:0;align-items:baseline;column-gap:10px;padding:14px 0;display:flex}.day-nutrients-toggle:after{content:"";z-index:1;border-radius:20px;position:absolute;inset:0}.day-nutrients-toggle:focus-visible{outline:none}.day-nutrients-toggle:focus-visible:after{outline:2px solid var(--accent-border);outline-offset:2px}.open .day-nutrients-toggle:after{border-radius:6px}.nutrient-rings{grid-template-columns:repeat(6,1fr);gap:12px 8px;margin:2px 0 0;padding:0;list-style:none;display:grid}.nutrient-rings li{flex-direction:column;align-items:center;gap:6px;min-width:0;display:flex}@media (width<=520px){.nutrient-rings{grid-template-columns:repeat(3,1fr)}}.nutrient-ring{--band:6px;width:64px;height:64px}.nutrient-ring strong{font-variant-numeric:tabular-nums;font-size:14px}.nutrient-ring-label{color:var(--text-h);white-space:nowrap;font-size:12px;font-weight:600}.day-nutrients-hint{min-width:0;color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:400;overflow:hidden}.day-nutrients-chevron{color:var(--text);align-self:center;margin-left:auto;transition:transform .2s;display:grid}[aria-expanded=true] .day-nutrients-chevron{transform:rotate(180deg)}.day-nutrients-body{border-top:1px solid var(--border);flex-direction:column;gap:16px;padding:4px 0 18px;display:flex}.day-nutrients-note{background:var(--accent-soft);border-radius:10px;margin:0;padding:10px 12px;font-size:13px}.day-nutrients-groups{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}@media (width<=720px){.day-nutrients-groups{grid-template-columns:1fr;gap:20px}}.nutrient-group h3{letter-spacing:.06em;text-transform:uppercase;color:var(--text);margin:12px 0 10px;font-size:13px;font-weight:700}.nutrient-group dl{flex-direction:column;gap:12px;margin:0;display:flex}.nutrient{grid-template-columns:1fr auto;grid-template-areas:"name value""bar percent";align-items:baseline;gap:2px 10px;display:grid}.nutrient dt{min-width:0;color:var(--text-h);grid-area:name;font-size:13px;font-weight:600}.nutrient dd{margin:0}.nutrient .summary-bar{grid-area:bar;align-self:center;height:4px;margin-top:0}.nutrient-value{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;grid-area:value;font-size:13px}.nutrient-value strong{color:var(--text-h)}.nutrient-percent{font-variant-numeric:tabular-nums;text-align:right;grid-area:percent;align-self:center;min-width:3.5em;font-size:12px;line-height:1}.over .nutrient-percent{color:var(--over);font-weight:600}.day-nutrients-source{margin:0;font-size:12px}.nutrient-toggle{white-space:nowrap;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:4px;align-items:center;gap:4px;padding:0;display:inline-flex}.nutrient-toggle:hover{color:var(--accent)}.nutrient-toggle:focus-visible{outline:2px solid var(--accent-border);outline-offset:2px}.nutrient-chevron{color:var(--text);transition:transform .2s;display:grid}.nutrient-chevron svg{width:14px;height:14px}[aria-expanded=true] .nutrient-chevron{transform:rotate(180deg)}.nutrient .nutrient-sources{grid-column:1/-1;font-size:12px}.nutrient .nutrient-sources ul{border-left:2px solid var(--border);flex-direction:column;gap:6px;margin:4px 0 0;padding:8px 0 0 10px;list-style:none;display:flex}.nutrient .nutrient-sources li{grid-template-columns:1fr auto 3.5em;align-items:baseline;column-gap:10px;display:grid}.nutrient .nutrient-sources p{margin:4px 0 0;padding-left:12px}.nutrient-source-name{min-width:0;color:var(--text-h);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.nutrient-source-amount{color:var(--text)}.nutrient-source-value,.nutrient-source-share{font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right}.day-extras{flex-direction:column;gap:10px;display:flex}.day-extras-title{letter-spacing:.06em;text-transform:uppercase;color:var(--text);margin:4px 0 0;font-size:13px;font-weight:700}.day-extras-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}@media (width<=720px){.day-extras-grid{grid-template-columns:1fr}}.day-tile{background:#ecedfdcc;border:1px solid #3434d41f;border-radius:16px;flex-direction:column;gap:10px;padding:16px;display:flex}.day-tile>.link-button{align-self:flex-start;margin-top:auto;padding-bottom:0}.day-tile .weight-form{grid-template-columns:1fr}.day-tile .weight-form-actions{justify-content:flex-end}.day-tile-header{align-items:center;gap:10px;display:flex}.day-tile-header h3{color:var(--text-h);margin:0;font-size:16px;font-weight:700}.day-tile-icon{width:32px;height:32px;color:var(--accent);background:#fff;border-radius:10px;flex:none;place-items:center;display:grid}.day-tile-icon svg{width:18px;height:18px}.day-tile-value{color:var(--accent);font-variant-numeric:tabular-nums;margin:0 0 0 auto;font-size:17px;font-weight:700}.day-tile-unit{color:var(--text);font-size:13px;font-weight:500}.entry-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.day-tile-detail{color:var(--text-h);font-variant-numeric:tabular-nums;margin:0;font-weight:600}.skeleton.skeleton dt,.skeleton.skeleton dd:not(.summary-bar),.skeleton.skeleton h2,.skeleton.skeleton h3,.skeleton.skeleton .meal-kcal,.skeleton.skeleton .link-button,.skeleton.skeleton .dashboard-muted,.skeleton.skeleton .nutrient-ring-label,.skeleton.skeleton .ring strong,.skeleton.skeleton .ring span,.skeleton.skeleton .today-left,.skeleton.skeleton .meal-empty p,.skeleton.skeleton .pill-button,.skeleton.skeleton .weight-glance strong{color:#0000;background:linear-gradient(100deg, var(--skeleton,#e6e8f6) 40%, var(--skeleton-light,#f4f5fc) 50%, var(--skeleton,#e6e8f6) 60%) 0 0 / 300% 100%;border-radius:6px;width:fit-content;animation:1.4s ease-in-out infinite skeleton-sweep}.skeleton.skeleton .today-left strong{color:#0000}.skeleton.skeleton .calorie-stat,.skeleton.skeleton .calorie-ring{align-items:center}.skeleton.skeleton .ring strong{margin-bottom:4px}.skeleton.skeleton .calorie-ring dd{white-space:nowrap;width:60%;margin-bottom:4px;line-height:.7;overflow:hidden}.skeleton.skeleton .link-button{margin-block:8px;padding-block:0}.skeleton.skeleton .link-button svg{visibility:hidden}.skeleton.skeleton .pill-button{border-color:#0000}.skeleton.skeleton .day-nutrients-heading{margin:14px 0}.skeleton.skeleton .dashboard-stats>div,.skeleton.skeleton .energy-legend>div,.skeleton.skeleton .weight-glance>div{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.skeleton.skeleton .today-calories,.skeleton.skeleton .today-macros>div{gap:6px}.skeleton.skeleton .week-bar,.skeleton.skeleton .activity-chart .week-bar,.skeleton.skeleton .energy-split span{background:var(--skeleton,#e6e8f6)}.skeleton.skeleton .week-chart{padding-right:44px}@keyframes skeleton-sweep{0%{background-position:100% 0}to{background-position:0 0}}@media (prefers-reduced-motion:reduce){.skeleton *{animation:none!important}}.saved-meals-page{flex-direction:column;gap:16px;display:flex}.card.saved-meal{gap:0;padding:0}.saved-meals-page{gap:10px}.saved-meals-list{flex-direction:column;gap:10px;display:flex}.sort-menu{align-self:flex-end;align-items:center;gap:4px;margin-bottom:-4px;font-size:14px;display:flex;position:relative}.saved-meals-list:has(.sort-menu .menu){z-index:5;position:relative}.sort-menu-label{color:var(--text)}.sort-menu-button{font:inherit;color:var(--text-h);cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:6px;padding:6px 8px 6px 10px;font-weight:600;transition:background-color .15s;display:inline-flex}.sort-menu-button:hover,.sort-menu-button[aria-expanded=true]{background:var(--accent-soft)}.sort-menu-button:focus-visible{outline:2px solid var(--accent-border);outline-offset:1px}.sort-menu-chevron{color:var(--text);transition:transform .2s;display:grid}.sort-menu-chevron svg{width:16px;height:16px}[aria-expanded=true] .sort-menu-chevron{transform:rotate(180deg)}.sort-menu-check{width:18px;color:var(--accent);display:grid}.sort-menu .menu [aria-checked=true]{color:var(--accent)}@media (width<=1079px){.card.category-card{box-shadow:none;background:0 0;border:0;padding:0}.card.category-card .section-title{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.card.saved-meals-tip{display:none}.saved-meals-side{margin-bottom:4px}}.saved-meals-side{flex-direction:column;gap:16px;display:flex}.card.category-card{gap:14px}.card.saved-meals-tip{padding:18px 20px;font-size:14px;line-height:1.5}.saved-meal-row{border-radius:20px;grid-template-columns:1fr auto auto auto;align-items:center;gap:4px;padding:14px 16px 14px 20px;display:grid;position:relative}.saved-meal-row:has(.saved-meal-toggle:focus-visible){outline:2px solid var(--accent-border);outline-offset:-2px}.saved-meal-row:has(.saved-meal-toggle:hover) .saved-meal-toggle{color:var(--accent)}.saved-meal-row .meal-kcal{margin:0 8px 0 12px}.saved-meal-row .saved-meal-menu{margin-right:6px}.saved-meal-summary{flex-direction:column;gap:8px;min-width:0;display:flex}.saved-meal-title{align-items:center;gap:2px;margin:0;display:flex}.saved-meal-toggle{font:inherit;text-align:left;color:var(--text-h);cursor:pointer;background:0 0;border:0;padding:0;font-size:17px;font-weight:700;transition:color .15s}.saved-meal-toggle:after{content:"";border-radius:inherit;position:absolute;inset:0}.saved-meal-toggle:focus-visible{outline:none}.saved-meal-rename,.saved-meal-menu,.rename-button{z-index:1;position:relative}.rename-button{width:30px;height:30px;margin-left:4px}.rename-button svg{width:16px;height:16px}.saved-meal-meta{flex-wrap:wrap;align-items:center;gap:6px;font-size:13px;display:flex}.saved-meal-chevron{color:var(--text);pointer-events:none;transition:transform .2s;display:grid}.open .saved-meal-chevron{transform:rotate(180deg)}.saved-meal-details{flex-direction:column;gap:10px;padding:0 20px 18px;display:flex}@media (prefers-reduced-motion:reduce){.saved-meal-chevron{transition:none}}.saved-meal-rename{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.saved-meal-rename .field-input{flex:1;min-width:160px;max-width:320px;padding-block:6px;font-size:16px}.saved-meal-rename .link-button{padding:0}.saved-meal-rename .primary-button{padding:8px 18px}.category-filter,.category-chips{flex-wrap:wrap;gap:8px;display:flex}.chip-count{opacity:.7;margin-left:2px;font-weight:500}.category-tag{color:var(--accent);background:var(--accent-soft);border-radius:10px;padding:1px 10px;font-size:12px;font-weight:600}.category-tag:has(.category-tag-remove){align-items:center;gap:2px;padding-right:3px;display:inline-flex}.category-tag-remove,.category-add,.category-new-tag{z-index:1;position:relative}.category-tag-remove{width:18px;height:18px;color:inherit;opacity:.6;cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;display:grid}.category-tag-remove svg{width:12px;height:12px}.category-tag-remove:hover,.category-tag-remove:focus-visible{opacity:1;background:#3434d41f;outline:none}.category-add-button{font:inherit;border:1px dashed var(--accent-border);cursor:pointer;background:0 0;align-items:center;gap:2px;font-size:12px;font-weight:600;display:inline-flex}.category-add-button svg{width:12px;height:12px}.category-add-button:hover,.category-add-button[aria-expanded=true]{background:var(--accent-soft)}.category-add-button:focus-visible{outline:2px solid var(--accent-border);outline-offset:1px}.category-add .menu{min-width:180px;left:0;right:auto}.category-new-tag input{width:9em;font:inherit;color:var(--text-h);border:1px solid var(--accent-border);background:#fff;border-radius:10px;outline:none;padding:1px 10px;font-size:12px;font-weight:600}.category-picker{border:0;flex-direction:column;gap:10px;min-width:0;margin:0;padding:0;display:flex}.category-picker .chip{padding:4px 12px;font-size:13px}.category-picker .chip:disabled{opacity:.45;cursor:default}.category-new{align-items:center;gap:12px;display:flex}.category-new .field-input{flex:1;max-width:260px;padding-block:8px;font-size:15px}.category-new .link-button{padding:0}.category-new .link-button:disabled{color:var(--text);opacity:.5;cursor:default}.saved-meal-items{margin:0;padding:0;list-style:none}.saved-meal-items li{border-top:1px solid var(--border)}.saved-meal-items .amount-picker{padding:4px 0 14px}.saved-meal-item{grid-template-columns:1fr auto 28px;align-items:center;column-gap:12px;padding:10px 0;display:grid}.saved-meal-item .remove-button{opacity:.55;grid-column:3}.saved-meal-item:hover .remove-button,.saved-meal-item .remove-button:focus-visible{opacity:1}.saved-meal-item .saved-meal-item-text{flex-direction:column;gap:2px;margin:0;padding:0;display:flex}.saved-meal-item .food-name{font-weight:500}.saved-meal-kcal{font-variant-numeric:tabular-nums;font-size:14px}.saved-meal-add-food.saved-meal-add-food{border-top:1px solid var(--border);border-radius:0;align-self:stretch;margin-top:-10px;padding:14px 0 4px}.saved-meal:has(.menu){z-index:5;position:relative}.menu [role=menuitem].danger:hover,.menu [role=menuitem].danger:focus-visible{color:var(--danger);background:#fdeef1}.field-input.day-field{padding-block:6px;cursor:default;align-items:center;gap:2px;padding-right:6px;position:relative}.day-field-input.day-field-input{opacity:0;pointer-events:none;width:100%;position:absolute;inset:0}.day-field-text{min-width:0;font:inherit;text-align:left;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;flex:1;align-items:baseline;gap:8px;padding:6px 0;display:flex}.day-field-text:focus-visible{outline:2px solid var(--accent-border);outline-offset:2px}.day-field-subtitle{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:500;overflow:hidden}.day-field-icon{color:var(--text);align-self:center;margin:0 8px 0 auto;display:grid}.day-field-icon svg{width:18px;height:18px}.day-field-text:hover .day-field-icon{color:var(--accent)}.saved-meal-add .saved-meal-add-meal{border:0;min-width:0;margin:0;padding:0}.saved-meal-add .segmented{box-sizing:border-box;width:100%;display:flex}.saved-meal-add .segmented-option{text-align:center;flex:1;padding:8px 4px;font-size:14px}.activity-page{flex-direction:column;gap:16px;display:flex}.activity-page>.page-header{margin-bottom:24px}.card.activity-log{gap:16px}.activity-actions{flex-wrap:wrap;gap:4px 24px;display:flex}.activity-actions .link-button{padding-block:0}.activity-date{max-width:360px}.activity-date .field-input{align-self:stretch}.card.activity-day{gap:0;padding:18px 20px 12px}.card.activity-day .workout-list:last-child li:last-child{border-bottom:0}.activity-day-header{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px;display:flex}.activity-day-header h3{color:var(--text-h);margin:0;font-size:17px;font-weight:700}.activity-more{align-self:flex-start}.activity-days{flex-direction:column;gap:16px;display:flex}@media (width>=1080px){.app-paper :is(.activity-page,.saved-meals-page:has(.saved-meals-side),.my-goals-page){grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:24px 32px;display:grid}.app-paper :is(.activity-page,.saved-meals-page:has(.saved-meals-side),.my-goals-page)>.page-header{grid-column:1/-1;margin-bottom:8px}.activity-page>.activity-days,.saved-meals-page>.saved-meals-list,.my-goals-page>.weight-tracker{grid-area:2/1}.activity-page>.activity-log,.saved-meals-page>.saved-meals-side,.my-goals-page>.goals-card{grid-area:2/2}.activity-page>.activity-log,.saved-meals-page>.saved-meals-side{position:sticky;top:24px}.app-paper .saved-meals-page:has(.saved-meals-side)>.saved-meals-list{position:relative}.app-paper .saved-meals-page:has(.saved-meals-side)>.saved-meals-list>.sort-menu{margin:0;position:absolute;bottom:calc(100% + 2px);right:0}}.my-goals-page{flex-direction:column;gap:20px;display:flex}.goals-card-header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 16px;display:flex}.goals-card-header .link-button{padding:0}.profile-summary{margin-top:-12px;font-size:14px}.goals-card-actions{justify-content:flex-end;align-items:center;gap:16px;display:flex}.goals-saved{color:var(--accent);font-size:14px;font-weight:600}.weight-tracker{gap:16px}.weight-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.weight-header .section-title{margin:0}.weight-header .link-button{padding:0}.weight-form{grid-template-columns:minmax(0,200px) auto;justify-content:space-between;align-items:end;gap:10px 12px;display:grid}.weight-form.with-date{background:var(--surface-hover);border-radius:14px;grid-template-columns:1fr 1fr auto;justify-content:stretch;padding:16px}.weight-form .field{align-items:stretch}.weight-form .field-input{padding-block:10px}@media (width<=520px){.weight-form.with-date{grid-template-columns:3fr 2fr;padding:12px}.weight-form .field-input{padding-inline:10px}.weight-form .weight-form-actions{grid-column:1/-1;justify-content:flex-end}}.weight-form-actions{align-items:center;gap:16px;display:flex}.weight-form-actions .primary-button{padding:11px 22px}.weight-form-note{grid-column:1/-1}.weight-overview{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.weight-overview .segmented-option{padding:6px 12px;font-size:14px}.weight-more{align-self:flex-start;padding:0}.weight-stats{flex-wrap:wrap;gap:8px 32px;margin:0;display:flex}.weight-stats dt{font-size:13px}.weight-stats dd{letter-spacing:-.3px;color:var(--text-h);margin:2px 0 0;font-size:22px;font-weight:700}.weight-empty{text-align:center;padding:24px 0;font-size:15px}.weight-chart{border-radius:8px;margin:0 -4px;position:relative}.weight-chart svg{touch-action:pan-y;display:block;overflow:visible}.weight-chart:focus-visible{outline:2px solid var(--accent-border);outline-offset:4px}.chart-grid{stroke:var(--border);stroke-width:1px}.chart-tick{font-variant-numeric:tabular-nums;fill:var(--text);font-size:12px}.chart-line{fill:none;stroke:var(--accent);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.chart-dot{fill:var(--accent);stroke:#fff;stroke-width:2px}.chart-crosshair{stroke:var(--text);stroke-width:1px;opacity:.4}.chart-end-label{fill:var(--text-h);font-size:13px;font-weight:700}.chart-tooltip{white-space:nowrap;pointer-events:none;border:1px solid var(--border);background:#fff;border-radius:8px;flex-direction:column;align-items:center;padding:6px 10px;font-size:12px;display:flex;position:absolute;transform:translate(-50%,-100%);box-shadow:0 6px 16px -6px #1b1e4b40}.chart-tooltip strong{color:var(--text-h);font-size:15px}.weight-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:14px}.weight-table th,.weight-table td{text-align:right;white-space:nowrap;padding:8px 0 8px 12px}.weight-table thead th{padding-top:0;font-size:12px;font-weight:500}.weight-table tr>:first-child{text-align:left;padding-left:0}.weight-table tbody tr{border-top:1px solid var(--border)}.weight-table tbody th{color:var(--text-h);font-weight:400}.weight-table tbody td:nth-child(2){color:var(--text-h);font-weight:600}.weight-table tr>:last-child{width:1%;padding-left:8px}.auth{flex-direction:column;gap:24px;max-width:460px;display:flex}@media (width>=900px){.auth{grid-template-columns:minmax(0,1fr) minmax(0,440px);align-items:center;gap:clamp(48px,7vw,120px);max-width:none;margin-block:clamp(24px,8vh,96px);display:grid}.auth .hero{margin-top:0}}.auth-form .field{align-items:stretch}.auth-error{color:var(--danger);font-size:14px}.auth-notice{color:var(--text-h);font-size:14px}.auth-actions{justify-content:flex-end;align-items:center;gap:20px;display:flex}.auth-actions .link-button:first-child{margin-right:auto}.delete-account{flex-direction:column;gap:18px;line-height:1.55;display:flex}.delete-account .field{align-items:stretch}.delete-account-actions{justify-content:flex-end;align-items:center;gap:20px;display:flex}.danger-button{font:inherit;color:#fff;background:var(--danger);cursor:pointer;border:0;border-radius:999px;padding:12px 22px;font-weight:700}.danger-button:disabled{opacity:.45;cursor:default}.danger-button:focus-visible{outline:2px solid var(--danger);outline-offset:3px}.settings{flex-direction:column;gap:24px;max-width:680px;display:flex}.settings-rows{margin:0}.settings-rows dt{color:var(--text-h);font-weight:600}.settings-rows dd{margin:2px 0 0}.settings-name{border-top:1px solid var(--border);flex-direction:column;gap:12px;padding-top:20px;display:flex}.settings-name .field{align-items:stretch;max-width:360px}.settings-name .pill-button:disabled{opacity:.45;cursor:default}.settings-name-actions{align-items:center;gap:16px;display:flex}.settings-name-actions p{margin:0}.settings-danger p{line-height:1.55}.auth-switch{text-align:center;border-top:1px solid var(--border);padding-top:20px;font-size:15px}.day-summary,.meal,.card{background:var(--surface);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid #ffffffe6;border-radius:20px}.icon-button{width:36px;height:36px;color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;place-items:center;padding:0;transition:color .15s,background-color .15s;display:inline-grid}.icon-button:hover{color:var(--accent);background:var(--accent-soft)}.icon-button:focus-visible{outline:2px solid var(--accent-border);outline-offset:1px}.link-button{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:8px 0;font-weight:600;display:inline-flex}.link-button:hover{color:var(--accent-strong)}.link-button[aria-disabled=true]{color:var(--text);cursor:default}.link-button:focus-visible{outline:2px solid var(--accent-border);outline-offset:2px;border-radius:4px}.primary-button{font:inherit;color:#fff;background:linear-gradient(180deg, #4141e0, var(--accent-strong));cursor:pointer;border:0;border-radius:12px;padding:12px 28px;font-weight:600;transition:box-shadow .15s,transform .15s;box-shadow:inset 0 1px #fff3,0 10px 24px -8px #3434d499}.primary-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:inset 0 1px #fff3,0 14px 28px -8px #3434d4b3}.primary-button:disabled{opacity:.45;box-shadow:none;cursor:default}.primary-button:focus-visible{outline:2px solid var(--accent-border);outline-offset:2px}.day-nav{grid-template-columns:1fr auto;grid-template-areas:"title buttons""subtitle buttons";align-items:center;gap:2px 16px;display:grid}.day-nav p{margin:0}.day-nav .day-title{grid-area:title}.day-nav .day-subtitle{grid-area:subtitle}.day-nav .day-buttons{grid-area:buttons}@media (width<=560px){.day-nav{grid-template-areas:"title title""subtitle buttons"}.day-nav .day-subtitle{align-self:start}.day-nav .day-buttons{margin:-8px 0}}.day-title{letter-spacing:-.8px;color:var(--text-h);font-size:clamp(26px,6vw,32px);font-weight:800;line-height:1.1}.day-subtitle{font-size:14px}.day-buttons{gap:8px;display:flex}.day-buttons .icon-button,.day-buttons .today-button{width:36px;height:36px;color:var(--text-h);background:var(--surface);border:1px solid var(--border);box-shadow:0 1px 2px #1b1e4b0f}:is(.day-buttons .icon-button,.day-buttons .today-button):hover{color:var(--accent);border-color:var(--accent-border)}.day-buttons .today-button{width:auto;font:inherit;cursor:pointer;border-radius:18px;padding:0 14px;font-size:14px;font-weight:600;transition:color .15s,border-color .15s}.day-buttons .today-button:focus-visible{outline:2px solid var(--accent-border);outline-offset:1px}.day-summary{flex-direction:column;gap:14px;padding:16px 20px 24px;display:flex}.day-summary dl,.day-summary dd{margin:0}@media (width<=520px){.day-summary{padding:14px 16px 20px}}.calories{--earned:#3434d44d;text-align:center;grid-template-columns:1fr auto 1fr;align-items:center;display:grid}.calorie-stat{flex-direction:column-reverse;gap:2px;display:flex;position:relative}.calorie-stat dt{font-size:14px}.calorie-stat dd{letter-spacing:-.3px;color:var(--text-h);font-variant-numeric:tabular-nums;font-size:20px;font-weight:700}.calorie-activity.calorie-activity{letter-spacing:0;white-space:nowrap;color:var(--accent);font-size:13px;font-weight:600;position:absolute;top:calc(100% + 4px);left:50%;transform:translate(-50%)}.calorie-activity.calorie-activity:before{content:"";vertical-align:1px;background:var(--earned);border-radius:50%;width:8px;height:8px;margin-right:5px;display:inline-block}.calorie-ring{--ring:var(--accent);flex-direction:column-reverse;justify-content:center;align-items:center;width:144px;height:144px;display:flex;position:relative}.calorie-ring:before{content:"";background:conic-gradient(var(--ring) var(--progress), var(--border) 0 var(--goal-end,100%), var(--earned) 0);border-radius:50%;position:absolute;inset:0;-webkit-mask:radial-gradient(farthest-side,#0000 calc(100% - 11px),#000 calc(100% - 10px));mask:radial-gradient(farthest-side,#0000 calc(100% - 11px),#000 calc(100% - 10px))}.calorie-ring dd{letter-spacing:-.8px;color:var(--text-h);font-variant-numeric:tabular-nums;font-size:30px;font-weight:800;line-height:1}.calorie-ring dt{margin-top:2px;font-size:13px;font-weight:600}.calorie-ring.over:before{background:conic-gradient(var(--ring) 0 calc(var(--goal-share) - 0.6%), #fff 0 var(--goal-share), transparent 0), repeating-conic-gradient(var(--ring) 0 2deg, #3434d44d 0 4deg)}@media (width<=520px){.calorie-ring{width:128px;height:128px}.calorie-ring dd{font-size:26px}}.macro-goals{border-top:1px solid var(--border);grid-template-columns:repeat(3,1fr);gap:24px;padding-top:12px;display:grid}.macro-goals div{grid-template-columns:1fr auto;align-items:baseline;gap:6px;min-width:0;display:grid}.macro-goals dt{color:var(--text-h);font-size:13px;font-weight:600}.macro-goals .summary-bar{grid-column:1/-1;margin-top:0}@media (width<=520px){.macro-goals{gap:14px}.macro-goals div{grid-template-columns:1fr;gap:4px}}.macro-goal-value{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:14px}.macro-goal-value strong{color:var(--text-h)}.summary-bar{background:var(--border);border-radius:3px;align-self:stretch;height:6px;margin-top:8px;overflow:hidden}.summary-bar span{background:var(--macro);border-radius:3px;height:100%;display:block}.meals{flex-direction:column;gap:16px;display:flex}.day-main{flex-direction:column;gap:16px;display:flex}.day-main>.day-nutrients{margin-left:56px}.meal-row{grid-template-columns:40px minmax(0,1fr);gap:16px;display:grid;position:relative}.meal-row:not(:last-child):before{content:"";background:var(--border);width:2px;position:absolute;top:60px;bottom:-24px;left:19px}@media (width<=560px){.meal-row{grid-template-columns:minmax(0,1fr)}.meal-row:before,.meal-row .meal-marker{display:none}}@media (width<=560px){.day-main>.day-nutrients{margin-left:0}}.meal-marker{box-sizing:border-box;width:40px;height:40px;color:var(--text);border:2px dashed #c9c2b6;border-radius:50%;place-items:center;margin-top:14px;display:grid}.logged>.meal-marker{color:var(--text-h);border:1.5px solid var(--border);background:#fff}.meal-empty{border-top:1px solid var(--border);padding:14px 0 12px}.meal-empty p{margin:0 0 14px;font-size:15px}.meal-empty-actions{flex-wrap:wrap;gap:8px;display:flex}.pill-button{min-height:44px;font:inherit;color:var(--text-h);border:1.5px solid var(--border);cursor:pointer;background:#fff;border-radius:999px;align-items:center;gap:8px;padding:0 18px;font-size:15px;font-weight:700;transition:background-color .15s,border-color .15s;display:inline-flex}.pill-button:hover{border-color:var(--text-h)}.pill-button:focus-visible{outline:2px solid var(--accent-border);outline-offset:2px}.pill-button.primary{color:#fff;background:var(--accent);border-color:var(--accent)}.pill-button.primary:hover{background:var(--accent-strong);border-color:var(--accent-strong)}.meal{padding:20px 20px 10px}.meal:has(.menu){z-index:5;position:relative}.meal-menu{margin:-6px -8px -6px 0;position:relative}.menu{z-index:10;border:1px solid var(--border);background:#fff;border-radius:14px;flex-direction:column;min-width:230px;padding:6px;display:flex;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 16px 36px -12px #1b1e4b4d}.menu :is([role=menuitem],[role=menuitemradio]){font:inherit;text-align:left;color:var(--text-h);cursor:pointer;background:0 0;border:0;border-radius:9px;align-items:center;gap:10px;padding:10px 12px;font-size:15px;font-weight:500;text-decoration:none;display:flex}.menu :is([role=menuitem],[role=menuitemradio]) svg{flex:none;width:18px;height:18px}.menu :is([role=menuitem],[role=menuitemradio]):hover,.menu :is([role=menuitem],[role=menuitemradio]):focus-visible,.menu :is([role=menuitem],[role=menuitemradio])[aria-current=page]{color:var(--accent);background:var(--accent-soft);outline:none}.menu :is([role=menuitem],[role=menuitemradio])[aria-disabled=true]{color:var(--text);opacity:.5;cursor:default;background:0 0}.dialog.small{width:min(460px,100% - 32px)}@media (width<=560px){.dialog.small{border-radius:24px;height:fit-content;max-height:calc(100% - 32px)}}.dialog-actions.end{justify-content:flex-end}.tool-form{flex-direction:column;gap:16px;display:flex}.tool-form .field{align-items:stretch}.tool-fields{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.tool-checklist{flex-direction:column;margin:-8px 0 0;padding:0;list-style:none;display:flex}.tool-checklist li+li{border-top:1px solid var(--border)}.tool-checklist label{cursor:pointer;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:10px 0;font-size:14px;display:grid}.tool-checklist input{width:18px;height:18px;accent-color:var(--accent);margin:0}.tool-item-name{color:var(--text-h);font-weight:500}.tool-item-detail{font-variant-numeric:tabular-nums;white-space:nowrap}.saved-meals{margin:0;padding:0;list-style:none}.saved-meals li{grid-template-columns:40px 1fr auto;align-items:center;gap:14px;padding:10px;display:grid}.add-button{width:34px;height:34px;color:var(--accent);background:var(--accent-soft);cursor:pointer;border:0;border-radius:50%;place-items:center;padding:0;transition:color .15s,background-color .15s;display:grid}.add-button:hover{color:#fff;background:var(--accent)}.add-button:focus-visible{outline:2px solid var(--accent-border);outline-offset:2px}.add-button svg{width:18px;height:18px}.meal-actions{flex-wrap:wrap;justify-content:space-between;gap:0 20px;display:flex}.meal-header{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px;display:flex}.meal-header h2{margin:0}.meal-kcal{color:var(--accent);font-variant-numeric:tabular-nums;margin-left:auto;font-size:20px;font-weight:700}.meal-kcal.empty{color:var(--text);opacity:.7;font-weight:500}.meal-kcal-unit{color:var(--text);font-size:14px;font-weight:500}.meal-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:14px}.meal-table th,.meal-table td{text-align:right;white-space:nowrap;width:1%;padding:10px 0 10px 16px}.meal-table thead th{color:var(--text);opacity:.8;padding-top:6px;font-size:12px;font-weight:500;line-height:1.3}.meal-table tbody tr,.meal-table tfoot tr{border-top:1px solid var(--border)}.meal-table tbody td,.meal-table tfoot{color:var(--text-h)}.meal-table tfoot{font-weight:700}.meal-table tr>:first-child{text-align:left;white-space:normal;width:auto;padding-left:0}.meal-table tbody th{font-weight:400}.meal-table tr>:last-child{padding-left:8px}@media (width<=520px){.meal-table .macro-column{display:none}}.entry-button{width:100%;font:inherit;text-align:left;color:inherit;cursor:pointer;background:0 0;border:0;margin:-4px 0;padding:4px 0;display:block}.entry-button:hover .entry-name{color:var(--accent)}.entry-button:focus-visible{outline:2px solid var(--accent-border);outline-offset:2px;border-radius:4px}.meal-table tr.entry-edit{border-top:0}.meal-table .entry-edit td{text-align:left;white-space:normal;width:auto;padding:4px 0 16px}.entry-name{color:var(--text-h);font-weight:500;display:block}.entry-detail{color:var(--text);font-size:13px;display:block}.remove-button{vertical-align:middle;width:28px;height:28px}.remove-button svg{width:16px;height:16px}:root:has(.dialog[open]){overflow:hidden}.dialog{box-sizing:border-box;width:min(640px,100% - 32px);max-width:none;color:var(--text);background:#fff;border:0;border-radius:24px;padding:0;box-shadow:0 32px 80px -24px #1b1e4b73}.dialog::backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#34308c38}@media (width<=560px){.dialog{border-radius:0;width:100%;height:100%;max-height:none}}@media (width>=561px){.add-food{height:min(720px,100% - 64px);max-height:none}}.dialog-header{z-index:1;border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffd9;justify-content:space-between;align-items:center;gap:12px;padding:16px 16px 16px 24px;display:flex;position:sticky;top:0}.dialog-header h2{flex:1;margin:0;font-size:20px}.dialog-actions{justify-content:space-between;align-items:center;gap:16px;margin-top:4px;display:flex}.dialog-body{padding:20px 24px 24px}.amount-label{color:var(--text-h);font-size:14px;font-weight:600}.amount-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.stepper{box-sizing:border-box;width:200px;color:var(--text-h);align-items:center;gap:4px;padding:6px;font-size:24px;font-weight:700;display:flex}.stepper-value{cursor:text;flex:1;justify-content:center;align-items:baseline;gap:6px;min-width:0;padding:6px 0;display:flex}.stepper-value input{max-width:100%;font:inherit;font-variant-numeric:tabular-nums;text-align:center;color:inherit;background:0 0;border:0;outline:none;padding:0}.step-button{width:40px;height:40px;color:var(--accent);background:var(--accent-soft);cursor:pointer;border:0;border-radius:9px;flex:none;place-items:center;padding:0;transition:color .15s,background-color .15s;display:grid}.step-button:hover{background:#e1e2fc}.step-button[aria-disabled=true]{color:var(--text);background:var(--surface-hover);opacity:.5;cursor:default}.step-button:focus-visible{outline:2px solid var(--accent-border);outline-offset:1px}.amount-unit{color:var(--text);font-size:16px;font-weight:500}.amount{flex-direction:column;gap:12px;display:flex}.segmented{background:var(--surface-hover);border:1px solid var(--border);border-radius:12px;gap:2px;margin:0;padding:3px;display:flex}.segmented.invalid,.app-paper .choice-grid.invalid>.choice-card{border-color:var(--danger)}.choices>.field-error{margin:12px 0 0}.segmented-option{white-space:nowrap;color:var(--text);cursor:pointer;border-radius:9px;padding:8px 14px;font-size:15px;font-weight:600;transition:color .15s,background-color .15s}.segmented-option:hover{color:var(--text-h)}.segmented-option:has(input:checked){color:var(--accent);background:#fff;box-shadow:0 1px 3px #1b1e4b1f}.segmented-option:has(input:focus-visible){outline:2px solid var(--accent-border);outline-offset:1px}.amount-total{font-size:14px}.presets{flex-wrap:wrap;gap:8px;display:flex}.chip{white-space:nowrap;font:inherit;font-variant-numeric:tabular-nums;color:var(--text-h);border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:999px;padding:6px 14px;font-size:14px;font-weight:600;transition:color .15s,background-color .15s,border-color .15s}.chip:hover{color:var(--accent);border-color:var(--accent-border)}.chip[aria-pressed=true]{color:var(--accent);background:var(--accent-soft);border-color:var(--accent-border)}.chip:focus-visible{outline:2px solid var(--accent-border);outline-offset:2px}@media (width<=560px){.presets>.chip{flex:1;padding-inline:4px}}.energy-kcal{--macro:var(--accent)}.energy-protein{--macro:#00a6c8}.energy-carbs{--macro:#eea200}.energy-fat{--macro:#f2557f}.energy-bar{background:var(--border);border-radius:3px;gap:2px;height:6px;display:flex;overflow:hidden}.energy-bar span{background:var(--macro);flex-basis:0}.food-list li.open{background:var(--surface-hover);border-radius:12px}.food-list li.open .food:hover{background:0 0}.food-panel{padding:4px 10px 14px}.amount-picker{grid-template-columns:1fr auto;grid-template-areas:"controls add""extra extra""macros macros""nutrients nutrients";align-items:center;gap:10px;display:grid}.amount-picker .amount{display:contents}.amount-picker .amount-row{grid-area:controls}.amount-picker .presets,.amount-picker .amount-total{grid-area:extra}.amount-picker .food-nutrients{grid-area:nutrients}.amount-picker .amount-macros{font-variant-numeric:tabular-nums;grid-area:macros;font-size:13px}.amount-picker .primary-button{grid-area:add}@media (width<=560px){.amount-picker{grid-template-columns:1fr;grid-template-areas:"controls""extra""macros""add""nutrients"}.amount-picker .primary-button{justify-self:end}}.amount-picker .amount-row{gap:10px}.amount-picker .stepper{width:156px;padding:4px;font-size:20px}.amount-picker .stepper-value{padding:4px 0}.amount-picker .step-button{width:34px;height:34px}.amount-picker .segmented-option{padding:6px 12px;font-size:14px}.amount-picker .primary-button{padding:10px 20px}.amount-picker .chip{color:var(--text);background:0 0;padding:3px 12px;font-size:13px;font-weight:500}.amount-picker .chip[aria-pressed=true]{color:var(--accent);background:var(--accent-soft)}.amount-picker .amount-total{font-size:13px}.food-nutrients-toggle{padding:0;font-size:14px}.food-nutrients-body{flex-direction:column;gap:12px;padding-top:10px;display:flex}.food-nutrients-groups{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px 24px;display:grid}.food-nutrient-group h4{letter-spacing:.06em;text-transform:uppercase;color:var(--text);margin:0 0 6px;font-size:12px;font-weight:700}.food-nutrient-group dl{margin:0}.food-nutrient-group div{border-bottom:1px solid var(--border);grid-template-columns:1fr auto 3.5em;gap:8px;padding:3px 0;font-size:13px;display:grid}.food-nutrient-group dt{color:var(--text-h)}.food-nutrient-group dd{font-variant-numeric:tabular-nums;text-align:right;margin:0}.food-nutrient-value{color:var(--text-h);white-space:nowrap;font-weight:600}.food-nutrients-note{margin:0;font-size:12px}.add-kcal{opacity:.85;font-weight:500}.food-added{color:var(--accent);font-weight:600}.stepper,.field-input,.search{border:1px solid var(--border);background:#fff;border-radius:12px;transition:border-color .15s,box-shadow .15s;box-shadow:0 1px 2px #1b1e4b0d}:is(.stepper,.field-input,.search):focus-within{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-ring);outline:2px solid #0000}.food-search{flex-direction:column;gap:16px;display:flex}.search{box-sizing:border-box;width:100%;font:inherit;color:var(--text-h);background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' stroke='%235c6185' stroke-width='1.75' stroke-linecap='round'%3E%3Ccircle cx='9' cy='9' r='5.5'/%3E%3Cpath d='m13 13 3.5 3.5'/%3E%3C/svg%3E") 16px no-repeat;padding:14px 16px 14px 46px}.search::placeholder{color:#9a9dbb}.search-field{position:relative}.search-field .search{padding-right:54px}.scan-button{color:var(--text-h);position:absolute;top:50%;right:8px;transform:translateY(-50%)}.scan-button[aria-pressed=true]{color:var(--accent);background:var(--accent-soft)}.scanner{flex-direction:column;align-items:center;gap:12px;display:flex}.scanner-view{aspect-ratio:4/3;background:#16151b;border-radius:14px;width:100%;position:relative;overflow:hidden}.scanner-view video{object-fit:cover;width:100%;height:100%;display:block}.scanner-frame{border:2px solid #ffffffe6;border-radius:10px;position:absolute;inset:32% 10%;box-shadow:0 0 0 100vmax #00000059}.scanner-status{text-align:center;max-width:440px;color:var(--text-h);font-size:15px;line-height:1.5}.scanner-status.failed{color:var(--text);padding-top:12px}.results{flex-direction:column;gap:24px;display:flex}.result-header{align-items:center;gap:8px;padding:0 10px 4px;display:flex}.result-header h3{letter-spacing:.06em;text-transform:uppercase;color:var(--text);margin:0;font-size:13px;font-weight:700}.section-count{box-sizing:border-box;text-align:center;font-variant-numeric:tabular-nums;min-width:22px;color:var(--accent);background:var(--accent-soft);border-radius:10px;padding:0 8px;font-size:12px;font-weight:600;line-height:20px;transition:opacity .15s}.section-count.stale{opacity:.5}.source-tag{white-space:nowrap;color:var(--text);border:1px solid var(--border);background:#fff;border-radius:10px;margin-left:auto;padding:2px 10px;font-size:12px;font-weight:500;line-height:18px}.search-note{font-size:14px}.result-section>.status{padding:12px 0}.status{font-size:15px}.more-button{margin-top:8px}.food-list{margin:0;padding:0;list-style:none;transition:opacity .15s}[aria-busy=true]>.food-list{opacity:.5}.food{width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:12px;grid-template-columns:40px 1fr auto;align-items:center;gap:14px;padding:10px;transition:background-color .15s;display:grid}.food:hover{background:var(--surface-hover)}.food:focus-visible{outline:2px solid var(--accent-border);outline-offset:-2px}.food-image{box-sizing:border-box;border:1px solid var(--border);object-fit:cover;background:var(--accent-soft);border-radius:10px;width:40px;height:40px;display:block}.food-icon{color:var(--accent);background:linear-gradient(135deg, #fff, var(--accent-soft));place-items:center;display:grid}.food-icon svg{width:50%;height:50%}.food-main{flex-direction:column;min-width:0;display:flex}.food-name{color:var(--text-h);font-weight:500}.food-detail{font-size:14px}.food-kcal{white-space:nowrap;font-variant-numeric:tabular-nums;font-size:13px}.food-kcal strong{color:var(--text-h);font-size:15px;font-weight:700}.landing{flex-direction:column;gap:32px;display:flex}.landing fieldset{border:0;min-width:0;margin:0;padding:0}.hero{flex-direction:column;gap:16px;margin-top:20px;display:flex}.hero-title{letter-spacing:-1.8px;text-wrap:balance;max-width:600px;color:var(--text-h);margin:0;font-size:clamp(38px,9vw,58px);font-weight:800;line-height:1.03}.hero-title:focus{outline:none}.hero-text{max-width:540px;font-size:17px;line-height:1.55}.section-title{color:var(--text-h);margin:0 0 14px;padding:0;font-size:18px;font-weight:700}.card>.section-title{margin:0}.card{flex-direction:column;gap:20px;padding:22px;display:flex}.choice-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.choice-grid.activities{grid-template-columns:repeat(2,1fr)}@media (width<=560px){.choice-grid{grid-template-columns:1fr}.choice-grid.activities{grid-template-columns:1fr}}.choice-card{background:var(--surface);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);cursor:pointer;border:1px solid #ffffffe6;border-radius:18px;flex-direction:column;gap:4px;padding:18px;transition:border-color .15s,box-shadow .15s,background-color .15s;display:flex}.choice-card:hover{box-shadow:var(--shadow-hover)}.choice-card:has(input:checked){border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring), var(--shadow);background:#fff}.choice-card:has(input:focus-visible){outline:2px solid var(--accent-border);outline-offset:3px}.activities>.choice-card{border-color:var(--border);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff;padding:14px 16px}.activities>.choice-card:has(input:checked){border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.choice-icon{width:42px;height:42px;color:var(--accent);background:var(--accent-soft);border-radius:12px;place-items:center;margin-bottom:10px;display:grid}.choice-title{color:var(--text-h);font-weight:700}.choice-text{font-size:14px;line-height:1.4}.field{flex-direction:column;align-items:flex-start;gap:8px;min-width:0;display:flex}.field-label{color:var(--text-h);padding:0;font-size:14px;font-weight:600}.field-help,.field-error{font-size:13px}.field-error{color:var(--danger)}.fields{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.fields .field{align-items:stretch}.field-input{color:var(--text-h);cursor:text;align-items:baseline;gap:6px;padding:12px 14px;font-size:18px;font-weight:600;display:flex}.field-input input{width:100%;min-width:0;font:inherit;font-variant-numeric:tabular-nums;color:inherit;background:0 0;border:0;outline:none;padding:0}.field-input:has(input[aria-invalid=true]){border-color:var(--danger)}.field-unit{color:var(--text);font-size:14px;font-weight:500}.plan-kcal{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.plan-kcal .stepper{width:230px}.plan-kcal .stepper-value{font-variant-numeric:tabular-nums;cursor:default;font-size:28px}.plan-kcal-unit{font-size:16px;font-weight:600}.plan-note,.plan-empty{font-size:15px}.plan-macros{flex-direction:column;gap:16px;display:flex}.plan-macro{grid-template-columns:1fr auto;align-items:center;gap:8px 12px;display:grid}.plan-macro input[type=range]{background:linear-gradient(var(--macro) 0 0) 0 / var(--fill) 100% no-repeat var(--border);appearance:none;cursor:pointer;border-radius:3px;grid-column:1/-1;width:100%;height:6px;margin:6px 0}.plan-macro input[type=range]::-webkit-slider-thumb{border:2px solid var(--macro);appearance:none;background:#fff;border-radius:50%;width:20px;height:20px;box-shadow:0 1px 3px #1b1e4b33}.plan-macro input[type=range]::-moz-range-thumb{box-sizing:border-box;border:2px solid var(--macro);background:#fff;border-radius:50%;width:20px;height:20px;box-shadow:0 1px 3px #1b1e4b33}.plan-macro input[type=range]:focus-visible{outline:2px solid var(--accent-border);outline-offset:6px}.plan-macro-label{color:var(--text-h);align-items:center;gap:8px;font-weight:600;display:flex}.plan-macro-label:before{content:"";background:var(--macro);border-radius:50%;width:8px;height:8px}.plan-macro-value{font-variant-numeric:tabular-nums;color:var(--text-h);font-weight:600}.plan-macro-note{grid-column:1/-1;font-size:13px}.plan-reset{align-self:flex-start}.landing-actions{justify-content:flex-end;align-items:center;gap:24px;display:flex}footer{margin-top:auto;padding-top:8px;font-size:13px}footer a{color:var(--accent);-webkit-text-decoration-color:var(--accent-border);text-decoration-color:var(--accent-border);text-underline-offset:2px}footer a:hover{text-decoration-color:currentColor}.site-footer{border-top:1px solid var(--line,var(--border));flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px 40px;margin-top:auto;padding-top:28px;display:flex}.footer-links{flex-wrap:wrap;align-items:center;gap:8px 24px;font-size:13px;display:flex}.footer-logo{margin-right:-8px;display:flex}.footer-logo svg{display:block}.store-badges{flex-wrap:wrap;gap:12px;display:flex}.site-footer .store-badge{color:#fff;font-family:"Outfit Variable", var(--sans);letter-spacing:-.2px;cursor:default;background:#16151b;border-radius:10px;align-items:center;gap:10px;padding:8px 18px 8px 14px;font-size:18px;font-weight:500;line-height:1.1;display:flex}.site-footer .store-badge span{flex-direction:column;display:flex}.site-footer .store-badge small{letter-spacing:0;font-size:11px;font-weight:400}.about{flex-direction:column;gap:24px;max-width:680px;display:flex}.about-lead{font-size:17px;line-height:1.6}.about-sources dl{flex-direction:column;gap:16px;margin:0;display:flex}.about-sources dt{color:var(--text-h);font-weight:600}.about-sources dd{margin:2px 0 0;line-height:1.55}.about-sources dd a{color:var(--accent);text-underline-offset:2px}
