@font-face{font-family:Onest;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/onest-cyrillic-ext-400-normal-CaNFjYjr.woff2) format("woff2"),url(/assets/onest-cyrillic-ext-400-normal-CGLZlrW6.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Onest;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/onest-cyrillic-400-normal-CmW88LeT.woff2) format("woff2"),url(/assets/onest-cyrillic-400-normal-B3JeyIF7.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Onest;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/onest-latin-ext-400-normal-0S7ATeGQ.woff2) format("woff2"),url(/assets/onest-latin-ext-400-normal-1O0f8IOf.woff) format("woff");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,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:Onest;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/onest-latin-400-normal-C-CFDCum.woff2) format("woff2"),url(/assets/onest-latin-400-normal-Gz0dnIsZ.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Onest;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/onest-cyrillic-ext-500-normal-CJso3eZP.woff2) format("woff2"),url(/assets/onest-cyrillic-ext-500-normal-YnPoqkuT.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Onest;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/onest-cyrillic-500-normal-B2RGfQLi.woff2) format("woff2"),url(/assets/onest-cyrillic-500-normal-CInhkGSl.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Onest;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/onest-latin-ext-500-normal-DOlq2V80.woff2) format("woff2"),url(/assets/onest-latin-ext-500-normal-BfkAY_g1.woff) format("woff");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,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:Onest;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/onest-latin-500-normal-Byd8bcGa.woff2) format("woff2"),url(/assets/onest-latin-500-normal-4Px6MjlZ.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Onest;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/onest-cyrillic-ext-600-normal-CwrooMqF.woff2) format("woff2"),url(/assets/onest-cyrillic-ext-600-normal-DGQ8WF-h.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Onest;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/onest-cyrillic-600-normal-CcOXSJId.woff2) format("woff2"),url(/assets/onest-cyrillic-600-normal-D3vzDOi3.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Onest;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/onest-latin-ext-600-normal-DMduB-Fk.woff2) format("woff2"),url(/assets/onest-latin-ext-600-normal-C7n1uKld.woff) format("woff");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,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:Onest;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/onest-latin-600-normal-l5uwAnB-.woff2) format("woff2"),url(/assets/onest-latin-600-normal-DB9qsWRK.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Onest;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/onest-cyrillic-ext-700-normal-Dzzhrxd_.woff2) format("woff2"),url(/assets/onest-cyrillic-ext-700-normal-DFxt55Iy.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Onest;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/onest-cyrillic-700-normal-h3fj2TH3.woff2) format("woff2"),url(/assets/onest-cyrillic-700-normal-CrhGL9fk.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Onest;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/onest-latin-ext-700-normal-DCS2KpoF.woff2) format("woff2"),url(/assets/onest-latin-ext-700-normal-C-weK_R0.woff) format("woff");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,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:Onest;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/onest-latin-700-normal-Cn6QOas7.woff2) format("woff2"),url(/assets/onest-latin-700-normal-DbAcznMx.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-latin-800-normal-BQmuGLSm.woff2) format("woff2"),url(/assets/nunito-latin-800-normal-DGg9yqR-.woff) format("woff")}:root{--bg: #f6f7f4;--card: #ffffff;--line: #eaece7;--text: #1d2220;--muted: #868c87;--green: #6abd45;--green-press: #57a834;--green-soft: #eff8e9;--green-line: #b9e09f;--green-ink: #3f8a1f;--protein: #e5484d;--carbs: #f0a13a;--fat: #4cae4f;--warn-soft: #fff6e5;--warn-ink: #9a6400;--bad-soft: #fdeceb;--bad-ink: #c2352f;--focus: #3e7dd8;--shadow: 0 1px 2px rgba(29, 34, 32, .04), 0 4px 16px rgba(29, 34, 32, .05);--font: "Onest", system-ui, -apple-system, "Segoe UI", sans-serif;color-scheme:light}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;overscroll-behavior-y:none}body{-webkit-tap-highlight-color:transparent}body{margin:0;background:var(--bg);color:var(--text);font:400 15px/1.5 var(--font);-webkit-font-smoothing:antialiased}button,input{font:inherit;color:inherit}a{color:var(--green-ink)}img{max-width:100%;display:block}:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:8px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}h1,h2,h3{margin:0;font-weight:700;color:var(--text);letter-spacing:-.01em}h1{font-size:26px;line-height:1.2}h2{font-size:20px;line-height:1.25}h3{font-size:16px;line-height:1.3;font-weight:600}p{margin:0}.muted{color:var(--muted)}.small{font-size:14px}.tiny{font-size:12.5px}.num{font-variant-numeric:tabular-nums}.label{font-size:11.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.emo{display:inline-block;flex:none;object-fit:contain}.shell{min-height:100dvh;display:flex;flex-direction:column}.page{width:100%;max-width:480px;margin:0 auto;padding:calc(16px + env(safe-area-inset-top)) calc(16px + env(safe-area-inset-right)) calc(98px + env(safe-area-inset-bottom)) calc(16px + env(safe-area-inset-left));flex:1;animation:page-in .24s cubic-bezier(.22,1,.36,1)}.page.with-cta{padding-bottom:calc(170px + env(safe-area-inset-bottom))}.topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:4px 0 18px}.logo{display:inline-flex;align-items:center;gap:8px;text-decoration:none}.logo img{width:30px;height:30px;filter:drop-shadow(0 2px 4px rgba(44,106,27,.25))}.wordmark{font:800 21px/1 "Nunito",var(--font);letter-spacing:-.02em}.wordmark .eat{color:#2c6a1b}.wordmark .week{color:#5fae38}.tabbar{position:fixed;left:0;right:0;bottom:max(10px,calc(env(safe-area-inset-bottom) - 12px));z-index:20;display:flex;justify-content:center;padding:0 22px;pointer-events:none}.tabbar nav{position:relative;pointer-events:auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;width:100%;max-width:330px;height:64px;padding:0 6px;border-radius:999px;background:#ffffffc7;-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(255,255,255,.9);box-shadow:0 12px 32px #1d222024,0 2px 8px #1d22200f,inset 0 0 0 .5px #1d22200f;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}.tabbar button{position:relative;z-index:1;display:grid;place-items:center;height:64px;border:0;background:none;padding:0;cursor:pointer;color:#7c847e;transition:color .25s ease,transform .2s ease;-webkit-tap-highlight-color:transparent}.tabbar button svg{width:24px;height:24px;transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.tabbar button.on{color:#fff}.tabbar button.on svg{transform:scale(1.06)}.tabbar button:focus-visible{outline:none}.tabbar button:focus-visible svg{outline:3px solid var(--focus);outline-offset:6px;border-radius:6px}.tab-knob{position:absolute;left:0;top:6px;width:52px;height:52px;border-radius:50%;background:linear-gradient(145deg,#7fcf58,#57a834);box-shadow:0 8px 18px #57a8346b,inset 0 1px #ffffff59;transition:box-shadow .2s,opacity .2s;will-change:transform;transform-origin:50% 50%}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:0 22px;border-radius:14px;border:0;cursor:pointer;background:var(--green);color:#fff;font-weight:600;font-size:16px;text-decoration:none;transition:background .15s,transform .08s}.btn:hover{background:var(--green-press)}.btn:active{transform:scale(.985)}.btn[disabled]{background:#c9e6b6;cursor:not-allowed;transform:none}.btn.block{width:100%}.btn.ghost{background:var(--card);color:var(--text);box-shadow:inset 0 0 0 1px var(--line)}.btn.ghost:hover{background:#fafbf9}.btn.small{min-height:38px;padding:0 14px;font-size:14px;border-radius:11px;white-space:nowrap}.btn svg{width:18px;height:18px;flex-shrink:0}.btn .arrow{font-size:18px;line-height:1}.linkbtn{background:none;border:0;padding:6px 0;color:var(--green-ink);font-weight:600;cursor:pointer}.iconbtn{width:38px;height:38px;border-radius:50%;border:0;background:transparent;color:var(--text);display:grid;place-items:center;cursor:pointer;flex:none}.iconbtn:hover{background:#0000000a}.iconbtn svg{width:22px;height:22px}.iconbtn.soft{background:var(--card);box-shadow:var(--shadow)}.input{width:100%;min-height:50px;padding:0 14px;border-radius:12px;border:1px solid var(--line);background:var(--card)}.input:focus{border-color:var(--green);outline:none;box-shadow:0 0 0 3px var(--green-soft)}.field{display:grid;gap:6px}.field label{font-weight:600;font-size:14px}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{border:1px solid var(--line);background:var(--card);border-radius:999px;padding:7px 13px;font-size:14px;cursor:pointer;display:inline-flex;align-items:center;gap:6px}.chip .emo{width:18px;height:18px}.chip[aria-pressed=true]{background:var(--text);border-color:var(--text);color:#fff}.chip.green[aria-pressed=true]{background:var(--green);border-color:var(--green)}.tiles{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}.tile{position:relative;border:1px solid var(--line);background:var(--card);border-radius:14px;padding:16px 10px 14px;cursor:pointer;display:grid;justify-items:center;align-content:center;gap:4px;text-align:center;min-height:104px;transition:border-color .15s,background .15s}.tile .emo{width:30px;height:30px;margin-bottom:4px}.tile strong{font-weight:600;font-size:14.5px;line-height:1.25}.tile small{color:var(--muted);font-size:12px;line-height:1.3}.tile[aria-pressed=true]{background:var(--green-soft);border-color:var(--green);box-shadow:inset 0 0 0 .5px var(--green)}.tile[aria-pressed=true]:after,.check-on{content:"";position:absolute;top:9px;right:9px;width:18px;height:18px;border-radius:50%;background:var(--green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 10.5l3 3 7-7' fill='none' stroke='white' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/12px no-repeat}.tile[disabled]{opacity:.5;cursor:not-allowed}.opts{display:grid;gap:10px}.opt{display:grid;grid-template-columns:44px minmax(0,1fr) 24px;gap:12px;align-items:center;padding:12px 14px;border:1px solid var(--line);background:var(--card);border-radius:14px;cursor:pointer;text-align:left;width:100%}.opt .ico{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--bg)}.opt .ico .emo{width:28px;height:28px}.opt strong{display:block;font-weight:600}.opt small{color:var(--muted);font-size:12.5px}.box{width:22px;height:22px;border-radius:7px;border:1.5px solid #d3d7d1;background:var(--card)}.opt[aria-pressed=true]{border-color:var(--green);background:var(--green-soft)}.opt[aria-pressed=true] .box{border-color:var(--green);background:var(--green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 10.5l3 3 7-7' fill='none' stroke='white' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/14px no-repeat}.opt[disabled]{opacity:.55;cursor:not-allowed}.stepper{display:inline-flex;align-items:center;gap:12px}.stepper button{width:34px;height:34px;border-radius:50%;border:1px solid var(--line);background:var(--card);font-size:18px;cursor:pointer;display:grid;place-items:center;line-height:1}.stepper button.plus{background:var(--green);border-color:var(--green);color:#fff}.stepper button[disabled]{opacity:.35;cursor:not-allowed}.stepper output{min-width:22px;text-align:center;font-weight:700;font-size:18px}.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:16px}.card.flat{box-shadow:none}.stack{display:grid;gap:12px;align-content:start}.stack.lg{gap:20px}.row{display:flex;align-items:center;gap:12px}.row.between{justify-content:space-between}.wrap{flex-wrap:wrap}.grow{flex:1;min-width:0}.bar{height:6px;border-radius:99px;background:#e9ece6;overflow:hidden}.bar span{display:block;height:100%;border-radius:inherit;background:var(--green)}.bar.over span{background:var(--bad-ink)}.pill{display:inline-flex;align-items:center;gap:5px;border-radius:99px;padding:3px 10px;font-size:12.5px;font-weight:600}.pill.green{background:var(--green-soft);color:var(--green-ink)}.pill.bad{background:var(--bad-soft);color:var(--bad-ink)}.pill.grey{background:var(--bg);color:var(--muted)}.meta{display:flex;flex-wrap:wrap;gap:3px 12px;color:var(--muted);font-size:12.5px}.meta span{display:inline-flex;align-items:center;gap:3px}.meta svg{width:13px;height:13px}.notice{padding:14px;border-radius:14px;display:grid;grid-template-columns:22px minmax(0,1fr);gap:10px}.notice svg{width:22px;height:22px}.notice.ok{background:var(--green-soft);color:var(--green-ink)}.notice.warn{background:var(--warn-soft);color:var(--warn-ink)}.notice.bad{background:var(--bad-soft);color:var(--bad-ink)}.notice p{color:var(--text);opacity:.8;font-size:13.5px}.alert{padding:13px 14px;border-radius:12px;background:var(--bad-soft);color:var(--bad-ink);font-weight:500;font-size:14px}.dishes{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:4px 14px}.dish{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:12px;align-items:center;text-decoration:none;color:inherit;padding:11px 0}.dish+.dish{border-top:1px solid var(--line)}.thumb{width:52px;height:52px;border-radius:13px;display:grid;place-items:center;flex:none}.thumb .emo{width:34px;height:34px}.thumb.photo{overflow:hidden;background:var(--line)}.thumb.photo img{width:100%;height:100%;object-fit:cover;display:block}.dish .name{font-weight:600;font-size:15px;line-height:1.3}.dish .label{margin-bottom:1px}.home-btn{display:inline-flex;align-items:center;gap:4px;background:none;border:0;padding:0;font:inherit;color:var(--green-ink);font-weight:600;cursor:pointer}.home-btn svg{width:14px;height:14px}.home-btn[disabled]{opacity:.6;cursor:wait}.dish.skipped .thumb{display:grid;place-items:center;width:52px;height:52px;border-radius:14px}.dish .sides{font-size:12.5px;color:var(--green-ink);font-weight:600;margin-top:1px}.swap-btn{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--line);background:var(--card);color:var(--text);border-radius:999px;padding:6px 10px;font-size:12.5px;font-weight:600;cursor:pointer;white-space:nowrap}.swap-btn svg{width:15px;height:15px;color:var(--green-ink)}.swap-btn:hover{border-color:var(--green);background:var(--green-soft)}.dish.alt{width:100%;background:none;border:0;border-top:1px solid var(--line);text-align:left;cursor:pointer}.dish.alt:hover{background:#fafbf9}.dish.alt[disabled]{opacity:.6;cursor:wait}.meta .cheaper{color:var(--green-ink);font-weight:600}.meta .pricier{color:var(--text)}.toast{position:fixed;left:16px;right:16px;margin:0 auto;max-width:448px;bottom:calc(max(10px,env(safe-area-inset-bottom) - 12px) + 82px);z-index:30;background:var(--text);color:#fff;padding:12px 16px;border-radius:14px;font-size:14px;font-weight:500;box-shadow:0 10px 30px #0003;animation:up .2s ease}.toast.above-cta{bottom:calc(160px + env(safe-area-inset-bottom))}.ob-top{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center}.ob-top .logo{justify-self:center}.ob-top .lang{justify-self:end}.lang{display:inline-flex;background:var(--card);border:1px solid var(--line);border-radius:10px;padding:2px}.lang button{border:0;background:none;padding:5px 8px;border-radius:8px;font-size:12px;font-weight:700;color:var(--muted);cursor:pointer;letter-spacing:.02em}.lang button[aria-pressed=true]{background:var(--green);color:#fff}.progress{height:3px;background:#e7eae4;border-radius:99px;overflow:hidden;margin:10px 0 22px}.progress span{display:block;height:100%;background:var(--green);transition:width .25s ease}.ob-head{display:grid;gap:5px;margin-bottom:18px}.ob-head h1{font-size:23px}.ob-head p{font-size:14px}.ob-foot{position:fixed;left:0;right:0;bottom:0;padding:12px 16px calc(14px + env(safe-area-inset-bottom));background:linear-gradient(to top,var(--bg) 72%,rgba(246,247,244,0));display:flex;justify-content:center;z-index:10}.ob-foot>div{width:100%;max-width:448px;display:flex;gap:10px}.kitchen{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.kitchen .tile{min-height:112px}.kitchen .tile svg{width:46px;height:46px;color:#4b524d}.kitchen .tile[aria-pressed=true] svg{color:var(--green-ink)}.pantry{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.pantry .tile{min-height:92px;padding:10px 6px}.pantry .tile .emo{width:34px;height:34px}.pantry .tile strong{font-size:12px;font-weight:500}.pantry .tile[aria-pressed=true]:after{width:16px;height:16px;top:6px;right:6px;background-size:10px}.days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.days button{position:relative;aspect-ratio:.82;border-radius:12px;border:1px solid var(--line);background:var(--card);font-weight:600;cursor:pointer;display:grid;justify-items:center;align-content:center;gap:6px;font-size:14px}.days button:after{content:"";width:16px;height:16px;border-radius:50%;border:1.5px solid #d3d7d1}.days button[aria-pressed=true]{border-color:var(--green);background:var(--green-soft)}.days button[aria-pressed=true]:after{border-color:var(--green);background:var(--green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 10.5l3 3 7-7' fill='none' stroke='white' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/11px no-repeat}.who{display:grid;gap:0}.who .line{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px 0}.who .line+.line{border-top:1px solid var(--line)}.who .line .emo{width:32px;height:32px}.big-money{font-size:46px;font-weight:700;letter-spacing:-.03em;line-height:1}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:30px;background:transparent}input[type=range]::-webkit-slider-runnable-track{height:6px;border-radius:99px;background:linear-gradient(to right,var(--green) var(--fill, 50%),#e5e8e2 var(--fill, 50%))}input[type=range]::-moz-range-track{height:6px;border-radius:99px;background:#e5e8e2}input[type=range]::-moz-range-progress{height:6px;border-radius:99px;background:var(--green)}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:24px;height:24px;margin-top:-9px;border-radius:50%;background:#fff;border:2px solid var(--green);box-shadow:var(--shadow)}input[type=range]::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:#fff;border:2px solid var(--green)}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.stats div,.stats .stat-link{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:12px 10px}.stats b{display:block;font-size:17px;font-weight:700}.stats span{font-size:10.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.stats .stat-link{text-decoration:none;color:inherit}.stats .stat-pick{position:relative;text-align:left;font:inherit;color:inherit;cursor:pointer;background:var(--card);border:1px solid var(--green);border-radius:12px;padding:12px 10px;box-shadow:0 2px 8px #6abd452e;transition:background .15s,transform .08s}.stats .stat-pick b{color:var(--green-ink)}.stats .stat-pick em{display:block;margin-top:4px;font-style:normal;font-size:11.5px;font-weight:600;color:var(--green-ink)}.stats .stat-pick:active{transform:scale(.97)}.stats .stat-pick.on{background:var(--green-soft)}.stats .stat-pick.on:after{content:"";position:absolute;top:8px;right:8px;width:16px;height:16px;border-radius:50%;background:var(--green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 10.5l3 3 7-7' fill='none' stroke='white' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/11px no-repeat}.stats .stat-link b{color:var(--green-ink)}.gen{min-height:78dvh;display:grid;place-content:center;gap:26px;justify-items:center}.orbit{width:190px;height:190px;position:relative}.orbit .core{position:absolute;top:52px;right:52px;bottom:52px;left:52px;filter:drop-shadow(0 10px 22px rgba(44,106,27,.35))}.orbit .core img{width:100%;height:100%}.orbit .ring{position:absolute;top:0;right:0;bottom:0;left:0;animation:spin 9s linear infinite}.orbit .ring .emo{position:absolute;width:30px;height:30px;left:calc(50% - 15px);top:calc(50% - 15px);animation:spin 9s linear infinite reverse}@keyframes spin{to{transform:rotate(360deg)}}.gen-steps{list-style:none;padding:0;margin:0;display:grid;gap:11px;width:min(300px,88vw)}.gen-steps li{display:flex;align-items:center;gap:10px;color:#b4b9b4;font-size:14.5px}.gen-steps .dot{width:20px;height:20px;border-radius:50%;border:1.5px solid #d6dad4;flex:none}.gen-steps li.done,.gen-steps li.now{color:var(--text)}.gen-steps li.done .dot{border-color:var(--green);background:var(--green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 10.5l3 3 7-7' fill='none' stroke='white' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/12px no-repeat}.gen-steps li.now .dot{border-color:var(--green);border-top-color:transparent;animation:spin .8s linear infinite}.summary{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:10px}.summary .card{padding:14px}.spent b{display:block;font-size:25px;font-weight:700;letter-spacing:-.02em;margin:2px 0 9px}.grocery-card{display:grid;align-content:space-between;text-decoration:none;color:inherit}.grocery-card .ico{width:36px;height:36px;border-radius:10px;background:var(--green-soft);color:var(--green-ink);display:grid;place-items:center}.grocery-card .ico svg{width:20px;height:20px}.day-title{margin:18px 2px 8px;font-size:15px;font-weight:700}.sticky-cta{position:fixed;left:0;right:0;bottom:calc(max(10px,env(safe-area-inset-bottom) - 12px) + 72px);padding:10px 16px 12px;display:flex;justify-content:center;z-index:15;background:linear-gradient(to top,var(--bg) 70%,rgba(246,247,244,0))}.sticky-cta>*{width:100%;max-width:448px}.g-group{margin-top:16px}.store-head{margin:26px 2px 2px}.store-head h2{display:inline-flex;align-items:center;gap:8px;font-size:19px}.g-group h3{margin:0 2px 8px;font-size:14px}.g-list{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:0 14px}.g-item{display:grid;grid-template-columns:24px 36px minmax(0,1fr) auto;gap:11px;padding:12px 0;align-items:center}.g-item+.g-item{border-top:1px solid var(--line)}.g-item input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:22px;height:22px;margin:0;border-radius:50%;border:1.5px solid #cfd4cd;cursor:pointer}.g-item input[type=checkbox]:checked{border-color:var(--green);background:var(--green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 10.5l3 3 7-7' fill='none' stroke='white' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/13px no-repeat}.g-item .emo{width:32px;height:32px;justify-self:center}.g-item.checked .g-name,.g-item.checked .g-sub{text-decoration:line-through;color:var(--muted)}.g-item.checked .emo,.g-item.checked .g-name{font-weight:600;font-size:14.5px}.g-sub{font-size:12.5px;color:var(--muted);line-height:1.35}.g-price{text-align:right;font-weight:600;font-size:14px;white-space:nowrap}.g-price s{display:block;font-weight:400;color:var(--muted);font-size:12px}.sale{display:inline-block;background:var(--bad-soft);color:var(--bad-ink);border-radius:6px;padding:0 5px;font-size:11px;font-weight:700;margin-bottom:2px}.hero-dish{position:relative;border-radius:20px;height:230px;display:grid;place-items:center}.hero-dish.photo{overflow:hidden}.hero-photo{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.hero-dish .iconbtn{z-index:1}.photo-credit{margin:6px 2px 0;font-size:11px;color:var(--muted);line-height:1.35}.photo-credit a{color:inherit}.hero-dish>.emo{width:140px;height:140px;filter:drop-shadow(0 12px 18px rgba(0,0,0,.12))}.hero-dish .fav{position:absolute;left:12px;bottom:12px}.actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:10px 0}.actions button,.actions a{background:none;border:0;display:grid;justify-items:center;gap:4px;font-size:12px;color:var(--text);text-decoration:none;cursor:pointer;padding:4px}.actions svg{width:22px;height:22px}.actions .on{color:var(--bad-ink)}.macros{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}.macros b{display:block;font-size:24px;font-weight:700;letter-spacing:-.02em}.macros span{font-size:12px;color:var(--muted)}.notes{display:grid;gap:8px;font-size:14px}.notes .sep{color:var(--line);margin:0 6px}.tabs{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);border-bottom:1px solid var(--line)}.tabs button{border:0;background:none;padding:12px 4px;font-weight:600;cursor:pointer;color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-1px}.tabs button[aria-selected=true]{color:var(--text);border-bottom-color:var(--green)}.ing{display:grid;grid-template-columns:30px minmax(0,1fr);gap:12px;align-items:center;padding:10px 0}.ing+.ing{border-top:1px solid var(--line)}.ing .emo{width:28px;height:28px}.ing b{font-weight:600;margin-right:6px}.steps{list-style:none;padding:0;margin:0;counter-reset:s;display:grid;gap:16px}.steps li{counter-increment:s;display:grid;grid-template-columns:28px minmax(0,1fr);gap:12px;font-size:16px;line-height:1.55}.steps li:before{content:counter(s);width:26px;height:26px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;font-weight:700;font-size:13px;margin-top:1px}.stars{display:inline-flex;gap:1px}.stars button{background:none;border:0;font-size:20px;cursor:pointer;color:#d9ddd7;padding:2px;line-height:1}.stars button.on{color:#f5b301}.cook{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--card);z-index:50;display:grid;grid-template-rows:auto auto 1fr auto;gap:14px;padding:18px 16px calc(16px + env(safe-area-inset-bottom))}.cook .text{align-self:center;max-width:640px;margin:0 auto;font-size:clamp(22px,5.5vw,30px);line-height:1.45;font-weight:500}.plan-item{position:relative}.plan-item.picking{cursor:pointer}.plan-item.picked{background:var(--green-soft);border-color:var(--green)}.pick{display:inline-block;flex-shrink:0;width:22px;height:22px;border-radius:50%;border:2px solid #c9cfc9;background:var(--card)}.pick.on{border-color:var(--green);background:var(--green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 10.5l3 3 7-7' fill='none' stroke='white' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/14px no-repeat}.pick.corner{position:absolute;top:14px;right:14px}.pick-bar{position:sticky;bottom:calc(92px + env(safe-area-inset-bottom));z-index:5}.pick-bar .btn{box-shadow:0 8px 24px #c2352f40}.dialog-back{position:fixed;top:0;right:0;bottom:0;left:0;background:#1418166b;z-index:50;display:flex;align-items:center;justify-content:center;padding:16px;animation:fade .15s ease}.dialog{width:100%;max-width:380px;background:var(--card);border-radius:22px;padding:22px 18px 18px;display:grid;justify-items:center;gap:8px;text-align:center;box-shadow:0 18px 50px #1418162e;animation:pop .18s ease}.dialog h2{font-size:19px;margin-top:4px}.dialog p{font-size:15px}.dialog-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;width:100%;margin-top:10px}.dialog-actions .btn{min-height:48px;padding:0 12px}.btn.danger{background:var(--bad-ink)}.btn.danger:hover{background:#a92c27}.btn.danger[disabled]{background:#e6a9a6}@keyframes pop{0%{transform:scale(.94);opacity:0}to{transform:none;opacity:1}}.sheet-back{position:fixed;top:0;right:0;bottom:0;left:0;background:#1418166b;z-index:40;display:flex;align-items:flex-end;justify-content:center;animation:fade .15s ease}.sheet{width:100%;max-width:480px;max-height:85dvh;overflow:auto;background:var(--card);border-radius:22px 22px 0 0;padding:16px 16px calc(18px + env(safe-area-inset-bottom));animation:up .2s ease}@keyframes up{0%{transform:translateY(40px)}}@keyframes fade{0%{opacity:0}}.auth{max-width:460px}.btn.apple{background:#000;color:#fff}.btn.apple:hover{background:#222}.google-slot{min-height:44px;display:flex;justify-content:center}.or{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px;color:var(--muted);font-size:13px}.or:before,.or:after{content:"";height:1px;background:var(--line)}.code-input{font-size:28px;font-weight:700;letter-spacing:.5em;text-align:center;min-height:64px;font-variant-numeric:tabular-nums}.avatar{display:grid;place-items:center;border-radius:50%;color:#fff;font-weight:700;flex:none;box-shadow:0 4px 14px #1d22201f}.landing-hero{display:grid;gap:26px;padding:18px 0 30px}.landing-hero h1{font-size:clamp(30px,7vw,46px);line-height:1.1;letter-spacing:-.025em}.landing-hero .lead{font-size:17px;color:var(--muted);max-width:32em}.preview{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:16px;box-shadow:0 20px 50px #1d222014;max-width:400px;width:100%}.how{display:grid;gap:12px;padding:10px 0 30px}.how .card{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px}.how .emo{width:40px;height:40px}.store-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;border:1px solid var(--line)}.store-row.chosen{background:var(--green-soft);border-color:transparent}.store-row .cheaper{color:var(--green-ink);font-weight:600}.store-row .pricier{color:var(--muted)}.store-row .btn.small{flex-shrink:0}.plan-item.current{border-color:var(--green);box-shadow:0 0 0 1px var(--green) inset}.festive{background:linear-gradient(135deg,#fffaf0,#fff)}.feast{border-top:1px solid var(--line);padding-top:10px;display:grid;gap:6px}.feast-dish{display:flex;align-items:center;gap:10px;text-decoration:none;color:inherit;padding:3px 0;font-size:14.5px}.feast-pick{display:grid;gap:8px}.feast-pick input[type=checkbox]{width:20px;height:20px;accent-color:var(--green);flex:none}@keyframes page-in{0%{opacity:0;transform:translate3d(var(--page-dx, 0px),var(--page-dy, 8px),0)}}@keyframes rise{0%{opacity:0;transform:translateY(14px) scale(.985)}}.btn,.chip,.tile,.opt,.iconbtn,.swap-btn,.dish,.stat-link,.stat-pick,.card[href]{transition:transform .18s cubic-bezier(.34,1.56,.64,1),background .15s,box-shadow .2s,border-color .15s}.btn:active,.chip:active,.iconbtn:active,.swap-btn:active{transform:scale(.95)}.tile:active,.opt:active,a.dish:active,.dish.alt:active,a.card:active,.stat-link:active{transform:scale(.98)}.stack>.card,.stack>section,.stack>.summary,.dishes{animation:rise .3s cubic-bezier(.22,1,.36,1) both}.stack>:nth-child(2){animation-delay:25ms}.stack>:nth-child(3){animation-delay:.05s}.stack>:nth-child(4){animation-delay:75ms}.stack>:nth-child(5){animation-delay:.1s}.day-view{animation:day-in .35s cubic-bezier(.22,1,.36,1)}@keyframes day-in{0%{opacity:0;transform:translate(18px)}}.week-strip{padding:16px 14px 14px;display:grid;gap:12px}.week-strip .month{font-size:18px;font-weight:700;letter-spacing:-.01em}.iconbtn.round{width:34px;height:34px;border-radius:50%;background:var(--bg)}.iconbtn.round svg{width:18px;height:18px}.iconbtn.round.flip svg{transform:scaleX(-1)}.iconbtn.round[disabled]{opacity:.35}.week-strip .wk-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.week-strip .wk-day{position:relative;display:grid;justify-items:center;gap:6px;padding:10px 0 11px;border:0;border-radius:999px;background:none;cursor:pointer;transition:background .3s cubic-bezier(.22,1,.36,1),transform .2s cubic-bezier(.34,1.56,.64,1);-webkit-tap-highlight-color:transparent}.week-strip .wd{font-size:12.5px;color:var(--muted);text-transform:capitalize}.week-strip .dd{font-size:16px;font-weight:600}.week-strip .wk-day.active{background:#d9f2c4;transform:scale(1.04)}.week-strip .wk-day.active .wd{color:var(--green-ink);font-weight:600}.week-strip .wk-day:active{transform:scale(.94)}.week-strip .wk-day.today:after{content:"";position:absolute;bottom:4px;width:5px;height:5px;border-radius:50%;background:var(--green)}.week-strip .wk-day[disabled]{cursor:default;opacity:.32}.week-strip .wk-day[disabled] .dd{font-weight:400}.ring-card{display:grid;grid-template-columns:136px minmax(0,1fr);gap:18px;align-items:center;padding:16px}.ring{position:relative;width:136px;height:136px}.ring svg{width:100%;height:100%;transform:rotate(-90deg)}.ring .track{fill:none;stroke:#eef0ec;stroke-width:11}.ring .seg{fill:none;stroke-width:11;stroke-linecap:round;transition:stroke-dasharray .7s cubic-bezier(.22,1,.36,1),stroke-dashoffset .7s cubic-bezier(.22,1,.36,1)}.ring-center{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;text-align:center}.ring-center b{font-size:28px;font-weight:700;letter-spacing:-.02em;line-height:1.1}.ring-center span{font-size:11.5px;color:var(--muted)}.ring-legend{display:grid;gap:8px}.legend-row{display:flex;align-items:center;gap:8px;font-size:14px}.legend-row .dot{width:10px;height:10px;border-radius:50%;flex:none}.budget-input{width:130px;min-height:42px;text-align:right}.add-dish .thumb{display:grid;place-items:center}.add-dish .thumb svg{width:24px;height:24px}.welcome{min-height:100dvh;max-width:480px;margin:0 auto;display:grid;grid-template-rows:auto 1fr auto auto;gap:18px;padding:calc(14px + env(safe-area-inset-top)) 22px calc(24px + env(safe-area-inset-bottom));background:radial-gradient(120% 60% at 50% 20%,#eaf6e1 0%,var(--bg) 60%)}.welcome-top{display:flex;justify-content:flex-end}.welcome-hero{display:grid;justify-items:center;align-content:center;gap:14px;text-align:center}.w-orbit{position:relative;width:260px;height:260px;display:grid;place-items:center}.welcome-logo{width:120px;height:120px;filter:drop-shadow(0 16px 26px rgba(44,106,27,.3));animation:logo-pop .9s cubic-bezier(.34,1.56,.64,1) both}@keyframes logo-pop{0%{transform:scale(.4) rotate(-14deg);opacity:0}60%{transform:scale(1.08) rotate(3deg);opacity:1}to{transform:none}}.food{position:absolute;left:50%;top:50%;width:40px;height:40px;margin:-20px 0 0 -20px;--a: calc(360deg / var(--n) * var(--i));transform:rotate(var(--a)) translateY(-112px) rotate(calc(-1 * var(--a)));animation:food-in .7s cubic-bezier(.34,1.56,.64,1) both,food-float 4s ease-in-out infinite;animation-delay:calc(.15s + var(--i) * .06s),calc(1s + var(--i) * .3s)}@keyframes food-in{0%{transform:rotate(var(--a)) translateY(0) rotate(calc(-1 * var(--a))) scale(.2);opacity:0}}@keyframes food-float{50%{transform:rotate(var(--a)) translateY(-120px) rotate(calc(-1 * var(--a)))}}.welcome-word{font-size:40px;animation:rise .6s .35s cubic-bezier(.22,1,.36,1) both}.welcome-title{font-size:21px;line-height:1.3;max-width:300px;font-weight:600;color:#3b423d;animation:rise .6s .45s cubic-bezier(.22,1,.36,1) both}.welcome-points{list-style:none;margin:0;padding:0;display:grid;gap:10px}.welcome-points li{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:16px;background:#ffffffbf;box-shadow:var(--shadow);font-size:15px;font-weight:500;animation:rise .5s var(--d) cubic-bezier(.22,1,.36,1) both}.welcome-actions{display:grid;gap:6px;justify-items:center;animation:rise .5s .8s cubic-bezier(.22,1,.36,1) both}.btn.big{min-height:58px;font-size:17px;border-radius:18px;box-shadow:0 10px 24px #6abd4559}.intro{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;background:var(--bg);animation:intro-out .45s .95s ease forwards;pointer-events:none}.intro img{width:172px;height:172px;animation:intro-logo 1.3s cubic-bezier(.34,1.4,.64,1) forwards;filter:drop-shadow(0 18px 30px rgba(44,106,27,.28))}.intro .wordmark{position:absolute;top:calc(50% + 70px);font-size:34px;animation:intro-word .9s .25s cubic-bezier(.22,1,.36,1) both}@keyframes intro-logo{0%{transform:scale(1)}22%{transform:scale(.9)}45%{transform:scale(1.06) translateY(-30px)}70%{transform:scale(1) translateY(-30px)}to{transform:scale(2.6) translateY(-30px);opacity:0}}@keyframes intro-word{0%{opacity:0;transform:translateY(14px)}70%{opacity:1;transform:none}to{opacity:0}}@keyframes intro-out{to{opacity:0;visibility:hidden}}.strip-sticky{position:sticky;top:calc(6px + env(safe-area-inset-top));z-index:6}.strip-sticky .week-strip{background:#ffffffdb;-webkit-backdrop-filter:blur(16px) saturate(170%);backdrop-filter:blur(16px) saturate(170%);box-shadow:0 8px 24px #1d222014}.day-block{scroll-margin-top:160px;transition:opacity .3s}.day-block .day-title{transition:color .3s}.day-block.current .day-title{color:var(--green-ink)}.card.spent.tap{text-align:left;font:inherit;color:inherit;cursor:pointer;width:100%}.spent-more{display:inline-flex;align-items:center;gap:2px;margin-top:10px;font-size:13px;font-weight:600;color:var(--green-ink)}.spent-more svg{width:15px;height:15px}.kcal-card{display:flex;align-items:center;gap:14px;text-decoration:none;color:inherit;padding:14px 16px}.kc-ring{width:54px;height:54px;flex:none;filter:drop-shadow(0 4px 10px rgba(255,140,90,.35))}.kc-arc{transition:stroke-dasharray .8s cubic-bezier(.22,1,.36,1)}.kcal-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.kd{display:grid;justify-items:center;gap:4px;border:0;background:none;padding:4px 0;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .2s cubic-bezier(.34,1.56,.64,1)}.kd svg{width:38px;height:38px;transform:rotate(-90deg)}.kd-track{fill:none;stroke:#e9ebe7;stroke-width:4}.kd-arc{fill:none;stroke:#ff9f5a;stroke-width:4;stroke-linecap:round;transition:stroke-dasharray .6s}.kd-wd{font-size:12px;color:var(--muted);text-transform:capitalize}.kd.active{transform:scale(1.12)}.kd.active .kd-track{fill:#fff1e4}.kd.active .kd-wd{color:var(--text);font-weight:700}.kd[disabled]{opacity:.35;cursor:default}.kd[disabled] .kd-track{stroke-dasharray:3 3}.kcal-hero{display:grid;justify-items:center;gap:8px;animation:rise .45s cubic-bezier(.22,1,.36,1)}.glow-ring{position:relative}.glow-ring svg{width:100%;height:100%;transform:rotate(-90deg);overflow:visible}.gr-track{fill:none;stroke-width:26}.gr-arc{fill:none;stroke-width:26;stroke-linecap:round;transition:stroke-dasharray 1.1s cubic-bezier(.22,1,.36,1)}.gr-glow{opacity:.55;animation:gr-breathe 2.6s ease-in-out infinite}@keyframes gr-breathe{50%{opacity:.9}}.gr-center{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;justify-items:center;text-align:center;gap:2px}.gr-center b{font-size:44px;font-weight:800;letter-spacing:-.03em;line-height:1}.gr-center span{font-size:13px;color:var(--muted)}.gr-center .gr-diff{margin-top:6px;font-size:12px;font-weight:600;padding:3px 10px;border-radius:999px}.gr-diff.ok{background:var(--green-soft);color:var(--green-ink)}.gr-diff.over{background:#ffe9e4;color:#c2512f}.gr-diff.under{background:#fff4dc;color:#9a6400}.macro-bars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;text-align:center}.mb{display:grid;gap:7px;justify-items:center}.mb strong{font-size:14px}.mb-bar{width:100%;height:7px;border-radius:999px;background:#eef0ec;overflow:hidden}.mb-bar span{display:block;height:100%;border-radius:999px;transition:width .9s cubic-bezier(.22,1,.36,1)}.mb .num{font-size:14px}.meal-tiles{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}.meal-tile{position:relative;display:grid;align-content:start;gap:2px;min-height:150px;padding:14px;border-radius:22px;text-decoration:none;color:#1d2220;overflow:hidden;box-shadow:inset 0 1px #fff9;transition:transform .18s cubic-bezier(.34,1.56,.64,1)}.meal-tile:active{transform:scale(.97)}.mt-meal{font-weight:700;font-size:15px}.mt-kcal{font-size:12.5px;opacity:.7}.mt-emo{position:absolute;right:10px;bottom:26px;filter:drop-shadow(0 8px 10px rgba(0,0,0,.15))}.mt-name{position:absolute;left:14px;right:14px;bottom:10px;font-size:12px;font-weight:600;line-height:1.25;opacity:.85;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:root{--bg: #fbf8f3;--line: #eee8de;--pink: #d96ec9;--pink-deep: #b9529f;--pink-soft: #fbe7f6;--yellow: #f6c445;--yellow-soft: #fff3cf;--blue: #3b64e0;--blue-soft: #e5ecff;--green-deep: #3f8a24;--shadow: 0 1px 2px rgba(70, 50, 30, .04), 0 8px 24px rgba(70, 50, 30, .07)}body{background:var(--bg)}h1{font-weight:800;letter-spacing:-.025em}.card,.dishes{border-radius:22px;border-color:transparent;box-shadow:var(--shadow)}.btn,.btn.small{border-radius:999px}.btn.ghost{background:#fff;box-shadow:inset 0 0 0 1.5px var(--line)}.input{border-radius:16px}.day-title{font-size:19px;font-weight:800;letter-spacing:-.01em}.tile,.opt{border-color:transparent;box-shadow:var(--shadow)}.tile{border-radius:22px}.opt{border-radius:20px}.tile[aria-pressed=true],.opt[aria-pressed=true]{background:linear-gradient(150deg,#72c24c,#3f8a24);color:#fff;border-color:transparent;box-shadow:0 10px 24px #3f8a244d}.tile[aria-pressed=true] small,.opt[aria-pressed=true] small{color:#ffffffd9}.tile[aria-pressed=true]:after{background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 10.5l3 3 7-7' fill='none' stroke='%233f8a24' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}.opt[aria-pressed=true] .ico{background:#ffffff38}.opt[aria-pressed=true] .box{border-color:#fff;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 10.5l3 3 7-7' fill='none' stroke='%233f8a24' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}.chip{border-color:var(--line)}.chip.green[aria-pressed=true]{background:var(--green-deep);border-color:var(--green-deep)}.progress{height:6px;background:#efe9df}.progress span{background:linear-gradient(90deg,var(--green),var(--pink));border-radius:99px}.card.spent{background:linear-gradient(150deg,#72c24c,#3f8a24);color:#fff;box-shadow:0 12px 26px #3f8a2447}.card.spent .label{color:#ffffffd1}.card.spent .pill.green{background:#ffffff38;color:#fff}.card.spent .pill.bad{background:#fff}.card.spent .bar{background:#ffffff4d}.card.spent .bar span{background:#fff}.card.spent .spent-more{color:#fff}.grocery-card{background:linear-gradient(150deg,#e690d8,#b9529f);color:#fff;box-shadow:0 12px 26px #b9529f47}.grocery-card .muted{color:#ffffffd9}.grocery-card .ico{background:#ffffff38;color:#fff}.grocery-card .row>span:last-child{color:#fff!important}.kcal-card{background:linear-gradient(135deg,#fff4d9,#ffe5f3)}.week-strip .wk-day.active{background:var(--yellow)}.week-strip .wk-day.active .wd{color:#6b4e00}.strip-sticky .week-strip{background:#fffdf9e0}.swap-btn{border-radius:999px}.store-row{border-radius:16px}.store-row.chosen{background:var(--green-soft)}.profile-stats>:nth-child(1){background:linear-gradient(150deg,#72c24c,#3f8a24);color:#fff;border-color:transparent}.profile-stats>:nth-child(2){background:linear-gradient(150deg,#e690d8,#b9529f);color:#fff;border-color:transparent}.profile-stats>:nth-child(1) b,.profile-stats>:nth-child(2) b,.profile-stats>:nth-child(1) span,.profile-stats>:nth-child(2) span{color:#fff}.welcome{position:relative;overflow:hidden;background:var(--bg)}.welcome>:not(.blob){position:relative;z-index:1}.blob{position:absolute;border-radius:50%;z-index:0;animation:blob-in .9s cubic-bezier(.34,1.56,.64,1) both}.blob.b1{width:230px;height:230px;left:-90px;top:70px;background:#8fd16a;opacity:.55}.blob.b2{width:190px;height:190px;right:-70px;top:210px;background:var(--pink);opacity:.45;animation-delay:.08s}.blob.b3{width:70px;height:70px;right:60px;top:40px;background:var(--yellow);opacity:.8;animation-delay:.16s}.blob.b4{width:46px;height:46px;left:40px;top:370px;background:var(--blue);opacity:.55;animation-delay:.24s}@keyframes blob-in{0%{transform:scale(0)}}.welcome-points li{border-radius:20px}.welcome-points li:nth-child(1){background:#eaf7e2}.welcome-points li:nth-child(2){background:var(--pink-soft)}.welcome-points li:nth-child(3){background:var(--yellow-soft)}.gen-page:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background:radial-gradient(120% 80% at 50% 30%,#ea9bdc,#c95fb6 70%)}.gen-page,.gen-page h1,.gen-page h2{color:#fff}.gen-page .gen-steps li{color:#ffffff8c}.gen-page .gen-steps li.done,.gen-page .gen-steps li.now{color:#fff}.gen-page .gen-steps .dot{border-color:#fff9}.gen-page .orbit .core{filter:drop-shadow(0 14px 26px rgba(90,20,80,.35))}.mt-breakfast{background:#fde58a}.mt-lunch{background:#bdeedd}.mt-dinner{background:#b4dbe3}.mt-snack{background:#d9d4f7}@media (prefers-color-scheme: dark){:root{color-scheme:dark;--bg: #0b0d0c;--card: #161917;--line: rgba(255, 255, 255, .08);--text: #f2f4f1;--muted: #8e978f;--green: #78cc52;--green-press: #66b843;--green-soft: rgba(120, 204, 82, .14);--green-line: rgba(120, 204, 82, .4);--green-ink: #93dd6f;--protein: #ff6b72;--carbs: #f6b14c;--fat: #6cc96f;--warn-soft: rgba(246, 196, 69, .12);--warn-ink: #f6c851;--bad-soft: rgba(255, 107, 114, .13);--bad-ink: #ff8287;--pink: #e48bd6;--pink-soft: rgba(228, 139, 214, .14);--yellow-soft: rgba(246, 196, 69, .14);--blue-soft: rgba(90, 130, 255, .16);--shadow: 0 0 0 1px rgba(255, 255, 255, .05), 0 12px 32px rgba(0, 0, 0, .5)}body{background:radial-gradient(130% 60% at 50% -12%,#18241a,#0b0d0c 58%) fixed,#0b0d0c}.card,.dishes,.tile,.opt,.welcome-points li{background:linear-gradient(180deg,#1a1d1b,#141715)}.card,.dishes{box-shadow:inset 0 1px #ffffff0d,0 0 0 1px #ffffff0d,0 14px 34px #00000073}.wordmark .eat{color:#a3e080}.wordmark .week{color:#78cc52}.input,.chip,.stepper button,.lang,.iconbtn.soft,.iconbtn.round{background:#1b1e1c;border-color:var(--line);color:var(--text)}.btn.ghost{background:#1b1e1c;box-shadow:inset 0 0 0 1px var(--line);color:var(--text)}.btn.ghost:hover,.dish.alt:hover{background:#222623}.btn{box-shadow:0 8px 22px #78cc5238}.btn.ghost,.btn.small.ghost{box-shadow:inset 0 0 0 1px var(--line)}.chip[aria-pressed=true]{color:#0b0d0c}.box,.days button:after,.g-item input[type=checkbox],.pick{border-color:#ffffff38}.progress{background:#ffffff14}.toast{background:#262a27;color:#fff;box-shadow:0 0 0 1px #ffffff14,0 12px 30px #00000080}.sheet,.dialog{background:#141715;box-shadow:0 0 0 1px #ffffff0f}.sheet-back,.dialog-back{background:#0009}.tabbar nav{background:#1a1d1bb8;border-color:#ffffff14;box-shadow:0 14px 34px #0000008c,inset 0 1px #ffffff0f}.tabbar button{color:#8e978f}.tab-knob{box-shadow:0 0 22px #78cc528c,0 8px 18px #0006,inset 0 1px #ffffff4d}.strip-sticky .week-strip{background:#141715d1;box-shadow:0 0 0 1px #ffffff0f,0 10px 26px #00000080}.week-strip .wk-day.active{background:#f6c445;box-shadow:0 0 18px #f6c44559}.card.spent{box-shadow:0 0 0 1px #ffffff0f,0 14px 34px #3f8a2459}.card.grocery-card{background:linear-gradient(150deg,#e690d8,#b9529f);box-shadow:0 0 0 1px #ffffff0f,0 14px 34px #b9529f59}.kcal-card{background:linear-gradient(135deg,#2a2316,#2a1727)}.kc-ring circle:first-child{stroke:#ffffff14}.thumb:not(.photo){box-shadow:inset 0 0 0 1px #ffffff0f}.store-row{border-color:var(--line)}.festive{background:linear-gradient(135deg,#251f14,#161917)}.ring .track,.kd-track,.gr-track{stroke:#ffffff14}.glow-ring pattern line{stroke:#ffffff12}.gr-glow{opacity:.75}.kd.active .kd-track{fill:#ff9f5a24}.mb-bar{background:#ffffff14}.meal-tile{color:var(--text);box-shadow:inset 0 1px #ffffff0f,0 0 0 1px #ffffff0d}.mt-breakfast{background:linear-gradient(160deg,#fddc6e52,#fddc6e1a)}.mt-lunch{background:linear-gradient(160deg,#78dcb94d,#78dcb917)}.mt-dinner{background:linear-gradient(160deg,#6ebed74d,#6ebed717)}.mt-snack{background:linear-gradient(160deg,#b4a5fa52,#b4a5fa1a)}.gr-diff.over{background:#ff785a29;color:#ff9a7f}.gr-diff.under{background:#f6c44524;color:#f6c851}.welcome{background:radial-gradient(120% 60% at 50% 18%,#1a2a17,#0b0d0c 62%)}.welcome-title{color:#c9cfc9}.gen-page:before{background:radial-gradient(120% 80% at 50% 30%,#7a2f6d,#2a0f26 75%)}.blob.b1{opacity:.28}.blob.b2{opacity:.26}.blob.b3{opacity:.5}.blob.b4{opacity:.4}.welcome-points li:nth-child(1){background:#78cc521f}.welcome-points li:nth-child(2){background:#e48bd61f}.welcome-points li:nth-child(3){background:#f6c4451f}.g-item.checked .g-name,.g-item.checked .g-sub{color:#5d655f}input[type=range]{accent-color:var(--green)}.stats div,.stats .stat-link{border-color:transparent}.avatar{box-shadow:0 0 0 1px #ffffff1a}}.ptr{position:fixed;left:50%;top:calc(6px + env(safe-area-inset-top));z-index:30;width:34px;height:34px;margin-left:-17px;pointer-events:none;transition:transform .45s cubic-bezier(.34,1.3,.64,1),opacity .3s}.ptr.drag{transition:none}.ptr svg{width:34px;height:34px;display:block;filter:drop-shadow(0 2px 6px rgba(90,168,58,.35));will-change:transform}.ptr-track{stroke:#788c782e}.ptr.busy svg{animation:spin .7s linear infinite}body:before{content:"";position:fixed;left:0;right:0;top:0;z-index:25;pointer-events:none;height:calc(env(safe-area-inset-top) + 18px);-webkit-backdrop-filter:blur(14px) saturate(160%);backdrop-filter:blur(14px) saturate(160%);-webkit-mask-image:linear-gradient(to bottom,#000 60%,transparent);mask-image:linear-gradient(to bottom,#000 60%,transparent)}.tabbar nav{grid-template-columns:repeat(5,minmax(0,1fr));max-width:372px;height:66px;background:linear-gradient(180deg,#ffffff94,#ffffff57);-webkit-backdrop-filter:blur(24px) saturate(200%) brightness(1.04);backdrop-filter:blur(24px) saturate(200%) brightness(1.04);border:1px solid rgba(255,255,255,.75);box-shadow:inset 0 1px 1px #ffffffe6,inset 0 -1px 1px #0000000a,0 10px 30px #281e1424,0 1px 3px #281e1414}.tabbar button{height:66px}.tab-knob{top:7px}.strip-sticky .week-strip{background:linear-gradient(180deg,#ffffff9e,#ffffff61);-webkit-backdrop-filter:blur(22px) saturate(190%);backdrop-filter:blur(22px) saturate(190%);border:1px solid rgba(255,255,255,.75);box-shadow:inset 0 1px 1px #ffffffe6,0 10px 28px #281e141a}@media (prefers-color-scheme: dark){.tabbar nav{background:linear-gradient(180deg,#3c403d6b,#1c1f1d5c);border-color:#ffffff1f;box-shadow:inset 0 1px 1px #ffffff24,inset 0 -1px 1px #0000004d,0 14px 34px #0000008c}.strip-sticky .week-strip{background:linear-gradient(180deg,#3c403d73,#181b1966);border:1px solid rgba(255,255,255,.1);box-shadow:inset 0 1px 1px #ffffff1f,0 12px 30px #00000080}}.kcal-tile{display:grid;align-content:space-between;gap:8px;text-decoration:none;color:#3b2a1e;background:linear-gradient(150deg,#ffd9a8,#ffb3c9);box-shadow:0 12px 26px #f2709c40}.kcal-tile .label{color:#3b2a1eb3}.kt-ring{display:flex;align-items:center;gap:10px}.kt-ring svg{width:58px;height:58px;flex:none;filter:drop-shadow(0 3px 8px rgba(242,112,156,.4))}.kt-track{stroke:#ffffff8c}.kt-ring b{display:block;font-size:24px;font-weight:800;letter-spacing:-.02em;line-height:1}.kt-ring span{font-size:12px;opacity:.7}@media (prefers-color-scheme: dark){.card.kcal-tile{background:linear-gradient(150deg,#5a3a22,#5a2340);color:#ffe9dc;box-shadow:0 0 0 1px #ffffff0f,0 14px 34px #f2709c38}.kcal-tile .label{color:#ffe9dcb3}.kt-track{stroke:#ffffff1f}}.sheet-back{animation:fade .28s ease}.sheet{animation:sheet-up .42s cubic-bezier(.32,.72,0,1);will-change:transform}@keyframes sheet-up{0%{transform:translate3d(0,100%,0)}}.sheet-back.leaving{animation:none;background-color:transparent!important}.sheet-back.leaving .sheet{animation:sheet-down .26s cubic-bezier(.32,.72,0,1) forwards}@keyframes sheet-down{to{transform:translate3d(0,100%,0)}}@keyframes fade-out{to{opacity:0}}.ptr svg{transition:none}.ptr.busy svg{animation:spin .55s linear infinite}.sheet.tall{height:88dvh;max-height:88dvh}.tabbar nav{background:linear-gradient(180deg,#ffffff52,#ffffff29);-webkit-backdrop-filter:blur(14px) saturate(190%);backdrop-filter:blur(14px) saturate(190%);border-color:#ffffffb3}.strip-sticky .week-strip{background:linear-gradient(180deg,#ffffff5c,#ffffff2e);-webkit-backdrop-filter:blur(14px) saturate(190%);backdrop-filter:blur(14px) saturate(190%)}@media (prefers-color-scheme: dark){.tabbar nav{background:linear-gradient(180deg,#464c4842,#1e211f2e);border-color:#ffffff24}.strip-sticky .week-strip{background:linear-gradient(180deg,#464c4847,#1e211f33)}}.sheet-grab{display:block;width:40px;height:5px;border-radius:99px;background:#787d7859;margin:-6px auto 10px}.sheet{touch-action:pan-y}.tabbar button svg{transition:transform .28s cubic-bezier(.34,1.7,.64,1)}.tabbar button.zoom svg{transform:scale(1.42) translateY(-3px)}.tabbar button.zoom.on svg{transform:scale(1.32)}.tabbar nav{background:linear-gradient(180deg,#ffffff38,#ffffff1c)}.strip-sticky .week-strip{background:linear-gradient(180deg,#ffffff40,#ffffff21)}@media (prefers-color-scheme: dark){.tabbar nav{background:linear-gradient(180deg,#464c482e,#1e211f21)}.strip-sticky .week-strip{background:linear-gradient(180deg,#464c4833,#1e211f24)}}body:before{-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--bg)}@media (prefers-color-scheme: dark){body:before{background:radial-gradient(130% 60% at 50% -12%,#18241a,#0b0d0c 58%) fixed,#0b0d0c}}.emoji-pick{display:grid;grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:6px}.emoji-pick button{height:46px;border-radius:14px;border:1.5px solid transparent;background:var(--bg);display:grid;place-items:center;cursor:pointer}.emoji-pick button[aria-pressed=true]{border-color:var(--green);background:var(--green-soft)}.own-row{display:grid;grid-template-columns:28px minmax(0,1fr) 64px 74px 36px;gap:8px;align-items:center}.own-name{font-size:14.5px;font-weight:500;min-width:0;overflow:hidden;text-overflow:ellipsis}.own-amount,.own-unit{min-height:40px;padding:0 8px;font-size:15px}.own-amount{text-align:right}.own-step{display:grid;grid-template-columns:26px minmax(0,1fr) auto;gap:8px;align-items:start}.own-step-n{width:26px;height:26px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;font-weight:700;font-size:13px;margin-top:8px}.own-step textarea{resize:vertical;min-height:60px;padding:10px 12px;font:inherit}.own-pick{grid-template-columns:36px minmax(0,1fr) auto}.own-empty{display:flex;gap:14px;align-items:center;text-decoration:none;color:inherit}body:before{height:calc(env(safe-area-inset-top) + 8px);-webkit-mask-image:linear-gradient(to bottom,#000 calc(100% - 8px),transparent);mask-image:linear-gradient(to bottom,#000 calc(100% - 8px),transparent)}.strip-sticky{top:calc(env(safe-area-inset-top) + 8px)}@media (prefers-color-scheme: dark){.btn:not(.ghost):not(.danger):not(.apple){color:#0d1a07}.btn:not(.ghost):not(.danger):not(.apple)[disabled]{background:#2d3a28;color:#7d8a77}.tile[aria-pressed=true],.opt[aria-pressed=true]{color:#fff}}.unfit{opacity:.5}.dish.alt.unfit{cursor:not-allowed}.blob.b4{top:250px;left:18px;width:38px;height:38px}@media (prefers-color-scheme: dark){.btn.danger{background:#d8433c;color:#fff}.btn.danger[disabled]{background:#5a2a28;color:#b58a88}.hero-dish:before,.thumb:not(.photo):before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:#0b0d0c6b}.thumb:not(.photo){position:relative}.hero-dish>.emo,.thumb:not(.photo)>.emo{position:relative;z-index:1}}.g-item{grid-template-columns:24px 44px minmax(0,1fr) auto}.g-photo{width:44px;height:44px;border-radius:12px;background:#fff;display:grid;place-items:center;overflow:hidden;box-shadow:0 0 0 1px #0000000f;justify-self:center}.g-photo img{width:100%;height:100%;object-fit:contain;padding:3px;box-sizing:border-box}.g-item.checked .g-photo{opacity:.45;filter:grayscale(.6)}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) .g-photo{box-shadow:none}}:root[data-theme=dark] .g-photo{box-shadow:none}.sheet{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;backface-visibility:hidden}.sheet-back{transition:background-color .26s cubic-bezier(.32,.72,0,1)}input,select,textarea{font:inherit;color:inherit;font-size:16px}.code-input{font-size:28px}html,body{max-width:100%}.shell{overflow-x:clip}.page{min-width:0;overflow-wrap:break-word}.page img{max-width:100%}.tile strong,.tile span,.opt strong,.chip,.kcal-tile,.dish .name{overflow-wrap:anywhere;min-width:0}@media (max-width: 380px){.kitchen .tile strong,.tiles .tile strong{font-size:13.5px}.days{gap:4px}.days button{font-size:13px}.summary{gap:8px}.summary .card{padding:12px}}.kt-svg{position:relative;width:58px;height:58px;flex:none}.kt-svg svg{width:58px;height:58px}.kt-pct{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:12.5px;font-weight:800}.kt-ring .kt-num{min-width:0}.kt-ring .kt-num span{display:block;font-size:12px;opacity:.75;margin-top:3px;white-space:nowrap}.kt-status{font-size:12px;font-weight:700;line-height:1.3}.kt-status.ok{color:#2f7d1e}.kt-status.under{color:#b5601b}.kt-status.over{color:#c2352f}.kt-who{font-weight:500;opacity:.7}.kcal-hint{margin-top:-6px}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) .kt-status.ok{color:#9be27f}:root:not([data-theme=light]) .kt-status.under{color:#ffc28a}:root:not([data-theme=light]) .kt-status.over{color:#ff8f86}}:root[data-theme=dark] .kt-status.ok{color:#9be27f}:root[data-theme=dark] .kt-status.under{color:#ffc28a}:root[data-theme=dark] .kt-status.over{color:#ff8f86}.spent b{white-space:nowrap;font-size:clamp(19px,6.2vw,25px)}.kt-ring{gap:clamp(6px,2.4vw,10px)}.kt-ring b{white-space:nowrap;font-size:clamp(19px,6vw,24px)}.kt-svg,.kt-svg svg{width:clamp(42px,14vw,58px);height:clamp(42px,14vw,58px)}.kt-pct{font-size:clamp(10.5px,3.2vw,12.5px)}.kt-ring .kt-num span{white-space:normal}.spent .pill{display:inline-block;max-width:100%;white-space:normal;line-height:1.25}@media (max-width: 360px){.summary .label{font-size:10.5px;letter-spacing:.04em}.spent .pill{font-size:12px;padding:4px 8px}}.ing-group{font-size:13px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:var(--muted);margin:16px 0 6px}.blackout-row,.savings{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 14px;text-align:left;width:100%;font:inherit;color:inherit}.blackout-row .ico,.savings .ico{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:var(--bg)}.blackout-row .ico .emo,.savings .ico .emo{width:26px;height:26px}.blackout-row strong{display:block;font-weight:600}.blackout-row small,.savings small{display:block;color:var(--muted);font-size:12.5px;line-height:1.35}.blackout-row.on{background:var(--green-soft);border-color:var(--green-line)}.blackout-row .pill{white-space:nowrap}.savings{grid-template-columns:40px minmax(0,1fr);background:var(--green-soft);border-color:var(--green-line)}.savings b{display:block;font-size:22px;line-height:1.2;color:var(--green-ink)}.savings .small{display:block;line-height:1.35}.opt[role=radio] .box{border-radius:50%}.offline-bar{position:fixed;z-index:60;top:calc(env(safe-area-inset-top,0px) + 8px);left:50%;transform:translate(-50%);max-width:calc(100% - 32px);padding:7px 14px;border-radius:99px;background:var(--text);color:var(--card);font-size:13px;font-weight:600;line-height:1.3;text-align:center;pointer-events:none;box-shadow:var(--shadow)}.kitchen .tile{padding-left:6px;padding-right:6px}.kitchen .tile strong{overflow-wrap:normal;word-break:keep-all;font-size:clamp(11.5px,3.7vw,15px);letter-spacing:-.01em}.tabbar nav{grid-template-columns:repeat(4,minmax(0,1fr));max-width:384px;height:66px}.tabbar button{height:66px;grid-template-rows:auto auto;align-content:center;gap:3px}.tabbar button svg{width:23px;height:23px}.tab-word{font-size:11px;font-weight:600;line-height:1;letter-spacing:.01em;white-space:nowrap}.tab-knob{top:6px;height:54px;border-radius:999px}.tabbar button.zoom svg{transform:scale(1.22) translateY(-2px)}.tabbar button.zoom.on svg{transform:scale(1.14)}.plan-switch{display:grid;gap:1px;min-width:0;text-decoration:none;color:inherit;-webkit-tap-highlight-color:transparent}.plan-switch .kicker{font-size:12.5px;font-weight:600;color:var(--muted);letter-spacing:.02em}.plan-switch .name{display:flex;align-items:center;gap:4px;min-width:0}.plan-switch h1{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-switch .down{flex:none;width:20px;height:20px;color:var(--muted);transform:rotate(90deg);display:grid;place-items:center}.plan-switch .down svg{width:18px;height:18px}.plan-switch:active{opacity:.7}.btn.small.soft-new{background:var(--card);color:var(--green-ink);box-shadow:var(--shadow);padding:0 14px 0 10px;flex:none}.btn.small.soft-new svg{width:18px;height:18px}.guide{display:grid;gap:12px}.guide-steps{list-style:none;margin:0;padding:0;display:grid;gap:12px}.guide-steps li{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;align-items:center}.guide-steps b{display:block;font-weight:600;font-size:15px;line-height:1.3}.guide-steps small{display:block;color:var(--muted);font-size:13px;line-height:1.35;margin-top:1px}.guide-ico{position:relative;width:44px;height:44px;border-radius:14px;background:var(--bg);display:grid;place-items:center;flex:none}.guide-ico .n{position:absolute;top:-5px;right:-5px;min-width:19px;height:19px;padding:0 5px;border-radius:99px;background:var(--green);color:#fff;font-size:11.5px;font-weight:700;line-height:19px;text-align:center;box-shadow:0 0 0 2px var(--card)}.welcome-points .guide-ico{background:#ffffffb3}.welcome-points .guide-ico .n{box-shadow:0 0 0 2px #ffffffe6}.week-strip.compact{padding:6px 8px;gap:0}.week-strip.compact .wk-day{padding:8px 0 10px;gap:4px}.today-tag{display:inline-block;vertical-align:3px;margin-left:8px;padding:2px 9px;border-radius:99px;background:var(--green-soft);color:var(--green-ink);font-size:12px;font-weight:700;letter-spacing:0}.blackout-row{grid-template-columns:32px minmax(0,1fr) auto;padding:10px 14px}.blackout-row .ico{width:32px;height:32px;border-radius:10px}.blackout-row .ico .emo{width:22px;height:22px}.list-head{margin:0 4px 8px;font-size:13px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.card.list{padding:2px 16px}.list-row{display:grid;grid-template-columns:26px minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:13px 0;text-decoration:none;color:inherit;-webkit-tap-highlight-color:transparent}.list-row+.list-row{border-top:1px solid var(--line)}.list-row .ico{width:26px;height:26px;color:var(--green-ink);display:grid;place-items:center}.list-row .ico svg{width:22px;height:22px}.list-row strong{display:block;font-weight:600;font-size:15.5px}.list-row small{display:block;color:var(--muted);font-size:13px;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list-row .count{min-width:26px;height:24px;padding:0 8px;border-radius:99px;background:var(--bg);color:var(--muted);font-size:13px;font-weight:700;display:grid;place-items:center}.list-row .chev{width:18px;color:var(--muted);display:grid;place-items:center}.list-row .chev svg{width:18px;height:18px}.list-row:active{opacity:.7}.list-row .chips .chip{min-height:34px;padding:0 12px}.list-row:not(a){grid-template-columns:26px minmax(0,1fr) auto}.chips.scroll-row{flex-wrap:nowrap;overflow-x:auto;margin-left:-16px;margin-right:-16px;padding:2px 16px;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}.chips.scroll-row::-webkit-scrollbar{display:none}.chips.scroll-row .chip{flex:none}.g-sub.one-line{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.month-saved{display:flex;align-items:center;gap:6px;margin-top:10px;color:var(--green-ink);font-weight:600;font-size:13.5px}.plan-item:not(.picking){cursor:pointer}.dish>.swap-btn{position:relative;width:40px;height:40px;padding:0;justify-content:center;background:var(--green-soft);border-color:transparent}.dish>.swap-btn span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.dish>.swap-btn svg{width:19px;height:19px}@media (max-width: 359px){.btn.small.soft-new{width:40px;padding:0}.btn.small.soft-new .lbl{display:none}.summary .pill{font-size:11.5px;padding:3px 8px;white-space:nowrap}}.btn.test-reset{margin-top:18px;color:var(--warn-ink, #9a6200);box-shadow:inset 0 0 0 1.5px #d6961e73}.btn.test-reset svg{width:18px;height:18px}.welcome-top .test-entry{display:inline-flex;align-items:center;gap:6px;margin-right:auto;padding:8px 14px 8px 10px;border-radius:999px;background:var(--card);box-shadow:var(--shadow);color:var(--text);font-weight:700;font-size:14px;text-decoration:none;position:relative;z-index:2}.test-entry .emo{width:20px;height:20px}.test-login .btn .emo{width:22px;height:22px}.btn.test-reset.top{margin-top:0}.test-login{padding-bottom:6px}
