@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-cyrillic-ext-wght-normal-D4X5GqEv.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-cyrillic-wght-normal-CY6AOgYE.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-vietnamese-wght-normal-U01xdrZh.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-latin-ext-wght-normal-CXYtwYOx.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-latin-wght-normal-BzFMHfZw.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Caveat Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/assets/caveat-cyrillic-ext-wght-normal-DiMfzA-V.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Caveat Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/assets/caveat-cyrillic-wght-normal-D5lnP6kL.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Caveat Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/assets/caveat-latin-ext-wght-normal-Byk3UhVp.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Caveat Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/assets/caveat-latin-wght-normal-C1hSzPvX.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#f7f4ef;--surface:#fffefb;--ink:#1c2a22;--ink-2:#44544a;--muted:#5b6b61;--line:#e6e0d6;--green:#1f6b34;--green-leaf:#2e8b3e;--green-50:#e5efe1;--red:#e0353b;--red-50:#fbe4e1;--yellow:#f3c11b;--yellow-strong:#e2a90a;--yellow-50:#fcf1cb;--blue:#2f6cc3;--blue-50:#e2ebf8;--radius:22px;--radius-sm:14px;--shadow:0 1px 2px #4632140d, 0 6px 20px #46321412;--ease:cubic-bezier(.22, 1, .36, 1);--font:"Nunito Variable", ui-rounded, system-ui, sans-serif;--hand:"Caveat Variable", cursive;--tabbar:68px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;background:var(--bg)}body{background:var(--bg);min-height:100dvh;color:var(--ink);font:500 16px/1.5 var(--font);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none;margin:0}::selection{background:var(--yellow);color:var(--ink)}:focus-visible{outline:3px solid var(--blue);outline-offset:2px;border-radius:8px}h1,h2,h3,p{margin:0}h1,h2{text-wrap:balance}a{color:inherit;text-decoration:none}button,input{font:inherit;color:inherit}button{cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation;background:0 0;border:0;padding:0}ul,ol{margin:0;padding:0;list-style:none}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.tabular,.today-kcal,.stat strong,.history b,.meal-head span,.pick-row b,.calc dd{font-variant-numeric:tabular-nums}.logo{align-items:center;gap:.35em;display:flex}.apple{flex:none;display:block}.wordmark{color:var(--green);letter-spacing:-.02em;font-weight:900;line-height:1}.wordmark-go{vertical-align:-.205em;width:.935em;height:.926em;margin-left:.09em}.slogan{color:var(--ink-2);letter-spacing:.01em;margin-top:.2em;font-size:.42em;font-weight:600}.hand{font-family:var(--hand);color:var(--ink);font-weight:700;line-height:1.05}.btn{background:var(--green);color:#fff;min-height:54px;transition:transform .16s var(--ease), background-color .16s var(--ease);border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 24px;font-size:17px;font-weight:800;display:inline-flex;box-shadow:0 1px 2px #143c1e2e,0 8px 18px #1f6b3438}.btn:active{transform:scale(.97)}.btn-block{width:100%}.btn-ghost{color:var(--green);box-shadow:inset 0 0 0 2px var(--green);background:0 0}.btn-small{min-height:42px;padding:0 16px;font-size:15px}.icon-btn{width:44px;height:44px;color:var(--ink-2);border-radius:50%;flex:none;place-items:center;display:grid}.icon-btn:active{background:var(--line)}@media (hover:hover){.btn:hover{background:#185a2b}.btn-ghost:hover{background:var(--green-50)}.icon-btn:hover{background:var(--line)}.list-row:hover,.pick-row:hover,.action:hover{background:#fff}}.welcome{min-height:100svh;padding:calc(clamp(12px, 3svh, 28px) + env(safe-area-inset-top)) max(20px, calc(50% - 216px)) calc(clamp(12px, 2svh, 24px) + env(safe-area-inset-bottom));isolation:isolate;flex-direction:column;gap:clamp(8px,2svh,24px);display:flex;position:relative;overflow:hidden}.welcome:before,.welcome:after{content:"";z-index:-1;border-radius:50%;position:absolute}.welcome:before{background:var(--red);width:220px;height:160px;top:-70px;right:-80px;transform:rotate(-20deg)}.welcome:after{background:var(--yellow);width:130px;height:230px;top:46%;right:-90px}.welcome-bowl{z-index:-1;pointer-events:none;width:170px;height:auto;position:absolute;top:-48px;left:-64px}@media (width>=900px){.welcome-bowl{width:480px;top:auto;bottom:-110px;left:-100px}}.welcome-brand{text-align:center;animation:rise .7s var(--ease) both;flex-direction:column;align-items:center;display:flex}.welcome-brand .apple{width:auto;height:clamp(56px,10.5svh,127px)}.wordmark-xl{margin-top:6px;font-size:clamp(42px,min(7.4svh,16vw),64px)}.welcome-brand .slogan{font-size:clamp(15px,2.4svh,19px)}.welcome-hand{text-wrap:balance;text-align:center;animation:rise .7s .12s var(--ease) both;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 16'%3E%3Cpath d='M4 12C60 6 150 3 236 6' fill='none' stroke='%231f6b34' stroke-width='5' stroke-linecap='round'/%3E%3C/svg%3E") bottom/min(78%,280px) 16px no-repeat;padding-bottom:clamp(12px,2svh,18px);font-size:clamp(22px,min(3.8svh,8vw),32px);line-height:1.1;transform:rotate(-3deg)}.hand-ticks:after{content:"";vertical-align:.35em;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 28' fill='none' stroke='%231f6b34' stroke-width='3.5' stroke-linecap='round'%3E%3Cpath d='M5 15 9 3M12 19l11-8M14 26l12-1'/%3E%3C/svg%3E") 50%/contain no-repeat;width:.75em;height:.75em;margin-left:.22em;display:inline-block}.welcome .fineprint{color:#fff;padding-top:clamp(30px,5svh,52px);font-size:12.5px;line-height:1.4;position:relative}.welcome .fineprint:before{content:"";z-index:-2;top:0;bottom:calc(-1 * clamp(12px, 2svh, 24px) - env(safe-area-inset-bottom));background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 48' preserveAspectRatio='none'%3E%3Cpath d='M0 30C240 0 480 2 720 22S1200 48 1440 12V48H0Z' fill='%231f6b34'/%3E%3C/svg%3E") top / 100% 48px no-repeat, linear-gradient(var(--green), var(--green)) 0 47px / 100% 100% no-repeat;width:100vw;position:absolute;left:50%;transform:translate(-50%)}.pillars{animation:rise .7s .22s var(--ease) both;gap:clamp(8px,1.6svh,16px);display:grid}.pillars li{align-items:center;gap:14px;display:flex}.pillar-icon{border-radius:50%;flex:none;place-items:center;width:clamp(42px,7svh,58px);height:clamp(42px,7svh,58px);display:grid}.pillar-icon svg{width:45%;height:45%}.pillars strong{text-transform:uppercase;letter-spacing:.02em;font-size:14px;font-weight:900;line-height:1.3;display:block}.pillars span{color:var(--ink-2);font-size:14px;line-height:1.3}.welcome-actions{gap:10px;margin-top:auto;display:grid}.welcome-actions .btn{min-height:clamp(48px,7svh,54px)}@media (height<=600px){.pillars div span{display:none}}.fineprint{text-align:center;color:var(--muted);font-size:13px}@keyframes rise{0%{opacity:0;transform:translateY(14px)}}.welcome-hand{animation-name:rise-tilt}@keyframes rise-tilt{0%{opacity:0;transform:translateY(14px)rotate(-3deg)}to{transform:rotate(-3deg)}}.onboarding{max-width:480px;min-height:100svh;padding-top:env(safe-area-inset-top);flex-direction:column;margin:0 auto;display:flex}.onb-head{align-items:center;gap:12px;padding:12px 16px;display:flex}.steps{flex:1;gap:6px;margin-right:12px;display:flex}.steps span{background:var(--line);height:6px;transition:background-color .3s var(--ease);border-radius:3px;flex:1}.steps span[data-on]{background:var(--green)}.onb-body{flex-direction:column;flex:1;gap:clamp(14px,2.4svh,20px);padding:8px clamp(18px,5.5vw,24px) 0;display:flex}.onb-body h1,.page-title{letter-spacing:-.01em;font-size:clamp(24px,7.4vw,28px);font-weight:900;line-height:1.15}.sub{color:var(--ink-2);margin-top:-12px}.page-title+.sub{margin-top:4px;margin-bottom:20px}.onb-actions{z-index:1;padding:16px 0 calc(clamp(14px, 2.4svh, 24px) + env(safe-area-inset-bottom));background:linear-gradient(to bottom, #f7f4ef00, var(--bg) 16px);margin-top:auto;position:sticky;bottom:0}.field{border:0;gap:8px;min-width:0;margin:0;padding:0;display:grid}.field>span,.field legend{margin-bottom:8px;padding:0;font-size:15px;font-weight:800}.field>small{color:var(--muted);font-size:13px}.field input:not([type=radio]){border-radius:var(--radius-sm);border:2px solid var(--line);background:var(--surface);width:100%;min-height:54px;caret-color:var(--green);transition:border-color .16s var(--ease);padding:0 16px;font-size:18px;font-weight:700}.field input:focus{border-color:var(--green);outline:none}.field input[aria-invalid=true]{border-color:var(--red)}.field input::placeholder{color:var(--muted);font-weight:600}.input-unit{position:relative}.input-unit em{color:var(--muted);pointer-events:none;font-style:normal;font-weight:700;position:absolute;top:50%;right:16px;transform:translateY(-50%)}.input-unit input{padding-right:56px!important}.error,.field>.error{color:#b42328;font-size:14px;font-weight:700}.row-2{grid-template-columns:1fr 1fr;gap:12px;display:grid}.segmented{background:var(--line);border-radius:999px;grid-template-columns:1fr 1fr;gap:6px;padding:5px;display:grid}.segmented label,.choice{cursor:pointer;position:relative}.segmented input,.choice input{opacity:0;margin:0;position:absolute;inset:0}.segmented span{min-height:46px;color:var(--ink-2);transition:background-color .2s var(--ease), color .2s var(--ease);border-radius:999px;place-items:center;font-weight:800;display:grid}.segmented input:checked+span{background:var(--surface);color:var(--green);box-shadow:var(--shadow)}.segmented input:focus-visible+span,.choice input:focus-visible+span{outline:3px solid var(--blue);outline-offset:2px}.choices{gap:10px;display:grid}.choice span{border-radius:var(--radius-sm);background:var(--surface);border:2px solid var(--line);transition:border-color .16s var(--ease), background-color .16s var(--ease);gap:2px;padding:14px 18px;display:grid}.choice small{color:var(--muted);font-size:14px}.choice input:checked+span{border-color:var(--green);background:var(--green-50)}.result-hand{color:var(--green);margin-top:12px;font-size:clamp(28px,8.8vw,34px)}.result-kcal{color:var(--ink-2);margin-top:-14px;font-size:20px;font-weight:700}.result-kcal strong{color:var(--ink);letter-spacing:-.03em;font-variant-numeric:tabular-nums;animation:rise .6s var(--ease) both;font-size:clamp(60px,min(20vw,10svh),76px);font-weight:900;line-height:1;display:block}.macro-stack{gap:4px;height:14px;display:flex}.macro-stack span{transform-origin:0;animation:grow .7s .15s var(--ease) both;border-radius:7px}@keyframes grow{0%{transform:scaleX(0)}}.macro-legend{gap:6px;margin-top:-8px;display:grid}.macro-legend li{color:var(--ink-2);align-items:center;gap:10px;display:flex}.macro-legend i{border-radius:50%;width:12px;height:12px}.macro-legend b{color:var(--ink);margin-left:auto}.calc{border-top:2px dashed var(--line);gap:10px;margin:0;padding-top:14px;display:grid}.calc div{justify-content:space-between;gap:12px;display:flex}.calc dt{color:var(--ink-2)}.calc dd{white-space:nowrap;margin:0;font-weight:800}.note{color:var(--muted);font-size:13px;line-height:1.45}.app{max-width:480px;margin:0 auto}@media (width>=1200px){.app,.onboarding{isolation:isolate}.app:before,.app:after,.onboarding:before,.onboarding:after{content:"";z-index:-1;pointer-events:none;border-radius:50%;position:fixed}.app:before,.onboarding:before{background:var(--red);width:320px;height:230px;top:-110px;right:-120px;transform:rotate(-20deg)}.app:after,.onboarding:after{background:var(--yellow);width:220px;height:360px;bottom:-120px;left:-130px}}.screen{padding:calc(16px + env(safe-area-inset-top)) clamp(16px, 4.5vw, 20px) calc(var(--tabbar) + 24px + env(safe-area-inset-bottom));flex-direction:column;gap:16px;display:flex}.page-title{margin-top:12px}.page-title+.sub{margin:-8px 0 4px}.tabbar{z-index:10;width:100%;max-width:480px;padding:6px 6px calc(6px + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--line);grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.tab{min-height:56px;color:var(--muted);-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;border-radius:16px;justify-items:center;gap:2px;padding:6px 0;font-size:12px;font-weight:700;display:grid}.tab[aria-current=page]{color:var(--green)}.tab[aria-current=page] svg{animation:pop .26s var(--ease)}@keyframes pop{50%{transform:scale(1.15)}}.home-head{padding-top:4px}.hello{letter-spacing:-.01em;margin-top:8px;font-size:clamp(26px,8vw,32px);font-weight:900}.hello-sub{color:var(--ink-2);margin-top:-12px;font-size:clamp(16px,4.8vw,19px)}.today,.summary,.card{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px clamp(16px,4.5vw,20px);display:block}.today-top{color:var(--green);justify-content:space-between;align-items:center;font-weight:800;display:flex}.today-kcal{color:var(--ink-2);margin:6px 0 10px;font-size:17px;font-weight:700}.today-kcal strong{color:var(--ink);letter-spacing:-.02em;font-size:clamp(28px,8.5vw,34px);font-weight:900}.today-left{color:var(--ink-2);margin-top:8px;font-size:15px}.bar{background:var(--green-50);border-radius:6px;height:12px;overflow:hidden}.bar>span{border-radius:inherit;background:var(--green-leaf);height:100%;display:block}.bar>span[data-over]{background:var(--red)}.bar-thin{background:var(--line);height:8px}.shortcuts{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.shortcut{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);text-align:center;transition:transform .16s var(--ease);justify-items:center;gap:8px;padding:12px 4px 10px;font-size:14px;font-weight:800;line-height:1.2;display:grid}.shortcut:active{transform:scale(.96)}.shortcut-icon{border-radius:clamp(16px,4.5vw,20px);place-items:center;width:clamp(50px,15vw,64px);height:clamp(50px,15vw,64px);display:grid}.shortcut-icon[data-tone=green]{background:var(--green-leaf)}.shortcut-icon[data-tone=red]{background:var(--red)}.shortcut-icon[data-tone=yellow]{background:var(--yellow-strong)}.section-title{margin:8px 0 12px;font-size:clamp(17px,5vw,19px);font-weight:900}.card .section-title{margin-top:0}.list{gap:10px;display:grid}.list-row{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);transition:transform .16s var(--ease), background-color .16s;align-items:center;gap:14px;padding:10px 12px 10px 10px;display:flex}.list-row:active{transform:scale(.985)}.list-text{flex:1;min-width:0;display:grid}.list-text strong{font-weight:800}.list-text span{color:var(--ink-2);font-size:14px;line-height:1.4}.chev{color:var(--muted);flex:none}.thumb{border-radius:18px;flex:none;place-items:center;display:grid;overflow:hidden}.thumb img,.recipe-photo{object-fit:cover}.thumb img{width:100%;height:100%}.recipe-photo{aspect-ratio:4/3;border-radius:var(--radius-sm);background:var(--green-50);width:100%;height:auto}.thumb[data-meal=cafe]{background:var(--yellow-50);color:#8a6200}.thumb[data-meal=almoco]{background:var(--green-50);color:var(--green)}.thumb[data-meal=lanche]{background:var(--blue-50);color:var(--blue)}.thumb[data-meal=jantar]{background:var(--red-50);color:#b42328}.install{border-radius:var(--radius);background:var(--green);color:#fff;align-items:center;gap:12px;padding:14px 16px;display:flex;position:relative}.install-icon{background:var(--bg);border-radius:12px;flex:none}.install-text{flex:1;gap:2px;font-size:14px;line-height:1.35;display:grid}.install-text strong{font-size:16px}.install-text svg{vertical-align:-3px}.install-steps{padding-left:18px;list-style:decimal}.install .btn{background:var(--yellow);color:var(--ink);box-shadow:none}.install-close{color:#fff;align-self:flex-start;width:36px;height:36px;margin:-6px -8px 0 0}.install-close:hover,.install-close:active{background:#ffffff26}.macro-rows{gap:10px;margin-top:16px;display:grid}.macro-rows li{color:var(--ink-2);grid-template-columns:104px 1fr auto;align-items:center;gap:10px;font-size:14px;display:grid}.macro-rows b{color:var(--ink);font-variant-numeric:tabular-nums;text-align:right;min-width:9ch}.meal{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.meal-head{justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.meal-head h2{align-items:center;gap:10px;font-size:17px;font-weight:900;display:flex}.meal-head h2:before{content:"";background:var(--dot);border-radius:50%;width:12px;height:12px}.meal[data-meal=cafe]{--dot:var(--yellow)}.meal[data-meal=almoco]{--dot:var(--green-leaf)}.meal[data-meal=lanche]{--dot:var(--blue)}.meal[data-meal=jantar]{--dot:var(--red)}.meal-head span{color:var(--ink-2);font-weight:800}.meal-items li{border-top:1px solid var(--line);align-items:center;gap:8px;padding:8px 8px 8px 18px;display:flex}.meal-item-text{flex:1;min-width:0;display:grid}.meal-item-text strong{font-weight:700}.meal-item-text span{color:var(--muted);font-size:14px}.stepper{align-items:center;display:flex}.stepper output{text-align:center;min-width:20px;font-weight:800}.add-btn{border-top:1px solid var(--line);width:100%;min-height:50px;color:var(--green);justify-content:center;align-items:center;gap:6px;font-weight:800;display:flex}.add-btn:active{background:var(--green-50)}.sheet{background:var(--bg);width:100%;max-width:480px;max-height:88dvh;color:var(--ink);border:0;border-radius:28px 28px 0 0;margin:auto auto 0;padding:0;overflow:hidden}.sheet:focus{outline:none}.sheet[open]{animation:sheet-in .3s var(--ease);display:flex}.sheet::backdrop{animation:fade .3s var(--ease);background:#1c2a2273}@keyframes sheet-in{0%{transform:translateY(100%)}}@keyframes fade{0%{opacity:0}}.sheet-body{overscroll-behavior:contain;padding:0 20px calc(20px + env(safe-area-inset-bottom));flex-direction:column;flex:1;display:flex;overflow-y:auto}.sheet-head{z-index:1;background:var(--bg);justify-content:space-between;align-items:center;gap:12px;padding:18px 0 12px;display:flex;position:sticky;top:0}.sheet-head h2{font-size:22px;font-weight:900}.search{background:var(--surface);border:2px solid var(--line);min-height:52px;color:var(--muted);border-radius:999px;align-items:center;gap:10px;padding:0 16px;display:flex}.search:focus-within{border-color:var(--green)}.search input{background:0 0;border:0;outline:none;flex:1;min-width:0;font-size:17px}.picker h3{color:var(--green);margin:18px 0 6px;font-size:14px;font-weight:900}.pick-row{text-align:left;border-radius:var(--radius-sm);justify-content:space-between;align-items:center;gap:12px;width:100%;padding:10px 12px;display:flex}.pick-row:active{background:var(--surface)}.pick-row span{display:grid}.pick-row small{color:var(--muted);font-size:14px}.pick-row b{white-space:nowrap;color:var(--ink-2)}.empty{color:var(--muted);padding:16px 0}.chips{scrollbar-width:none;overscroll-behavior-x:contain;gap:8px;margin:0 -20px;padding:2px 20px 4px;display:flex;overflow-x:auto}.chip{background:var(--surface);min-height:44px;box-shadow:inset 0 0 0 2px var(--line);color:var(--ink-2);transition:background-color .16s var(--ease), color .16s var(--ease);border-radius:999px;flex:none;padding:0 16px;font-size:15px;font-weight:800}.chip[aria-pressed=true]{background:var(--green);color:#fff;box-shadow:none}.recipe{gap:14px;display:grid}.recipe-summary{color:var(--ink-2);font-size:18px}.recipe-meta{flex-wrap:wrap;gap:8px 16px;font-size:15px;font-weight:700;display:flex}.recipe-meta li{align-items:center;gap:6px;display:flex}.recipe-meta svg{color:var(--red)}.recipe h3{margin-top:8px;font-size:17px;font-weight:900}.ingredients{gap:8px;display:grid}.ingredients li{gap:10px;display:flex}.ingredients li:before{content:"";background:var(--green-leaf);border-radius:50%;flex:none;width:8px;height:8px;margin-top:8px}.steps-list{counter-reset:s;gap:12px;display:grid}.steps-list li{counter-increment:s;gap:12px;display:flex}.steps-list li:before{content:counter(s);background:var(--yellow);border-radius:50%;flex:none;place-items:center;width:28px;height:28px;font-size:14px;font-weight:900;display:grid}.stats{grid-template-columns:1fr 1fr;gap:12px;display:grid}.stat{border-radius:var(--radius);padding:14px clamp(14px,4vw,18px);display:grid}.stat[data-tone=green]{background:var(--green-50)}.stat[data-tone=yellow]{background:var(--yellow-50)}.stat>span{color:var(--ink-2);font-size:14px;font-weight:800}.stat strong{letter-spacing:-.02em;font-size:clamp(26px,8vw,32px);font-weight:900}.stat strong small{color:var(--ink-2);font-size:16px}.stat>small{color:var(--ink-2);font-size:14px;font-weight:700}.goal-line{color:var(--ink-2);margin-bottom:10px}.goal-line b{color:var(--green)}.chart{width:100%;height:auto;display:block;overflow:visible}.chart text{fill:var(--muted);font-size:11px;font-weight:700;font-family:var(--font)}.chart-grid{stroke:var(--line);stroke-width:1px}.chart-target{stroke:var(--red);stroke-width:1.5px;stroke-dasharray:5 5}.chart .chart-target-label{fill:#b42328}.chart-area{fill:var(--green-50)}.chart-line{fill:none;stroke:var(--green-leaf);stroke-width:3px;stroke-linejoin:round;stroke-linecap:round}.chart-dot{fill:var(--surface);stroke:var(--green);stroke-width:2.5px}.weigh{gap:14px;display:grid}.weigh .section-title{margin:0}.history{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);display:grid;overflow:hidden}.history li{align-items:center;gap:12px;padding:6px 8px 6px 18px;display:flex}.history li+li{border-top:1px solid var(--line)}.history span{color:var(--ink-2);flex:1}.profile-card{align-items:center;gap:16px;display:flex}.avatar{background:var(--yellow);border-radius:50%;flex:none;place-items:center;width:68px;height:68px;font-size:30px;font-weight:900;display:grid}.profile-card div{display:grid}.profile-card strong{font-size:22px;font-weight:900}.profile-card span{color:var(--ink-2);font-size:15px}.actions{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);display:grid;overflow:hidden}.action{text-align:left;min-height:58px;color:var(--green);align-items:center;gap:14px;padding:0 18px;font-weight:800;transition:background-color .16s;display:flex}.action+.action{border-top:1px solid var(--line)}.action[data-danger]{color:#b42328}.action[data-armed]{background:var(--red-50);color:#b42328}.about{text-align:center;padding:0 8px}.water-top,.tip-top{align-items:center;gap:8px;min-height:44px;margin:-8px 0 -4px;display:flex}.water-top h2,.tip-top h2{flex:1;font-size:17px;font-weight:900}.water-top svg{color:var(--blue)}.water-undo{margin-right:-10px}.bar-water{background:var(--blue-50)}.bar-water>span{background:var(--blue);transition:width .4s var(--ease)}.water-cups{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px;display:grid}.water-cup{background:var(--blue-50);color:#2659a4;font-variant-numeric:tabular-nums;min-height:48px;transition:transform .16s var(--ease), background-color .16s var(--ease);border-radius:999px;font-size:16px;font-weight:900}.water-cup:active{background:#cfdcf2;transform:scale(.95)}.tip{background:var(--yellow-50);box-shadow:none}.tip-top svg{color:var(--yellow-strong)}.btn-link{min-height:44px;color:var(--green);align-items:center;gap:6px;margin-right:-6px;padding:0 6px;font-size:15px;font-weight:800;display:inline-flex}.tip-text{color:var(--ink);text-wrap:pretty;font-size:17px}.tip-source{color:var(--muted);margin-top:8px;font-size:13px}.shortcut-icon-sm{border-radius:16px;flex:none;width:48px;height:48px}.meal-items .thumb{border-radius:12px;flex:none}.recipe-macros{color:var(--ink-2);font-size:15px}.add-plan{border-block:1px solid var(--line);gap:12px;padding:16px 0;display:grid}.add-plan .chips{flex-wrap:wrap;margin:0;padding:0}@media (width<=459px){.add-plan .chips{grid-template-columns:1fr 1fr;display:grid}}.add-plan-done{min-height:24px;color:var(--green);justify-content:center;align-items:center;gap:6px;margin-top:-4px;font-weight:800;display:flex}.add-plan-done:empty{display:none}.add-plan-done a,.empty a{color:var(--green);text-underline-offset:3px;text-decoration:underline}.page-head{align-items:center;gap:4px;margin-left:-10px;display:flex}.shop ul{display:grid}.shop .section-title{margin-bottom:4px;font-size:17px}.check-row{cursor:pointer;align-items:center;gap:12px;min-height:48px;display:flex}.check-row input{width:22px;height:22px;accent-color:var(--green);flex:none}.check-row span{flex:1;justify-content:space-between;gap:12px;display:flex}.check-row strong{font-weight:700}.check-row b{white-space:nowrap;color:var(--ink-2);font-variant-numeric:tabular-nums}.check-row input:checked+span{color:var(--muted);text-decoration:line-through}.check-row input:checked+span b{color:var(--muted)}.shop-recipe{align-items:center;gap:12px;margin-bottom:4px;display:flex}.shop-recipe .section-title{margin:0}.shop-recipe span{color:var(--ink-2);font-size:14px}.share-btn{margin-top:16px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important;animation-delay:0s!important}}.field{grid-template-columns:minmax(0,1fr)}.field input[type=date]{min-width:0;padding:0 12px;font-size:16px}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spin{animation:none}}@media (width>=900px){.app{grid-template-columns:200px minmax(0,640px);justify-content:center;gap:48px;max-width:960px;padding:0 32px;display:grid}.screen{grid-area:1/2;padding:24px 0 64px}.tabbar{background:0 0;border:0;flex-direction:column;grid-area:1/1;align-self:start;gap:4px;width:auto;max-width:none;padding:40px 0 24px;display:flex;position:sticky;top:0;bottom:auto;left:auto;transform:none}.tab{min-height:48px;color:var(--ink-2);transition:background-color .16s var(--ease);align-items:center;gap:12px;padding:0 16px;font-size:16px;display:flex}.tab[aria-current=page]{background:var(--green-50);color:var(--green)}.screen>.list{grid-template-columns:1fr 1fr}.screen>.list .list-row{height:100%}.chart text{font-size:6.5px}.chart-line{stroke-width:1.8px}.chart-dot{stroke-width:1.4px}.sheet{border-radius:28px;max-width:560px;max-height:86dvh;margin:auto}.sheet[open]{animation-name:dialog-in}}@media (width>=900px) and (hover:hover){.tab:not([aria-current=page]):hover{background:var(--line)}}@keyframes dialog-in{0%{opacity:0;transform:translateY(16px)scale(.98)}}
