@layer reset,tokens,base,components,utilities;@layer reset{*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}}:root{color-scheme:light dark;accent-color:light-dark(#2d2d2d,#d0d0ce);scrollbar-color:light-dark(#bbb,#444) transparent;scrollbar-width:thin;--ink: light-dark(#1c1c1c, #e8e8e6);--ink-2: light-dark(#2d2d2d, #d0d0ce);--ink-mute: light-dark(#555, #aaa);--mute: light-dark(#888, #888);--mute-2: light-dark(#aaa, #666);--mute-3: light-dark(#bbb, #555);--mute-4: light-dark(#ccc, #444);--paper: light-dark(#fafaf9, #161616);--paper-2: light-dark(#f5f5f3, #1c1c1c);--paper-3: light-dark(#f3f3f2, #222);--paper-4: light-dark(#f0f0ee, #282828);--rule: light-dark(#e8e8e6, #2a2a2a);--rule-2: light-dark(#ebebea, #282828);--rule-3: light-dark(#e0e0de, #333);--rule-4: light-dark(#d0d0ce, #444);--accent: light-dark(#16a34a, #22c55e);--accent-hover: light-dark(#15803d, #16a34a);--danger: light-dark(#e11d48, #fb7185);--sugg-ink: light-dark(#5a7a4e, #8cbf7a);--sugg-mute: light-dark(#7a9a6e, #6a9a5e);--sugg-rule: light-dark(#d0dece, #2e3d2a);--sugg-rule-2: light-dark(#e0e8de, #263322);--sugg-paper: light-dark(#f0f5ee, #1e2a1c);--sugg-paper-2: light-dark(#f7f9f5, #1a241a);--r-sm: 8px;--r-md: 12px;--r-lg: 16px;--r-pill: 999px;--t-micro: .72rem;--t-meta: .82rem;--t-body-sm: .9rem;--t-body: 1rem;--t-title: 1.05rem;--text-entry-border: var(--rule-3);--text-entry-border-focus: light-dark(var(--ink-2), var(--mute));--text-entry-text: var(--ink);--text-entry-bg: light-dark(#fff, var(--paper-2));--text-entry-bg-disabled: var(--paper-3);--text-entry-placeholder: var(--mute-2);--text-entry-shadow: none;--num-stack: ui-monospace, "SF Mono", "JetBrains Mono", "IBM Plex Mono", Menlo, Consolas, monospace}:root.light{color-scheme:light}:root.dark{color-scheme:dark}html{scrollbar-gutter:stable}html:has(.coach-view) body{overflow:hidden;overscroll-behavior:none}body{font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Inter,Segoe UI,system-ui,sans-serif;background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums;text-wrap:pretty}h1,h2,h3,h4,h5,h6{text-wrap:balance}input[type=number],input[type=date]{font-variant-numeric:tabular-nums}.text-entry{width:100%;border:1px solid var(--text-entry-border);border-radius:12px;min-height:2.85rem;padding:.78rem .9rem;font-family:inherit;font-size:1rem;font-weight:400;line-height:1.45;letter-spacing:0;color:var(--text-entry-text);background:var(--text-entry-bg);box-shadow:var(--text-entry-shadow);transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease;appearance:none}.text-entry::placeholder{color:var(--text-entry-placeholder)}.text-entry:focus{outline:none;border-color:var(--text-entry-border-focus);box-shadow:0 0 0 3px #80808026}.text-entry:disabled{background:var(--text-entry-bg-disabled);color:var(--mute-2);cursor:not-allowed}textarea.text-entry{resize:none;min-height:3.4rem;padding-top:.8rem;padding-bottom:.8rem;field-sizing:content;max-height:12rem}.text-entry.compact{border-radius:10px;min-height:2.7rem;padding:.68rem .8rem;font-size:.95rem}.row.svelte-17za9jn{display:flex;align-items:center;padding:.75rem 0;border-bottom:1px solid var(--rule);gap:.5rem}.row.fading.svelte-17za9jn{opacity:.4}.main.svelte-17za9jn{flex:1;min-width:0;cursor:pointer;display:flex;flex-direction:column;gap:.25rem}.main.svelte-17za9jn:hover .desc:where(.svelte-17za9jn){color:var(--ink-mute)}.desc.svelte-17za9jn{font-size:.95rem;line-height:1.4;color:var(--ink)}.macros.svelte-17za9jn{font-size:.78rem;color:var(--mute);line-height:1.3;font-variant-numeric:tabular-nums}.fav.svelte-17za9jn{background:none;border:none;color:var(--mute-4);font-size:1.1rem;line-height:1;cursor:pointer;padding:0;flex-shrink:0;min-width:2.25rem;min-height:2.75rem;display:flex;align-items:center;justify-content:center;touch-action:manipulation}.fav.starred.svelte-17za9jn{color:var(--ink-2)}@media(hover:hover){.fav.svelte-17za9jn:not(.starred):hover{color:var(--ink-2)}}.fav.svelte-17za9jn:disabled{opacity:1;cursor:default}.fav.svelte-17za9jn:not(.starred):disabled{opacity:.35}.modal-delete.svelte-17za9jn{width:100%;margin-top:1.25rem;padding:.5rem 1rem;background:none;border:1px solid var(--rule);border-radius:var(--r-sm);color:var(--mute);font-size:var(--t-body-sm);font-family:inherit;cursor:pointer;touch-action:manipulation}.modal-delete.confirm.svelte-17za9jn{border-color:var(--danger);color:var(--danger);font-weight:500}@media(hover:hover){.modal-delete.svelte-17za9jn:hover:not(:disabled){border-color:var(--danger);color:var(--danger)}}.modal-delete.svelte-17za9jn:disabled{opacity:.35;cursor:default}.overlay.svelte-17za9jn{position:fixed;inset:0;background:#00000040;z-index:30}.modal.svelte-17za9jn{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--paper);border-radius:var(--r-md);width:min(92vw,420px);max-height:85vh;overflow-y:auto;z-index:31;padding:1.5rem;box-shadow:0 4px 24px #0000001f}.modal.svelte-17za9jn h3:where(.svelte-17za9jn){font-size:.95rem;font-weight:600;color:var(--ink);margin-bottom:1.25rem;text-transform:none;letter-spacing:0}.field.svelte-17za9jn{display:flex;flex-direction:column;gap:.3rem;margin-bottom:1rem}.label.svelte-17za9jn{font-size:var(--t-micro);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--mute)}textarea.svelte-17za9jn,input.svelte-17za9jn,select.svelte-17za9jn{border:1px solid var(--rule);border-radius:var(--r-sm);padding:.5rem .6rem;font-family:inherit;font-size:var(--t-body);background:var(--paper);color:var(--ink);outline:none;width:100%;box-sizing:border-box}textarea.svelte-17za9jn:focus,input.svelte-17za9jn:focus,select.svelte-17za9jn:focus{border-color:var(--ink-2)}select.svelte-17za9jn{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23888' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .6rem center;padding-right:2rem;cursor:pointer}.num-grid.svelte-17za9jn{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-bottom:1rem}.row-fields.svelte-17za9jn{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:1rem}.row-fields.svelte-17za9jn .field:where(.svelte-17za9jn){margin-bottom:0}.num-grid.svelte-17za9jn .field:where(.svelte-17za9jn){margin-bottom:0}.actions.svelte-17za9jn{display:flex;gap:.5rem;margin-top:.25rem}.save-btn.svelte-17za9jn{flex:1;padding:.6rem 1rem;background:var(--ink-2);color:var(--paper);border:none;border-radius:var(--r-sm);cursor:pointer;font-size:var(--t-body-sm);font-family:inherit;font-weight:500;touch-action:manipulation}@media(hover:hover){.save-btn.svelte-17za9jn:hover:not(:disabled){background:var(--ink)}}.save-btn.svelte-17za9jn:disabled{opacity:.5;cursor:default}.cancel-btn.svelte-17za9jn{padding:.6rem 1rem;background:none;color:var(--mute);border:1px solid var(--rule);border-radius:var(--r-sm);cursor:pointer;font-size:var(--t-body-sm);font-family:inherit;touch-action:manipulation}@media(hover:hover){.cancel-btn.svelte-17za9jn:hover:not(:disabled){border-color:var(--mute)}}.event-form.svelte-ny8e15{display:flex;flex-direction:column;gap:1rem;padding:.5rem 0 .25rem;flex:1;overflow-y:auto;min-height:0}.kind-bubbles.svelte-ny8e15{display:flex;gap:.4rem;flex-wrap:wrap}.kind-bubble.svelte-ny8e15{background:none;border:1px solid var(--rule-3);border-radius:var(--r-pill);color:var(--mute);font-size:var(--t-body-sm);padding:.4rem .85rem;cursor:pointer;font-family:inherit;font-weight:500;touch-action:manipulation;transition:border-color .12s,color .12s,background .12s}.kind-bubble.active.svelte-ny8e15{border-color:var(--ink-2);color:var(--ink-2);background:var(--paper-2)}@media(hover:hover){.kind-bubble.svelte-ny8e15:hover{border-color:var(--ink-2);color:var(--ink-2)}}.event-fields.svelte-ny8e15{display:flex;flex-direction:column;gap:.85rem}.field-row.svelte-ny8e15{display:flex;align-items:center;gap:.75rem}.field-row.stacked.svelte-ny8e15{flex-direction:column;align-items:stretch;gap:.35rem}.field-label.svelte-ny8e15{font-size:var(--t-meta);color:var(--mute);text-transform:uppercase;letter-spacing:.04em;font-weight:600;min-width:5.5rem}.field-row.svelte-ny8e15 input[type=number]:where(.svelte-ny8e15){border:1px solid var(--rule);border-radius:var(--r-sm);padding:.45rem .65rem;font-family:inherit;font-size:16px;color:var(--ink);background:var(--paper);font-variant-numeric:tabular-nums;width:6rem}.field-row.svelte-ny8e15 textarea:where(.svelte-ny8e15){border:1px solid var(--rule);border-radius:var(--r-sm);padding:.5rem .65rem;font-family:inherit;font-size:16px;background:var(--paper);color:var(--ink);resize:vertical}.quick-pills.svelte-ny8e15{display:flex;gap:.35rem;flex-wrap:wrap}.quick-pill.svelte-ny8e15{background:none;border:1px solid var(--rule-3);border-radius:var(--r-pill);color:var(--mute);font-size:var(--t-meta);padding:.2rem .6rem;cursor:pointer;font-family:inherit;touch-action:manipulation}@media(hover:hover){.quick-pill.svelte-ny8e15:hover{border-color:var(--ink-2);color:var(--ink-2)}}.slider-wrap.svelte-ny8e15{display:flex;align-items:center;gap:.6rem;flex:1}.slider-wrap.svelte-ny8e15 input[type=range]:where(.svelte-ny8e15){flex:1}.slider-val.svelte-ny8e15{font-variant-numeric:tabular-nums;font-weight:600;color:var(--ink);min-width:1.5rem;text-align:right}.event-actions.svelte-ny8e15{display:flex;justify-content:space-between;align-items:center;gap:.5rem;margin-top:.5rem}.event-actions.svelte-ny8e15 :where(.svelte-ny8e15):only-child{margin-left:auto}.event-delete.svelte-ny8e15{background:none;color:var(--danger, #c00);border:1px solid var(--rule);border-radius:var(--r-sm);padding:.55rem 1rem;font-size:var(--t-body-sm);font-family:inherit;font-weight:500;cursor:pointer;min-height:2.5rem}.event-delete.svelte-ny8e15:disabled{opacity:.45;cursor:default}@media(hover:hover){.event-delete.svelte-ny8e15:not(:disabled):hover{border-color:var(--danger, #c00)}}.event-save.svelte-ny8e15{background:var(--ink-2);color:var(--paper);border:none;border-radius:var(--r-sm);padding:.55rem 1.4rem;font-size:var(--t-body-sm);font-family:inherit;font-weight:500;cursor:pointer;min-height:2.5rem}.event-save.svelte-ny8e15:disabled{opacity:.45;cursor:default}@media(hover:hover){.event-save.svelte-ny8e15:not(:disabled):hover{background:var(--ink)}}@media(max-width:480px){.field-label.svelte-ny8e15{min-width:4.5rem;font-size:.65rem}}.drawer.svelte-1ffer9w{position:fixed;top:calc(var(--vvt, 0px) + var(--vvh, 100dvh) - min(calc(var(--vvh, 100dvh) * .82),720px));left:0;right:0;bottom:auto;max-width:640px;margin:0 auto;background:var(--paper);color:var(--ink);border:none;border-radius:var(--r-lg) var(--r-lg) 0 0;box-shadow:0 -2px 16px #00000014;width:min(100%,640px);height:min(82vh,720px);height:min(calc(var(--vvh, 100dvh) * .82),720px);max-height:calc(var(--vvh, 100dvh) - .5rem);padding:.75rem 1.25rem calc(1.5rem + env(safe-area-inset-bottom,0px));transform:translateY(0);opacity:1;transition:transform .22s ease,opacity .22s ease,display .22s allow-discrete,overlay .22s allow-discrete;will-change:transform}.drawer.svelte-1ffer9w:not([open]){display:none;transform:translateY(100%);opacity:0}.drawer[open].svelte-1ffer9w{display:flex;flex-direction:column}@starting-style{.drawer[open].svelte-1ffer9w{transform:translateY(100%);opacity:0}.drawer[open].svelte-1ffer9w::backdrop{background:#0000}}.drawer.svelte-1ffer9w::backdrop{background:#0003;transition:background .22s ease,display .22s allow-discrete,overlay .22s allow-discrete}.handle.svelte-1ffer9w{background:none;border:none;display:flex;align-items:center;justify-content:center;width:100%;padding:.25rem 0 .5rem;margin:-.25rem 0 .25rem;cursor:pointer;min-height:0;touch-action:manipulation}.handle-bar.svelte-1ffer9w{display:block;width:36px;height:5px;background:var(--rule);border-radius:3px;transition:background .15s,width .15s}@media(hover:hover){.handle.svelte-1ffer9w:hover .handle-bar:where(.svelte-1ffer9w){background:var(--mute-2);width:48px}}.drawer-top.svelte-1ffer9w{display:flex;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.5rem;flex-wrap:wrap}.top-left.svelte-1ffer9w{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap;min-width:0}.meal-pill.svelte-1ffer9w{background:none;border:1px solid var(--rule-3);border-radius:var(--r-pill);color:var(--mute);font-size:.75rem;padding:.25rem .7rem;cursor:pointer;font-family:inherit;font-weight:500;text-transform:capitalize;touch-action:manipulation;white-space:nowrap;transition:border-color .12s,color .12s,background .12s;anchor-name:--meal-pill}.meal-pill.active.svelte-1ffer9w{border-color:var(--ink-2);color:var(--ink-2);background:var(--paper-2)}@media(hover:hover){.meal-pill.svelte-1ffer9w:hover{border-color:var(--ink-2);color:var(--ink-2)}}.meal-menu[popover].svelte-1ffer9w{position:fixed;position-anchor:--meal-pill;top:calc(anchor(bottom) + .25rem);left:anchor(left);inset-block-end:auto;inset-inline-end:auto;margin:0;background:var(--paper);color:var(--ink);border:1px solid var(--rule);border-radius:var(--r-sm);box-shadow:0 2px 12px #00000014;flex-direction:column;min-width:8rem;padding:.25rem}.meal-menu[popover].svelte-1ffer9w:popover-open{display:flex}.meal-menu-item.svelte-1ffer9w{background:none;border:none;text-align:left;padding:.4rem .65rem;font-family:inherit;font-size:.8rem;color:var(--ink);cursor:pointer;border-radius:var(--r-sm);text-transform:capitalize}.meal-menu-item.selected.svelte-1ffer9w{background:var(--paper-2);font-weight:600}.meal-menu-item.clear.svelte-1ffer9w{color:var(--mute);border-top:1px solid var(--rule);margin-top:.15rem;padding-top:.45rem}@media(hover:hover){.meal-menu-item.svelte-1ffer9w:hover{background:var(--paper-2)}}.top-right.svelte-1ffer9w{display:flex;align-items:center;gap:.5rem}.done-btn.svelte-1ffer9w{background:var(--ink-2);color:var(--paper);border:none;border-radius:var(--r-sm);padding:.4rem .85rem;font-size:var(--t-body-sm);font-family:inherit;font-weight:500;cursor:pointer;min-height:2.25rem;white-space:nowrap}.done-btn.svelte-1ffer9w:disabled{opacity:.35;cursor:default}@media(hover:hover){.done-btn.svelte-1ffer9w:not(:disabled):hover{background:var(--ink)}}.date-input.svelte-1ffer9w{border:1px solid var(--rule-4);border-radius:var(--r-sm);padding:.3rem .6rem;font-size:var(--t-meta);font-family:inherit;color:var(--ink-mute);font-weight:500;background:var(--paper)}.date-input.svelte-1ffer9w:focus{outline:none;border-color:var(--ink-2)}@media(max-width:480px){.drawer.svelte-1ffer9w{padding-left:1rem;padding-right:1rem}.done-btn.svelte-1ffer9w{padding:.35rem .65rem;font-size:var(--t-meta)}.date-input.svelte-1ffer9w{padding:.3rem .4rem;font-size:.7rem}}.mode-picker.svelte-1ffer9w{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:2rem .5rem;flex:1;justify-content:center}.mode-prompt.svelte-1ffer9w{font-size:var(--t-body);color:var(--mute);margin:0}.mode-bubbles.svelte-1ffer9w{display:grid;grid-template-columns:1fr 1fr;gap:1rem;width:100%;max-width:22rem}.mode-bubble.svelte-1ffer9w{display:flex;flex-direction:column;align-items:center;gap:.25rem;background:var(--paper);border:1px solid var(--rule);border-radius:var(--r-md);padding:1.1rem .8rem;cursor:pointer;font-family:inherit;color:var(--ink);min-width:0;width:100%;transition:border-color .12s,background .12s,transform .08s;touch-action:manipulation}.mode-bubble.svelte-1ffer9w:active{transform:scale(.98)}@media(hover:hover){.mode-bubble.svelte-1ffer9w:hover{border-color:var(--ink-2);background:var(--paper-2)}}.mode-bubble-emoji.svelte-1ffer9w{font-size:1.75rem;line-height:1}.mode-bubble-label.svelte-1ffer9w{font-size:var(--t-body-sm);font-weight:600}.mode-bubble-hint.svelte-1ffer9w{font-size:var(--t-meta);color:var(--mute-2);text-align:center;line-height:1.3}.result-card.svelte-1ffer9w{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);margin-bottom:.5rem;transition:opacity .15s}.result-card.dimmed.svelte-1ffer9w{opacity:.5}.card-entry.svelte-1ffer9w{padding:.55rem 0;border-bottom:1px solid var(--rule);display:flex;flex-direction:column;gap:.3rem}.card-entry.dimmed.svelte-1ffer9w{opacity:.45}.card-entry.svelte-1ffer9w:last-child{border-bottom:none}.card-entry-head.svelte-1ffer9w{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem}.card-desc.svelte-1ffer9w{font-size:var(--t-body-sm);font-weight:500;color:var(--ink);line-height:1.3}.card-macros.svelte-1ffer9w{display:flex;align-items:center;gap:.2rem;flex-wrap:wrap;font-variant-numeric:tabular-nums}.macro-field.svelte-1ffer9w{display:inline-flex;align-items:baseline;gap:2px}.macro-field.svelte-1ffer9w input:where(.svelte-1ffer9w){width:40px;border:none;border-bottom:1px dotted var(--rule-3);background:transparent;text-align:right;font-family:var(--num-stack);font-size:var(--t-meta);color:var(--ink);padding:0 1px 1px;appearance:textfield;-moz-appearance:textfield;font-variant-numeric:tabular-nums}.macro-field.svelte-1ffer9w input:where(.svelte-1ffer9w)::-webkit-outer-spin-button,.macro-field.svelte-1ffer9w input:where(.svelte-1ffer9w)::-webkit-inner-spin-button{-webkit-appearance:none}.macro-field.svelte-1ffer9w input:where(.svelte-1ffer9w):focus{outline:none;border-bottom:1px solid var(--ink-2)}.macro-field.svelte-1ffer9w input:where(.svelte-1ffer9w):disabled{color:var(--mute-2);border-bottom-color:transparent}.macro-label.svelte-1ffer9w{font-size:.75rem;color:var(--mute-2);font-weight:500}.macro-sep.svelte-1ffer9w{color:var(--mute-4);font-size:.75rem;margin:0 .1rem}.entry-delete.svelte-1ffer9w{background:none;border:none;color:var(--mute-4);font-size:.75rem;cursor:pointer;padding:.1rem .2rem;line-height:1;flex-shrink:0;min-width:0;min-height:0;display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem}.entry-delete.deleting.svelte-1ffer9w{opacity:1;cursor:default}.entry-spinner.svelte-1ffer9w{width:.75rem;height:.75rem;border:1.5px solid var(--rule-3);border-top-color:var(--ink-2);border-radius:50%;animation:svelte-1ffer9w-spin .7s linear infinite}@keyframes svelte-1ffer9w-spin{to{transform:rotate(360deg)}}@media(hover:hover){.entry-delete.svelte-1ffer9w:hover{color:var(--danger, #c00)}}.messages.svelte-1ffer9w{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;overflow-anchor:auto;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column;gap:.5rem;padding:.25rem 0;margin-bottom:.5rem}@media(prefers-reduced-motion:reduce){.messages.svelte-1ffer9w{scroll-behavior:auto}}.empty.svelte-1ffer9w{font-size:var(--t-meta);color:var(--mute-2);text-align:center;margin:1rem 0;line-height:1.5}.msg.svelte-1ffer9w{display:flex;max-width:100%}.msg.user.svelte-1ffer9w{justify-content:flex-end}.msg.model.svelte-1ffer9w{justify-content:flex-start}.msg.action.svelte-1ffer9w{justify-content:center}.bubble.svelte-1ffer9w{max-width:85%;padding:.55rem .8rem;border-radius:var(--r-md);font-size:var(--t-body-sm);line-height:1.5;white-space:pre-line;overflow-wrap:break-word;word-break:break-word}.msg.user.svelte-1ffer9w .bubble:where(.svelte-1ffer9w){background:var(--ink-2);color:var(--paper);border-bottom-right-radius:var(--r-sm)}.msg.model.svelte-1ffer9w .bubble:where(.svelte-1ffer9w){background:var(--paper-2);color:var(--ink);border-bottom-left-radius:var(--r-sm)}.bubble.svelte-1ffer9w strong{font-weight:600}.msg-thumbs.svelte-1ffer9w{display:flex;gap:.3rem;margin-bottom:.3rem;flex-wrap:wrap}.msg-thumb.svelte-1ffer9w{width:60px;height:60px;border-radius:var(--r-sm);object-fit:cover;display:block}.msg-text.svelte-1ffer9w{white-space:pre-line}.action-bubble.svelte-1ffer9w{font-size:var(--t-meta);color:var(--mute);background:var(--paper-3);padding:.3rem .7rem;border-radius:var(--r-pill);font-style:italic}.typing.svelte-1ffer9w{display:inline-flex;gap:4px;align-items:center}.typing.svelte-1ffer9w span:where(.svelte-1ffer9w){width:6px;height:6px;border-radius:50%;background:var(--mute-3);animation:svelte-1ffer9w-bounce 1.2s infinite ease-in-out}.typing.svelte-1ffer9w span:where(.svelte-1ffer9w):nth-child(2){animation-delay:.15s}.typing.svelte-1ffer9w span:where(.svelte-1ffer9w):nth-child(3){animation-delay:.3s}@keyframes svelte-1ffer9w-bounce{0%,80%,to{transform:translateY(0);opacity:.5}40%{transform:translateY(-4px);opacity:1}}.composer.svelte-1ffer9w{display:flex;flex-direction:column;gap:.5rem}.file-input.svelte-1ffer9w{display:none}.thumb-strip.svelte-1ffer9w{display:flex;gap:.5rem;overflow-x:auto;padding:2px 0}.thumb.svelte-1ffer9w{position:relative;flex-shrink:0;width:70px;height:70px;border-radius:var(--r-sm);overflow:hidden;border:1px solid var(--rule)}.thumb.svelte-1ffer9w img:where(.svelte-1ffer9w){display:block;width:100%;height:100%;object-fit:cover}.thumb-remove.svelte-1ffer9w{position:absolute;top:4px;right:4px;width:24px;height:24px;border-radius:50%;background:#0009;color:var(--paper);border:none;font-size:.78rem;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;line-height:1}.thumb-add.svelte-1ffer9w{flex-shrink:0;width:70px;height:70px;border-radius:var(--r-sm);border:1px dashed var(--rule-4);background:none;color:var(--mute-2);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}@media(hover:hover){.thumb-add.svelte-1ffer9w:hover{border-color:var(--ink-2);color:var(--ink-2)}}.input-row.svelte-1ffer9w{display:flex;gap:.5rem;align-items:flex-end}.composer-input.svelte-1ffer9w{flex:1;min-height:2.75rem}.attach-btn.svelte-1ffer9w{flex-shrink:0;width:2.75rem;height:2.75rem;border-radius:50%;background:none;border:1px solid var(--rule);color:var(--mute);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}@media(hover:hover){.attach-btn.svelte-1ffer9w:hover:not(:disabled){border-color:var(--ink-2);color:var(--ink-2)}}.attach-btn.svelte-1ffer9w:disabled{opacity:.35;cursor:default}textarea.svelte-1ffer9w{flex:1;border:1px solid var(--rule);border-radius:var(--r-sm);padding:.5rem .75rem;font-size:var(--t-body);resize:none;font-family:inherit;background:var(--paper);color:var(--ink)}textarea.svelte-1ffer9w:focus{outline:none;border-color:var(--ink-2)}.send-btn.svelte-1ffer9w{padding:.6rem 1rem;background:var(--ink-2);color:var(--paper);border:none;border-radius:var(--r-sm);cursor:pointer;font-size:var(--t-body-sm);font-family:inherit;white-space:nowrap;min-height:2.75rem}.send-btn.svelte-1ffer9w:disabled{opacity:.35;cursor:default}.send-btn.cancel.svelte-1ffer9w{background:var(--paper);color:var(--ink-2);border:1px solid var(--rule)}button.svelte-1ffer9w:focus-visible,input.svelte-1ffer9w:focus-visible,textarea.svelte-1ffer9w:focus-visible{outline:2px solid var(--ink-2);outline-offset:2px}.coach.svelte-17er2sz{display:flex;flex-direction:column;flex:1;min-height:0;gap:.5rem}.range-picker.svelte-17er2sz{display:flex;align-items:center;gap:.35rem;padding:.1rem 0}.range-label.svelte-17er2sz{font-size:.72rem;color:var(--mute);margin-right:.15rem}.range-btn.svelte-17er2sz{background:none;border:1px solid var(--rule-3);border-radius:var(--r-pill);color:var(--mute);font-family:inherit;font-size:.72rem;letter-spacing:.02em;padding:.2rem .6rem;cursor:pointer;touch-action:manipulation;min-height:0;transition:border-color .12s,color .12s,background .12s}.range-btn.active.svelte-17er2sz{border-color:var(--ink-2);color:var(--ink-2);background:var(--paper-2)}.range-btn.svelte-17er2sz:disabled{opacity:.5;cursor:default}@media(hover:hover){.range-btn.svelte-17er2sz:not(.active):not(:disabled):hover{border-color:var(--mute-2);color:var(--ink-mute)}}.messages.svelte-17er2sz{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;overflow-anchor:none;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column;gap:.5rem;padding:.25rem 0}@media(prefers-reduced-motion:reduce){.messages.svelte-17er2sz{scroll-behavior:auto}}.empty.svelte-17er2sz{font-size:var(--t-meta);color:var(--mute-2);text-align:center;margin:1rem 0;line-height:1.5}.msg.svelte-17er2sz{display:flex;max-width:100%}.msg.user.svelte-17er2sz{justify-content:flex-end}.msg.model.svelte-17er2sz{justify-content:flex-start}.bubble.svelte-17er2sz{max-width:85%;padding:.55rem .8rem;border-radius:var(--r-md);font-size:var(--t-body-sm);line-height:1.5;white-space:pre-line;overflow-wrap:break-word;word-break:break-word}.msg.user.svelte-17er2sz .bubble:where(.svelte-17er2sz){background:var(--ink-2);color:var(--paper);border-bottom-right-radius:var(--r-sm)}.msg.model.svelte-17er2sz .bubble:where(.svelte-17er2sz){background:var(--paper-2);color:var(--ink);border-bottom-left-radius:var(--r-sm)}.bubble.svelte-17er2sz strong{font-weight:600}.typing.svelte-17er2sz{display:inline-flex;gap:4px;align-items:center}.typing.svelte-17er2sz span:where(.svelte-17er2sz){width:6px;height:6px;border-radius:50%;background:var(--mute-3);animation:svelte-17er2sz-bounce 1.2s infinite ease-in-out}.typing.svelte-17er2sz span:where(.svelte-17er2sz):nth-child(2){animation-delay:.15s}.typing.svelte-17er2sz span:where(.svelte-17er2sz):nth-child(3){animation-delay:.3s}@keyframes svelte-17er2sz-bounce{0%,80%,to{transform:translateY(0);opacity:.5}40%{transform:translateY(-4px);opacity:1}}.pinned.svelte-17er2sz{position:relative;padding:.5rem 2rem .5rem .7rem;border-left:3px solid var(--ink-2);background:var(--paper-2);border-radius:0 var(--r-sm) var(--r-sm) 0;font-size:var(--t-meta);color:var(--mute);line-height:1.45}.pinned-body.svelte-17er2sz{display:flex;flex-direction:column;gap:.25rem}.pinned-text.svelte-17er2sz{white-space:pre-line;overflow-wrap:break-word;word-break:break-word;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.pinned.expanded.svelte-17er2sz .pinned-text:where(.svelte-17er2sz){-webkit-line-clamp:unset;line-clamp:unset;overflow:visible;max-height:40vh;overflow-y:auto}.pinned-toggle.svelte-17er2sz{align-self:flex-start;background:none;border:none;color:var(--ink-2);font-family:inherit;font-size:.7rem;cursor:pointer;padding:0;min-height:0}.pinned-remove.svelte-17er2sz{position:absolute;top:.25rem;right:.35rem;background:none;border:none;color:var(--mute-3);font-size:.85rem;cursor:pointer;padding:.2rem .35rem;line-height:1;min-height:0}@media(hover:hover){.pinned-remove.svelte-17er2sz:hover{color:var(--ink-2)}}.input-row.svelte-17er2sz{display:flex;gap:.5rem;align-items:flex-end}.composer-input.svelte-17er2sz{flex:1;min-height:2.75rem}textarea.svelte-17er2sz{flex:1;border:1px solid var(--rule);border-radius:var(--r-sm);padding:.5rem .75rem;font-size:var(--t-body);resize:none;font-family:inherit;background:var(--paper);color:var(--ink)}textarea.svelte-17er2sz:focus{outline:none;border-color:var(--ink-2)}button.svelte-17er2sz{padding:.6rem 1rem;background:var(--ink-2);color:var(--paper);border:none;border-radius:var(--r-sm);cursor:pointer;font-size:var(--t-body-sm);font-family:inherit;white-space:nowrap;min-height:2.75rem}button.svelte-17er2sz:disabled{opacity:.35;cursor:default}.panel.svelte-1bqgtna{max-width:420px;padding:.25rem 0}.hint-text.svelte-1bqgtna{font-size:var(--t-meta);color:var(--mute);margin-bottom:1.25rem;line-height:1.5}.fields.svelte-1bqgtna{display:flex;flex-direction:column;gap:1rem}label.svelte-1bqgtna{display:flex;flex-direction:column;gap:.3rem}label.svelte-1bqgtna span:where(.svelte-1bqgtna){font-size:var(--t-micro);text-transform:uppercase;letter-spacing:.06em;color:var(--mute);font-weight:600}input.svelte-1bqgtna,textarea.svelte-1bqgtna,select.svelte-1bqgtna{border:1px solid var(--rule);border-radius:var(--r-sm);padding:.5rem .75rem;font-size:var(--t-body);font-family:inherit;background:var(--paper);color:var(--ink);resize:none;width:100%;box-sizing:border-box}input.svelte-1bqgtna:focus,textarea.svelte-1bqgtna:focus,select.svelte-1bqgtna:focus{outline:none;border-color:var(--ink-2)}.status.svelte-1bqgtna{font-size:.78rem;color:var(--mute-2);margin-top:.75rem}.actions.svelte-1bqgtna{display:flex;gap:.5rem;margin-top:1.25rem}.save-btn.svelte-1bqgtna{flex:1;padding:.6rem 1rem;background:var(--ink-2);color:var(--paper);border:none;border-radius:var(--r-sm);cursor:pointer;font-size:var(--t-body-sm);font-family:inherit;font-weight:500;touch-action:manipulation}.save-btn.svelte-1bqgtna:hover:not(:disabled){background:var(--ink)}.save-btn.svelte-1bqgtna:disabled{opacity:.5;cursor:default}.cancel-btn.svelte-1bqgtna{padding:.6rem 1rem;background:none;color:var(--mute);border:1px solid var(--rule);border-radius:var(--r-sm);cursor:pointer;font-size:var(--t-body-sm);font-family:inherit;touch-action:manipulation}.cancel-btn.svelte-1bqgtna:hover:not(:disabled){border-color:var(--mute)}.favs-wrap.svelte-yhcrn7{padding-bottom:2rem}.search-row.svelte-yhcrn7{padding:.75rem 0 .5rem;position:sticky;top:0;background:var(--paper);z-index:5}.search.svelte-yhcrn7{width:100%;box-sizing:border-box;border:1px solid var(--rule);border-radius:var(--r-sm);padding:.5rem .75rem;font-family:inherit;font-size:var(--t-body);background:var(--paper);color:var(--ink);outline:none}.search.svelte-yhcrn7:focus{border-color:var(--ink-2)}.state.svelte-yhcrn7{color:var(--mute);font-size:var(--t-body-sm);padding:1.5rem 0;text-align:center}.fav-row.svelte-yhcrn7{display:flex;align-items:center;padding:.75rem 0;border-bottom:1px solid var(--rule);gap:.5rem}.fav-main.svelte-yhcrn7{flex:1;min-width:0;cursor:pointer;display:flex;flex-direction:column;gap:.2rem}.fav-main.svelte-yhcrn7:hover .fav-desc:where(.svelte-yhcrn7){color:var(--ink-mute)}.fav-desc.svelte-yhcrn7{font-size:.95rem;line-height:1.4;color:var(--ink)}.fav-macros.svelte-yhcrn7{font-size:.78rem;color:var(--mute);font-variant-numeric:tabular-nums}.fav-meal.svelte-yhcrn7{font-size:.72rem;color:var(--mute-4);text-transform:capitalize}.fav-del.svelte-yhcrn7{background:none;border:none;color:var(--mute-4);font-size:1.1rem;line-height:1;cursor:pointer;padding:0;flex-shrink:0;min-width:2.75rem;min-height:2.75rem;display:flex;align-items:center;justify-content:center;touch-action:manipulation}@media(hover:hover){.fav-del.svelte-yhcrn7:hover{color:var(--danger)}}.overlay.svelte-yhcrn7{position:fixed;inset:0;background:#00000040;z-index:30}.modal.svelte-yhcrn7{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--paper);border-radius:var(--r-md);width:min(92vw,380px);z-index:31;padding:1.5rem;box-shadow:0 4px 24px #0000001f}.modal.svelte-yhcrn7 h3:where(.svelte-yhcrn7){font-size:.95rem;font-weight:600;color:var(--ink);margin-bottom:.5rem;text-transform:none;letter-spacing:0}.modal-desc.svelte-yhcrn7{font-size:var(--t-meta);color:var(--mute);margin-bottom:1.25rem;line-height:1.4}.field.svelte-yhcrn7{display:flex;flex-direction:column;gap:.3rem;margin-bottom:1rem}.label.svelte-yhcrn7{font-size:var(--t-micro);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--mute)}input[type=date].svelte-yhcrn7,select.svelte-yhcrn7{border:1px solid var(--rule);border-radius:var(--r-sm);padding:.5rem .6rem;font-family:inherit;font-size:var(--t-body);background:var(--paper);color:var(--ink);outline:none;width:100%;box-sizing:border-box}input[type=date].svelte-yhcrn7:focus,select.svelte-yhcrn7:focus{border-color:var(--ink-2)}select.svelte-yhcrn7{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23888' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .6rem center;padding-right:2rem;cursor:pointer}.actions.svelte-yhcrn7{display:flex;gap:.5rem;margin-top:.25rem}.save-btn.svelte-yhcrn7{flex:1;padding:.6rem 1rem;background:var(--ink-2);color:var(--paper);border:none;border-radius:var(--r-sm);cursor:pointer;font-size:var(--t-body-sm);font-family:inherit;font-weight:500;touch-action:manipulation}@media(hover:hover){.save-btn.svelte-yhcrn7:hover:not(:disabled){background:var(--ink)}}.save-btn.svelte-yhcrn7:disabled{opacity:.5;cursor:default}.cancel-btn.svelte-yhcrn7{padding:.6rem 1rem;background:none;color:var(--mute);border:1px solid var(--rule);border-radius:var(--r-sm);cursor:pointer;font-size:var(--t-body-sm);font-family:inherit;touch-action:manipulation}@media(hover:hover){.cancel-btn.svelte-yhcrn7:hover:not(:disabled){border-color:var(--mute)}}.insight-skeleton.svelte-1hbo7he{display:flex;flex-direction:column;gap:.6rem}.isk-line.svelte-1hbo7he{height:.78rem;border-radius:4px;background:linear-gradient(90deg,var(--rule) 25%,var(--paper-3) 50%,var(--rule) 75%);background-size:200% 100%;animation:svelte-1hbo7he-shimmer 1.4s ease-in-out infinite}@keyframes svelte-1hbo7he-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.insights-panel.svelte-dcrdyp{position:relative;padding:.9rem 2.2rem .95rem .95rem;background:var(--paper-2);border-radius:var(--r-sm);margin-top:.5rem}.suggestions-panel.svelte-dcrdyp{background:var(--sugg-paper)}.insight-close.svelte-dcrdyp{position:absolute;top:.55rem;right:.55rem;width:1.5rem;height:1.5rem;background:none;border:none;border-radius:50%;font-size:.75rem;color:var(--mute-3);cursor:pointer;padding:0;line-height:1;display:flex;align-items:center;justify-content:center}@media(hover:hover){.insight-close.svelte-dcrdyp:hover{color:var(--ink-mute);background:var(--paper-4)}}.insights-err.svelte-dcrdyp{font-size:var(--t-meta);color:var(--danger)}.insights-text.svelte-dcrdyp{font-size:var(--t-meta);color:var(--ink);line-height:1.65;white-space:pre-line;overflow-wrap:break-word;word-break:break-word;margin:0}.insights-text-btn.svelte-dcrdyp{display:block;position:relative;width:100%;background:none;border:none;padding:0;margin:0;cursor:pointer;text-align:left;font-family:inherit;touch-action:manipulation}.insights-text-btn.svelte-dcrdyp .insights-text:where(.svelte-dcrdyp){display:-webkit-box;line-clamp:3;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.collapsed-fade.svelte-dcrdyp{position:absolute;bottom:0;left:0;right:0;height:1.5rem;background:linear-gradient(transparent,var(--paper-2));pointer-events:none}.suggestions-panel.svelte-dcrdyp .collapsed-fade:where(.svelte-dcrdyp){background:linear-gradient(transparent,var(--sugg-paper))}.insights-text.svelte-dcrdyp strong{font-weight:600;color:var(--ink)}.insight-footer.svelte-dcrdyp{display:flex;align-items:center;gap:.75rem;margin-top:.7rem}.insight-ts.svelte-dcrdyp{font-size:.72rem;color:var(--mute-3)}.insight-regen.svelte-dcrdyp,.insight-discuss.svelte-dcrdyp{background:none;border:none;font-family:inherit;font-size:.72rem;color:var(--mute-2);cursor:pointer;padding:0;touch-action:manipulation}.insight-discuss.svelte-dcrdyp,.insight-regen.svelte-dcrdyp{margin-left:auto}@media(hover:hover){.insight-regen.svelte-dcrdyp:hover,.insight-discuss.svelte-dcrdyp:hover{color:var(--ink-mute)}}.suggestions-label.svelte-dcrdyp{display:block;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--sugg-mute);margin-bottom:.4rem}.week-block.svelte-binnce{border-top:1px solid var(--rule);margin-bottom:1.25rem;content-visibility:auto;contain-intrinsic-size:auto 14rem}.week-block.svelte-binnce:last-of-type{border-bottom:1px solid var(--rule)}.week-head.svelte-binnce{display:flex;justify-content:space-between;align-items:center;padding:.65rem 0}.week-meta.svelte-binnce{display:flex;flex-direction:column;gap:.05rem}.week-range.svelte-binnce{font-size:var(--t-body-sm);font-weight:600;color:var(--ink)}.week-cal.svelte-binnce{font-size:.72rem;color:var(--mute-2)}.week-btns.svelte-binnce{display:flex;gap:.35rem}.insights-btn.svelte-binnce{background:none;border:1px solid var(--rule-3);border-radius:var(--r-pill);color:var(--mute);font-size:.72rem;padding:.2rem .65rem;cursor:pointer;touch-action:manipulation;font-family:inherit;letter-spacing:.02em;white-space:nowrap;transition:border-color .12s,color .12s,background .12s}.insights-btn.active.svelte-binnce{border-color:var(--ink-2);color:var(--ink-2);background:var(--paper-2)}@media(hover:hover){.insights-btn.svelte-binnce:hover{border-color:var(--ink-2);color:var(--ink-2)}}.suggestions-btn.svelte-binnce{border-color:var(--sugg-rule);color:var(--sugg-mute)}.suggestions-btn.active.svelte-binnce{border-color:var(--sugg-mute);color:var(--sugg-ink);background:var(--sugg-paper)}@media(hover:hover){.suggestions-btn.svelte-binnce:hover{border-color:var(--sugg-mute);color:var(--sugg-ink)}}.week-grid.svelte-binnce{display:grid;grid-template-columns:repeat(7,1fr);padding:.4rem 0 .5rem;gap:0}.day-cell.svelte-binnce{background:none;border:none;display:flex;flex-direction:column;align-items:center;gap:.1rem;padding:.4rem .1rem;cursor:pointer;border-radius:var(--r-sm);touch-action:manipulation;font-family:inherit}@media(hover:hover){.day-cell.svelte-binnce:not(.future):hover{background:var(--paper-4)}}.day-cell.future.svelte-binnce{opacity:.2;cursor:default}.dc-abbrev.svelte-binnce{font-size:.62rem;color:var(--mute-2);text-transform:uppercase;letter-spacing:.03em;font-weight:500;line-height:1}.dc-num.svelte-binnce{font-size:var(--t-meta);font-weight:500;color:var(--ink);line-height:1.2}.day-cell.has-food.svelte-binnce .dc-num:where(.svelte-binnce){color:var(--ink)}.dc-indicators.svelte-binnce{display:flex;gap:.1rem;align-items:center;min-height:.9rem}.dc-food.svelte-binnce{font-size:.4rem;color:var(--ink-2);line-height:1}.dc-empty.svelte-binnce{font-size:.4rem;color:var(--mute-4);line-height:1}.dc-poop.svelte-binnce{font-size:.5rem;line-height:1}.theme-toggle.svelte-lu0t34{display:inline-flex;align-items:center;justify-content:center;background:none;border:none;margin:0;color:inherit;font:inherit;cursor:pointer;padding:0;touch-action:manipulation}@media(hover:hover){.theme-toggle.svelte-lu0t34:hover{color:var(--ink-2)}}.backdrop.svelte-hueikj{position:fixed;inset:0;background:#0006;z-index:100;display:flex;align-items:center;justify-content:center;padding:1rem}.modal.svelte-hueikj{background:var(--paper);border:1px solid var(--rule);border-radius:var(--r-md);max-width:720px;width:100%;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #0003}header.svelte-hueikj{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem 1.25rem .75rem;border-bottom:1px solid var(--rule)}h2.svelte-hueikj{font-size:.95rem;font-weight:600;color:var(--ink);margin:0 0 .2rem}.sub.svelte-hueikj{font-size:var(--t-meta);color:var(--mute);margin:0;line-height:1.4}.close.svelte-hueikj{background:none;border:none;color:var(--mute);font-size:1.4rem;line-height:1;cursor:pointer;padding:.1rem .4rem}.close.svelte-hueikj:hover{color:var(--ink)}.body.svelte-hueikj{padding:1rem 1.25rem;overflow:auto}pre.svelte-hueikj{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem;color:var(--ink-2);line-height:1.55;white-space:pre-wrap;word-break:break-word;margin:0}.loading.svelte-hueikj,.err.svelte-hueikj{font-size:var(--t-body-sm);color:var(--mute);margin:0}.err.svelte-hueikj{color:var(--danger, #c33)}.wrap.svelte-v9ahim{max-width:640px;margin:0 auto;padding:0 1.25rem 6rem}.wrap.coach-view.svelte-v9ahim{position:fixed;top:var(--vvt, 0);left:0;right:0;bottom:auto;margin:0 auto;padding-top:0;padding-bottom:env(safe-area-inset-bottom,0);height:var(--vvh, 100dvh);max-height:var(--vvh, 100dvh);display:flex;flex-direction:column;overflow:hidden}.coach-pane.svelte-v9ahim{display:flex;flex-direction:column;flex:1;min-height:0;padding-bottom:env(safe-area-inset-bottom,0)}header.svelte-v9ahim{position:sticky;top:0;z-index:10;background:var(--paper);padding:1rem 0 .75rem;border-bottom:1px solid var(--rule);margin-bottom:1.25rem}.header-top.svelte-v9ahim{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.5rem}.nav-left.svelte-v9ahim{display:flex;align-items:center;gap:.5rem;position:relative}.hamburger.svelte-v9ahim{background:none;border:none;color:var(--ink);cursor:pointer;padding:.4rem;display:flex;align-items:center;touch-action:manipulation;border-radius:var(--r-sm)}@media(hover:hover){.hamburger.svelte-v9ahim:hover{background:var(--paper-4)}}.view-label.svelte-v9ahim{font-size:.95rem;font-weight:500;color:var(--ink)}.menu-backdrop.svelte-v9ahim{position:fixed;inset:0;z-index:9}.nav-menu.svelte-v9ahim{position:absolute;top:100%;left:0;margin-top:.35rem;background:var(--paper);border:1px solid var(--rule);border-radius:var(--r-md);box-shadow:0 4px 16px #0000001a;z-index:10;min-width:160px;padding:.35rem 0;display:flex;flex-direction:column}.nav-menu.svelte-v9ahim button:where(.svelte-v9ahim){background:none;border:none;text-align:left;padding:.55rem 1rem;font-size:var(--t-body-sm);font-family:inherit;color:var(--mute);cursor:pointer;font-weight:500}.nav-menu.svelte-v9ahim button.active:where(.svelte-v9ahim){color:var(--ink)}.nav-menu.svelte-v9ahim button:where(.svelte-v9ahim):hover{background:var(--paper-4);color:var(--ink)}.week-picker.svelte-v9ahim{display:flex;gap:.35rem;margin:.4rem 0 .1rem}.wp-btn.svelte-v9ahim{background:none;border:1px solid var(--rule-3);border-radius:var(--r-pill);color:var(--mute);font-size:.72rem;padding:.2rem .6rem;cursor:pointer;font-family:inherit;letter-spacing:.02em;transition:border-color .12s,color .12s,background .12s;touch-action:manipulation}.wp-btn.active.svelte-v9ahim{border-color:var(--ink-2);color:var(--ink-2);background:var(--paper-2)}@media(hover:hover){.wp-btn.svelte-v9ahim:not(.active):hover{border-color:var(--mute-2);color:var(--ink-mute)}}.date-nav.svelte-v9ahim{display:flex;align-items:center;justify-content:space-between;margin:.4rem 0 .1rem;position:relative}.nav-arrow.svelte-v9ahim{background:none;border:none;font-size:1.6rem;color:var(--ink-mute);cursor:pointer;padding:.1rem .4rem;line-height:1;touch-action:manipulation;font-family:inherit;min-height:2.5rem;display:flex;align-items:center}.nav-arrow.svelte-v9ahim:disabled{color:var(--mute-4);cursor:default}.nav-date.svelte-v9ahim{position:relative;background:none;border:none;font-family:inherit;font-size:1rem;font-weight:600;color:var(--ink);cursor:pointer;padding:.2rem .75rem;touch-action:manipulation;flex:1;text-align:center;border-radius:var(--r-sm);transition:background .12s}@media(hover:hover){.nav-date.svelte-v9ahim:hover{background:var(--paper-4)}}.date-input-hidden.svelte-v9ahim{position:absolute;inset:0;width:100%;height:100%;opacity:0;pointer-events:none}@media(pointer:coarse){.date-input-hidden.svelte-v9ahim{pointer-events:auto;cursor:pointer}}.totals.svelte-v9ahim{display:flex;flex-wrap:wrap;gap:.4rem .75rem;align-items:center;font-size:.78rem;color:var(--mute);padding-bottom:.1rem;padding-top:.3rem;font-variant-numeric:tabular-nums}.macros.svelte-v9ahim{display:contents}.totals-toggle.svelte-v9ahim{display:none}@media(max-width:600px){.totals.svelte-v9ahim{gap:.3rem .5rem;font-size:.72rem}.totals-toggle.svelte-v9ahim{display:inline-flex;align-items:center;gap:.3rem;background:none;border:1px solid var(--rule-3);border-radius:var(--r-pill);color:var(--mute);font-family:inherit;font-size:.72rem;letter-spacing:.02em;padding:.2rem .6rem;cursor:pointer;touch-action:manipulation;order:1}.totals-toggle.active.svelte-v9ahim{border-color:var(--ink-2);color:var(--ink-2);background:var(--paper-2)}.totals-arrow.svelte-v9ahim{color:var(--mute-3);font-size:.7rem}.insights-btn.svelte-v9ahim{order:2;margin-left:auto}.macros.svelte-v9ahim{display:none;flex-basis:100%;order:3}.macros.open.svelte-v9ahim{display:flex;flex-wrap:wrap;gap:.3rem .6rem}.macros.svelte-v9ahim .macro-cal:where(.svelte-v9ahim){display:inline}}section.svelte-v9ahim{margin:.6rem 0}.day-timeline.svelte-v9ahim{position:relative;padding-left:1.25rem;margin:.5rem 0}.day-timeline.svelte-v9ahim:before{content:"";position:absolute;left:calc(.525rem - .5px);top:.6rem;bottom:.6rem;width:1px;background:var(--rule)}.tl-row.svelte-v9ahim{position:relative;margin:0;scroll-margin-top:5rem}.tl-dot.svelte-v9ahim{position:absolute;left:-1.05rem;top:50%;transform:translateY(-50%);width:.65rem;height:.65rem;border-radius:50%;z-index:1;box-shadow:0 0 0 3px var(--paper)}.tl-event.svelte-v9ahim .event-head:where(.svelte-v9ahim){gap:.4rem;flex-wrap:wrap}.tl-event-time.svelte-v9ahim{min-width:3.2rem}.tl-event-detail.svelte-v9ahim{font-size:var(--t-body-sm);color:var(--ink);padding:.2rem 0}.tl-event-notes.svelte-v9ahim{color:var(--ink-soft, var(--ink));opacity:.8}.tl-row.svelte-v9ahim{padding:.4rem 0}.event-head.svelte-v9ahim{position:relative;display:flex;align-items:center;gap:.4rem}.event-toggle.svelte-v9ahim{background:none;border:none;font-family:inherit;cursor:pointer;display:inline-flex;align-items:center;gap:.45rem;padding:0;flex:1;min-width:0;text-align:left;touch-action:manipulation;color:inherit}.meal-time-input.svelte-v9ahim{font-size:.72rem;color:var(--mute-2);font-variant-numeric:tabular-nums;font-weight:500;font-family:inherit;background:none;border:1px solid var(--rule-3);border-radius:var(--r-pill);padding:.15rem .5rem;cursor:pointer;touch-action:manipulation;width:3.2rem;min-width:3.2rem;box-sizing:content-box;appearance:none;-webkit-appearance:none}.meal-time-input.svelte-v9ahim::-webkit-calendar-picker-indicator{display:none;-webkit-appearance:none}@media(hover:hover){.meal-time-input.svelte-v9ahim:hover{border-color:var(--ink-2);color:var(--ink-2)}}.event-name.svelte-v9ahim{text-transform:uppercase;font-size:.72rem;color:var(--ink);letter-spacing:.08em;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.event-caret.svelte-v9ahim{color:var(--mute-3);font-size:.7rem;flex-shrink:0}@media(hover:hover){.event-toggle.svelte-v9ahim:hover .event-name:where(.svelte-v9ahim){color:var(--ink-2)}}.event-body.svelte-v9ahim{padding:.25rem 0 .5rem}.meal-insight-bubble.svelte-v9ahim{background:none;border:1px solid var(--rule-3);border-radius:50%;width:1.65rem;height:1.65rem;font-size:.85rem;line-height:1;padding:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:border-color .12s,background .12s}.meal-insight-bubble.active.svelte-v9ahim{border-color:var(--ink-2);background:var(--paper-2)}@media(hover:hover){.meal-insight-bubble.svelte-v9ahim:hover{border-color:var(--ink-2)}}.meal-insight-panel.svelte-v9ahim{margin:.4rem 0 .2rem}.meal-action-btn.svelte-v9ahim{background:none;border:1px solid var(--rule-3);border-radius:var(--r-pill);color:var(--mute);font-size:.68rem;padding:.15rem .55rem;cursor:pointer;touch-action:manipulation;font-family:inherit;letter-spacing:.02em;white-space:nowrap;font-weight:500;transition:border-color .12s,color .12s}@media(hover:hover){.meal-action-btn.svelte-v9ahim:hover{border-color:var(--ink-2);color:var(--ink-2)}}.meal-macros-pill.svelte-v9ahim{background:none;border:1px solid var(--rule-3);border-radius:var(--r-pill);color:var(--mute);font-size:.68rem;padding:.15rem .55rem;cursor:pointer;touch-action:manipulation;font-family:inherit;letter-spacing:.02em;white-space:nowrap;font-weight:500;display:inline-flex;gap:.5rem;transition:border-color .12s,color .12s}.meal-macros-pill.active.svelte-v9ahim{border-color:var(--ink-2);color:var(--ink-2)}@media(hover:hover){.meal-macros-pill.svelte-v9ahim:hover{border-color:var(--ink-2);color:var(--ink-2)}}@keyframes svelte-v9ahim-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.add-row.svelte-v9ahim{background:none;border:none;font-family:inherit;text-align:left;color:var(--mute-4);font-size:var(--t-meta);padding:.6rem 0;cursor:pointer;touch-action:manipulation;width:100%}@media(hover:hover){.add-row.svelte-v9ahim:hover{color:var(--mute)}}.state.svelte-v9ahim{color:var(--mute-2);text-align:center;margin-top:4rem;font-size:var(--t-body-sm)}.state-block.svelte-v9ahim{display:flex;flex-direction:column;align-items:center;gap:.75rem;margin-top:4rem}.state.error.svelte-v9ahim{color:var(--mute);margin-top:0}.state-link.svelte-v9ahim{color:var(--ink-2);text-decoration:underline;text-underline-offset:2px;font-size:var(--t-body-sm);background:none;border:none;padding:0;font-family:inherit;cursor:pointer}.refresh-notice.svelte-v9ahim{display:flex;align-items:center;justify-content:center;gap:.65rem;color:var(--mute);font-size:var(--t-meta);margin:-.15rem 0 1rem;text-align:center}.refresh-notice.svelte-v9ahim a:where(.svelte-v9ahim){color:var(--ink-2);text-decoration:underline;text-underline-offset:2px;white-space:nowrap}.insights-btn.svelte-v9ahim{background:none;border:1px solid var(--rule-3);border-radius:var(--r-pill);color:var(--mute);font-size:.72rem;padding:.2rem .65rem;cursor:pointer;touch-action:manipulation;font-family:inherit;letter-spacing:.02em;white-space:nowrap;margin-left:auto;transition:border-color .12s,color .12s,background .12s}.insights-btn.active.svelte-v9ahim{border-color:var(--ink-2);color:var(--ink-2);background:var(--paper-2)}.insights-btn.fresh.svelte-v9ahim{border-color:var(--accent, var(--ink-2));color:var(--accent, var(--ink-2))}.insights-btn.generating.svelte-v9ahim{background-image:linear-gradient(100deg,transparent 20%,color-mix(in srgb,var(--ink-2) 12%,transparent) 45%,color-mix(in srgb,var(--ink-2) 18%,transparent) 50%,color-mix(in srgb,var(--ink-2) 12%,transparent) 55%,transparent 80%);background-size:220% 100%;background-repeat:no-repeat;animation:svelte-v9ahim-insights-shimmer 1.6s linear infinite}@keyframes svelte-v9ahim-insights-shimmer{0%{background-position:180% 0}to{background-position:-80% 0}}@media(prefers-reduced-motion:reduce){.insights-btn.generating.svelte-v9ahim{animation:none;background-image:none}}.insight-dot.svelte-v9ahim{display:inline-block;width:.38rem;height:.38rem;background:var(--accent, var(--ink-2));border-radius:50%;margin-left:.3rem;vertical-align:middle;animation:svelte-v9ahim-dot-pulse 1.8s ease-in-out 3}@keyframes svelte-v9ahim-dot-pulse{0%,to{opacity:1}50%{opacity:.35}}@media(hover:hover){.insights-btn.svelte-v9ahim:hover{border-color:var(--ink-2);color:var(--ink-2)}}.day-insights-panel.svelte-v9ahim{margin-bottom:1.25rem}.suggest-row.svelte-v9ahim{display:flex;justify-content:center;margin-top:1.25rem}.suggest-btn.svelte-v9ahim{background:none;border:1px solid var(--rule-3);border-radius:var(--r-pill);color:var(--mute);font-family:inherit;font-size:.78rem;letter-spacing:.02em;padding:.4rem .9rem;cursor:pointer;text-transform:capitalize;touch-action:manipulation;transition:border-color .12s,color .12s,background .12s}@media(hover:hover){.suggest-btn.svelte-v9ahim:hover{border-color:var(--ink-2);color:var(--ink-2);background:var(--paper-2)}}.fab.svelte-v9ahim{position:fixed;bottom:calc(2rem + env(safe-area-inset-bottom,0px));right:2rem;width:3.5rem;height:3.5rem;border-radius:50%;background:var(--ink-2);color:var(--paper);border:none;cursor:pointer;box-shadow:0 2px 8px #0000002e;display:flex;align-items:center;justify-content:center;touch-action:manipulation}@media(hover:hover){.fab.svelte-v9ahim:hover{background:var(--ink)}}.header-actions.svelte-v9ahim{display:flex;align-items:center;gap:.25rem}.header-actions.svelte-v9ahim .theme-toggle{font-size:1rem;color:var(--mute);padding:.5rem .4rem;min-height:2.75rem}.gear-wrap.svelte-v9ahim{position:relative;display:flex;align-items:center}.refresh-btn.svelte-v9ahim,.gear-btn.svelte-v9ahim{display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--mute);padding:.5rem .4rem;cursor:pointer;touch-action:manipulation;min-height:2.75rem;font-family:inherit}.refresh-btn.svelte-v9ahim:disabled{cursor:default}.refresh-btn.refreshing.svelte-v9ahim svg:where(.svelte-v9ahim){animation:svelte-v9ahim-refresh-spin .85s linear infinite}@keyframes svelte-v9ahim-refresh-spin{to{transform:rotate(360deg)}}@media(hover:hover){.refresh-btn.svelte-v9ahim:hover,.gear-btn.svelte-v9ahim:hover{color:var(--ink-2)}}.gear-menu.svelte-v9ahim{position:absolute;top:100%;right:0;margin-top:.35rem;background:var(--paper);border:1px solid var(--rule);border-radius:var(--r-md);box-shadow:0 4px 16px #0000001a;z-index:10;min-width:180px;padding:.35rem 0;display:flex;flex-direction:column}.gear-menu.svelte-v9ahim button:where(.svelte-v9ahim),.gear-menu.svelte-v9ahim a:where(.svelte-v9ahim){background:none;border:none;text-align:left;padding:.55rem 1rem;font-size:var(--t-body-sm);font-family:inherit;color:var(--mute);cursor:pointer;font-weight:500;text-decoration:none;display:block}.gear-menu.svelte-v9ahim button.active:where(.svelte-v9ahim){color:var(--ink)}.gear-menu.svelte-v9ahim button:where(.svelte-v9ahim):hover,.gear-menu.svelte-v9ahim a:where(.svelte-v9ahim):hover{background:var(--paper-4);color:var(--ink)}.gear-menu.svelte-v9ahim hr:where(.svelte-v9ahim){border:none;border-top:1px solid var(--rule);margin:.25rem 0}.landing.svelte-z2enuh{display:flex;flex-direction:column;min-height:100vh}.top-nav.svelte-z2enuh{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.5rem;border-bottom:1px solid var(--rule);position:sticky;top:0;background:var(--paper)}.nav-title.svelte-z2enuh{font-size:.95rem;font-weight:500;color:var(--ink);letter-spacing:-.01em;text-decoration:none}.nav-links.svelte-z2enuh{display:flex;gap:1.25rem;align-items:center}.nav-links.svelte-z2enuh a:where(.svelte-z2enuh):not(.btn){font-size:var(--t-meta);color:var(--mute);text-decoration:none}.nav-links.svelte-z2enuh a:where(.svelte-z2enuh):not(.btn):hover{color:var(--ink)}.site-foot.svelte-z2enuh{display:flex;justify-content:center;align-items:center;gap:.6rem;padding:1.5rem 1rem 2rem;font-size:var(--t-meta);color:var(--mute);border-top:1px solid var(--rule);margin-top:2rem}.site-foot.svelte-z2enuh a:where(.svelte-z2enuh){color:var(--mute);text-decoration:none}.site-foot.svelte-z2enuh a:where(.svelte-z2enuh):hover{color:var(--ink)}.site-foot.svelte-z2enuh span:where(.svelte-z2enuh){opacity:.5}.nav-links.svelte-z2enuh .theme-toggle{font-size:var(--t-meta);color:var(--mute)}.btn.svelte-z2enuh{padding:.6rem 1rem;background:var(--ink);border:1px solid var(--ink);color:var(--paper);border-radius:var(--r-sm);text-decoration:none;font-size:var(--t-body-sm);letter-spacing:.01em;white-space:nowrap}.btn.svelte-z2enuh:hover{background:var(--ink-2);border-color:var(--ink-2);color:var(--paper)}.md-content.svelte-z2enuh{flex:1;display:flex;justify-content:center;padding:3rem 1.5rem 4rem}.prose.svelte-z2enuh{max-width:600px;width:100%;font-size:var(--t-body-sm);color:var(--ink-2);line-height:1.7}.prose.svelte-z2enuh h1{font-size:1.4rem;font-weight:600;color:var(--ink);margin-bottom:1.5rem;letter-spacing:-.02em}.prose.svelte-z2enuh h2{font-size:1.05rem;font-weight:600;color:var(--ink);margin-top:2rem;margin-bottom:.75rem}.prose.svelte-z2enuh h3{font-size:.95rem;font-weight:600;color:var(--ink);margin-top:1.5rem;margin-bottom:.5rem}.prose.svelte-z2enuh p{margin-bottom:.75rem}.prose.svelte-z2enuh ol,.prose.svelte-z2enuh ul{margin:.5rem 0 1rem 1.25rem;display:flex;flex-direction:column;gap:.3rem}.prose.svelte-z2enuh a{color:var(--ink-2);text-decoration:underline;text-underline-offset:2px}.prose.svelte-z2enuh a:hover{color:var(--ink-mute)}.prose.svelte-z2enuh strong{font-weight:600;color:var(--ink)}.prose.svelte-z2enuh hr{border:none;border-top:1px solid var(--rule);margin:2rem 0}.prose.svelte-z2enuh em{color:var(--mute)}.toast-host.svelte-1roxu74{position:fixed;left:50%;bottom:1rem;transform:translate(-50%);width:min(92vw,480px);display:flex;flex-direction:column;gap:.6rem;z-index:100;pointer-events:none}.toast.svelte-1roxu74{display:flex;align-items:flex-start;gap:.75rem;padding:.85rem 1rem;border-radius:var(--r-md);background:#1c0000f5;color:var(--paper);box-shadow:0 10px 30px #0000002e;pointer-events:auto}.toast.error.svelte-1roxu74{background:#2d2d2df7}@media(prefers-color-scheme:dark){:root:not(.light) .toast.svelte-1roxu74{background:#f0f0eef5;color:#1c1c1c}:root:not(.light) .toast.error.svelte-1roxu74{background:#dcdcdaf7}}:root.dark .toast.svelte-1roxu74{background:#f0f0eef5;color:#1c1c1c}:root.dark .toast.error.svelte-1roxu74{background:#dcdcdaf7}.toast-message.svelte-1roxu74{flex:1;min-width:0;font-size:var(--t-body-sm);line-height:1.45}.toast-close.svelte-1roxu74{background:none;border:none;color:inherit;cursor:pointer;font-size:var(--t-body-sm);line-height:1;padding:.1rem;opacity:.75}.toast-close.svelte-1roxu74:hover{opacity:1}.center.svelte-1n46o8q{display:flex;align-items:center;justify-content:center;height:100vh;color:var(--mute);font-size:var(--t-body-sm)}.landing.svelte-1n46o8q{display:flex;flex-direction:column;min-height:100vh}.top-nav.svelte-1n46o8q{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.5rem;border-bottom:1px solid var(--rule);position:sticky;top:0;background:var(--paper)}.nav-title.svelte-1n46o8q{font-size:.95rem;font-weight:500;color:var(--ink);letter-spacing:-.01em;text-decoration:none}.nav-links.svelte-1n46o8q{display:flex;gap:1.25rem;align-items:center}.nav-links.svelte-1n46o8q a:where(.svelte-1n46o8q):not(.btn){font-size:var(--t-meta);color:var(--mute);text-decoration:none}.nav-links.svelte-1n46o8q a:where(.svelte-1n46o8q):not(.btn):hover{color:var(--ink)}.site-foot.svelte-1n46o8q{display:flex;justify-content:center;align-items:center;gap:.6rem;padding:1.5rem 1rem 2rem;font-size:var(--t-meta);color:var(--mute);border-top:1px solid var(--rule);margin-top:3rem}.site-foot.svelte-1n46o8q a:where(.svelte-1n46o8q){color:var(--mute);text-decoration:none}.site-foot.svelte-1n46o8q a:where(.svelte-1n46o8q):hover{color:var(--ink)}.site-foot.svelte-1n46o8q span:where(.svelte-1n46o8q){opacity:.5}.nav-links.svelte-1n46o8q .theme-toggle{font-size:var(--t-meta);color:var(--mute)}.content.svelte-1n46o8q{flex:1;display:flex;flex-direction:column;align-items:center;padding:4rem 1.5rem}.error-msg.svelte-1n46o8q{font-size:var(--t-body-sm);color:var(--mute);max-width:480px;line-height:1.6;text-align:center}.btn.svelte-1n46o8q{padding:.6rem 1rem;background:var(--ink);border:1px solid var(--ink);color:var(--paper);border-radius:var(--r-sm);text-decoration:none;font-size:var(--t-body-sm);letter-spacing:.01em;white-space:nowrap}.btn.svelte-1n46o8q:hover{background:var(--ink-2);border-color:var(--ink-2);color:var(--paper)}.hero.svelte-1n46o8q{max-width:520px;text-align:center;padding-top:2rem}.hero.svelte-1n46o8q h1:where(.svelte-1n46o8q){font-size:1.75rem;font-weight:600;color:var(--ink);letter-spacing:-.03em;line-height:1.3;margin-bottom:1rem}.hero.svelte-1n46o8q .subtitle:where(.svelte-1n46o8q){font-size:var(--t-body-sm);color:var(--mute);line-height:1.6;margin-bottom:2rem}.cta.svelte-1n46o8q{display:inline-block;padding:.6rem 1.5rem;background:var(--ink);color:var(--paper);border-radius:var(--r-sm);text-decoration:none;font-size:var(--t-body-sm);font-weight:500;letter-spacing:-.01em}.cta.svelte-1n46o8q:hover{background:var(--ink-2)}.details.svelte-1n46o8q{display:flex;gap:2.5rem;max-width:680px;margin-top:4rem;padding-top:3rem;border-top:1px solid var(--rule)}.detail.svelte-1n46o8q h3:where(.svelte-1n46o8q){font-size:var(--t-meta);font-weight:600;color:var(--ink);margin-bottom:.4rem}.detail.svelte-1n46o8q p:where(.svelte-1n46o8q){font-size:var(--t-meta);color:var(--mute);line-height:1.55}.link.svelte-1n46o8q{color:var(--ink-2);text-decoration:underline;text-underline-offset:2px}.link.svelte-1n46o8q:hover{color:var(--ink-mute)}@media(max-width:600px){.details.svelte-1n46o8q{flex-direction:column;gap:1.5rem}.hero.svelte-1n46o8q h1:where(.svelte-1n46o8q){font-size:1.4rem}}
