:root{--paper:#f1eddf;--paper-light:#faf8f0;--paper-deep:#e4deca;--ink:#173e34;--ink-2:#2d5147;--muted:#718078;--leaf:#2c715e;--leaf-dark:#174b3d;--lime:#c9d96d;--tomato:#e25535;--gold:#d69b35;--line:#173e3429;--shadow:0 22px 60px #27392e21;--serif:"Iowan Old Style", "Palatino Linotype", "Book Antiqua", Palatino, Georgia, serif;--sans:"Avenir Next", Avenir, "Trebuchet MS", sans-serif;--radius:24px}*{box-sizing:border-box;margin:0;padding:0}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;scroll-behavior:smooth}body{background:var(--paper);min-height:100dvh;color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;line-height:1.5;overflow-x:hidden}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:inherit;text-decoration:none}::selection{color:var(--paper-light);background:var(--leaf)}:focus-visible{outline:3px solid var(--tomato);outline-offset:3px}.brand{letter-spacing:.16em;align-items:baseline;font-size:25px;font-weight:900;line-height:1;display:inline-flex;position:relative}.brand i{color:var(--tomato);font-style:normal}.brand b{color:var(--lime);font-size:9px;position:absolute;top:-5px;right:-1px}.brand:hover{text-decoration:none}.brand-compact{font-size:20px}.kicker{color:var(--tomato);letter-spacing:.17em;text-transform:uppercase;font-size:12px;font-weight:800}.muted{color:var(--muted)}.microcopy{max-width:260px;color:var(--muted);letter-spacing:.04em;font-size:12px}.button{cursor:pointer;letter-spacing:.06em;border:0;border-radius:999px;justify-content:center;align-items:center;gap:12px;min-height:50px;padding:13px 22px;font-size:14px;font-weight:800;transition:transform .16s,box-shadow .2s,background .2s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button:active{transform:scale(.98)}.button:disabled{opacity:.55;cursor:wait;transform:none}.button-primary{color:#fffdf7;background:var(--leaf-dark);box-shadow:0 10px 24px #174b3d38}.button-primary:hover{background:var(--leaf);box-shadow:0 14px 30px #174b3d42}.button-secondary{color:#fff;background:var(--tomato)}.button-quiet{border:1px solid var(--line);background:0 0}.button-block{width:100%}.button-large{min-height:61px;padding:17px 28px}.pill-link{border:1px solid var(--ink);border-radius:999px;padding:8px 18px;font-size:13px;font-weight:800}.text-button{color:var(--leaf);cursor:pointer;background:0 0;border:0;padding:4px;font-size:13px;font-weight:800;text-decoration:underline}.icon-button,.close-button{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;font-size:22px;display:grid}.landing{background:var(--paper);min-height:100vh}.landing:before{z-index:0;pointer-events:none;content:"";opacity:.32;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.07'/%3E%3C/svg%3E");position:fixed;inset:0}.landing-nav,.landing-hero,.manifesto,.landing-footer{z-index:1;position:relative}.landing-nav{justify-content:space-between;align-items:center;max-width:1220px;margin:auto;padding:28px 34px;display:flex}.landing-hero{grid-template-columns:1.02fr .98fr;align-items:center;gap:60px;max-width:1220px;min-height:700px;margin:0 auto;padding:70px 34px 110px;display:grid}.landing-hero>*{min-width:0}.hero-copy h1{font-family:var(--serif);letter-spacing:-.065em;margin:22px 0 30px;font-size:clamp(62px,7.1vw,108px);font-weight:400;line-height:.86}.hero-copy h1 em{color:var(--leaf);white-space:nowrap;font-style:italic}.hero-lede{max-width:570px;font-family:var(--serif);font-size:clamp(20px,2vw,27px);line-height:1.36}.hero-actions{align-items:center;gap:24px;margin-top:38px;display:flex}.hero-visual{place-items:center;min-height:520px;display:grid;position:relative}.orbit{border:1px solid #173e342b;border-radius:50%;position:absolute}.orbit:before{content:"";background:var(--tomato);border-radius:50%;width:12px;height:12px;position:absolute}.orbit-one{width:510px;height:380px;transform:rotate(-15deg)}.orbit-one:before{top:56px;right:38px}.orbit-two{width:390px;height:510px;transform:rotate(24deg)}.orbit-two:before{background:var(--lime);bottom:70px;left:18px}.preview-card{z-index:2;width:min(100%,390px);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#faf8f0e0;border:1px solid #173e341f;border-radius:32px;padding:25px;position:relative;transform:rotate(2deg)}.preview-date{justify-content:space-between;align-items:center;display:flex}.preview-date span,.preview-meal small{color:var(--muted);letter-spacing:.14em;font-size:10px;font-weight:900}.preview-date strong{font-family:var(--serif);font-size:18px}.preview-score{background:conic-gradient(var(--tomato) 0 72%, var(--paper-deep) 72%);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:130px;height:130px;margin:26px auto 32px;display:flex;position:relative}.preview-score:before{border-radius:inherit;content:"";background:var(--paper-light);position:absolute;inset:9px}.preview-score b,.preview-score span{position:relative}.preview-score b{font-family:var(--serif);font-size:48px;font-weight:400;line-height:1}.preview-score span{color:var(--muted);text-transform:uppercase;font-size:9px}.preview-meal{border-top:1px solid var(--line);grid-template-columns:42px 1fr auto;align-items:center;gap:10px;padding:14px 2px;display:grid}.preview-meal>i{color:var(--muted);font-size:11px;font-style:normal}.preview-meal div{flex-direction:column;display:flex}.preview-meal div strong{font-family:var(--serif);font-size:15px}.preview-meal div span{color:var(--leaf);font-size:10px}.preview-meal>b{font-size:12px}.preview-meal.active{background:var(--ink);color:#fff;border:0;border-radius:16px;margin:0 -13px;padding:14px 13px}.preview-meal.active small,.preview-meal.active>i{color:#a9bdb6}.preview-meal.active div span{color:var(--lime)}.swap-stamp{z-index:3;color:#fff;background:var(--tomato);text-align:center;letter-spacing:.14em;border-radius:50%;place-content:center;width:116px;height:116px;font-size:9px;font-weight:800;line-height:1.45;display:grid;position:absolute;bottom:42px;right:0;transform:rotate(-10deg);box-shadow:0 12px 30px #e2553540}.swap-stamp strong{font-size:22px;line-height:1}.manifesto{color:var(--paper-light);background:var(--ink);padding:100px max(34px,50vw - 576px)}.manifesto>p{color:var(--lime);letter-spacing:.2em;font-size:11px;font-weight:900}.manifesto h2{max-width:740px;font-family:var(--serif);letter-spacing:-.04em;margin:15px 0 70px;font-size:clamp(44px,6vw,76px);font-weight:400;line-height:.96}.manifesto-grid{background:#ffffff24;grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.manifesto-grid article{background:var(--ink);padding:30px 30px 10px 0}.manifesto-grid article+article{padding-left:30px}.manifesto-grid span{color:var(--tomato);font-family:var(--serif);font-size:15px}.manifesto-grid h3{font-family:var(--serif);margin:20px 0 12px;font-size:25px;font-weight:400}.manifesto-grid p{color:#adbbb6;font-size:14px;line-height:1.7}.landing-footer{grid-template-columns:auto 1fr auto;align-items:center;gap:40px;max-width:1220px;margin:auto;padding:48px 34px;display:grid}.landing-footer>p{color:var(--muted);font-size:12px}.landing-footer div{gap:24px;font-size:12px;font-weight:700;display:flex}.reveal{animation:.75s cubic-bezier(.2,.7,.2,1) both rise}.reveal-2{animation-delay:80ms}.reveal-3{animation-delay:.18s}.reveal-4{animation-delay:.28s}@keyframes rise{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.auth-shell{background:var(--paper-light);grid-template-columns:minmax(260px,.75fr) minmax(500px,1.25fr);min-height:100dvh;display:grid}.auth-brand{background:var(--ink);justify-content:center;align-items:flex-start;min-height:100%;padding:40px;display:flex;position:relative;overflow:hidden}.auth-brand .brand{color:#fff}.auth-brand:before,.auth-brand:after{content:"";border:1px solid #c9d96d57;border-radius:50%;position:absolute}.auth-brand:before{width:520px;height:720px;bottom:-390px;left:-160px;transform:rotate(35deg)}.auth-brand:after{width:300px;height:500px;bottom:-210px;right:-150px;transform:rotate(-24deg)}.auth-card{width:min(100% - 48px,480px);margin:auto;padding:70px 0}.auth-card h1{font-family:var(--serif);letter-spacing:-.05em;margin:12px 0;font-size:clamp(44px,6vw,68px);font-weight:400;line-height:.95}.auth-form{flex-direction:column;gap:19px;margin-top:38px;display:flex}.auth-form label,.field{flex-direction:column;gap:7px;display:flex}.auth-form label>span,.field>span,.swap-prompt>span,.auth-form label{letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:900}.input,.textarea,.unit-input{border:1px solid var(--line);width:100%;color:var(--ink);letter-spacing:0;text-transform:none;background:#ffffff8f;border-radius:14px;font-size:15px;font-weight:500;transition:border .2s,box-shadow .2s}.input{height:52px;padding:0 15px}.textarea{resize:vertical;min-height:104px;padding:14px 15px}.input:focus,.textarea:focus,.unit-input:focus-within{border-color:var(--leaf);outline:0;box-shadow:0 0 0 4px #2c715e1a}.auth-switch{color:var(--muted);text-align:center;font-size:14px}.auth-switch a,.legal-copy a{color:var(--leaf);font-weight:800;text-decoration:underline}.legal-copy{color:var(--muted);text-align:center;margin-top:24px;font-size:11px}.notice{border-radius:13px;padding:12px 14px;font-size:13px;line-height:1.5}.notice-error{color:#8f2c1b;background:#fae0d8;border:1px solid #efb5a6}.notice-ok{color:var(--leaf-dark);background:#e5eed2;border:1px solid #c8d99a}.onboarding-shell{background:var(--paper);min-height:100dvh;padding:0 20px 80px}.onboarding-header{justify-content:space-between;align-items:center;max-width:980px;height:78px;margin:auto;display:flex}.onboarding-header>span{color:var(--muted);letter-spacing:.15em;font-size:10px;font-weight:900}.onboarding-card{border:1px solid var(--line);background:var(--paper-light);max-width:900px;box-shadow:var(--shadow);border-radius:34px;margin:16px auto 0;padding:0 54px 52px}.step-rail{border-bottom:1px solid var(--line);grid-template-columns:repeat(4,1fr);align-items:center;height:84px;display:grid;position:relative}.step-rail:before,.step-progress{content:"";background:var(--line);height:1px;position:absolute;top:35px;left:9%;right:9%}.step-progress{background:var(--leaf);max-width:82%;transition:width .35s;right:auto}.step-rail button{z-index:1;color:var(--muted);cursor:default;letter-spacing:.12em;text-transform:uppercase;background:0 0;border:0;flex-direction:column;align-items:center;gap:6px;font-size:9px;font-weight:900;display:flex;position:relative}.step-rail button.done{cursor:pointer}.step-rail button i{border:1px solid var(--line);background:var(--paper-light);border-radius:50%;place-items:center;width:28px;height:28px;font-size:10px;font-style:normal;display:grid}.step-rail button.active{color:var(--ink)}.step-rail button.active i{color:#fff;border-color:var(--tomato);background:var(--tomato)}.step-rail button.done i{color:#fff;border-color:var(--leaf);background:var(--leaf)}.step-heading{text-align:center;max-width:680px;margin:48px auto 38px}.step-heading h1{font-family:var(--serif);letter-spacing:-.045em;margin:10px 0 13px;font-size:clamp(38px,6vw,55px);font-weight:400;line-height:1}.step-heading>p:last-child{color:var(--muted);font-family:var(--serif);font-size:17px}.profile-form{grid-template-columns:repeat(2,1fr);gap:22px 18px;display:grid}.field-wide{grid-column:1/-1}.field>span{color:var(--ink-2)}.field>small{color:var(--muted);font-size:11px}.unit-input{align-items:center;height:52px;display:flex}.unit-input input{width:100%;height:100%;color:var(--ink);background:0 0;border:0;outline:0;padding:0 0 0 15px}.unit-input span{color:var(--muted);padding:0 15px;font-size:12px;font-weight:800}.segments{border:1px solid var(--line);background:var(--paper);border-radius:14px;gap:4px;min-height:52px;padding:4px;display:flex}.segments button{cursor:pointer;background:0 0;border:0;border-radius:10px;flex:1;font-size:12px;font-weight:800}.segments button[aria-pressed=true]{color:#fff;background:var(--leaf);box-shadow:0 5px 14px #174b3d26}.goal-grid{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.goal-grid button{border:1px solid var(--line);cursor:pointer;text-align:left;background:0 0;border-radius:15px;flex-direction:column;justify-content:flex-end;align-items:flex-start;min-height:90px;padding:13px;display:flex}.goal-grid button b{font-family:var(--serif);font-size:16px}.goal-grid button span{color:var(--muted);font-size:10px}.goal-grid button[aria-pressed=true]{color:#fff;border-color:var(--leaf);background:var(--leaf-dark)}.goal-grid button[aria-pressed=true] span{color:#b8cbc5}.choice-list{grid-template-columns:repeat(5,1fr);gap:7px;display:grid}.choice-list button{border:1px solid var(--line);cursor:pointer;text-align:left;background:0 0;border-radius:15px;flex-direction:column;align-items:flex-start;min-height:115px;padding:13px;display:flex}.choice-list button i{border:1px solid var(--line);border-radius:50%;width:17px;height:17px;margin-bottom:auto}.choice-list button b{font-family:var(--serif);font-size:14px}.choice-list button span{color:var(--muted);font-size:9px;line-height:1.35}.choice-list button[aria-pressed=true]{border-color:var(--leaf);background:#e8edda}.choice-list button[aria-pressed=true] i{border:5px solid var(--leaf)}.range{width:100%;height:7px;accent-color:var(--leaf);margin:12px 0 4px}.field output{color:var(--leaf);font-family:var(--serif);font-size:15px}.health-note{border-left:4px solid var(--tomato);background:#fae8dc;border-radius:0 15px 15px 0;padding:20px 22px}.health-note b{font-family:var(--serif);font-size:19px}.health-note p{color:#705a50;margin-top:4px;font-size:13px}.consent{border:1px solid var(--line);cursor:pointer;border-radius:15px;align-items:flex-start;gap:12px;padding:18px;display:flex}.consent input{width:20px;height:20px;accent-color:var(--leaf);flex:none}.consent span{color:var(--muted);font-size:12px}.consent b{color:var(--ink)}.step-actions{justify-content:flex-end;gap:10px;margin-top:35px;display:flex}.onboarding-card>.notice{margin-top:24px}.generating{background:#eef1df;border:1px solid #c9d69b;border-radius:15px;align-items:center;gap:17px;margin-top:25px;padding:18px;display:flex}.generating>div:last-child{flex-direction:column;display:flex}.generating strong{font-family:var(--serif);font-size:17px}.generating span{color:var(--muted);font-size:11px}.leaf-loader{flex:none;width:42px;height:35px;position:relative}.leaf-loader i{background:var(--leaf);border-radius:100% 0;width:20px;height:12px;animation:1.2s infinite alternate leaf;position:absolute}.leaf-loader i:nth-child(2){background:var(--lime);animation-delay:.2s;top:10px;left:18px;transform:rotate(120deg)}.leaf-loader i:nth-child(3){background:var(--tomato);animation-delay:.4s;top:20px;left:5px;transform:rotate(230deg)}@keyframes leaf{to{opacity:.3;transform:translateY(-4px)rotate(35deg)}}.dashboard-shell{width:min(100% - 32px,760px);min-height:100dvh;padding:0 0 calc(70px + env(safe-area-inset-bottom));margin:auto}.dash-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:78px;display:flex}.dash-user{align-items:center;gap:10px;font-size:11px;font-weight:800;display:flex}.dash-user a{background:#ffffff73;border-radius:999px;padding:7px 10px}.dash-user form button{color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:11px}.dash-intro{justify-content:space-between;align-items:flex-end;gap:20px;padding:42px 0 20px;display:flex}.dash-intro h1{max-width:570px;font-family:var(--serif);letter-spacing:-.055em;text-wrap:balance;margin-top:8px;font-size:clamp(42px,8vw,65px);font-weight:400;line-height:.92}.target-seal{border:1px solid var(--tomato);width:100px;height:100px;color:var(--tomato);border-radius:50%;flex-direction:column;flex:none;justify-content:center;align-items:center;display:flex;transform:rotate(5deg)}.target-seal b{font-family:var(--serif);font-size:25px;font-weight:400;line-height:1}.target-seal span{letter-spacing:.1em;text-transform:uppercase;margin-top:3px;font-size:9px;font-weight:900}.plan-summary{max-width:640px;color:var(--muted);font-family:var(--serif);padding-bottom:30px;font-size:15px;line-height:1.6}.ai-model-picker{background:linear-gradient(125deg,#1f665417,#ffffff7a 58%,#d69b3517);border:1px solid #1f665433;border-radius:22px;grid-template-columns:minmax(145px,.75fr) minmax(330px,1.5fr);align-items:center;gap:13px 18px;width:100%;margin:0 0 29px;padding:14px;display:grid;position:relative;overflow:hidden;box-shadow:0 9px 30px #21372e0d}.ai-model-picker:after{content:"";pointer-events:none;border:1px solid #1f665417;border-radius:70% 0;width:105px;height:105px;position:absolute;top:-45px;left:38%;transform:rotate(31deg)}.ai-model-copy{z-index:1;align-items:center;gap:11px;display:flex;position:relative}.ai-model-spark{width:37px;height:37px;color:var(--paper-light);background:var(--leaf);border-radius:50%;flex:none;place-items:center;font-size:15px;display:grid;box-shadow:0 5px 15px #1f665433}.ai-model-copy p{font-family:var(--serif);font-size:19px;line-height:1}.ai-model-copy small{color:var(--muted);margin-top:5px;font-size:9px;line-height:1.25;display:block}.ai-model-options{z-index:1;grid-template-columns:1fr 1fr;gap:7px;display:grid;position:relative}.ai-model-options button{min-width:0;color:var(--ink);text-align:left;cursor:pointer;background:#ffffff8c;border:1px solid #0000;border-radius:14px;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:8px;padding:10px;transition:border-color .2s,background .2s,transform .2s,box-shadow .2s;display:grid}.ai-model-options button:hover:not(:disabled){border-color:#1f665440;transform:translateY(-1px)}.ai-model-options button.active{background:#ffffffeb;border-color:#1f665461;box-shadow:0 5px 16px #1f665417}.ai-model-options button:disabled{cursor:not-allowed;opacity:.48}.ai-model-options button>i{border:1px solid #1f665480;border-radius:50%;width:9px;height:9px}.ai-model-options button.active>i{border:2px solid var(--paper-light);background:var(--leaf);box-shadow:0 0 0 2px var(--leaf)}.ai-model-options button span{flex-direction:column;min-width:0;display:flex}.ai-model-options button b{font-family:var(--serif);font-size:15px;font-weight:600;line-height:1}.ai-model-options button small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-top:4px;font-size:8px;overflow:hidden}.ai-model-options button em{color:var(--leaf);letter-spacing:.08em;text-transform:uppercase;background:#1f66541a;border-radius:999px;padding:3px 5px;font-size:7px;font-style:normal;font-weight:900}.ai-model-status{min-height:12px;color:var(--muted);text-align:right;grid-column:1/-1;margin:-4px 3px 0;font-size:8px;transition:color .2s}.ai-model-status.visible{color:var(--leaf)}.week-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(7,1fr);height:82px;display:grid}.week-strip button{cursor:pointer;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-width:0;display:flex;position:relative}.week-strip button span{height:12px;color:var(--muted);letter-spacing:.08em;font-size:9px;font-weight:900}.week-strip button b{font-family:var(--serif);font-size:19px;font-weight:400}.week-strip button i{height:9px;color:var(--leaf);font-size:9px;font-style:normal}.week-strip button.active:before{z-index:-1;content:"";background:var(--ink);border-radius:50%;width:42px;height:42px;position:absolute}.week-strip button.active b{color:#fff}.week-strip button.active span{color:var(--tomato);transform:translateY(-5px)}.nutrition-board{color:#fff;background:var(--ink);border-radius:28px;grid-template-columns:190px 1fr;align-items:center;gap:35px;margin:28px 0 42px;padding:27px 31px;display:grid;box-shadow:0 20px 44px #173e342e}.progress-ring{--progress:0;background:conic-gradient(var(--lime) calc(var(--progress) * 1%), #ffffff1a 0);border-radius:50%;place-items:center;width:160px;height:160px;display:grid;position:relative}.progress-ring.over-target{background:conic-gradient(var(--tomato) calc(var(--progress) * 1%), #ffffff1a 0)}.progress-ring:before{border-radius:inherit;content:"";background:var(--ink);position:absolute;inset:10px}.progress-ring>div{grid-template-columns:auto auto;align-items:baseline;display:grid;position:relative}.progress-ring b{font-family:var(--serif);font-size:58px;font-weight:400;line-height:1}.progress-ring span{color:var(--lime);font-size:16px}.progress-ring.over-target span{color:#f3a28c}.progress-ring small{color:#aabbb5;letter-spacing:.06em;text-align:center;text-transform:uppercase;grid-column:1/-1;font-size:9px}.macro-board{flex-direction:column;gap:17px;display:flex}.macro-grid{grid-template-columns:repeat(3,1fr);gap:13px;display:grid}.macro>div{justify-content:space-between;align-items:baseline;gap:5px;display:flex}.macro>div span{color:#b5c3be;letter-spacing:.06em;text-transform:uppercase;font-size:9px;font-weight:800}.macro>div b{font-family:var(--serif);font-size:17px;font-weight:400}.macro>div b small{color:#aabbb5;font-family:var(--sans);font-size:9px}.macro>i{background:#ffffff1f;border-radius:9px;height:4px;margin-top:4px;display:block;overflow:hidden}.macro>i em{border-radius:inherit;height:100%;transition:width .4s;display:block}.macro>small{color:#789088;font-size:9px}.day-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:19px;display:flex}.day-heading p{color:var(--tomato);letter-spacing:.13em;font-size:10px;font-weight:900}.day-heading h2{max-width:530px;font-family:var(--serif);margin-top:4px;font-size:clamp(27px,6vw,38px);font-weight:400;line-height:1.05}.day-heading>span{color:var(--muted);flex:none;font-size:10px;font-weight:800}.meal-list{flex-direction:column;gap:12px;display:flex}.meal-card{border:1px solid var(--line);background:#faf8f0bd;border-radius:21px;transition:opacity .2s,border .2s,transform .2s;overflow:hidden}.meal-card:hover{border-color:#173e3447}.meal-done{opacity:.67}.meal-main{cursor:pointer;text-align:left;background:0 0;border:0;grid-template-columns:38px 1fr 62px;align-items:center;gap:12px;width:100%;padding:18px 18px 10px;display:grid}.meal-order{color:var(--tomato);font-family:var(--serif);font-size:14px}.meal-copy small{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:9px;font-weight:900}.meal-copy h3{font-family:var(--serif);margin:2px 0;font-size:21px;font-weight:400;line-height:1.15}.portion-badge{color:var(--leaf-dark);letter-spacing:.08em;text-transform:uppercase;background:#dfe8c2;border-radius:999px;margin:3px 0 4px;padding:3px 7px;font-size:9px;font-weight:900;display:inline-flex}.meal-copy p{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.meal-kcal{text-align:right;grid-template-columns:1fr auto;align-items:baseline;display:grid}.meal-kcal b{font-family:var(--serif);font-size:21px;font-weight:400}.meal-kcal span{color:var(--muted);text-transform:uppercase;grid-column:1;font-size:9px}.meal-kcal i{color:var(--tomato);grid-area:1/2/3;padding-left:8px;font-size:18px;font-style:normal}.meal-macros{color:var(--muted);gap:13px;margin-left:68px;padding:0 18px 14px;font-size:9px;display:flex}.meal-macros b{color:var(--ink)}.meal-detail{border-top:1px solid var(--line);grid-template-columns:.9fr 1.1fr;gap:28px;margin:0 18px 12px 68px;padding:19px 0;animation:.22s both detail-in;display:grid}@keyframes detail-in{0%{opacity:0;transform:translateY(-7px)}}.meal-detail h4{color:var(--tomato);letter-spacing:.13em;text-transform:uppercase;margin-bottom:9px;font-size:9px}.meal-detail ul{list-style:none}.meal-detail li{justify-content:space-between;gap:12px;padding:3px 0;font-size:11px;display:flex}.meal-detail li b{flex:none;font-weight:800}.meal-detail p{color:var(--muted);font-family:var(--serif);font-size:14px;line-height:1.55}.meal-actions{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.meal-actions button{cursor:pointer;letter-spacing:.04em;background:0 0;border:0;min-height:43px;font-size:10px;font-weight:900}.meal-actions button+button{border-left:1px solid var(--line)}.complete-button{justify-content:center;align-items:center;gap:7px;display:flex}.complete-button i{border:1px solid var(--leaf);color:#fff;border-radius:50%;place-items:center;width:15px;height:15px;font-size:9px;font-style:normal;display:grid}.complete-button.checked{color:var(--leaf)}.complete-button.checked i{background:var(--leaf)}.complete-button small{color:var(--muted);font-size:9px;font-weight:800}.swap-button{color:var(--tomato)}.share-button{color:var(--leaf)}.food-diary{border:1px solid var(--line);background:#faf8f09e;border-radius:27px;margin:0 0 44px;padding:26px}.diary-heading{justify-content:space-between;align-items:center;gap:18px;display:flex}.diary-heading h2{font-family:var(--serif);letter-spacing:-.035em;margin-top:2px;font-size:31px;font-weight:400}.diary-heading .button{min-height:42px;padding:10px 17px;font-size:11px}.diary-empty{width:100%;color:var(--ink);cursor:pointer;text-align:left;background:#ffffff59;border:1px dashed #173e3447;border-radius:17px;grid-template-columns:42px 1fr;align-items:center;gap:13px;margin-top:19px;padding:16px;display:grid}.diary-empty>span{color:#fff;background:var(--leaf);border-radius:50%;place-items:center;width:38px;height:38px;font-size:22px;display:grid}.diary-empty b{font-family:var(--serif);font-size:16px;font-weight:400}.diary-empty p{color:var(--muted);font-size:10px}.diary-list{flex-direction:column;gap:8px;margin-top:18px;display:flex}.diary-list article{border-top:1px solid var(--line);grid-template-columns:34px minmax(0,1fr) auto 24px;align-items:center;gap:11px;padding:13px 11px;display:grid;position:relative}.diary-log-mark{color:#fff;background:var(--tomato);border-radius:50%;place-items:center;width:31px;height:31px;font-size:14px;display:grid}.diary-log-copy{min-width:0}.diary-log-copy small{color:var(--tomato);letter-spacing:.09em;font-size:9px;font-weight:900}.diary-log-copy h3{font-family:var(--serif);text-overflow:ellipsis;white-space:nowrap;font-size:17px;font-weight:400;line-height:1.2;overflow:hidden}.diary-log-copy p{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.diary-log-values{text-align:right;grid-template-columns:auto auto;align-items:baseline;min-width:104px;display:grid}.diary-log-values b{font-family:var(--serif);font-size:20px;font-weight:400}.diary-log-values>span{color:var(--muted);padding-left:3px;font-size:9px}.diary-log-values small{color:var(--muted);grid-column:1/-1;font-size:9px}.diary-delete{width:24px;height:24px;color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:17px}.diary-disclaimer{color:var(--muted);margin-top:13px;font-size:9px;line-height:1.5}.vision-tools{margin:0 0 44px}.vision-tools-heading{justify-content:space-between;align-items:end;gap:24px;margin-bottom:15px;display:flex}.vision-tools-heading h2{font-family:var(--serif);letter-spacing:-.035em;margin-top:2px;font-size:31px;font-weight:400}.vision-tools-heading>p{max-width:290px;color:var(--muted);font-family:var(--serif);text-align:right;font-size:14px}.vision-tool-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.vision-tool-card{border:1px solid var(--line);cursor:pointer;text-align:left;border-radius:24px;grid-template-columns:64px 1fr 22px;align-items:center;gap:15px;min-height:148px;padding:20px;transition:transform .2s,box-shadow .2s;display:grid;position:relative;overflow:hidden}.vision-tool-card:after{content:"";opacity:.09;border:1px solid;border-radius:50%;width:130px;height:130px;position:absolute;bottom:-45px;right:-22px}.vision-tool-card.fridge{color:var(--ink);background:#dfe8c2}.vision-tool-card.menu{color:#f9f5e9;background:var(--ink)}.vision-tool-card:hover{transform:translateY(-2px);box-shadow:0 16px 34px #27392e1f}.vision-tool-card>span:nth-child(2){flex-direction:column;min-width:0;display:flex}.vision-tool-card small{color:var(--tomato);letter-spacing:.13em;font-size:10px;font-weight:900}.vision-tool-card b{font-family:var(--serif);margin:4px 0 3px;font-size:23px;font-weight:400;line-height:1.08}.vision-tool-card em{opacity:.7;max-width:245px;font-size:11px;font-style:normal;line-height:1.4}.vision-tool-card>i{z-index:1;font-size:23px;font-style:normal}.vision-tool-icon{background:#faf8f099;border-radius:50%;place-items:center;width:62px;height:62px;display:grid}.vision-tool-card.menu .vision-tool-icon{background:#faf8f01a}.vision-tool-icon svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:36px}.balance-note{background:#e6e9d5;border-radius:20px;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;margin-top:34px;padding:22px;display:grid}.balance-note>span{font-size:24px}.balance-note b{font-family:var(--serif);font-size:17px}.balance-note p{color:var(--muted);font-size:10px}.balance-note a{color:var(--leaf);font-size:10px;font-weight:900}.dash-footer{color:var(--muted);justify-content:center;gap:9px;margin-top:36px;font-size:9px;display:flex}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;width:min(100% - 40px,560px);min-height:100dvh;margin:auto;display:flex}.empty-state h1{font-family:var(--serif);margin:12px 0;font-size:50px;font-weight:400;line-height:1}.empty-state>p:not(.kicker){color:var(--muted);margin-bottom:25px}.empty-leaf{color:#fff;background:var(--leaf);width:80px;height:80px;font-family:var(--serif);border-radius:80% 0;place-items:center;margin-bottom:25px;font-size:35px;display:grid;transform:rotate(-12deg)}.sheet-backdrop{z-index:90;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#112d258c;justify-content:center;align-items:flex-end;padding-top:20px;animation:.2s fade;display:flex;position:fixed;inset:0}.swap-sheet{width:min(100%,720px);max-height:94dvh;padding:10px 34px calc(25px + env(safe-area-inset-bottom));background:var(--paper-light);border-radius:30px 30px 0 0;animation:.36s cubic-bezier(.2,.75,.2,1) sheet-up;overflow-y:auto;box-shadow:0 -25px 70px #0003}@keyframes fade{0%{opacity:0}}@keyframes sheet-up{0%{transform:translateY(100%)}}.sheet-handle{background:var(--line);border-radius:8px;width:40px;height:4px;margin:0 auto 19px}.swap-sheet header{justify-content:space-between;display:flex}.swap-sheet h2{font-family:var(--serif);letter-spacing:-.04em;margin-top:4px;font-size:36px;font-weight:400}.original-meal{border-left:3px solid var(--tomato);background:#f4e8dc;border-radius:0 12px 12px 0;margin:18px 0;padding:14px 17px}.original-meal span{color:var(--tomato);letter-spacing:.12em;font-size:9px;font-weight:900}.original-meal strong{font-family:var(--serif);font-size:16px;display:block}.original-meal p{color:var(--muted);font-size:10px}.swap-prompt{flex-direction:column;gap:7px;display:flex}.swap-prompt textarea{border:1px solid var(--line);min-height:90px;color:var(--ink);resize:none;background:#fff;border-radius:14px;padding:13px}.prompt-chips{flex-wrap:wrap;gap:6px;margin:9px 0 18px;display:flex}.prompt-chips button{border:1px solid var(--line);color:var(--muted);cursor:pointer;background:0 0;border-radius:999px;padding:6px 10px;font-size:10px}.swap-loading{justify-content:center;align-items:center;gap:6px;min-height:140px;display:flex}.swap-loading i{background:var(--leaf);border-radius:50%;width:8px;height:8px;animation:.8s infinite alternate dot}.swap-loading i:nth-child(2){background:var(--lime);animation-delay:.2s}.swap-loading i:nth-child(3){background:var(--tomato);animation-delay:.4s}.swap-loading span{color:var(--muted);margin-left:8px;font-size:11px}@keyframes dot{to{opacity:.5;transform:translateY(-7px)}}.alternative-list{flex-direction:column;gap:11px;display:flex}.alternative-list article{border:1px solid var(--line);background:#fff;border-radius:18px;padding:18px;position:relative}.equivalent-badge{color:var(--leaf);text-transform:uppercase;font-size:9px;font-weight:900;position:absolute;top:15px;right:15px}.alternative-list h3{max-width:72%;font-family:var(--serif);font-size:22px;font-weight:400}.alternative-list article>p{color:var(--muted);margin:3px 0 10px;font-size:11px}.alternative-macros{border-top:1px solid var(--line);color:var(--ink-2);gap:12px;padding:8px 0;font-size:10px;font-weight:800;display:flex}.alternative-list details{color:var(--muted);margin-bottom:12px;font-size:10px}.alternative-list summary{cursor:pointer;color:var(--leaf);padding:5px 0;font-weight:800}.alternative-list ul{columns:2;margin:5px 0 8px 16px}.alternative-list li b{color:var(--ink)}.retry-swap{margin:13px auto;display:block}.sheet-footnote{color:var(--muted);text-align:center;margin-top:15px;font-size:9px}.intake-lede{max-width:570px;color:var(--muted);font-family:var(--serif);margin:12px 0 20px;font-size:14px;line-height:1.55}.intake-form{flex-direction:column;gap:16px;display:flex}.vision-file{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.intake-capture-grid{grid-template-columns:1fr 1fr;gap:9px;display:grid}.meal-camera{background:#e6e9d5;border:1px solid #2c715e47;border-radius:18px;position:relative;overflow:hidden}.meal-camera>label{cursor:pointer;grid-template-columns:50px 1fr auto;align-items:center;gap:11px;min-height:98px;padding:12px;display:grid}.meal-camera img{object-fit:cover;border-radius:13px;width:50px;height:50px}.camera-glyph{color:#fff;background:var(--leaf);width:50px;height:50px;font-family:var(--serif);border-radius:50%;place-items:center;font-size:31px;line-height:1;display:grid}.label-camera{background:#f3e5d7;border-color:#e255354d}.label-glyph{background:var(--tomato);font-size:25px}.meal-camera label>span:nth-child(2){flex-direction:column;display:flex}.meal-camera label b{font-family:var(--serif);font-size:17px;font-weight:400;line-height:1.15}.meal-camera label small{color:var(--muted);font-size:11px}.meal-camera label>i{color:var(--leaf);font-size:22px;font-style:normal}.vision-progress{gap:4px;display:flex;position:absolute;bottom:10px;right:14px}.vision-progress i{background:var(--tomato);border-radius:50%;width:6px;height:6px;animation:.7s infinite alternate dot}.vision-progress i:nth-child(2){animation-delay:.16s}.vision-progress i:nth-child(3){animation-delay:.32s}.vision-confirm{color:var(--muted);flex-direction:column;padding:0 16px 13px 87px;font-size:10px;display:flex}.vision-confirm b{color:var(--leaf-dark);font-size:11px}.label-reader{background:#fff;border:1px solid #e255354d;border-radius:18px;padding:15px;animation:.24s both detail-in}.label-reader-head{grid-template-columns:1fr auto;align-items:center;gap:14px;display:grid}.label-reader-head>div>small{color:var(--tomato);letter-spacing:.1em;font-size:9px;font-weight:900}.label-reader-head h3{font-family:var(--serif);font-size:20px;font-weight:400;line-height:1.15}.label-reader-head>span{font-family:var(--serif);flex-direction:column;align-items:end;font-size:25px;line-height:1;display:flex}.label-reader-head>span small{color:var(--muted);font-family:var(--sans);margin-top:3px;font-size:9px}.label-macros{border-block:1px solid var(--line);color:var(--muted);gap:13px;margin:11px 0 13px;padding:8px 0;font-size:10px;display:flex}.label-macros b{color:var(--ink)}.label-consumed{grid-template-columns:1fr auto;align-items:end;gap:11px;display:grid}.label-consumed label{flex-direction:column;gap:5px;display:flex}.label-consumed label>span{letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:900}.label-consumed label>div,.intake-label-amount>div{position:relative}.label-consumed .input{background:var(--paper-light);height:47px;padding-right:76px}.label-consumed label>div>b,.intake-label-amount>div>b{color:var(--muted);text-transform:uppercase;pointer-events:none;font-size:10px;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.label-consumed .button{white-space:nowrap;min-height:47px}.label-reader>p{color:var(--muted);margin-top:9px;font-size:10px}.intake-label-amount>div .input{width:100%;padding-right:45px}.intake-when{border:1px solid var(--line);background:#f1ecdf;border-radius:16px;grid-template-columns:1fr 1fr;gap:9px;padding:13px;display:grid}.intake-when label{flex-direction:column;gap:5px;display:flex}.intake-when label>span{color:var(--tomato);letter-spacing:.1em;text-transform:uppercase;font-size:9px;font-weight:900}.intake-when .input{background:#fff;height:46px}.intake-rows{flex-direction:column;gap:8px;display:flex}.intake-row{grid-template-columns:minmax(0,1.3fr) minmax(120px,.7fr) 28px;align-items:end;gap:8px;display:grid}.intake-row label,.intake-context{flex-direction:column;gap:5px;display:flex}.intake-row label>span,.intake-context>span{letter-spacing:.1em;text-transform:uppercase;font-size:9px;font-weight:900}.intake-row .input,.intake-context .input{background:#fff;height:47px}.remove-intake-row{width:28px;height:47px;color:var(--tomato);cursor:pointer;background:0 0;border:0;font-size:20px}.add-intake-row{color:var(--leaf);cursor:pointer;background:0 0;border:0;align-self:flex-start;font-size:11px;font-weight:900}.intake-context select{cursor:pointer}.intake-safety{background:#e6e9d5;border-radius:14px;grid-template-columns:31px 1fr;align-items:center;gap:10px;padding:11px 13px;display:grid}.intake-safety>span{color:#fff;background:var(--leaf);border-radius:50%;place-items:center;width:28px;height:28px;display:grid}.intake-safety p{color:var(--muted);flex-direction:column;font-size:9px;display:flex}.intake-safety b{color:var(--ink);font-family:var(--serif);font-size:14px;font-weight:400}.vision-sheet{width:min(100%,760px)}.vision-target{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.vision-target>span{letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:900}.vision-target .input{background:#fff;height:50px}.vision-drop{background:#eeeadc;border:1px dashed #173e3459;border-radius:20px;position:relative;overflow:hidden}.vision-drop>label{cursor:pointer;grid-template-columns:85px 1fr;align-items:center;gap:18px;min-height:145px;padding:18px 22px;display:grid}.vision-drop svg{fill:none;width:70px;stroke:var(--leaf);stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round}.vision-drop img{object-fit:cover;border-radius:14px;width:85px;height:105px;box-shadow:0 8px 20px #173e342e}.vision-drop label>span{flex-direction:column;display:flex}.vision-drop label b{font-family:var(--serif);font-size:22px;font-weight:400}.vision-drop label small{color:var(--muted);font-size:11px}.vision-drop.is-loading{border-style:solid}.vision-detected{margin:15px 0 11px}.vision-detected>small{color:var(--tomato);letter-spacing:.12em;text-transform:uppercase;margin-bottom:7px;font-size:9px;font-weight:900;display:block}.vision-detected>div{flex-wrap:wrap;gap:6px;display:flex}.vision-detected span{border:1px solid var(--line);color:var(--ink-2);background:#fff;border-radius:999px;padding:6px 9px;font-size:10px}.vision-note{border-left:2px solid var(--gold);color:var(--muted);font-family:var(--serif);margin:10px 0;padding-left:10px;font-size:13px}.vision-alternatives{margin-top:15px}.completion-backdrop{align-items:center;padding:20px}.completion-sheet{border-radius:30px;width:min(100%,590px);animation-name:completion-in}@keyframes completion-in{0%{opacity:0;transform:translateY(16px)scale(.97)}}.completion-meal{border-left:3px solid var(--tomato);background:#f4e8dc;border-radius:0 15px 15px 0;margin:20px 0 17px;padding:16px 18px}.completion-meal span{color:var(--tomato);letter-spacing:.12em;text-transform:uppercase;font-size:10px;font-weight:900;display:block}.completion-meal strong{font-family:var(--serif);margin-top:2px;font-size:22px;font-weight:400;display:block}.completion-form{flex-direction:column;gap:14px;display:flex}.completion-when{grid-template-columns:1fr 1fr;gap:10px;display:grid}.completion-when label{flex-direction:column;gap:6px;display:flex}.completion-when label>span{letter-spacing:.11em;text-transform:uppercase;font-size:10px;font-weight:900}.completion-when .input{background:#fff;height:52px}.completion-date-note{color:var(--muted);font-size:11px;line-height:1.5}.toast{z-index:100;left:50%;bottom:calc(25px + env(safe-area-inset-bottom));color:#fff;background:var(--ink);width:min(100% - 32px,500px);box-shadow:var(--shadow);border-radius:14px;padding:14px 17px;font-size:12px;animation:.35s both toast-in;position:fixed;transform:translate(-50%)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,18px)}}.ai-loader{z-index:1000;min-height:100dvh;padding:34px 24px calc(30px + env(safe-area-inset-bottom));color:var(--paper-light);background:radial-gradient(circle at 50% 34%, #c9d96d21, transparent 28%), linear-gradient(145deg, #102f28, var(--ink) 54%, #0d2b24);text-align:center;flex-direction:column;justify-content:center;align-items:center;animation:.25s both fade;display:flex;position:fixed;inset:0;overflow:hidden}.ai-loader:before,.ai-loader:after{content:"";border:1px solid #c9d96d21;border-radius:100% 0;width:34vw;max-width:390px;height:55vw;max-height:620px;position:absolute}.ai-loader:before{top:-30%;left:-10%;transform:rotate(32deg)}.ai-loader:after{bottom:-34%;right:-10%;transform:rotate(-148deg)}.ai-loader-orbit{border:1px solid #faf8f029;border-radius:50%;flex:none;place-items:center;width:170px;height:170px;margin-bottom:29px;animation:2.6s ease-in-out infinite loader-breathe;display:grid;position:relative}.ai-loader-orbit:before,.ai-loader-orbit:after{content:"";border:1px dashed #c9d96d40;border-radius:50%;animation:9s linear infinite loader-spin;position:absolute;inset:17px}.ai-loader-orbit:after{border-style:solid;animation-duration:5s;animation-direction:reverse;inset:39px}.ai-loader-orbit>span{width:62px;height:62px;color:var(--ink);background:var(--lime);border-radius:75% 0;place-items:center;font-size:23px;display:grid;transform:rotate(-9deg);box-shadow:0 0 45px #c9d96d33}.ai-loader-orbit>i{background:var(--tomato);transform-origin:8px 85px;border-radius:90% 0;width:16px;height:27px;animation:2.1s ease-in-out infinite alternate loader-leaves;position:absolute}.ai-loader-orbit>i:first-child{top:0;left:77px}.ai-loader-orbit>i:nth-child(2){background:var(--gold);animation-delay:.35s;bottom:27px;right:14px;transform:rotate(120deg)}.ai-loader-orbit>i:nth-child(3){background:var(--lime);animation-delay:.7s;bottom:27px;left:14px;transform:rotate(240deg)}.ai-loader-copy{z-index:1;width:min(100%,660px);position:relative}.ai-loader-copy .kicker{color:var(--tomato)}.ai-loader-copy h2{font-family:var(--serif);letter-spacing:-.045em;margin:8px 0 10px;font-size:clamp(38px,7vw,63px);font-weight:400;line-height:.98}.ai-loader-copy>p:not(.kicker){color:#b8c6c1;font-size:13px}.ai-loader-copy blockquote{min-height:62px;color:var(--paper-light);font-family:var(--serif);place-items:center;margin:27px auto 14px;font-size:clamp(18px,3.5vw,25px);font-style:italic;line-height:1.35;animation:.45s both loader-phrase;display:grid}.ai-loader-copy>small{color:#91a69f;letter-spacing:.04em;font-size:10px}.ai-loader-progress{background:#ffffff1f;width:min(74vw,420px);height:2px;margin-top:35px;position:relative;overflow:hidden}.ai-loader-progress i{background:linear-gradient(90deg, transparent, var(--lime), var(--tomato), transparent);width:38%;animation:1.7s ease-in-out infinite loader-line;position:absolute;inset-block:0}@keyframes loader-spin{to{transform:rotate(360deg)}}@keyframes loader-breathe{50%{transform:scale(1.04)}}@keyframes loader-leaves{to{opacity:.5;scale:.82}}@keyframes loader-phrase{0%{opacity:0;transform:translateY(7px)}}@keyframes loader-line{0%{transform:translate(-120%)}to{transform:translate(360%)}}.install-toast{z-index:80;border:1px solid var(--line);background:var(--paper-light);max-width:430px;box-shadow:var(--shadow);border-radius:18px;grid-template-columns:auto 1fr auto auto;align-items:center;gap:12px;padding:13px;display:grid;position:fixed;bottom:18px;right:18px}.install-mark{color:#fff;background:var(--leaf);width:40px;height:40px;font-family:var(--serif);border-radius:70% 0;place-items:center;font-size:20px;display:grid}.install-toast>div:nth-child(2){flex-direction:column;display:flex}.install-toast strong{font-family:var(--serif);font-size:14px}.install-toast span{color:var(--muted);font-size:9px}.legal-page{width:min(100% - 40px,720px);margin:auto;padding:35px 0 90px}.legal-back{color:var(--muted);margin:45px 0 70px;font-size:11px;font-weight:800;display:block}.legal-page h1{max-width:650px;font-family:var(--serif);letter-spacing:-.05em;margin:13px 0 25px;font-size:clamp(45px,8vw,70px);font-weight:400;line-height:.95}.legal-lede{color:var(--muted);font-family:var(--serif);margin-bottom:45px;font-size:19px;line-height:1.55}.legal-page section{border-top:1px solid var(--line);padding:25px 0}.legal-page section h2{font-family:var(--serif);margin-bottom:8px;font-size:24px;font-weight:400}.legal-page section p{color:var(--muted);font-size:14px;line-height:1.75}@media (max-width:800px){.landing-hero{grid-template-columns:minmax(0,1fr);gap:20px;padding-top:40px}.hero-copy{z-index:4;position:relative}.hero-copy h1{font-size:clamp(57px,15vw,82px)}.hero-lede{font-size:20px}.hero-visual{min-height:500px}.manifesto-grid{background:0 0;grid-template-columns:1fr;gap:0}.manifesto-grid article,.manifesto-grid article+article{border-top:1px solid #ffffff24;padding:25px 0}.landing-footer{grid-template-columns:1fr;gap:18px}.auth-shell{grid-template-columns:1fr}.auth-brand{min-height:90px;padding:30px}.auth-brand:before,.auth-brand:after{display:none}.onboarding-card{padding:0 25px 35px}.choice-list{grid-template-columns:1fr 1fr}.choice-list button{min-height:90px}.choice-list button:last-child{grid-column:span 2}.goal-grid{grid-template-columns:1fr 1fr}}@media (max-width:560px){.landing-nav{padding:23px 20px}.landing-hero{width:100%;max-width:100%;min-height:auto;padding:50px 20px 75px}.hero-copy{width:100%;overflow:hidden}.hero-copy h1{margin-top:16px;font-size:clamp(52px,14vw,82px)}.hero-copy h1 em{white-space:normal}.hero-lede{width:100%;max-width:100%}.hero-actions{flex-direction:column;align-items:flex-start}.hero-visual{min-height:455px;margin:15px -5px 0}.preview-card{width:calc(100% - 28px);padding:21px}.orbit-one{width:390px;height:300px}.orbit-two{width:290px;height:400px}.swap-stamp{width:96px;height:96px;bottom:20px;right:-3px}.manifesto{padding:70px 22px}.manifesto h2{margin-bottom:50px;font-size:46px}.landing-footer{padding:38px 22px}.landing-footer div{flex-direction:column;gap:7px}.auth-card{width:min(100% - 36px,480px);padding:54px 0}.auth-card h1{font-size:46px}.onboarding-shell{padding:0 10px 50px}.onboarding-header{height:64px;padding:0 10px}.onboarding-card{border-radius:25px;margin-top:8px;padding:0 16px 27px}.step-rail{height:70px}.step-rail:before,.step-progress{top:28px}.step-rail button i{width:24px;height:24px}.step-rail button span{display:none}.step-heading{margin:34px auto 29px}.step-heading h1{font-size:39px}.step-heading>p:last-child{font-size:15px}.profile-form{grid-template-columns:1fr;gap:17px}.field-wide{grid-column:1}.segments{overflow-x:auto}.segments button{min-width:64px}.goal-grid{grid-template-columns:1fr 1fr}.choice-list{grid-template-columns:1fr}.choice-list button:last-child{grid-column:auto}.step-actions{justify-content:stretch}.step-actions .button{flex:1;padding-left:13px;padding-right:13px;font-size:12px}.dashboard-shell{width:min(100% - 24px,760px)}.dash-header{height:66px}.dash-intro{align-items:center;padding-top:30px}.dash-intro h1{font-size:43px}.target-seal{width:78px;height:78px}.target-seal b{font-size:21px}.target-seal span{font-size:9px}.plan-summary{font-size:14px}.ai-model-picker{grid-template-columns:1fr;padding:12px}.ai-model-options{width:100%}.ai-model-status{text-align:left}.week-strip{height:75px;margin:0 -12px}.week-strip button.active:before{width:36px;height:36px}.nutrition-board{border-radius:22px;grid-template-columns:112px 1fr;gap:19px;margin:22px 0 36px;padding:20px 15px}.progress-ring{width:112px;height:112px}.progress-ring b{font-size:42px}.macro-grid{grid-template-columns:1fr;gap:5px}.macro-board{gap:8px}.macro>div b{font-size:14px}.macro>small{display:none}.day-heading{align-items:flex-start}.day-heading h2{font-size:29px}.day-heading>span{padding-top:20px;font-size:9px}.meal-main{grid-template-columns:28px 1fr 53px;gap:8px;padding:16px 12px 9px}.meal-copy h3{font-size:19px}.meal-copy p{max-width:195px}.meal-macros{gap:10px;margin-left:48px;padding-left:0}.meal-detail{grid-template-columns:1fr;gap:18px;margin-left:48px}.meal-actions button{font-size:9px}.food-diary{border-radius:22px;margin-bottom:36px;padding:19px 14px}.diary-heading h2{font-size:26px}.diary-heading .button{padding:9px 12px}.diary-list article{grid-template-columns:30px minmax(0,1fr) 24px;gap:8px;padding-left:3px;padding-right:2px}.diary-log-values{text-align:left;grid-column:2;gap:4px;min-width:0;display:flex}.diary-log-values small{margin-left:7px}.diary-delete{grid-area:1/3/3}.balance-note{grid-template-columns:auto 1fr}.balance-note a{grid-column:2}.dash-footer{flex-wrap:wrap}.swap-sheet{padding:8px 17px calc(20px + env(safe-area-inset-bottom));border-radius:24px 24px 0 0}.swap-sheet h2{font-size:30px}.alternative-list article{padding:15px}.alternative-list ul{columns:1}.intake-row{grid-template-columns:minmax(0,1fr) 105px 24px}.intake-row .input{padding-left:10px;padding-right:10px;font-size:14px}.intake-when{padding:10px}.intake-when .input{padding:0 9px;font-size:13px}.completion-backdrop{align-items:flex-end;padding:20px 0 0}.completion-when{grid-template-columns:1.2fr .8fr}.completion-sheet{padding-bottom:calc(25px + env(safe-area-inset-bottom));border-radius:24px 24px 0 0}.install-toast{left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom))}.vision-tools{margin-bottom:36px}.vision-tools-heading{align-items:start}.vision-tools-heading h2{font-size:26px}.vision-tools-heading>p{display:none}.vision-tool-grid{grid-template-columns:1fr}.vision-tool-card{border-radius:21px;grid-template-columns:52px 1fr 18px;gap:12px;min-height:126px;padding:16px}.vision-tool-icon{width:50px;height:50px}.vision-tool-icon svg{width:30px}.vision-tool-card b{font-size:21px}.intake-capture-grid{grid-template-columns:1fr}.meal-camera>label{grid-template-columns:48px 1fr auto;min-height:82px;padding:11px}.meal-camera img,.camera-glyph{width:48px;height:48px}.camera-glyph{font-size:28px}.meal-camera label b{font-size:17px}.meal-camera label small{font-size:10px}.vision-confirm{padding:0 12px 12px}.label-consumed{grid-template-columns:1fr}.label-consumed .button{width:100%}.vision-drop>label{grid-template-columns:65px 1fr;gap:13px;min-height:120px;padding:14px}.vision-drop svg{width:56px}.vision-drop img{width:65px;height:82px}.vision-drop label b{font-size:19px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
