:root{--color-background:#faf7f2;--color-surface:#fff;--color-text:#1e2632;--color-muted:#5c6573;--color-accent:#1f4e79;--color-on-accent:#fff;--color-border:#e4ded4;--color-danger:#a63d2b;--color-draft-surface:#faf7f2;--color-draft-border:#a39a8c;--color-link-0:#0f7b6c;--color-link-1:#b45309;--color-link-2:#7c3aed;--color-link-3:#4d7c0f;--color-link-4:#be185d;--color-link-5:#2563eb;--color-tint-0:#dbebe9;--color-tint-1:#f4e5da;--color-tint-2:#ebe1fc;--color-tint-3:#e4ebdb;--color-tint-4:#f5dce7;--color-tint-5:#dee8fc;--color-tint-draft-0:#e8eee8;--color-tint-draft-1:#f5ebe1;--color-tint-draft-2:#f1e9f2;--color-tint-draft-3:#edeee1;--color-tint-draft-4:#f6e6e7;--color-tint-draft-5:#eaecf1;--font-family:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-body:17px;--font-small:15px;--font-label:13px;--font-h1:28px;--font-h2:22px;--font-step:22px;--line-height:1.45;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--gutter:16px;--tap:44px;--radius:12px;--radius-small:8px;--page-width:560px;--page-width-week:1440px;--tab-bar-height:60px;--bar-room:0px;--tray-room:0px;--frame-end:var(--space-6);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html{-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--color-background);color:var(--color-text);font-family:var(--font-family);font-size:var(--font-body);line-height:var(--line-height);margin:0;overflow-x:hidden}h1,h2,h3,h4,p,ul,ol{margin:0}h1{font-size:var(--font-h1);line-height:1.2}h2{font-size:var(--font-h2);line-height:1.25}a{color:var(--color-accent)}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.frame{max-width:var(--page-width);padding:calc(env(safe-area-inset-top) + var(--space-4)) calc(env(safe-area-inset-right) + var(--gutter)) calc(env(safe-area-inset-bottom) + var(--bar-room) + var(--tray-room) + var(--frame-end)) calc(env(safe-area-inset-left) + var(--gutter));gap:var(--space-5);margin:0 auto;display:grid}.frame-header{align-items:center;gap:var(--space-2);min-height:var(--tap);display:flex}.frame-header h1{overflow-wrap:anywhere;flex:1;min-width:0}.stack{gap:var(--space-3);display:grid}.stack-small{gap:var(--space-1);display:grid}.muted{color:var(--color-muted)}.small{font-size:var(--font-small)}.original-text{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit}.label{font-size:var(--font-label);letter-spacing:.04em;text-transform:uppercase;color:var(--color-muted);font-weight:600}.error{color:var(--color-danger)}.button{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--tap);min-width:var(--tap);padding:var(--space-2) var(--space-4);border:1px solid var(--color-accent);border-radius:var(--radius-small);background:var(--color-accent);color:var(--color-on-accent);cursor:pointer;font-weight:600;text-decoration:none;display:inline-flex}.button:disabled{opacity:.6;cursor:default}.button-secondary{background:var(--color-surface);color:var(--color-accent)}.button-danger{border-color:var(--color-danger);background:var(--color-danger);color:var(--color-on-accent)}.button-quiet{color:var(--color-muted);background:0 0;border-color:#0000}.button-wide{width:100%}.icon-button{width:var(--tap);height:var(--tap);border-radius:var(--radius-small);color:var(--color-text);cursor:pointer;background:0 0;border:0;flex:none;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.icon-button svg{width:24px;height:24px}.button-row{gap:var(--space-3);flex-wrap:wrap;display:flex}.button-row>*{flex:auto}.field{gap:var(--space-1);font-weight:600;display:grid}.input{width:100%;min-height:var(--tap);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-small);background:var(--color-surface);font-weight:400;display:block}.redirect-host{font-size:var(--font-h1);word-break:break-all;font-weight:700}.redirect-uri{font-size:var(--font-small);word-break:break-all}textarea.input{resize:vertical;min-height:96px}.day{gap:var(--space-3);scroll-margin-top:var(--space-4);display:grid}.day-header{font-size:var(--font-body);font-weight:700}.day-header-today{color:var(--color-accent)}.divider{align-items:center;gap:var(--space-3);color:var(--color-muted);font-size:var(--font-small);font-weight:600;display:flex}.divider:before,.divider:after{content:"";border-top:1px solid var(--color-border);flex:1}.tile{gap:var(--space-2);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);display:grid}.tile-top{align-items:flex-start;gap:var(--space-2);display:flex}.tile-body{gap:var(--space-1);flex:1;min-width:0;display:grid}.tile-title{min-height:var(--tap);font-size:var(--font-h2);color:var(--color-text);overflow-wrap:anywhere;align-items:center;font-weight:700;line-height:1.25;text-decoration:none;display:inline-flex}.tile-actions{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.check{align-items:center;gap:var(--space-2);min-height:var(--tap);padding-right:var(--space-2);cursor:pointer;font-weight:600;display:inline-flex}.check input{width:24px;height:24px;accent-color:var(--color-accent);margin:0}.cooked{min-height:var(--tap);color:var(--color-accent);align-items:center;font-weight:700;display:inline-flex}.tile-draft{border-style:dashed;border-color:var(--color-draft-border);background:var(--color-draft-surface)}.tile-stripe{padding-left:calc(var(--space-4) + 6px);box-shadow:inset 8px 0 0 var(--stripe)}.tile-lit{outline:3px solid var(--lit);outline-offset:2px}.link-dot{vertical-align:.05em;border-radius:50%;width:10px;height:10px;margin-right:6px;display:inline-block}.stripe-0{--stripe:var(--color-link-0)}.stripe-1{--stripe:var(--color-link-1)}.stripe-2{--stripe:var(--color-link-2)}.stripe-3{--stripe:var(--color-link-3)}.stripe-4{--stripe:var(--color-link-4)}.stripe-5{--stripe:var(--color-link-5)}.lit-0{--lit:var(--color-link-0)}.lit-1{--lit:var(--color-link-1)}.lit-2{--lit:var(--color-link-2)}.lit-3{--lit:var(--color-link-3)}.lit-4{--lit:var(--color-link-4)}.lit-5{--lit:var(--color-link-5)}.dot-0{background:var(--color-link-0)}.dot-1{background:var(--color-link-1)}.dot-2{background:var(--color-link-2)}.dot-3{background:var(--color-link-3)}.dot-4{background:var(--color-link-4)}.dot-5{background:var(--color-link-5)}.tint-0{background:var(--color-tint-0)}.tint-1{background:var(--color-tint-1)}.tint-2{background:var(--color-tint-2)}.tint-3{background:var(--color-tint-3)}.tint-4{background:var(--color-tint-4)}.tint-5{background:var(--color-tint-5)}.tint-draft-0{background:var(--color-tint-draft-0)}.tint-draft-1{background:var(--color-tint-draft-1)}.tint-draft-2{background:var(--color-tint-draft-2)}.tint-draft-3{background:var(--color-tint-draft-3)}.tint-draft-4{background:var(--color-tint-draft-4)}.tint-draft-5{background:var(--color-tint-draft-5)}.past-toggle{align-items:center;gap:var(--space-2);width:100%;min-height:var(--tap);color:var(--color-text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;display:flex}.past-toggle:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px}.past-toggle svg{flex:none;width:20px;height:20px}.past-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.past-meals{gap:var(--space-3);display:grid}.past-meals[hidden]{display:none}.past-meals-wide{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));align-items:start}.frame-week{--gutter:8px;max-width:var(--page-width-week)}.week{table-layout:fixed;border-collapse:separate;border-spacing:3px;width:100%;margin:-3px}.week-corner{width:18px}.week-day{padding-bottom:var(--space-1);font-size:var(--font-small);text-align:left;border-bottom:3px solid #0000;font-weight:700}.week-day.week-today{border-bottom-color:var(--color-accent);color:var(--color-accent)}.week-meal{vertical-align:middle}.week-meal span{writing-mode:vertical-rl;font-size:var(--font-label);letter-spacing:.04em;text-transform:uppercase;color:var(--color-muted);font-weight:600;display:inline-block;transform:rotate(180deg)}.week-slot{vertical-align:top}.week-slot>*+*{margin-top:3px}.week-open{justify-items:start;gap:var(--space-1);padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius);display:grid}.week-add,.tile-compact .button{min-height:32px;padding:var(--space-1) var(--space-3);font-size:var(--font-small)}.tile-compact{gap:var(--space-1);padding:6px 4px}.tile-compact.tile-stripe{box-shadow:inset 4px 0 0 var(--stripe);padding-left:8px}.tile-compact .tile-top{align-items:center;min-height:28px}.tile-compact .tile-label{flex:1}.tile-compact .icon-button{width:28px;height:28px;margin:-2px -4px -2px 0}.tile-compact .icon-button svg{width:18px;height:18px}.tile-compact .tile-body{gap:2px}.tile-compact .tile-title{min-height:24px;font-size:var(--font-label);-webkit-hyphens:auto;hyphens:auto;font-weight:650;line-height:1.3}.tile-compact .muted{font-size:var(--font-label)}.tile-compact .check{min-height:32px;font-size:var(--font-small)}.tile-compact .check input{width:20px;height:20px}.tile-compact .cooked{min-height:32px;font-size:var(--font-small)}@media (min-width:1280px){.frame-week{--gutter:24px}.tile-compact{padding:var(--space-2)}.tile-compact.tile-stripe{padding-left:calc(var(--space-2) + 5px);box-shadow:inset 5px 0 0 var(--stripe)}.tile-compact .tile-title{font-size:var(--font-small);font-weight:700}.tile-compact .muted{font-size:14px}.week-corner{width:88px}.week-meal{text-align:left}.week-meal span{writing-mode:horizontal-tb;transform:none}}.tabs{border-bottom:1px solid var(--color-border);display:flex}.tab{min-height:var(--tap);color:var(--color-muted);cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;flex:1;font-weight:600}.tab[aria-selected=true]{border-bottom-color:var(--color-accent);color:var(--color-text)}.lines{gap:var(--space-3);padding:0;list-style:none;display:grid}.line{gap:var(--space-1);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border);display:grid}.steps{gap:var(--space-5);padding:0;list-style:none;display:grid}.step{gap:var(--space-1);display:grid}.cook .step-text{font-size:var(--font-step);line-height:1.4}.cook .line{font-size:var(--font-h2)}.cook-session{--timer-row:calc(var(--tap) + var(--space-3));--timer-tray-most:40vh;--tray-room:min(var(--timer-tray-most), calc(var(--timer-count,0) * var(--timer-row)));display:contents}.timer-tray{z-index:10;max-height:var(--timer-tray-most);padding:var(--space-1) var(--gutter) calc(env(safe-area-inset-bottom) + var(--space-1));border-top:1px solid var(--color-border);background:var(--color-surface);position:fixed;bottom:0;left:0;right:0;overflow-y:auto}body:not(.modify-open):has(.tab-bar) .timer-tray{bottom:calc(env(safe-area-inset-bottom) + var(--tab-bar-height));padding-bottom:var(--space-1)}.timer-tray-list{max-width:calc(var(--page-width) - 2 * var(--gutter));margin:0 auto}.timer{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:calc(var(--tap) + var(--space-2));padding:var(--space-1) var(--space-2);border-radius:var(--radius-small);font-variant-numeric:tabular-nums;font-weight:600;display:flex}.timer-link{min-width:0;min-height:var(--tap);color:inherit;flex:1;align-items:center;text-decoration:none;display:flex}.timer-done{animation:1s step-end infinite timer-flash}@keyframes timer-flash{50%{background:var(--color-accent);color:var(--color-on-accent)}}@media (prefers-reduced-motion:reduce){.timer-done{background:var(--color-accent);color:var(--color-on-accent);animation:none}}.sheet{width:100%;max-width:var(--page-width);border-radius:var(--radius) var(--radius) 0 0;background:var(--color-surface);max-height:92dvh;color:var(--color-text);border:0;margin:auto auto 0;padding:0;overflow-y:auto}.sheet::backdrop{background:#1e263273}.sheet-body{gap:var(--space-4);padding:var(--space-5) calc(env(safe-area-inset-right) + var(--gutter)) calc(env(safe-area-inset-bottom) + var(--space-5)) calc(env(safe-area-inset-left) + var(--gutter));display:grid}.plain-list{gap:var(--space-1);padding:0;list-style:none;display:grid}body:not(.modify-open):has(.tab-bar){--bar-room:var(--tab-bar-height);--frame-end:var(--space-5)}body.modify-open .tab-bar{display:none}.tab-bar{z-index:10;padding-bottom:env(safe-area-inset-bottom);border-top:1px solid var(--color-border);background:var(--color-surface);position:fixed;bottom:0;left:0;right:0}.tab-bar-inner{max-width:var(--page-width);margin:0 auto;display:flex}.tab-bar-tab{min-height:var(--tab-bar-height);color:var(--color-muted);font-size:var(--font-label);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;font-weight:600;text-decoration:none;display:flex}.tab-bar-tab[aria-current=page]{color:var(--color-accent)}.tab-bar-tab svg{width:24px;height:24px}.tab-bar-icon{display:inline-flex;position:relative}.tab-bar-badge{background:var(--color-accent);min-width:18px;height:18px;color:var(--color-on-accent);text-align:center;border-radius:9px;padding:0 5px;font-size:11px;font-weight:700;line-height:18px;position:absolute;top:-6px;left:60%}.grocery-section-title{font-size:var(--font-label);letter-spacing:.04em;text-transform:uppercase;color:var(--color-muted);font-weight:600}.grocery-lines{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);gap:0;overflow:hidden}.grocery-line{align-items:center;gap:var(--space-3);min-height:var(--tap);padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--color-border);display:flex;position:relative}.grocery-line:last-child{border-bottom:0}.grocery-line-toggle{cursor:pointer;background:0 0;border:0;width:100%;position:absolute;inset:0}.grocery-line-toggle:focus-visible{outline-offset:-3px}.grocery-check{border:2px solid var(--color-accent);width:26px;height:26px;color:var(--color-on-accent);border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.grocery-check svg{width:16px;height:16px}.grocery-line-checked>.grocery-check{border-color:var(--color-accent);background:var(--color-accent)}.grocery-name{overflow-wrap:anywhere;flex:1;gap:2px;min-width:0;display:grid}.grocery-line-checked .grocery-name{color:var(--color-muted)}.grocery-line-checked .grocery-name-text,.grocery-line-checked .grocery-amount{text-decoration:line-through}.grocery-count{z-index:1;min-width:var(--tap);min-height:var(--tap);margin:calc(var(--space-2) * -1) 0;color:var(--color-accent);font-size:var(--font-small);cursor:pointer;background:0 0;border:0;flex:none;justify-content:center;align-items:center;font-weight:700;display:inline-flex;position:relative}.grocery-count:before{content:"";border:2px solid var(--color-accent);border-radius:50%;width:26px;height:26px;position:absolute}.grocery-amount{max-width:45%;padding:2px var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-small);color:var(--color-muted);font-size:var(--font-small);text-align:right;overflow-wrap:anywhere;flex:none}.offer .grocery-name{gap:2px}.meals-row{min-height:var(--tap);padding:var(--space-2) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);text-align:left;cursor:pointer;justify-content:space-between;align-items:center;font-weight:600;display:flex}.update-note{padding:var(--space-3) var(--space-4);border:1px solid var(--color-accent);border-radius:var(--radius);background:var(--color-surface)}.offline-bar{padding:var(--space-2) var(--space-4);border-radius:var(--radius-small);background:var(--color-text);color:var(--color-background);font-size:var(--font-small);font-weight:600}.add-row{gap:var(--space-2);display:flex}.add-row .input{flex:1;min-width:0}.switch{align-items:center;gap:var(--space-3);min-height:var(--tap);cursor:pointer;display:flex}.switch input{width:24px;height:24px;accent-color:var(--color-accent);margin:0}.fresh-row{align-items:center;column-gap:var(--space-3);flex-wrap:wrap;display:flex}.fresh-row-lines{flex:12rem;min-width:0}.fresh-row .switch{margin-left:auto}.freezer-line{min-height:var(--tap);padding:var(--space-2) var(--space-4);border-radius:var(--radius-small);background:var(--color-surface);align-items:center;display:flex}.offer{align-items:center;gap:var(--space-3);width:100%;min-height:var(--tap);padding:var(--space-2) var(--space-4);border:1px dashed var(--color-border);border-radius:var(--radius-small);background:var(--color-surface);text-align:left;cursor:pointer;display:flex}.offer-plus{color:var(--color-accent);font-size:var(--font-h2);font-weight:700;line-height:1}.prep-bowls{gap:var(--space-3)}.prep-bowls .prep-bowl{padding-block:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);align-items:flex-start}.prep-bowl-label{font-weight:600}.prep-offer{z-index:1;align-items:center;gap:var(--space-3);width:100%;min-height:var(--tap);padding:var(--space-2) 0;color:var(--color-text);text-align:left;cursor:pointer;background:0 0;border:0;display:flex;position:relative}.prep-offer-text{flex:1;min-width:0}.prep-offer-done{color:var(--color-muted)}.prep-offer-done .grocery-check{background:var(--color-accent)}.prep-offer:disabled,.grocery-line-toggle:disabled{cursor:default}.sheet-meals{gap:var(--space-3)}.notice{left:var(--gutter);right:var(--gutter);bottom:calc(env(safe-area-inset-bottom) + var(--bar-room) + var(--tray-room) + var(--space-3));z-index:20;align-items:center;gap:var(--space-2);max-width:calc(var(--page-width) - 2 * var(--gutter));padding:var(--space-2) var(--space-2) var(--space-2) var(--space-4);border-radius:var(--radius-small);background:var(--color-text);color:var(--color-background);margin:0 auto;display:flex;position:fixed}.notice span{flex:1}.notice-close{min-width:var(--tap);min-height:var(--tap);color:inherit;font-size:var(--font-h2);cursor:pointer;background:0 0;border:0;flex:none}.segmented{border:1px solid var(--color-accent);border-radius:var(--radius-small);grid-template-columns:1fr 1fr;display:grid;overflow:hidden}.segment[aria-disabled=true]{opacity:.6;cursor:default}.segmented-7{grid-template-columns:repeat(7,1fr)}.segmented-5{grid-template-columns:repeat(5,1fr)}.segment{min-height:var(--tap);background:var(--color-surface);color:var(--color-accent);font:inherit;border:0;font-weight:600}.segment[aria-pressed=true],.chip[aria-pressed=true]{background:var(--color-accent);color:var(--color-on-accent)}.chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.chip{min-height:var(--tap);padding:0 var(--space-4);border:1px solid var(--color-accent);border-radius:var(--radius-small);background:var(--color-surface);color:var(--color-accent);font:inherit;font-weight:600}.stepper{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.stepper .icon-button{border:1px solid var(--color-border);border-radius:var(--radius-small);font-size:var(--font-h2)}.stepper-value{text-align:center;flex:1;font-weight:600}.stepper-unit{min-width:3.5em}.pick-list{gap:var(--space-3);max-height:38dvh;display:grid;overflow-y:auto}.pick-row{align-items:center;gap:var(--space-3);min-height:var(--tap);display:flex}.pick-row input{width:22px;height:22px;accent-color:var(--color-accent)}.group-title{font-size:var(--font-label);letter-spacing:.04em;text-transform:uppercase;color:var(--color-muted);margin:0;font-weight:700}.recipe-tile{display:flex}.tile-button{width:100%;font:inherit;text-align:left;color:var(--color-text);cursor:pointer;text-decoration:none}.tile-button:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px}.question{border:0;min-width:0;margin:0;padding:0}.question legend{margin-bottom:var(--space-2);padding:0}.segment:focus-visible,.chip:focus-visible,.pick-row input:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px}.frame-sections{gap:var(--space-6);display:grid}.edit-trio{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;display:grid}.food-result:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px}.food-results{border:1px solid var(--color-border);border-radius:var(--radius-small);background:var(--color-surface);max-height:38dvh;margin:0;padding:0;list-style:none;overflow-y:auto}.food-result{width:100%;min-height:var(--tap);padding:var(--space-2) var(--space-3);border:0;border-bottom:1px solid var(--color-border);color:var(--color-text);font:inherit;text-align:left;cursor:pointer;background:0 0;display:block}.food-results li:last-child .food-result{border-bottom:0}.food-result-detail{display:block}.food-no-match{overflow-wrap:anywhere}.food-label{justify-content:space-between;align-items:baseline;gap:var(--space-3);display:flex}.segmented-4{grid-template-columns:repeat(4,1fr)}.segmented-3{grid-template-columns:repeat(3,1fr)}.side-actions{gap:var(--space-2);padding-top:var(--space-1);display:flex}.planning-steps{gap:var(--space-2);padding-left:var(--space-5);display:grid}.planning-address{align-items:center;gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.planning-address code{overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}
