@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/bricolage-grotesque-vietnamese-opsz-normal.D9N6E8K1.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:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/bricolage-grotesque-latin-ext-opsz-normal.IcJDqblK.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:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/bricolage-grotesque-latin-opsz-normal.Cre6nC2_.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:Instrument Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/instrument-sans-latin-ext-400-normal.Q_nF8v4l.woff2)format("woff2"),url(/_astro/instrument-sans-latin-ext-400-normal.r32jotim.woff)format("woff");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:Instrument Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/instrument-sans-latin-400-normal.DRC__1Mx.woff2)format("woff2"),url(/_astro/instrument-sans-latin-400-normal.D1W7dsQl.woff)format("woff");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:Instrument Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/instrument-sans-latin-ext-500-normal.CTEe1bJa.woff2)format("woff2"),url(/_astro/instrument-sans-latin-ext-500-normal.CAxz3nsc.woff)format("woff");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:Instrument Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/instrument-sans-latin-500-normal.Dk9ku72i.woff2)format("woff2"),url(/_astro/instrument-sans-latin-500-normal.Z6ESRlEs.woff)format("woff");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:Instrument Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/instrument-sans-latin-ext-600-normal.BsaQcF38.woff2)format("woff2"),url(/_astro/instrument-sans-latin-ext-600-normal.DMks36a2.woff)format("woff");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:Instrument Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/instrument-sans-latin-600-normal.B7fBEWYG.woff2)format("woff2"),url(/_astro/instrument-sans-latin-600-normal.B9e8oLYv.woff)format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-cyrillic-ext-400-normal.xuaO2J-f.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-ext-400-normal.DMdlQ8Kv.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-cyrillic-400-normal.BSMlKf0J.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-400-normal.CEL4l2ZJ.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-vietnamese-400-normal.BulugwFq.woff2)format("woff2"),url(/_astro/ibm-plex-mono-vietnamese-400-normal.DDuiU_S-.woff)format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-ext-400-normal.BmRBH3aV.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-ext-400-normal.D3D2R8hC.woff)format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-400-normal.DMJ8VG8y.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-400-normal.CvHOgSBP.woff)format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-cyrillic-ext-500-normal.BqneJy0T.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-ext-500-normal.BIfNGwUT.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-cyrillic-500-normal.Bq9vWWag.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-500-normal.Ael50iVv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-vietnamese-500-normal.DZ4AoWbu.woff2)format("woff2"),url(/_astro/ibm-plex-mono-vietnamese-500-normal.C8zxqsMH.woff)format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-latin-ext-500-normal.CAhNIIs5.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-ext-500-normal.CZ70TYgx.woff)format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-latin-500-normal.DSY6xOcd.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-500-normal.CB9ihrfo.woff)format("woff");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{color-scheme:light dark;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--radius-sm:8px;--radius-md:14px;--radius-pill:999px;--tap-min:48px;--tap-cook:64px;--bar-day:16px;--bar-slot:10px;--tabbar-h:64px;--font-display:"Bricolage Grotesque Variable", "Bricolage Grotesque", "Avenir Next", "Segoe UI", sans-serif;--font-body:"Instrument Sans", -apple-system, "Helvetica Neue", Arial, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--canvas:#f2f5f1;--surface:#fff;--sunk:#e6ebe4;--card-edge:#e2e8e0;--line:#d3dbd1;--line-strong:#7d8a82;--ink:#16211b;--ink-muted:#4c5a52;--forest:#1d5537;--on-forest:#fff;--forest-tint:#e1f0e2;--forest-ink:#1d5537;--slate:#2c5361;--slate-tint:#dce7eb;--carb:#2c56c9;--carb-tint:#e1e8fa;--worst:#9a5800;--worst-tint:#fbeed6;--over:#b0261d;--over-tint:#fbe3e0;--sample:#7b3aa3;--sample-tint:#f3e7fa;--focus:#16211b;--paper:#fff;--paper-ink:#111;--paper-muted:#4a4a4a;--paper-sample:#7b3aa3;--paper-sample-tint:#f3e7fa;--shadow-sheet:0 -8px 32px #16211b29}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--canvas:#111714;--surface:#1a221e;--sunk:#242e29;--card-edge:#2a3530;--line:#33403a;--line-strong:#7f8c85;--ink:#e8eee9;--ink-muted:#a8b4ad;--forest:#8fd1aa;--on-forest:#0c1d13;--forest-tint:#1c3226;--forest-ink:#8fd1aa;--slate:#9cc4d2;--slate-tint:#1e2c32;--carb:#8ba6ff;--carb-tint:#222b48;--worst:#eeb558;--worst-tint:#372b17;--over:#ff978c;--over-tint:#41201c;--sample:#d4a7f1;--sample-tint:#2d2237;--focus:#e8eee9;--paper:#fff;--paper-ink:#111;--paper-muted:#4a4a4a;--paper-sample:#7b3aa3;--paper-sample-tint:#f3e7fa;--shadow-sheet:0 -8px 32px #0000008c}}:root[data-theme=dark]{--canvas:#111714;--surface:#1a221e;--sunk:#242e29;--card-edge:#2a3530;--line:#33403a;--line-strong:#7f8c85;--ink:#e8eee9;--ink-muted:#a8b4ad;--forest:#8fd1aa;--on-forest:#0c1d13;--forest-tint:#1c3226;--forest-ink:#8fd1aa;--slate:#9cc4d2;--slate-tint:#1e2c32;--carb:#8ba6ff;--carb-tint:#222b48;--worst:#eeb558;--worst-tint:#372b17;--over:#ff978c;--over-tint:#41201c;--sample:#d4a7f1;--sample-tint:#2d2237;--focus:#e8eee9;--paper:#fff;--paper-ink:#111;--paper-muted:#4a4a4a;--paper-sample:#7b3aa3;--paper-sample-tint:#f3e7fa;--shadow-sheet:0 -8px 32px #0000008c}*,:before,:after{box-sizing:border-box}body{background:var(--canvas);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;font-size:17px;line-height:26px}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.k-num{font-variant-numeric:tabular-nums}.k-muted{color:var(--ink-muted)}.k-icon{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:24px;height:24px}.k-icon-sm{width:18px;height:18px}.k-stack{gap:var(--space-6);display:grid}.k-row{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.k-wrap{gap:var(--space-2);flex-wrap:wrap;display:flex}.k-eyebrow{font:600 13px/16px var(--font-body);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}@media (prefers-reduced-motion:no-preference){.k-btn,.k-chip,.k-tab{transition:background-color .15s,color .15s}}.k-ph{font-family:var(--font-mono);color:var(--sample);background:repeating-linear-gradient(135deg, var(--sample-tint) 0 4px, transparent 4px 8px);border-bottom:2px dashed var(--sample);white-space:nowrap;letter-spacing:0;border-radius:3px;padding:0 .12em;font-weight:500}.k-sample-flag{align-items:center;gap:var(--space-1);font:600 12px/16px var(--font-body);letter-spacing:.08em;text-transform:uppercase;color:var(--sample);background:var(--sample-tint);border:1.5px dashed var(--sample);border-radius:var(--radius-pill);padding:3px 10px;display:inline-flex}.k-card{background:var(--surface);border:1px solid var(--card-edge);border-radius:var(--radius-md);padding:var(--space-4)}.k-card-flush{padding:0;overflow:hidden}.k-list>*+*{border-top:1px solid var(--line)}.k-btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--tap-min);min-width:var(--tap-min);border-radius:var(--radius-md);font:600 16px/22px var(--font-body);cursor:pointer;border:1.5px solid #0000;padding:0 20px;text-decoration:none;display:inline-flex}.k-btn-primary{background:var(--forest);color:var(--on-forest)}.k-btn-secondary{background:var(--surface);color:var(--ink);border-color:var(--line-strong)}.k-btn-quiet{color:var(--forest-ink);background:0 0;padding:0 12px}.k-btn-cook{min-height:var(--tap-cook);font-size:19px}.k-btn-block{width:100%}.k-btn[disabled]{background:var(--sunk);color:var(--ink-muted);cursor:not-allowed;border-color:#0000}.k-chip{border-radius:var(--radius-pill);border:1.5px solid var(--line-strong);background:var(--surface);min-height:40px;color:var(--ink);font:600 15px/20px var(--font-body);white-space:nowrap;cursor:pointer;align-items:center;gap:6px;padding:0 14px;display:inline-flex}.k-chip[aria-pressed=true]{background:var(--forest-tint);border-color:var(--forest-ink);color:var(--forest-ink)}.k-fit{font:600 14px/20px var(--font-body);border-radius:var(--radius-pill);align-items:center;gap:6px;padding:3px 10px;display:inline-flex}.k-fit-yes{background:var(--forest-tint);color:var(--forest-ink)}.k-fit-no{background:var(--over-tint);color:var(--over)}.k-badge{font:600 14px/20px var(--font-body);border-radius:var(--radius-pill);white-space:nowrap;border:1.5px solid #0000;align-items:center;gap:6px;padding:3px 12px 3px 8px;display:inline-flex}.k-badge .k-icon{width:18px;height:18px}.k-badge-draft{color:var(--ink-muted);border:1.5px dashed var(--line-strong);background:0 0}.k-badge-checked{color:var(--slate);background:var(--slate-tint)}.k-badge-approved{color:var(--forest-ink);background:var(--forest-tint)}.k-badge-recheck{color:var(--worst);background:var(--worst-tint)}.k-src{border-radius:var(--radius-pill);background:var(--sunk);min-height:32px;color:var(--ink-muted);font:400 13px/18px var(--font-mono);cursor:pointer;white-space:nowrap;border:0;align-items:center;gap:5px;padding:0 10px;display:inline-flex}.k-src .k-icon{width:16px;height:16px}.k-src-unchecked{border:1.5px dashed var(--worst);color:var(--worst);background:0 0}.k-val-unchecked{text-decoration:underline dashed var(--worst);text-underline-offset:4px;color:var(--ink-muted)!important}.k-sheet{background:var(--surface);border-radius:var(--radius-md) var(--radius-md) 0 0;box-shadow:var(--shadow-sheet);overflow:hidden}.k-sheet-grip{border-radius:var(--radius-pill);background:var(--line-strong);width:40px;height:5px;margin:10px auto 0}.k-sheet-head{background:var(--slate-tint);color:var(--slate);padding:var(--space-3) var(--space-4)}.k-sheet-body{padding:var(--space-4);gap:var(--space-3);display:grid}.k-dl{gap:6px var(--space-3);grid-template-columns:112px minmax(0,1fr);margin:0;display:grid}.k-dl dt{color:var(--ink-muted);font-size:15px}.k-dl dd{min-width:0;margin:0;font-size:15px}.k-mono{font-family:var(--font-mono);font-size:13px;line-height:18px}.k-gauge{gap:var(--space-2);display:grid}.k-gauge-big{font:700 56px/56px var(--font-display);letter-spacing:-.02em;color:var(--carb);align-items:baseline;gap:6px;display:flex}.k-gauge-big .k-ph{font-size:44px;line-height:52px}.k-unit{font:600 21px/26px var(--font-body);color:var(--ink-muted)}.k-rule{font:600 14px/20px var(--font-body);color:var(--ink-muted);align-items:center;gap:6px;display:inline-flex}.k-rule b{color:var(--ink);font-weight:600}.k-bar{height:var(--bar-day);border-radius:var(--radius-pill);background:var(--sunk);position:relative;overflow:hidden}.k-bar-slot{height:var(--bar-slot)}.k-bar>.eaten{width:var(--w-eaten);background:var(--carb);border-radius:var(--radius-pill) 0 0 var(--radius-pill);position:absolute;inset:0 auto 0 0}.k-bar>.worst{top:0;bottom:0;left:var(--w-eaten);width:var(--w-worst);background:repeating-linear-gradient(135deg, var(--worst) 0 3px, transparent 3px 7px);border-left:2px solid var(--surface);position:absolute}.k-bar.is-over>.eaten{background:var(--over);border-radius:var(--radius-pill);width:100%}.k-legend{gap:4px var(--space-4);color:var(--ink-muted);flex-wrap:wrap;font-size:14px;line-height:20px;display:flex}.k-legend i{vertical-align:0;border-radius:3px;width:14px;height:10px;margin-right:6px;display:inline-block}.k-legend .sw-eaten{background:var(--carb)}.k-legend .sw-worst{background:repeating-linear-gradient(135deg, var(--worst) 0 2px, transparent 2px 5px);outline:1px solid var(--worst)}.k-note{gap:var(--space-2);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);align-items:flex-start;font-size:15px;line-height:22px;display:flex}.k-note .k-icon{width:20px;height:20px;margin-top:1px}.k-note-worst{background:var(--worst-tint);color:var(--ink)}.k-note-worst .k-icon{color:var(--worst)}.k-note-over{background:var(--over-tint);color:var(--ink)}.k-note-over .k-icon{color:var(--over)}.k-slot{gap:var(--space-3);min-height:var(--tap-min);grid-template-columns:96px minmax(0,1fr) auto;align-items:center;padding:6px 0;display:grid}.k-slot-name{font:600 16px/22px var(--font-body)}.k-slot-left{text-align:right;white-space:nowrap;color:var(--ink-muted);font-size:15px}.k-slot-left b{color:var(--carb);font-weight:600}.k-ledger{display:grid}.k-ledger-row{gap:var(--space-2);border-bottom:1px solid var(--line);grid-template-columns:22px minmax(0,1fr) auto;align-items:baseline;padding:10px 0;display:grid}.k-ledger-op{font:700 17px/22px var(--font-mono);color:var(--ink-muted);text-align:center}.k-ledger-name{min-width:0}.k-ledger-name small{color:var(--ink-muted);font-size:14px;line-height:20px;display:block}.k-ledger-val{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;font-weight:600}.k-ledger-row.is-kept .k-ledger-val{color:var(--ink-muted);font-weight:400}.k-ledger-row.is-kept .k-ledger-op{text-decoration:line-through}.k-ledger-total{gap:var(--space-2);background:var(--carb-tint);border-radius:var(--radius-sm);border-top:2px solid var(--carb);grid-template-columns:22px minmax(0,1fr) auto;align-items:baseline;margin-top:6px;padding:12px 10px;display:grid}.k-ledger-total .k-ledger-name{font:700 19px/24px var(--font-display)}.k-ledger-total .k-ledger-val{color:var(--carb);font:700 21px/26px var(--font-display)}.k-rule-box{margin-top:var(--space-3);padding:var(--space-3);border:1.5px solid var(--line-strong);border-radius:var(--radius-sm);gap:2px;font-size:15px;line-height:22px;display:grid}.k-rule-box b{font-weight:600}.k-photo{aspect-ratio:1;border-radius:var(--radius-sm);background:repeating-linear-gradient(135deg, var(--sunk) 0 6px, var(--surface) 6px 12px);border:1.5px dashed var(--line-strong);max-width:100%;color:var(--ink-muted);font:600 12px/14px var(--font-body);text-align:center;place-items:center;padding:4px;display:grid;position:relative;overflow:hidden}.k-photo-4x3{aspect-ratio:4/3}.k-recipe{gap:var(--space-3);padding:var(--space-3);min-height:96px;color:inherit;grid-template-columns:72px minmax(0,1fr) auto;align-items:start;text-decoration:none;display:grid}.k-recipe-title{font:700 19px/24px var(--font-display);text-wrap:balance;margin:0}.k-recipe-meta{color:var(--ink-muted);margin:2px 0 var(--space-2);font-size:14px;line-height:20px}.k-recipe-carb{text-align:right}.k-recipe-carb .v{font:700 21px/26px var(--font-display);color:var(--carb);white-space:nowrap}.k-recipe-carb .l{color:var(--ink-muted);font-size:13px;line-height:16px}.k-cook{gap:var(--space-6);display:grid}.k-cook-top{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.k-steps{gap:4px;display:flex}.k-steps i{border-radius:var(--radius-pill);background:var(--sunk);flex:1;height:6px}.k-steps i.done{background:var(--forest)}.k-steps i.now{background:var(--ink)}.k-awake{font:600 14px/20px var(--font-body);color:var(--forest-ink);align-items:center;gap:6px;display:inline-flex}.k-weigh{gap:2px var(--space-3);background:var(--surface);border:1px solid var(--card-edge);border-radius:var(--radius-md);padding:var(--space-4);grid-template-columns:minmax(0,1fr) auto;align-items:end;display:grid}.k-weigh-g{font:700 44px/48px var(--font-display);letter-spacing:-.01em;white-space:nowrap}.k-weigh-g .k-ph{font-size:36px;line-height:44px}.k-weigh-what{font:600 19px/26px var(--font-body)}.k-weigh-hint{color:var(--ink-muted);grid-column:1/-1;font-size:15px;line-height:22px}.k-cook-step{font:500 26px/36px var(--font-body);text-wrap:pretty;margin:0}.k-cook-nav{gap:var(--space-3);grid-template-columns:1fr 2fr;display:grid}.k-pantry{gap:var(--space-3);padding:var(--space-3);grid-template-columns:64px minmax(0,1fr);align-items:start;display:grid}.k-pantry-name{font:600 17px/24px var(--font-body);margin:0}.k-pantry-brand{color:var(--ink-muted);font-size:14px;line-height:20px}.k-pantry-per{align-items:center;gap:6px var(--space-2);flex-wrap:wrap;margin-top:6px;font-size:15px;display:flex}.k-pantry-per b{color:var(--carb);font-variant-numeric:tabular-nums}.k-photos{gap:var(--space-2);grid-template-columns:1fr 1fr;display:grid}.k-tabbar{background:var(--surface);border-top:1px solid var(--line);min-height:var(--tabbar-h);padding:6px 4px calc(6px + env(safe-area-inset-bottom,0px));grid-template-columns:repeat(5,1fr);display:grid}.k-tab{min-height:52px;color:var(--ink-muted);font:600 13px/16px var(--font-body);border-radius:var(--radius-md);cursor:pointer;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:2px;display:flex}.k-tab[aria-current=page]{color:var(--forest-ink)}.k-tab[aria-current=page] .k-tab-ic{background:var(--forest-tint)}.k-tab-ic{border-radius:var(--radius-pill);place-items:center;width:56px;height:30px;display:grid}.k-print{background:var(--paper);color:var(--paper-ink);border:1px solid var(--paper-muted);border-radius:4px;max-width:520px;padding:20px 22px;font-size:14px;line-height:20px}.k-print h3{font:700 22px/26px var(--font-display);color:var(--paper-ink);margin:0}.k-print .k-print-kicker{font:600 11px/14px var(--font-body);letter-spacing:.1em;text-transform:uppercase;color:var(--paper-muted)}.k-print .k-print-meta{color:var(--paper-muted);margin-top:4px}.k-print table{border-collapse:collapse;width:100%;margin-top:12px}.k-print th,.k-print td{border-bottom:1px solid var(--paper-muted);text-align:left;vertical-align:top;padding:6px 4px}.k-print th{font:600 11px/14px var(--font-body);letter-spacing:.08em;text-transform:uppercase;color:var(--paper-muted)}.k-print td.r,.k-print th.r{text-align:right;font-variant-numeric:tabular-nums}.k-print .k-print-rule{border:1.5px solid var(--paper-ink);margin-top:12px;padding:8px 10px;font-size:13px}.k-print .k-print-sign{color:var(--paper-muted);grid-template-columns:1fr 1fr;gap:16px;margin-top:14px;font-size:12px;display:grid}.k-print .k-print-sign span{border-top:1px solid var(--paper-ink);padding-top:4px}.k-print .k-print-foot{font:400 11px/14px var(--font-mono);color:var(--paper-muted);margin-top:10px}.k-phone{background:var(--canvas);border:1px solid var(--line);border-radius:28px;flex-direction:column;width:390px;max-width:100%;margin:0 auto;display:flex;overflow:hidden}.k-phone-body{padding:var(--space-4) var(--space-4) var(--space-6);gap:var(--space-6);align-content:start;display:grid}.k-screen-title{justify-content:space-between;align-items:center;gap:var(--space-3);padding-top:var(--space-2);display:flex}.k-screen-title h2{font:700 28px/34px var(--font-display);letter-spacing:-.01em;margin:0}.k-search{align-items:center;gap:var(--space-2);min-height:var(--tap-min);border-radius:var(--radius-md);background:var(--sunk);color:var(--ink-muted);padding:0 14px;font-size:17px;display:flex}.k-scroll-x{gap:var(--space-2);scrollbar-width:none;display:flex;overflow-x:auto}.k-doc{gap:var(--space-3);padding:var(--space-3);grid-template-columns:40px minmax(0,1fr) auto;align-items:center;min-height:72px;display:grid}.k-doc-ic{background:var(--paper);border:1px solid var(--line-strong);width:40px;height:48px;color:var(--paper-ink);border-radius:4px;place-items:center;display:grid}.k-print .k-ph{color:var(--paper-sample);border-bottom-color:var(--paper-sample);background:repeating-linear-gradient(135deg, var(--paper-sample-tint) 0 4px, transparent 4px 8px)}.k-gauge-head{justify-content:space-between;align-items:center;gap:4px var(--space-3);flex-wrap:wrap;display:flex}.k-gauge-head>*{white-space:nowrap}html{-webkit-text-size-adjust:100%}body{min-height:100dvh}a{color:var(--forest-ink)}h1,h2,h3{text-wrap:balance}.app-screen{max-width:560px;padding:calc(var(--space-4) + env(safe-area-inset-top,0px)) var(--space-4) calc(var(--tabbar-h) + env(safe-area-inset-bottom,0px) + var(--space-12));gap:var(--space-6);align-content:start;margin:0 auto;display:grid}.app-screen.no-tabbar{padding-bottom:calc(var(--space-8) + env(safe-area-inset-bottom,0px))}.app-screen h1{font:700 28px/34px var(--font-display);letter-spacing:-.01em;margin:0}.app-tabbar{z-index:10;position:fixed;bottom:0;left:0;right:0}.app-tabbar .k-tab{text-decoration:none}.app-rule{flex-wrap:wrap;text-decoration:none}.app-interim{font:600 12px/16px var(--font-body);letter-spacing:.06em;text-transform:uppercase;color:var(--worst);border:1.5px solid var(--worst);border-radius:var(--radius-pill);padding:0 8px}.app-alt{color:var(--ink-muted);font-size:15px;line-height:22px}.app-section-title{margin:0 0 var(--space-2)}.app-small{font-size:14px;line-height:20px}.app-hidden{display:none!important}.app-empty{color:var(--ink-muted);padding:var(--space-3) var(--space-4);margin:0}.app-entry{padding:var(--space-3) var(--space-4)}.app-entry .k-btn{min-height:40px}.app-disclaimer{color:var(--ink-muted);margin:0;font-size:13px;line-height:18px}dialog.app-sheet{width:100%;max-width:560px;color:inherit;background:0 0;border:0;margin:auto auto 0;padding:0}dialog.app-sheet::backdrop{background:#00000059}dialog.app-sheet .k-sheet-body{padding-bottom:calc(var(--space-4) + env(safe-area-inset-bottom,0px))}.app-field{gap:var(--space-1);display:grid}.app-field label,.app-label{font:600 15px/20px var(--font-body)}.app-input,.app-select{min-height:var(--tap-min);border-radius:var(--radius-md);border:1.5px solid var(--line-strong);background:var(--surface);color:var(--ink);font:400 17px/24px var(--font-body);width:100%;padding:0 14px}.k-search input{min-width:0;color:var(--ink);font:inherit;min-height:var(--tap-min);background:0 0;border:0;outline:none;flex:1}.app-stepper{grid-template-columns:var(--tap-min) minmax(0, 1fr) var(--tap-min);gap:var(--space-2);align-items:center;display:grid}.app-stepper output{text-align:center;font:700 21px/26px var(--font-display)}.app-steps-list{gap:var(--space-2);margin:0;padding-left:1.4em;display:grid}.app-lines{display:grid}.app-line{gap:2px var(--space-3);padding:var(--space-3) 0;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;display:grid}.app-line .g{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.app-line small{color:var(--ink-muted);flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:6px;font-size:14px;line-height:20px;display:flex}.app-table{border-collapse:collapse;width:100%;font-size:15px}.app-table th,.app-table td{text-align:left;border-bottom:1px solid var(--line);vertical-align:baseline;padding:8px 0}.app-table td.r,.app-table th.r{text-align:right;font-variant-numeric:tabular-nums}.app-cook-nav{padding:var(--space-3) 0 calc(var(--space-3) + env(safe-area-inset-bottom,0px));background:var(--canvas);position:sticky;bottom:0}@media print{@page{margin:14mm}body{background:#fff!important}.app-tabbar,.app-noprint{display:none!important}.app-screen{max-width:none;padding:0;display:block}.k-print{border:0;max-width:none;padding:0;font-size:12pt;line-height:1.35}}
