@font-face{font-family:Outfit Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/outfit-latin-ext-wght-normal.ee756101.woff2) format("woff2-variations");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:Outfit Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/outfit-latin-wght-normal.e96e1529.woff2) format("woff2-variations");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}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/inter-cyrillic-ext-wght-normal.460bdf14.woff2) format("woff2-variations");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/inter-cyrillic-wght-normal.491cbc05.woff2) format("woff2-variations");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/inter-greek-ext-wght-normal.23aae568.woff2) format("woff2-variations");unicode-range:u+1f??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/inter-greek-wght-normal.4449bf7a.woff2) format("woff2-variations");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/inter-vietnamese-wght-normal.113a630f.woff2) format("woff2-variations");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/inter-latin-ext-wght-normal.3835a68e.woff2) format("woff2-variations");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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/inter-latin-wght-normal.6c596dfc.woff2) format("woff2-variations");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}
/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:host,:root{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.fixed{position:fixed}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}.offline-banner{z-index:60;color:#fff;text-align:center;background:#19221e;border-radius:12px;width:min(420px,100% - 24px);padding:10px 14px;font-size:11px;position:fixed;top:10px;left:50%;transform:translate(-50%);box-shadow:0 12px 40px #153a2d38}:root{--forest:#0d47a1;--green:#1976d2;--green2:#42a5f5;--green-soft:#e3f2fd;--gold:#1976d2;--gold-soft:#e3f2fd;--cream:#f5f9ff;--surface:#fff;--ink:#212121;--muted:#757575;--border:#dbeafe;--danger:#c53c00;--shadow:0 12px 40px #1976d224}*{box-sizing:border-box}html{background:#e3f2fd}body{color:var(--ink);background:linear-gradient(135deg,#e3f2fd,#f5f9ff);min-height:100vh;margin:0;font-family:Inter Variable,Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:2px;outline:3px solid #1976d257}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--forest);letter-spacing:-.025em;font-family:Outfit Variable,Outfit,ui-sans-serif,system-ui,sans-serif}h1{margin-bottom:8px;font-size:30px;line-height:1.08}h2{font-size:24px;line-height:1.18}h3{color:var(--forest);font-size:16px}.phone-shell{background:var(--cream);width:100%;max-width:460px;margin:0 auto;position:relative;overflow:hidden;box-shadow:0 0 60px #153a2d1a}.app-content,.phone-shell{min-height:100dvh}.app-shell{overflow:visible}.muted{color:var(--muted);line-height:1.55}.eyebrow{letter-spacing:.14em;color:var(--gold);margin-bottom:8px;font-size:11px;font-weight:800}.fine{color:var(--muted);text-align:center;font-size:12px;line-height:1.5}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.brand{color:var(--forest);align-items:center;gap:11px;display:flex}.brand>span:last-child{flex-direction:column;display:flex}.brand small{letter-spacing:.08em;text-transform:uppercase;font-size:9px}.brand-mark{background:var(--forest);border-radius:14px;width:48px;height:48px;display:block;position:relative;box-shadow:0 5px 16px #153a2d2e}.brand-mark b{color:var(--cream);font:700 28px/1 Georgia,serif;position:absolute;top:15px;left:18px}.brand-mark i{background:var(--cream);border-radius:50%;width:6px;height:6px;position:absolute;top:8px}.brand-mark i:first-child{background:var(--gold);left:10px}.brand-mark i:nth-child(2){top:5px;left:21px}.brand-mark i:nth-child(3){background:#81a991;left:32px}.brand-compact .brand-mark{border-radius:12px;width:42px;height:42px}.brand-compact .brand-mark b{font-size:24px;top:13px;left:16px}.brand-compact .brand-mark i{top:7px}.brand-compact .brand-mark i:nth-child(2){top:4px}.splash{flex-direction:column;justify-content:center;align-items:center;gap:22px;display:flex}.splash>svg{color:var(--gold)}.splash p{color:var(--muted)}.auth-shell{flex-direction:column;display:flex}.auth-hero{background:radial-gradient(circle at 80% 10%,#b68a3a1c,transparent 35%),var(--cream);min-height:62dvh;padding:58px 26px 24px}.auth-hero .brand{margin-bottom:54px}.auth-hero h1{font-size:40px;line-height:1.05}.auth-hero h1 em{color:var(--gold);font-weight:400}.auth-hero>p:not(.eyebrow){color:var(--muted);max-width:340px;line-height:1.55}.juggle{justify-content:center;align-items:end;gap:36px;height:95px;display:flex}.juggle span{filter:drop-shadow(0 8px 8px #153a2d1f);font-size:38px;transform:rotate(-12deg)}.juggle span:nth-child(2){align-self:start;transform:rotate(8deg)}.juggle span:nth-child(3){transform:rotate(14deg)}.auth-actions{margin-top:auto;padding:22px 24px 34px}.button{border:0;border-radius:14px;justify-content:center;align-items:center;gap:9px;width:100%;min-height:50px;padding:13px 18px;font-weight:750;transition:all .18s;display:flex}.button:disabled{opacity:.55;cursor:not-allowed}.button.primary{background:var(--forest);color:#fff;box-shadow:0 7px 20px #153a2d2e}.button.secondary{border:1px solid var(--border);background:#fff;margin-top:10px}.sheet{background:var(--surface);border-radius:28px 28px 0 0;padding:24px;box-shadow:0 -10px 35px #153a2d14}.auth-form{min-height:58dvh;margin-top:auto}.auth-form h2{margin-bottom:24px;font-size:30px}.icon-button{background:var(--cream);width:44px;height:44px;color:var(--forest);border:0;border-radius:12px;place-items:center;margin-bottom:22px;display:grid}.auth-form form{flex-direction:column;gap:14px;display:flex}.text-button{color:var(--green);background:0 0;border:0;width:100%;padding:14px;font-weight:750}.switch{text-align:center;color:var(--muted);margin-top:16px;font-size:14px}.switch button{color:var(--green);background:0 0;border:0;font-weight:750}.field{flex-direction:column;flex:1;gap:7px;display:flex}.field>span{color:var(--forest);font-size:12px;font-weight:750}.field input,.field select{border:1px solid var(--border);width:100%;height:49px;color:var(--ink);background:#fff;border-radius:12px;min-width:0;padding:0 13px}.field input:focus,.field select:focus{border-color:var(--gold)}.field-row{gap:12px;display:flex}.form-stack{flex-direction:column;gap:15px;display:flex}.form-stack h3{margin:10px 0 0}.alert{color:#3c668a;background:#edf3f6;border:1px solid #d9e6ec;border-radius:12px;padding:12px 14px;font-size:13px;line-height:1.45}.alert.danger{color:var(--danger);background:#fff0ef;border-color:#f3d0ce}.alert.success{color:var(--green);background:#ebf5ef;border-color:#cee7d8}.onboarding header,.topbar{background:var(--cream);z-index:2;justify-content:space-between;align-items:center;padding:24px 18px 14px;display:flex;position:relative}.onboarding header>span{color:var(--muted);font-size:12px;font-weight:700}.stepper{background:var(--border);height:3px}.stepper i{background:var(--gold);height:100%;transition:width .25s;display:block}.onboarding .page{padding-bottom:120px}.sticky-actions{padding:14px 18px calc(14px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--border);z-index:3;background:#faf8f3f0;gap:10px;display:flex;position:absolute;bottom:0;left:0;right:0}.sticky-actions .secondary{width:38%;margin:0}.choice-grid{flex-direction:column;gap:10px;display:flex}.choice-grid button{border:1px solid var(--border);text-align:left;background:#fff;border-radius:14px;align-items:center;gap:12px;min-height:68px;padding:12px;display:flex}.choice-grid button.selected{border-color:var(--green);background:var(--green-soft)}.choice-grid button>span{border:1px solid var(--border);color:#fff;border-radius:50%;place-items:center;width:28px;height:28px;display:grid}.choice-grid .selected>span{background:var(--green);border-color:var(--green)}.choice-grid svg{width:16px}.choice-grid button div{flex-direction:column;gap:3px;display:flex}.choice-grid small{color:var(--muted)}.target-hero{background:var(--forest);color:#fff;text-align:center;border-radius:20px;margin:18px 0;padding:25px}.target-hero small,.target-hero span{opacity:.72;display:block}.target-hero strong{margin:8px;font:700 52px/1 Georgia,serif;display:block}.macro-grid{grid-template-columns:repeat(3,1fr);gap:9px;margin:14px 0;display:grid}.macro{background:var(--green-soft);border-radius:14px;min-width:0;padding:13px 11px}.macro.gold{background:var(--gold-soft)}.macro.soft{background:#edf0ec}.macro>span{color:var(--muted);font-size:11px;display:block}.macro>strong{color:var(--forest);font-variant-numeric:tabular-nums;font-size:20px}.macro small{font-size:11px;font-weight:500}.macro.progress>strong{font-size:17px}.macro.progress>i{background:#153a2d1a;border-radius:4px;height:4px;margin-top:9px;display:block;overflow:hidden}.macro.progress>i b{background:var(--green);border-radius:4px;height:100%;display:block}.macro.progress.gold>i b{background:var(--gold)}.macro.progress.soft>i b{background:#718078}.topbar{padding-top:26px}.topbar h1{margin:0;font-size:29px}.calorie-card{border:1px solid var(--border);background:#fff;border-radius:20px;align-items:center;gap:17px;padding:16px;display:flex}.ring{--progress:0%;background:conic-gradient(var(--gold) var(--progress),var(--gold-soft) 0);border-radius:50%;flex:none;place-items:center;width:112px;height:112px;display:grid;position:relative}.ring:before{content:"";background:#fff;border-radius:50%;position:absolute;inset:9px}.ring span{text-align:center;position:relative}.ring small,.ring strong{display:block}.ring strong{color:var(--forest);font:700 25px/1 Georgia,serif}.ring small{color:var(--muted);margin-top:5px;font-size:9px}.calorie-card h2{margin-bottom:5px}.calorie-card p{margin-bottom:0}.meal-list{flex-direction:column;gap:20px;margin-top:26px;display:flex}.section-title{justify-content:space-between;align-items:center;margin-bottom:9px;display:flex}.section-title h3{margin:0;font-family:Georgia,serif;font-size:18px}.section-title span{color:var(--muted);font-size:12px}.entry-card{border:1px solid var(--border);background:#fff;border-radius:14px;grid-template-columns:48px 1fr auto;align-items:center;gap:11px;margin-bottom:8px;padding:10px;display:grid}.entry-card img,.food-icon{object-fit:cover;border-radius:10px;width:48px;height:48px}.food-icon{background:var(--green-soft);color:var(--green);place-items:center;display:grid}.entry-card>div:nth-child(2){flex-direction:column;min-width:0;display:flex}.entry-card strong{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.entry-card small,.entry-card span{color:var(--muted);margin-top:3px;font-size:11px}.entry-card div>small{color:var(--gold)}.entry-kcal{text-align:right;flex-direction:column;display:flex}.entry-kcal b{color:var(--forest)}.entry-kcal button{color:#9da49f;background:0 0;border:0;place-items:center;min-width:32px;min-height:28px;margin-left:auto;display:grid}.history-day .meal-list{margin-top:0}.bottom-nav{z-index:20;width:min(460px,100%);height:76px;padding:8px 12px calc(8px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-top:1px solid var(--border);background:#fffffff5;grid-template-columns:1fr 1fr 64px 1fr 1fr;align-items:center;display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.bottom-nav>button:not(.add-button){color:#7c857f;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:3px;height:56px;font-size:10px;display:flex}.bottom-nav>button svg{width:21px}.bottom-nav>button.active{font-weight:750}.add-button{border:4px solid var(--cream);background:var(--forest);color:#fff;border-radius:18px;place-items:center;width:56px;height:56px;display:grid;transform:translateY(-18px);box-shadow:0 8px 18px #153a2d38}.modal-backdrop{z-index:40;background:#101c167a;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.modal-sheet{background:var(--cream);width:min(460px,100%);max-height:94dvh;padding:28px 18px calc(28px + env(safe-area-inset-bottom));box-shadow:var(--shadow);border-radius:28px 28px 0 0;position:relative;overflow:auto}.modal-close{float:right;z-index:2;width:42px;height:42px;color:var(--forest);background:#fff;border:0;border-radius:50%;place-items:center;display:grid;position:sticky;top:0}.modal-heading{margin-bottom:22px;padding-right:46px}.modal-heading h2{margin-bottom:8px;font-size:28px}.modal-heading>p:last-child{color:var(--muted);font-size:13px;line-height:1.45}.action-card,.candidate,.product-card{border:1px solid var(--border);text-align:left;width:100%;color:var(--ink);background:#fff;border-radius:16px;align-items:center;gap:12px;margin-bottom:10px;padding:13px;display:flex}.action-card>span{background:var(--green-soft);width:48px;height:48px;color:var(--green);border-radius:13px;place-items:center;display:grid}.action-card>div,.candidate>div,.product-card>div{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.action-card small,.candidate small,.product-card small,.product-card span{color:var(--muted);font-size:11px}.action-card>svg,.candidate>svg,.product-card>svg{color:#a2aaa5;width:18px}.scanner{color:#fff;background:#14231d;border-radius:20px;height:300px;margin-bottom:18px;position:relative;overflow:hidden}.scanner video{object-fit:cover;width:100%;height:100%}.scanner small{text-align:center;padding:0 20px;position:absolute;bottom:18px;left:0;right:0}.scan-frame{border:2px solid var(--gold);border-radius:16px;position:absolute;inset:82px 38px;box-shadow:0 0 0 999px #00000038}.image-picker{height:290px;color:var(--green);background:#fff;border:1.5px dashed #b7c0ba;border-radius:20px;flex-direction:column;justify-content:center;align-items:center;gap:9px;margin-bottom:15px;display:flex;overflow:hidden}.image-picker input{opacity:0;pointer-events:none;position:absolute}.image-picker img{object-fit:cover;width:100%;height:100%}.image-picker small{color:var(--muted)}.candidate>span{background:var(--gold-soft);color:#8b6829;border-radius:50%;place-items:center;width:31px;height:31px;font-weight:800;display:grid}.search-box{border:1px solid var(--border);background:#fff;border-radius:13px;align-items:center;height:49px;margin-bottom:16px;padding-left:12px;display:flex}.search-box svg{color:var(--muted);width:18px}.search-box input{border:0;outline:0;flex:1;min-width:0;padding:0 10px}.search-box button{background:var(--forest);color:#fff;border:0;border-radius:10px;height:38px;margin-right:5px;padding:0 13px}.product-card .food-icon,.product-card img{object-fit:cover;border-radius:11px;width:54px;height:54px}.source-strip{background:var(--green-soft);color:var(--green);border-radius:12px;gap:8px;margin-bottom:16px;padding:10px 12px;font-size:12px;font-weight:700}.profile-card,.source-strip{align-items:center;display:flex}.profile-card{background:var(--forest);color:#fff;border-radius:20px;gap:14px;margin-bottom:28px;padding:20px}.profile-card .avatar{background:var(--gold);border-radius:50%;place-items:center;width:58px;height:58px;font:700 26px Georgia,serif;display:grid}.profile-card h2{color:#fff;margin:0 0 4px}.profile-card p{opacity:.7;margin:0;font-size:13px}.settings-card{border:1px solid var(--border);background:#fff;border-radius:16px;margin-bottom:22px}.setting-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;height:52px;padding:0 14px;display:flex}.setting-row:last-child{border:0}.setting-row>span{align-items:center;gap:8px;font-size:13px;display:flex}.setting-row b{text-transform:uppercase;letter-spacing:.05em;border-radius:999px;padding:5px 8px;font-size:10px}.setting-row b.ready{background:var(--green-soft);color:var(--green)}.setting-row b.needs{color:var(--danger);background:#fff0ef}.status-note{text-align:center;color:var(--green);font-size:13px;font-weight:700}.empty{text-align:center;color:var(--muted);padding:42px 25px}.empty>span{background:var(--green-soft);width:62px;height:62px;color:var(--green);border-radius:20px;place-items:center;margin:0 auto 17px;display:grid}.empty h2{margin-bottom:7px}.empty p{font-size:14px;line-height:1.5}.loading-cards{flex-direction:column;gap:10px;margin-top:25px;display:flex}.loading-cards i{background:linear-gradient(90deg,#eeeae2,#f8f6f0,#eeeae2) 0 0/200% 100%;border-radius:14px;height:70px;animation:shimmer 1.3s infinite}@keyframes shimmer{to{background-position:-200% 0}}.welcome-story{isolation:isolate;background:radial-gradient(circle at 50% 30%,#fff 0,#faf7ef 48%,#f2eadc 100%);flex-direction:column;min-height:100dvh;display:flex;position:relative}.welcome-story:before{content:"";z-index:-1;background-image:radial-gradient(#b68a3a24 1px,#0000 0);background-size:24px 24px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 45%);mask-image:linear-gradient(#000,#0000 45%)}.welcome-nav{justify-content:space-between;align-items:center;height:70px;padding:16px 20px;display:flex}.welcome-nav button{color:var(--muted);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffa6;border:0;border-radius:999px;padding:9px 14px;font-size:12px;font-weight:750}.story-slide{flex-direction:column;flex:1;min-height:0;animation:story-enter .5s cubic-bezier(.2,.8,.2,1);display:flex}@keyframes story-enter{0%{opacity:0;transform:translate(18px)scale(.985)}to{opacity:1;transform:none}}.hero-art{background:#fbf7ed;border-radius:36px 36px 68px;place-items:center;height:min(47dvh,430px);margin:0 14px;display:grid;position:relative;overflow:hidden;box-shadow:0 24px 60px #55401c1f}.hero-art:after{content:"";background:linear-gradient(#0000,#fbf7ed);height:28%;position:absolute;inset:auto 0 0}.hero-art img{object-position:center 36%;width:100%;height:100%;animation:hero-float 6s ease-in-out infinite;transform:scale(1.03)}.hero-glow{aspect-ratio:1;filter:blur(40px);background:#b68a3a2b;border-radius:50%;width:70%;position:absolute}@keyframes hero-float{50%{transform:scale(1.045)translateY(-5px)}}.floating-pill{z-index:2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--forest);background:#ffffffe6;border:1px solid #ffffffe6;border-radius:999px;align-items:center;gap:5px;padding:8px 11px;font-size:10px;font-weight:800;animation:pill-float 3.8s ease-in-out infinite;display:flex;position:absolute;box-shadow:0 8px 24px #153a2d1f}.floating-pill svg{color:var(--gold)}.pill-facts{animation-delay:-1.4s;bottom:22%;right:4%}@keyframes pill-float{50%{transform:translateY(-7px)}}.story-copy{text-align:center;padding:22px 26px 6px}.story-copy h1 em{color:var(--gold);font-weight:400}.story-copy>p:last-child{color:var(--muted);max-width:360px;margin:0 auto;font-size:14px;line-height:1.48}.story-footer{padding:10px 22px calc(16px + env(safe-area-inset-bottom));margin-top:auto}.story-dots{justify-content:center;gap:7px;margin:0 0 13px;display:flex}.story-dots button{background:#d6d1c6;border:0;border-radius:99px;width:7px;height:7px;padding:0;transition:all .25s}.story-dots button.active{background:var(--gold);width:26px}.wow-button{border-radius:17px;min-height:54px;box-shadow:0 12px 30px #153a2d3d}.login-link{width:100%;color:var(--green);background:0 0;border:0;padding:11px;font-size:12px;font-weight:750}.goal-showcase{background:linear-gradient(145deg,#123326,#275f48);border-radius:34px;place-items:center;height:min(44dvh,390px);margin:0 18px;display:grid;position:relative;overflow:hidden;box-shadow:0 25px 50px #153a2d38}.goal-showcase:before{content:"";background:#ffffff0b;border-radius:50%;width:240px;height:240px;position:absolute}.orbit{border:1px solid #ffffff1f;border-radius:50%;animation:orbit-spin 18s linear infinite;position:absolute}.orbit-two{width:370px;height:370px;animation-direction:reverse}@keyframes orbit-spin{to{transform:rotate(1turn)}}.goal-medallion{color:#fff;background:conic-gradient(var(--gold) 72%,#ffffff1f 0);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:170px;height:170px;display:flex;position:relative;box-shadow:0 15px 35px #00000040}.goal-medallion:before{content:"";background:var(--forest);border-radius:50%;position:absolute;inset:10px}.goal-medallion>*{z-index:1}.goal-medallion small,.goal-medallion span{opacity:.68;font-size:11px}.goal-medallion strong{margin:2px;font:700 44px Georgia,serif}.goal-float{color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff1a;border:1px solid #ffffff21;border-radius:13px;align-items:center;gap:7px;padding:9px 11px;font-size:10px;display:flex;position:absolute}.goal-float b{color:#f5d594}.goal-carb{top:13%;left:6%}.goal-streak{top:18%;right:4%}.goal-meals{bottom:12%;left:13%}.goal-carb i{background:var(--gold);border-radius:50%;width:8px;height:8px}.rhythm-showcase{background:linear-gradient(145deg,#f8f0df,#e7eee7);border-radius:34px;height:min(44dvh,390px);margin:0 18px;padding:28px 18px;position:relative;overflow:hidden;box-shadow:0 24px 50px #153a2d1f}.rhythm-showcase>img{object-position:center 55%;opacity:.84;border-radius:50%;width:70%;height:80%;position:absolute;bottom:-16%;right:-14%}.week-path{z-index:2;justify-content:space-between;display:flex;position:relative}.week-path:before{content:"";z-index:-1;background:#d5d9d1;height:2px;position:absolute;top:19px;left:20px;right:20px}.week-path span{width:39px;height:39px;color:var(--muted);background:#fff;border:1px solid #dfe3dc;border-radius:50%;place-items:center;font-size:10px;display:grid;position:relative}.week-path span svg{border-radius:50%;width:13px;padding:2px;position:absolute;bottom:-2px;right:-2px}.week-path span svg,.week-path span.done{background:var(--forest);color:#fff}.week-path span.today{background:var(--gold);color:#fff;transform:scale(1.12);box-shadow:0 6px 18px #b68a3a4d}.trophy-card{z-index:2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffd9;border:1px solid #fff;border-radius:18px;align-items:center;gap:11px;width:76%;margin-top:30px;padding:14px;display:flex;position:relative;box-shadow:0 10px 28px #153a2d1a}.trophy-card>span{background:var(--gold-soft);width:43px;height:43px;color:var(--gold);border-radius:13px;place-items:center;display:grid}.trophy-card div{flex-direction:column;display:flex}.trophy-card small{letter-spacing:.12em;color:var(--gold);font-size:8px}.trophy-card strong{color:var(--forest);font-family:Georgia,serif;font-size:14px}.trophy-card p{color:var(--muted);margin:3px 0 0;font-size:9px}.streak-chip{background:var(--gold-soft);color:#8a6423;border-radius:999px;align-items:center;gap:4px;padding:8px 10px;display:flex}.streak-chip span{font-size:9px}.rhythm-card{color:#fff;background:linear-gradient(145deg,#173d30,#245e46);border-radius:20px;margin:15px 0 6px;padding:16px;position:relative;overflow:hidden;box-shadow:0 14px 30px #153a2d29}.rhythm-card:after{content:"";background:#ffffff0a;border-radius:50%;width:120px;height:120px;position:absolute;top:-45px;right:-35px}.rhythm-heading{z-index:1;justify-content:space-between;align-items:center;display:flex;position:relative}.rhythm-heading h3{color:#fff;margin:0;font-family:Georgia,serif;font-size:18px}.rhythm-heading .eyebrow{margin-bottom:3px}.rhythm-score{background:#ffffff1c;border-radius:50%;grid-template-columns:auto auto;place-items:center;width:44px;height:44px;display:grid}.rhythm-score strong{font:700 19px Georgia,serif}.rhythm-score span{opacity:.6;font-size:9px}.rhythm-track{background:#ffffff1a;border-radius:9px;height:5px;margin:13px 0;overflow:hidden}.rhythm-track i{background:linear-gradient(90deg,#d8ad5b,#f2d99c);border-radius:9px;height:100%;transition:width .6s cubic-bezier(.2,.8,.2,1);display:block}.rhythm-tasks{flex-direction:column;gap:8px;display:flex}.rhythm-tasks>div{opacity:.62;align-items:center;gap:9px;display:flex}.rhythm-tasks>div.done{opacity:1}.rhythm-tasks span{border:1px solid #ffffff3d;border-radius:50%;place-items:center;width:22px;height:22px;font-size:9px;display:grid}.rhythm-tasks .done span{background:var(--gold);border-color:var(--gold)}.rhythm-tasks svg{width:13px}.rhythm-tasks p{margin:0;font-size:11px}.action-card,.entry-card,.macro{transition:transform .18s,box-shadow .18s}.action-card:active,.entry-card:active,.macro:active{transform:scale(.975)}.entry-main{text-align:left;min-width:0;color:var(--ink);background:0 0;border:0;flex-direction:column;padding:4px 0;display:flex}.entry-main strong{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.entry-actions{gap:1px;margin-top:2px!important;display:flex!important}.entry-actions button{margin:0!important}.filter-scroll{scrollbar-width:none;gap:8px;margin:0 -18px 18px;padding:2px 18px 8px;display:flex;overflow-x:auto}.filter-scroll::-webkit-scrollbar{display:none}.filter-scroll button{white-space:nowrap;border:1px solid var(--border);color:var(--muted);background:#fff;border-radius:999px;padding:8px 13px;font-size:11px;font-weight:750}.filter-scroll button.active{background:var(--forest);border-color:var(--forest);box-shadow:0 6px 16px #153a2d29}.goal-toolbar{justify-content:space-between;align-items:center;margin:20px 0 14px;display:flex}.goal-toolbar p{color:var(--forest);margin:0;font-weight:800}.goal-toolbar span{color:var(--muted);font-size:11px}.goal-toolbar button{background:var(--gold-soft);color:#855f20;border:0;border-radius:999px;padding:9px 11px;font-weight:800}.goal-toolbar button,.recalc-note{align-items:center;gap:5px;font-size:10px;display:flex}.recalc-note{color:var(--green);margin:-4px 0 0}.welcome-story{overflow-y:auto}.danger-text{color:var(--danger)}@media (max-width:350px){.page{padding-left:14px;padding-right:14px}.auth-hero{padding-left:20px;padding-right:20px}.auth-hero h1{font-size:35px}.calorie-card{gap:10px}.ring{width:100px;height:100px}.macro-grid{gap:6px}.macro{padding:11px 8px}.bottom-nav{padding-left:4px;padding-right:4px}}@media (prefers-reduced-motion:reduce){*,:after,:before{transition:none!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (min-width:700px){.phone-shell{border-radius:28px;min-height:calc(100dvh - 28px);margin:14px auto}.bottom-nav{border-radius:0 0 28px 28px;bottom:14px}.modal-sheet{border-radius:28px;margin-bottom:14px}}.page{padding:14px 16px 100px}.topbar{padding:18px 16px 10px}.topbar h1{font-size:27px}.eyebrow{margin-bottom:5px}.muted{line-height:1.45}.brand{gap:9px}.brand-symbol{width:44px;height:44px;color:var(--forest);filter:drop-shadow(0 5px 10px #153a2d26);display:block}.brand-word{flex-direction:column;display:flex}.brand strong{letter-spacing:-.055em;font:800 27px/1 Georgia,serif}.brand small{letter-spacing:.1em;margin-top:3px;font-size:8px}.brand-compact .brand-symbol{width:36px;height:36px}.brand-compact strong{font-size:21px}.onboarding header{padding:17px 16px 11px}.onboarding .page{padding:15px 16px 104px}.onboarding .page>h1{font-size:31px}.sticky-actions{padding:11px 16px calc(11px + env(safe-area-inset-bottom))}.field-row{gap:9px}.form-stack{gap:12px}.choice-grid{gap:8px}.choice-grid button{min-height:62px}.target-hero{margin:12px 0;padding:19px}.target-hero strong{font-size:44px}.dashboard{padding-top:6px}.calorie-card{border-radius:18px;gap:14px;padding:13px}.ring{width:98px;height:98px}.ring strong{font-size:23px}.macro-grid{gap:7px;margin:10px 0}.macro{border-radius:12px;padding:11px 9px}.macro>strong{font-size:18px}.rhythm-card{margin:11px 0 4px;padding:14px}.meal-list{gap:14px;margin-top:18px}.history-day,.profile-card{margin-bottom:20px}.profile-card{padding:16px}.settings-card{margin-bottom:16px}.modal-sheet{padding-top:22px}.modal-heading{margin-bottom:16px}.modal-heading h2{font-size:26px}.action-card,.candidate,.product-card{margin-bottom:8px;padding:11px}.welcome-nav{height:58px;padding:10px 16px}.hero-art{aspect-ratio:4/3;background:#f8f1df;border-radius:26px 26px 48px;height:auto;min-height:228px;max-height:302px;margin:0 16px;box-shadow:0 17px 42px #55401c1c}.hero-art:after{display:none}.hero-art img{object-position:center center;animation:hero-breathe 7s ease-in-out infinite;transform:none}@keyframes hero-breathe{50%{transform:scale(1.018)}}.floating-pill{padding:7px 9px}.pill-scan{top:14%;left:3%}.pill-facts{bottom:12%;right:3%}.story-copy{padding:14px 22px 3px}.story-copy h1{margin-bottom:8px;font-size:31px;line-height:1.01}.story-copy>p:last-child{font-size:13px;line-height:1.4}.story-footer{padding:7px 18px calc(10px + env(safe-area-inset-bottom))}.story-dots{margin-bottom:9px}.wow-button{border-radius:15px;min-height:49px}.login-link{padding:8px}.goal-showcase,.rhythm-showcase{border-radius:27px;height:min(36dvh,300px);min-height:238px;margin:0 16px}.goal-medallion{width:145px;height:145px}.goal-medallion strong{font-size:38px}.orbit-one{width:235px;height:235px}.orbit-two{width:315px;height:315px}.rhythm-showcase{padding:21px 14px}.week-path span{width:34px;height:34px}.week-path:before{top:16px}.trophy-card{width:78%;margin-top:21px;padding:11px}.rhythm-showcase>img{object-position:center;opacity:.45;mix-blend-mode:multiply;border-radius:0;width:100%;height:78%;bottom:-14%;left:0;right:auto}.balance-card{border:1px solid var(--border);background:#fff;border-radius:18px;margin:12px 0;padding:14px;box-shadow:0 8px 24px #153a2d0e}.balance-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.balance-head h3{margin:0 0 3px;font:700 21px/1.05 Georgia,serif}.balance-head>div>span{color:var(--muted);font-size:10px}.metric-toggle{background:var(--cream);border:1px solid var(--border);border-radius:999px;padding:3px;display:flex}.metric-toggle button{color:var(--muted);background:0 0;border:0;border-radius:999px;padding:6px 8px;font-size:9px;font-weight:800}.metric-toggle button.active{background:var(--forest);color:#fff;box-shadow:0 3px 9px #153a2d29}.balance-chart{border-top:1px dashed #0000;grid-template-columns:repeat(7,1fr);gap:6px;height:108px;margin-top:12px;display:grid;position:relative}.balance-chart:before{content:"";left:0;right:0;bottom:var(--goal);pointer-events:none;border-top:1px dashed #b68a3a7a;position:absolute}.balance-chart>em{right:0;bottom:calc(var(--goal) + 3px);color:var(--gold);background:#fff;padding-left:4px;font-size:8px;font-style:normal;position:absolute}.balance-chart button{color:var(--muted);background:0 0;border:0;flex-direction:column;align-items:center;gap:5px;min-width:0;padding:0;font-size:9px;display:flex}.balance-chart button i{background:linear-gradient(#faf8f359,#ddece48c);border-radius:7px;justify-content:center;align-items:flex-end;width:100%;height:87px;display:flex;overflow:hidden}.balance-chart button b{background:var(--green);border-radius:5px 5px 2px 2px;width:56%;min-height:2px;transition:height .45s cubic-bezier(.2,.8,.2,1),width .2s;display:block}.balance-chart button.selected b{background:var(--gold);width:72%;box-shadow:0 4px 11px #b68a3a40}.balance-chart button.selected span{color:var(--forest);font-weight:850}.empty-illustrated{padding-top:22px}.empty-illustrated>img{object-fit:cover;mix-blend-mode:multiply;border-radius:22px;width:152px;height:104px;margin:0 auto 13px;display:block}.empty-illustrated h2{margin-bottom:5px}@media (max-height:700px){.welcome-nav{height:52px}.hero-art{width:calc(100% - 44px);min-height:205px;max-height:245px;margin-inline:22px}.goal-showcase,.rhythm-showcase{height:230px;min-height:0;margin-inline:22px}.story-copy{padding-top:10px}.story-copy h1{font-size:27px}.story-copy>p:last-child{font-size:12px}.story-dots{margin-bottom:6px}.login-link{padding:6px}}body,button,input,select{font-family:Inter Variable,Inter,ui-sans-serif,system-ui,sans-serif}.autofill-macros b,.balance-head h3,.brand strong,.coach-label b,.goal-medallion strong,.insight-score strong,.juggle-toast b,.rhythm-score strong,.ring strong,.section-title h3,.selected-food strong,.step-complete b,.target-hero strong,.trophy-card strong,h1,h2,h3{font-variation-settings:normal;font-family:Outfit Variable,Outfit,ui-sans-serif,system-ui,sans-serif}h1,h2{letter-spacing:-.035em}.button{letter-spacing:-.01em}.action-card strong,.candidate strong,.entry-card strong,.product-card strong{letter-spacing:-.018em}.onboarding-progress{justify-content:center;align-items:center;gap:28px;height:50px;padding:0 22px;display:flex;position:relative}.onboarding-progress:before{content:"";background:var(--border);height:2px;position:absolute;left:54px;right:54px}.onboarding-progress span{z-index:1;background:var(--cream);border:1px solid var(--border);width:27px;height:27px;color:var(--muted);border-radius:50%;place-items:center;font-size:10px;font-weight:850;transition:transform .35s cubic-bezier(.2,.9,.2,1.4),background .25s,color .25s;display:grid;position:relative}.onboarding-progress span.current{background:var(--gold);border-color:var(--gold);color:#fff;transform:scale(1.16);box-shadow:0 5px 16px #b68a3a47}.onboarding-progress span.complete{background:var(--forest);border-color:var(--forest);color:#fff;animation:check-arrive .45s cubic-bezier(.2,.9,.2,1.35)}.onboarding-progress svg{width:13px}.onboarding-page{animation:page-rise .48s cubic-bezier(.2,.8,.2,1)}@keyframes page-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes check-arrive{0%{transform:scale(.45)rotate(-18deg)}70%{transform:scale(1.18)rotate(4deg)}to{transform:none}}.step-complete{z-index:50;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#153a2d57;place-items:center;animation:veil-in .2s;display:grid;position:absolute;inset:0}.step-complete>div{background:#fff;border-radius:42px;flex-direction:column;justify-content:center;align-items:center;width:190px;min-height:190px;animation:reward-pop .48s cubic-bezier(.15,.9,.2,1.25);display:flex;position:relative;box-shadow:0 24px 70px #153a2d47}.save-success>span,.step-complete span{background:var(--forest);color:#fff;width:64px;height:64px;box-shadow:0 0 0 9px var(--green-soft);border-radius:50%;place-items:center;margin-bottom:16px;display:grid}.save-success>span svg,.step-complete span svg{stroke-width:3px;width:30px}.step-complete b{color:var(--forest);font-family:Fraunces Variable,serif;font-size:22px}.step-complete small{color:var(--muted);margin-top:4px;font-size:11px}.juggle-toast>i,.save-success>i,.step-complete i{background:var(--gold);border-radius:50%;width:8px;height:8px;animation:spark-out .75s ease-out both;position:absolute}.save-success>i:first-of-type,.step-complete i:first-of-type{top:38px;left:24px}.save-success>i:nth-of-type(2),.step-complete i:nth-of-type(2){background:#82a68e;animation-delay:60ms;top:53px;right:25px}.save-success>i:nth-of-type(3),.step-complete i:nth-of-type(3){background:#d87357;animation-delay:.12s;bottom:28px;right:48px}@keyframes veil-in{0%{opacity:0}}@keyframes reward-pop{0%{opacity:0;transform:scale(.7)translateY(16px)}to{opacity:1;transform:none}}@keyframes spark-out{0%{opacity:0;transform:scale(0)}45%{opacity:1;transform:scale(1.5)}to{opacity:.45;transform:scale(1)}}.welcome-links{grid-template-columns:1fr 1fr;gap:5px;margin-top:2px;display:grid}.welcome-links button{white-space:nowrap}.demo-link{color:#876426;background:0 0;border:0;justify-content:center;align-items:center;gap:5px;width:100%;padding:8px;font-size:11px;font-weight:850;display:flex}.demo-link:disabled{opacity:.55}.demo-error{color:var(--danger);text-align:center;margin:7px 0 0;font-size:10px}.app-view{animation:view-enter .38s cubic-bezier(.2,.8,.2,1)}@keyframes view-enter{0%{opacity:0;transform:translateY(7px)scale(.995)}to{opacity:1;transform:none}}.bottom-nav>button.active svg{animation:nav-pop .38s cubic-bezier(.2,.9,.2,1.4)}@keyframes nav-pop{50%{transform:translateY(-3px)scale(1.13)}}.add-button:active{transform:translateY(-18px)scale(.9)}.juggle-toast{z-index:70;top:calc(12px + env(safe-area-inset-top));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff5;border:1px solid #ffffffe6;border-radius:18px;align-items:center;gap:10px;width:min(340px,100% - 32px);padding:11px 14px;animation:toast-flight 2.2s both;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 18px 50px #153a2d33}.juggle-toast>span{background:var(--forest);color:#fff;border-radius:12px;flex:none;place-items:center;width:35px;height:35px;display:grid}.juggle-toast svg{width:18px}.juggle-toast div{flex-direction:column;display:flex}.juggle-toast b{color:var(--forest);font-family:Fraunces Variable,serif;font-size:15px}.juggle-toast small{color:var(--muted);font-size:10px}.juggle-toast>i:first-of-type{top:7px;right:32px}.juggle-toast>i:nth-of-type(2){background:#82a68e;bottom:9px;right:13px}.juggle-toast>i:nth-of-type(3){background:#d87357;top:4px;left:7px}@keyframes toast-flight{0%{opacity:0;transform:translate(-50%,-20px)scale(.94)}12%,82%{opacity:1;transform:translate(-50%)scale(1)}to{opacity:0;transform:translate(-50%,-9px)scale(.98)}}.save-success{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:420px;animation:reward-pop .48s cubic-bezier(.15,.9,.2,1.25);display:flex;position:relative}.save-success .eyebrow{margin:4px 0 7px}.save-success h2{margin-bottom:7px;font-size:29px}.save-success small{color:var(--muted);max-width:230px;line-height:1.5}.save-success>i:first-of-type{top:28%;left:22%}.save-success>i:nth-of-type(2){background:#82a68e;top:34%;right:20%}.save-success>i:nth-of-type(3){background:#d87357;bottom:27%;right:28%}.rhythm-tasks>div.done span{animation:check-arrive .48s cubic-bezier(.2,.9,.2,1.35)}.macro.progress>i b,.rhythm-track i{position:relative;overflow:hidden}.macro.progress>i b:after,.rhythm-track i:after{content:"";background:linear-gradient(90deg,#0000,#ffffffa6,#0000);animation:progress-shine 1.2s ease-out .35s;position:absolute;inset:0;transform:translate(-120%)}.ring{animation:ring-arrive .7s cubic-bezier(.2,.8,.2,1)}@keyframes progress-shine{to{transform:translate(120%)}}@keyframes ring-arrive{0%{opacity:.4;transform:rotate(-18deg)scale(.88)}to{opacity:1;transform:none}}.balance-card{animation:card-rise .5s 80ms both}.rhythm-card{animation:card-rise .5s .16s both}.meal-list{animation:card-rise .5s .24s both}@keyframes card-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.empty-illustrated>img,.entry-card img,.hero-art img,.image-picker img,.product-card img,.rhythm-showcase>img{max-width:100%;display:block}.hero-art img{aspect-ratio:4/3}.hero-art img,.rhythm-showcase>img{object-fit:cover}.image-picker{height:auto;min-height:220px}.image-picker,.image-picker img{aspect-ratio:4/3}.entry-card img,.product-card img{aspect-ratio:1}.empty-illustrated>img{aspect-ratio:3/2}.entry-card{animation:entry-in .38s both}.entry-card:nth-child(2){animation-delay:40ms}.entry-card:nth-child(3){animation-delay:80ms}@keyframes entry-in{0%{opacity:0;transform:translate(-7px)}to{opacity:1;transform:none}}@media (max-width:360px){.onboarding-progress{gap:22px}.welcome-links{grid-template-columns:1fr}.demo-link,.login-link{padding:5px}.juggle-toast{width:calc(100% - 20px)}}.insight-card{background:linear-gradient(150deg,#fffdf8,#f3ead8);border:1px solid #e8dcc5;border-radius:24px;margin:15px 0;padding:16px;animation:card-rise .5s .13s both;position:relative;overflow:hidden;box-shadow:0 14px 35px #55401c17}.insight-card:before{content:"";background:radial-gradient(circle,#b68a3a29,#0000 68%);border-radius:50%;width:150px;height:150px;position:absolute;top:-76px;right:-60px}.insight-top{grid-template-columns:76px 1fr;align-items:center;gap:13px;display:grid;position:relative}.insight-score{--score:0%;background:conic-gradient(var(--gold) var(--score),#b68a3a21 0);border-radius:50%;place-items:center;width:76px;height:76px;display:grid;position:relative;box-shadow:0 8px 18px #b68a3a26}.insight-score:before{content:"";background:#fffdf8;border-radius:50%;position:absolute;inset:6px}.insight-score span{text-align:center;flex-direction:column;display:flex;position:relative}.insight-score strong{color:var(--forest);font-variant-numeric:tabular-nums;font:750 25px/1 Fraunces Variable,serif}.insight-score small{color:var(--muted);margin-top:4px;font-size:8px}.insight-top .eyebrow{margin:0 0 3px;font-size:9px}.insight-top h3{color:var(--forest);margin:0 0 4px;font-size:18px;line-height:1.08}.insight-top p:last-child{color:var(--muted);margin:0;font-size:10px;line-height:1.45}.insight-metrics{grid-template-columns:repeat(3,1fr);gap:6px;margin:13px 0 10px;display:grid}.insight-metrics>div{background:#ffffffb8;border:1px solid #e8dcc5bf;border-radius:12px;flex-direction:column;gap:3px;padding:9px 8px;display:flex}.insight-metrics small{color:var(--muted);text-transform:uppercase;letter-spacing:.07em;font-size:8px}.insight-metrics b{color:var(--forest);font-size:11px}.insight-math{border-top:1px solid #b68a3a2e;padding-top:8px}.insight-math summary{color:#876426;cursor:pointer;align-items:center;gap:5px;padding:3px 0;font-size:10px;font-weight:800;list-style:none;display:flex}.insight-math summary::-webkit-details-marker{display:none}.insight-math summary svg{width:13px}.insight-math>div{gap:5px;padding:8px 2px 3px;animation:page-rise .25s;display:grid}.insight-math span{color:var(--muted);justify-content:space-between;font-size:10px;display:flex}.insight-math b{color:var(--forest);font-variant-numeric:tabular-nums}.insight-math p{color:var(--muted);margin:3px 0 0;font-size:9px;line-height:1.45}.coach-button{background:var(--forest);color:#fff;text-align:left;border:0;border-radius:15px;grid-template-columns:34px 1fr auto;align-items:center;gap:9px;width:100%;margin-top:11px;padding:11px 12px;display:grid;box-shadow:0 9px 22px #153a2d2e}.coach-button>svg:first-child{color:#f0ce87;background:#ffffff1a;border-radius:10px;width:34px;height:34px;padding:8px}.coach-button span{flex-direction:column;display:flex}.coach-button b{font-size:11px}.coach-button small{opacity:.65;margin-top:2px;font-size:8px}.coach-button>svg:last-child{opacity:.6;width:15px}.coach-button:disabled{opacity:.6}.coach-note{background:var(--forest);color:#fff;border-radius:17px;margin-top:11px;padding:13px;animation:reward-pop .4s cubic-bezier(.2,.8,.2,1.15)}.coach-label{align-items:center;gap:9px;display:flex}.coach-label>span{color:#f0ce87;background:#ffffff1a;border-radius:11px;place-items:center;width:34px;height:34px;display:grid}.coach-label svg{width:18px}.coach-label p{flex-direction:column;flex:1;margin:0!important;display:flex!important}.coach-label small{letter-spacing:.11em;color:#efcc83;font-size:8px}.coach-label b{font-family:Fraunces Variable,serif;font-size:15px;line-height:1.1}.coach-label em{text-transform:uppercase;letter-spacing:.08em;background:#ffffff1a;border-radius:99px;padding:4px 6px;font-size:7px;font-style:normal}.coach-note>p{opacity:.82;font-size:10px;line-height:1.5}.coach-action{background:#ffffff17;border-radius:11px;gap:8px;padding:9px;display:flex}.coach-action svg{color:#f0ce87;flex:none;width:16px}.coach-action span{font-size:10px;line-height:1.4}.coach-action small{letter-spacing:.1em;color:#efcc83;margin-bottom:2px;font-size:7px;display:block}.coach-note blockquote{color:#f2dcae;margin:10px 2px 0;font:italic 12px/1.4 Fraunces Variable,serif}.coach-disclaimer{text-align:center;color:var(--muted);margin:8px 0 -3px;font-size:8px}.food-thumb{object-fit:cover;background:var(--green-soft);box-shadow:0 0 0 2px #fff,0 5px 13px #153a2d21;border-radius:12px!important;width:52px!important;height:52px!important}.entry-card{border-radius:16px;grid-template-columns:52px 1fr auto;padding:9px;box-shadow:0 5px 16px #153a2d0b}.history-snapshot{color:#fff;background:linear-gradient(145deg,#173d30,#285f49);border-radius:21px;grid-template-columns:1fr 116px;align-items:center;gap:12px;margin:-2px 0 22px;padding:14px;display:grid;box-shadow:0 14px 30px #153a2d29}.history-snapshot .eyebrow{color:#edca82;margin:0 0 4px;font-size:8px}.history-snapshot h3{color:#fff;margin:0 0 5px;font-size:18px;line-height:1.1}.history-snapshot>div>span{opacity:.67;font-size:9px;line-height:1.45;display:block}.history-mosaic{justify-content:flex-end;align-items:center;height:76px;display:flex;position:relative}.history-mosaic .food-thumb{box-shadow:0 0 0 3px var(--forest),0 9px 20px #0003;position:absolute;border-radius:18px!important;width:64px!important;height:64px!important}.history-mosaic .food-thumb:first-child{right:44px;transform:rotate(-7deg)}.history-mosaic .food-thumb:nth-child(2){right:21px;transform:rotate(3deg)}.history-mosaic .food-thumb:nth-child(3){right:0;transform:rotate(9deg)}.history-day>.section-title{z-index:2;background:linear-gradient(var(--cream) 75%,transparent);margin-bottom:0;padding:8px 1px 12px;position:sticky;top:0}.history-day .meal-list>.alert{margin-bottom:8px}@media (max-width:350px){.insight-top{grid-template-columns:68px 1fr}.insight-score{width:68px;height:68px}.history-snapshot{grid-template-columns:1fr 96px}.history-mosaic{transform-origin:100%;transform:scale(.88)}}.brand-symbol{background:#fff;border-radius:14px;flex:none;place-items:center;width:48px;height:48px;padding:4px;display:grid;overflow:hidden;box-shadow:0 7px 20px #1976d224}.brand-symbol img{object-fit:contain;width:100%;height:100%;display:block}.brand-compact .brand-symbol{border-radius:12px;width:42px;height:42px}.brand strong{color:var(--forest);letter-spacing:-.045em;font-family:Outfit Variable,Outfit,sans-serif}.brand small{color:var(--muted);font-weight:650}.eyebrow{color:var(--green)}.title-with-evi{align-items:flex-end;gap:7px;height:39px;display:flex}.title-with-evi h1{margin:0}.title-with-evi img{object-fit:contain;object-position:center bottom;filter:drop-shadow(0 5px 7px #0d47a124);transform-origin:50% 100%;width:37px;height:46px;animation:evi-wave 4.6s ease-in-out infinite}@keyframes evi-wave{0%,82%,to{transform:rotate(0)}88%{transform:rotate(-3deg)}94%{transform:rotate(3deg)}}.welcome-story{background:radial-gradient(circle at 50% 28%,#fff 0,#f5f9ff 52%,#e3f2fd 100%)}.welcome-story:before{background-image:radial-gradient(#1976d224 1px,#0000 0)}.hero-art{background:#eef7ff;box-shadow:0 24px 60px #1976d21f}.floating-pill svg,.story-copy h1 em{color:var(--green)}.add-button,.button.primary,.search-box button{background:linear-gradient(135deg,var(--green),var(--forest));box-shadow:0 9px 24px #1976d23d}.button.primary:hover{background:var(--forest)}.button.secondary{color:var(--forest);border-color:var(--border)}.autofill-success,.coach-note,.history-snapshot,.profile-card,.rhythm-card,.target-hero{box-shadow:0 15px 34px #1976d233;background:linear-gradient(145deg,#0d47a1,#1976d2)!important}.coach-button{background:linear-gradient(135deg,#1976d2,#0d47a1);box-shadow:0 9px 22px #1976d233}.coach-button>svg:first-child,.coach-label>span{color:#dbeafe}.coach-note blockquote{color:#e3f2fd}.insight-card{background:linear-gradient(150deg,#fff,#eef7ff);border-color:#dbeafe;box-shadow:0 14px 35px #1976d217}.insight-card:before{background:radial-gradient(circle,#42a5f52e,#0000 68%)}.insight-score:before{background:#fff}.insight-math{border-color:#1976d229}.insight-math summary{color:var(--green)}.autofill-product small,.autofill-source>span svg,.coach-label small{color:#dbeafe!important}.history-snapshot .eyebrow{color:#dbeafe}.food-lookup .lookup-spinner,.suggestion-heading span svg{color:var(--green)!important}.bottom-nav>button.active{color:var(--green)}.streak-chip{background:var(--green-soft);color:var(--forest)}.streak-chip svg{fill:var(--green)}.filter-scroll button.active{background:var(--green);color:#fff}.ring{box-shadow:0 8px 24px #1976d21f}.modal-backdrop{background:#0d2b5075}.offline-banner{background:var(--forest);box-shadow:0 12px 40px #1976d238}@media (max-width:360px){.title-with-evi{gap:4px}.title-with-evi img{width:32px;height:40px}.topbar .brand-compact .brand-word{display:none}}.food-lookup-wrap{z-index:5;position:relative}.food-lookup>div{border:1px solid var(--border);background:#fff;border-radius:13px;align-items:center;height:51px;padding:0 12px;transition:border-color .18s,box-shadow .18s;display:flex}.food-lookup>div:focus-within{border-color:var(--gold);box-shadow:0 0 0 3px #b68a3a1a}.food-lookup svg{width:18px;color:var(--muted);flex:none}.food-lookup input{outline:0;flex:1;min-width:0;height:100%;box-shadow:none!important;border:0!important;padding:0 10px!important}.food-lookup .lookup-spinner{color:var(--gold)}.food-suggestions{z-index:20;border:1px solid var(--border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffffa;border-radius:17px;max-height:330px;padding:6px;animation:suggestion-open .22s;position:absolute;top:76px;left:0;right:0;overflow-y:auto;box-shadow:0 18px 45px #153a2d33}.food-suggestions button{text-align:left;width:100%;color:var(--ink);background:0 0;border:0;border-radius:12px;grid-template-columns:48px 1fr auto;align-items:center;gap:10px;padding:8px;display:grid}.food-suggestions button:focus-visible,.food-suggestions button:hover{background:var(--green-soft);outline:0}.food-suggestions button>span,.food-suggestions img{object-fit:cover;background:var(--green-soft);width:48px;height:48px;color:var(--green);border-radius:11px;place-items:center;display:grid}.food-suggestions button>div{flex-direction:column;min-width:0;display:flex}.food-suggestions strong{font-size:12px}.food-suggestions small,.food-suggestions strong{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.food-suggestions p,.food-suggestions small{color:var(--muted);font-size:9px}.food-suggestions p{margin:3px 0 0}.food-suggestions p b{color:var(--forest)}.food-suggestions button>svg{color:#a2aaa5;width:15px}.lookup-note{color:var(--muted);padding:6px 2px 0;font-size:9px;line-height:1.4;display:block}.selected-food{background:linear-gradient(145deg,#fff,#f5eddd);border:1px solid #e7dac2;border-radius:18px;grid-template-columns:68px 1fr 32px;align-items:center;gap:11px;margin-bottom:10px;padding:11px;animation:selected-arrive .4s cubic-bezier(.2,.85,.2,1.2);display:grid;box-shadow:0 9px 22px #55401c14}.selected-food-image{background:var(--green-soft);width:68px;height:68px;color:var(--green);border-radius:14px;place-items:center;display:grid;position:relative;overflow:visible}.selected-food-image>img{object-fit:cover;border-radius:14px;width:100%;height:100%}.selected-food-image>span{background:var(--forest);color:#fff;border-radius:50%;place-items:center;width:22px;height:22px;display:grid;position:absolute;bottom:-5px;right:-5px;box-shadow:0 0 0 3px #fff}.selected-food-image>span svg{width:12px}.selected-food>div:nth-child(2){flex-direction:column;min-width:0;display:flex}.selected-food small{letter-spacing:.1em;color:var(--gold);font-size:8px;font-weight:850}.selected-food strong{color:var(--forest);white-space:nowrap;text-overflow:ellipsis;font-family:Fraunces Variable,serif;font-size:16px;overflow:hidden}.selected-food p{color:var(--muted);margin:3px 0 0;font-size:9px}.selected-food>button{width:32px;height:32px;color:var(--muted);background:#fff;border:0;border-radius:10px;place-items:center;display:grid}.selected-food>button svg{width:15px}.source-strip{margin-bottom:12px}@keyframes suggestion-open{0%{opacity:0;transform:translateY(-5px)scale(.99)}to{opacity:1;transform:none}}@keyframes selected-arrive{0%{opacity:0;transform:translateY(8px)scale(.97)}to{opacity:1;transform:none}}.entry-steps{grid-template-columns:auto 1fr auto 1fr auto;align-items:start;gap:7px;margin:-2px 4px 17px;display:grid}.entry-steps>span{color:#a1aaa4;flex-direction:column;align-items:center;gap:4px;display:flex}.entry-steps i{border:1px solid var(--border);background:#fff;border-radius:50%;place-items:center;width:27px;height:27px;font-size:9px;font-style:normal;font-weight:850;transition:all .25s;display:grid}.entry-steps b{font-size:8px}.entry-steps em{background:var(--border);border-radius:2px;height:2px;margin-top:13px}.entry-steps span.current{color:var(--gold)}.entry-steps .current i{background:var(--gold);border-color:var(--gold);color:#fff;transform:scale(1.08);box-shadow:0 5px 14px #b68a3a3d}.entry-steps span.done{color:var(--forest)}.entry-steps .done i{background:var(--forest);border-color:var(--forest);color:#fff}.entry-steps .done svg{width:13px}.entry-steps .done+em{background:linear-gradient(90deg,var(--forest),var(--gold))}.suggestion-heading{border-bottom:1px solid #eef0ec;justify-content:space-between;align-items:center;margin-bottom:2px;padding:6px 8px 7px;display:flex}.suggestion-heading span{color:var(--forest);align-items:center;gap:5px;font-size:10px;font-weight:850;display:flex}.suggestion-heading span svg{width:13px;color:var(--gold)}.suggestion-heading small{color:var(--muted);font-size:8px}.autofill-success{color:#fff;background:linear-gradient(145deg,#153a2d,#245d45);border-radius:20px;margin-top:1px;padding:13px;scroll-margin-top:14px;animation:autofill-reveal .5s cubic-bezier(.16,.85,.2,1.15);position:relative;overflow:hidden;box-shadow:0 15px 32px #153a2d30}.autofill-success:after{content:"";background:#ffffff0b;border-radius:50%;width:130px;height:130px;position:absolute;top:-65px;right:-60px}.autofill-product{z-index:1;grid-template-columns:66px 1fr;align-items:center;gap:11px;display:grid;position:relative}.autofill-image{width:66px;height:66px;color:var(--green);background:#eef3ed;border-radius:15px;place-items:center;display:grid;position:relative}.autofill-image>img{object-fit:cover;border-radius:15px;width:100%;height:100%}.autofill-image>span{background:var(--gold);color:#fff;width:23px;height:23px;box-shadow:0 0 0 3px var(--forest);border-radius:50%;place-items:center;display:grid;position:absolute;bottom:-5px;right:-5px}.autofill-image>span svg{stroke-width:3px;width:12px}.autofill-product>div:last-child{min-width:0}.autofill-product small{color:#efcb80;letter-spacing:.1em;align-items:center;gap:4px;font-size:8px;font-weight:850;display:flex}.autofill-product small svg{width:12px}.autofill-product h3{color:#fff;margin:3px 0 1px;font-size:18px}.autofill-product h3,.autofill-product p{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.autofill-product p{opacity:.64;margin:0;font-size:9px}.autofill-macros{z-index:1;grid-template-columns:repeat(4,1fr);gap:5px;margin:12px 0 10px;display:grid;position:relative}.autofill-macros>span{background:#ffffff17;border:1px solid #ffffff14;border-radius:10px;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:2px;padding:7px 5px;display:flex}.autofill-macros small{text-align:center;opacity:.58;width:100%;font-size:7px}.autofill-macros b{font:700 14px/1 Fraunces Variable,serif}.autofill-macros em{opacity:.6;font-size:7px;font-style:normal}.autofill-source{z-index:1;border-top:1px solid #ffffff1a;justify-content:space-between;align-items:center;padding-top:9px;display:flex;position:relative}.autofill-source>span{color:#d9eadf;align-items:center;gap:4px;font-size:8px;display:flex}.autofill-source>span svg{color:#efcb80;width:12px}.autofill-source button{color:#fff;background:#ffffff1a;border:0;border-radius:999px;padding:6px 9px;font-size:8px;font-weight:800}.autofill-success+.field{margin-top:2px}@keyframes autofill-reveal{0%{opacity:0;transform:translateY(-8px)scale(.96)}70%{transform:translateY(2px)scale(1.01)}to{opacity:1;transform:none}}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}