@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2)format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2)format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2)format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff)format("woff")}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fraunces-latin-400-normal-6IfK1voy.woff2)format("woff2"),url(/assets/fraunces-latin-400-normal-NUPT2cO8.woff)format("woff")}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fraunces-latin-500-normal-DnGCNyPD.woff2)format("woff2"),url(/assets/fraunces-latin-500-normal-BTR4KCeb.woff)format("woff")}:root{--bg:#f2f1eb;--surface:#fff;--surface-2:#f4f3ee;--fg:#1c211b;--muted:#6b7067;--signal:#d2553f;--on-signal:#fff;--signal-tint:#fbe6e1;--line:#e4e2da;--accent:#6aa84f;--accent-ink:#3a7329;--tint:#e3eedd;--tint2:#eef4ea;--on-accent:#fff;--warn:#a8731f;--warn-tint:#f8efdd;--sky:#3e7ca8;--sleep:#4f6e96;--sleep-tint:#eaf0f7;--sleep-line:#c9d6e6;--food:#9a6235;--food-tint:#f7eee4;--food-line:#e6d0ba;--move:#357c6c;--move-tint:#e5f1ed;--move-line:#c3ddd4;--paper:#fbf7ee;--paper-line:#e6dcc8;--ink:#2e3a5c;--margin:#e9beb4;--tape:#e2d4a8c7;--shadow:0 1px 2px #1c211b0a, 0 8px 24px -16px #1c211b2e;--font:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--display:"Fraunces", Georgia, "Times New Roman", serif;--mono:ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--wx-a:#e7eff7;--wx-b:#d3e2f0;--wx-ink:#22384f;--wx-muted:#4f6780;--wx-cloud:#fff;--wx-sun:#e0a526;--wx-line:#22384f24;--ro-dark:#1e2b1a;--ro-green:#3d6b2b;--ro-leaf:#6aa84f;--ro-mint:#eef5ea;--ro-mint-2:#d9ead3;--ro-amber:#f2b134;--text:var(--fg);--accent-text:var(--on-accent);--accent-soft:var(--tint);--warn-bg:var(--warn-tint);--warn-text:#5c4300;--error-bg:var(--signal-tint);--error-text:#7a2508;--ok-bg:var(--tint);--ok-text:var(--accent-ink);--danger:#b23a0e;--radius:14px;--nav-h:62px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:var(--font);font-variant-numeric:tabular-nums;letter-spacing:-.005em;-webkit-font-smoothing:antialiased;color:var(--fg);background:var(--bg);-webkit-text-size-adjust:100%;font-size:15px;line-height:1.5}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#121411;--surface:#1b1e1a;--surface-2:#23271f;--fg:#e8eae3;--muted:#9aa094;--signal:#f08a74;--on-signal:#1a0e0b;--signal-tint:#3a2420;--line:#2e332b;--accent:#7dbb62;--accent-ink:#a3d48c;--tint:#263a1f;--tint2:#1e2619;--on-accent:#0e150b;--warn:#e0a84a;--warn-tint:#3a2e17;--sky:#7fb4db;--sleep:#a9c2e0;--sleep-tint:#1d2633;--sleep-line:#33435a;--food:#e3b98f;--food-tint:#2e241b;--food-line:#4e3d2c;--move:#94cdbe;--move-tint:#17292a;--move-line:#2c4a44;--paper:#26231e;--paper-line:#3a352d;--ink:#c8d3ee;--margin:#5c3d37;--tape:#9688608c;--shadow:0 1px 2px #0000004d, 0 10px 28px -16px #0009;--wx-a:#1c2a38;--wx-b:#16212c;--wx-ink:#dce7f2;--wx-muted:#9ab0c6;--wx-cloud:#c9d6e3;--wx-sun:#e8b84a;--wx-line:#dce7f224;--warn-text:#f3dd9b;--error-text:#f6c2ab;--danger:#f08a62;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#121411;--surface:#1b1e1a;--surface-2:#23271f;--fg:#e8eae3;--muted:#9aa094;--signal:#f08a74;--on-signal:#1a0e0b;--signal-tint:#3a2420;--line:#2e332b;--accent:#7dbb62;--accent-ink:#a3d48c;--tint:#263a1f;--tint2:#1e2619;--on-accent:#0e150b;--warn:#e0a84a;--warn-tint:#3a2e17;--sky:#7fb4db;--sleep:#a9c2e0;--sleep-tint:#1d2633;--sleep-line:#33435a;--food:#e3b98f;--food-tint:#2e241b;--food-line:#4e3d2c;--move:#94cdbe;--move-tint:#17292a;--move-line:#2c4a44;--paper:#26231e;--paper-line:#3a352d;--ink:#c8d3ee;--margin:#5c3d37;--tape:#9688608c;--shadow:0 1px 2px #0000004d, 0 10px 28px -16px #0009;--wx-a:#1c2a38;--wx-b:#16212c;--wx-ink:#dce7f2;--wx-muted:#9ab0c6;--wx-cloud:#c9d6e3;--wx-sun:#e8b84a;--wx-line:#dce7f224;--warn-text:#f3dd9b;--error-text:#f6c2ab;--danger:#f08a62;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--bg);-webkit-tap-highlight-color:transparent;margin:0}img{display:block}.icon{flex:none;width:22px;height:22px}h1{font-family:var(--display);letter-spacing:-.01em;margin:.25rem 0 1rem;font-size:22px;font-weight:400;line-height:1.2}h2{font-family:var(--display);margin:1.5rem 0 .5rem;font-size:20px;font-weight:500;line-height:1.2}h3{font-family:var(--display);font-size:17px;font-weight:500;line-height:1.25}.card h2{margin-top:0}button,input,select,textarea{font:inherit;color:inherit}button{touch-action:manipulation;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);cursor:pointer;min-height:44px;padding:.5rem 1rem}button:disabled{opacity:.5;cursor:not-allowed}button.primary{color:var(--on-accent);background:linear-gradient(#78b45c,#5f9c45);border-color:#0000;border-radius:999px;padding-inline:1.25rem;font-weight:600;box-shadow:0 6px 16px -8px #3f7a2bb3}button.danger{background:var(--danger);color:#fff;border-color:var(--danger)}button.link{min-height:32px;color:var(--accent-ink);background:0 0;border:none;padding:.25rem 0;font-weight:600;text-decoration:none}button.link.danger{color:var(--danger)}input,select,textarea{border:1px solid var(--line);background:var(--surface);border-radius:8px;max-width:100%;min-height:44px;padding:.5rem .75rem}textarea{width:100%;min-height:80px}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.app{background:var(--surface);max-width:480px;min-height:100dvh;padding-bottom:calc(var(--nav-h) + env(safe-area-inset-bottom) + 96px);margin:0 auto}.topbar{z-index:10;padding:calc(18px + env(safe-area-inset-top)) max(18px, env(safe-area-inset-right)) 12px max(18px, env(safe-area-inset-left));background:var(--surface);align-items:center;gap:12px;display:flex;position:sticky;top:0}.topbar .who{flex-direction:column;min-width:0;line-height:1.2;display:flex}.topbar .who b{font-family:var(--display);letter-spacing:-.01em;font-size:17px;font-weight:500}.src{color:var(--muted);font-size:11px}.mark{flex:none;width:36px;height:36px;display:block}.gear{color:var(--muted);background:0 0;border:0;border-radius:50%;place-items:center;width:32px;height:32px;min-height:32px;margin-left:auto;padding:0;display:grid}.gear:hover,.gear[aria-pressed=true]{background:var(--surface-2)}.gear svg{width:20px;height:20px}.page{padding:12px max(16px, env(safe-area-inset-right)) 0 max(16px, env(safe-area-inset-left))}.nav{z-index:10;border-top:1px solid var(--line);background:var(--surface);max-width:480px;padding:6px 6px calc(10px + env(safe-area-inset-bottom));grid-template-columns:repeat(4,1fr);margin:0 auto;display:grid;position:fixed;bottom:0;left:0;right:0}.nav button{min-height:0;color:var(--muted);background:0 0;border:0;border-radius:0;flex-direction:column;align-items:center;gap:5px;padding:8px 2px 2px;font-size:11px;transition:color .2s;display:flex;position:relative}.nav button:before{content:"";background:var(--tint);opacity:0;border-radius:99px;width:48px;height:30px;transition:transform .25s cubic-bezier(.2,.7,.2,1),opacity .2s;position:absolute;top:3px;left:50%;transform:translate(-50%)scale(.6)}.nav button[aria-current=page]{color:var(--accent-ink);font-weight:600}.nav button[aria-current=page]:before{opacity:1;transform:translate(-50%)scale(1)}.nav svg{z-index:1;width:20px;height:20px;position:relative}.mic{z-index:11;right:max(18px,50vw - 222px);bottom:calc(84px + env(safe-area-inset-bottom));width:45px;height:45px;min-height:0;color:var(--on-accent);background:linear-gradient(160deg,#7db964,#5a9741);border:0;border-radius:50%;place-items:center;padding:0;transition:transform .15s;display:grid;position:fixed;box-shadow:0 12px 24px -8px #3f7a2b99,inset 0 1px #ffffff40}.mic:active{transform:scale(.95)}.mic .mark{width:27px;height:27px}.mic .mark path,.mic .mark circle,.mic .mark ellipse{fill:#fff}.mic .mark circle[r="0.9"],.mic .mark path[d^=M37\.8]{fill:#1e281b}.eyebrow{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:600}.setlist{border:1px solid var(--line);box-shadow:var(--shadow);background:var(--surface);border-radius:18px;flex-direction:column;display:flex;overflow:hidden}.setlist button{border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;border-radius:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px 10px;min-height:0;padding:12px 14px;display:grid}.setlist button:last-child{border-bottom:0}.setlist button:hover{background:var(--surface-2)}.setlist .t{grid-area:1/1;font-weight:600}.setlist .d{color:var(--muted);grid-area:2/1;font-size:12px}.setlist .chev{color:var(--muted);grid-area:1/2/3}.back{min-height:0;color:var(--accent-ink);background:0 0;border:0;align-items:center;gap:6px;padding:0;font-size:13px;font-weight:600;display:inline-flex}.sheet-backdrop{z-index:20;background:#1c211b59;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{background:var(--surface);width:100%;max-width:480px;padding:18px 18px calc(18px + env(safe-area-inset-bottom));border-radius:22px 22px 0 0;gap:10px;display:grid}.card{text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);width:100%;box-shadow:var(--shadow);margin-bottom:.5rem;padding:.75rem 1rem;display:block}.card.excluded{opacity:.6}li.card{flex-wrap:wrap;align-items:center;column-gap:.4rem;display:flex}li.card>button.link{margin-left:auto}li.card.row-editor{display:block}.list,.plain,.results,.sources{margin:0;padding:0;list-style:none}.sources li{color:var(--muted);font-size:.9rem}.meal{gap:.25rem;display:grid}.meal-head{align-items:center;gap:.5rem;display:flex}.meal-foods{text-overflow:ellipsis;overflow:hidden}.badge{background:var(--bg);border:1px solid var(--line);border-radius:999px;margin-left:.5rem;padding:0 .5rem;font-size:.8rem;display:inline-block}.badge.warn{background:var(--warn-bg);color:var(--warn-text)}.muted{color:var(--muted)}.small{font-size:.875rem}.lead{font-size:1.1rem}.nutrients{flex-wrap:wrap;gap:.25rem 1rem;display:flex}.banner{border-radius:var(--radius);margin:.5rem 0;padding:.75rem 1rem}ul.banner{padding-left:2rem}.banner.warn{background:var(--warn-bg);color:var(--warn-text)}.banner.error{background:var(--error-bg);color:var(--error-text)}.banner.ok{background:var(--ok-bg);color:var(--ok-text)}.day{touch-action:pan-y;min-height:70vh}.day.part{min-height:0;margin-bottom:12px}.daynav{grid-template-columns:44px 1fr 44px;align-items:center;gap:.5rem;display:grid}.daynav button{color:var(--accent);border-radius:50%;place-items:center;padding:0;display:grid}.section-title{align-items:center;gap:.5rem;display:flex}.section-title .icon{background:var(--accent-soft);width:32px;height:32px;color:var(--accent);border-radius:10px;padding:6px}.section-title .icon.food{color:#8a5a00;background:#fbecc8}.section-title .icon.sleep{color:#2f5560;background:#dbe8ec}@media (prefers-color-scheme:dark){.section-title .icon.food{color:var(--ro-amber);background:#3a3014}.section-title .icon.sleep{color:var(--sleep);background:#22333a}}.daynav h1{text-align:center;margin:0}.daynav h1:first-letter{text-transform:uppercase}.row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.fields{gap:.35rem;margin:.75rem 0;display:grid}.fields>label,fieldset legend{margin-top:.5rem;font-weight:600}.check{align-items:center;gap:.35rem;display:inline-flex}.check input{min-height:auto}.seg{border:none;flex-wrap:wrap;gap:.5rem;margin:.5rem 0;padding:0;display:flex}.seg label{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);align-items:center;gap:.35rem;min-height:44px;padding:.25rem .75rem;display:inline-flex}.seg label.on{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.seg input{min-height:auto}.row-head{flex-wrap:wrap;align-items:center;display:flex}.alternatives{flex-wrap:wrap;align-items:center;gap:.35rem;margin-top:.35rem;display:flex}.chip{border-radius:999px;min-height:36px;padding:.25rem .75rem;font-size:.9rem}.search{gap:.5rem;display:grid}.results button{text-align:left;border-width:0 0 1px;border-radius:0;justify-content:space-between;gap:1rem;width:100%;display:flex}.choices{gap:.75rem;display:grid}.choice{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);cursor:pointer;text-align:left;gap:.25rem;padding:1rem;display:grid}.choice input[type=file]{opacity:0;width:1px;height:1px;position:absolute}.choice:focus-within{outline:3px solid var(--accent)}.choice.small{color:var(--accent);margin:.5rem 0;padding:.75rem 1rem}.actions{margin:1rem 0 .5rem}table.nutrition{border-collapse:collapse;width:100%;margin:.5rem 0}table.nutrition caption{text-align:left;color:var(--muted)}table.nutrition th,table.nutrition td{border-bottom:1px solid var(--line);text-align:left;padding:.25rem 0;font-weight:400}table.nutrition td{text-align:right}.danger-zone{border-color:var(--danger)}.danger-zone input{margin:.25rem 0 .75rem;display:block}.signin{min-height:100dvh;padding:calc(2rem + env(safe-area-inset-top)) 1.5rem calc(2rem + env(safe-area-inset-bottom));text-align:center;background:radial-gradient(120% 80% at 50% 0%, var(--ro-green) 0%, var(--ro-dark) 70%);color:var(--ro-mint);flex-direction:column;justify-content:center;align-items:center;gap:1rem;display:flex}.signin-logo{margin:0}.signin-logo img{width:min(55vw,220px);height:auto}.signin .lead{max-width:22rem;color:var(--ro-mint-2);margin:0 0 1rem}.signin button.primary{background:var(--ro-leaf);border-color:var(--ro-leaf);color:#10180d;min-height:52px}.signin .card{max-width:24rem;color:var(--ro-mint);text-align:center;background:#ffffff14;border-color:#ffffff2e}.signin .card .muted{color:var(--ro-mint-2)}.signin .row{justify-content:center}.signin .banner.error{max-width:24rem}ul.plain{margin:0;padding:0;list-style:none}.ask{gap:.35rem;margin:.75rem 0 1rem;display:grid}.ask>label{font-weight:600}.ask textarea,.add textarea,li.card textarea{box-sizing:border-box;width:100%}.why summary{cursor:pointer;color:var(--muted);font-size:.85rem}.why p{margin:.25rem 0 0;font-size:.9rem}.quote{border-left:3px solid var(--accent-soft);margin:.5rem 0;padding-left:.75rem}.own-words,.quote{white-space:pre-wrap}li.card.plan-row,ul.plain>li.card{display:block}.counts li{margin-right:1rem;display:inline-block}.choice.on{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.add{gap:.35rem;margin:.25rem 0 1.25rem;display:grid}.add button{justify-self:start}fieldset.choices{border:none;margin:0;padding:0}.choice:has(input[type=radio]){grid-template-columns:auto 1fr;align-items:center;column-gap:.75rem}.choice input[type=radio]{grid-row:span 2;width:auto;min-height:auto;margin:0}.voice{gap:.35rem;display:grid}.voice .link{justify-self:start}.listening{color:var(--danger);font-weight:600}.rec-dot{background:var(--danger);border-radius:50%;width:.75rem;height:.75rem;animation:1s ease-in-out infinite rec-pulse}@keyframes rec-pulse{50%{opacity:.3}}@media (prefers-reduced-motion:reduce){.rec-dot{animation:none}}.voice-review textarea{box-sizing:border-box;width:100%}.sync-failed{color:var(--danger)}.row-actions{justify-content:space-between;gap:12px;margin-top:16px;display:flex}
