@layer legacy{:root{--poiem-paper:#fff8eb;--poiem-ink:#26241f;--poiem-persimmon:#ff8055;--poiem-citron:#f4df70;--poiem-leaf:#bcdbb4;--poiem-iris:#5458c9;--poiem-rose:#edbdd0;--poiem-night:#191b1a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#26241f;--coral-hue:#ff8055;--enamel:#f5ecdd;--apricot:#f4df70;--herb:#32bf88;--chalk:#e7dfd0;--dough:#ffe3b5;--cobalt:var(--coral-hue);--paper:#fff8eb;--paper-deep:#f1e9d9;--paper-warm:#f8f0e2;--paper-card:#fffdf7;--paper-raised:#fffdf7;--paper-float:#fffdf7;--ink-soft:#555248;--ink-mute:#666156;--ink-muted:var(--ink-mute);--rule:#202d381f;--rule-strong:#202d383d;--coral:var(--coral-hue);--coral-start:#ffab80;--coral-end:var(--coral-hue);--coral-deep:#a94710;--coral-text:#a63c16;--protein-text:#075d96;--carbs-text:#785200;--fat-text:#176446;--danger-text:#b52f40;--coral-soft:#ffe5d7;--gradient-calorie:linear-gradient(160deg, var(--coral-start), var(--coral-hue));--green-goal:var(--herb);--sans:"Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--display:"Fredoka", "Plus Jakarta Sans", system-ui, sans-serif;--mascot-display:"Fredoka", "Plus Jakarta Sans", system-ui, sans-serif;--serif:var(--display);--mono:"Plus Jakarta Sans", ui-monospace, monospace;--radius:16px;--radius-sm:12px;--nav-h:92px;--safe-bottom:env(safe-area-inset-bottom,0px);--shadow-ink:#d9cdba;--edge-ink:#b9ad97;--control-border:#817561;--shadow-card:0 3px 0 var(--shadow-ink), 0 8px 24px #202d380a;--shadow-sm:0 2px 0 var(--shadow-ink);--fun-yellow:#ffe073;--fun-green:#bcefd6;--fun-blue:#bfe8ff;--fun-pink:#ffd0ae;--fun-lilac:#d0e3ff;--fun-outline:1.5px solid var(--edge-ink);--selection:#5458c9;--selection-soft:#eae8ff;--selection-hover:#e5e1ff;--on-selection:#fff;--success-soft:#dcf5e9;--info-soft:#e0f2ff;--warning-soft:#fff1bc;--danger-soft:#ffe4e9;--scene:#075789;--scene-lift:#096ca8;--scene-ink:#fff;--scene-edge:#3688b8;--scrim:#0a1b2885;--product-dark:#104d72;--product-on-dark:#fff;--product-dark-muted:#d3ebfa;--product-dark-surface:#1d618a;--product-dark-accent:#ffe073;--shadow-pill:0 10px 22px #ff873d3d;--skeleton-base:var(--chalk);--skeleton-shine:#ffffffd9;--surface:var(--paper-card);--surface-2:var(--paper-warm);--border:var(--rule);--bg:var(--paper-deep);--on-track:var(--coral-hue);--on-track-deep:#a94710;--on-track-soft:#ffbd89;--streak:var(--coral-hue);--protein:#218cdc;--carbs:#e9b51e;--fat:#32bf88;--danger:#e5484d;--danger-deep:#c13438;--space-xs:4px;--space-sm:8px;--space-md:12px;--space-lg:16px;--space-xl:24px;--space-xxl:32px;--page-gutter:1.25rem;--section-gap:1.5rem;--control-height:3rem;--action-height:3.375rem;--control-radius:.75rem;--action-radius:1rem;--card-radius:1.375rem;--focus-ring:3px solid var(--selection);--page-heading-size:clamp(2rem, 6vw, 2.75rem);--disabled-fill:#e7dfd0;--radius-md:20px;--radius-lg:26px;--radius-xl:32px;--radius-pill:999px;--clay-radius-sm:14px;--clay-radius-md:20px;--clay-radius-lg:26px;--clay-radius-xl:32px;--clay-radius:var(--clay-radius-md);--text-hero:2.75rem;--text-display:2rem;--text-title:1.25rem;--text-subtitle:1.06rem;--text-body:1rem;--text-label:.875rem;--text-caption:.75rem;--motion-press:.1s;--motion-fill:.6s;--motion-sheet:.26s;--motion-celebrate:1.4s;--motion-enter:.42s;--motion-stagger:45ms;--squish-in:90ms;--squish-out:.26s;--squish-ease:cubic-bezier(.34, 1.45, .64, 1);--clay-base:#edf4f8;--clay-lift:#fff;--clay-inner-light:#fffffff2;--clay-inner-dark:#202d3817;--clay-cast:#202d3821;--clay-contact:#202d380f;--clay-inset-light:#ffffffd9;--clay-inset-dark:#202d3829;--clay-coral-base:#ff873d;--clay-coral-lift:#ffa65a;--clay-coral-inner-light:#ffffff6b;--clay-coral-inner-dark:#a9471057;--clay-coral-cast:#ff873d47;--clay-e1:inset 0 1px 0 #ffffffd9, 0 8px 14px var(--clay-cast);--clay-e2:inset 0 6px 10px var(--clay-inner-light), inset 0 -10px 16px var(--clay-inner-dark), 0 18px 30px var(--clay-cast), 0 2px 4px var(--clay-contact);--clay-e3:inset 0 8px 12px var(--clay-inner-light), inset 0 -13px 19px var(--clay-inner-dark), 0 26px 42px var(--clay-cast), 0 3px 6px var(--clay-contact);--clay-squish:inset 0 4px 8px var(--clay-inset-dark), 0 2px 4px var(--clay-contact);--clay-inset:inset 0 5px 10px var(--clay-inset-dark), inset 0 -3px 6px var(--clay-inset-light);--clay-coral-raised:inset 0 2px 0 #ffffff3d, 0 12px 20px var(--clay-coral-cast);--clay-coral-squish:inset 0 6px 10px var(--clay-coral-inner-dark), 0 3px 6px var(--clay-coral-cast);--press-depth:4px;--on-accent:#fff;--on-brand:var(--ink);--on-danger:#1a1416;--ink-press:#000;--edge-width:2px;--edge-depth:5px;--edge-coral:var(--selection);--edge-neutral:var(--chalk);--edge-danger:var(--danger-deep);--amber-ink:#785200;--amber-deep:var(--apricot);--protein-ink:#075d96;--protein-soft:#d8eefc;--success-ink:#176446;--star:var(--apricot);--welcome-ink:var(--ink);--toast-ok-bg:#1c3a22;--toast-ok-fg:#4ade80;--toast-info-bg:#1a2a3a;--toast-info-fg:#93c5fd;--toast-err-bg:#3a1a1a;--toast-err-fg:#fca5a5;--lilac:#67b8eb;--mint:var(--herb);--icon-teal:#176446;--danger-ink:#c22b3a;--surface-legacy:var(--enamel)}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#191b1a;--paper-deep:#202220;--paper-warm:#292c28;--paper-card:#242723;--paper-raised:#2e322c;--paper-float:#363c33;--ink:#f8f1e4;--ink-soft:#d1cabb;--ink-mute:#b9b3a6;--ink-press:#fff;--rule:#e6eaf01a;--rule-strong:#e6eaf033;--edge-ink:#505648;--control-border:#929583;--edge-hover:#90b9fa;--shadow-ink:#0e100d;--shadow-card:0 1px 0 #ffffff0a inset, 0 8px 24px #0000002e;--shadow-sm:0 2px 8px #00000029;--enamel:#292c28;--chalk:#383d34;--dough:#383329;--coral-hue:#ff996f;--coral-start:#ffb393;--coral-text:#ffb393;--coral-soft:#3d2c24;--coral-deep:#c46635;--on-brand:#181b20;--on-danger:#181b20;--on-accent:#181b20;--fun-yellow:#383329;--fun-green:#233830;--fun-blue:#263448;--fun-pink:#3b2e30;--fun-lilac:#33304a;--selection:#b6b3ff;--selection-soft:#302f46;--selection-hover:#3b3954;--on-selection:#25223c;--success-soft:#233830;--success-ink:#83d9ad;--icon-teal:#83d9ad;--info-soft:#263448;--warning-soft:#383329;--danger-soft:#3e2930;--scene:#1c2b46;--scene-lift:#2c456b;--scene-edge:#496488;--scrim:#05070ac2;--product-dark:#1c2b46;--product-dark-surface:#2c456b;--product-dark-muted:#d3ddea;--product-dark-accent:#ffb17f;--danger:#fa8c9a;--danger-text:#ffa5b0;--danger-ink:#ffa5b0;--danger-deep:#c9556b;--protein:#7faef7;--carbs:#e9c86e;--fat:#73cba0;--herb:#73cba0;--apricot:#f2cf76;--protein-text:#9ec3fc;--carbs-text:#f2d58a;--fat-text:#93ddb7;--protein-ink:#9ec3fc;--protein-soft:#263448;--amber-ink:#f2d58a;--disabled-fill:#383d34;--clay-base:#25292e;--clay-lift:#30363d;--clay-coral-base:var(--coral-hue);--clay-coral-lift:var(--coral-start);--gradient-calorie:linear-gradient(160deg, var(--coral-start), var(--coral-hue));--clay-inner-light:#ffffff0a;--clay-inner-dark:#0000001f;--clay-cast:#00000029;--clay-contact:#0000001f;--clay-inset-light:#ffffff08;--clay-inset-dark:#0000002e;--skeleton-shine:#ffffff0f}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{background:var(--paper);min-height:100%;color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;overscroll-behavior-y:contain;font-size:16px;line-height:1.5}.tabular{font-variant-numeric:tabular-nums}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:none}a{color:var(--coral-text);text-decoration:none}a:hover{text-decoration:underline}.app-shell{background:var(--paper);flex-direction:column;max-width:480px;min-height:100dvh;margin:0 auto;display:flex;overflow-x:clip}.app-main{padding:16px 16px calc(var(--nav-h) + var(--safe-bottom) + 16px);flex:1}.page-title{letter-spacing:-.02em;margin-bottom:4px;font-size:1.75rem;font-weight:700}.screen-title{letter-spacing:-.02em;margin-bottom:16px;font-size:1.5rem;font-weight:700}.page-sub{color:var(--ink-soft);margin-bottom:20px;font-size:.9rem}.card{background:var(--paper-warm);border:1px solid var(--rule);border-radius:var(--radius);padding:16px}.card+.card{margin-top:12px}.field{margin-bottom:16px}.field label{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px;font-size:.8rem;font-weight:600;display:block}.field input,.field select,.field textarea{background:var(--paper-deep);border:1px solid var(--rule);border-radius:var(--radius-sm);outline:none;width:100%;padding:12px 14px;transition:border-color .15s}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--coral)}.field textarea{resize:vertical;min-height:100px}.chip-row{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1px solid var(--rule);color:var(--ink-soft);border-radius:999px;padding:8px 14px;font-size:.85rem;font-weight:500;transition:all .15s}.chip.active{background:var(--coral-soft);border-color:var(--coral);color:var(--coral-text)}.bottom-nav-wrap{width:100%;max-width:480px;padding:0 14px calc(10px + var(--safe-bottom));z-index:100;pointer-events:none;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.bottom-nav{pointer-events:auto;border-radius:var(--clay-radius-xl);background:linear-gradient(160deg, var(--clay-lift), var(--clay-base));height:auto;min-height:68px;box-shadow:var(--clay-e2);border:none;justify-content:space-between;align-items:stretch;padding:7px 6px;display:flex}.nav-item{color:var(--ink-mute);flex:1;justify-content:center;align-items:center;min-width:0;text-decoration:none;display:flex}.nav-item:hover{text-decoration:none}.nav-item-inner{border-radius:26px;flex-direction:column;justify-content:center;align-items:center;gap:2px;width:100%;min-height:44px;padding:5px 2px;font-size:.6rem;font-weight:600;transition:background .2s,color .2s;display:flex;overflow:hidden}.nav-item-inner span:last-child{white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.nav-item svg{width:20px;height:20px;transition:transform .25s cubic-bezier(.34,1.56,.64,1)}.nav-item svg rect,.nav-item svg circle{transition:fill .2s,stroke-width .2s}.nav-item.active svg{transform:translateY(-1px)scale(1.06)}.fab{bottom:calc(var(--nav-h) + var(--safe-bottom) + 16px);background:var(--coral);width:56px;height:56px;color:var(--on-brand);box-shadow:var(--shadow-pill);z-index:99;border-radius:50%;justify-content:center;align-items:center;font-size:1.5rem;font-weight:300;display:flex;position:fixed;right:max(16px,50% - 224px)}.fab:hover{background:var(--clay-coral-base)}.bottom-nav .nav-item{color:var(--ink-mute);border-radius:var(--clay-radius-sm);transition:color var(--motion-press) ease, box-shadow var(--motion-press) ease, background var(--motion-press) ease;margin:0 2px}.bottom-nav .nav-item.active{color:var(--selection);background:var(--selection-soft);box-shadow:var(--clay-inset)}.bottom-nav .nav-item span{font-family:var(--display);font-weight:500}.bottom-nav .nav-fab{background:linear-gradient(160deg, var(--clay-coral-lift), var(--clay-coral-base));box-shadow:var(--clay-coral-raised);transition:transform var(--squish-out) var(--squish-ease), box-shadow var(--squish-out) ease;border:none}.bottom-nav .nav-fab:active{box-shadow:var(--clay-coral-squish);transition-duration:var(--squish-in);transform:translateY(3px)scale(.96)}.toggle,.radio-dot{cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;min-width:44px;min-height:44px;display:inline-flex;position:relative}.toggle{width:64px}.toggle-input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.toggle-track,.toggle-knob,.radio-dot-ring,.radio-dot-fill{pointer-events:none}.toggle-track{background:var(--chalk);width:56px;height:32px;box-shadow:inset 2px 3px 5px var(--clay-inset-dark), inset -1px -1px 2px var(--clay-inset-light);transition:background var(--dur-2,.18s) var(--ease-out,ease);border-radius:999px;align-items:center;padding:3px;display:flex}.toggle-knob{background:var(--ink);width:26px;height:26px;box-shadow:0 2px 4px var(--clay-cast), inset -1px -2px 3px var(--clay-inner-dark), inset 1px 2px 3px var(--clay-inner-light);transition:transform var(--dur-2,.18s) var(--ease-spring,cubic-bezier(.34, 1.56, .64, 1));border-radius:50%}.toggle.is-on .toggle-track{background:var(--selection)}.toggle.is-on .toggle-knob{background:var(--paper-card);transform:translate(24px)}.radio-dot-ring{background:var(--chalk);width:28px;height:28px;box-shadow:inset 2px 3px 5px var(--clay-inset-dark), inset -1px -1px 2px var(--clay-inset-light);border-radius:50%;place-items:center;display:grid}.radio-dot-fill{background:var(--selection);width:14px;height:14px;transition:transform var(--dur-2,.18s) var(--ease-spring,cubic-bezier(.34, 1.56, .64, 1));border-radius:50%;transform:scale(0)}.radio-dot.is-on .radio-dot-fill{transform:scale(1)}.toggle-input:focus-visible~.toggle-track,.toggle-input:focus-visible~.radio-dot-ring{outline:3px solid var(--ink);outline-offset:3px}@media (prefers-reduced-motion:reduce){.toggle-track,.toggle-knob,.radio-dot-fill{transition:none}}.swipe-row{border-radius:var(--clay-radius-md);position:relative;overflow:hidden}.swipe-row-actions{align-items:stretch;display:flex;position:absolute;inset:0 0 0 auto}.swipe-row-action{min-width:74px;min-height:44px;font-family:var(--sans);color:var(--on-accent);background:var(--ink-soft);cursor:pointer;border:none;padding:0 12px;font-size:.78rem;font-weight:700}.swipe-row-action.is-danger{background:var(--danger-text)}.swipe-row-action:last-child{border-radius:0 var(--clay-radius-md) var(--clay-radius-md) 0}.swipe-row-face{touch-action:pan-y;will-change:transform;position:relative}.swipe-row-face>*{background:var(--paper-card)}.portion-overlay{z-index:200;background:color-mix(in srgb, var(--ink) 34%, transparent);justify-content:center;align-items:flex-end;padding:16px;display:flex;position:fixed;inset:0}.portion-sheet{background:var(--paper-card);border-radius:var(--clay-radius-lg);width:100%;max-width:420px;box-shadow:var(--clay-e3,0 18px 40px #00000038);padding:20px 18px calc(18px + env(safe-area-inset-bottom))}.portion-title{font-family:var(--display);color:var(--ink);margin:0;font-size:1.05rem}.portion-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.portion-close{width:44px;height:44px;color:var(--ink-soft);background:var(--paper-deep);cursor:pointer;border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.portion-sub{color:var(--ink-mute);margin:2px 0 14px;font-size:.82rem}.portion-options{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.portion-option{border-radius:var(--clay-radius-md);background:var(--paper-deep);min-height:64px;box-shadow:var(--clay-inset);cursor:pointer;border:none;flex-direction:column;justify-content:center;align-items:center;gap:3px;display:flex}.portion-option.is-default{box-shadow:var(--clay-inset), inset 0 0 0 2px var(--coral-text)}.portion-mult{font-family:var(--display);color:var(--ink);font-weight:600}.portion-kcal{color:var(--ink-mute);font-size:.68rem}.ptr{position:relative}.ptr-indicator{pointer-events:none;justify-content:center;align-items:center;transition:opacity .2s;display:flex;position:absolute;top:0;left:0;right:0;overflow:hidden}.ptr-momo{transform-origin:bottom;width:46px;height:46px;transition:transform .16s}.ptr-indicator.phase-refreshing .ptr-momo{animation:.9s ease-in-out infinite ptr-bob}@keyframes ptr-bob{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-6px)scale(1)}}.ptr-content{will-change:transform}.food-card-outer{position:relative}.swipe-row-wrap{position:relative;overflow:hidden}.swipe-edit-btn{background:var(--ink-soft);width:80px;color:var(--on-accent);cursor:pointer;z-index:0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:.7rem;font-weight:700;display:flex;position:absolute;top:0;bottom:0;left:0}.swipe-delete-btn.danger,.swipe-delete-btn{background:var(--danger);width:80px;color:var(--on-danger);cursor:pointer;z-index:0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:.7rem;font-weight:700;display:flex;position:absolute;top:0;bottom:0;right:0}.food-card-row.swipeable{z-index:1;background:var(--paper-card);cursor:pointer;-webkit-user-select:none;user-select:none;position:relative}.food-card-row.swipeable:active{background:var(--paper-deep)}.food-card-row.row-expanded{border-bottom-right-radius:0;border-bottom-left-radius:0}.food-section-header:active{opacity:.7}.food-section-arrow{color:var(--ink-mute);margin-left:auto;font-size:1.1rem;line-height:1}.food-section-items{grid-template-rows:1fr;transition:grid-template-rows .28s cubic-bezier(.4,0,.2,1);display:grid}.food-section-items.collapsed{grid-template-rows:0fr}.food-section-items>div{overflow:hidden}@keyframes expand-down{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.food-quick-edit{background:var(--paper-deep);border-top:1px solid var(--rule);border-left:3px solid var(--coral-start);flex-direction:column;gap:14px;padding:16px 16px 14px;animation:.2s cubic-bezier(.22,1,.36,1) expand-down;display:flex}.fqe-chips{flex-wrap:wrap;gap:8px;display:flex}.fqe-chip{background:var(--chip-bg,var(--paper-deep));border:1px solid color-mix(in srgb, var(--chip-c,var(--ink-press)) 22%, transparent);border-radius:10px;flex-direction:column;align-items:center;gap:2px;min-width:58px;padding:7px 12px;display:flex}.fqe-chip-val{color:var(--chip-c,var(--ink));font-size:.95rem;font-weight:700;line-height:1}.fqe-chip-lbl{text-transform:uppercase;letter-spacing:.05em;color:var(--chip-c,var(--ink-mute));opacity:.75;font-size:.62rem;font-weight:600}.fqe-ingredients-wrap{flex-direction:column;gap:8px;display:flex}.fqe-ingredients-toggle{color:var(--ink-mute);cursor:pointer;background:0 0;border:none;align-self:flex-start;align-items:center;gap:5px;padding:2px 0;font-size:.76rem;font-weight:600;transition:color .15s;display:flex}.fqe-ingredients-toggle:hover{color:var(--ink-soft)}.fqe-ingredients{background:var(--paper-card);border:1px solid var(--rule);border-radius:var(--radius-sm);overflow:hidden}.fqe-ingredient-row{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:baseline;gap:10px;padding:8px 12px;font-size:.78rem;display:flex}.fqe-ingredient-row:last-child{border-bottom:none}.fqe-ingredient-name{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.fqe-ingredient-meta{color:var(--ink-mute);white-space:nowrap;flex-shrink:0}.fqe-cal-wrap{background:var(--paper-card);border:1.5px solid var(--rule);border-radius:var(--radius-sm);align-items:center;gap:12px;padding:12px 16px;transition:border-color .15s;display:flex}.fqe-cal-wrap:focus-within{border-color:var(--coral-start)}.fqe-cal-label{text-transform:uppercase;letter-spacing:.07em;color:var(--ink-mute);flex-shrink:0;font-size:.7rem;font-weight:700}.fqe-cal-input-row{flex:1;justify-content:flex-end;align-items:baseline;gap:6px;display:flex}.fqe-cal-input{text-align:right;letter-spacing:-.03em;width:90px;color:var(--ink);background:0 0;border:none;outline:none;min-width:0;font-family:inherit;font-size:1.6rem;font-weight:800}.fqe-cal-unit{color:var(--coral-text);opacity:.8;flex-shrink:0;font-size:.8rem;font-weight:600}.fqe-actions{flex-wrap:wrap;gap:8px;display:flex}.fqe-btn{cursor:pointer;white-space:nowrap;border:none;border-radius:10px;justify-content:center;align-items:center;gap:4px;padding:10px 14px;font-size:.85rem;font-weight:700;transition:opacity .15s,background .15s;display:flex}.fqe-btn-save{background:var(--gradient-calorie);color:var(--on-brand);flex:1}.fqe-btn-save:hover{opacity:.88}.fqe-btn-save:active{opacity:.78}.fqe-btn-delete{color:var(--danger-text);border:1.5px solid color-mix(in srgb, var(--danger-text) 35%, transparent);background:0 0;padding:10px 12px}.fqe-btn-delete:hover{background:var(--danger-soft)}.fqe-btn-edit{color:var(--ink-soft);border:1.5px solid var(--rule);background:0 0;padding:10px 12px;font-weight:500}.fqe-btn-edit:hover{color:var(--ink);border-color:var(--rule-strong)}.badge-count-pill{color:var(--ink-soft);background:var(--paper-deep);border:1px solid var(--rule);border-radius:999px;padding:3px 10px;font-size:.75rem;font-weight:700}.streak-banner{background:var(--warning-soft);border:1px solid color-mix(in srgb, var(--amber-ink) 25%, transparent);border-radius:var(--radius-sm);align-items:center;gap:10px;margin-bottom:14px;padding:10px 14px;display:flex}.streak-banner-fire{font-size:1.5rem;line-height:1}.streak-banner-num{color:var(--amber-ink);font-size:.9rem;font-weight:700}.streak-banner-sub{color:var(--ink-soft);font-size:.82rem}.badge-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.badge-card{border-radius:var(--radius-sm);border:1px solid var(--rule);text-align:center;flex-direction:column;align-items:center;gap:4px;padding:12px 8px;transition:transform .15s;display:flex}.badge-card.unlocked{background:var(--paper-card);border-color:color-mix(in srgb, var(--carbs-text) 30%, transparent)}.badge-card.locked{background:var(--paper-deep);opacity:.45;filter:grayscale()}.badge-card.unlocked:hover{transform:scale(1.04)}.badge-emoji{font-size:1.6rem;line-height:1}.badge-name{color:var(--ink);font-size:.72rem;font-weight:700;line-height:1.2}.badge-desc{color:var(--ink-mute);font-size:.62rem;line-height:1.3}.serving-row{background:var(--paper-deep);border:1px solid var(--rule);border-radius:var(--radius-sm);align-items:center;gap:10px;margin-bottom:12px;padding:10px 14px;display:flex}.serving-label{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-mute);flex-shrink:0;font-size:.75rem;font-weight:700}.serving-stepper{background:var(--paper-card);border:1px solid var(--rule);border-radius:8px;align-items:center;gap:0;display:flex;overflow:hidden}.serving-btn{width:34px;height:34px;color:var(--ink);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;font-size:1.1rem;font-weight:600;transition:background .12s;display:flex}.serving-btn:hover:not(:disabled){background:var(--rule)}.serving-btn:disabled{opacity:.3;cursor:not-allowed}.serving-input{text-align:center;border:none;border-left:1px solid var(--rule);border-right:1px solid var(--rule);width:46px;color:var(--ink);background:0 0;outline:none;padding:6px 4px;font-family:inherit;font-size:.92rem;font-weight:700}.serving-hint{color:var(--ink-soft);white-space:nowrap;margin-left:auto;font-size:.78rem}.serving-stepper-compact{background:var(--paper-deep);border:1px solid var(--rule);border-radius:6px;align-items:center;gap:2px;display:flex;overflow:hidden}.ssc-btn{width:26px;height:26px;color:var(--ink-soft);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;font-size:.95rem;font-weight:700;transition:background .12s;display:flex}.ssc-btn:hover:not(:disabled){background:var(--rule);color:var(--ink)}.ssc-btn:disabled{opacity:.3;cursor:not-allowed}.ssc-val{color:var(--ink);text-align:center;min-width:26px;padding:0 2px;font-size:.75rem;font-weight:700}.mascot{flex:none;display:inline-block}.mascot-svg{display:block;overflow:visible}.mascot-body{fill:var(--coral)}.mascot-face{fill:var(--paper-warm)}.mascot-sprout,.mascot-limb{fill:var(--coral-deep)}.mascot-star{fill:var(--carbs-color,var(--carbs))}.mascot-ink{fill:var(--ink)}.mascot-blush{fill:var(--coral-deep);opacity:.28}.mascot-limb-stroke path{stroke:var(--coral-deep);stroke-width:9px;stroke-linecap:round;fill:none}.mascot-line path{stroke:var(--ink);stroke-width:3.6px;stroke-linecap:round;stroke-linejoin:round;fill:none}.mascot-zzz path,.mascot-sparkle path{stroke:var(--ink-mute);stroke-width:3px}.mascot-bob{transform-origin:50% 80%;animation:2.6s ease-in-out infinite mascot-bob}.mascot-happy .mascot-bob{animation-duration:1.1s}.mascot-celebrating .mascot-bob{animation:.7s ease-in-out infinite mascot-cheer}.mascot-sleepy .mascot-bob{animation-duration:4s}@keyframes mascot-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes mascot-cheer{0%,to{transform:translateY(0)rotate(-2deg)}50%{transform:translateY(-6px)rotate(2deg)}}@media (prefers-reduced-motion:reduce){.mascot-bob{animation:none!important}}.mascot.is-pokeable{cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;background:0 0;border:none;padding:0}.mascot.is-pokeable:focus-visible{outline:3px solid var(--on-track);outline-offset:4px;border-radius:50%}.mascot.is-poked .mascot-svg{transform-origin:50% 84%;animation:.52s cubic-bezier(.34,1.56,.64,1) mascot-poke}@keyframes mascot-poke{0%{transform:scale(1)translateY(0)}22%{transform:scale(1.14,.84)translateY(4px)}55%{transform:scale(.94,1.1)translateY(-6px)}78%{transform:scale(1.03,.97)translateY(1px)}to{transform:scale(1)translateY(0)}}.mascot{--gaze-x:0;--gaze-y:0;--lean:0deg}.mascot-gaze{transform:translate(calc(var(--gaze-x) * 1px), calc(var(--gaze-y) * 1px));transition:transform .22s cubic-bezier(.22,1,.36,1)}.mascot-lean{transform:rotate(var(--lean));transform-origin:50% 82%;transition:transform .42s cubic-bezier(.22,1,.36,1)}.mascot.is-noticing .mascot-svg{transform:translateY(-2px)scale(1.03)}.mascot-svg{transition:transform .3s cubic-bezier(.22,1,.36,1)}.mascot.is-blinking .mascot-gaze{transform:translate(calc(var(--gaze-x) * 1px), calc(var(--gaze-y) * 1px)) scaleY(.12);transform-origin:50% 48%;transition:transform 80ms ease-in}@media (prefers-reduced-motion:reduce){.mascot.is-poked .mascot-svg{animation:none!important}.mascot-gaze,.mascot-lean,.mascot-svg{transition:none!important;transform:none!important}}.mascot-roamer{z-index:60;pointer-events:none;flex-direction:column;align-items:center;gap:6px;max-width:210px;display:flex;position:fixed}.mascot-roamer>*{pointer-events:auto}.mascot-roamer-bubble{background:var(--paper-card);border-radius:var(--clay-radius-sm,18px);box-shadow:var(--clay-e2,0 12px 24px #1a140e24);padding:4px 4px 4px 0;position:relative}.mascot-roamer-bubble .mascot-say{box-shadow:none;text-align:left;max-width:200px;color:var(--ink);background:0 0;padding:10px 30px 10px 14px}.mascot-roamer-close{background:var(--paper-deep);width:22px;height:22px;color:var(--ink-mute);cursor:pointer;border:none;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:5px;right:5px}.mascot-roamer-close:focus-visible{outline:2px solid var(--on-track);outline-offset:2px}.mascot-roamer.is-arriving{animation:.42s cubic-bezier(.34,1.56,.64,1) roamer-arrive}@keyframes roamer-arrive{0%{opacity:0;transform:translateY(10px)scale(.86)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.mascot-roamer.is-arriving{animation:none}}.celebrate-overlay{z-index:1100;padding:var(--space-xl);background:var(--paper);opacity:0;transition:opacity var(--motion-sheet) ease-out;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow-y:auto}.celebrate-overlay.is-shown{opacity:1}.celebrate-inner{align-items:center;gap:var(--space-md);text-align:center;width:100%;max-width:420px;transition:transform var(--motion-sheet) cubic-bezier(.22, 1, .36, 1);flex-direction:column;display:flex;transform:translateY(12px)}.celebrate-overlay.is-shown .celebrate-inner{transform:translateY(0)}.celebrate-title{font-family:var(--serif);font-size:var(--text-display);color:var(--ink);margin-top:var(--space-sm)}.celebrate-sub{font-size:var(--text-body);color:var(--ink-soft)}.celebrate-stats{gap:var(--space-md);width:100%;margin-top:var(--space-sm);display:flex}.celebrate-stat{padding:var(--space-lg) var(--space-md);background:var(--paper-card);border:2px solid var(--rule);border-radius:var(--radius-lg);flex-direction:column;flex:1;gap:2px;display:flex}.celebrate-stat-value{font-family:var(--serif);font-size:var(--text-title);color:var(--coral-text)}.celebrate-stat-label{font-size:var(--text-caption);color:var(--ink-mute);text-transform:uppercase;letter-spacing:.06em}.celebrate-awards{flex-direction:column;gap:6px;width:100%;list-style:none;display:flex}.celebrate-awards li{background:var(--paper-card);border:1px solid var(--rule);border-radius:var(--radius-sm);font-size:var(--text-label);color:var(--ink-soft);justify-content:space-between;align-items:center;padding:10px 14px;animation:.34s cubic-bezier(.2,.8,.2,1) both reward-reveal;display:flex}.celebrate-awards strong{color:var(--coral-text)}@keyframes reward-reveal{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.celebrate-overlay,.celebrate-inner,.celebrate-awards li{transition:none;animation:none}}.streak-week{margin:0 var(--space-lg) var(--space-md);padding:var(--space-md);background:var(--paper-card);border:2px solid var(--rule);border-radius:var(--radius-lg);justify-content:space-between;gap:6px;display:flex}.streak-day{flex-direction:column;flex:1;align-items:center;gap:6px;display:flex}.streak-day-label{font-size:var(--text-caption);color:var(--ink-mute);text-transform:uppercase}.streak-day-dot{background:var(--paper-deep);border:2px solid #0000;border-radius:50%;place-items:center;width:26px;height:26px;font-size:.72rem;display:grid}.streak-day.is-logged .streak-day-dot{background:var(--coral);color:var(--on-brand)}.streak-day.is-frozen .streak-day-dot{background:var(--protein-soft)}.streak-day.is-today .streak-day-dot{border-color:var(--coral)}.streak-day.is-today .streak-day-label{color:var(--coral-text);font-weight:700}.calorie-ring{margin:0 auto;position:relative}.calorie-ring-svg{display:block}.calorie-ring-arc{transition:stroke-dashoffset var(--motion-fill) cubic-bezier(.22, 1, .36, 1)}.calorie-ring-centre{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:2px;display:flex;position:absolute;inset:0}.calorie-ring-value{font-family:var(--serif);font-size:var(--text-hero);color:var(--ink);line-height:1}.calorie-ring-value.is-over{color:var(--ink-soft)}.calorie-ring-unit{font-size:var(--text-label);color:var(--ink-mute)}.calorie-ring-caption{font-size:var(--text-caption);color:var(--ink-mute);margin-top:2px}@media (prefers-reduced-motion:reduce){.calorie-ring-arc{transition:none}}@keyframes streak-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.18)}}.home-log-dock{width:100%;max-width:480px;left:50%;bottom:calc(var(--nav-h) + var(--safe-bottom) - 8px);padding:0 var(--space-lg);z-index:20;pointer-events:none;position:fixed;transform:translate(-50%)}.home-log-dock>*{pointer-events:auto}.toast-stack{bottom:calc(var(--nav-h) + var(--safe-bottom) + 12px);z-index:1000;pointer-events:none;flex-direction:column;gap:8px;width:calc(100% - 32px);max-width:420px;display:flex;position:fixed;left:50%;transform:translate(-50%)}@keyframes toast-in{0%{opacity:0;transform:translateY(12px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.toast{border-radius:var(--radius-sm);pointer-events:all;cursor:default;align-items:center;gap:10px;padding:12px 14px;font-size:.88rem;font-weight:500;animation:.22s cubic-bezier(.34,1.2,.64,1) toast-in;display:flex;box-shadow:0 8px 24px #0006}.toast-success{background:var(--toast-ok-bg);color:var(--toast-ok-fg);border:1px solid #34c75959}.toast-info{background:var(--toast-info-bg);color:var(--toast-info-fg);border:1px solid #6b9fff59}.toast-error{background:var(--toast-err-bg);color:var(--toast-err-fg);border:1px solid #ff7a5059}.toast-msg{flex:1;min-width:0;line-height:1.4}.toast-action-btn{background:color-mix(in srgb, currentColor 12%, transparent);border:1px solid color-mix(in srgb, currentColor 35%, transparent);color:inherit;cursor:pointer;white-space:nowrap;border-radius:6px;padding:4px 10px;font-size:.8rem;font-weight:700;transition:background .15s}.toast-action-btn:hover{background:color-mix(in srgb, currentColor 22%, transparent)}.toast-x{color:inherit;cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:2px 4px;transition:color .15s;display:inline-flex}.toast-x:hover{background:color-mix(in srgb, currentColor 12%, transparent)}.streak-card{background:var(--warning-soft);border:1px solid color-mix(in srgb, var(--amber-ink) 25%, transparent);max-width:100%;min-height:34px;color:inherit;border-radius:20px;flex-wrap:wrap;align-items:center;gap:0 6px;margin-top:4px;padding:5px 10px 5px 6px;text-decoration:none;transition:transform .15s,background .15s;display:flex}.streak-card:active{background:var(--warning-soft);transform:scale(.97)}.streak-card.at-risk{background:var(--warning-soft);border-color:var(--amber-ink);animation:2s ease-in-out infinite at-risk-pulse}.streak-card-zero{background:var(--paper-deep);border-color:var(--rule);gap:6px}.streak-fire{font-size:1.1rem;line-height:1;animation:1.8s ease-in-out infinite flame-flicker;display:inline-block}.streak-fire-dim{opacity:.45;animation:none}.flame-tier-1{font-size:1rem;animation-duration:2.2s}.flame-tier-2{font-size:1.1rem;animation-duration:1.8s}.flame-tier-3{filter:brightness(1.1);font-size:1.2rem;animation-duration:1.4s}.flame-tier-4{filter:brightness(1.3)saturate(1.2);font-size:1.3rem;animation-duration:1s}.streak-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.streak-row{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.streak-count{color:var(--amber-ink);letter-spacing:-.02em;font-size:.88rem;font-weight:800}.streak-label{color:var(--ink-soft);font-size:.75rem;font-weight:600}.streak-zero-text{color:var(--ink-mute);font-size:.75rem;font-weight:600}.streak-risk-badge{background:var(--warning-soft);color:var(--amber-ink);letter-spacing:.02em;border-radius:8px;padding:1px 6px;font-size:.62rem;font-weight:700}.streak-progress-track{background:color-mix(in srgb, var(--carbs) 20%, var(--paper-card));border-radius:2px;width:80px;height:3px;overflow:hidden}.streak-progress-fill{background:linear-gradient(90deg, var(--carbs), var(--amber-deep));border-radius:2px;height:100%;transition:width .5s cubic-bezier(.34,1.2,.64,1)}.streak-milestone-hint{color:var(--ink-mute);white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:.6rem;font-weight:500;overflow:hidden}.food-empty-state{text-align:center;flex-direction:column;align-items:center;gap:14px;padding:40px 20px 32px;display:flex}.food-empty-plate{font-size:2.8rem;line-height:1;animation:2s ease-in-out infinite plate-bounce}.food-empty-tip{color:var(--ink-soft);max-width:220px;min-height:2.8em;font-size:.88rem;font-weight:500;line-height:1.4;animation:3s ease-in-out both tip-fade}.food-empty-cta{letter-spacing:.01em;padding:11px 28px;font-size:.9rem}@keyframes levelup-card-in{0%{opacity:0;transform:scale(.75)translateY(24px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes levelup-companion-bounce{0%,to{transform:scale(1)translateY(0)}40%{transform:scale(1.3)translateY(-12px)}70%{transform:scale(.95)translateY(2px)}}@keyframes levelup-badge-pop{0%{opacity:0;transform:scale(.5)}70%{opacity:1;transform:scale(1.15)}to{opacity:1;transform:scale(1)}}.levelup-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:5000;background:#000000b8;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.levelup-card{background:var(--surface);text-align:center;border-radius:28px;width:100%;max-width:300px;padding:44px 32px 36px;animation:.5s cubic-bezier(.34,1.56,.64,1) both levelup-card-in;box-shadow:0 32px 80px #00000073}.levelup-companion{margin-bottom:16px;font-size:4.5rem;line-height:1;animation:1s ease-in-out .3s both levelup-companion-bounce;display:block}.levelup-badge{letter-spacing:.14em;color:var(--amber-ink);text-transform:uppercase;margin-bottom:6px;font-size:.7rem;font-weight:800;animation:.4s .6s both levelup-badge-pop}.levelup-level{background:linear-gradient(135deg, var(--carbs) 0%, var(--fat) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:4px;font-size:4.5rem;font-weight:900;line-height:1;animation:.4s .7s both levelup-badge-pop}.levelup-name{color:var(--ink);margin-bottom:28px;font-size:1.05rem;font-weight:600;animation:.4s .8s both levelup-badge-pop}.streak-level-badge{flex-direction:column;flex-shrink:0;align-items:center;gap:2px;margin-left:auto;display:flex}.streak-companion{font-size:1.3rem;line-height:1}.streak-level-num{color:var(--ink-soft);letter-spacing:.04em;font-size:.62rem;font-weight:800}.streak-freeze-badge{background:var(--info-soft);color:var(--protein-ink);border-radius:12px;margin-left:6px;padding:1px 6px;font-size:.68rem;font-weight:700}@keyframes burned-chip-in{0%{opacity:0;transform:translateY(4px)scale(.9)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes sheet-slide-up{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.activity-sheet-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:4000;background:#0000008c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.activity-sheet{background:var(--surface);border-radius:24px 24px 0 0;width:100%;max-width:480px;padding:12px 20px 36px;animation:.32s cubic-bezier(.34,1.2,.64,1) both sheet-slide-up}.activity-sheet-handle{background:var(--border);border-radius:100px;width:40px;height:4px;margin:0 auto 18px}.activity-sheet-title{color:var(--ink);text-align:center;margin-bottom:18px;font-size:1.05rem;font-weight:800}.activity-preset-grid{grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:20px;display:grid}@media (width<=360px){.activity-preset-grid{grid-template-columns:repeat(3,1fr)}.activity-preset-name{font-size:.58rem}}.activity-preset-chip{border:2px solid var(--border);background:var(--bg);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:14px;flex-direction:column;align-items:center;gap:4px;padding:10px 6px 9px;transition:background .12s,border-color .12s,transform .1s;display:flex}.activity-preset-chip:active{transform:scale(.92)}.activity-preset-chip.active{border-color:var(--selection);background:var(--selection-soft)}.activity-preset-emoji{font-size:1.5rem;line-height:1}.activity-preset-name{color:var(--ink-soft);font-size:.62rem;font-weight:700}.activity-preset-chip.active .activity-preset-name{color:var(--selection)}.activity-duration-row{margin-bottom:18px}.activity-duration-label{color:var(--ink-soft);margin-bottom:8px;font-size:.75rem;font-weight:700;display:block}.activity-duration-chips{flex-wrap:wrap;gap:6px;display:flex}.activity-dur-chip{border:1.5px solid var(--border);background:var(--bg);color:var(--ink-soft);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:20px;padding:6px 12px;font-size:.75rem;font-weight:700;transition:background .12s,border-color .12s}.activity-dur-chip.active{border-color:var(--selection);background:var(--selection-soft);color:var(--selection)}.activity-kcal-row{background:var(--bg);border:1.5px solid var(--border);border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;padding:14px 16px;display:flex}.activity-kcal-display{align-items:baseline;gap:5px;min-width:0;display:flex}.activity-kcal-num{color:var(--success-ink);font-variant-numeric:tabular-nums;font-size:2rem;font-weight:900;line-height:1;transition:color .2s}.activity-kcal-unit{color:var(--ink-soft);font-size:.75rem;font-weight:600}.activity-kcal-override-wrap{flex-direction:column;align-items:flex-end;gap:3px;display:flex}.activity-kcal-override{border:1.5px solid var(--border);background:var(--surface);width:72px;color:var(--ink);text-align:right;border-radius:10px;outline:none;padding:6px 10px;font-size:.85rem;font-weight:700}.activity-kcal-override:focus{border-color:var(--protein)}.activity-kcal-override-label{color:var(--ink-muted,var(--ink-mute));font-size:.6rem}.activity-log-btn{background:linear-gradient(135deg, var(--protein) 0%, var(--mint) 100%);width:100%;color:var(--on-brand);cursor:pointer;letter-spacing:.01em;white-space:nowrap;text-overflow:ellipsis;border:none;border-radius:50px;padding:15px;font-size:1rem;font-weight:800;transition:opacity .15s,transform .12s;overflow:hidden}.activity-log-btn:active{transform:scale(.97)}.activity-log-btn.saved,.activity-log-btn:disabled{opacity:.7;cursor:default}@media (prefers-reduced-motion:reduce){.activity-sheet{animation:none!important}}@keyframes splash-fade-in{0%{opacity:0}to{opacity:1}}@keyframes splash-logo-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}@keyframes splash-ring-draw{to{stroke-dashoffset:0}}@keyframes splash-text-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.splash-screen{z-index:6000;background:var(--paper);flex-direction:column;justify-content:center;align-items:center;gap:4px;transition:opacity .32s,transform .32s;animation:.3s both splash-fade-in;display:flex;position:fixed;inset:0}.splash-screen.splash-exit{opacity:0;transform:scale(.96)}.splash-ring-wrap{justify-content:center;align-items:center;width:128px;height:128px;margin-bottom:22px;display:flex;position:relative}.splash-ring-svg{position:absolute;inset:0;transform:rotate(-90deg)}.splash-ring-progress{stroke-dasharray:var(--circ);stroke-dashoffset:var(--circ);animation:1.1s cubic-bezier(.4,0,.2,1) .15s forwards splash-ring-draw}.splash-wordmark{letter-spacing:-.01em;color:var(--ink);font-size:1.4rem;font-weight:800;animation:.5s .35s both splash-text-up}.splash-tagline{color:var(--ink-mute);font-size:.8rem;font-weight:500;animation:.5s .48s both splash-text-up}@media (prefers-reduced-motion:reduce){.splash-screen{transition:opacity .2s!important;animation:none!important}.splash-ring-progress{stroke-dashoffset:0;animation:none!important}.splash-wordmark,.splash-tagline{opacity:1;transform:none;animation:none!important}}@keyframes shimmer{0%{background-position:-140% 0}to{background-position:140% 0}}.skeleton{background:linear-gradient(100deg, var(--skeleton-base) 30%, var(--skeleton-shine) 50%, var(--skeleton-base) 70%);background-size:200% 100%;animation:1.6s ease-in-out infinite shimmer}@media (prefers-reduced-motion:reduce){.skeleton{background:var(--skeleton-base);animation:none!important}}.home-skeleton{flex-direction:column;gap:20px;padding-top:4px;display:flex}.home-skeleton-macros{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.home-skeleton-macro-card{background:var(--paper-warm);border:1px solid var(--rule);border-radius:var(--radius-sm);flex-direction:column;align-items:center;padding:14px 8px;display:flex}@keyframes glow-drift{0%,to{opacity:.9;transform:translate(-50%)scale(1)}50%{opacity:1;transform:translate(-50%,10px)scale(1.08)}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (forced-colors:active){.error-banner,.photo-upload-zone:focus-visible,:focus-visible{outline-offset:2px;outline:2px solid highlight}.error-banner{border:2px solid canvastext}}.date-modal-overlay{background:color-mix(in srgb, var(--ink) 45%, transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;justify-content:center;align-items:center;padding:24px;animation:.15s fade-in;display:flex;position:fixed;inset:0}.date-modal{background:var(--paper-card);width:100%;max-width:320px;box-shadow:var(--shadow-card);border-radius:24px;padding:18px;animation:.22s cubic-bezier(.34,1.2,.64,1) modal-pop-in}@keyframes modal-pop-in{0%{opacity:0;transform:scale(.94)translateY(6px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.date-modal-header{align-items:center;gap:4px;margin-bottom:14px;display:flex}.date-modal-nav{width:30px;height:30px;color:var(--ink);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s;display:flex}.date-modal-nav:hover:not(:disabled){background:var(--paper-deep)}.date-modal-nav:disabled{color:var(--ink-mute);opacity:.4;cursor:default}.date-modal-title{text-align:center;letter-spacing:-.01em;flex:1;min-width:0;font-size:.95rem;font-weight:700}.date-modal-close{width:26px;height:26px;color:var(--ink-mute);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-left:4px;transition:background .15s;display:flex}.date-modal-close:hover{background:var(--paper-deep)}.date-modal-weekdays,.date-modal-grid{grid-template-columns:repeat(7,1fr);display:grid}.date-modal-weekdays{margin-bottom:4px}.date-modal-weekdays span{text-align:center;color:var(--ink-mute);padding:4px 0;font-size:.68rem;font-weight:600}.date-modal-cell{aspect-ratio:1;color:var(--ink);border-radius:50%;justify-content:center;align-items:center;font-size:.85rem;font-weight:500;transition:background .15s,transform .12s;display:flex}.date-modal-cell.empty{cursor:default}.date-modal-cell:not(.empty):not(:disabled):hover{background:var(--paper-deep)}.date-modal-cell:not(.empty):not(:disabled):active{transform:scale(.9)}.date-modal-cell.today{color:var(--coral-text);box-shadow:inset 0 0 0 1.5px var(--coral);font-weight:700}.date-modal-cell.selected{background:var(--coral);color:var(--on-brand);font-weight:700}.date-modal-cell:disabled{color:var(--ink-mute);opacity:.35;cursor:default}.date-modal-today-btn{text-align:center;width:100%;color:var(--coral-text);background:var(--coral-soft);border-radius:14px;margin-top:12px;padding:10px;font-size:.85rem;font-weight:700;transition:background .15s}.date-modal-today-btn:hover{background:color-mix(in srgb, var(--coral-hue) 20%, transparent)}.week-strip-row{align-items:center;gap:2px;display:flex}.week-nav-btn{width:28px;height:28px;color:var(--ink-soft);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.2rem;line-height:1;transition:background .15s,color .15s,opacity .15s;display:flex}.week-nav-btn:hover:not(:disabled){background:var(--paper-deep);color:var(--ink)}.week-nav-btn:disabled{opacity:.25;cursor:not-allowed}.week-strip{flex:1;grid-template-columns:repeat(7,1fr);gap:0;min-width:0;padding:2px 0 6px;display:grid}.week-day{flex-direction:column;align-items:center;gap:5px;min-width:0;padding:4px 0;display:flex}.week-day:disabled{opacity:.35;cursor:not-allowed}.week-day-label{color:var(--ink-mute);font-size:.65rem;font-weight:500}.week-day-label.selected{color:var(--coral-text)}.week-day-circle{width:33px;height:33px;color:var(--ink);border-radius:50%;justify-content:center;align-items:center;font-size:.95rem;font-weight:600;transition:background .2s,box-shadow .2s,color .2s,transform .2s;display:flex}.week-day-circle.selected{background:var(--gradient-calorie);color:var(--on-brand);transform:scale(1.06);box-shadow:0 4px 14px #ff7a5073,0 0 0 3px #ff7a501f}.week-day-circle.today:not(.selected){color:var(--coral-text);border:1.5px solid #ff7a5059}.home-macro-block{padding-bottom:14px}.cloud-sync-banner{z-index:500;top:max(12px, env(safe-area-inset-top));border-radius:var(--radius-sm);background:var(--paper-card);width:min(100% - 24px,456px);box-shadow:var(--shadow-card);color:var(--ink);border:1px solid #b8552a4d;padding:12px 14px;font-size:.82rem;position:fixed;left:50%;transform:translate(-50%)}.cloud-sync-banner>div{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.cloud-sync-banner button{color:var(--coral-text);font-weight:700}.home-macro-group{gap:var(--space-lg);padding:var(--space-lg);background:var(--paper-card);border:1px solid var(--rule);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;display:flex}.home-macro-progress{--macro-role:var(--on-track);gap:6px;display:grid}.home-macro-progress.macro-protein{--macro-role:var(--protein)}.home-macro-progress.macro-carbs{--macro-role:var(--carbs)}.home-macro-progress.macro-fat{--macro-role:var(--fat)}.home-macro-progress-top{justify-content:space-between;align-items:center;gap:var(--space-md);display:flex}.home-macro-progress-label{font-size:var(--text-label);color:var(--ink);font-weight:700}.home-macro-progress-value{font-size:var(--text-label);color:var(--ink-mute);font-variant-numeric:tabular-nums}.home-macro-progress-value strong{color:var(--ink);font-weight:750}.home-macro-progress-track{border-radius:var(--radius-pill);background:var(--paper-deep);height:8px;overflow:hidden}.home-macro-progress-fill{border-radius:inherit;background:var(--macro-role);height:100%;transition:width var(--motion-fill) cubic-bezier(.22, 1, .36, 1);display:block}.home-macro-progress-note{font-size:var(--text-caption);color:var(--ink-mute)}@media (prefers-reduced-motion:reduce){.home-macro-progress-fill{transition:none}}.food-log-section{margin-bottom:16px}.food-section-header{cursor:pointer;text-align:left;-webkit-tap-highlight-color:transparent;background:0 0;border:none;align-items:center;gap:8px;width:100%;margin-bottom:8px;padding:4px 2px;display:flex}.food-section-icon{font-size:1rem;line-height:1}.food-section-title{letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:1rem;font-weight:600;overflow:hidden}.food-section-title.muted{color:var(--ink-soft);font-weight:500}.food-section-total{color:var(--coral-text);font-size:.8rem;font-weight:600;font-family:var(--mono)}.food-section-card{background:var(--paper-card);border-radius:var(--radius);border:1px solid var(--rule);overflow:hidden}.food-section-card.inset{background:0 0;border:none;border-radius:0}.food-card-row{color:inherit;align-items:center;gap:12px;padding:12px 14px;text-decoration:none;transition:background .12s;display:flex}.food-card-row:hover{background:var(--paper-deep);text-decoration:none}.food-card-chevron{color:var(--ink-mute);flex-shrink:0;font-size:1.1rem}.food-card-row.bordered{border-bottom:1px solid var(--rule)}.food-card-emoji{background:var(--paper-deep);border:1px solid var(--rule);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.5rem;display:flex}.food-card-info{flex:1;min-width:0}.food-card-top{align-items:center;gap:6px;display:flex}.food-card-edit-btn{width:26px;height:26px;color:var(--ink-mute);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,color .15s;display:flex}.food-card-edit-btn:hover{background:var(--paper-deep);color:var(--coral-text)}.food-card-name{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:.95rem;font-weight:500;line-height:1.3;overflow:hidden}.food-card-meta{color:var(--ink-soft);flex-wrap:wrap;align-items:center;gap:4px;margin-top:3px;font-size:.8rem;display:flex}.food-card-cals{color:var(--coral-text);font-weight:600}.food-card-dot{color:var(--ink-mute)}.error-banner{background:var(--danger-soft);color:var(--danger-ink);border-radius:var(--radius-sm);border:1px solid #e639464d;margin-bottom:16px;padding:12px 14px;font-size:.9rem}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{text-align:center;color:var(--ink-mute);padding:32px 16px}.empty-state p{margin-top:8px;font-size:.9rem}.meal-section{margin-top:20px}.meal-header{font-family:var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-mute);border-bottom:1px solid var(--rule);margin-bottom:8px;padding-bottom:6px;font-size:.72rem;font-weight:600}.calorie-ring{width:160px;height:160px;position:relative}.macro-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.macro-card{background:var(--paper-deep);border:1px solid var(--rule);border-radius:var(--radius-sm);text-align:center;padding:12px}.macro-label{font-family:var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-mute);font-size:.65rem}.macro-value{margin:4px 0;font-size:1.1rem;font-weight:700}.macro-bar{background:var(--rule);border-radius:2px;height:4px;margin-top:6px;overflow:hidden}.macro-bar-fill{border-radius:2px;height:100%;transition:width .3s}.macro-bar-fill.protein{background:var(--protein)}.macro-bar-fill.carbs{background:var(--carbs)}.macro-bar-fill.fat{background:var(--fat)}.review-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.login-page{justify-content:center;align-items:center;min-height:100dvh;padding:24px 16px;display:flex}.login-card{text-align:center;background:var(--paper-warm);border:1px solid var(--rule);border-radius:var(--radius);width:100%;max-width:400px;padding:32px 24px}.login-title{margin-bottom:8px;font-size:2rem;font-weight:700}.login-sub{color:var(--ink-soft);margin-bottom:28px;font-size:.95rem;line-height:1.5}.login-google{justify-content:center;min-height:44px;margin-bottom:16px;display:flex}.login-hint{color:var(--ink-mute);margin-bottom:20px;font-size:.85rem}.login-hint a{color:var(--ink-soft)}.account-avatar{border-radius:50%;width:44px;height:44px}.account-info{flex-direction:column;gap:2px;min-width:0;display:flex}.account-info strong{white-space:nowrap;text-overflow:ellipsis;font-size:.95rem;overflow:hidden}.account-info span{color:var(--ink-soft);white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;overflow:hidden}.auth-tabs{background:var(--paper-deep);border-radius:var(--radius-sm);border:1px solid var(--rule);grid-template-columns:1fr 1fr;gap:8px;margin-bottom:20px;padding:4px;display:grid}.auth-tab{color:var(--ink-soft);border-radius:8px;padding:10px 12px;font-size:.9rem;font-weight:600;transition:all .15s}.auth-tab.active{background:var(--coral-soft);color:var(--coral-text)}.auth-form{text-align:left;margin-bottom:8px}.auth-form .field{margin-bottom:14px}.auth-divider{color:var(--ink-mute);font-size:.8rem;font-family:var(--mono);text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:12px;margin:20px 0 16px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--rule);flex:1;height:1px}.account-avatar-fallback{background:var(--coral-soft);color:var(--coral-text);justify-content:center;align-items:center;font-size:.85rem;font-weight:700;display:flex}.account-provider{font-family:var(--mono);text-transform:uppercase;letter-spacing:.04em;color:var(--ink-mute)!important;font-size:.72rem!important}.login-hint code{font-family:var(--mono);background:var(--paper-deep);border-radius:4px;padding:2px 5px;font-size:.75rem}.google-origin-help{text-align:left;background:var(--paper-deep);border-radius:var(--radius-sm);color:var(--ink-soft);border:1px solid #ff7a5040;margin-top:12px;font-size:.85rem}.google-origin-help summary{cursor:pointer;color:var(--coral-text);padding:12px 14px;font-weight:600;list-style:none}.google-origin-help summary::-webkit-details-marker{display:none}.google-origin-body{border-top:1px solid var(--rule);padding:0 14px 14px}.google-origin-body ol{margin:12px 0 12px 18px;list-style:decimal}.google-origin-body li{margin-bottom:6px}.origin-list{margin:8px 0 12px;list-style:none}.origin-list li{background:var(--paper);border:1px solid var(--rule);border-radius:8px;justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;padding:8px 10px;display:flex}.origin-list code{font-family:var(--mono);word-break:break-all;font-size:.78rem}.btn-copy{border:1px solid var(--rule);color:var(--coral-text);background:var(--coral-soft);border-radius:6px;flex-shrink:0;padding:4px 10px;font-size:.75rem;font-weight:600}.google-origin-note{color:var(--ink-mute);font-size:.8rem;line-height:1.45}.back-link{color:var(--ink-soft);cursor:pointer;background:0 0;border:none;align-items:center;gap:2px;margin-bottom:4px;padding:0;font-family:inherit;font-size:.9rem;text-decoration:none;transition:color .15s;display:inline-flex}.back-link svg{transition:transform .15s}.back-link:hover{color:var(--ink);text-decoration:none}.back-link:hover svg{transform:translate(-2px)}.chart-wrap{margin-top:8px}.line-chart{width:100%;height:auto}.chart-labels{color:var(--ink-mute);font-size:.65rem;font-family:var(--mono);justify-content:space-between;margin-top:6px;display:flex}.chart-latest{text-align:center;color:var(--ink-soft);margin-top:10px;font-size:.85rem}.chart-empty{color:var(--ink-mute);text-align:center;padding:16px 0;font-size:.9rem}.bar-chart{justify-content:space-between;align-items:flex-end;gap:6px;height:160px;margin-top:8px;display:flex}.bar-col{flex-direction:column;flex:1;align-items:center;height:100%;display:flex}.bar-track{background:var(--paper-deep);border-radius:6px 6px 0 0;flex:1;align-items:flex-end;width:100%;display:flex;overflow:hidden}.bar-fill{background:var(--coral);border-radius:6px 6px 0 0;width:100%;min-height:2px;transition:height .3s}.bar-val{font-family:var(--mono);color:var(--ink-soft);margin-top:4px;font-size:.65rem}.bar-label{color:var(--ink-mute);margin-top:2px;font-size:.6rem}.history-row{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;gap:8px;padding:10px 0;font-size:.9rem;display:flex}.history-row:last-child{border-bottom:none}.day-ring{grid-template-columns:minmax(132px,.9fr) minmax(150px,1.1fr);align-items:center;gap:18px;width:100%;display:grid}.day-ring-graphic{aspect-ratio:1;width:min(100%,184px);margin:0 auto;position:relative}.day-ring-graphic svg{width:100%;height:100%;overflow:visible;transform:rotate(-90deg)}.day-ring-track,.day-ring-fill{fill:none;stroke-width:6px}.day-ring-track{stroke:var(--rule);opacity:.72}.day-ring-fill{stroke-linecap:round;transition:stroke-dashoffset .52s cubic-bezier(.2,.8,.2,1)}.day-ring-center{text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.day-ring-center strong{font-size:1.45rem;line-height:1}.day-ring-center span{color:var(--ink-mute);letter-spacing:.04em;margin-top:5px;font-size:.66rem}.day-ring-copy h1{margin:4px 0 12px;font-size:clamp(1.25rem,5vw,1.65rem);line-height:1.05}.day-ring-legend{gap:7px;margin:0;padding:0;list-style:none;display:grid}.day-ring-legend li{color:var(--ink-soft);grid-template-columns:9px 1fr auto;align-items:center;gap:7px;font-size:.76rem;display:grid}.day-ring-legend li.done{color:var(--ink)}.day-ring-dot{border-radius:50%;width:8px;height:8px}.day-ring-legend small{color:var(--ink-mute);font-family:var(--mono);font-size:.61rem}@media (width<=360px){.day-ring{grid-template-columns:1fr}.day-ring-copy{text-align:center}}.progress-page-header{margin-bottom:14px}.range-chips{scrollbar-width:none;gap:6px;padding-bottom:16px;display:flex;overflow-x:auto}.range-chips::-webkit-scrollbar{display:none}.range-chip{color:var(--ink-mute);border:1px solid var(--rule);background:0 0;border-radius:999px;flex-shrink:0;padding:7px 14px;font-size:.83rem;font-weight:600;transition:all .15s}.range-chip.active{background:var(--coral-soft);color:var(--coral-text);border-color:color-mix(in srgb, var(--coral-hue) 35%, transparent)}.progress-card{background:var(--paper-card);border-radius:var(--radius);border:1px solid var(--rule);margin-bottom:12px;padding:16px}.progress-card-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.progress-card-title{font-size:1.05rem;font-weight:700}.progress-log-btn{color:var(--coral-text);background:var(--coral-soft);white-space:nowrap;border:1px solid #ff7a5040;border-radius:999px;padding:5px 12px;font-size:.8rem;font-weight:600;transition:opacity .15s}.progress-log-btn:hover{opacity:.8}.progress-avg-pill{color:var(--ink-soft);background:var(--paper-deep);border:1px solid var(--rule);white-space:nowrap;border-radius:999px;padding:4px 10px;font-size:.78rem;font-weight:600}.progress-stat-grid{grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:14px;display:grid}.progress-stat-card{background:var(--paper-deep);border:1px solid var(--rule);border-radius:var(--radius-sm);flex-direction:column;gap:2px;padding:10px 12px;display:flex}.progress-stat-value{letter-spacing:-.01em;color:var(--ink);font-size:1.1rem;font-weight:700}.progress-stat-sub{color:var(--ink-mute);font-size:.68rem}.history-date{color:var(--ink-soft);flex:1;font-size:.85rem}.history-weight{font-size:.9rem;font-family:var(--mono);color:var(--ink)}.btn-delete{border:1px solid var(--rule);color:var(--coral-text);background:0 0;border-radius:6px;flex-shrink:0;padding:4px 10px;font-size:.75rem;font-weight:600;transition:background .12s}.btn-delete:hover{background:var(--danger-soft)}.history-link-card{background:var(--paper-card);border:1px solid var(--rule);border-radius:var(--radius);text-align:left;width:100%;color:inherit;align-items:center;gap:12px;margin-bottom:12px;padding:14px 16px;display:flex}.history-link-icon{background:var(--coral-soft);width:36px;height:36px;color:var(--coral-text);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;display:flex}.history-link-text{flex:1;min-width:0}.history-link-text strong{font-size:.95rem;display:block}.history-link-text span{color:var(--ink-soft);margin-top:2px;font-size:.78rem;display:block}.progress-chart-wrap{margin-top:4px}.progress-line-chart,.progress-bar-chart{width:100%;height:auto}.chart-footnote{text-align:center;color:var(--ink-soft);margin-top:6px;font-size:.82rem}.modal-backdrop{z-index:200;background:#0009;justify-content:center;align-items:flex-end;padding:16px;display:flex;position:fixed;inset:0}.modal-sheet{background:var(--paper-card);border-radius:var(--radius);border:1px solid var(--rule);width:100%;max-width:480px;padding:20px 16px}.modal-sheet h3{margin-bottom:16px;font-size:1.1rem;font-weight:700}.consistency-streak{color:var(--coral-text);font-size:.78rem;font-weight:600}.consistency-headline{align-items:baseline;gap:8px;margin-top:4px;display:flex}.consistency-number{font-family:var(--serif);color:var(--ink);font-size:2.4rem;line-height:1}.consistency-unit{color:var(--ink-soft);font-size:.9rem}.consistency-sub{color:var(--ink-mute);margin-top:4px;font-size:.78rem}.own-past-callout{border-radius:var(--clay-radius-sm);background:var(--paper-deep);box-shadow:var(--clay-inset);gap:3px;margin-top:14px;padding:12px 14px;font-size:.78rem;line-height:1.4;display:grid}.own-past-callout span{color:var(--ink-soft)}.meal-type-row{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.meal-type-btn{background:var(--paper-deep);border:1.5px solid var(--rule);border-radius:var(--radius-sm);cursor:pointer;flex-direction:column;flex:1;align-items:center;gap:3px;min-width:60px;padding:8px 12px;transition:border-color .15s,background .15s;display:flex}.meal-type-btn.active{border-color:var(--coral-start);background:var(--coral-soft)}.meal-type-icon{font-size:1.2rem;line-height:1}.meal-type-label{color:var(--ink-soft);font-size:.7rem;font-weight:600}.meal-type-btn.active .meal-type-label{color:var(--coral-text)}.text-log-input{background:var(--paper-deep);border:1.5px solid var(--rule);border-radius:var(--radius);width:100%;min-height:130px;color:var(--ink);resize:vertical;padding:14px;font-family:inherit;font-size:.95rem;line-height:1.55;transition:border-color .15s}.text-log-input:focus{border-color:var(--coral-start);outline:none}.text-log-examples{margin-top:10px}.text-log-examples-label{text-transform:uppercase;letter-spacing:.07em;color:var(--ink-mute);margin-bottom:8px;font-size:.7rem;font-weight:600}.example-chips{flex-wrap:wrap;gap:7px;display:flex}.example-chip{background:var(--paper-deep);border:1px solid var(--rule);color:var(--ink-soft);cursor:pointer;border-radius:999px;padding:6px 12px;font-size:.8rem;transition:border-color .15s,color .15s}.example-chip:hover{border-color:var(--coral-start);color:var(--coral-text)}@keyframes analyzing-pulse{0%,to{box-shadow:0 0 #ff7a5040}50%{box-shadow:0 0 0 16px #ff7a5000}}.photo-upload-zone{background:var(--paper-deep);border:2px dashed var(--rule);border-radius:var(--radius);cursor:pointer;text-align:center;width:100%;min-height:200px;font:inherit;color:inherit;appearance:none;flex-direction:column;justify-content:center;align-items:center;gap:8px;margin-bottom:16px;padding:32px;transition:border-color .15s;display:flex}.photo-upload-zone:hover{border-color:var(--coral-start)}.photo-upload-zone:focus-visible{outline:2px solid var(--coral-start);outline-offset:3px}.photo-upload-title{color:var(--ink);font-size:1rem;font-weight:600}.photo-upload-sub{color:var(--ink-mute);font-size:.8rem}.photo-btn-row{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px;display:grid}.photo-source-btn{background:var(--paper-deep);border:1.5px solid var(--rule);border-radius:var(--radius-sm);color:var(--ink);cursor:pointer;justify-content:center;align-items:center;gap:7px;padding:13px;font-size:.92rem;font-weight:600;transition:border-color .15s;display:flex}.photo-source-btn:hover:not(:disabled){border-color:var(--coral-start)}.photo-source-btn:disabled{opacity:.45;cursor:not-allowed}.discover-search{background:var(--paper-card);border:1px solid var(--rule);color:var(--ink-mute);border-radius:999px;align-items:center;gap:8px;margin:18px 0 12px;padding:11px 14px;display:flex}.discover-search input{min-width:0;color:var(--ink);background:0 0;border:none;flex:1;font-size:.9rem}.discover-search input::placeholder{color:var(--ink-mute)}.discover-chip-row{scrollbar-width:none;gap:8px;margin-bottom:20px;padding-bottom:4px;display:flex;overflow-x:auto}.discover-chip-row::-webkit-scrollbar{display:none}.discover-chip{background:var(--paper-card);border:1px solid var(--rule);color:var(--ink-soft);border-radius:999px;flex-shrink:0;padding:7px 15px;font-size:.82rem;font-weight:600;transition:background .15s,color .15s,border-color .15s}.discover-chip.active{background:var(--ink);border-color:var(--ink);color:var(--paper-warm)}.discover-section-header{align-items:center;gap:8px;margin-bottom:12px;display:flex}.discover-section-title{text-transform:uppercase;letter-spacing:.07em;color:var(--ink-mute);font-size:.78rem;font-weight:700}.discover-count-badge{color:var(--coral-text);background:var(--coral-soft);border-radius:999px;padding:1px 8px;font-size:.68rem;font-weight:700}.discover-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.discover-card{background:var(--paper-card);border:1px solid var(--rule);border-radius:var(--radius);box-shadow:var(--shadow-sm);flex-direction:column;padding:12px;display:flex}.discover-card-top{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.discover-card-emoji{background:var(--paper-deep);border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;font-size:1.5rem;display:flex}.discover-card-name{color:var(--ink);-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:2.4em;font-size:.88rem;font-weight:700;line-height:1.3;display:-webkit-box;overflow:hidden}.discover-card-cals{color:var(--ink-soft);margin-top:3px;font-size:.76rem;font-weight:600}.discover-macro-bar{background:var(--rule);border-radius:999px;width:100%;height:4px;margin-top:8px;display:flex;overflow:hidden}.discover-macro-bar span{height:100%}.discover-card-footer{justify-content:space-between;align-items:center;gap:6px;margin-top:10px;display:flex}.saved-section{margin-bottom:24px}.saved-section-header{align-items:center;gap:7px;margin-bottom:10px;display:flex}.saved-section-icon{color:var(--coral-text);font-size:1rem}.saved-section-title{text-transform:uppercase;letter-spacing:.07em;color:var(--ink-mute);font-size:.78rem;font-weight:700}.saved-card{background:var(--paper-card);border:1px solid var(--rule);border-radius:var(--radius);overflow:hidden}.saved-divider{background:var(--rule);height:1px;margin:0 14px}.saved-empty{color:var(--ink-mute);padding:14px 4px;font-size:.85rem}.saved-meal-row{align-items:center;gap:12px;padding:12px 14px;display:flex}.saved-meal-emoji{flex-shrink:0;font-size:1.6rem;line-height:1}.saved-meal-info{flex:1;min-width:0}.saved-meal-name{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-size:.92rem;font-weight:600;display:block;overflow:hidden}.saved-meal-meta{flex-wrap:wrap;align-items:center;gap:5px;margin-top:2px;display:flex}.saved-meal-cals{color:var(--ink-soft);font-size:.78rem;font-weight:600}.saved-meal-dot{color:var(--ink-mute);font-size:.7rem}.saved-meal-macros{color:var(--ink-mute);font-size:.72rem}.saved-meal-type{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-mute);background:var(--paper-deep);border-radius:4px;margin-top:4px;padding:2px 6px;font-size:.65rem;font-weight:700;display:inline-block}.saved-meal-actions{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:5px;display:flex}.log-pill-btn{color:var(--on-brand);background:linear-gradient(135deg, var(--coral-start), var(--coral-end));border-radius:999px;padding:5px 12px;font-size:.75rem;font-weight:700;transition:opacity .15s}.log-pill-btn:hover{opacity:.85}.star-btn{color:var(--ink-mute);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:2px 4px;line-height:1;transition:color .15s,transform .15s;display:inline-flex}.star-btn:hover{transform:scale(1.12)}.star-btn.active{color:var(--carbs-text)}.settings-clamp-note{color:var(--ink-soft);background:var(--coral-soft);border-radius:var(--radius-sm);margin-bottom:10px;padding:12px 14px;font-size:.8rem;line-height:1.5}.settings-goals-grid{grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:8px;display:grid}.settings-goal-card{background:var(--paper-card);border:1px solid var(--rule);border-radius:var(--radius-sm);flex-direction:column;gap:4px;padding:12px;display:flex}.settings-goal-label{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-mute);font-size:.68rem;font-weight:700}.settings-goal-value{color:var(--ink);font-size:1.1rem;font-weight:700}.settings-account-row{align-items:center;gap:12px;padding:14px 16px 10px;display:flex}.settings-signout-btn{text-align:left;width:100%;color:var(--coral-text);border:none;border-top:1px solid var(--rule);cursor:pointer;background:0 0;padding:11px 16px;font-size:.9rem;font-weight:600;transition:background .12s}.settings-signout-btn:hover{background:var(--danger-soft)}.settings-data-btn{text-align:left;width:100%;color:var(--ink);cursor:pointer;background:0 0;border:none;padding:13px 16px;font-size:.9rem;font-weight:500;transition:background .12s}.settings-data-btn:hover{background:var(--paper-deep)}.settings-data-btn.danger{color:var(--danger-text)}.settings-link-row{justify-content:space-between;align-items:center;text-decoration:none;display:flex}.settings-link-row:hover{color:var(--ink);text-decoration:none}.settings-link-chevron{color:var(--ink-mute);flex-shrink:0}.settings-divider{background:var(--rule);height:1px;margin:0 16px}.settings-saved-banner{background:var(--info-soft);color:var(--protein-ink);border-radius:var(--radius-sm);text-align:center;border:1px solid #3b82f64d;justify-content:center;align-items:center;gap:6px;margin-bottom:14px;padding:9px 14px;font-size:.85rem;font-weight:600;display:flex}.settings-footer{text-align:center;color:var(--ink-mute);padding:20px 0 8px;font-size:.72rem}@keyframes welcome-photo-in{0%{transform:scale(1.08)}to{transform:scale(1)}}.welcome-content{z-index:1;padding:0 24px max(28px, env(safe-area-inset-bottom,0px));flex-direction:column;gap:14px;display:flex;position:absolute;bottom:0;left:0;right:0}.welcome-title{font-family:var(--serif);letter-spacing:-.01em;color:var(--on-accent);font-size:2.1rem;font-weight:600;line-height:1.18;animation:.5s cubic-bezier(.22,1,.36,1) both welcome-text-in}@keyframes welcome-text-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.welcome-title{animation:none!important}}.onboarding-main{min-height:calc(100dvh - env(safe-area-inset-bottom,0px));flex-direction:column;padding-bottom:20px;display:flex}.onboarding-step-content{flex-direction:column;flex:1;gap:4px;display:flex}.onboarding-title{letter-spacing:-.025em;color:var(--ink);margin-bottom:4px;font-size:1.6rem;font-weight:800;line-height:1.2}.onboarding-sub{color:var(--ink-soft);margin-bottom:20px;font-size:.9rem;line-height:1.5}@keyframes onboarding-step-in{0%{opacity:0;transform:translate(22px)scale(.985)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.onboarding-step-content{animation:none!important}}.settings-section-label{text-transform:uppercase;letter-spacing:.08em;color:var(--ink-mute);margin:20px 0 7px;font-size:.7rem;font-weight:700}.settings-card{background:var(--paper-card);border:1px solid var(--rule);border-radius:var(--radius);margin-bottom:8px;overflow:hidden}.settings-row{border-bottom:1px solid var(--rule);align-items:center;gap:12px;padding:12px 16px;display:flex}.settings-row:last-child{border-bottom:none}.settings-row-labels{flex:1;min-width:0}.settings-row-label{color:var(--ink);font-size:.9rem;font-weight:500;display:block}.settings-row-hint{color:var(--ink-mute);font-size:.72rem}.settings-row-control{flex-shrink:0;align-items:center;gap:6px;max-width:55%;display:flex}.settings-input{background:var(--paper-deep);border:1px solid var(--rule);color:var(--ink);border-radius:8px;outline:none;width:100%;max-width:160px;padding:7px 10px;font-family:inherit;font-size:.88rem;transition:border-color .15s}.settings-input:focus{border-color:var(--coral-start)}.settings-select{background:var(--paper-deep);border:1px solid var(--rule);color:var(--ink);appearance:auto;border-radius:8px;outline:none;max-width:160px;padding:7px 10px;font-family:inherit;font-size:.88rem;transition:border-color .15s}.settings-select:focus{border-color:var(--coral-start)}.settings-key-wrap{align-items:center;gap:6px;width:100%;display:flex}.settings-key-wrap .settings-input{flex:1;max-width:none}.settings-key-toggle{color:var(--ink-soft);border:1px solid var(--rule);white-space:nowrap;cursor:pointer;background:0 0;border-radius:6px;padding:4px 9px;font-size:.78rem;font-weight:600}.settings-accuracy-warning{background:var(--paper-deep);border:1px solid color-mix(in srgb, var(--amber-ink) 40%, transparent);border-radius:var(--radius-sm);flex-direction:column;gap:10px;margin:0 16px 12px;padding:12px 14px;display:flex}.settings-accuracy-warning p{color:var(--ink-soft);margin:0;font-size:.8rem;line-height:1.5}.settings-accuracy-fix{background:var(--warning-soft);border:1px solid color-mix(in srgb, var(--amber-ink) 50%, transparent);color:var(--ink);cursor:pointer;border-radius:8px;align-self:flex-start;padding:8px 12px;font-size:.78rem;font-weight:700;line-height:1.3;transition:background .15s}.settings-accuracy-fix:hover{background:color-mix(in srgb, var(--warning-soft) 85%, var(--amber-ink))}.settings-field-block{border-top:1px solid var(--rule);flex-direction:column;gap:8px;padding:12px 16px;display:flex}.settings-field-block:first-child{border-top:none}.settings-textarea{background:var(--paper-deep);border:1px solid var(--rule);width:100%;color:var(--ink);resize:vertical;border-radius:8px;outline:none;padding:10px 12px;font-family:inherit;font-size:.88rem;line-height:1.5;transition:border-color .15s}.settings-textarea:focus{border-color:var(--coral-start)}.settings-byok-note{color:var(--ink-soft);padding:10px 16px 4px;font-size:.8rem;line-height:1.5}.settings-byok-note a{color:var(--coral-text)}.wardrobe-item:disabled{cursor:default;opacity:.58}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}@keyframes typing-bounce{0%,80%,to{opacity:.4;transform:translateY(0)}40%{opacity:1;transform:translateY(-5px)}}@media (prefers-reduced-motion:reduce){.levelup-companion,.levelup-card,.levelup-badge,.levelup-level,.levelup-name{transition:none!important;animation:none!important}}.nav-dir{display:contents}@keyframes page-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes page-enter-forward{0%{opacity:0;transform:translate(22px)}to{opacity:1;transform:translate(0)}}@keyframes page-enter-back{0%{opacity:0;transform:translate(-22px)}to{opacity:1;transform:translate(0)}}.app-shell>.app-main{animation:.22s cubic-bezier(.4,0,.2,1) page-enter}.nav-dir-forward .app-shell>.app-main{animation:.26s cubic-bezier(.32,.72,0,1) page-enter-forward}.nav-dir-back .app-shell>.app-main{animation:.26s cubic-bezier(.32,.72,0,1) page-enter-back}@supports (view-transition-name:none){.calorie-ring-centre{view-transition-name:log-hero}::view-transition-old(log-hero){animation-duration:.32s;animation-timing-function:cubic-bezier(.32,.72,0,1)}::view-transition-new(log-hero){animation-duration:.32s;animation-timing-function:cubic-bezier(.32,.72,0,1)}}.meal-type-btn,.photo-source-btn,.log-pill-btn,.example-chip{-webkit-tap-highlight-color:transparent;position:relative;overflow:hidden}.meal-type-btn:after,.photo-source-btn:after,.log-pill-btn:after,.example-chip:after{content:"";opacity:0;border-radius:inherit;pointer-events:none;background:#0000001a;transition:opacity .3s;position:absolute;inset:0}.meal-type-btn:active:after,.photo-source-btn:active:after,.log-pill-btn:active:after,.example-chip:active:after{opacity:1;transition:none}.meal-type-btn:active,.photo-source-btn:active,.log-pill-btn:active{transition:transform .1s;transform:scale(.97)}@keyframes flame-flicker{0%,to{filter:brightness();transform:scale(1)rotate(-2deg)}25%{filter:brightness(1.2);transform:scale(1.1)rotate(2deg)}50%{filter:brightness(.9);transform:scale(.95)rotate(-1deg)}75%{filter:brightness(1.1);transform:scale(1.05)rotate(1deg)}}@keyframes section-enter{0%{opacity:0;transform:translateY(14px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes hero-enter{0%{opacity:0;transform:translateY(10px)scale(.9)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes tip-fade{0%{opacity:0;transform:translateY(6px)}12%{opacity:1;transform:translateY(0)}88%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-6px)}}@keyframes plate-bounce{0%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}@keyframes at-risk-pulse{0%,to{box-shadow:0 0 #ffb34700}50%{box-shadow:0 0 0 6px #ffb34733}}@media (prefers-reduced-motion:reduce){.streak-fire,.streak-card.at-risk,.food-empty-plate,.food-empty-tip{transition:none!important;animation:none!important}}.food-card-row{transition:transform .12s cubic-bezier(.34,1.56,.64,1)}.food-card-row:active{transform:scale(.98)}.motion-stagger>*{animation:section-enter var(--motion-enter) cubic-bezier(.22, 1, .36, 1) both}.motion-stagger>:first-child{animation-delay:0s}.motion-stagger>:nth-child(2){animation-delay:calc(var(--motion-stagger) * 1)}.motion-stagger>:nth-child(3){animation-delay:calc(var(--motion-stagger) * 2)}.motion-stagger>:nth-child(4){animation-delay:calc(var(--motion-stagger) * 3)}.motion-stagger>:nth-child(5){animation-delay:calc(var(--motion-stagger) * 4)}.motion-stagger>:nth-child(6){animation-delay:calc(var(--motion-stagger) * 5)}.motion-stagger>:nth-child(7){animation-delay:calc(var(--motion-stagger) * 6)}.motion-stagger>:nth-child(8){animation-delay:calc(var(--motion-stagger) * 7)}.motion-stagger>:nth-child(n+9){animation-delay:calc(var(--motion-stagger) * 8)}.motion-list>*{animation:.32s cubic-bezier(.22,1,.36,1) both section-enter}.motion-list>:first-child{animation-delay:0s}.motion-list>:nth-child(2){animation-delay:30ms}.motion-list>:nth-child(3){animation-delay:60ms}.motion-list>:nth-child(4){animation-delay:90ms}.motion-list>:nth-child(5){animation-delay:.12s}.motion-list>:nth-child(6){animation-delay:.15s}.motion-list>:nth-child(n+7){animation-delay:.18s}.history-link-card,.settings-data-btn,.settings-link-row,.settings-signout-btn,.discover-card,.discover-chip,.range-chip,.ssc-btn,.star-btn,.progress-log-btn,.food-section-header{-webkit-tap-highlight-color:transparent}.history-link-card,.settings-data-btn,.settings-link-row{transition:transform var(--motion-press) cubic-bezier(.34, 1.56, .64, 1), border-bottom-width var(--motion-press)}.history-link-card:active,.settings-data-btn:active,.settings-link-row:active{border-bottom-width:var(--edge-width);transform:translateY(2px)}.discover-card,.discover-chip,.range-chip,.ssc-btn,.star-btn,.progress-log-btn,.food-section-header{transition:transform var(--motion-press) cubic-bezier(.34, 1.56, .64, 1)}.discover-card:active{transform:scale(.98)}.discover-chip:active,.range-chip:active,.progress-log-btn:active,.ssc-btn:active,.food-section-header:active{transform:scale(.96)}.star-btn:active{transform:scale(1.18)}.meal-path-progress{transition:stroke-dashoffset var(--motion-fill) cubic-bezier(.22, 1, .36, 1)}.meal-path-mascot{transition:left .55s cubic-bezier(.22,1,.36,1),top .55s cubic-bezier(.22,1,.36,1)}.path-node.is-current .path-node-face{animation:2.4s ease-in-out infinite node-breathe}.path-node.is-popping .path-node-face{animation:.45s cubic-bezier(.34,1.56,.64,1) node-pop}@keyframes node-breathe{0%,to{box-shadow:0 0 #ff7a5000}50%{box-shadow:0 0 0 8px #ff7a5029}}@keyframes node-pop{0%{transform:scale(1)}40%{transform:scale(1.16)}to{transform:scale(1)}}.onboarding-step-content{animation:section-enter var(--motion-enter) cubic-bezier(.22, 1, .36, 1) both}.login-card{animation:.5s cubic-bezier(.22,1,.36,1) both hero-enter}.field input:focus,.field textarea:focus{transition:border-color .18s,box-shadow .18s,transform .18s}@media (prefers-reduced-motion:reduce){.streak-fire,.streak-card.at-risk,.food-empty-plate,.food-empty-tip,.motion-stagger>*,.motion-list>*,.onboarding-step-content,.login-card,.path-node.is-current .path-node-face,.path-node.is-popping .path-node-face,.meal-path-mascot,.meal-path-progress,.app-shell,.app-shell>.app-main{transition:none!important;animation:none!important}}.eyebrow{font-size:var(--text-caption);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:8px;font-weight:700;display:block}.surface{background:var(--paper-card);border:var(--edge-width) solid var(--edge-neutral);border-bottom-width:var(--edge-depth);border-radius:20px}.surface.is-padded{padding:16px}.progress-card,.login-card,.settings-card{border:var(--edge-width) solid var(--edge-neutral);border-bottom-width:var(--edge-depth)}.surface.is-interactive{cursor:pointer;transition:transform var(--motion-press), border-color var(--motion-press)}.surface.is-interactive:active{border-bottom-width:var(--edge-width);transform:translateY(2px)}.counter{background:var(--paper-card);border:var(--edge-width) solid var(--edge-neutral);border-bottom-width:var(--edge-depth);border-radius:16px;flex:1;justify-content:center;align-items:center;gap:6px;min-width:72px;min-height:44px;padding:8px 6px;display:flex}.counter-icon{font-size:15px;line-height:1}.counter-value{font-family:var(--display);color:var(--ink);font-size:1.2rem;line-height:1}.counter-label{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.06em;font-size:.68rem;font-weight:700}.home-counter-row{gap:8px;padding:0 16px 12px;display:flex}.meal-path{height:232px;position:relative}.meal-path-svg{width:100%;height:100%;display:block}.meal-path-slot{flex-direction:column;align-items:center;display:flex;position:absolute;transform:translate(-50%,-50%)}.meal-path-mascot{pointer-events:none;z-index:2;position:absolute;transform:translate(-50%,calc(-50% - 42px))}.path-node{background:0 0;flex-direction:column;align-items:center;gap:5px;min-width:44px;min-height:44px;display:flex}.path-node-face{border:3px solid var(--edge-neutral);background:var(--paper-deep);width:54px;height:54px;color:var(--ink);transition:transform var(--motion-press), border-bottom-width var(--motion-press);border-bottom-width:5px;border-radius:999px;justify-content:center;align-items:center;font-size:1.2rem;font-weight:800;display:flex}.path-node:active .path-node-face{border-bottom-width:2px;transform:translateY(3px)}.path-node.is-done .path-node-face{background:var(--coral);border-color:var(--edge-coral);color:var(--on-brand)}.path-node.is-current .path-node-face{background:var(--paper-card);border-color:var(--coral);width:68px;height:68px}.path-node.is-later .path-node-face{color:var(--ink-mute)}.path-node-label{font-family:var(--display);color:var(--ink-soft);font-size:.68rem;font-weight:600}.path-node.is-current .path-node-label{color:var(--ink)}.meal-path.is-paused .path-node-face{filter:none}.bottom-nav{background:var(--paper-card);border:var(--edge-width) solid var(--edge-neutral);border-bottom-width:var(--edge-depth);box-shadow:none;color:var(--ink-soft)}.nav-item-inner{min-height:44px;transition:transform var(--motion-press)}.nav-item:active .nav-item-inner{transform:translateY(2px)}.home-macro-group{box-shadow:none;background:0 0;border:none;flex-direction:row;gap:8px;padding:0;display:flex}.home-macro-progress{background:var(--paper-card);border:var(--edge-width) solid var(--edge-neutral);border-bottom-width:var(--edge-depth);border-radius:16px;flex:1;padding:10px}.levelup-card{border:var(--edge-width) solid var(--edge-neutral);border-bottom-width:var(--edge-depth)}.celebrate-inner{background:var(--paper-card);border:var(--edge-width) solid var(--edge-neutral);border-bottom-width:var(--edge-depth);border-radius:26px;padding:28px 20px}.home-skeleton-path{margin-bottom:16px}.home-skeleton-macros{gap:8px;display:flex}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.clay-squish{transition:transform var(--squish-out) var(--squish-ease), box-shadow var(--squish-out) var(--squish-ease)}.clay-squish:active,.clay-squish.is-pressed{box-shadow:var(--clay-squish);transition-duration:var(--squish-in);transform:scale(.97)translateY(2px)}.clay-squish:focus-visible,.path-node:focus-visible .path-node-face,.nav-item:focus-visible .nav-item-inner{outline:3px solid var(--cobalt);outline-offset:3px}.surface,.progress-card,.login-card,.settings-card,.levelup-card,.celebrate-inner,.date-modal,.modal-sheet,.discover-card,.food-section-card,.saved-card{background:linear-gradient(160deg, var(--clay-lift), var(--clay-base));border-radius:var(--clay-radius-md);box-shadow:var(--clay-e2);border:none}.home-macro-progress,.counter,.range-chip,.discover-chip,.chip,.history-link-card,.settings-data-btn,.settings-link-row,.meal-type-btn,.photo-source-btn{background:linear-gradient(160deg, var(--clay-lift), var(--clay-base));border-radius:var(--clay-radius-sm);box-shadow:var(--clay-e1);border:none}.range-chip.active,.discover-chip.active,.chip.active,.meal-type-btn.active{background:linear-gradient(160deg, var(--clay-coral-lift), var(--clay-coral-base));box-shadow:var(--clay-coral-raised);color:var(--on-brand)}.clay-input{background:var(--paper-deep);border-radius:var(--clay-radius-sm);box-shadow:var(--clay-inset);border:none}.clay-input:focus{outline:3px solid var(--cobalt);outline-offset:2px}.surface.is-interactive:active,.discover-card:active,.counter:active,.range-chip:active,.discover-chip:active,.settings-data-btn:active,.settings-link-row:active,.history-link-card:active,.meal-type-btn:active,.photo-source-btn:active{box-shadow:var(--clay-squish);transform:scale(.97)translateY(2px)}.path-node-face{background:linear-gradient(160deg, var(--clay-lift), var(--clay-base));box-shadow:var(--clay-e2);transition:transform var(--squish-out) var(--squish-ease), box-shadow var(--squish-out) var(--squish-ease);border:none}.path-node:active .path-node-face{box-shadow:var(--clay-squish);border-bottom-width:0;transform:scale(.94)translateY(2px)}.path-node.is-done .path-node-face{background:linear-gradient(160deg, var(--clay-coral-lift), var(--clay-coral-base));box-shadow:var(--clay-coral-raised);color:var(--on-brand);border-color:#0000}.path-node.is-current .path-node-face{background:linear-gradient(160deg, var(--clay-lift), var(--clay-base));box-shadow:var(--clay-e3);border-color:#0000}.bottom-nav{background:linear-gradient(160deg, var(--clay-lift), var(--clay-base));box-shadow:var(--clay-e3);color:var(--ink-soft);border:none}.nav-item.active .nav-item-inner{background:var(--selection-soft);box-shadow:var(--clay-inset)}.nav-item:active .nav-item-inner{box-shadow:var(--clay-squish);transform:scale(.96)translateY(1px)}@media (prefers-reduced-motion:reduce){.clay-squish,.clay-squish:active,.clay-squish.is-pressed,.path-node-face,.path-node:active .path-node-face,.pressable-face,.nav-item-inner{transition:none!important}}.calorie-ring-action{border-radius:var(--radius-pill);font-size:var(--text-caption);color:var(--coral-text);background:var(--paper-deep);box-shadow:var(--clay-inset);align-items:center;margin-top:8px;padding:5px 12px;font-weight:700;display:inline-flex}.mascot-say{border-radius:var(--clay-radius-sm);background:var(--paper-deep);max-width:260px;box-shadow:var(--clay-inset);font-size:var(--text-label);color:var(--ink-soft);text-align:center;margin:0;padding:10px 16px;line-height:1.4;position:relative}.card{background:linear-gradient(160deg, var(--clay-lift), var(--clay-base));border-radius:var(--clay-radius-md);box-shadow:var(--clay-e2);border:none}.field input,.field select,.field textarea{border-radius:var(--clay-radius-sm);background:var(--paper-deep);box-shadow:var(--clay-inset);font-family:var(--sans);color:var(--ink);transition:box-shadow var(--motion-press) ease;border:none}.field input:focus,.field select:focus,.field textarea:focus{box-shadow:var(--clay-inset), 0 0 0 3px var(--coral-soft)}.page-title,.screen-title{font-family:var(--display);font-weight:600}.bottom-nav{background:var(--paper-card);border:1px solid var(--chalk);align-items:center;box-shadow:0 10px 28px #14213d14}.nav-item{color:var(--ink-mute)}.nav-item.active{color:var(--selection)}.nav-item.active .nav-item-inner{background:var(--selection-soft)}.nav-fab{background:var(--cobalt);width:58px;height:58px;color:var(--on-brand);box-shadow:var(--clay-coral-raised);border-radius:50%;flex:0 0 58px;justify-content:center;align-items:center;margin-top:-22px;text-decoration:none;display:flex}.nav-fab:hover{color:var(--on-brand);text-decoration:none}.nav-fab:active{box-shadow:var(--clay-coral-squish);transform:translateY(2px)}.ticket{background:var(--paper-card);border:1px solid var(--chalk);box-shadow:var(--shadow-card);border-radius:18px;padding:8px 16px 18px;position:relative}.ticket-perf{background:radial-gradient(circle at 8px 14px, transparent 6px, var(--paper-card) 7px) 0 0 / 16px 14px, var(--enamel);border-bottom:1px dashed var(--chalk);height:14px;margin:0 -16px 12px}.ticket-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;display:flex}.ticket-kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-mute);font-size:.68rem}.ticket-date{font-family:var(--display);font-size:1.15rem}.ticket-no{color:var(--ink-soft);font-size:.78rem}.ticket-macros{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.ticket-macro{background:var(--paper-deep);border-radius:999px;height:22px;position:relative;overflow:hidden}.ticket-macro-fill{border-radius:inherit;height:100%;display:block}.ticket-macro-protein .ticket-macro-fill{background:color-mix(in srgb, var(--protein) 25%, var(--paper-card))}.ticket-macro-carbs .ticket-macro-fill{background:color-mix(in srgb, var(--carbs) 25%, var(--paper-card))}.ticket-macro-fat .ticket-macro-fill{background:color-mix(in srgb, var(--fat) 25%, var(--paper-card))}.ticket-macro-copy{color:var(--ink);justify-content:space-between;align-items:center;padding:0 10px;font-size:.7rem;font-weight:600;display:flex;position:absolute;inset:0}.ticket-empty{border:1.5px dashed var(--chalk);text-align:center;color:var(--ink-soft);border-radius:12px;padding:22px 14px}.ticket-row{grid-template-columns:44px 1fr auto 16px;align-items:center;gap:10px;min-height:52px;padding:6px 0;display:grid}.ticket-thumb{background:var(--enamel);border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.25rem;display:flex}.ticket-row-name{font-weight:600}.ticket-row-kcal{font-variant-numeric:tabular-nums;color:var(--ink-soft)}.ticket-water{margin-top:16px}.ticket-water-head{color:var(--ink-soft);justify-content:space-between;margin-bottom:8px;font-size:.8rem;display:flex}.ticket-glasses{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.ticket-glass{border:1.5px solid var(--chalk);background:0 0;border-radius:12px;height:44px}.ticket-glass.is-filled{background:var(--cobalt);border-color:var(--cobalt)}.ticket-note{color:var(--coral-text);min-height:36px;margin-top:10px;font-size:.8rem}.ticket-stamp{font-family:var(--display);color:var(--fat-text);letter-spacing:.04em;margin-top:14px}.ticket.is-torn{opacity:.92;-webkit-mask-image:linear-gradient(#000 0 88%,#0000 100%);mask-image:linear-gradient(#000 0 88%,#0000 100%)}.ticket.is-future{opacity:.75}.celebrate-overlay{background:var(--enamel)}.celebrate-burst{pointer-events:none;background:radial-gradient(circle,#ff8a4759,#0000 55%),radial-gradient(circle at 20% 40%,#ff8a4733,#0000 40%),radial-gradient(circle at 80% 30%,#ff8a4733,#0000 40%);height:160px;position:absolute;inset:18% 12% auto}.celebrate-stat-value{color:var(--apricot);font-variant-numeric:tabular-nums}.insights-heat{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.insights-heat-cell{aspect-ratio:1;background:var(--chalk);border-radius:6px}.insights-heat-cell.is-logged{background:var(--streak)}.torn-archive{flex-direction:column;gap:8px;display:flex}.torn-stub{background:var(--paper-card);border:1px solid var(--chalk);border-radius:12px 12px 4px 4px;padding:10px 12px;-webkit-mask-image:linear-gradient(#000 0 80%,#0000);mask-image:linear-gradient(#000 0 80%,#0000)}.wardrobe-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.wardrobe-item{border:1px solid var(--chalk);text-align:left;border-radius:12px;min-height:72px;padding:10px}.wardrobe-item.is-owned{outline:2px solid var(--cobalt)}.mascot-overlay{pointer-events:none;z-index:40;position:fixed;inset:0}.mascot-host{pointer-events:auto;cursor:pointer;width:88px;height:88px;color:inherit;-webkit-tap-highlight-color:transparent;touch-action:manipulation;will-change:transform;background:0 0;border:0;border-radius:42%;padding:0;position:absolute;top:0;left:0;overflow:visible}.mascot-host:focus-visible{outline:3px solid var(--cobalt,#416ec3);outline-offset:5px}.mascot-host.is-user-busy .mascot-pose,.mascot-host.is-user-busy .momo-art *,.mascot-host.is-user-busy .mascot-thinking-dots i{animation-play-state:paused!important}.momo-art{filter:drop-shadow(0 7px 7px #3a2a2224);display:block;overflow:visible}.momo-raster-gesture-cues{fill:none;stroke:var(--coral,#ff7a50);stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;pointer-events:none}.momo-raster-wave-cues{animation:.45s ease-in-out 4 momo-raster-wave-cues}.momo-raster-look-cues{animation:1s ease-in-out 2 momo-raster-look-cues}.momo-raster-stretch-cues{animation:.7s ease-in-out 3 momo-raster-stretch-cues}.momo-raster-wander-cues{animation:.65s ease-in-out 2 momo-raster-wander-cues}.momo-raster-dance-cues{animation:.6s ease-in-out 4 momo-raster-dance-cues}.momo-raster-hop-cues{animation:.6s ease-out 2 momo-raster-hop-cues}.momo-raster-ponder-cues{animation:1.2s ease-in-out 2 momo-raster-ponder-cues}.momo-raster-bow-cues{animation:.8s ease-in-out 2 momo-raster-bow-cues}.momo-ground-shadow{fill:#3a2a22;opacity:.15;transform-origin:50px 99px;animation:3s ease-in-out infinite momo-shadow-breathe}.momo-body-group{transform-origin:50px 88px}.momo-outline{fill:none;stroke:#9f7548;stroke-width:1.8px;stroke-linejoin:round;opacity:.65}.momo-pleats,.momo-pleat-detail{fill:none;stroke:#c9975f;stroke-linecap:round;stroke-linejoin:round}.momo-pleats{stroke-width:3.2px}.momo-pleat-detail{stroke-width:1.6px;opacity:.7}.momo-highlight{fill:none;stroke:#fff;stroke-width:4px;stroke-linecap:round;opacity:.55}.momo-arm{fill:none;stroke:#d8aa73;stroke-width:8px;stroke-linecap:round;transform-box:fill-box;transform-origin:50%}.momo-wave-lines,.momo-celebration-sparks path{fill:none;stroke:var(--coral,#ff7a50);stroke-width:2.2px;stroke-linecap:round}.momo-celebration-sparks{fill:var(--cobalt,#416ec3)}.momo-blossom{fill:var(--coral,#ff7a50)}.momo-blossom-core{fill:#ffc85a}.momo-open-eyes{fill:#fffdf8;stroke:#3a2a22;stroke-width:1.8px}.momo-pupils{fill:#3a2a22;stroke:none}.momo-eye-glint{fill:#fff}.momo-lash,.momo-brow,.momo-mouth,.momo-sleepy-eyes path,.momo-blink-eyes path{fill:none;stroke:#3a2a22;stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round}.momo-lash{stroke-width:1.8px}.momo-brow{opacity:.72}.momo-mouth{stroke-width:3px}.momo-mouth-fill{fill:#7e493d}.momo-feet{fill:#c69057}.momo-art.pose-wave_at_user .momo-arm-left{animation:.42s ease-in-out 4 momo-arm-wave}.momo-art.pose-point_at_target .momo-arm-right,.momo-art.pose-glance_at_log .momo-arm-right{animation:.7s ease-in-out 2 momo-arm-point}.momo-art.pose-celebrate_big .momo-arm-left,.momo-art.pose-celebrate_big .momo-arm-right{animation:.48s ease-in-out 4 alternate momo-arm-cheer}.momo-art.mood-curious .momo-pupils{transform:translate(1.5px)}.momo-art.mood-sleepy .momo-body-group{transform:scaleY(.98)}.momo-art.is-thinking .momo-pupils{animation:1.25s ease-in-out infinite momo-think-gaze}.momo-thought-orbit{fill:var(--cobalt,#416ec3)}.momo-thought-orbit circle{transform-box:fill-box;transform-origin:50%;animation:1.2s ease-in-out infinite momo-thought-pop}.momo-thought-orbit circle:nth-child(2){animation-delay:.14s}.momo-thought-orbit circle:nth-child(3){animation-delay:.28s}@keyframes momo-shadow-breathe{50%{opacity:.1;transform:scaleX(.86)}}@keyframes momo-arm-wave{50%{translate:-2px -1px;rotate:-15deg}}@keyframes momo-arm-point{50%{translate:3px -2px}}@keyframes momo-arm-cheer{to{translate:0 -3px;rotate:5deg}}@keyframes momo-think-gaze{0%,to{transform:translate(-1px)}50%{transform:translate(2px,-2px)}}@keyframes momo-thought-pop{0%,to{opacity:.35;transform:scale(.75)}50%{opacity:1;transform:scale(1.12)}}@keyframes momo-raster-wave-cues{0%,to{opacity:.25;transform:translate(1px,2px)}50%{opacity:1;transform:translate(-1px,-1px)}}@keyframes momo-raster-look-cues{0%,to{opacity:.25}50%{opacity:1}}@keyframes momo-raster-stretch-cues{0%,to{opacity:.3;transform:translateY(2px)}50%{opacity:1;transform:translateY(-1px)}}@keyframes momo-raster-wander-cues{0%{opacity:0;transform:translate(5px)}50%{opacity:.85}to{opacity:0;transform:translate(-5px)}}@keyframes momo-raster-dance-cues{0%,to{opacity:.25;transform:translateY(2px)rotate(-2deg)}50%{opacity:1;transform:translateY(-3px)rotate(2deg)}}@keyframes momo-raster-hop-cues{0%,to{opacity:0;transform:scaleX(.8)}55%{opacity:1;transform:scaleX(1.08)}}@keyframes momo-raster-ponder-cues{0%,to{opacity:.35;transform:translateY(1px)}50%{opacity:1;transform:translateY(-2px)}}@keyframes momo-raster-bow-cues{0%,to{opacity:.25;transform:translateY(-2px)}50%{opacity:1;transform:translateY(2px)}}.mascot-pose{transform-origin:50% 85%;width:100%;height:100%}.mascot-pose.is-walking.walk-right{animation:.42s ease-in-out infinite mascot-walk-right!important}.mascot-pose.is-walking.walk-left{animation:.42s ease-in-out infinite mascot-walk-left!important}.mascot-host.is-static,.mascot-host.is-static .mascot-pose,.mascot-host.is-static .momo-art,.mascot-host.is-static .momo-art *,.mascot-host.is-static .mascot-quip,.mascot-host.is-static .mascot-thinking-dots i{transition:none!important;animation:none!important}.mascot-pose.pose-idle_breathe:not(.is-static){animation:3s ease-in-out infinite mascot-breathe}.mascot-pose.pose-celebrate_small:not(.is-static),.mascot-pose.pose-celebrate_big:not(.is-static){animation:1.2s mascot-pop}.mascot-pose.pose-sniff_plate:not(.is-static){animation:1.4s ease-in-out infinite mascot-sniff}.mascot-pose.pose-point_at_target:not(.is-static){animation:1.6s mascot-point}@keyframes mascot-glance{0%{transform:rotate(0)translate(0)}30%{transform:rotate(-7deg)translate(3px)}70%{transform:rotate(-7deg)translate(3px)}to{transform:rotate(0)translate(0)}}.mascot-pose.pose-glance_at_log:not(.is-static){animation:2.2s mascot-glance}.mascot-pose.pose-enter:not(.is-static){animation:.7s mascot-enter}.mascot-pose.pose-exit:not(.is-static){animation:.5s forwards mascot-exit}.mascot-pose.pose-wave_at_user:not(.is-static){animation:1.8s ease-in-out mascot-wave}.mascot-pose.pose-idle_blink:not(.is-static){animation:.4s mascot-blink}.mascot-pose.pose-look_around:not(.is-static){animation:2s ease-in-out mascot-look}.mascot-pose.pose-stretch:not(.is-static){animation:2.2s ease-in-out mascot-stretch}.mascot-pose.pose-check_ring:not(.is-static){animation:2.6s ease-in-out mascot-lean}.mascot-pose.pose-admire_streak:not(.is-static){animation:2.4s ease-in-out mascot-admire}.mascot-pose.pose-peek_last_entry:not(.is-static){animation:2.2s ease-in-out mascot-peek}.mascot-pose.pose-read_ticket:not(.is-static){animation:2.8s ease-in-out mascot-read}.mascot-pose.pose-wander:not(.is-static){animation:.9s ease-out mascot-arrive}.mascot-pose.pose-tiny_dance:not(.is-static){animation:2.4s ease-in-out mascot-tiny-dance}.mascot-pose.pose-happy_hop:not(.is-static){animation:1.2s cubic-bezier(.3,1.35,.5,1) mascot-happy-hop}.mascot-pose.pose-ponder:not(.is-static){animation:2.4s ease-in-out mascot-ponder}.mascot-pose.pose-bow:not(.is-static){animation:1.6s ease-in-out mascot-bow}.mascot-pose.pose-poke_wobble:not(.is-static){animation:.6s ease-in-out momo-wobble}.mascot-pose.pose-poke_hop:not(.is-static){animation:.55s cubic-bezier(.3,1.4,.5,1) momo-hop}.mascot-pose.pose-poke_squish:not(.is-static){animation:.55s cubic-bezier(.34,1.56,.64,1) momo-squish}.mascot-pose.pose-poke_spin:not(.is-static){animation:.7s cubic-bezier(.4,0,.3,1) momo-spin}.mascot-pose.pose-poke_puff:not(.is-static){animation:.6s cubic-bezier(.34,1.6,.5,1) momo-puff}.mascot-pose.pose-poke_dizzy:not(.is-static){animation:.9s ease-in-out momo-dizzy}.mascot-pose.pose-poke_tip:not(.is-static){animation:.8s cubic-bezier(.3,1.3,.5,1) momo-tip}.mascot-pose.pose-poke_hide:not(.is-static){animation:.85s cubic-bezier(.34,1.5,.5,1) momo-hide}@keyframes momo-wobble{0%,to{rotate:0deg}25%{rotate:-13deg}60%{rotate:10deg}85%{rotate:-4deg}}@keyframes momo-hop{0%{translate:0;scale:1}22%{translate:0 2px;scale:1.12 .88}55%{translate:0 -26px;scale:.92 1.12}to{translate:0;scale:1}}@keyframes momo-squish{0%{translate:0;scale:1}25%{translate:0 9px;scale:1.28 .7}60%{translate:0 -6px;scale:.9 1.14}to{translate:0;scale:1}}@keyframes momo-spin{0%{rotate:0deg;scale:1}45%{rotate:200deg;scale:.9}to{rotate:360deg;scale:1}}@keyframes momo-puff{0%{scale:1}40%{scale:1.26}70%{scale:.96}to{scale:1}}@keyframes momo-dizzy{0%,to{rotate:0deg}20%{rotate:-16deg}40%{rotate:14deg}60%{rotate:-10deg}80%{rotate:7deg}}@keyframes momo-tip{0%{rotate:0deg}35%{translate:0 4px;rotate:-72deg}70%{rotate:8deg}to{rotate:0deg}}@keyframes momo-hide{0%{translate:0;scale:1}35%{translate:0 30px;scale:.28}65%{translate:0 30px;scale:.28}to{translate:0;scale:1}}.mascot-quip{background:color-mix(in srgb, var(--surface,#fff) 94%, var(--cobalt,#416ec3) 6%);width:max-content;max-width:min(236px,100vw - 32px);color:var(--ink,#14213d);text-align:left;white-space:normal;cursor:pointer;border:1px solid #416ec324;border-radius:17px 17px 5px;margin:0;padding:10px 14px;font-size:12.5px;font-weight:650;line-height:1.4;animation:.3s cubic-bezier(.34,1.5,.64,1) quip-in;position:absolute;bottom:calc(100% + 10px);left:auto;right:-4px;box-shadow:0 10px 22px #14213d29,0 2px 4px #14213d14}.mascot-quip:after{content:"";border:7px solid #0000;border-top-color:color-mix(in srgb, var(--surface,#fff) 94%, var(--cobalt,#416ec3) 6%);border-right-width:2px;position:absolute;top:100%;right:14px}.mascot-host.is-on-left .mascot-quip{border-radius:17px 17px 17px 5px;left:-4px;right:auto}.mascot-host.is-on-left .mascot-quip:after{border-left-width:2px;border-right-width:7px;left:14px;right:auto}.mascot-host.bubble-below .mascot-quip{top:calc(100% + 10px);bottom:auto}.mascot-host.bubble-below .mascot-quip:after{border-top-color:#0000;border-bottom-color:color-mix(in srgb, var(--surface,#fff) 94%, var(--cobalt,#416ec3) 6%);top:auto;bottom:100%}.mascot-quip.is-thinking{text-align:center;min-width:54px}.mascot-thinking-dots{align-items:center;gap:4px;min-height:12px;display:inline-flex}.mascot-thinking-dots i{background:var(--cobalt,#416ec3);border-radius:50%;width:5px;height:5px;animation:.9s ease-in-out infinite momo-dot}.mascot-thinking-dots i:nth-child(2){animation-delay:.12s}.mascot-thinking-dots i:nth-child(3){animation-delay:.24s}@keyframes momo-dot{0%,to{opacity:.35;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}@keyframes quip-in{0%{opacity:0;transform:translateY(6px)scale(.92)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes mascot-breathe{50%{transform:translate3d(var(--mx,0), var(--my,0), 0) scale(1.04)}}@keyframes mascot-pop{30%{transform:scale(1.12)}to{transform:scale(1)}}@keyframes mascot-sniff{50%{transform:translateY(4px)rotate(-6deg)}}@keyframes mascot-point{40%{transform:translate(-8px)}}@keyframes mascot-enter{0%{opacity:0;transform:translateY(12px)}}@keyframes mascot-exit{to{opacity:0;transform:translateY(10px)scale(.94)}}@keyframes mascot-wave{20%{transform:rotate(-7deg)}40%{transform:rotate(4deg)}60%{transform:rotate(-5deg)}80%{transform:rotate(2deg)}}@keyframes mascot-blink{50%{transform:scaleY(.94)}}@keyframes mascot-look{25%{transform:translate(-5px)rotate(-5deg)}70%{transform:translate(5px)rotate(5deg)}}@keyframes mascot-stretch{35%{transform:translateY(-6px)scaleY(1.08)scaleX(.96)}70%{transform:translateY(2px)scaleY(.96)scaleX(1.04)}}@keyframes mascot-lean{30%{transform:translateY(3px)rotate(-8deg)}75%{transform:translateY(3px)rotate(-5deg)}}@keyframes mascot-admire{30%{transform:translateY(-5px)scale(1.06)}65%{transform:translateY(-2px)scale(1.03)}}@keyframes mascot-peek{30%{transform:translate(-6px)rotate(-10deg)}70%{transform:translate(-3px)rotate(-6deg)}}@keyframes mascot-read{25%{transform:translateY(4px)rotate(4deg)}60%{transform:translateY(4px)rotate(-4deg)}}@keyframes mascot-walk-right{0%,to{transform:translateY(0)rotate(-2deg)scaleX(1)}50%{transform:translateY(-5px)rotate(3deg)scaleX(1)}}@keyframes mascot-walk-left{0%,to{transform:translateY(0)rotate(2deg)scaleX(-1)}50%{transform:translateY(-5px)rotate(-3deg)scaleX(-1)}}@keyframes mascot-arrive{0%{transform:translateY(-3px)scale(.96)}45%{transform:translateY(2px)scale(1.04,.96)}to{transform:translateY(0)scale(1)}}@keyframes mascot-tiny-dance{0%,to{transform:translateY(0)rotate(0)}15%{transform:translateY(-5px)rotate(-9deg)}32%{transform:translateY(0)rotate(8deg)}49%{transform:translateY(-6px)rotate(-7deg)}66%{transform:translateY(0)rotate(9deg)}83%{transform:translateY(-4px)rotate(-4deg)}}@keyframes mascot-happy-hop{0%,to{transform:translateY(0)scale(1)}20%{transform:translateY(3px)scale(1.08,.92)}52%{transform:translateY(-24px)scale(.94,1.08)}78%{transform:translateY(1px)scale(1.04,.96)}}@keyframes mascot-ponder{0%,to{transform:translateY(0)rotate(0)}30%,72%{transform:translateY(2px)rotate(-8deg)}48%{transform:translateY(1px)rotate(-5deg)scale(1.02)}}@keyframes mascot-bow{0%,to{transform:translateY(0)rotate(0)scaleY(1)}38%,68%{transform:translateY(9px)rotate(8deg)scaleY(.88)}84%{transform:translateY(-2px)rotate(-2deg)scaleY(1.03)}}@media (prefers-reduced-motion:reduce){.mascot-host,.mascot-pose,.mascot-quip,.momo-art *,.mascot-thinking-dots i{animation:none!important}.momo-raster-gesture-cues{display:none}}.calorie-ring-svg{pointer-events:none}.calorie-ring-centre.is-actionable{cursor:pointer;font:inherit;color:inherit;background:linear-gradient(160deg, var(--clay-lift), var(--clay-base));box-shadow:var(--clay-e2);pointer-events:auto;border:none;border-radius:50%;gap:2px;padding:0;inset:16%}.calorie-ring-centre.is-actionable:focus-visible{outline:3px solid var(--on-track);outline-offset:3px}.calorie-ring-action{border-radius:var(--radius-pill);font-family:var(--display);font-size:var(--text-caption);color:var(--coral-text);background:var(--paper-deep);box-shadow:var(--clay-inset);align-items:center;margin-top:8px;padding:5px 12px;font-weight:600;display:inline-flex}.home-today-kicker{letter-spacing:.13em;color:var(--ink-mute);margin:0;font-size:.56rem;font-weight:800}.celebrate-momo{animation:.62s cubic-bezier(.34,1.56,.64,1) both celebrate-momo-in}@keyframes celebrate-momo-in{0%{opacity:0;transform:scale(.4)translateY(26px)}60%{opacity:1;transform:scale(1.12)translateY(-6px)}to{opacity:1;transform:scale(1)translateY(0)}}.celebrate-title{font-family:var(--display);animation:.46s cubic-bezier(.22,1,.36,1) .14s both celebrate-title-in}@keyframes celebrate-title-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.celebrate-stat{background:linear-gradient(160deg, var(--clay-lift), var(--clay-base));box-shadow:var(--clay-e2);border-radius:var(--clay-radius-md);border:none;animation:.42s cubic-bezier(.34,1.5,.64,1) both celebrate-stat-in}.celebrate-stat:first-child{animation-delay:.26s}.celebrate-stat:nth-child(2){animation-delay:.34s}@keyframes celebrate-stat-in{0%{opacity:0;transform:translateY(14px)scale(.94)}to{opacity:1;transform:none}}.celebrate-stat-value{font-family:var(--display)}.celebrate-burst{animation:.9s ease-out both celebrate-burst-in}@keyframes celebrate-burst-in{0%{opacity:0;transform:scale(.6)}40%{opacity:1;transform:scale(1.08)}to{opacity:.75;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.celebrate-momo,.celebrate-title,.celebrate-stat,.celebrate-burst{animation:none!important}}.log-search-hint{color:var(--ink-soft);margin:.625rem 0 1rem;font-size:.875rem;line-height:1.6}.manual-entry-form{flex-direction:column;gap:1.25rem;display:flex}.manual-entry-form .field{margin:0}.manual-entry-form .field label,#manual-meal-type{margin-bottom:.5rem;font-size:.875rem;display:block}.manual-entry-form input{min-height:48px;box-shadow:none;font-size:1rem}.manual-entry-form .review-grid{gap:.625rem}.manual-entry-form .review-grid input{width:100%;min-width:0}.manual-macro-hint{margin:.25rem 0 -.625rem;font-size:.875rem;font-weight:700}.manual-macro-hint span{color:var(--ink-soft);margin-left:.5rem;font-weight:400}.manual-entry-form .serving-row{flex-wrap:wrap;gap:.75rem;padding-block:.75rem}.manual-entry-form .serving-btn{min-width:44px;min-height:44px}.manual-entry-form .serving-label{font-size:1rem}.manual-entry-form .serving-hint{font-size:.875rem}.manual-summary{border:1px solid var(--rule-strong);background:var(--paper-card);border-radius:20px;padding:1rem 1.125rem}.manual-summary>div{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.manual-summary span{font-size:.875rem;font-weight:700}.manual-summary strong{font:500 1.5rem/1.3 var(--display)}.manual-summary p{color:var(--ink-soft);margin:.5rem 0 0;font-size:.875rem;line-height:1.6}.welcome-title>span{display:block}.setup-selected{border:1.5px solid var(--control-border);background:var(--paper-card);border-radius:50%;flex:0 0 24px;place-items:center;width:24px;height:24px;margin-left:auto;display:grid}.setup-optional{border:1px dashed var(--rule-strong);background:var(--paper);border-radius:12px;margin-bottom:8px;padding:0 12px}.setup-optional summary{cursor:pointer;min-height:44px;padding:14px 0;font-size:.875rem}.setup-optional summary span{color:var(--ink-soft);margin-left:6px;font-size:.75rem}.setup-refresh .onboarding-goal-card:nth-child(3){background:var(--fun-yellow)}.setup-refresh .onboarding-goal-card:nth-child(4){background:var(--fun-green)}.first-meal-methods{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 16px;display:grid}.first-meal-methods .k-method{text-align:left;cursor:pointer;width:100%;font:inherit}@media (width<=580px){.first-meal-methods{grid-template-columns:minmax(0,1fr)}}.insights-intro{color:var(--ink-soft);margin:.75rem 0 1.5rem;font-size:1rem;line-height:1.6}.saved-search-label{margin-bottom:.5rem;font-size:.875rem;font-weight:600;display:block}.saved-reset{min-height:44px;color:var(--coral-text);font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;padding:.5rem 0;font-size:.875rem;text-decoration:underline;display:inline-flex}.saved-portion-note{color:var(--ink-soft);margin:.375rem 0 0;font-size:.875rem}.saved-macro-summary{color:var(--ink-soft);margin:.625rem 0 0;font-size:.875rem;line-height:1.6}.saved-empty strong{color:var(--ink)}.saved-empty p{margin:.5rem 0}.insights-legend{color:var(--ink-soft);flex-wrap:wrap;gap:.75rem;margin-top:.75rem;font-size:.8125rem;display:flex}.insights-legend>span{align-items:center;gap:.375rem;display:inline-flex}.insights-legend i{background:var(--rule-strong);border-radius:3px;width:10px;height:10px}.insights-legend .is-logged{background:var(--coral-text)}.insights-legend .is-future{border:1px dashed var(--ink-soft);background:0 0}.insights-range-control{margin:1.75rem 0 1rem}.insights-range-control h2{font:600 1.25rem/1.4 var(--display);margin:0 0 .875rem}.insights-range-control .range-chips{gap:.5rem;padding:0}.insights-range-control .range-chip{min-height:48px;box-shadow:none;border:1px solid var(--rule-strong);flex:1;font-size:.875rem}.insights-range-control .range-chip.active{border:2px solid var(--coral-text);background:var(--coral-soft)}.insights-range-control p,.insights-chart-note{color:var(--ink-soft);margin:.75rem 0 0;font-size:.875rem;line-height:1.6}.insights-empty{border:1px dashed var(--rule-strong);color:var(--ink-soft);border-radius:12px;margin:.75rem 0 0;padding:1rem;font-size:1rem;line-height:1.6}.weight-log-sheet{max-height:90dvh;overflow-y:auto}.weight-log-sheet h2{font:600 1.5rem/1.3 var(--display)}.weight-log-sheet>p{color:var(--ink-soft);font-size:1rem;line-height:1.6}.weight-log-sheet input{min-height:52px;font-size:1rem}.you-unsaved-dot{border:1px solid var(--ink);background:var(--coral-hue);border-radius:50%;width:8px;height:8px}.app-shell{background:var(--paper)}.app-shell .app-main{padding-inline:var(--page-gutter)}.app-shell :is(.page-title,.screen-title){font:600 var(--page-heading-size)/1.1 var(--display);letter-spacing:-.025em}.app-shell :is(.page-sub,.log-intro,.insights-intro){color:var(--ink-soft)}.app-shell .page-heading{margin-bottom:var(--section-gap);padding:var(--page-gutter);border:var(--fun-outline);background:var(--paper-card);box-shadow:var(--shadow-card);border-radius:24px 24px 24px 6px}.app-shell .page-heading :is(.page-sub,.log-intro,.insights-intro){color:var(--ink);margin:10px 0 0}.app-shell :is(.card,.surface,.progress-card,.settings-card,.discover-card){background:var(--paper-card);border:var(--fun-outline);box-shadow:var(--shadow-card);border-radius:var(--card-radius)}.app-shell .bottom-nav-wrap{padding-inline:12px}.app-shell .bottom-nav{background:var(--paper-card);border:var(--fun-outline);box-shadow:0 5px 0 var(--shadow-ink);border-radius:24px;gap:4px;padding:8px 6px}.app-shell .nav-item-inner{border:2px solid #0000;border-radius:14px;gap:4px;min-height:52px;font-size:.875rem}.app-shell .nav-item{color:var(--ink-soft)}.app-shell .nav-item.active .nav-item-inner{background:var(--selection-soft);color:var(--selection);border-color:var(--selection);box-shadow:none}.app-shell .nav-fab{border:var(--fun-outline);background:var(--coral-hue);width:52px;height:52px;color:var(--on-brand);box-shadow:0 3px 0 var(--shadow-ink);border-radius:18px;flex-basis:52px;margin:0 2px}.app-shell .nav-fab.active{background:var(--coral-start)}.app-shell .nav-fab:active{box-shadow:0 1px 0 var(--shadow-ink)}.app-shell :is(button,a,summary):not(.pressable):focus-visible{outline:var(--focus-ring);outline-offset:4px}.mascot-say{font-family:var(--mascot-display)}.expression-momo .momo-outline{stroke:#6a3e2a;stroke-width:2px;opacity:1}.expression-momo .momo-happy-eyes,.expression-momo .momo-wink-eye{fill:none;stroke:#3a2a22;stroke-width:3px;stroke-linecap:round}.expression-momo .momo-happy-mouth{fill:#7e493d;stroke:#3a2a22;stroke-width:1.5px;stroke-linejoin:round}.momo-sticker{border:var(--fun-outline);background:var(--fun-yellow);width:96px;height:104px;box-shadow:3px 4px 0 var(--shadow-ink);pointer-events:none;border-radius:42% 42% 28% 28%;flex:0 0 96px;display:block;transform:rotate(6deg)}.momo-sticker .momo-art{filter:none}.momo-sticker .momo-art,.momo-sticker .momo-art *{transition:none!important;animation:none!important}.today-shortcut{border:var(--fun-outline);min-height:48px;color:var(--ink);background:var(--paper-card);text-align:center;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:10px;font-size:.875rem;font-weight:600;display:flex}.roast-preview{background:var(--fun-yellow);border:var(--fun-outline);border-radius:18px;margin:12px 0;padding:16px}.roast-preview-reply{align-items:center;gap:12px;margin-bottom:14px;display:flex}.roast-preview-momo{flex-shrink:0;width:72px;height:80px}.roast-preview-reply p{font-size:1rem;line-height:1.5}.roast-preview-hint{margin-top:10px;font-size:.875rem}.roast-preview[data-reduced-motion=true] .momo-art,.roast-preview[data-reduced-motion=true] .momo-art *{transition:none!important;animation:none!important}.habit-milestones{background:var(--fun-green);border:var(--fun-outline);box-shadow:var(--shadow-card);border-radius:22px;margin-bottom:8px;padding:20px}.habit-heading{align-items:center;gap:12px;display:flex}.habit-heading h2{font:600 1.4rem/1.2 var(--display)}.habit-heading p{margin-top:5px;font-size:.875rem}.habit-emblem{background:var(--paper-card);border:var(--fun-outline);border-radius:14px;flex-shrink:0;place-items:center;width:48px;height:48px;display:grid;transform:rotate(-6deg)}.habit-path{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:22px 0 16px;padding:0;list-style:none;display:grid}.habit-path li{text-align:center;flex-direction:column;align-items:center;gap:8px;font-size:.875rem;display:flex}.habit-node{border:2px dashed var(--ink);background:var(--paper-card);border-radius:50%;place-items:center;width:42px;height:42px;font-weight:700;display:grid}.is-achieved .habit-node{background:var(--fun-yellow);box-shadow:0 3px 0 var(--shadow-ink);border-style:solid}.habit-footnote{font-size:.875rem;line-height:1.5}@media (width<=370px){.today-shortcut{gap:5px;padding-inline:6px}.habit-milestones{padding:14px}}.portion-sheet{overscroll-behavior:contain;max-height:calc(100dvh - 32px);padding-bottom:max(24px, env(safe-area-inset-bottom));overflow-y:auto}.portion-option{border:var(--fun-outline);background:var(--paper-card);border-radius:16px;min-height:82px}.portion-option.is-default{background:var(--selection-soft);border-color:var(--selection);box-shadow:0 3px 0 var(--shadow-ink)}.portion-kcal{font-size:.875rem}.portion-close{min-width:44px;min-height:44px}.cloud-sync-banner{background:var(--fun-blue);color:var(--ink);border-bottom:var(--fun-outline);flex-wrap:wrap;align-items:center;gap:10px;padding:12px 16px;font-size:.875rem;display:flex}.cloud-sync-banner>span{overflow-wrap:anywhere;flex:1;min-width:180px}.cloud-sync-banner button{border:var(--fun-outline);background:var(--paper-card);border-radius:10px;min-height:44px;padding:8px 12px}.toast{border:var(--fun-outline);background:var(--fun-green);color:var(--ink);box-shadow:3px 4px 0 var(--shadow-ink);border-radius:16px}.toast.toast-error{background:var(--fun-pink)}.toast.toast-info{background:var(--fun-blue)}.toast-msg{overflow-wrap:anywhere;font-size:1rem}.toast:not(.toast-error) .toast-msg{font-size:.875rem}.toast-action-btn,.toast-x{min-width:44px;min-height:44px;color:var(--ink);flex-shrink:0}.toast-action-btn{background:var(--paper-card);border:var(--fun-outline);border-radius:10px;padding:8px 12px;font-weight:700}.toast :is(button):focus-visible{outline:3px solid var(--ink);outline-offset:3px}@media (width<=360px){.portion-options{grid-template-columns:repeat(2,minmax(0,1fr))}}.insights-range-control .range-chip.active{background:var(--selection-soft);color:var(--selection);border:var(--fun-outline);border-color:var(--selection);box-shadow:0 2px 0 var(--shadow-ink)}.saved-refresh .discover-card:nth-child(3n+1) .discover-card-emoji{background:var(--fun-blue)}.saved-refresh .discover-card:nth-child(3n+2) .discover-card-emoji{background:var(--fun-pink)}.saved-refresh .discover-card:nth-child(3n) .discover-card-emoji{background:var(--fun-yellow)}.insights-range-control .range-chips{padding-bottom:4px}.you-refresh .settings-goal-card:nth-child(2){background:var(--fun-blue)}.you-refresh .settings-goal-card:nth-child(3){background:var(--fun-yellow)}.you-refresh .settings-goal-card:nth-child(4){background:var(--fun-green)}.auth-fields{border:0;min-width:0;margin:0;padding:0}.auth-password-tools{color:var(--ink-soft);flex-wrap:wrap;align-items:center;gap:4px 10px;font-size:.875rem;display:flex}.auth-show-password{min-height:44px;color:var(--ink);text-underline-offset:3px;margin-left:auto;font-weight:600;text-decoration:underline}@media (hover:hover){.app-shell .nav-item:not(.active):hover .nav-item-inner{background:var(--selection-soft);color:var(--selection)}}@media (width<=350px){.app-shell .app-main{padding-inline:14px}.app-shell .bottom-nav-wrap{padding-inline:8px}.app-shell .bottom-nav{gap:0;padding-inline:4px}.app-shell .nav-fab{flex-basis:48px;width:48px;height:48px;margin-inline:0}}@media (width>=768px){.app-shell:not(.setup-refresh){border-inline:var(--fun-outline)}}.pressable{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;min-width:0;max-width:100%;padding:0;font-family:inherit;display:inline-block;position:relative}.pressable.is-full{width:100%;display:block}.pressable-shadow{display:none}.pressable-face{justify-content:center;align-items:center;gap:var(--space-sm);min-height:var(--action-height);padding:.75rem var(--button-padding-inline,1.25rem);border:var(--fun-outline);border-radius:var(--action-radius);font:600 var(--button-font-size,1.125rem)/1.3 var(--display);letter-spacing:0;text-align:center;overflow-wrap:anywhere;transition:transform var(--motion-press) ease, box-shadow var(--motion-press) ease, background-color .16s ease;display:flex}.pressable-primary .pressable-face{background:var(--coral-hue);color:var(--on-brand);border-color:var(--coral-deep);box-shadow:0 4px 0 var(--coral-deep)}.pressable-secondary .pressable-face{background:var(--paper-card);color:var(--ink);border-color:var(--control-border);box-shadow:0 3px 0 var(--shadow-ink)}.pressable-ghost .pressable-face{background:var(--paper-card);color:var(--ink);box-shadow:none}.pressable-destructive .pressable-face{background:var(--danger);color:var(--on-danger);box-shadow:0 4px 0 var(--danger-deep)}.pressable:not(:disabled):not([aria-disabled=true]):is(.is-pressed,:active) .pressable-face{box-shadow:0 1px 0 var(--shadow-ink);transform:translateY(3px)}.pressable-ghost:not(:disabled):not([aria-disabled=true]):active .pressable-face{box-shadow:none}.pressable:focus-visible{outline:none}.pressable:focus-visible .pressable-face{outline:var(--focus-ring);outline-offset:4px}.pressable:is(:disabled,[aria-disabled=true]){opacity:1;cursor:not-allowed}.pressable:is(:disabled,[aria-disabled=true]) .pressable-face{background:var(--disabled-fill);color:var(--ink-soft);border-color:var(--ink-soft);box-shadow:none;transform:none}.pressable:hover{text-decoration:none}@media (hover:hover) and (prefers-reduced-motion:no-preference){.pressable:not(:disabled):not([aria-disabled=true]):hover .pressable-face{transform:translateY(-1px)}.pressable:not(:disabled):not([aria-disabled=true]):active .pressable-face{transform:translateY(3px)}}@media (prefers-reduced-motion:reduce){.pressable-face{transition:none}}:is(.app-shell,.login-page) :is(.field input,.field select,.field textarea,.settings-input,.settings-select,.settings-textarea,.log-search-input,.text-log-input,.chat-input,.clay-input){min-width:0;max-width:100%;min-height:var(--control-height);background:var(--paper-card);color:var(--ink);border:1.5px solid var(--control-border);border-radius:var(--control-radius);box-shadow:none;font-size:var(--text-body);padding:.75rem .875rem;line-height:1.5;transition:background-color .16s,border-color .16s}:is(.app-shell,.login-page) :is(input,textarea)::placeholder{color:var(--ink-mute);opacity:1}:is(.app-shell,.login-page) .field label{color:var(--ink);font-size:var(--text-label);letter-spacing:0;text-transform:none;margin-bottom:var(--space-sm);font-weight:700;display:block}:is(.app-shell,.login-page) :is(input,select,textarea):not([type=checkbox]):not([type=radio]):focus{outline:var(--focus-ring);outline-offset:3px;box-shadow:none}:is(.app-shell,.login-page) :is(input,select,textarea)[aria-invalid=true]{border-color:var(--danger-text)}:is(.app-shell,.login-page) :is(input,select,textarea):disabled{background:var(--disabled-fill);color:var(--ink-soft);cursor:not-allowed}.flow-number-wrap input{appearance:textfield}.flow-number-wrap input::-webkit-inner-spin-button{appearance:none;margin:0}.flow-number-wrap input::-webkit-outer-spin-button{appearance:none;margin:0}.ui-icon{vertical-align:middle;transform-origin:50%;flex-shrink:0}.ui-icon.is-active{stroke-width:2.6px}@keyframes icon-pop{0%,to{transform:scale(1)}45%{transform:scale(1.18)}}@keyframes icon-tilt{0%,to{transform:rotate(0)}30%{transform:rotate(-12deg)}65%{transform:rotate(9deg)}}@keyframes icon-nudge{0%,to{transform:translate(0)}50%{transform:translate(3px)}}@keyframes icon-draw{0%{stroke-dasharray:32;stroke-dashoffset:32px}to{stroke-dasharray:32;stroke-dashoffset:0}}@media (prefers-reduced-motion:no-preference){:is(button,a):is(:focus-visible,:active) .ui-icon-pop{animation:.36s ease-out icon-pop}:is(button,a):is(:focus-visible,:active) .ui-icon-tilt{animation:.42s ease-out icon-tilt}:is(button,a):is(:focus-visible,:active) .ui-icon-nudge{animation:.36s ease-out icon-nudge}:is(button,a):is(:focus-visible,:active) .ui-icon-draw>:is(path,polyline,line){animation:.42s ease-out icon-draw}}@media (hover:hover) and (prefers-reduced-motion:no-preference){:is(button,a):hover .ui-icon-pop{animation:.36s ease-out icon-pop}:is(button,a):hover .ui-icon-tilt{animation:.42s ease-out icon-tilt}:is(button,a):hover .ui-icon-nudge{animation:.36s ease-out icon-nudge}:is(button,a):hover .ui-icon-draw>:is(path,polyline,line){animation:.42s ease-out icon-draw}}.appearance-control{min-width:0;max-width:100%;color:var(--ink);border:0;margin:0;padding:0}.appearance-legend{margin-bottom:.65rem;padding:0;font-size:.95rem;font-weight:800}.appearance-options{border:1px solid var(--rule-strong);background:var(--paper-card);box-shadow:var(--shadow-sm);border-radius:1rem;flex-wrap:wrap;gap:.25rem;padding:.25rem;display:flex}.appearance-option{cursor:pointer;flex:5.75rem;min-width:0;display:flex;position:relative}.appearance-option>input{z-index:1;opacity:0;cursor:pointer;width:100%;height:100%;margin:0;padding:0;position:absolute;inset:0}.appearance-option-face{width:100%;min-height:44px;color:var(--ink-soft);border-radius:.75rem;justify-content:center;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.85rem;font-weight:750;line-height:1.3;transition:background-color .16s,color .16s,transform .16s;display:flex}.appearance-option-face>svg{flex-shrink:0}.appearance-option>input:checked+.appearance-option-face{color:var(--on-selection);background:var(--selection)}.appearance-option>input:focus-visible+.appearance-option-face{outline:var(--focus-ring);outline-offset:3px}.appearance-option>input:active+.appearance-option-face{transform:scale(.95)}.appearance-control-compact{flex:none}.appearance-control-compact .appearance-options{gap:0;padding:0}.appearance-control-compact .appearance-option{flex:0 0 44px}.appearance-control-compact .appearance-option-face{width:44px;padding:.5rem}.appearance-header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.75rem;min-width:0;display:flex}.appearance-settings{border:1px solid var(--rule-strong);background:var(--paper-card);border-radius:1.25rem;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem 1.5rem;margin-block:1rem 1.5rem;padding:1rem;display:flex}.appearance-settings-copy{flex:12rem}.appearance-settings-copy h2{color:var(--ink);margin:0 0 .3rem;font-size:1rem}.appearance-settings-copy p{color:var(--ink-soft);margin:0;font-size:.85rem;line-height:1.5}.appearance-settings .appearance-control{flex:19rem}@media (hover:hover) and (pointer:fine){.appearance-option:hover .appearance-option-face{transform:translateY(-1px)}.appearance-option:hover input:not(:checked)+.appearance-option-face{background:var(--selection-soft);color:var(--ink)}}@media (width<=560px){.appearance-settings{padding:.9rem}}@media (prefers-reduced-motion:reduce){.appearance-option-face{transition:none}.appearance-option:hover .appearance-option-face,.appearance-option>input:active+.appearance-option-face{transform:none}}@media (forced-colors:active){.appearance-option>input:checked+.appearance-option-face{outline-offset:-3px;outline:2px solid highlight}.appearance-option>input:focus-visible+.appearance-option-face{outline-color:highlight}}:root[data-theme=dark] body,:root[data-theme=dark] .app-shell{background:var(--paper)}:root[data-theme=dark] .app-shell :is(.page-heading,.card,.surface,.progress-card,.settings-card,.discover-card){border-color:var(--edge-ink);box-shadow:var(--shadow-card)}:root[data-theme=dark] .app-shell .bottom-nav{background:var(--paper-raised);border-color:var(--edge-ink);box-shadow:0 10px 30px #00000047}:root[data-theme=dark] .app-shell .bottom-nav .nav-item.active{box-shadow:none;background:0 0}:root[data-theme=dark] .app-shell .nav-item.active .nav-item-inner{background:var(--selection-soft);border-color:var(--selection);color:var(--selection);box-shadow:none}:root[data-theme=dark] .app-shell .nav-fab{background:linear-gradient(160deg, var(--coral-start), var(--coral-hue));border-color:var(--coral-deep);box-shadow:0 4px 0 var(--shadow-ink), 0 10px 20px #00000038}:root[data-theme=dark] .habit-milestones{box-shadow:0 3px 0 var(--shadow-ink), 0 10px 22px #0000001a}:root[data-theme=dark] .roast-preview{background:var(--paper-raised);border-color:var(--edge-ink)}:root[data-theme=dark] .momo-sticker{background:var(--apricot);box-shadow:none;border-color:#0000}:root[data-theme=dark] .flow-calories,:root[data-theme=dark] .flow-macro,:root[data-theme=dark] .meal-flow .flow-review-summary{background:var(--paper-raised);border-color:var(--edge-ink);box-shadow:var(--shadow-sm)}:root[data-theme=dark] .setup-refresh .onboarding-goal-card:nth-child(2),:root[data-theme=dark] .you-refresh .settings-goal-card:nth-child(2){border-top:3px solid var(--protein)}:root[data-theme=dark] .setup-refresh .onboarding-goal-card:nth-child(3),:root[data-theme=dark] .you-refresh .settings-goal-card:nth-child(3){border-top:3px solid var(--carbs)}:root[data-theme=dark] .setup-refresh .onboarding-goal-card:nth-child(4),:root[data-theme=dark] .you-refresh .settings-goal-card:nth-child(4){border-top:3px solid var(--fat)}:root[data-theme=dark] :is(input,select,textarea):not([type=checkbox]):not([type=radio]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;caret-color:var(--coral-hue)}:root[data-theme=dark] .date-modal,:root[data-theme=dark] .modal-sheet,:root[data-theme=dark] .portion-sheet,:root[data-theme=dark] .activity-sheet,:root[data-theme=dark] .levelup-card{background:var(--paper-float);border-color:var(--edge-ink);box-shadow:0 4px 0 var(--shadow-ink), 0 22px 50px #0000004d}:root[data-theme=dark] .date-modal-today-btn:hover{background:color-mix(in srgb, var(--coral-hue) 22%, transparent)}:root[data-theme=dark] .toast-action-btn,:root[data-theme=dark] .toast-x{background:color-mix(in srgb, currentColor 12%, transparent);border-color:color-mix(in srgb, currentColor 45%, transparent)}:root[data-theme=dark] .toast-action-btn:hover,:root[data-theme=dark] .toast-x:hover{background:color-mix(in srgb, currentColor 22%, transparent)}@media (prefers-reduced-motion:reduce){:root[data-theme=dark] body{background:var(--paper)}}.welcome-title>span:last-child{color:var(--neo-coral)}.setup-refresh .onboarding-goal-card:nth-child(3),.setup-refresh .onboarding-goal-card:nth-child(4){border-radius:10px}.setup-optional{border:3px dashed var(--neo-line);border-radius:10px}.food-club-momo{z-index:1;place-items:center;width:184px;height:206px;display:grid;position:relative}.food-club-fallback{color:#20221d}.food-club-bubble-wrap{max-width:100%;margin:26px 0 0;position:relative}.auth-tab-label{position:relative}:root .food-club-auth.auth-refresh .auth-password-meter-bar:nth-child(4).is-on{background:var(--club-green-text)}@media (width<=899px){.food-club-momo{width:122px;height:138px}.food-club-bubble-wrap{margin-top:16px}}@media (width<=370px){.food-club-momo{width:102px;height:118px}}:root .app-shell.food-club-app.saved-refresh .discover-card:nth-child(3n+2){border-top-color:var(--club-pink)}:root .app-shell.food-club-app.saved-refresh .discover-card:nth-child(3n){border-top-color:var(--club-lemon)}:root .app-shell.food-club-app.you-refresh .settings-goal-card:first-child{border-top:6px solid var(--club-tomato)}:root .app-shell.food-club-app.you-refresh .settings-goal-card:nth-child(2){border-top:6px solid var(--club-mint)}:root .app-shell.food-club-app.you-refresh .settings-goal-card:nth-child(3){border-top:6px solid var(--club-lemon)}:root .app-shell.food-club-app.you-refresh .settings-goal-card:nth-child(4){border-top:6px solid var(--club-pink)}:root .app-shell.food-club-app.coach-shell .starter-chip:nth-child(2){background:var(--club-mint)}:root .app-shell.food-club-app.coach-shell .starter-chip:nth-child(3){background:var(--club-pink)}.poiem-logo{vertical-align:middle;flex:none;display:inline-block;overflow:visible}.poiem-logo--wordmark{width:126px;height:auto;color:var(--ink)}.poiem-logo-letter{fill:currentColor}.poiem-logo-spark,.poiem-logo-tile{fill:var(--poiem-persimmon)}.poiem-logo--mark{width:48px;height:48px;color:var(--poiem-ink)}:root .welcome-brand{flex-shrink:0;align-items:center;line-height:1;text-decoration:none;display:inline-flex}.welcome-brand .poiem-logo{width:clamp(112px,15vw,145px)}.welcome-brand:focus-visible{outline:3px solid var(--selection);outline-offset:8px;border-radius:4px}.splash-wordmark .poiem-logo{width:190px}.splash-ring-wrap .poiem-logo--mark{width:72px;height:72px;position:absolute;inset:28px}.poiem-section-label{color:var(--ink-mute);font:700 .625rem/1.5 var(--sans);letter-spacing:.08em;text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:8px 10px;margin-bottom:14px;display:flex}.poiem-section-label .poiem-logo{width:66px;color:var(--ink)}.poiem-section-divider{opacity:.4;background:currentColor;width:1px;height:14px}.poiem-settings-finder{margin:12px 0 24px;position:relative}.poiem-search-field{background:var(--paper-card);min-height:52px;color:var(--ink-mute);border:2px solid var(--club-line);border-radius:10px;align-items:center;gap:12px;padding:0 48px 0 16px;display:flex}.poiem-search-field>svg{flex:none}.poiem-search-field:focus-within{border-color:var(--selection);outline:3px solid var(--selection-soft);outline-offset:3px}.poiem-search-field input::placeholder{color:var(--ink-mute);opacity:1}.poiem-search-field input::-webkit-search-cancel-button{-webkit-appearance:none}.poiem-search-clear{width:44px;height:44px;color:var(--ink-mute);background:0 0;border:0;border-radius:7px;place-items:center;display:grid;position:absolute;top:4px;right:4px}.poiem-search-clear:hover{color:var(--selection);background:var(--selection-soft)}.poiem-settings-results{border:1px solid var(--rule-strong);background:var(--paper-card);border-radius:10px;max-height:320px;margin-top:10px;padding:6px;overflow-y:auto}.poiem-search-status{color:var(--ink-mute);margin:8px 10px;font-size:.8125rem;line-height:1.5}.poiem-settings-results ul{margin:0;padding:0;list-style:none}.poiem-settings-results a{min-height:60px;color:var(--ink);border-radius:6px;justify-content:space-between;align-items:center;gap:16px;padding:12px;text-decoration:none;display:flex}.poiem-settings-results a>svg{color:var(--selection);flex:none}.poiem-settings-results strong{font-size:.9375rem;display:block}.poiem-settings-results small{color:var(--ink-mute);margin-top:4px;font-size:.8125rem;display:block}.poiem-settings-results a:is(:hover,:focus-visible){background:var(--selection-soft)}@media (hover:hover) and (prefers-reduced-motion:no-preference){.poiem-settings-results a>svg{transition:transform .16s}.poiem-settings-results a:hover>svg{transform:translate(2px,-2px)}}@media (prefers-reduced-motion:no-preference){.poiem-search-field{transition:border-color .16s,outline-color .16s}}@media (width<=380px){.welcome-brand .poiem-logo{width:104px}}.food-sticker{color:#23221f;background:var(--club-lemon,#f8e66a);width:44px;height:44px;box-shadow:3px 3px 0 var(--club-shadow,#23221f);border:2px solid #23221f;border-radius:12px;place-items:center;display:inline-grid}.food-sticker-sprout{background:var(--club-mint,#bce6c4)}.food-sticker-spark{background:var(--club-pink,#f2bed2);transform:rotate(8deg)}.food-sticker-camera{background:var(--club-blue,#4357ce);color:#fff8e9}.food-sticker-meal{background:var(--club-input,#f8f5ed)}.momo-bubble{background:var(--club-card,#fffefa);color:var(--club-ink,#23221f);box-shadow:3px 3px 0 var(--club-shadow,#23221f);font:500 1rem/1.4 var(--display,sans-serif);border:2px solid #23221f;border-radius:7px 16px 16px;margin:0;padding:12px 15px;position:relative}.momo-bubble:after{content:"";background:inherit;border-bottom:2px solid #23221f;border-right:2px solid #23221f;width:14px;height:14px;position:absolute;bottom:-9px;left:12px;transform:rotate(45deg)}.neo-card{background:var(--club-card,#fffefa);color:var(--club-ink,#23221f);border:3px solid var(--club-line,#23221f);box-shadow:5px 5px 0 var(--club-shadow,#23221f);border-radius:15px 20px 12px 18px}.progress-recipe{border:2px solid var(--club-line,#23221f);background:var(--club-card,#fffefa);border-radius:7px;flex:1;width:100%;height:13px;position:relative;overflow:hidden;box-shadow:inset 0 2px #0000001a}.progress-recipe-fill{background:var(--club-tomato,#ff754f);height:100%;transition:width .28s cubic-bezier(.22,1,.36,1);display:block}.progress-recipe-stops{display:grid;position:absolute;inset:0}.progress-recipe-stops i:not(:last-child){border-right:2px solid var(--club-card,#fffefa)}@media (prefers-reduced-motion:reduce){.progress-recipe-fill{transition:none}}}@layer system{:root{--k-ground:#fff8eb;--k-card:#fffdf7;--k-sunken:#f3ebdb;--k-ink:#20221d;--k-muted:#5a564c;--k-line:#20221d;--k-hair:#20221d24;--k-hair-strong:#20221d57;--k-acid:#e7f258;--k-on-acid:#20221d;--k-action:#ff8055;--k-on-action:#20221d;--k-over-fill:#ff8055;--k-danger-soft:#ffe4e9;--k-danger-ink:#a8283a;--k-action-deep:#f0663a;--k-butter:#ffe58a;--k-peach:#ffd2b8;--k-pink:#f7c6d9;--k-sky:#bfe6ff;--k-mint:#c4eed8;--k-sky-strong:#4fb0e8;--k-momo:#efb6cc;--k-on-tone:#20221d;--k-sticker-butter:#ffe58a;--k-sticker-peach:#ffd2b8;--k-sticker-pink:#f7c6d9;--k-sticker-sky:#bfe6ff;--k-sticker-mint:#c4eed8;--k-sticker-ink:#20221d;--k-switch-on-track:#20221d;--k-switch-on-knob:#e7f258;--k-focus:#20221d;--k-shadow-color:#20221d;--k-shadow-sm:3px 3px 0 var(--k-shadow-color);--k-shadow:4px 4px 0 var(--k-shadow-color);--k-scrim:#1414127a;--k-font-display:"Barlow Condensed", Impact, "Arial Narrow", system-ui, sans-serif;--k-font-body:"Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--k-font-mono:"IBM Plex Mono", ui-monospace, Menlo, Consolas, monospace;--k-text-xs:.75rem;--k-text-sm:.875rem;--k-text-md:1rem;--k-text-lg:1.125rem;--k-space-1:4px;--k-space-2:8px;--k-space-3:12px;--k-space-4:16px;--k-space-5:20px;--k-space-6:24px;--k-space-7:32px;--k-space-8:40px;--k-radius-tile:8px;--k-radius-sheet:18px;--k-press:90ms;--k-ease:cubic-bezier(.2, .8, .2, 1);--k-shell:480px;--k-gutter:20px;--k-tabbar-h:88px;--k-z-nav:100;--k-z-sheet:900;--k-z-toast:800}:root[data-theme=dark]{--k-switch-on-track:#e7f258;--k-switch-on-knob:#20221d;--k-ground:#191b1a;--k-card:#242723;--k-sunken:#1e201e;--k-ink:#f8f1e4;--k-muted:#c9c2b4;--k-line:#a5a795;--k-hair:#f8f1e41f;--k-hair-strong:#f8f1e44d;--k-action:#ff996f;--k-on-action:#181b20;--k-over-fill:#ff996f;--k-danger-soft:#3e2930;--k-danger-ink:#ffa5b0;--k-butter:#4a4122;--k-peach:#4b3527;--k-pink:#4a2f3c;--k-sky:#223b4d;--k-mint:#243f31;--k-sky-strong:#6cc3f2;--k-sticker-butter:#ffe58a;--k-sticker-peach:#ffd2b8;--k-sticker-pink:#f7c6d9;--k-sticker-sky:#7ec8f5;--k-sticker-mint:#8fdfb6;--k-sticker-ink:#20221d;--k-on-tone:#f8f1e4;--k-focus:#e7f258;--k-shadow-color:#080a08;--k-scrim:#0000009e}body{background:var(--k-ground);color:var(--k-ink)}.pressable{min-width:0;max-width:100%;color:inherit;font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;padding:0;display:inline-block;position:relative}.pressable.is-full{width:100%;display:block}.pressable-shadow{display:none}.pressable-face{justify-content:center;align-items:center;gap:var(--k-space-2);min-height:var(--action-height,3.375rem);padding:0 var(--button-padding-inline,1.25rem);border:2px solid var(--k-line);background:var(--k-card);color:var(--k-ink);box-shadow:var(--k-shadow-sm);font:800 var(--button-font-size,1rem)/1.25 var(--k-font-body);letter-spacing:0;text-transform:none;text-align:center;overflow-wrap:anywhere;transition:transform var(--k-press) ease, box-shadow var(--k-press) ease, background-color .16s ease;border-radius:0;display:flex}.pressable-primary .pressable-face{background:var(--k-action);color:var(--k-on-action)}.pressable-secondary .pressable-face{background:var(--k-card);color:var(--k-ink)}.pressable-ghost .pressable-face{color:var(--k-ink);box-shadow:none;background:0 0}.pressable-destructive .pressable-face{background:var(--k-danger-soft);color:var(--k-danger-ink);border-color:var(--k-danger-ink);box-shadow:none}.pressable:not(:disabled):not([aria-disabled=true]):is(.is-pressed,:active) .pressable-face{box-shadow:none;transform:translate(2px,2px)}.pressable:hover{text-decoration:none}.pressable:focus-visible{outline:none}.pressable:focus-visible .pressable-face{outline:3px solid var(--k-focus);outline-offset:3px}.pressable:is(:disabled,[aria-disabled=true]){cursor:not-allowed;opacity:1}.pressable:is(:disabled,[aria-disabled=true]) .pressable-face{background:var(--k-sunken);color:var(--k-muted);border-color:var(--k-hair-strong);box-shadow:none;transform:none}.toggle{width:60px}.toggle-track{border:2px solid var(--k-line);background:var(--k-card);width:52px;height:30px;box-shadow:none;border-radius:0;align-items:center;padding:3px;transition:background-color .16s;display:flex}.toggle-knob{background:var(--k-ink);width:20px;height:20px;box-shadow:none;transition:transform .16s var(--k-ease), background-color .16s ease;border-radius:0}.toggle.is-on .toggle-track{background:var(--k-switch-on-track)}.toggle.is-on .toggle-knob{background:var(--k-switch-on-knob);transform:translate(22px)}.radio-dot-ring{border:2px solid var(--k-line);background:var(--k-card);width:26px;height:26px;box-shadow:none;border-radius:50%;place-items:center;display:grid}.radio-dot-fill{background:var(--k-ink);border-radius:50%;width:12px;height:12px}.toggle-input:focus-visible~:is(.toggle-track,.radio-dot-ring){outline:3px solid var(--k-focus);outline-offset:3px}.toast-stack{bottom:calc(var(--k-tabbar-h) + var(--safe-bottom,0px) + 8px);width:calc(100% - 24px);max-width:456px;z-index:var(--k-z-toast)}.toast,.toast-success,.toast-info,.toast-error{gap:var(--k-space-2);border:2px solid var(--k-line);background:var(--k-ink);color:var(--k-ground);box-shadow:var(--k-shadow-sm);font:600 var(--k-text-sm)/1.4 var(--k-font-body);border-radius:0;padding:6px 6px 6px 14px}.toast-error{box-shadow:3px 3px 0 var(--k-action)}.toast-action-btn{min-height:44px;color:inherit;font:800 var(--k-text-sm)/1 var(--k-font-body);background:0 0;border:2px solid;border-radius:0;padding:0 14px}.toast-action-btn:hover{background:color-mix(in srgb, currentColor 14%, transparent)}.toast-x{min-width:44px;min-height:44px;color:inherit;background:0 0;border:0;border-radius:0}.toast-x:hover{background:color-mix(in srgb, currentColor 14%, transparent)}.toast :is(.toast-action-btn,.toast-x):focus-visible{outline:3px solid var(--k-acid);outline-offset:2px}.bottom-nav-wrap{max-width:var(--k-shell);padding:0 12px calc(10px + var(--safe-bottom,0px));z-index:var(--k-z-nav)}.bottom-nav{border:2px solid var(--k-line);background:var(--k-card);min-height:64px;box-shadow:var(--k-shadow);border-radius:0;grid-template-columns:repeat(5,minmax(0,1fr));align-items:center;gap:4px;padding:6px;display:grid}.bottom-nav .nav-item{box-shadow:none;color:var(--k-muted);background:0 0;border-radius:0;margin:0}.bottom-nav .nav-item-inner{min-height:48px;color:inherit;box-shadow:none;font:700 11px/1.1 var(--k-font-body);background:0 0;border:2px solid #0000;border-radius:0;gap:3px;padding:4px 2px}.bottom-nav .nav-item span{font-family:var(--k-font-body);font-weight:700}.bottom-nav .nav-item.active{color:var(--k-ground);box-shadow:none;background:0 0}.bottom-nav .nav-item.active .nav-item-inner{border-color:var(--k-ink);background:var(--k-ink);color:var(--k-ground);box-shadow:none}.bottom-nav .nav-item:focus-visible{outline:none}.bottom-nav .nav-item:focus-visible .nav-item-inner{outline:3px solid var(--k-focus);outline-offset:2px}.bottom-nav .nav-fab{width:58px;height:58px;color:var(--k-on-action);box-shadow:none;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:0;flex:none;justify-self:center;place-items:center;margin:-20px 0 0;padding:0;display:grid;position:relative;transform:none}.bottom-nav .nav-fab-face{border:2px solid var(--k-on-action);background:var(--k-action);width:58px;height:58px;color:var(--k-on-action);box-shadow:4px 4px 0 var(--k-shadow-color);transition:rotate .24s cubic-bezier(.3, 1.6, .5, 1), translate var(--k-press) ease, scale var(--k-press) ease, box-shadow var(--k-press) ease, background-color .16s ease;place-items:center;display:grid;rotate:-6deg}.bottom-nav .nav-fab-face svg{stroke-width:3px;transition:rotate .28s cubic-bezier(.3,1.6,.5,1)}.bottom-nav .nav-fab:hover .nav-fab-face{rotate:0deg}.bottom-nav .nav-fab:hover .nav-fab-face svg{rotate:90deg}.bottom-nav .nav-fab:active .nav-fab-face{box-shadow:0 0 0 var(--k-shadow-color);translate:3px 3px;scale:.92}.bottom-nav .nav-fab.active .nav-fab-face{background:var(--k-acid);border-color:var(--k-on-acid);color:var(--k-on-acid);box-shadow:2px 2px 0 var(--k-shadow-color);translate:2px 2px;rotate:0deg}.bottom-nav .nav-fab.active .nav-fab-face svg{rotate:135deg}.bottom-nav .nav-fab:focus-visible{outline:none}.bottom-nav .nav-fab:focus-visible .nav-fab-face{outline:3px solid var(--k-focus);outline-offset:3px}.bottom-nav .nav-fab-burst{pointer-events:none;position:absolute;inset:0}.bottom-nav .nav-fab-burst i{border:1.5px solid var(--k-on-acid);background:var(--k-acid);opacity:0;width:5px;height:13px;margin:-6.5px 0 0 -2.5px;animation:.48s cubic-bezier(.2,.8,.2,1) both k-fab-burst;position:absolute;top:50%;left:50%}.bottom-nav .nav-fab-burst i:first-child{--burst-angle:-70deg}.bottom-nav .nav-fab-burst i:nth-child(2){--burst-angle:-35deg;animation-delay:20ms}.bottom-nav .nav-fab-burst i:nth-child(3){--burst-angle:0deg;animation-delay:40ms}.bottom-nav .nav-fab-burst i:nth-child(4){--burst-angle:35deg;animation-delay:20ms}.bottom-nav .nav-fab-burst i:nth-child(5){--burst-angle:70deg}@keyframes k-fab-burst{0%{opacity:1;transform:rotate(var(--burst-angle)) translateY(-22px) scaleY(.3)}to{opacity:0;transform:rotate(var(--burst-angle)) translateY(-50px) scaleY(1)}}.swipe-row{border-radius:0}.swipe-row-action{background:var(--k-ink);min-width:76px;color:var(--k-ground);font:700 var(--k-text-sm)/1 var(--k-font-body);border-radius:0}.swipe-row-action.is-danger{background:var(--k-danger-ink);color:var(--k-card)}.swipe-row-action:last-child{border-radius:0}.swipe-row-face>*{background:var(--k-card)}.portion-overlay{z-index:calc(var(--k-z-sheet) + 50);background:var(--k-scrim);padding:12px}.portion-sheet{max-width:440px;padding:18px 16px calc(16px + env(safe-area-inset-bottom,0px));border:2px solid var(--k-line);background:var(--k-card);color:var(--k-ink);box-shadow:var(--k-shadow);border-radius:0}.portion-title{font:900 1.5rem/1 var(--k-font-display);letter-spacing:.01em;text-transform:uppercase;color:var(--k-ink)}.portion-close{border:2px solid var(--k-line);background:var(--k-card);color:var(--k-ink);border-radius:0}.portion-sub{color:var(--k-muted)}.portion-option{border:2px solid var(--k-line);background:var(--k-card);color:var(--k-ink);box-shadow:none;border-radius:0}.portion-option.is-default{background:var(--k-acid);box-shadow:none}.portion-mult{font:800 1.1rem/1 var(--k-font-body);color:var(--k-ink)}.portion-kcal{font:600 .72rem/1.2 var(--k-font-mono);color:var(--k-muted)}.portion-option.is-default :is(.portion-mult,.portion-kcal){color:var(--k-on-acid)}.date-modal-overlay{background:var(--k-scrim)}.date-modal{border:2px solid var(--k-line);background:var(--k-card);color:var(--k-ink);box-shadow:var(--k-shadow);border-radius:0}.date-modal-title{font:900 1.4rem/1 var(--k-font-display);text-transform:uppercase;color:var(--k-ink)}:is(.date-modal-nav,.date-modal-close){border:2px solid var(--k-line);background:var(--k-card);color:var(--k-ink);box-shadow:none;border-radius:0}.date-modal-weekdays{font:600 var(--k-text-xs)/1 var(--k-font-mono);color:var(--k-muted)}.date-modal-cell{color:var(--k-ink);font-family:var(--k-font-body);box-shadow:none;border-radius:0}.date-modal-cell.today{box-shadow:inset 0 0 0 2px var(--k-line)}.date-modal-cell.selected{background:var(--k-ink);color:var(--k-ground)}.date-modal-cell:disabled{color:var(--k-hair-strong)}.date-modal-today-btn{border:2px solid var(--k-line);background:var(--k-acid);min-height:44px;color:var(--k-on-acid);box-shadow:var(--k-shadow-sm);font:800 var(--k-text-sm)/1 var(--k-font-body);border-radius:0}.celebrate-overlay{background:var(--k-ground)}.celebrate-burst{display:none}.celebrate-inner{gap:var(--k-space-3);border:2px solid var(--k-line);background:var(--k-card);max-width:380px;box-shadow:var(--k-shadow);border-radius:0;padding:28px 20px}.celebrate-title{margin-top:var(--k-space-2);font:900 3.5rem/.85 var(--k-font-display);letter-spacing:-.01em;text-transform:uppercase;color:var(--k-ink)}.celebrate-sub{font:700 var(--k-text-md)/1.4 var(--k-font-body);color:var(--k-muted)}.celebrate-first{max-width:28ch;font:600 var(--k-text-sm)/1.45 var(--k-font-body);color:var(--k-ink);margin:0 auto}.celebrate-awards li{border:2px solid var(--k-line);box-shadow:none;background:var(--k-card);color:var(--k-ink);font:600 var(--k-text-sm)/1.3 var(--k-font-body);border-radius:0}.celebrate-awards strong{background:var(--k-acid);color:var(--k-on-acid);padding:2px 6px}.celebrate-stat{border:2px solid var(--k-line);background:var(--k-card);box-shadow:none;border-radius:0}.celebrate-stat-value{font:900 2.25rem/1 var(--k-font-display);color:var(--k-ink)}.celebrate-stat-label{font:600 11px/1.3 var(--k-font-mono);letter-spacing:.04em;color:var(--k-muted)}h1[tabindex="-1"]:focus{outline:none}.poiem-logo{vertical-align:middle;flex:none;display:inline-block;overflow:visible}.poiem-logo--wordmark{width:126px;height:auto;color:var(--k-ink)}.poiem-logo--mark{width:48px;height:48px;color:var(--k-ink)}.poiem-logo-letter{fill:currentColor}.poiem-logo-spark,.poiem-logo-tile{fill:var(--k-action)}.welcome-brand{min-height:44px;color:var(--k-ink);align-items:center;display:inline-flex}.welcome-brand .poiem-logo{width:clamp(112px,15vw,145px)}.welcome-brand:focus-visible{outline:3px solid var(--k-focus);outline-offset:4px}.splash-screen.is-quiet{animation:.2s .35s both k-splash-in}@keyframes k-splash-in{0%{opacity:0}}.k-screen{background:var(--k-ground);color:var(--k-ink);font-family:var(--k-font-body)}.k-eyebrow{font:600 var(--k-text-xs)/1.3 var(--k-font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--k-muted);margin:0}.k-card{padding:var(--k-space-4);border:2px solid var(--k-line);background:var(--k-card);color:var(--k-ink)}.k-section-head{justify-content:space-between;align-items:baseline;gap:var(--k-space-3);padding-bottom:var(--k-space-2);border-bottom:2px solid var(--k-line);display:flex}.k-section-head :is(h2,h3){font:900 1.5rem/1 var(--k-font-display);letter-spacing:.01em;text-transform:uppercase;color:var(--k-ink);margin:0}.k-section-head>span{font:600 var(--k-text-xs)/1.3 var(--k-font-mono);color:var(--k-muted)}.k-muted{color:var(--k-muted)}.k-meter{background:var(--k-hair);height:8px;display:block;position:relative;overflow:hidden}.k-meter-fill{background:var(--k-ink);height:100%;transition:width .5s var(--k-ease);display:block}.k-meter-acid{border:2px solid var(--k-line);background:var(--k-card);height:16px}.k-meter-acid .k-meter-fill{background:var(--k-acid)}.k-meter.is-over .k-meter-fill{background:var(--k-over-fill)}.k-button{justify-content:center;align-items:center;gap:var(--k-space-2);border:2px solid var(--k-line);background:var(--k-card);min-height:48px;color:var(--k-ink);box-shadow:var(--k-shadow-sm);font:800 var(--k-text-md)/1.2 var(--k-font-body);cursor:pointer;transition:transform var(--k-press) ease, box-shadow var(--k-press) ease;padding:0 18px;text-decoration:none;display:inline-flex}.k-button:active{box-shadow:none;transform:translate(2px,2px)}.k-button.is-primary{background:var(--k-action);color:var(--k-on-action)}.k-icon-button{border:2px solid var(--k-line);background:var(--k-card);min-width:44px;min-height:44px;color:var(--k-ink);cursor:pointer;place-items:center;padding:0;display:inline-grid}.k-text-button{min-height:44px;color:var(--k-ink);font:700 var(--k-text-sm)/1.2 var(--k-font-body);text-underline-offset:4px;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0 2px;text-decoration:underline;text-decoration-thickness:2px;display:inline-flex}.k-text-button:disabled{color:var(--k-muted);cursor:default;text-decoration:none}:is(.k-button,.k-icon-button,.k-text-button):focus-visible{outline:3px solid var(--k-focus);outline-offset:3px}.k-chip{border:2px solid var(--k-line);background:var(--k-card);min-height:44px;color:var(--k-ink);font:700 var(--k-text-sm)/1 var(--k-font-body);cursor:pointer;align-items:center;gap:6px;padding:0 14px;display:inline-flex}.k-chip[aria-pressed=true]{background:var(--k-ink);color:var(--k-ground)}.k-chip:focus-visible{outline:3px solid var(--k-focus);outline-offset:2px}.k-food-tile{border-radius:var(--k-radius-tile);background:var(--k-sunken);width:36px;height:36px;color:var(--k-ink);flex:none;place-items:center;display:grid}.k-sheet-backdrop{z-index:var(--k-z-sheet);background:var(--k-scrim);justify-content:center;align-items:flex-end;animation:.16s both k-fade;display:flex;position:fixed;inset:0}.k-sheet{width:100%;max-width:var(--k-shell);overscroll-behavior:contain;max-height:min(90dvh,780px);padding:8px var(--k-gutter) calc(22px + env(safe-area-inset-bottom,0px));border:2px solid var(--k-line);border-radius:var(--k-radius-sheet) var(--k-radius-sheet) 0 0;background:var(--k-card);color:var(--k-ink);animation:k-sheet-up .22s var(--k-ease) both;border-bottom:0;position:relative;overflow-y:auto}.k-sheet-grab{background:var(--k-hair-strong);border-radius:4px;width:44px;height:4px;margin:2px auto 10px;display:block}@media (width>=720px){.k-sheet-backdrop{align-items:center;padding:24px}.k-sheet{border-bottom:2px solid var(--k-line);box-shadow:var(--k-shadow);border-radius:0}.k-sheet-grab{display:none}}@keyframes k-fade{0%{opacity:0}}@keyframes k-sheet-up{0%{opacity:.6;transform:translateY(28px)}}.momo-art{filter:none}.k-wardrobe{gap:var(--k-space-4);display:grid}.k-wardrobe-stage{justify-items:center;gap:var(--k-space-3);padding:var(--k-space-5) var(--k-space-4);border:2px solid var(--k-on-acid);background:var(--k-momo);color:var(--k-on-acid);box-shadow:var(--k-shadow);display:grid}.k-wardrobe-momo{width:168px;height:168px}.k-wardrobe-worn{font:700 var(--k-text-sm)/1.4 var(--k-font-body);text-align:center;text-wrap:balance;margin:0}.k-wardrobe-actions{justify-content:center;align-items:center;gap:var(--k-space-2) var(--k-space-4);flex-wrap:wrap;display:flex}.k-wardrobe-actions .k-text-button{color:var(--k-on-acid)}.k-wardrobe-actions .k-text-button:disabled{opacity:.5;cursor:default}.k-wardrobe-slots{gap:var(--k-space-2);flex-wrap:wrap;display:flex}.k-wardrobe-pieces{gap:var(--k-space-3);grid-template-columns:repeat(auto-fill,minmax(min(100%,136px),1fr));margin:0;padding:0;list-style:none;display:grid}.k-wardrobe-piece{width:100%;height:100%;min-height:44px;padding:var(--k-space-2) var(--k-space-3) var(--k-space-3);border:2px solid var(--k-line);background:var(--k-card);color:var(--k-ink);box-shadow:none;font:inherit;text-align:left;text-transform:none;letter-spacing:0;cursor:pointer;border-radius:0;align-content:start;justify-items:start;gap:2px;margin:0;display:grid}.k-wardrobe-piece[aria-pressed=true]{background:var(--k-acid);color:var(--k-on-acid);border-color:var(--k-on-acid);box-shadow:var(--k-shadow-sm)}.k-wardrobe-piece[aria-disabled=true]{cursor:default;background:0 0;border-style:dashed}.k-wardrobe-piece[aria-disabled=true] .k-wardrobe-thumb{opacity:.45;filter:grayscale()}.k-wardrobe-piece:focus-visible{outline:3px solid var(--k-focus);outline-offset:2px}.k-wardrobe-thumb{width:56px;height:56px;display:block}.k-wardrobe-name{font:800 var(--k-text-sm)/1.2 var(--k-font-body);flex-wrap:wrap;align-items:center;gap:6px;display:flex}.k-wardrobe-new{border:1.5px solid var(--k-on-acid);background:var(--k-acid);color:var(--k-on-acid);font:600 var(--k-text-xs)/1.2 var(--k-font-mono);text-transform:uppercase;padding:1px 5px;font-style:normal}.k-wardrobe-rule{font:500 var(--k-text-xs)/1.35 var(--k-font-mono);color:var(--k-muted)}.k-wardrobe-piece[aria-pressed=true] .k-wardrobe-rule{color:var(--k-on-acid)}.celebrate-piece{margin:var(--k-space-2) 0 0;padding:var(--k-space-2) var(--k-space-4);border:2px solid var(--k-on-acid);background:var(--k-acid);color:var(--k-on-acid);box-shadow:var(--k-shadow-sm);font:800 var(--k-text-md)/1.25 var(--k-font-body);text-align:center;justify-items:center;gap:2px;display:grid}.celebrate-piece .k-eyebrow{color:var(--k-on-acid)}}@layer screens{.k-today{min-height:100dvh}.k-today-header{justify-content:space-between;align-items:flex-end;gap:var(--k-space-3);padding:18px var(--k-gutter) 4px;display:flex}.k-today-title h1{font:900 clamp(2.5rem, 11vw, 3.25rem)/.86 var(--k-font-display);letter-spacing:-.01em;text-transform:uppercase;color:var(--k-ink);margin:4px 0 0}.k-today-main{padding:16px var(--k-gutter) calc(var(--k-tabbar-h) + var(--safe-bottom,0px) + 96px);gap:20px;display:grid}.k-today .week-strip-row{margin:8px var(--k-gutter) 0;border-top:2px solid var(--k-line);border-bottom:2px solid var(--k-line);box-shadow:none;background:0 0;border-radius:0;padding:4px 0;display:block}.k-today .week-strip{box-shadow:none;background:0 0;border:0;grid-template-columns:repeat(7,minmax(0,1fr));gap:0;padding:0;display:grid}.k-today .week-day{min-height:60px;color:var(--k-muted);box-shadow:none;cursor:pointer;transition:background-color .16s ease, translate .16s var(--k-ease);background:0 0;border:0;border-radius:10px;align-content:center;justify-items:center;gap:3px;padding:6px 0;display:grid}.k-today .week-day:not(:disabled):hover{translate:0 -2px}.k-today .week-day[aria-pressed=true]{background:var(--k-ink);color:var(--k-ground)}.k-today .week-day:disabled{opacity:.4;cursor:default}.k-today .week-day:focus-visible{outline:3px solid var(--k-focus);outline-offset:1px}.k-today .week-day-label{font:600 10px/1 var(--k-font-mono);text-transform:uppercase;color:inherit;background:0 0}.k-today .week-day-circle{width:auto;min-width:0;height:auto;box-shadow:none;font:800 1rem/1.1 var(--k-font-body);color:var(--k-ink);background:0 0;border:0;border-radius:0}.k-today .week-day[aria-pressed=true] .week-day-circle{color:var(--k-ground)}.k-today .week-day-circle.today{text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:2px}.k-today .week-day-mark{border-radius:50%;width:8px;height:8px;display:block}.k-today .week-day-mark.is-logged{background:var(--k-acid);box-shadow:0 0 0 1.5px var(--k-on-acid);animation:.4s cubic-bezier(.3,1.6,.5,1) both k-pop}.k-today .week-day-mark.is-frozen{box-shadow:inset 0 0 0 1.5px}.k-momo{grid-template-columns:64px minmax(0,1fr);align-items:center;gap:14px;display:grid}.k-momo-poke{border:2px solid var(--k-line);background:var(--k-momo);width:64px;height:68px;box-shadow:var(--k-shadow-sm);cursor:pointer;transition:rotate .18s var(--k-ease), translate .18s var(--k-ease), box-shadow .18s var(--k-ease);border-radius:48% 48% 10% 10%;padding:5px;position:relative;rotate:-6deg}.k-momo-poke:hover{translate:0 -2px;rotate:2deg}.k-momo-poke:active{box-shadow:none;translate:2px 2px}.k-momo-poke:focus-visible{outline:3px solid var(--k-focus);outline-offset:3px}.k-momo-cutout{width:100%;height:100%;animation:.6s both k-bop;display:block}.k-momo-cutout svg{width:100%;height:100%;display:block}.k-momo-note{gap:3px;min-width:0;display:grid}.k-momo-hello{font:900 1.625rem/.95 var(--k-font-display);letter-spacing:-.005em;text-transform:uppercase;color:var(--k-ink);margin:0}.k-momo-line{font:600 var(--k-text-sm)/1.4 var(--k-font-body);color:var(--k-ink);text-wrap:pretty;margin:0}.k-momo-roast{justify-self:start;min-height:36px}.k-budget{border:2px solid var(--k-on-acid);background:var(--k-acid);color:var(--k-on-acid);box-shadow:4px 4px 0 var(--k-on-acid);gap:8px;padding:14px 16px 12px;display:grid}.k-budget h2{color:var(--k-on-acid);margin:0}.k-budget-number{flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin:2px 0 0;display:flex;position:relative}.k-budget-number strong{font:900 clamp(4rem, 19vw, 5.25rem)/.8 var(--k-font-display);letter-spacing:-.02em;color:var(--k-on-acid)}.k-budget-number span{font:800 var(--k-text-md)/1.2 var(--k-font-body);color:var(--k-on-acid)}.k-budget-burst{align-self:flex-start;width:30px;height:30px;overflow:visible}.k-budget-burst path{fill:none;stroke:var(--k-on-acid);stroke-width:3.5px;stroke-linecap:round;stroke-dasharray:20;animation:k-draw .6s var(--k-ease) .5s both}.k-budget .k-meter-acid{border-color:var(--k-on-acid);background:#fffdf7;height:18px}.k-budget .k-meter-fill{background:repeating-linear-gradient(135deg, var(--k-action) 0 9px, var(--k-action-deep) 9px 14px);transform-origin:0;animation:k-grow .9s var(--k-ease) .15s both}.k-budget-meta{justify-content:space-between;gap:var(--k-space-3);font:600 var(--k-text-xs)/1.3 var(--k-font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--k-on-acid);margin:0;display:flex}.k-macros{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.k-macro{border:2px solid var(--k-line);background:var(--k-card);gap:6px;min-width:0;padding:10px 10px 12px;display:grid}.k-macro-label{font:600 var(--k-text-xs)/1.2 var(--k-font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--k-muted);align-items:center;gap:6px;display:flex}.k-macro-label i{border:1.5px solid var(--k-line);background:var(--tone);width:10px;height:10px}.k-macro-value{font:600 var(--k-text-xs)/1.2 var(--k-font-body);color:var(--k-muted);white-space:nowrap}.k-macro-value strong{font:800 1.25rem/1 var(--k-font-body);color:var(--k-ink)}.k-macro .k-meter{border:1.5px solid var(--k-line);background:var(--k-sunken);height:10px}.k-macro .k-meter-fill{background:var(--tone);transform-origin:0;animation:k-grow .8s var(--k-ease) both}.k-macro.is-protein{--tone:var(--k-action)}.k-macro.is-carbs{--tone:var(--k-acid)}.k-macro.is-fat{--tone:var(--k-sky-strong)}.k-macro.is-carbs .k-meter-fill{animation-delay:.12s}.k-macro.is-fat .k-meter-fill{animation-delay:.24s}.k-macro .k-meter.is-over .k-meter-fill{background:repeating-linear-gradient(135deg, var(--tone) 0 6px, var(--k-action-deep) 6px 9px)}.k-meals{gap:2px;display:grid}.k-meal-group{--tone:var(--k-mint);display:grid}.k-meal-group.is-breakfast{--tone:var(--k-butter)}.k-meal-group.is-lunch{--tone:var(--k-peach)}.k-meal-group.is-dinner{--tone:var(--k-sky)}.k-meal-group.is-snack{--tone:var(--k-pink)}.k-meal-head{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:14px 0 6px;display:grid}.k-meal-icon{border:2px solid var(--k-line);background:var(--tone);width:28px;height:28px;color:var(--k-on-tone);place-items:center;display:grid;rotate:-4deg}.k-meal-head h3{font:900 1.25rem/1 var(--k-font-display);letter-spacing:.03em;text-transform:uppercase;color:var(--k-ink);margin:0}.k-meal-head span{font:600 var(--k-text-xs)/1.2 var(--k-font-mono);color:var(--k-muted)}.k-meal-group .swipe-row{border-top:1px solid var(--k-hair)}.k-meal-row{align-items:center;gap:var(--k-space-3);background:var(--k-ground);width:100%;min-height:60px;color:var(--k-ink);font:inherit;text-align:left;cursor:pointer;border:0;border-radius:0;grid-template-columns:38px minmax(0,1fr) auto;padding:8px 0;display:grid}.k-meal-row:focus-visible{outline:3px solid var(--k-focus);outline-offset:-3px}.k-meal-row.is-fresh{animation:k-fresh 1.8s var(--k-ease) both}.k-meal-row .k-food-tile{border:1.5px solid var(--k-line);width:38px;height:38px;color:var(--k-on-tone)}.k-food-tile.is-tone-butter{background:var(--k-butter)}.k-food-tile.is-tone-peach{background:var(--k-peach)}.k-food-tile.is-tone-pink{background:var(--k-pink)}.k-food-tile.is-tone-sky{background:var(--k-sky)}.k-food-tile.is-tone-mint{background:var(--k-mint)}.k-food-tile.is-tone-plain{background:var(--k-sunken);color:var(--k-ink)}.k-meal-name{min-width:0;font:700 var(--k-text-md)/1.25 var(--k-font-body);overflow-wrap:anywhere;gap:2px;display:grid}.k-meal-name small{font:500 var(--k-text-xs)/1.3 var(--k-font-body);color:var(--k-muted)}.k-meal-kcal{font:600 var(--k-text-sm)/1 var(--k-font-mono);white-space:nowrap;color:var(--k-ink)}.k-add-row{align-items:center;gap:var(--k-space-3);border:0;border-top:1px dashed var(--k-hair-strong);width:100%;min-height:48px;color:var(--k-muted);font:700 var(--k-text-sm)/1 var(--k-font-body);text-align:left;cursor:pointer;background:0 0;grid-template-columns:38px minmax(0,1fr);padding:0;display:grid}.k-add-plus{border:2px dashed var(--k-hair-strong);width:30px;height:30px;color:var(--k-ink);transition:rotate .2s var(--k-ease), background-color .15s ease, border-color .15s ease;place-items:center;margin-left:4px;display:grid}.k-add-row:hover{color:var(--k-ink)}.k-add-row:hover .k-add-plus{border-style:solid;border-color:var(--k-line);background:var(--tone);color:var(--k-on-tone);rotate:90deg}.k-add-row:focus-visible{outline:3px solid var(--k-focus);outline-offset:-3px}.k-empty-day{grid-template-columns:64px minmax(0,1fr);align-items:center;gap:14px;margin-top:8px;display:grid}.k-empty-plate{width:64px;height:64px;animation:.8s cubic-bezier(.3,1.4,.5,1) both k-spin-in;overflow:visible}.k-empty-plate circle:first-child{fill:var(--k-card);stroke:var(--k-line);stroke-width:3px}.k-empty-plate circle:nth-child(2){fill:none;stroke:var(--k-hair-strong);stroke-width:2px;stroke-dasharray:5 5}.k-empty-plate path{fill:none;stroke:var(--k-action);stroke-width:3px;stroke-linecap:round}.k-empty{font-size:var(--k-text-sm);color:var(--k-muted);margin:0;line-height:1.5}.k-back-today{margin-top:var(--k-space-4);justify-self:start}.k-extras{align-items:center;gap:var(--k-space-3) var(--k-space-4);border:2px solid var(--k-line);background:var(--k-card);flex-wrap:wrap;padding:14px;display:flex}.k-water{flex-wrap:wrap;flex:100%;align-items:center;gap:8px 12px;display:flex}.k-extras-label{font:700 var(--k-text-sm)/1 var(--k-font-body);color:var(--k-ink);align-items:center;gap:6px;display:inline-flex}.k-glasses{gap:5px;display:inline-flex}.k-glass{border:2px solid var(--k-line);background:linear-gradient(var(--k-sky-strong), var(--k-sky-strong)) bottom / 100% 0% no-repeat;width:14px;height:20px;transition:background-size .45s var(--k-ease);border-top-width:1px;border-radius:0 0 5px 5px}.k-glass.is-full{background-size:100% 100%}.k-extras .k-text-button{margin-left:auto}.k-stepper{border:2px solid var(--k-line);background:var(--k-card);grid-template-columns:44px minmax(48px,auto) 44px;align-items:center;display:inline-grid}.k-stepper button{min-height:44px;color:var(--k-ink);font:800 1.125rem/1 var(--k-font-body);cursor:pointer;background:0 0;border:0}.k-stepper button:not(:disabled):hover{background:var(--k-sky);color:var(--k-on-tone)}.k-stepper button:disabled{color:var(--k-hair-strong);cursor:default}.k-stepper button:focus-visible{outline:3px solid var(--k-focus);outline-offset:-3px}.k-stepper span{text-align:center;font:600 var(--k-text-sm)/1 var(--k-font-mono);color:var(--k-ink)}.k-notice{gap:var(--k-space-2);display:grid}.k-notice h2{font:900 1.75rem/.95 var(--k-font-display);text-transform:uppercase;color:var(--k-ink);margin:0}.k-notice p{color:var(--k-muted);margin:0}.k-notice-actions{align-items:center;gap:var(--k-space-3);margin-top:var(--k-space-1);flex-wrap:wrap;display:flex}@keyframes k-grow{0%{transform:scaleX(0)}}@keyframes k-draw{0%{stroke-dashoffset:20px}to{stroke-dashoffset:0}}@keyframes k-pop{0%{transform:scale(0)}}@keyframes k-bop{0%,to{transform:rotate(0)}30%{transform:translateY(-6px)rotate(8deg)}60%{transform:translateY(1px)rotate(-5deg)}}@keyframes k-spin-in{0%{opacity:0;transform:rotate(-120deg)scale(.6)}}@keyframes k-fresh{0%,35%{background:var(--k-acid);color:var(--k-on-acid);translate:0}8%{translate:6px}to{background:var(--k-ground);color:var(--k-ink);translate:0}}.k-sheet-head{justify-content:space-between;align-items:center;gap:var(--k-space-3);display:flex}.k-sheet-head h2{font:900 1.875rem/.95 var(--k-font-display);letter-spacing:.01em;text-transform:uppercase;color:var(--k-ink);margin:0}.k-log-sheet{animation:.38s cubic-bezier(.25,1.3,.45,1) both k-log-sheet-up}.k-log-sheet>:not(.k-sheet-grab){animation:k-log-rise .34s var(--k-ease) both}.k-log-sheet>:nth-child(3){animation-delay:40ms}.k-log-sheet>:nth-child(4){animation-delay:80ms}.k-log-sheet>:nth-child(5){animation-delay:.11s}.k-log-sheet>:nth-child(6){animation-delay:.14s}.k-log-sheet>:nth-child(n+7){animation-delay:.17s}@keyframes k-log-sheet-up{0%{transform:translateY(64px)}}@keyframes k-log-rise{0%{opacity:0;translate:0 12px}}.k-log-head{justify-content:flex-start}.k-log-momo:empty{display:none}.k-log-momo .momo-sticker{border:2px solid var(--k-on-acid);background:var(--k-momo);width:56px;height:60px;box-shadow:var(--k-shadow-sm);border-radius:48% 48% 10% 10%;padding:1px;animation:.56s cubic-bezier(.3,1.6,.5,1) .12s both k-log-momo-hop;display:block;transform:rotate(-6deg)}.k-log-momo .momo-sticker svg{width:100%;height:100%;display:block}.k-log-title{flex:1;gap:5px;min-width:0;display:grid}.k-log-prompt{font:600 var(--k-text-sm)/1.35 var(--k-font-body);color:var(--k-muted);margin:0}@keyframes k-log-momo-hop{0%{opacity:0;translate:0 20px;rotate:10deg}}.k-log-for{align-items:center;gap:var(--k-space-2) var(--k-space-3);flex-wrap:wrap;margin:16px 0 10px;display:flex}.k-log-sheet .is-breakfast{--tone:var(--k-butter)}.k-log-sheet .is-lunch{--tone:var(--k-peach)}.k-log-sheet .is-dinner{--tone:var(--k-sky)}.k-log-sheet .is-snack{--tone:var(--k-pink)}.k-log-sheet .is-other{--tone:var(--k-mint)}.k-log-meal-icon{border:2px solid var(--k-line);background:var(--tone);width:36px;height:36px;color:var(--k-on-tone);place-items:center;display:grid;rotate:-5deg}.k-log-sheet .k-chip:is(.is-breakfast,.is-lunch,.is-dinner,.is-snack,.is-other):not([aria-pressed=true]){background:var(--tone);color:var(--k-on-tone)}.k-chip-row{flex-wrap:wrap;gap:6px;margin:0 0 12px;display:flex}.k-search{align-items:center;gap:4px var(--k-space-2);grid-template-columns:minmax(0,1fr) auto;display:grid}.k-search-field{min-width:0;display:block;position:relative}.k-search-field svg{color:var(--k-muted);pointer-events:none;position:absolute;top:50%;left:14px;translate:0 -50%}.k-search input{border:2px solid var(--k-line);background:var(--k-ground);width:100%;min-height:52px;color:var(--k-ink);box-shadow:inset 3px 3px 0 var(--k-hair);font:600 var(--k-text-md)/1.2 var(--k-font-body);border-radius:0;padding:0 14px 0 42px}.k-search input::placeholder{color:var(--k-muted);opacity:1}.k-search input:focus-visible{outline:3px solid var(--k-focus);outline-offset:2px}.k-search-hint{font-size:var(--k-text-xs);color:var(--k-muted);grid-column:1/-1;margin:0}.k-quick-add{align-items:center;gap:var(--k-space-3);width:100%;min-height:56px;margin-top:var(--k-space-3);border:2px solid var(--k-line);background:var(--k-acid);color:var(--k-on-acid);box-shadow:var(--k-shadow-sm);font:inherit;text-align:left;cursor:pointer;padding:8px 14px;display:flex}.k-quick-add span{gap:2px;display:grid}.k-quick-add strong{font:800 var(--k-text-md)/1.2 var(--k-font-body)}.k-quick-add small{font:500 var(--k-text-xs)/1.3 var(--k-font-body)}.k-quick-add:focus-visible{outline:3px solid var(--k-focus);outline-offset:3px}.k-shelf{border:2px solid var(--k-line);grid-template-columns:1fr 1fr;margin:14px 0 0;display:grid}.k-shelf button{background:var(--k-card);min-height:44px;color:var(--k-ink);font:700 var(--k-text-sm)/1 var(--k-font-body);cursor:pointer;border:0;justify-content:center;align-items:center;gap:6px;display:flex}.k-shelf button+button{border-left:2px solid var(--k-line)}.k-shelf button[aria-pressed=true]{background:var(--k-ink);color:var(--k-ground)}.k-shelf button:focus-visible{outline:3px solid var(--k-focus);outline-offset:-3px}.k-list-label{font:600 var(--k-text-xs)/1.3 var(--k-font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--k-muted);margin:16px 0 4px}.k-picks{margin:0;padding:0;list-style:none;display:grid}.k-pick{border-top:1px solid var(--k-hair);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.k-pick-log{min-height:58px;color:var(--k-ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:36px minmax(0,1fr) auto 34px;align-items:center;gap:10px;padding:6px 0;display:grid}.k-pick-log:focus-visible{outline:3px solid var(--k-focus);outline-offset:-3px}.k-pick-name{font:700 var(--k-text-md)/1.25 var(--k-font-body);overflow-wrap:anywhere}.k-pick-kcal{font:600 var(--k-text-sm)/1 var(--k-font-mono);white-space:nowrap}.k-pick-plus{border:2px solid var(--k-line);background:var(--k-card);width:34px;height:34px;box-shadow:2px 2px 0 var(--k-shadow-color);transition:rotate .24s cubic-bezier(.3, 1.6, .5, 1), translate var(--k-press) ease, box-shadow var(--k-press) ease;place-items:center;display:grid}.k-pick-log:hover .k-pick-plus{background:var(--k-acid);color:var(--k-on-acid);border-color:var(--k-on-acid);rotate:90deg}.k-pick-log:active .k-pick-plus{box-shadow:none;background:var(--k-acid);color:var(--k-on-acid);translate:2px 2px}.k-pick-portion{min-width:44px;min-height:44px;color:var(--k-muted);font:700 var(--k-text-xs)/1 var(--k-font-body);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;margin-left:6px;padding:0 6px;text-decoration:underline}.k-pick-portion:focus-visible{outline:3px solid var(--k-focus);outline-offset:2px}.k-methods{gap:var(--k-space-3);grid-template-columns:repeat(2,minmax(0,1fr));margin-top:6px;display:grid}.k-method{border:2px solid var(--k-line);background:var(--k-card);min-height:66px;color:var(--k-ink);box-shadow:var(--k-shadow-sm);transition:translate var(--k-press) ease, box-shadow var(--k-press) ease;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:10px;padding:10px 12px;text-decoration:none;display:grid}.k-method.is-tone-butter{--tone:var(--k-sticker-butter,var(--k-butter))}.k-method.is-tone-sky{--tone:var(--k-sticker-sky,var(--k-sky))}.k-method.is-tone-mint{--tone:var(--k-sticker-mint,var(--k-mint))}.k-method.is-tone-pink{--tone:var(--k-sticker-pink,var(--k-pink))}.k-method-icon{border:2px solid var(--k-line);background:var(--tone);width:44px;height:44px;color:var(--k-sticker-ink,#20221d);place-items:center;transition:rotate .24s cubic-bezier(.3,1.6,.5,1),scale .24s cubic-bezier(.3,1.6,.5,1);display:grid;rotate:-5deg}.k-method:nth-child(2n) .k-method-icon{rotate:5deg}.k-method-text{gap:2px;min-width:0;display:grid}.k-method-text strong{font:800 var(--k-text-md)/1.1 var(--k-font-body)}.k-method-text small{font:500 var(--k-text-xs)/1.25 var(--k-font-body);color:var(--k-muted)}.k-method:hover{color:var(--k-ink);box-shadow:var(--k-shadow);text-decoration:none;translate:-2px -2px}.k-method:hover .k-method-icon{rotate:0deg;scale:1.08}.k-method:active{box-shadow:none;translate:2px 2px}.k-method:focus-visible{outline:3px solid var(--k-focus);outline-offset:2px}@media (prefers-reduced-motion:reduce){.k-method,.k-method-icon{transition:none}.k-method:hover{translate:none}.k-method:hover .k-method-icon{rotate:-5deg;scale:1}}@media (width<=340px){.k-methods{grid-template-columns:minmax(0,1fr)}}.k-journey{gap:var(--k-space-3);margin-bottom:var(--k-space-4);display:grid}.k-journey-stats{gap:var(--k-space-2);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.k-journey-stats div{gap:2px;display:grid}.k-journey-stats dt{font:600 var(--k-text-xs)/1.2 var(--k-font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--k-muted)}.k-journey-stats dd{font:900 1.75rem/1 var(--k-font-display);color:var(--k-ink);margin:0}.k-journey-note{font-size:var(--k-text-sm);color:var(--k-muted);margin:0}.k-flow{min-height:100dvh}.k-flow>.app-main{padding:12px var(--k-gutter) calc(40px + var(--safe-bottom,0px));align-content:start;gap:18px;display:grid}:is(.k-flow,.k-saved) .back-link{border:2px solid var(--k-line);background:var(--k-card);min-height:44px;color:var(--k-ink);box-shadow:var(--k-shadow-sm);font:700 var(--k-text-sm)/1 var(--k-font-body);cursor:pointer;border-radius:0;justify-self:start;gap:6px;padding:0 12px 0 6px;text-decoration:none}:is(.k-flow,.k-saved) .back-link:active{box-shadow:none;translate:2px 2px}:is(.k-flow,.k-saved) .back-link:focus-visible{outline:3px solid var(--k-focus);outline-offset:3px}.k-flow :is(input,textarea,select):focus-visible{outline:3px solid var(--k-focus);outline-offset:2px}.k-flow button:disabled:not(.pressable){cursor:not-allowed;opacity:.55}:is(.k-flow,.k-saved) :is(.photo-source-btn,.log-pill-btn,.example-chip):after{content:none}:is(.k-flow,.k-saved) :is(.photo-source-btn,.log-pill-btn,.example-chip):active{transform:none}:is(.k-flow,.k-saved) .is-tone-butter{background:var(--k-butter)}:is(.k-flow,.k-saved) .is-tone-peach{background:var(--k-peach)}:is(.k-flow,.k-saved) .is-tone-pink{background:var(--k-pink)}:is(.k-flow,.k-saved) .is-tone-sky{background:var(--k-sky)}:is(.k-flow,.k-saved) .is-tone-mint{background:var(--k-mint)}:is(.k-flow,.k-saved) .is-tone-plain{background:var(--k-sunken)}.flow-heading{gap:12px;margin:2px 0 0;display:grid}.flow-steps{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.flow-steps li{border:2px solid var(--k-hair-strong);min-height:32px;color:var(--k-muted);font:700 var(--k-text-xs)/1 var(--k-font-body);align-items:center;gap:8px;padding:2px 10px 2px 2px;display:inline-flex}.flow-steps li>span{border:2px solid var(--k-line);background:var(--k-card);width:24px;height:24px;color:var(--k-ink);font:600 var(--k-text-xs)/1 var(--k-font-mono);place-items:center;display:grid}.flow-steps li[aria-current=step]{border-color:var(--k-line);color:var(--k-ink)}.flow-steps li[aria-current=step]>span{background:var(--k-acid);color:var(--k-on-acid);box-shadow:none}.flow-steps li.is-complete>span{background:var(--k-mint);color:var(--k-on-tone)}.flow-heading-content{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;display:grid}.flow-heading h1{font:900 clamp(2.125rem, 9vw, 2.75rem)/.9 var(--k-font-display);letter-spacing:-.01em;text-transform:uppercase;text-wrap:balance;color:var(--k-ink);margin:0}.flow-heading p{max-width:46ch;font:500 var(--k-text-md)/1.5 var(--k-font-body);color:var(--k-muted);margin:8px 0 0}.flow-heading .momo-sticker{border:2px solid var(--k-line);background:var(--k-momo);width:64px;height:68px;box-shadow:var(--k-shadow-sm);border-radius:48% 48% 10% 10%;margin:0;padding:1px;display:block;transform:rotate(6deg)}:is(.flow-heading,.flow-analysis-art) .momo-sticker svg{width:100%;height:100%;display:block}.flow-field-hint{font:500 var(--k-text-xs)/1.5 var(--k-font-body);color:var(--k-muted);margin:4px 0 10px}:is(.flow-setup,.flow-feedback,.flow-estimate-note,.flow-analysis){border:2px solid var(--k-line);box-shadow:none;border-radius:0;margin:0}.flow-setup{background:var(--k-card);color:var(--k-ink);grid-template-columns:40px minmax(0,1fr);gap:12px;padding:14px;display:grid}.flow-setup>svg{box-sizing:border-box;border:2px solid var(--k-line);background:var(--k-sky);width:40px;height:40px;color:var(--k-on-tone);margin:0;padding:7px}.flow-setup h2{font:900 1.375rem/1 var(--k-font-display);text-transform:uppercase;color:var(--k-ink);margin:0 0 4px}.flow-setup p{font:500 var(--k-text-sm)/1.5 var(--k-font-body);color:var(--k-muted);margin:0}.flow-setup.is-checking>svg{background:var(--k-sky)}.flow-setup.is-limit_reached>svg{background:var(--k-butter)}.flow-setup.is-premium_required>svg{background:var(--k-pink)}.flow-setup.is-unavailable>svg{background:var(--k-peach)}.flow-allowance{font:600 var(--k-text-xs)/1.4 var(--k-font-mono);color:var(--k-ink);margin:8px 0 0}.flow-link-row{flex-wrap:wrap;gap:0 18px;margin-top:4px;display:flex}:is(.flow-link-row a,.flow-submit>a,.flow-feedback a,.flow-text-action){min-width:44px;min-height:44px;color:var(--k-ink);font:700 var(--k-text-sm)/1.2 var(--k-font-body);text-underline-offset:4px;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:6px;padding:0;text-decoration:underline;text-decoration-thickness:2px;display:inline-flex}.flow-feedback{background:var(--k-sky);color:var(--k-on-tone);overflow-wrap:anywhere;padding:10px 14px}.flow-feedback p{font:600 var(--k-text-sm)/1.5 var(--k-font-body);margin:0}.flow-feedback a{color:inherit}.flow-feedback.is-error{border-color:var(--k-danger-ink);background:var(--k-danger-soft);color:var(--k-danger-ink)}.flow-feedback:focus-visible{outline:3px solid var(--k-focus);outline-offset:3px}.flow-estimate-note{background:var(--k-butter);color:var(--k-on-tone);font:600 var(--k-text-sm)/1.45 var(--k-font-body);align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.flow-estimate-note svg{flex:none;margin-top:1px}.flow-analysis{border-color:var(--k-on-acid);background:var(--k-acid);color:var(--k-on-acid);box-shadow:4px 4px 0 var(--k-on-acid);text-align:center;justify-items:center;gap:14px;padding:20px 16px;display:grid}.flow-analysis-art{align-items:center;gap:12px;display:flex}.flow-analysis-art .momo-sticker{border:2px solid var(--k-on-acid);background:var(--k-momo);border-radius:48% 48% 10% 10%;width:64px;height:68px;padding:1px;animation:1.2s ease-in-out infinite k-bop;transform:none}.flow-analysis-art>svg{animation:1.2s ease-in-out infinite k-twinkle}.flow-analysis h2{font:900 1.5rem/1 var(--k-font-display);text-transform:uppercase;margin:0 0 6px}.flow-analysis p{max-width:34ch;font:500 var(--k-text-sm)/1.5 var(--k-font-body);margin:0 auto}@keyframes k-twinkle{50%{transform:scale(1.25)rotate(15deg)}}.flow-privacy{grid-template-columns:20px minmax(0,1fr);gap:10px;margin:0;padding:0;display:grid}.flow-privacy>svg{color:var(--k-muted);margin-top:2px}.flow-privacy p{font:500 var(--k-text-xs)/1.6 var(--k-font-body);color:var(--k-muted);margin:0}.flow-privacy a{color:var(--k-ink);text-underline-offset:3px;font-weight:700;text-decoration:underline}.flow-compose{gap:16px;display:grid}.flow-description-card{border:2px solid var(--k-line);background:var(--k-card);box-shadow:none;border-radius:0;gap:6px;padding:14px;display:grid}.flow-composer-label{font:900 1.375rem/1 var(--k-font-display);text-transform:uppercase;color:var(--k-ink);align-items:center;gap:8px;display:flex}.flow-composer-label svg{box-sizing:border-box;border:2px solid var(--k-line);background:var(--k-butter);width:30px;height:30px;color:var(--k-on-tone);padding:4px}.k-flow .text-log-input{border:2px solid var(--k-line);background:var(--k-ground);width:100%;min-height:150px;color:var(--k-ink);box-shadow:none;font:500 var(--k-text-md)/1.5 var(--k-font-body);resize:vertical;border-radius:0;padding:12px 14px}.k-flow .text-log-input::placeholder{color:var(--k-muted);opacity:1}.flow-composer-meta{font:600 var(--k-text-xs)/1.3 var(--k-font-mono);color:var(--k-muted);flex-wrap:wrap;justify-content:space-between;gap:6px;margin:0;display:flex}.k-flow .text-log-examples{gap:8px;margin-top:10px;display:grid}.k-flow .text-log-examples-label{font:600 var(--k-text-xs)/1.3 var(--k-font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--k-muted);margin:0}.k-flow .example-chips{gap:8px;display:grid}.k-flow .example-chip{border:2px solid var(--k-line);background:var(--k-butter);min-height:44px;color:var(--k-on-tone);box-shadow:none;font:700 var(--k-text-sm)/1.3 var(--k-font-body);text-align:left;cursor:pointer;transition:translate var(--k-press) ease, box-shadow var(--k-press) ease;border-radius:0;align-items:center;gap:10px;padding:8px 12px;display:flex}.k-flow .example-chip:nth-child(4n+2){background:var(--k-mint)}.k-flow .example-chip:nth-child(4n+3){background:var(--k-sky)}.k-flow .example-chip:nth-child(4n){background:var(--k-pink)}.k-flow .example-chip:not(:disabled):hover{box-shadow:var(--k-shadow-sm);translate:-2px -2px}.k-flow .example-chip:focus-visible{outline:3px solid var(--k-focus);outline-offset:2px}.flow-submit{text-align:center;justify-items:center;gap:8px;display:grid}.flow-submit>p{font:600 var(--k-text-xs)/1.4 var(--k-font-body);color:var(--k-muted);justify-content:center;align-items:center;gap:6px;margin:0;display:flex}.flow-submit>.pressable{justify-self:stretch}.k-flow .photo-upload-zone{border:2px dashed var(--k-line);background:var(--k-card);width:100%;min-height:220px;color:var(--k-ink);box-shadow:none;text-align:center;cursor:pointer;border-radius:0;align-content:center;justify-items:center;gap:8px;padding:20px;transition:background-color .15s;display:grid}.k-flow .photo-upload-zone:hover{background:var(--k-butter);color:var(--k-on-tone);border-style:solid}.k-flow .photo-upload-zone:focus-visible{outline:3px solid var(--k-focus);outline-offset:3px}.flow-camera-sticker{border:2px solid var(--k-line);background:var(--k-butter);width:76px;height:68px;color:var(--k-on-tone);box-shadow:var(--k-shadow-sm);border-radius:0;place-items:center;display:grid;rotate:-4deg}.k-flow .photo-upload-title{font:900 1.625rem/1 var(--k-font-display);text-transform:uppercase}.k-flow .photo-upload-sub{font:500 var(--k-text-sm)/1.4 var(--k-font-body);color:inherit}.flow-upload-limit{border:2px solid var(--k-line);background:var(--k-card);color:var(--k-ink);font:600 var(--k-text-xs)/1 var(--k-font-mono);border-radius:0;padding:4px 8px}.k-flow .photo-btn-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;display:grid}.k-flow .photo-source-btn{border:2px solid var(--k-line);background:var(--k-card);min-height:52px;color:var(--k-ink);box-shadow:var(--k-shadow-sm);font:800 var(--k-text-md)/1 var(--k-font-body);cursor:pointer;border-radius:0;justify-content:center;align-items:center;gap:8px;display:inline-flex}.k-flow .photo-source-btn:active{box-shadow:none;translate:2px 2px}.k-flow .photo-source-btn:focus-visible{outline:3px solid var(--k-focus);outline-offset:3px}.flow-photo-tip{text-align:center;font:500 var(--k-text-xs)/1.5 var(--k-font-body);color:var(--k-muted);margin:0}:is(.flow-photo-card,.flow-photo-evidence){border:2px solid var(--k-line);background:var(--k-card);border-radius:0;margin:0;overflow:hidden}.flow-photo-card img{object-fit:contain;background:var(--k-sunken);width:100%;height:260px;display:block}.flow-photo-card figcaption{font:600 var(--k-text-xs)/1.3 var(--k-font-mono);color:var(--k-muted);flex-wrap:wrap;align-items:center;gap:8px;padding:4px 12px;display:flex}.flow-photo-card figcaption>span{overflow-wrap:anywhere;flex:1;min-width:0}.flow-photo-card button{min-height:44px;color:var(--k-ink);font:700 var(--k-text-sm)/1 var(--k-font-body);text-underline-offset:4px;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;text-decoration:underline;display:inline-flex}.flow-photo-evidence img{object-fit:contain;background:var(--k-sunken);width:100%;max-height:210px;display:block}.flow-photo-evidence figcaption{font:600 var(--k-text-xs)/1.3 var(--k-font-mono);color:var(--k-muted);padding:8px 12px}.flow-review-layout{align-items:start;gap:18px;display:grid}.flow-review-editor{border:2px solid var(--k-line);background:var(--k-card);min-width:0;box-shadow:none;border-radius:0;gap:20px;padding:16px;display:grid}.flow-review-side{gap:14px;min-width:0;display:grid}.flow-meal-name{grid-template-columns:56px minmax(0,1fr);align-items:end;gap:12px;display:grid}.flow-food-sticker{border:2px solid var(--k-line);background:var(--k-butter);width:56px;height:56px;color:var(--k-on-tone);box-shadow:var(--k-shadow-sm);border-radius:0;place-items:center;display:grid;rotate:-4deg}.flow-meal-name label{font:600 var(--k-text-xs)/1.2 var(--k-font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--k-muted);align-items:center;gap:6px;margin-bottom:6px;display:flex}.flow-meal-name input{border:2px solid var(--k-line);background:var(--k-ground);width:100%;min-width:0;min-height:48px;color:var(--k-ink);font:700 var(--k-text-lg)/1.2 var(--k-font-body);border-radius:0;padding:0 12px}:is(.flow-nutrition,.flow-meal-picker,.flow-portion){border:0;min-width:0;margin:0;padding:0}.k-flow legend{font:900 1.25rem/1 var(--k-font-display);text-transform:uppercase;color:var(--k-ink);margin:0 0 2px;padding:0}.flow-calories{border:2px solid var(--k-on-acid);background:var(--k-acid);color:var(--k-on-acid);border-radius:0;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;padding:8px 14px;display:flex}.flow-calories>span:first-child{font:800 var(--k-text-md)/1 var(--k-font-body)}.flow-number-wrap{min-width:0;font:600 var(--k-text-xs)/1 var(--k-font-mono);align-items:baseline;gap:6px;display:flex}.flow-number-wrap input{width:100%;min-width:0;min-height:44px;color:inherit;font:900 1.625rem/1 var(--k-font-display);font-variant-numeric:tabular-nums;background:0 0;border:0;border-bottom:2px solid;border-radius:0;padding:4px 2px}.flow-calories .flow-number-wrap{flex:0 170px}.flow-calories input{text-align:right;font-size:2.5rem}.flow-macros{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.flow-macro{border:2px solid var(--k-line);background:var(--k-card);min-width:0;color:var(--k-ink);box-shadow:inset 0 6px 0 var(--tone);border-radius:0;gap:4px;padding:10px 10px 6px;display:grid}.flow-macro.is-protein{--tone:var(--k-action)}.flow-macro.is-carbs{--tone:var(--k-acid)}.flow-macro.is-fat{--tone:var(--k-sky-strong)}.flow-macro-label{font:600 var(--k-text-xs)/1.2 var(--k-font-mono);letter-spacing:.03em;text-transform:uppercase;color:var(--k-muted);align-items:center;gap:5px;margin:4px 0 0;display:flex}.flow-macro-label svg{width:16px;height:16px}.flow-meal-options{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.flow-meal-options button{border:2px solid var(--k-line);background:var(--k-card);min-height:44px;color:var(--k-ink);box-shadow:none;font:700 var(--k-text-sm)/1 var(--k-font-body);cursor:pointer;--tone:var(--k-mint);border-radius:0;align-items:center;gap:8px;padding:4px 12px 4px 4px;display:inline-flex}.flow-meal-options button svg{box-sizing:content-box;border:1.5px solid var(--k-line);background:var(--tone);color:var(--k-on-tone);padding:4px}.flow-meal-options .is-breakfast{--tone:var(--k-butter)}.flow-meal-options .is-lunch{--tone:var(--k-peach)}.flow-meal-options .is-dinner{--tone:var(--k-sky)}.flow-meal-options .is-snack{--tone:var(--k-pink)}.flow-meal-options button[aria-pressed=true]{background:var(--k-ink);color:var(--k-ground);box-shadow:var(--k-shadow-sm);font-weight:800}.flow-meal-options button:focus-visible{outline:3px solid var(--k-focus);outline-offset:2px}.flow-portion-controls{border:2px solid var(--k-line);background:var(--k-ground);border-radius:0;grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;gap:8px;margin-top:4px;padding:4px;display:grid}.flow-portion-controls button{border:2px solid var(--k-line);background:var(--k-card);width:48px;height:48px;color:var(--k-ink);box-shadow:var(--k-shadow-sm);cursor:pointer;border-radius:0;place-items:center;display:grid}.flow-portion-controls button:not(:disabled):active{box-shadow:none;translate:2px 2px}.flow-portion-controls button:disabled{opacity:1;color:var(--k-hair-strong);box-shadow:none}.flow-portion-controls label{min-width:0;font:600 var(--k-text-xs)/1 var(--k-font-mono);color:var(--k-muted);flex-wrap:wrap;justify-content:center;align-items:baseline;gap:4px;display:flex}.flow-portion-controls input{border:0;border-bottom:2px solid var(--k-line);width:84px;max-width:100%;min-height:44px;color:var(--k-ink);text-align:center;font:900 1.75rem/1 var(--k-font-display);background:0 0;border-radius:0}.flow-portion-weight{text-align:center;font:600 var(--k-text-xs)/1.3 var(--k-font-mono);color:var(--k-muted);margin:8px 0 0}.flow-review-summary{border:2px solid var(--k-on-acid);background:var(--k-acid);color:var(--k-on-acid);box-shadow:4px 4px 0 var(--k-on-acid);border-radius:0;gap:12px;padding:16px;display:grid}.flow-total{gap:4px;padding:0;display:grid}.flow-total>span{font:600 var(--k-text-xs)/1.3 var(--k-font-mono);letter-spacing:.04em;text-transform:uppercase}.flow-total>strong{font:900 clamp(3rem, 14vw, 4rem)/.85 var(--k-font-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.flow-total strong small{font:800 var(--k-text-md)/1 var(--k-font-body);letter-spacing:0}.flow-total p{font:800 var(--k-text-md)/1.3 var(--k-font-body);overflow-wrap:anywhere;margin:0}.flow-summary-hint{font:600 var(--k-text-sm)/1.5 var(--k-font-body);margin:0}.flow-save-hint{font:600 var(--k-text-xs)/1.5 var(--k-font-body);align-items:flex-start;gap:6px;margin:0;display:flex}.flow-save-hint svg{flex:none;margin-top:1px}.flow-review-summary .flow-text-action{color:var(--k-on-acid);justify-self:center}.flow-breakdown{border:2px solid var(--k-line);background:var(--k-card);border-radius:0;padding:0 14px}.flow-breakdown summary{cursor:pointer;min-height:52px;font:800 var(--k-text-md)/1.2 var(--k-font-body);color:var(--k-ink);flex-wrap:wrap;align-items:center;gap:8px;padding:0;list-style:none;display:flex}.flow-breakdown summary::-webkit-details-marker{display:none}.flow-breakdown summary>span{font:600 var(--k-text-xs)/1 var(--k-font-mono);color:var(--k-muted)}.flow-breakdown summary>svg{transition:rotate .2s var(--k-ease);margin-left:auto}.flow-breakdown[open] summary>svg{transform:rotate(180deg)}.flow-breakdown summary:focus-visible{outline:3px solid var(--k-focus);outline-offset:2px}.flow-breakdown ul{margin:0;padding:0;list-style:none}.flow-breakdown li{border-top:1px solid var(--k-hair);font:600 var(--k-text-sm)/1.3 var(--k-font-body);justify-content:space-between;gap:10px;padding:10px 0;display:flex}.flow-breakdown li>div{overflow-wrap:anywhere;gap:2px;min-width:0;display:grid}:is(.flow-breakdown li>div>span,.flow-breakdown li>span){font:600 var(--k-text-xs)/1.3 var(--k-font-mono);color:var(--k-muted)}.flow-breakdown>p{font:500 var(--k-text-xs)/1.5 var(--k-font-body);color:var(--k-muted);margin:0;padding:8px 0 14px}.flow-edit-topbar{justify-content:space-between;align-items:center;gap:12px;display:flex}.flow-favourite{border:2px solid var(--k-line);background:var(--k-card);min-height:44px;color:var(--k-ink);box-shadow:var(--k-shadow-sm);font:700 var(--k-text-sm)/1 var(--k-font-body);cursor:pointer;border-radius:0;align-items:center;gap:6px;padding:0 12px;display:inline-flex}.flow-favourite[aria-pressed=true]{background:var(--k-butter);color:var(--k-on-tone)}.flow-favourite:focus-visible{outline:3px solid var(--k-focus);outline-offset:3px}.flow-delete{border:2px solid var(--k-danger-ink);background:var(--k-card);border-radius:0;padding:0 14px}.flow-delete summary{cursor:pointer;min-height:52px;color:var(--k-danger-ink);font:700 var(--k-text-sm)/1 var(--k-font-body);align-items:center;gap:8px;padding:0;list-style:none;display:flex}.flow-delete summary::-webkit-details-marker{display:none}.flow-delete summary:focus-visible{outline:3px solid var(--k-focus);outline-offset:-3px}.flow-delete[open]{background:var(--k-danger-soft);padding-bottom:14px}.flow-delete p{font:500 var(--k-text-sm)/1.5 var(--k-font-body);color:var(--k-ink);overflow-wrap:anywhere;margin:0 0 6px}.flow-delete>.pressable{margin-top:6px}.k-flow .error-banner{border:2px solid var(--k-danger-ink);background:var(--k-danger-soft);color:var(--k-danger-ink);font:600 var(--k-text-sm)/1.5 var(--k-font-body);border-radius:0;margin:0;padding:10px 14px}.manual-entry-form{border:2px solid var(--k-line);background:var(--k-card);gap:16px;padding:16px;display:grid}.k-flow .field{gap:6px;margin:0;display:grid}.k-flow .field>:is(label,span){font:600 var(--k-text-xs)/1.2 var(--k-font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--k-muted)}.k-flow .field>label span{color:var(--k-muted);letter-spacing:0;text-transform:none}.k-flow .field input{border:2px solid var(--k-line);background:var(--k-ground);width:100%;min-height:48px;color:var(--k-ink);font:700 var(--k-text-lg)/1.2 var(--k-font-body);border-radius:0;padding:0 12px}.manual-macro-hint{font:900 1.25rem/1 var(--k-font-display);text-transform:uppercase;color:var(--k-ink);justify-content:space-between;align-items:baseline;margin:4px 0 -6px;display:flex}.manual-macro-hint span{font:600 var(--k-text-xs)/1 var(--k-font-mono);color:var(--k-muted)}.k-flow .review-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.k-flow .review-grid .field{border:2px solid var(--k-line);background:var(--k-card);box-shadow:inset 0 6px 0 var(--tone);padding:10px 10px 8px}.k-flow .review-grid .field:first-child{--tone:var(--k-action)}.k-flow .review-grid .field:nth-child(2){--tone:var(--k-acid)}.k-flow .review-grid .field:nth-child(3){--tone:var(--k-sky-strong)}.k-flow .review-grid .field>label{letter-spacing:0;margin-top:4px}.k-flow .review-grid input{border:0;border-bottom:2px solid var(--k-line);min-height:44px;font:900 1.5rem/1 var(--k-font-display);background:0 0;padding:0 2px}.k-flow .serving-row{box-shadow:none;background:0 0;border:0;border-radius:0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;padding:0;display:flex}.k-flow .serving-label{font:900 1.25rem/1 var(--k-font-display);text-transform:uppercase;color:var(--k-ink)}.k-flow .serving-stepper{border:2px solid var(--k-line);background:var(--k-ground);box-shadow:none;border-radius:0;grid-template-columns:44px 72px 44px;align-items:center;gap:0;padding:0;display:inline-grid}.k-flow .serving-btn{width:44px;height:44px;color:var(--k-ink);box-shadow:none;font:800 1.25rem/1 var(--k-font-body);cursor:pointer;background:0 0;border:0;border-radius:0}.k-flow .serving-btn:not(:disabled):hover{background:var(--k-sky);color:var(--k-on-tone)}.k-flow .serving-input{border:0;border-inline:2px solid var(--k-line);background:var(--k-card);width:100%;min-height:44px;color:var(--k-ink);text-align:center;font:900 1.375rem/1 var(--k-font-display);border-radius:0}.k-flow .serving-hint{font:600 var(--k-text-xs)/1 var(--k-font-mono);color:var(--k-muted)}.k-flow .chip-row{flex-wrap:wrap;gap:8px;display:flex}.k-flow .chip{border:2px solid var(--k-line);background:var(--k-card);min-height:44px;color:var(--k-ink);box-shadow:none;font:700 var(--k-text-sm)/1 var(--k-font-body);cursor:pointer;border-radius:0;padding:0 14px}.k-flow .chip[aria-pressed=true]{background:var(--k-ink);color:var(--k-ground);box-shadow:var(--k-shadow-sm)}.k-flow .chip:focus-visible{outline:3px solid var(--k-focus);outline-offset:2px}.manual-summary{border:2px solid var(--k-on-acid);background:var(--k-acid);color:var(--k-on-acid);box-shadow:4px 4px 0 var(--k-on-acid);border-radius:0;gap:4px;margin:0;padding:14px;display:grid}.manual-summary>div{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.manual-summary>div span{font:600 var(--k-text-xs)/1 var(--k-font-mono);letter-spacing:.04em;text-transform:uppercase}.manual-summary strong{font:900 2.5rem/.9 var(--k-font-display);font-variant-numeric:tabular-nums}.manual-summary p{color:inherit;font:600 var(--k-text-sm)/1.4 var(--k-font-body);margin:0}@media (width>=768px){.app-shell.k-flow{max-width:640px}.k-flow>.app-main{padding-inline:28px}}@media (width>=1000px){.app-shell.k-flow-wide{max-width:960px}.k-flow-wide .flow-review-layout{grid-template-columns:minmax(0,1fr) 300px;gap:24px}.k-flow-wide .flow-review-side{position:sticky;top:24px}}@media (width<=380px){:is(.flow-macros,.k-flow .review-grid){grid-template-columns:minmax(0,1fr)}.flow-macro{grid-template-columns:minmax(0,1fr) 120px;align-items:center}.flow-macro input{text-align:right}.flow-calories{flex-wrap:wrap}}.k-saved{--protein:var(--k-action);--carbs:var(--k-acid);--fat:var(--k-sky-strong);min-height:100dvh}.k-saved>.app-main{padding:12px var(--k-gutter) calc(var(--k-tabbar-h) + var(--safe-bottom,0px) + 24px);align-content:start;gap:14px;display:grid}.k-saved .page-heading{box-shadow:none;background:0 0;border:0;border-radius:0;gap:6px;margin:6px 0 2px;padding:0;display:grid}.k-saved .page-title{font:900 clamp(2.5rem, 11vw, 3.25rem)/.86 var(--k-font-display);letter-spacing:-.01em;text-transform:uppercase;color:var(--k-ink);margin:0}.k-saved .page-sub{max-width:46ch;font:500 var(--k-text-md)/1.5 var(--k-font-body);color:var(--k-muted);margin:0}.k-saved .saved-search-label{font:600 var(--k-text-xs)/1.2 var(--k-font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--k-muted)}.k-saved .discover-search{border:2px solid var(--k-line);background:var(--k-card);color:var(--k-muted);box-shadow:none;border-radius:0;align-items:center;gap:10px;margin:-8px 0 0;padding:0 12px;display:flex}.k-saved .discover-search input{min-width:0;min-height:48px;color:var(--k-ink);font:500 var(--k-text-md)/1.2 var(--k-font-body);background:0 0;border:0;outline:none;flex:1}.k-saved .discover-search:focus-within{outline:3px solid var(--k-focus);outline-offset:2px}.k-saved .discover-chip-row{flex-wrap:wrap;gap:6px;display:flex}.k-saved .discover-chip{border:2px solid var(--k-line);background:var(--k-card);min-height:44px;color:var(--k-ink);box-shadow:none;font:700 var(--k-text-sm)/1 var(--k-font-body);cursor:pointer;border-radius:0;padding:0 14px}.k-saved .discover-chip[aria-pressed=true]{background:var(--k-ink);color:var(--k-ground);box-shadow:var(--k-shadow-sm)}.k-saved .discover-chip:focus-visible{outline:3px solid var(--k-focus);outline-offset:2px}.k-saved .saved-reset{min-height:44px;color:var(--k-ink);font:700 var(--k-text-sm)/1 var(--k-font-body);text-underline-offset:4px;cursor:pointer;background:0 0;border:0;justify-self:start;align-items:center;padding:0;text-decoration:underline;text-decoration-thickness:2px;display:inline-flex}.k-saved .club-results{font:600 var(--k-text-xs)/1.3 var(--k-font-mono);color:var(--k-muted);margin:0}.k-saved :is(.discover-section-header,.saved-section-header){border-bottom:2px solid var(--k-line);align-items:center;gap:10px;margin:10px 0 0;padding:0 0 8px;display:flex}.k-saved :is(.discover-section-title,.saved-section-title){font:900 1.5rem/1 var(--k-font-display);text-transform:uppercase;color:var(--k-ink);margin:0}.k-saved .saved-section-icon{border:2px solid var(--k-line);background:var(--k-sky);width:30px;height:30px;color:var(--k-on-tone);place-items:center;display:grid}.k-saved .discover-count-badge{border:2px solid var(--k-on-acid);background:var(--k-acid);min-width:28px;height:26px;color:var(--k-on-acid);font:600 var(--k-text-xs)/1 var(--k-font-mono);border-radius:0;place-items:center;margin-left:auto;padding:0 6px;display:grid}.k-saved .saved-empty{border:2px dashed var(--k-hair-strong);color:var(--k-muted);font:500 var(--k-text-sm)/1.5 var(--k-font-body);text-align:left;background:0 0;border-radius:0;gap:4px;padding:14px;display:grid}.k-saved .saved-empty strong{font:900 1.25rem/1 var(--k-font-display);text-transform:uppercase;color:var(--k-ink)}.k-saved .saved-empty p{margin:0}.k-saved .discover-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr));gap:12px;display:grid}.k-saved .discover-card{border:2px solid var(--k-line);background:var(--k-card);color:var(--k-ink);box-shadow:var(--k-shadow-sm);border-radius:0;align-content:start;gap:6px;padding:12px;display:grid}.k-saved .discover-card-top{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.k-saved :is(.discover-card-emoji,.saved-meal-emoji){border:2px solid var(--k-line);width:44px;height:44px;color:var(--k-on-tone);border-radius:0;place-items:center;display:grid;rotate:-4deg}.k-saved .star-btn{border:2px solid var(--k-line);background:var(--k-card);width:44px;height:44px;color:var(--k-ink);box-shadow:none;cursor:pointer;border-radius:0;place-items:center;padding:0;display:grid}.k-saved .star-btn[aria-pressed=true]{background:var(--k-butter);color:var(--k-on-tone)}.k-saved .star-btn:focus-visible{outline:3px solid var(--k-focus);outline-offset:2px}.k-saved :is(.discover-card-name,.saved-meal-name){font:800 var(--k-text-md)/1.25 var(--k-font-body);color:var(--k-ink);overflow-wrap:anywhere;margin:2px 0 0}.k-saved .discover-card-cals{font:900 1.75rem/1 var(--k-font-display);font-variant-numeric:tabular-nums;color:var(--k-ink)}.k-saved :is(.saved-portion-note,.saved-macro-summary){font:500 var(--k-text-xs)/1.4 var(--k-font-body);color:var(--k-muted);margin:0}.k-saved .discover-macro-bar{border:1.5px solid var(--k-line);background:var(--k-sunken);border-radius:0;height:10px;display:flex;overflow:hidden}.k-saved .discover-macro-bar span{height:100%;display:block}.k-saved .discover-card-footer{justify-content:space-between;align-items:center;gap:8px;margin-top:4px;display:flex}.k-saved .serving-stepper-compact{border:2px solid var(--k-line);background:var(--k-ground);box-shadow:none;border-radius:0;grid-template-columns:44px auto 44px;align-items:center;gap:0;padding:0;display:inline-grid}.k-saved .ssc-btn{color:var(--k-ink);box-shadow:none;background:0 0;border-radius:0;place-items:center;display:grid}.k-saved .ssc-btn:not(:disabled):hover{background:var(--k-sky);color:var(--k-on-tone)}.k-saved .ssc-val{text-align:center;min-width:36px;font:600 var(--k-text-sm)/1 var(--k-font-mono);color:var(--k-ink)}.k-saved .log-pill-btn{background:var(--k-action);color:var(--k-on-action);box-shadow:inset 0 0 0 2px var(--k-line);filter:drop-shadow(3px 3px 0 var(--k-line));font:800 var(--k-text-sm)/1 var(--k-font-body);cursor:pointer;border-radius:0;padding:0 14px}.k-saved .log-pill-btn:active{filter:none;translate:2px 2px}.k-saved .log-pill-btn:focus-visible{outline:3px solid var(--k-focus);outline-offset:3px}.k-saved .saved-section{gap:10px;margin:12px 0 0;display:grid}.k-saved .page-heading .k-eyebrow{margin:0}.k-saved .saved-card{border:2px solid var(--k-line);background:var(--k-card);box-shadow:none;border-radius:0;padding:0 12px;display:grid}.k-saved .saved-divider{background:var(--k-hair);height:1px;margin:0}.k-saved .saved-meal-row{box-shadow:none;background:0 0;border:0;grid-template-columns:44px minmax(0,1fr);align-items:start;gap:10px 12px;padding:12px 0;display:grid}.k-saved .saved-meal-info{gap:3px;min-width:0;display:grid}.k-saved .saved-meal-meta{font:600 var(--k-text-xs)/1.4 var(--k-font-mono);color:var(--k-muted);flex-wrap:wrap;gap:2px 4px;display:flex}.k-saved .saved-meal-dot{display:none}.k-saved .saved-meal-macros{flex-basis:100%}.k-saved .saved-meal-cals{color:var(--k-ink)}.k-saved .saved-meal-type{border:1.5px solid var(--k-line);font:600 var(--k-text-xs)/1.2 var(--k-font-mono);text-transform:uppercase;color:var(--k-ink);justify-self:start;padding:2px 6px}.k-saved .saved-meal-actions{flex-flow:wrap;grid-column:1/-1;justify-content:flex-start;align-items:center;gap:8px;display:flex}.k-saved .saved-meal-actions .log-pill-btn{margin-left:auto}.k-insights{min-height:100dvh}.k-insights-main{padding:12px var(--k-gutter) calc(var(--k-tabbar-h) + var(--safe-bottom,0px) + 40px);align-content:start;gap:18px;display:grid}.k-insights .progress-page-header{box-shadow:none;background:0 0;border:0;border-radius:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 14px;margin:6px 0 0;padding:0;display:grid}.k-insights-title{gap:6px;min-width:0;display:grid}.k-insights-title .k-eyebrow{margin:0}.k-insights .screen-title{font:900 clamp(2.75rem, 12vw, 3.5rem)/.85 var(--k-font-display);letter-spacing:-.01em;text-transform:uppercase;color:var(--k-ink);margin:0}.k-insights .insights-intro{max-width:34ch;font:500 var(--k-text-md)/1.45 var(--k-font-body);color:var(--k-muted);margin:0}.k-insights .progress-page-header .momo-sticker{border:2px solid var(--k-on-acid);background:var(--k-momo);width:76px;height:80px;box-shadow:var(--k-shadow-sm);border-radius:48% 48% 10% 10%;padding:1px;display:block;transform:rotate(6deg)}.k-insights .progress-page-header .momo-sticker svg{width:100%;height:100%;display:block}.k-insights .club-library-stamp{border:2px solid var(--k-on-acid);background:var(--k-acid);color:var(--k-on-acid);box-shadow:var(--k-shadow-sm);font:600 var(--k-text-xs)/1 var(--k-font-mono);letter-spacing:.06em;border-radius:0;grid-column:1/-1;justify-self:start;margin:4px 0 0;padding:6px 10px;rotate:-2deg}.k-insights .k-notice .pressable{justify-self:start}.k-insights :is(.progress-card,.habit-milestones){padding:var(--k-space-4);border:2px solid var(--k-line);background:var(--k-card);color:var(--k-ink);box-shadow:none;border-radius:0;margin:0}.k-insights .progress-card-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin:0 0 10px;display:flex}.k-insights .progress-card-title{font:900 1.5rem/1 var(--k-font-display);letter-spacing:.01em;text-transform:uppercase;color:var(--k-ink);margin:0}.k-insights .page-sub{font:500 var(--k-text-sm)/1.45 var(--k-font-body);color:var(--k-muted);margin:4px 0 0}.k-insights .k-journey{box-shadow:var(--k-shadow);margin:0}.k-insights .k-journey-stats div{border:2px solid var(--k-line);background:var(--tone);padding:8px 10px}.k-insights .k-journey-stats div:first-child{--tone:var(--k-peach)}.k-insights .k-journey-stats div:nth-child(2){--tone:var(--k-butter)}.k-insights .k-journey-stats div:nth-child(3){--tone:var(--k-sky)}.k-insights .k-journey-stats :is(dt,dd){color:var(--k-on-tone)}.k-insights .habit-heading{grid-template-columns:44px minmax(0,1fr);align-items:center;gap:12px;display:grid}.k-insights .habit-emblem{border:2px solid var(--k-line);background:var(--k-butter);width:44px;height:44px;color:var(--k-on-tone);place-items:center;display:grid;rotate:-5deg}.k-insights .habit-heading h2{font:900 1.375rem/1 var(--k-font-display);text-transform:uppercase;color:var(--k-ink);margin:0}.k-insights .habit-heading p{font:600 var(--k-text-xs)/1.3 var(--k-font-mono);color:var(--k-muted);margin:4px 0 0}.k-insights .habit-path{grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;margin:18px 0 10px;padding:0;list-style:none;display:grid;position:relative}.k-insights .habit-path:before{content:"";border-top:2px dashed var(--k-hair-strong);position:absolute;top:21px;left:10%;right:10%}.k-insights .habit-path li{text-align:center;font:600 var(--k-text-xs)/1.2 var(--k-font-body);color:var(--k-muted);justify-items:center;gap:6px;display:grid;position:relative}.k-insights .habit-path li:after{content:none}.k-insights .habit-node{border:2px solid var(--k-line);background:var(--k-card);width:44px;height:44px;color:var(--k-ink);box-shadow:none;font:900 1.125rem/1 var(--k-font-display);border-radius:0;place-items:center;display:grid}.k-insights .habit-path li.is-achieved{color:var(--k-ink)}.k-insights .habit-path li.is-achieved .habit-node{border-color:var(--k-on-acid);background:var(--k-acid);color:var(--k-on-acid);box-shadow:var(--k-shadow-sm);rotate:-4deg}.k-insights .habit-path li.is-achieved:nth-child(2n) .habit-node{rotate:4deg}.k-insights .habit-footnote{font:500 var(--k-text-xs)/1.45 var(--k-font-body);color:var(--k-muted);margin:0}.k-insights .consistency-streak{border:2px solid var(--k-line);background:var(--k-peach);color:var(--k-on-tone);font:600 var(--k-text-xs)/1 var(--k-font-mono);padding:4px 8px}.k-insights .consistency-headline{align-items:baseline;gap:8px;margin-top:4px;display:flex}.k-insights .consistency-number{font:900 clamp(3.5rem, 16vw, 4.5rem)/.85 var(--k-font-display);font-variant-numeric:tabular-nums;color:var(--k-ink)}.k-insights .consistency-unit{font:800 var(--k-text-lg)/1.1 var(--k-font-body);color:var(--k-ink)}.k-insights .consistency-sub{font:600 var(--k-text-xs)/1.3 var(--k-font-mono);color:var(--k-muted);margin:4px 0 8px}:is(.k-insights,.k-you) .insights-heat{grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin:12px 0 8px;display:grid}:is(.k-insights,.k-you) .insights-heat-cell{aspect-ratio:1;border:2px solid var(--k-hair-strong);background:var(--k-sunken);box-shadow:none;border-radius:0;display:block}:is(.k-insights,.k-you) .insights-heat-cell.is-logged{border-color:var(--k-on-acid);background:var(--k-acid)}:is(.k-insights,.k-you) .insights-heat-cell.is-future{background:0 0;border-style:dashed}.k-insights .insights-legend{font:600 var(--k-text-xs)/1 var(--k-font-mono);color:var(--k-muted);flex-wrap:wrap;gap:6px 14px;display:flex}.k-insights .insights-legend span{align-items:center;gap:6px;display:inline-flex}.k-insights .insights-legend i{border:2px solid var(--k-hair-strong);background:var(--k-sunken);width:12px;height:12px;display:inline-block}.k-insights .insights-legend i.is-logged{border-color:var(--k-on-acid);background:var(--k-acid)}.k-insights .insights-legend i.is-future{background:0 0;border-style:dashed}.k-insights .own-past-callout{border:2px solid var(--k-line);background:var(--k-butter);color:var(--k-on-tone);font:500 var(--k-text-sm)/1.4 var(--k-font-body);border-radius:0;gap:2px;margin-top:14px;padding:10px 12px;display:grid}.k-insights .own-past-callout strong{font-weight:800}.k-insights .insights-range-control{box-shadow:none;background:0 0;border:0;gap:8px;margin:8px 0 -4px;padding:0;display:grid}.k-insights .insights-range-control h2{font:900 1.875rem/1 var(--k-font-display);text-transform:uppercase;color:var(--k-ink);margin:0}.k-insights .insights-range-control p{font:600 var(--k-text-xs)/1.3 var(--k-font-mono);color:var(--k-muted);margin:0}.k-insights .range-chips{gap:6px;display:flex}.k-insights .range-chip{border:2px solid var(--k-line);background:var(--k-card);min-width:76px;min-height:44px;color:var(--k-ink);box-shadow:none;font:700 var(--k-text-sm)/1 var(--k-font-body);cursor:pointer;border-radius:0;padding:0 14px}.k-insights .range-chip[aria-pressed=true]{background:var(--k-ink);color:var(--k-ground);box-shadow:var(--k-shadow-sm)}.k-insights .range-chip:focus-visible{outline:3px solid var(--k-focus);outline-offset:2px}.k-insights .progress-log-btn{border:2px solid var(--k-on-action);background:var(--k-action);min-height:44px;color:var(--k-on-action);box-shadow:var(--k-shadow-sm);font:800 var(--k-text-sm)/1 var(--k-font-body);cursor:pointer;border-radius:0;padding:0 14px}.k-insights .progress-log-btn:active{box-shadow:none;translate:2px 2px}.k-insights .progress-log-btn:focus-visible{outline:3px solid var(--k-focus);outline-offset:3px}.k-insights .progress-avg-pill{border:2px solid var(--k-on-acid);background:var(--k-acid);color:var(--k-on-acid);font:600 var(--k-text-xs)/1 var(--k-font-mono);border-radius:0;padding:6px 10px}.k-insights .progress-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 12px;display:grid}.k-insights .progress-stat-card{border:2px solid var(--k-line);background:var(--k-card);min-width:0;color:var(--k-ink);box-shadow:none;border-radius:0;align-content:start;gap:4px;padding:10px 12px;display:grid}.k-insights .progress-stat-card .eyebrow{font:600 var(--k-text-xs)/1.2 var(--k-font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--k-muted)}.k-insights .progress-stat-value{font:900 1.625rem/1 var(--k-font-display);font-variant-numeric:tabular-nums;color:var(--k-ink);overflow-wrap:anywhere}.k-insights .progress-stat-sub{font:500 var(--k-text-xs)/1.3 var(--k-font-body);color:var(--k-muted)}.k-insights .progress-stat-card.is-accent{background:var(--k-sky)}.k-insights .progress-stat-card.is-accent :is(.eyebrow,.progress-stat-value,.progress-stat-sub){color:var(--k-on-tone)}.k-insights :is(.insights-empty,.insights-chart-note,.chart-footnote,.chart-empty){font:500 var(--k-text-xs)/1.45 var(--k-font-body);color:var(--k-muted);margin:8px 0 0}.k-insights .progress-chart-wrap{box-shadow:none;background:0 0;border:0;margin:6px 0 0;padding:8px 0 0}.k-insights .progress-chart-wrap svg{width:100%;height:auto;display:block;overflow:visible}.k-insights .history-link-card{border:2px solid var(--k-line);background:var(--k-card);width:100%;min-height:60px;color:var(--k-ink);box-shadow:var(--k-shadow-sm);font:inherit;text-align:left;cursor:pointer;border-radius:0;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;margin:0;padding:8px 12px;display:grid}.k-insights .history-link-card:active{box-shadow:none;translate:2px 2px}.k-insights .history-link-card:focus-visible{outline:3px solid var(--k-focus);outline-offset:3px}.k-insights .history-link-icon{border:2px solid var(--k-line);background:var(--k-mint);width:40px;height:40px;color:var(--k-on-tone);border-radius:0;place-items:center;display:grid}.k-insights .history-link-text{gap:2px;min-width:0;display:grid}.k-insights .history-link-text strong{font:800 var(--k-text-md)/1.2 var(--k-font-body)}.k-insights .history-link-text span{font:500 var(--k-text-xs)/1.3 var(--k-font-body);color:var(--k-muted)}.k-insights .history-link-chevron{transition:rotate .2s var(--k-ease);display:inline-flex}.k-insights .history-link-card[aria-expanded=true] .history-link-chevron{rotate:90deg}.k-insights .history-row{border-top:1px solid var(--k-hair);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;min-height:52px;display:grid}.k-insights .history-row:first-child{border-top:0}.k-insights .history-date{font:600 var(--k-text-xs)/1.3 var(--k-font-mono);color:var(--k-muted)}.k-insights .history-weight{font:900 1.25rem/1 var(--k-font-display);color:var(--k-ink)}.k-insights .btn-delete{min-height:44px;color:var(--k-danger-ink);box-shadow:none;font:700 var(--k-text-sm)/1 var(--k-font-body);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;border-radius:0;padding:0 8px;text-decoration:underline}.k-most-logged{margin:10px 0 0;padding:0;list-style:none;display:grid}.k-most-logged li{border-top:1px solid var(--k-hair);grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:52px;display:grid}.k-most-logged li:first-child{border-top:0}.k-most-name{font:700 var(--k-text-md)/1.25 var(--k-font-body);color:var(--k-ink);overflow-wrap:anywhere}.k-most-count{border:2px solid var(--k-line);font:600 var(--k-text-xs)/1 var(--k-font-mono);color:var(--k-ink);padding:4px 8px}.k-most-logged li:first-child .k-most-count{border-color:var(--k-on-acid);background:var(--k-acid);color:var(--k-on-acid)}.k-insights div.torn-archive{background:0 0;border:0;flex-wrap:wrap;gap:8px;margin:10px 0 0;padding:0;display:flex}.k-insights .torn-stub{border:2px solid var(--k-line);background:var(--k-card);color:var(--k-ink);box-shadow:2px 2px 0 var(--k-shadow-color);font:600 var(--k-text-xs)/1 var(--k-font-mono);border-radius:0;margin:0;padding:8px 12px 8px 18px;position:relative;transform:none}.k-insights .torn-stub:before{content:"";border-left:2px dotted var(--k-hair-strong);position:absolute;top:4px;bottom:4px;left:7px}.k-insights .torn-stub:after{content:none}.k-insights .torn-stub:nth-child(4n+1){background:var(--k-butter);color:var(--k-on-tone)}.k-insights .torn-stub:nth-child(4n+2){background:var(--k-mint);color:var(--k-on-tone)}.k-insights .torn-stub:nth-child(4n+3){background:var(--k-sky);color:var(--k-on-tone)}.k-insights .torn-stub:nth-child(4n){background:var(--k-pink);color:var(--k-on-tone)}.k-insights .badge-count-pill{border:2px solid var(--k-line);background:var(--k-card);color:var(--k-ink);font:600 var(--k-text-xs)/1 var(--k-font-mono);border-radius:0;padding:4px 8px}.k-insights .streak-banner{border:2px solid var(--k-on-acid);background:var(--k-acid);color:var(--k-on-acid);box-shadow:var(--k-shadow-sm);border-radius:0;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:12px;margin:0 0 12px;padding:10px 12px;display:grid}.k-insights .streak-banner-fire{border:2px solid var(--k-on-acid);background:var(--k-action);width:44px;height:44px;color:var(--k-on-action);place-items:center;display:grid;rotate:-6deg}.k-insights .streak-banner-num{font:900 1.375rem/1 var(--k-font-display);text-transform:uppercase;color:var(--k-on-acid)}.k-insights .streak-banner-sub{font:600 var(--k-text-sm)/1.3 var(--k-font-body);color:var(--k-on-acid)}.k-insights .badge-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,140px),1fr));gap:8px;display:grid}.k-insights .badge-card{border:2px solid var(--k-line);background:var(--k-card);color:var(--k-ink);box-shadow:none;text-align:left;border-radius:0;align-content:start;justify-items:start;gap:4px;margin:0;padding:10px;display:grid}.k-insights .badge-card.unlocked{background:var(--k-butter);color:var(--k-on-tone);box-shadow:var(--k-shadow-sm)}.k-insights .badge-card.locked{color:var(--k-muted);filter:none;opacity:1;background:0 0;border-style:dashed}.k-insights .badge-emoji{background:0 0;border:2px solid;place-items:center;width:40px;height:40px;display:grid}.k-insights .badge-name{font:800 var(--k-text-sm)/1.2 var(--k-font-body)}.k-insights .badge-desc{font:500 var(--k-text-xs)/1.35 var(--k-font-body)}.k-insights .modal-backdrop{z-index:var(--k-z-sheet);background:var(--k-scrim);justify-content:center;align-items:flex-end;padding:0;display:flex;position:fixed;inset:0}.k-insights .modal-sheet.weight-log-sheet{width:100%;max-width:var(--k-shell);max-height:min(90dvh,780px);padding:20px var(--k-gutter) calc(20px + env(safe-area-inset-bottom,0px));border:2px solid var(--k-line);border-radius:var(--k-radius-sheet) var(--k-radius-sheet) 0 0;background:var(--k-card);color:var(--k-ink);box-shadow:none;border-bottom:0;gap:10px;margin:0;display:grid;overflow-y:auto}.k-insights .weight-log-sheet h2{font:900 1.875rem/.95 var(--k-font-display);text-transform:uppercase;color:var(--k-ink);margin:0}.k-insights .weight-log-sheet>p{font:500 var(--k-text-sm)/1.45 var(--k-font-body);color:var(--k-muted);margin:0}.k-insights .weight-log-sheet form{gap:10px;margin:6px 0 0;display:grid}.k-insights .weight-log-sheet .field{gap:6px;margin:0;display:grid}.k-insights .weight-log-sheet .field label{font:600 var(--k-text-xs)/1.2 var(--k-font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--k-muted);margin:0}.k-insights .weight-log-sheet .field input{border:2px solid var(--k-line);background:var(--k-ground);width:100%;min-height:56px;color:var(--k-ink);box-shadow:none;font:900 1.75rem/1 var(--k-font-display);border-radius:0;padding:0 14px}.k-insights .weight-log-sheet .field input:focus{border-color:var(--k-line);box-shadow:none;outline:3px solid var(--k-focus);outline-offset:2px}.k-insights .weight-log-sheet .error-banner{border:2px solid var(--k-danger-ink);background:var(--k-danger-soft);color:var(--k-danger-ink);font:600 var(--k-text-sm)/1.5 var(--k-font-body);border-radius:0;margin:0;padding:10px 14px}@media (width>=720px){.k-insights .modal-backdrop{align-items:center;padding:24px}.k-insights .modal-sheet.weight-log-sheet{border-bottom:2px solid var(--k-line);box-shadow:var(--k-shadow);border-radius:0}}.k-you{min-height:100dvh}.k-you-main{padding:12px var(--k-gutter) calc(var(--k-tabbar-h) + var(--safe-bottom,0px) + 40px);grid-template-columns:minmax(0,1fr);align-content:start;gap:16px;display:grid}.k-you .you-header{box-shadow:none;background:0 0;border:0;border-radius:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;margin:6px 0 0;padding:0;display:grid}.k-you .you-header>div:first-child{justify-items:start;gap:6px;min-width:0;display:grid}.k-you .page-title{font:900 clamp(2.75rem, 12vw, 3.5rem)/.85 var(--k-font-display);letter-spacing:-.01em;text-transform:uppercase;color:var(--k-ink);margin:0}.k-you .you-header .page-sub{font:700 var(--k-text-md)/1.3 var(--k-font-body);color:var(--k-muted);overflow-wrap:anywhere;margin:0}.k-you .you-header-stamp{border:2px solid var(--k-on-acid);background:var(--k-acid);color:var(--k-on-acid);box-shadow:var(--k-shadow-sm);font:600 var(--k-text-xs)/1 var(--k-font-mono);letter-spacing:.06em;margin:4px 0 0;padding:6px 10px;rotate:-2deg}.k-you .you-momo-mark{border:2px solid var(--k-on-acid);background:var(--k-momo);width:76px;height:80px;box-shadow:var(--k-shadow-sm);border-radius:48% 48% 10% 10%;padding:1px;animation:.56s cubic-bezier(.3,1.6,.5,1) .12s both k-log-momo-hop;rotate:6deg}.k-you .you-momo-mark:empty{display:none}.k-you .you-momo-mark .momo-sticker{width:100%;height:100%;box-shadow:none;background:0 0;border:0;border-radius:0;margin:0;padding:0;display:block;transform:rotate(0)}.k-you .you-momo-mark svg{width:100%;height:100%;display:block}.k-you .you-status{border:2px solid var(--k-line);background:var(--k-mint);color:var(--k-on-tone);font:600 var(--k-text-xs)/1.2 var(--k-font-mono);justify-self:start;margin:-4px 0 0;padding:5px 10px}.k-you .poiem-settings-finder{margin:0;position:relative}.k-you .poiem-search-field{border:2px solid var(--k-line);background:var(--k-card);min-height:52px;color:var(--k-ink);box-shadow:var(--k-shadow-sm);border-radius:0;align-items:center;gap:10px;padding:0 52px 0 14px;display:flex}.k-you .poiem-search-field:focus-within{border-color:var(--k-line);outline:3px solid var(--k-focus);outline-offset:3px}.k-you .poiem-search-field input{min-width:0;min-height:48px;color:var(--k-ink);box-shadow:none;font:600 var(--k-text-md)/1.2 var(--k-font-body);background:0 0;border:0;border-radius:0;outline:none;flex:1;padding:0}.k-you .poiem-search-field input::placeholder{color:var(--k-muted)}.k-you .poiem-search-clear{color:var(--k-ink);border-radius:0;top:4px;right:4px}.k-you .poiem-search-clear:hover{background:var(--k-sunken);color:var(--k-ink)}.k-you .poiem-search-clear:focus-visible{outline:3px solid var(--k-focus);outline-offset:-3px}.k-you .poiem-settings-results{border:2px solid var(--k-line);background:var(--k-card);box-shadow:var(--k-shadow);border-radius:0;margin:8px 0 0;padding:4px}.k-you .poiem-search-status{font:600 var(--k-text-xs)/1.4 var(--k-font-mono);color:var(--k-muted);margin:8px 10px}.k-you .poiem-settings-results a{color:var(--k-ink);border-radius:0}.k-you .poiem-settings-results a>svg{color:var(--k-ink)}.k-you .poiem-settings-results strong{font:800 var(--k-text-md)/1.2 var(--k-font-body)}.k-you .poiem-settings-results small{font:500 var(--k-text-xs)/1.35 var(--k-font-body);color:var(--k-muted)}.k-you .poiem-settings-results a:is(:hover,:focus-visible){background:var(--k-acid);color:var(--k-on-acid)}.k-you .poiem-settings-results a:is(:hover,:focus-visible) :is(small,svg){color:var(--k-on-acid)}.k-you .poiem-settings-results a:focus-visible{outline:3px solid var(--k-on-acid);outline-offset:-3px}.k-you .appearance-settings{padding:var(--k-space-4);border:2px solid var(--k-line);background:var(--k-butter);color:var(--k-on-tone);scroll-margin-top:calc(var(--you-toolbar-height,132px) + 12px);border-radius:0;gap:12px;margin:0;display:grid}.k-you .appearance-settings-copy h2{font:900 1.5rem/1 var(--k-font-display);text-transform:uppercase;color:var(--k-on-tone);margin:0 0 4px}.k-you .appearance-settings-copy p{font:500 var(--k-text-sm)/1.45 var(--k-font-body);color:var(--k-on-tone);margin:0}.k-you .appearance-control{color:var(--k-on-tone)}.k-you .appearance-legend{font:600 var(--k-text-xs)/1.2 var(--k-font-mono);letter-spacing:.06em;text-transform:uppercase;margin:0 0 6px}.k-you .appearance-options{box-shadow:none;background:0 0;border:0;border-radius:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:0;display:grid}.k-you .appearance-option-face{border:2px solid var(--k-line);background:var(--k-card);min-height:48px;color:var(--k-ink);font:800 var(--k-text-sm)/1.2 var(--k-font-body);border-radius:0;padding:0 8px;transform:none}.k-you .appearance-option:hover input:not(:checked)+.appearance-option-face{background:var(--k-sunken);color:var(--k-ink);transform:none}.k-you .appearance-option>input:checked+.appearance-option-face{background:var(--k-ink);color:var(--k-ground);box-shadow:var(--k-shadow-sm)}.k-you .appearance-option>input:active+.appearance-option-face{transform:translate(1px,1px)}.k-you .appearance-option>input:focus-visible+.appearance-option-face{outline:3px solid var(--k-focus);outline-offset:3px}.k-you .you-toolbar{z-index:20;margin:0 calc(var(--k-gutter) * -1);padding:6px var(--k-gutter) 8px;border:0;border-bottom:2px solid var(--k-line);background:var(--k-ground);box-shadow:none;border-radius:0;gap:6px;display:grid;position:sticky;top:0}.k-you .you-section-picker{align-items:center;gap:6px;min-width:0;display:flex}.k-you .you-shortcuts{scrollbar-width:none;flex:1;gap:6px;min-width:0;margin:-5px;padding:5px;display:flex;overflow-x:auto}.k-you .you-shortcuts::-webkit-scrollbar{display:none}.k-you .you-shortcuts a{border:2px solid var(--k-line);background:var(--k-card);min-height:44px;color:var(--k-ink);box-shadow:none;font:700 var(--k-text-sm)/1 var(--k-font-body);white-space:nowrap;border-radius:0;flex:none;align-items:center;padding:0 12px;text-decoration:none;display:inline-flex}.k-you .you-shortcuts a:hover{background:var(--k-sunken);color:var(--k-ink)}.k-you .you-shortcuts a[aria-current=location]{background:var(--k-ink);color:var(--k-ground);border-color:var(--k-ink)}.k-you .you-shortcuts a:focus-visible{outline:3px solid var(--k-focus);outline-offset:2px}.k-you .you-more-sections{border:2px solid var(--k-line);background:var(--k-acid);min-height:44px;color:var(--k-on-acid);box-shadow:none;border-radius:0;flex:0 0 44px;place-items:center;display:grid}.k-you .you-save-bar{--button-padding-inline:.875rem;--button-font-size:.875rem;--action-height:2.75rem;background:0 0;border:0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 10px;padding:0;display:flex}.k-you .you-save-bar .settings-saved-banner{color:var(--k-muted);font:600 var(--k-text-xs)/1.2 var(--k-font-mono);text-align:left;background:0 0;border:0;border-radius:0;align-items:center;gap:6px;margin:0;padding:0;display:inline-flex}.k-you .you-toolbar.has-changes .settings-saved-banner{color:var(--k-ink)}.k-you .you-unsaved-dot{border:2px solid var(--k-line);background:var(--k-action);border-radius:0;width:10px;height:10px;rotate:45deg}.k-you .you-save-error{min-height:44px;font:700 var(--k-text-sm)/1.2 var(--k-font-body);color:var(--k-danger-ink);text-underline-offset:3px;flex-basis:100%;align-items:center;text-decoration:underline;display:flex}.k-you .you-section{scroll-margin-top:calc(var(--you-toolbar-height,132px) + 12px);gap:10px;padding:12px 0 0;display:grid}.k-you .you-section:focus{outline:none}.k-you .you-section:focus-visible{outline:3px solid var(--k-focus);outline-offset:6px}.k-you .you-section-heading{background:0 0;border:0;justify-items:start;gap:8px;margin:0 0 4px;padding:0;display:grid}.k-you .you-section-heading h2{border:2px solid var(--k-line);background:var(--tone,var(--k-card));max-width:100%;color:var(--k-on-tone);box-shadow:var(--k-shadow-sm);font:900 clamp(1.625rem, 7vw, 2rem)/1 var(--k-font-display);letter-spacing:.01em;text-transform:uppercase;border-radius:0;margin:0;padding:5px 10px 3px;rotate:-1.5deg}.k-you .you-section-heading p{font:500 var(--k-text-sm)/1.45 var(--k-font-body);color:var(--k-muted);margin:0}.k-you .you-section[id=you-profile]{--tone:var(--k-peach)}.k-you .you-section[id=you-preferences]{--tone:var(--k-sky)}.k-you .you-section[id=you-momo]{--tone:var(--k-pink)}.k-you .you-section[id=you-ai]{--tone:var(--k-mint)}.k-you .you-section[id=you-account]{--tone:var(--k-butter)}.k-you .you-section[id=you-data]{--tone:var(--k-peach)}.k-you .settings-section-label{font:600 var(--k-text-xs)/1.2 var(--k-font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--k-muted);margin:8px 0 0}.k-you :is(.you-pause-note,.settings-clamp-note){border:2px solid var(--k-line);background:var(--k-butter);color:var(--k-on-tone);font:500 var(--k-text-sm)/1.45 var(--k-font-body);border-radius:0;margin:0;padding:10px 12px}.k-you .error-banner{border:2px solid var(--k-danger-ink);background:var(--k-danger-soft);color:var(--k-danger-ink);font:600 var(--k-text-sm)/1.5 var(--k-font-body);border-radius:0;margin:0;padding:10px 14px}.k-you .settings-goals-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;display:grid}.k-you .settings-goal-card{border:2px solid var(--k-line);background:var(--k-card);min-width:0;box-shadow:inset 0 6px 0 var(--tone);border-radius:0;gap:4px;padding:14px 12px 10px;display:grid}.k-you .settings-goal-card:first-child{--tone:var(--k-acid);border-color:var(--k-on-acid);background:var(--k-acid);box-shadow:var(--k-shadow-sm)}.k-you .settings-goal-card:nth-child(2){--tone:var(--k-action)}.k-you .settings-goal-card:nth-child(3){--tone:var(--k-acid)}.k-you .settings-goal-card:nth-child(4){--tone:var(--k-sky-strong)}.k-you .settings-goal-label{font:600 var(--k-text-xs)/1.2 var(--k-font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--k-muted)}.k-you .settings-goal-value{font:900 2rem/1 var(--k-font-display);font-variant-numeric:tabular-nums;color:var(--k-ink)}.k-you .settings-goal-card:first-child :is(.settings-goal-label,.settings-goal-value){color:var(--k-on-acid)}@media (width>=400px){.k-you .settings-goals-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.k-you .settings-card{border:2px solid var(--k-line);background:var(--k-card);color:var(--k-ink);box-shadow:none;border-radius:0;margin:0;padding:0 16px;display:grid;overflow:visible}.k-you .settings-card .page-sub{font:500 var(--k-text-sm)/1.45 var(--k-font-body);color:var(--k-muted);margin:12px 0 0}.k-you .settings-card>.page-sub:last-child{margin-bottom:12px}.k-you .settings-row{border:0;align-items:center;gap:12px;min-height:60px;padding:8px 0;display:flex}.k-you .settings-row+.settings-row{border-top:1px solid var(--k-hair)}.k-you .settings-row-labels{flex:1;gap:2px;min-width:0;display:grid}.k-you .settings-row-label{font:700 var(--k-text-md)/1.25 var(--k-font-body);color:var(--k-ink)}.k-you .settings-row-hint{font:500 var(--k-text-xs)/1.35 var(--k-font-body);color:var(--k-muted)}.k-you .settings-row-control{flex-shrink:0;align-items:center;gap:6px;max-width:55%;display:flex}.k-you .settings-row:has(.settings-key-wrap,input[list]){flex-wrap:wrap;gap:8px;padding:12px 0}.k-you .settings-row:has(.settings-key-wrap,input[list]) .settings-row-control{flex:100%;max-width:none}.k-you .settings-row-control>input[list]{max-width:none}.k-you :is(.settings-input,.settings-select,.settings-textarea){border:2px solid var(--k-line);background:var(--k-ground);width:100%;color:var(--k-ink);box-shadow:none;border-radius:0;outline:none}.k-you :is(.settings-input,.settings-select){max-width:168px;min-height:44px;font:700 var(--k-text-sm)/1.2 var(--k-font-body);padding:0 10px}.k-you .settings-textarea{font:500 var(--k-text-sm)/1.5 var(--k-font-body);padding:10px 12px}.k-you :is(.settings-input,.settings-select,.settings-textarea):focus{border-color:var(--k-line);outline:3px solid var(--k-focus);outline-offset:2px}.k-you .settings-select:disabled{background:var(--k-sunken);color:var(--k-muted);border-color:var(--k-hair-strong)}.k-you .settings-key-wrap{align-items:center;gap:6px;width:100%;display:flex}.k-you .settings-key-wrap .settings-input{flex:1;max-width:none}.k-you .settings-key-toggle{border:2px solid var(--k-line);background:var(--k-card);min-width:56px;min-height:44px;color:var(--k-ink);font:800 var(--k-text-xs)/1 var(--k-font-body);border-radius:0;padding:0 10px}.k-you .settings-key-toggle[aria-pressed=true]{background:var(--k-ink);color:var(--k-ground)}.k-you .settings-byok-note{font:500 var(--k-text-xs)/1.5 var(--k-font-body);color:var(--k-muted);margin:0;padding:12px 0 4px}.k-you .settings-key-help{color:var(--k-ink);text-underline-offset:3px;align-items:center;gap:2px;font-weight:800;text-decoration:underline;text-decoration-thickness:2px;display:inline-flex}.k-you .settings-accuracy-warning{border:2px solid var(--k-line);background:var(--k-butter);color:var(--k-on-tone);border-radius:0;gap:10px;margin:4px 0 12px;padding:12px;display:grid}.k-you .settings-accuracy-warning p{font:500 var(--k-text-sm)/1.45 var(--k-font-body);color:var(--k-on-tone);margin:0}.k-you .settings-accuracy-fix{border:2px solid var(--k-line);background:var(--k-card);min-height:44px;color:var(--k-ink);box-shadow:var(--k-shadow-sm);font:800 var(--k-text-xs)/1.3 var(--k-font-body);border-radius:0;justify-self:start;padding:8px 12px}.k-you .settings-field-block{border-top:1px solid var(--k-hair);gap:8px;padding:12px 0;display:grid}.k-you .settings-divider{background:var(--k-hair);height:1px;margin:0 -16px}.k-you :is(.settings-data-btn,.settings-link-row,.settings-signout-btn){width:calc(100% + 32px);min-height:52px;color:var(--k-ink);box-shadow:none;font:700 var(--k-text-md)/1.25 var(--k-font-body);text-align:left;background:0 0;border:0;border-radius:0;justify-content:space-between;align-items:center;gap:8px;margin:0 -16px;padding:0 16px;text-decoration:none;transition:background-color .12s;display:flex;transform:none}.k-you :is(.settings-data-btn,.settings-link-row,.settings-signout-btn):is(:hover,:active){background:var(--k-sunken);color:var(--k-ink);box-shadow:none;transform:none}.k-you :is(.settings-data-btn,.settings-link-row,.settings-signout-btn):focus-visible{outline:3px solid var(--k-focus);outline-offset:-3px}.k-you .settings-data-btn.danger{color:var(--k-danger-ink)}.k-you .settings-data-btn.danger:is(:hover,:active){background:var(--k-danger-soft);color:var(--k-danger-ink)}.k-you :is(.settings-data-btn,.settings-signout-btn):disabled{color:var(--k-muted);cursor:not-allowed;background:0 0}.k-you .settings-link-chevron{color:var(--k-muted);flex-shrink:0}.k-you .settings-row-control .settings-data-btn{border:2px solid var(--k-line);background:var(--k-card);width:auto;min-height:44px;box-shadow:var(--k-shadow-sm);font:800 var(--k-text-sm)/1 var(--k-font-body);justify-content:center;margin:0;padding:0 14px}.k-you .settings-row-control .settings-data-btn:active{box-shadow:none;translate:2px 2px}.k-you .settings-account-row{align-items:center;gap:12px;padding:14px 0 10px;display:flex}.k-you .account-avatar{border:2px solid var(--k-line);object-fit:cover;border-radius:0;flex:none;width:48px;height:48px}.k-you .account-avatar-fallback{background:var(--k-acid);color:var(--k-on-acid);font:900 1.375rem/1 var(--k-font-display);place-items:center;display:grid}.k-you .account-info{flex:auto;min-width:0;overflow:hidden}.k-you .account-info :is(strong,span){text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.k-you .account-info strong{font:800 var(--k-text-md)/1.25 var(--k-font-body);color:var(--k-ink)}.k-you .account-info span{font:500 var(--k-text-xs)/1.35 var(--k-font-body);color:var(--k-muted)}.k-you .settings-card .field{gap:6px;margin:12px 0 0;display:grid}.k-you .settings-card .field label{font:600 var(--k-text-xs)/1.2 var(--k-font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--k-muted);margin:0}.k-you .settings-card .field input{border:2px solid var(--k-line);background:var(--k-ground);width:100%;min-height:48px;color:var(--k-ink);box-shadow:none;font:600 var(--k-text-md)/1.2 var(--k-font-body);border-radius:0;padding:0 12px}.k-you .settings-card .field input:focus{border-color:var(--k-line);box-shadow:none;outline:3px solid var(--k-focus);outline-offset:2px}.k-you .settings-card[role=region]{border-color:var(--k-danger-ink);box-shadow:4px 4px 0 var(--k-danger-ink)}.k-you .settings-card[role=region]>h2{font:900 1.5rem/1 var(--k-font-display);text-transform:uppercase;color:var(--k-danger-ink);margin:14px 0 0}.k-you .wardrobe-grid{flex-wrap:wrap;gap:8px;padding:12px 0;display:flex}.k-you .wardrobe-grid:empty{display:none}.k-you .wardrobe-item.is-owned{border:2px solid var(--k-line);background:var(--k-butter);min-height:52px;color:var(--k-on-tone);font:700 var(--k-text-sm)/1.25 var(--k-font-body);border-radius:0;outline:none;align-items:center;gap:8px;padding:8px 10px;display:flex}.k-you .roast-preview{border:2px solid var(--k-line);background:var(--k-butter);color:var(--k-on-tone);border-radius:0;justify-items:start;gap:10px;margin:4px 0 12px;padding:12px;display:grid}.k-you .roast-preview-reply{margin:0}.k-you .roast-preview-reply p{font:600 var(--k-text-md)/1.45 var(--k-font-body);color:var(--k-on-tone);margin:0}.k-you .roast-preview-hint{font:500 var(--k-text-xs)/1.4 var(--k-font-body);color:var(--k-on-tone);margin:0}.k-you .roast-preview .today-shortcut{border:2px solid var(--k-on-action);background:var(--k-action);min-height:44px;color:var(--k-on-action);box-shadow:var(--k-shadow-sm);font:800 var(--k-text-sm)/1 var(--k-font-body);border-radius:0;align-items:center;gap:6px;padding:0 14px;display:inline-flex}.k-you .roast-preview .today-shortcut:active{box-shadow:none;translate:2px 2px}.k-you .you-disclosure{border:2px solid var(--k-line);background:var(--k-card);color:var(--k-ink);box-shadow:var(--k-shadow-sm);border-radius:0;margin:4px 0 0}.k-you .you-disclosure>summary{min-height:64px;color:var(--k-ink);font:800 var(--k-text-md)/1.25 var(--k-font-body);cursor:pointer;border:0;align-content:center;gap:2px;padding:10px 64px 10px 16px;list-style:none;display:grid;position:relative}.k-you .you-disclosure>summary::-webkit-details-marker{display:none}.k-you .you-disclosure>summary:before,.k-you .you-disclosure>summary:after{width:34px;height:34px;margin-top:-17px;position:absolute;top:50%;right:14px}.k-you .you-disclosure>summary:before{content:"";border:2px solid var(--k-on-acid);background:var(--k-acid)}.k-you .you-disclosure>summary:after{content:"+";color:var(--k-on-acid);font:900 1.625rem/1 var(--k-font-display);place-items:center;transition:rotate .24s cubic-bezier(.3,1.6,.5,1);display:grid}.k-you .you-disclosure[open]>summary:after{rotate:45deg}.k-you .you-disclosure>summary span{font:600 var(--k-text-xs)/1.3 var(--k-font-mono);color:var(--k-muted);margin:0;display:block}.k-you .you-disclosure>summary:focus-visible{outline:3px solid var(--k-focus);outline-offset:3px}.k-you .you-disclosure[open]>summary{border-bottom:2px solid var(--k-line)}.k-you .you-disclosure>.settings-card{box-shadow:none;border:0}.k-you .you-disclosure>.settings-card:has(.k-wardrobe){padding:16px}.k-you .settings-footer{font:600 var(--k-text-xs)/1.4 var(--k-font-mono);color:var(--k-muted);text-align:center;margin:8px 0 0;padding:12px 0}.admin-workspace{min-height:100dvh;padding-bottom:env(safe-area-inset-bottom,0px)}.admin-workspace *,.admin-workspace :before,.admin-workspace :after{box-sizing:border-box}.admin-topbar{border-bottom:2px solid var(--k-line);justify-content:space-between;align-items:center;gap:16px;max-width:1240px;margin:0 auto;padding:20px clamp(16px,3vw,40px);display:flex}.admin-topbar-brand{align-items:center;gap:20px;display:flex}.admin-topbar-brand .poiem-logo{width:106px;color:var(--k-ink)}.admin-topbar-brand>span{border-left:1px solid var(--k-hair-strong);color:var(--k-muted);font:500 .75rem/1.4 var(--k-font-mono);padding-left:20px}.admin-back{min-height:44px;color:var(--k-ink);align-items:center;gap:8px;font-size:.8125rem;font-weight:800;display:inline-flex}.admin-workspace .admin-page{width:100%;max-width:1240px;margin:0 auto;padding:28px clamp(16px,3vw,40px) 40px}.admin-eyebrow{font:600 .6875rem/1.5 var(--k-font-mono);letter-spacing:.07em;text-transform:uppercase;align-items:center;gap:8px;display:flex}.admin-hero{border:3px solid var(--k-line);background:var(--k-acid);color:var(--k-on-acid);box-shadow:6px 6px 0 var(--k-shadow-color);grid-template-columns:minmax(0,1fr) minmax(240px,.7fr);align-items:end;gap:32px;padding:clamp(22px,4vw,44px);display:grid}.admin-hero h1{font:900 clamp(3.3rem, 8vw, 7.25rem)/.86 var(--k-font-display);letter-spacing:-.01em;margin:18px 0}.admin-hero-copy{font-size:.9375rem;font-weight:600;line-height:1.6}.admin-hero-side{justify-items:end;gap:34px;display:grid}.admin-hero-stamp{border:3px solid var(--k-on-acid);background:var(--k-action);color:var(--k-on-action);box-shadow:4px 4px 0 var(--k-on-acid);font:800 1.3125rem/1 var(--k-font-display);letter-spacing:.04em;align-items:center;gap:12px;padding:14px 16px;display:inline-flex;rotate:5deg}.admin-overview{border-top:2px solid var(--k-on-acid);grid-template-columns:repeat(3,minmax(0,1fr));width:100%;padding-top:16px;display:grid}.admin-overview>div{border-left:1px solid #20221d4d;flex-direction:column;gap:10px;padding:0 12px;display:flex}.admin-overview>div:first-child{border-left:0;padding-left:0}.admin-overview dt{min-height:30px;font:600 .625rem/1.5 var(--k-font-mono);text-transform:uppercase}.admin-overview dd{font:900 2.75rem/.95 var(--k-font-display)}.admin-overview dd>span{font:600 .625rem/1.5 var(--k-font-mono);margin-top:6px;display:block}.admin-preview-notice{border:2px dashed var(--k-line);background:var(--k-sky);color:var(--k-on-tone);align-items:center;gap:14px;margin:24px 0 0;padding:16px 18px;display:flex}.admin-preview-notice>svg{flex:none}.admin-preview-notice>div{flex:1;min-width:0}.admin-preview-notice strong{font-size:.875rem}.admin-preview-notice p{margin:6px 0 0;font-size:.75rem;line-height:1.65}.admin-workspace code{font-family:var(--k-font-mono);overflow-wrap:anywhere}.admin-badge{border:1px solid var(--k-line);background:var(--k-card);width:fit-content;color:var(--k-ink);font:600 .625rem/1.4 var(--k-font-mono);flex:none;justify-content:center;align-items:center;gap:5px;padding:5px 8px;display:inline-flex}.admin-badge--quiet{background:var(--k-sunken);color:var(--k-muted);border-color:var(--k-hair-strong)}.admin-badge--vision{background:var(--k-mint);color:var(--k-on-tone)}.admin-body{grid-template-columns:172px minmax(0,1fr);align-items:start;gap:36px;margin-top:40px;display:grid}.admin-section-nav{gap:6px;display:grid;position:sticky;top:20px}.admin-section-nav>.admin-eyebrow{color:var(--k-muted);margin:0 10px 12px}.admin-section-nav a{border:1px solid var(--k-hair-strong);min-height:50px;color:var(--k-ink);background:var(--k-card);align-items:center;gap:9px;padding:10px 9px;font-size:.75rem;font-weight:800;text-decoration:none;display:flex}.admin-section-nav a>svg{flex:none}.admin-section-nav a>small{font:500 .625rem/1 var(--k-font-mono);color:var(--k-muted);margin-left:auto}.admin-section-nav a:hover{background:var(--k-acid);color:var(--k-on-acid);border-color:var(--k-on-acid)}.admin-section-nav a:hover small{color:var(--k-on-acid)}.admin-section-nav>p{color:var(--k-muted);align-items:start;gap:8px;margin:12px 9px 0;font-size:.6875rem;line-height:1.7;display:flex}.admin-section-nav>p svg{flex:none;margin-top:2px}.admin-content{gap:44px;min-width:0;display:grid}.admin-section{min-width:0;scroll-margin-top:24px}.admin-section-heading{align-items:start;gap:14px;margin-bottom:20px;display:flex}.admin-section-number{border:2px solid var(--k-line);background:var(--k-ink);width:38px;height:38px;color:var(--k-ground);font:600 .8125rem/1 var(--k-font-mono);flex:none;place-items:center;display:grid}.admin-section-heading h2{font:900 clamp(1.75rem, 3.3vw, 2.375rem)/1 var(--k-font-display);letter-spacing:.015em;margin:-3px 0 4px}.admin-section-heading p{color:var(--k-muted);font-size:.8125rem;line-height:1.7}.admin-plans-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.admin-plan-card{border:2px solid var(--k-line);background:var(--k-card);min-width:0;box-shadow:var(--k-shadow);flex-direction:column;display:flex}.admin-plan-cap{border-bottom:2px solid var(--k-line);background:var(--k-butter);color:var(--k-on-tone);justify-content:space-between;align-items:center;gap:12px;padding:18px 20px;display:flex}.admin-plan-card--premium .admin-plan-cap{background:var(--k-pink)}.admin-plan-cap h3{font:900 2.75rem/.95 var(--k-font-display);margin:5px 0 0}.admin-plan-icon{border:2px solid var(--k-line);background:var(--k-card);width:46px;height:46px;color:var(--k-ink);box-shadow:2px 2px 0 var(--k-shadow-color);flex:none;place-items:center;display:grid;rotate:-6deg}.admin-workspace fieldset{border:0;min-width:0;margin:0;padding:0}.admin-workspace .admin-plan-fields{gap:16px;padding:20px;display:grid}.admin-field{gap:8px;min-width:0;display:grid}.admin-field>span{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px;font-size:.8125rem;font-weight:800;display:flex}.admin-field>small,.admin-field-help{color:var(--k-muted);font-size:.75rem;font-weight:500;line-height:1.65}.admin-field>span>small{color:var(--k-muted);font-size:.6875rem;font-weight:500}.admin-workspace :is(input:not([type=radio]),select){border:2px solid var(--k-line);background:var(--k-ground);width:100%;min-width:0;max-width:100%;min-height:48px;color:var(--k-ink);box-shadow:none;font:500 1rem/1.4 var(--k-font-body);border-radius:0;margin:0;padding:10px 12px;display:block}.admin-workspace input::placeholder{color:var(--k-muted);opacity:1}.admin-workspace :is(input,select):disabled{opacity:1;color:var(--k-muted);-webkit-text-fill-color:var(--k-muted);cursor:not-allowed}.admin-allowances{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.admin-quota-field{gap:8px;min-width:0;display:grid}.admin-quota-field>span{align-items:center;gap:6px;font-size:.6875rem;font-weight:800;display:flex}.admin-quota-field>span svg{flex:none}.admin-quota-field>div{border:2px solid var(--k-line);background:var(--k-sunken);grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:8px 10px;display:grid}.admin-workspace .admin-quota-field input{min-height:40px;font:900 2rem/1 var(--k-font-display);font-variant-numeric:tabular-nums;appearance:textfield;background:0 0;border:0;padding:0}.admin-quota-field input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.admin-quota-field input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.admin-quota-field>div>span{color:var(--k-muted);font:500 .625rem/1.4 var(--k-font-mono);padding-left:4px}.admin-fallbacks{border-top:1px dashed var(--k-hair-strong)}.admin-fallbacks>summary{min-height:48px;color:var(--k-muted);cursor:pointer;align-items:center;gap:8px;font-size:.75rem;font-weight:700;list-style:none;display:flex}.admin-fallbacks>summary::-webkit-details-marker{display:none}.admin-fallbacks>summary>span{font:500 .625rem/1 var(--k-font-mono);margin-left:auto}.admin-fallbacks[open]>summary svg{rotate:180deg}.admin-fallbacks .admin-field{margin-top:4px}.admin-plan-footer{gap:10px;margin-top:auto;padding:0 20px 20px;display:grid}.admin-save-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.admin-draft-state{color:var(--k-muted);font:500 .625rem/1.5 var(--k-font-mono);align-items:center;gap:6px;display:flex}.admin-draft-state.is-dirty:before{content:"";background:var(--k-action);border:1px solid var(--k-line);width:7px;height:7px}.admin-button{border:2px solid var(--k-line);background:var(--k-card);max-width:100%;min-height:48px;color:var(--k-ink);box-shadow:var(--k-shadow-sm);cursor:pointer;font:800 .8125rem/1.4 var(--k-font-body);text-align:center;border-radius:0;justify-content:center;align-items:center;gap:8px;padding:10px 16px;display:inline-flex}.admin-button svg{flex:none}.admin-button--action{background:var(--k-action);color:var(--k-on-action)}.admin-button--compact{padding-inline:12px}.admin-button:not(:disabled):active{box-shadow:none;transform:translate(3px,3px)}.admin-workspace button:disabled{cursor:not-allowed}.admin-button:disabled{background:var(--k-sunken);color:var(--k-muted);border-color:var(--k-hair-strong);box-shadow:none}.admin-text-button{min-height:44px;color:var(--k-ink);text-underline-offset:3px;border:0;padding:8px 0;font-size:.75rem;font-weight:800;text-decoration:underline}.admin-text-button:disabled{color:var(--k-muted);text-decoration:none}.admin-section-note{color:var(--k-muted);align-items:start;gap:8px;margin-top:16px;font-size:.75rem;line-height:1.7;display:flex}.admin-section-note svg{flex:none;margin-top:3px}.admin-panel{border:2px solid var(--k-line);background:var(--k-card);box-shadow:var(--k-shadow);padding:22px}.admin-catalogue-toolbar{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;display:grid}.admin-search{border:2px solid var(--k-line);background:var(--k-ground);align-items:center;gap:10px;min-width:0;min-height:48px;padding:0 12px;display:flex}.admin-search>svg{color:var(--k-muted);flex:none}.admin-workspace .admin-search input{background:0 0;border:0;outline:0;min-height:44px;padding:8px 0}.admin-search:focus-within{outline:3px solid var(--k-focus);outline-offset:3px}.admin-model-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:18px 0 10px;display:flex}.admin-model-controls>p{color:var(--k-muted);font:500 .6875rem/1.5 var(--k-font-mono)}.admin-workspace .admin-filter{gap:4px;display:flex}.admin-filter label,.admin-plan-choice label{cursor:pointer;position:relative}.admin-filter input,.admin-plan-choice input{opacity:0;width:1px;height:1px;position:absolute}.admin-filter label>span{border:1px solid var(--k-hair-strong);justify-content:center;align-items:center;min-height:44px;padding:8px 12px;font-size:.75rem;font-weight:800;display:inline-flex}.admin-filter input:checked+span{background:var(--k-ink);color:var(--k-ground);border-color:var(--k-line)}.admin-filter input:focus-visible+span,.admin-plan-choice input:focus-visible+span{outline:3px solid var(--k-focus);outline-offset:3px}.admin-model-list{border-top:1px solid var(--k-hair-strong);margin:0;padding:0;list-style:none}.admin-model-list>li{border-bottom:1px solid var(--k-hair);align-items:center;gap:12px;min-width:0;padding:16px 0;display:flex}.admin-model-icon{border:1px solid var(--k-hair-strong);background:var(--k-sunken);width:38px;height:38px;color:var(--k-muted);flex:none;place-items:center;display:grid}.admin-model-icon.is-vision{background:var(--k-sky);color:var(--k-on-tone)}.admin-model-name{flex:1;min-width:0}.admin-model-name strong{overflow-wrap:anywhere;font-size:.8125rem;font-weight:800;display:block}.admin-model-name code{color:var(--k-muted);-webkit-user-select:all;user-select:all;margin-top:5px;font-size:.625rem;line-height:1.6;display:block}.admin-show-more{width:100%;min-height:48px;color:var(--k-ink);border:0;align-items:center;gap:8px;margin-top:12px;padding:10px 0;font-size:.75rem;font-weight:800;display:flex}.admin-show-more>span{color:var(--k-muted);font:500 .625rem/1.5 var(--k-font-mono);margin-left:auto}.admin-empty{text-align:center;color:var(--k-muted);justify-items:center;gap:8px;padding:30px 16px;font-size:.8125rem;line-height:1.7;display:grid}.admin-empty strong{color:var(--k-ink);font-weight:800}.admin-empty>svg{margin-bottom:6px}.admin-account-search{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;margin-bottom:10px;display:grid}.admin-account-empty{border-top:1px dashed var(--k-hair-strong);margin-top:22px}.admin-member{border-top:2px solid var(--k-line);margin-top:24px}.admin-member-header{flex-wrap:wrap;align-items:center;gap:12px;padding:20px 0;display:flex}.admin-member-avatar{border:2px solid var(--k-line);background:var(--k-pink);width:46px;height:46px;color:var(--k-on-tone);font:900 1.75rem/1 var(--k-font-display);flex:none;place-items:center;display:grid}.admin-member-header>div{flex:1;min-width:100px}.admin-member-header h3{overflow-wrap:anywhere;font-size:.9375rem;font-weight:800}.admin-member-header p{color:var(--k-muted);overflow-wrap:anywhere;margin-top:4px;font-size:.75rem}.admin-workspace .admin-member-fields{gap:16px;display:grid}.admin-workspace .admin-plan-choice{gap:10px;display:flex}.admin-plan-choice legend{margin-bottom:10px;font-size:.8125rem;font-weight:800}.admin-plan-choice label{flex:1}.admin-plan-choice label>span{border:2px solid var(--k-hair-strong);background:var(--k-ground);min-height:48px;color:var(--k-muted);justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-size:.8125rem;font-weight:800;display:flex}.admin-plan-choice label svg{visibility:hidden}.admin-plan-choice input:checked+span{border-color:var(--k-line);background:var(--k-butter);color:var(--k-on-tone)}.admin-plan-choice input:checked+span svg{visibility:visible}.admin-plan-choice input:disabled+span{cursor:not-allowed}.admin-member-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.admin-member-save{border-top:1px dashed var(--k-hair-strong);justify-content:space-between;align-items:center;gap:16px;margin-top:22px;padding-top:18px;display:flex}.admin-member-save>p{color:var(--k-muted);font-size:.75rem;line-height:1.6}.admin-member-save>button{flex:none}.admin-inline-error{border-left:3px solid var(--k-danger-ink);background:var(--k-danger-soft);color:var(--k-danger-ink);margin:6px 0;padding:12px;font-size:.75rem;line-height:1.7}.admin-inline-success,.admin-entitlement-note{background:var(--k-mint);color:var(--k-on-tone);align-items:start;gap:8px;padding:12px;font-size:.75rem;line-height:1.7;display:flex}.admin-inline-success svg,.admin-entitlement-note svg{flex:none;margin-top:2px}.admin-entitlement-note{background:var(--k-butter)}.admin-account-message{border:1px solid var(--k-hair-strong);background:var(--k-sky);color:var(--k-on-tone);margin-top:18px;padding:14px;font-size:.8125rem;line-height:1.7}.admin-loading{color:var(--k-muted);justify-items:center;gap:12px;padding:80px 20px;font-size:.875rem;display:grid}.admin-loading strong{color:var(--k-ink)}.admin-connection-error{border:2px solid var(--k-line);background:var(--k-card);justify-items:start;gap:18px;margin-top:40px;padding:32px;display:grid}.admin-connection-error h2{font:900 2.25rem/1 var(--k-font-display)}.admin-connection-error p{font-size:.875rem;line-height:1.7}.admin-connection-error>a{min-height:44px;color:var(--k-ink);align-items:center;gap:6px;font-size:.8125rem;font-weight:700;display:flex}.admin-footer{border-top:2px solid var(--k-line);color:var(--k-muted);font:500 .625rem/1.7 var(--k-font-mono);flex-wrap:wrap;align-items:center;gap:12px 18px;padding:22px 0 0;display:flex}.admin-footer .poiem-logo{width:76px;color:var(--k-ink)}.admin-footer>span:last-child{margin-left:auto}.admin-workspace :is(a,button,input:not([type=radio]),select,summary):focus-visible{outline:3px solid var(--k-focus);outline-offset:4px}.admin-workspace .admin-search input:focus-visible{outline:0}@media (width>=761px) and (width<=1040px){.admin-body{grid-template-columns:1fr;gap:28px}.admin-section-nav{grid-template-columns:repeat(3,minmax(0,1fr));position:static}.admin-section-nav>:is(p,.admin-eyebrow){display:none}}@media (width<=760px){.admin-topbar{padding-block:12px}.admin-topbar-brand>span{display:none}.admin-workspace .admin-page{padding-top:20px}.admin-hero{grid-template-columns:1fr;gap:26px}.admin-hero-side{gap:24px}.admin-hero-stamp{padding:10px 12px;font-size:1.125rem}.admin-hero-stamp svg{width:20px;height:20px}.admin-hero h1{font-size:clamp(3.3rem,12vw,6rem)}.admin-overview dt{min-height:30px}.admin-overview dd{font-size:2.25rem}.admin-preview-notice{align-items:start;gap:10px;padding:14px}.admin-preview-notice>.admin-badge{display:none}.admin-body{grid-template-columns:1fr;gap:28px;margin-top:28px}.admin-section-nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;position:static}.admin-section-nav a{text-align:center;justify-content:center;padding-inline:4px;font-size:.6875rem}.admin-section-nav a>small,.admin-section-nav>:is(p,.admin-eyebrow){display:none}.admin-content{gap:36px}.admin-plans-grid{gap:16px}.admin-panel{padding:18px}.admin-model-list>li{flex-wrap:wrap;gap:8px}.admin-model-list>li>.admin-badge{margin-left:46px}.admin-model-name{min-width:calc(100% - 46px)}}@media (width<=580px){.admin-plans-grid{grid-template-columns:1fr;gap:20px}.admin-section-nav a>svg{display:none}.admin-section-heading{gap:10px}.admin-section-heading p{font-size:.75rem}.admin-allowances{gap:10px}.admin-quota-field>span{min-height:30px}.admin-catalogue-toolbar{grid-template-columns:1fr}.admin-catalogue-toolbar>.admin-button{justify-self:end}.admin-account-search,.admin-member-grid{grid-template-columns:1fr}.admin-account-search{gap:14px}.admin-member-save{flex-direction:column;align-items:stretch}.admin-member-header>.admin-badge{margin-left:58px}.admin-footer>span:last-child{width:100%;margin:0}}@media (prefers-reduced-motion:no-preference){.admin-button{transition:transform .1s,box-shadow .1s,background-color .14s}.admin-button:not(:disabled):hover{box-shadow:4px 4px 0 var(--k-shadow-color);transform:translate(-1px,-1px)}.admin-button:not(:disabled):active{box-shadow:none;transform:translate(3px,3px)}.admin-spin{animation:1s linear infinite admin-spin}@keyframes admin-spin{to{transform:rotate(360deg)}}}.admin-diff{font:600 var(--k-text-sm)/1.45 var(--k-font-body);color:var(--k-ink);margin:0 0 10px;padding-left:18px}.admin-metrics{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin:0;display:grid}.admin-metrics>div{border:2px solid var(--k-line);background:var(--k-card);gap:4px;padding:12px;display:grid}.admin-metrics dt{font:600 var(--k-text-xs)/1.2 var(--k-font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--k-muted)}.admin-metrics dd{font:900 1.75rem/1 var(--k-font-display);color:var(--k-ink);margin:0}.admin-metrics dd[data-unavailable=true]{font:800 1rem/1.2 var(--k-font-body);color:var(--k-muted)}.admin-audit{gap:12px;margin:0;padding:0;list-style:none;display:grid}.admin-audit li{border:2px solid var(--k-line);background:var(--k-card);gap:4px;padding:12px;display:grid}.admin-audit strong{font:800 var(--k-text-md)/1.2 var(--k-font-body)}.admin-audit span,.admin-audit small{font:500 var(--k-text-xs)/1.4 var(--k-font-body);color:var(--k-muted);overflow-wrap:anywhere}.k-intro{grid-template-rows:auto 1fr;min-height:100dvh;display:grid}.k-intro.is-hello{--tone:var(--k-butter)}.k-intro.is-steam{--tone:var(--k-sky)}.k-intro.is-piece{--tone:var(--k-pink)}.k-intro-bar{width:100%;max-width:1120px;padding:14px var(--k-gutter) 0;justify-content:space-between;align-items:center;gap:12px;margin:0 auto;display:flex}.k-intro-layout{width:100%;max-width:var(--k-shell);padding:14px var(--k-gutter) calc(24px + var(--safe-bottom,0px));align-content:start;gap:18px;margin:0 auto;display:grid}.k-intro-stage{border:2px solid var(--k-line);background-color:var(--tone);background-image:radial-gradient(var(--k-hair-strong) 1.2px, transparent 1.6px);min-height:220px;box-shadow:var(--k-shadow);transition:background-color .24s var(--k-ease);background-size:18px 18px;align-content:end;gap:8px;padding:14px 14px 0;display:grid;position:relative;overflow:hidden}.k-intro-speech{border:2px solid var(--k-line);background:var(--k-card);max-width:min(78%,300px);color:var(--k-ink);box-shadow:var(--k-shadow-sm);font:700 var(--k-text-sm)/1.35 var(--k-font-body);text-align:center;text-wrap:balance;justify-self:start;margin:0 0 8px;padding:8px 12px;position:relative}.k-intro-speech:after{content:"";border-right:2px solid var(--k-line);border-bottom:2px solid var(--k-line);background:var(--k-card);width:12px;height:12px;position:absolute;bottom:-8px;right:28px;rotate:45deg}.k-intro-momo{aspect-ratio:1;justify-self:end;width:clamp(148px,42vw,200px);margin-right:6%}.k-intro-momo :is(.momo-sticker,svg){width:100%;height:100%;display:block}:is(.k-intro-momo,.k-setup-momo-art) .momo-sticker{box-shadow:none;background:0 0;border:0;border-radius:0;flex:none;transform:none}:is(.k-intro-bar,.k-setup-bar) .appearance-options{border:2px solid var(--k-line);background:var(--k-card);box-shadow:var(--k-shadow-sm);border-radius:0;gap:0;padding:0;display:flex}:is(.k-intro-bar,.k-setup-bar) .appearance-option{flex:0 0 44px}:is(.k-intro-bar,.k-setup-bar) .appearance-option-face{width:44px;min-height:44px;color:var(--k-ink);background:0 0;border-radius:0;padding:0;transform:none}:is(.k-intro-bar,.k-setup-bar) .appearance-option:hover input:not(:checked)+.appearance-option-face{background:var(--k-sunken);color:var(--k-ink);transform:none}:is(.k-intro-bar,.k-setup-bar) .appearance-option>input:checked+.appearance-option-face{background:var(--k-ink);color:var(--k-ground)}:is(.k-intro-bar,.k-setup-bar) .appearance-option>input:focus-visible+.appearance-option-face{outline:3px solid var(--k-focus);outline-offset:-5px}.k-intro-tag{border:2px solid var(--k-on-acid);background:var(--k-acid);max-width:44%;color:var(--k-on-acid);box-shadow:var(--k-shadow-sm);font:600 11px/1.2 var(--k-font-mono);letter-spacing:.04em;text-transform:uppercase;padding:5px 8px;position:absolute;bottom:14px;left:10px;rotate:-4deg}.k-intro-copy{gap:16px;min-width:0;display:grid}.k-intro-text .k-eyebrow{align-items:center;gap:8px;display:flex}.k-intro-text .k-eyebrow span{background:var(--k-ink);min-width:28px;height:20px;color:var(--k-ground);letter-spacing:0;place-items:center;display:inline-grid}.k-intro-title{font:900 clamp(3rem, 15vw, 4.75rem)/.84 var(--k-font-display);letter-spacing:-.01em;text-transform:uppercase;color:var(--k-ink);justify-items:start;gap:4px;margin:10px 0 0;display:grid}.k-intro-title span:last-child{border:2px solid var(--k-on-acid);background:var(--k-acid);color:var(--k-on-acid);box-shadow:var(--k-shadow-sm);padding:.08em .12em .02em;rotate:-2deg}.k-intro-sub{max-width:40ch;font:500 var(--k-text-md)/1.5 var(--k-font-body);color:var(--k-muted);text-wrap:pretty;margin:12px 0 0}.k-intro-moods{flex-wrap:wrap;gap:6px;display:flex}.k-intro-moods .k-chip{padding:0 12px}.k-intro-moods .is-cosy{--tone:var(--k-peach)}.k-intro-moods .is-happy{--tone:var(--k-pink)}.k-intro-moods .is-curious{--tone:var(--k-sky)}.k-intro-moods .is-sleepy{--tone:var(--k-mint)}.k-intro-moods .k-chip:not([aria-pressed=true]){background:var(--tone);color:var(--k-on-tone)}.k-intro-nav{justify-content:space-between;align-items:center;gap:12px;display:flex}.k-intro-dots,.k-intro-arrows{align-items:center;gap:4px;display:flex}.k-intro-dot{cursor:pointer;background:0 0;border:0;place-items:center;min-width:44px;min-height:44px;padding:0;display:grid}.k-intro-dot span{border:2px solid var(--k-line);background:var(--k-card);width:28px;height:28px;color:var(--k-ink);font:600 var(--k-text-xs)/1 var(--k-font-mono);transition:width .2s var(--k-ease), background-color .16s ease;place-items:center;display:grid}.k-intro-dot[aria-current=step] span{background:var(--k-ink);width:40px;color:var(--k-ground)}.k-intro-dot:focus-visible{outline:none}.k-intro-dot:focus-visible span{outline:3px solid var(--k-focus);outline-offset:3px}.k-intro-arrows .k-icon-button:disabled{border-color:var(--k-hair-strong);color:var(--k-muted);cursor:default}.k-intro-actions{gap:10px;display:grid}.k-intro-note{font:500 var(--k-text-xs)/1.4 var(--k-font-mono);color:var(--k-muted);text-align:center;margin:0}.k-intro-signin{min-height:44px;color:var(--k-ink);font:500 var(--k-text-sm)/1.2 var(--k-font-body);justify-self:center;align-items:center;gap:4px;text-decoration:none;display:inline-flex}.k-intro-signin strong{text-underline-offset:4px;text-decoration:underline;text-decoration-thickness:2px}.k-intro-signin:focus-visible{outline:3px solid var(--k-focus);outline-offset:3px}@media (width>=900px){.k-intro-layout{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-content:center;align-items:center;gap:56px;max-width:1120px;padding-top:24px}.k-intro-stage{min-height:min(62dvh,520px);padding:24px 24px 0}.k-intro-momo{width:min(300px,70%)}.k-intro-speech{font-size:var(--k-text-md)}.k-intro-tag{font-size:var(--k-text-xs);bottom:22px;left:20px}.k-intro-title{font-size:clamp(4rem,6.4vw,5.75rem)}}.k-setup{width:100%;max-width:none;min-height:100dvh}.k-setup[data-chapter=profile]{--tone:var(--k-butter)}.k-setup[data-chapter=routine]{--tone:var(--k-sky)}.k-setup[data-chapter=ready]{--tone:var(--k-mint)}.k-setup-main{width:100%;max-width:1120px;padding:0 var(--k-gutter) calc(32px + var(--safe-bottom,0px));margin:0 auto}.k-setup-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;padding:14px 0 12px;display:flex}.k-setup-bar-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;min-width:0;display:flex}.k-setup-account{font:600 var(--k-text-xs)/1.2 var(--k-font-mono);color:var(--k-muted);align-items:center;gap:6px;display:inline-flex}.k-setup-signin{min-height:44px;color:var(--k-ink);font:700 var(--k-text-sm)/1.2 var(--k-font-body);text-underline-offset:4px;align-items:center;text-decoration:underline;text-decoration-thickness:2px;display:inline-flex}.k-setup-workspace{max-width:var(--k-shell);gap:14px;margin:0 auto;display:grid}.k-setup-head{gap:8px;display:grid}.k-setup-step-row{font:600 var(--k-text-xs)/1.2 var(--k-font-mono);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 10px;display:flex}.k-setup-step{color:var(--k-ink)}.k-setup-chapter{border:2px solid var(--k-line);background:var(--tone);color:var(--k-on-tone);letter-spacing:.06em;text-transform:uppercase;padding:3px 8px}.k-setup .progress-recipe{border:2px solid var(--k-line);background:var(--k-card);height:14px;box-shadow:none;border-radius:0;flex:none;position:relative;overflow:hidden}.k-setup .progress-recipe-fill{background:var(--k-acid);height:100%;transition:width .28s var(--k-ease);display:block}.k-setup .progress-recipe-stops{display:grid;position:absolute;inset:0}.k-setup .progress-recipe-stops i:not(:last-child){border-right:2px solid var(--k-hair-strong)}.k-setup-companion{gap:8px;min-width:0;display:grid}.k-setup-momo{border:2px solid var(--k-line);background:var(--k-card);box-shadow:var(--k-shadow-sm);grid-template-columns:58px minmax(0,1fr);align-items:center;gap:12px;padding:10px 12px;display:grid}.k-setup-momo-art{border:2px solid var(--k-on-acid);background:var(--k-momo);border-radius:48% 48% 10% 10%;width:58px;height:62px;padding:3px;rotate:-6deg}.k-setup-momo-art :is(.k-setup-momo-bob,.momo-sticker,svg){width:100%;height:100%;display:block}.k-setup-momo-note{gap:4px;min-width:0;display:grid}.k-setup-momo-name{font:900 1.25rem/1 var(--k-font-display);letter-spacing:.01em;text-transform:uppercase;color:var(--k-ink);margin:0}.k-setup-momo-name span{font:600 var(--k-text-xs)/1 var(--k-font-mono);letter-spacing:0;text-transform:none;color:var(--k-muted);margin-left:6px}.k-setup-momo-line{font:600 var(--k-text-sm)/1.4 var(--k-font-body);color:var(--k-ink);text-wrap:pretty;margin:0}.k-setup-intro,.k-setup-chapters{display:none}.k-setup-draft{font:500 11px/1.3 var(--k-font-mono);color:var(--k-muted);align-items:center;gap:6px;margin:0;display:flex}.k-setup-draft svg{flex:none}.k-setup-form{border:2px solid var(--k-line);background:var(--k-card);min-width:0;color:var(--k-ink);box-shadow:var(--k-shadow);border-radius:0;gap:16px;margin:0;padding:16px;display:grid}.k-setup-tag{border:2px solid var(--k-line);background:var(--tone);min-height:32px;color:var(--k-on-tone);font:700 var(--k-text-xs)/1.2 var(--k-font-body);justify-self:start;align-items:center;gap:8px;padding:2px 10px 2px 3px;display:inline-flex}.k-setup-tag-icon{border:1.5px solid var(--k-line);background:var(--k-card);width:24px;height:24px;color:var(--k-ink);place-items:center;display:grid}.k-setup-tag-number{font:600 var(--k-text-xs)/1 var(--k-font-mono);margin-left:2px}.k-setup .error-banner{border:2px solid var(--k-danger-ink);background:var(--k-danger-soft);color:var(--k-danger-ink);box-shadow:none;font:600 var(--k-text-sm)/1.5 var(--k-font-body);border-radius:0;margin:0;padding:10px 14px}.k-setup .error-banner:focus-visible{outline:3px solid var(--k-focus);outline-offset:2px}.k-setup-content{gap:14px;min-width:0;display:grid}.k-setup-title{font:900 clamp(2.25rem, 10vw, 3rem)/.9 var(--k-font-display);letter-spacing:-.005em;text-transform:uppercase;color:var(--k-ink);text-wrap:balance;margin:0}.k-setup-title:focus{outline:none}.k-setup-sub{max-width:46ch;font:500 var(--k-text-md)/1.5 var(--k-font-body);color:var(--k-muted);text-wrap:pretty;margin:-4px 0 0}:is(.k-setup-hint,.k-setup-note){font:500 var(--k-text-sm)/1.45 var(--k-font-body);color:var(--k-muted);margin:0}.k-setup-note{align-items:flex-start;gap:8px;display:flex}.k-setup-note svg{flex:none;margin-top:1px}.k-setup-callout{border:2px solid var(--k-line);background:var(--k-butter);color:var(--k-on-tone);font:500 var(--k-text-sm)/1.45 var(--k-font-body);margin:0;padding:10px 12px}.k-setup-fields{gap:12px;display:grid}.k-setup-fields.is-pair{grid-template-columns:repeat(2,minmax(0,1fr))}.k-setup .field{gap:6px;min-width:0;margin:0;display:grid}:is(.k-setup .field>label,.k-setup-label){font:600 var(--k-text-xs)/1.2 var(--k-font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--k-muted);margin:0}.k-optional{font:500 var(--k-text-xs)/1.2 var(--k-font-mono);letter-spacing:0;text-transform:none;color:var(--k-muted)}.k-setup .field input{border:2px solid var(--k-line);background:var(--k-ground);width:100%;min-width:0;min-height:50px;color:var(--k-ink);box-shadow:none;font:700 var(--k-text-lg)/1.2 var(--k-font-body);border-radius:0;margin:0;padding:0 12px;transform:none}.k-setup .field input::placeholder{color:var(--k-muted);opacity:1;font-weight:500}.k-setup .field input:focus{border-color:var(--k-line);box-shadow:none;outline:3px solid var(--k-focus);outline-offset:2px}.k-setup .field input[aria-invalid=true]{border-color:var(--k-danger-ink)}:root[data-theme=dark] .k-setup .field input{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.k-setup .setup-optional{border:2px dashed var(--k-hair-strong);background:0 0;border-radius:0;margin:0;padding:0 12px}.k-setup .setup-optional summary{min-height:48px;color:var(--k-ink);font:700 var(--k-text-sm)/1.2 var(--k-font-body);cursor:pointer;align-items:center;gap:8px;padding:0;list-style:none;display:flex}.k-setup .setup-optional summary::-webkit-details-marker{display:none}.k-setup .setup-optional summary span{font:500 var(--k-text-xs)/1 var(--k-font-mono);color:var(--k-muted);margin:0}.k-setup .setup-optional summary:after{content:"+";font:900 1.5rem/1 var(--k-font-display);margin-left:auto}.k-setup .setup-optional[open] summary:after{content:"–"}.k-setup .setup-optional[open]{gap:10px;padding-bottom:12px;display:grid}.k-choice-list{gap:8px;display:grid}.k-choice-list.is-pair{grid-template-columns:repeat(2,minmax(0,1fr))}.k-choice{border:2px solid var(--k-line);background:var(--k-card);width:100%;min-height:60px;color:var(--k-ink);box-shadow:none;font:inherit;text-align:left;cursor:pointer;border-radius:0;grid-template-columns:40px minmax(0,1fr) 26px;align-items:center;gap:12px;margin:0;padding:10px 12px;transition:background-color .14s,box-shadow .14s,translate .14s;display:grid}.k-choice.is-compact{grid-template-columns:minmax(0,1fr) 26px;min-height:52px}.k-choice[aria-pressed=true]{border-color:var(--k-on-acid);background:var(--k-acid);color:var(--k-on-acid);box-shadow:var(--k-shadow-sm)}.k-choice:focus-visible{outline:3px solid var(--k-focus);outline-offset:3px}.k-choice-icon{border:2px solid var(--k-line);background:var(--tone);width:40px;height:40px;color:var(--k-on-tone);place-items:center;display:grid}.k-choice:nth-child(5n+1){--tone:var(--k-butter)}.k-choice:nth-child(5n+2){--tone:var(--k-peach)}.k-choice:nth-child(5n+3){--tone:var(--k-sky)}.k-choice:nth-child(5n+4){--tone:var(--k-mint)}.k-choice:nth-child(5n){--tone:var(--k-pink)}.k-choice[aria-pressed=true] .k-choice-icon{border-color:var(--k-on-acid);color:var(--k-on-acid);background:0 0}.k-choice-copy{gap:2px;min-width:0;display:grid}.k-choice-copy strong{font:800 var(--k-text-md)/1.2 var(--k-font-body)}.k-choice-copy small{font:500 var(--k-text-sm)/1.35 var(--k-font-body);color:var(--k-muted)}.k-choice[aria-pressed=true] .k-choice-copy small{color:var(--k-on-acid)}.k-setup .setup-selected{border:2px solid var(--k-line);background:var(--k-card);width:26px;height:26px;color:var(--k-ink);border-radius:50%;place-items:center;margin:0;display:grid}.k-choice[aria-pressed=true] .setup-selected{border-color:var(--k-on-acid);background:var(--k-on-acid);color:var(--k-acid)}@media (hover:hover) and (pointer:fine){.k-choice:hover{box-shadow:var(--k-shadow-sm);translate:-1px -1px}}.k-recipe{border:2px solid var(--k-line);background:var(--k-card);color:var(--k-ink);box-shadow:var(--k-shadow-sm);border-radius:0;gap:12px;margin:0;padding:14px;display:grid}.k-recipe-head{gap:4px;display:grid}.k-recipe-head h2{font:900 1.75rem/.95 var(--k-font-display);text-transform:uppercase;color:var(--k-ink);overflow-wrap:anywhere;margin:0}.k-recipe-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.k-recipe-tile{border:2px solid var(--k-line);background:var(--k-card);min-width:0;box-shadow:inset 0 6px 0 var(--tone);align-content:start;gap:2px;padding:14px 10px 10px;display:grid}.k-recipe-tile.is-protein{--tone:var(--k-action)}.k-recipe-tile.is-carbs{--tone:var(--k-acid)}.k-recipe-tile.is-fat{--tone:var(--k-sky-strong)}.k-recipe-label{font:600 var(--k-text-xs)/1.2 var(--k-font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--k-muted)}.k-recipe-value{font:900 1.75rem/1 var(--k-font-display);color:var(--k-ink)}.k-recipe-tile.is-calories{border-color:var(--k-on-acid);background:var(--k-acid);color:var(--k-on-acid);box-shadow:var(--k-shadow-sm);grid-column:1/-1;padding-top:10px}.k-recipe-tile.is-calories :is(.k-recipe-label,.k-recipe-value,.k-recipe-unit){color:var(--k-on-acid)}.k-recipe-tile.is-calories .k-recipe-value{font-size:clamp(3rem,14vw,4rem);line-height:.85}.k-recipe-unit{font:600 var(--k-text-xs)/1.2 var(--k-font-mono)}.k-recipe-foot{font:500 var(--k-text-sm)/1.45 var(--k-font-body);color:var(--k-muted);margin:0}.k-setup-review{border:2px dashed var(--k-hair-strong);gap:6px;padding:12px 14px;display:grid}.k-setup-review h2{font:900 1.25rem/1 var(--k-font-display);text-transform:uppercase;color:var(--k-ink);margin:0}.k-setup-review dl{margin:0;display:grid}.k-setup-review dl div{border-top:1px solid var(--k-hair);flex-wrap:wrap;justify-content:space-between;gap:4px 12px;padding:8px 0;display:flex}.k-setup-review dl div:first-child{border-top:0}.k-setup-review dt{font:600 var(--k-text-xs)/1.3 var(--k-font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--k-muted)}.k-setup-review dd{font:700 var(--k-text-sm)/1.3 var(--k-font-body);color:var(--k-ink);text-align:right;margin:0}.k-setup-review .k-text-button{justify-self:start}.k-setup .first-meal-methods{grid-template-columns:minmax(0,1fr);gap:8px;margin:0;display:grid}.k-setup .first-meal-methods .k-method{width:100%;font:inherit;text-align:left;cursor:pointer}.k-setup .field.is-calories input{border-color:var(--k-on-acid);background:var(--k-acid);color:var(--k-on-acid)}.k-setup .field.is-calories input::placeholder{color:color-mix(in srgb, var(--k-on-acid) 62%, transparent)}.k-setup-label .k-optional{margin-left:6px}.k-setup-macros{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:-6px;display:grid}.k-setup-macros .field{border:2px solid var(--k-line);background:var(--k-card);box-shadow:inset 0 6px 0 var(--tone);padding:12px 8px 8px}.k-setup-macros .field.is-protein{--tone:var(--k-action)}.k-setup-macros .field.is-carbs{--tone:var(--k-acid)}.k-setup-macros .field.is-fat{--tone:var(--k-sky-strong)}.k-setup-macros .field>label{letter-spacing:0}.k-setup-macros .field input{border:0;border-bottom:2px solid var(--k-line);min-height:44px;font-size:var(--k-text-md);background:0 0;padding:0 2px}.k-setup-meals{flex-wrap:wrap;gap:6px;display:flex}.k-setup-meal.is-breakfast{--tone:var(--k-butter)}.k-setup-meal.is-lunch{--tone:var(--k-peach)}.k-setup-meal.is-dinner{--tone:var(--k-sky)}.k-setup-meal.is-snack{--tone:var(--k-pink)}.k-setup-meal.is-other{--tone:var(--k-mint)}.k-setup-meal:not([aria-pressed=true]){background:var(--tone);color:var(--k-on-tone)}.k-setup-total{border:2px solid var(--k-on-acid);background:var(--k-acid);color:var(--k-on-acid);box-shadow:var(--k-shadow-sm);grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:2px 12px;padding:12px 14px;display:grid}.k-setup-total span{font:800 var(--k-text-md)/1.25 var(--k-font-body);overflow-wrap:anywhere}.k-setup-total strong{font:900 1.75rem/1 var(--k-font-display)}.k-setup-total small{font:600 var(--k-text-xs)/1.3 var(--k-font-mono);grid-column:1/-1}.k-setup-footer{border-top:2px solid var(--k-line);gap:8px;padding-top:14px;display:grid}.k-setup-actions{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;display:grid}.k-setup-next{font:500 var(--k-text-xs)/1.4 var(--k-font-mono);color:var(--k-muted);text-align:center;margin:0}.k-setup-blocked{max-width:var(--k-shell);box-shadow:var(--k-shadow);gap:12px;margin:12px auto 0;display:grid}.k-setup-blocked .k-setup-sub{margin:0}.k-setup-recovery{gap:10px;display:grid}@media (width>=960px){.k-setup-workspace{grid-template-columns:minmax(260px,320px) minmax(0,1fr);grid-template-areas:"aside head""aside form";align-items:start;gap:14px 40px;max-width:1040px;padding-top:12px}.k-setup-head{grid-area:head}.k-setup-companion{grid-area:aside;gap:14px;position:sticky;top:20px}.k-setup-form{grid-area:form;padding:24px}.k-setup .first-meal-methods{grid-template-columns:repeat(3,minmax(0,1fr))}.k-setup-momo{box-shadow:var(--k-shadow);grid-template-columns:1fr;justify-items:start;gap:12px;padding:16px}.k-setup-momo-art{width:124px;height:132px;padding:6px}.k-setup-momo-line{font-size:var(--k-text-md)}.k-setup-intro{gap:6px;display:grid}.k-setup-intro h2{font:900 2rem/.92 var(--k-font-display);text-transform:uppercase;color:var(--k-ink);margin:0}.k-setup-intro h2 span{color:var(--k-muted)}.k-setup-chapters{gap:8px;margin:0;padding:0;list-style:none;display:grid}.k-setup-chapters li{border:2px solid var(--k-hair-strong);color:var(--k-muted);grid-template-columns:32px minmax(0,1fr);align-items:start;gap:10px;padding:10px;display:grid}.k-setup-chapters li.is-current{border-color:var(--k-line);background:var(--k-card);color:var(--k-ink);box-shadow:var(--k-shadow-sm)}.k-setup-chapters li.is-complete{border-color:var(--k-line);color:var(--k-ink)}.k-setup-chapter-number{width:32px;height:32px;font:900 1.125rem/1 var(--k-font-display);border:2px solid;place-items:center;display:grid}.k-setup-chapters li.is-current .k-setup-chapter-number{border-color:var(--k-line);background:var(--tone);color:var(--k-on-tone)}.k-setup-chapters li.is-complete .k-setup-chapter-number{border-color:var(--k-on-acid);background:var(--k-acid);color:var(--k-on-acid)}.k-setup-chapters strong{font:800 var(--k-text-sm)/1.25 var(--k-font-body);display:block}.k-setup-chapters small{font:500 var(--k-text-xs)/1.35 var(--k-font-body);color:var(--k-muted);margin-top:2px;display:block}}.k-page{min-height:100dvh}.k-page-main{padding:12px var(--k-gutter) calc(var(--k-tabbar-h) + var(--safe-bottom,0px) + 40px);grid-template-columns:minmax(0,1fr);align-content:start;gap:16px;display:grid}.k-page-main .back-link{color:var(--k-ink);font:700 var(--k-text-sm)/1 var(--k-font-body);background:0 0;border:0;justify-self:start;gap:4px;margin:0 0 -6px -4px;padding:0 8px 0 4px;text-decoration:none}.k-page-main .back-link:focus-visible{outline:3px solid var(--k-focus);outline-offset:2px}.k-page-head{gap:6px;display:grid}.k-page-head h1{font:900 clamp(2.75rem, 12vw, 3.5rem)/.85 var(--k-font-display);letter-spacing:-.01em;text-transform:uppercase;color:var(--k-ink);margin:0}.k-page-intro{max-width:46ch;font:500 var(--k-text-md)/1.5 var(--k-font-body);color:var(--k-muted);text-wrap:pretty;margin:4px 0 0}.k-page-foot{font:500 var(--k-text-xs)/1.4 var(--k-font-mono);color:var(--k-muted);text-align:center;margin:4px 0 0}.k-page .k-card{gap:8px;margin:0;display:grid}.k-page .k-card h2{font:900 1.5rem/1 var(--k-font-display);text-transform:uppercase;color:var(--k-ink);margin:0}.k-row-link{border-top:1px solid var(--k-hair);min-height:48px;color:var(--k-ink);font:700 var(--k-text-sm)/1.25 var(--k-font-body);justify-content:space-between;align-items:center;gap:12px;padding:0;text-decoration:none;display:flex}.k-row-link svg{flex:none}.k-row-link:hover span{text-underline-offset:4px;text-decoration:underline;text-decoration-thickness:2px}.k-row-link:focus-visible{outline:3px solid var(--k-focus);outline-offset:2px}.k-support-lines{gap:10px;margin:0;padding:0;list-style:none;display:grid}.k-support-line h2{font-size:1.375rem}.k-support-phone{border:2px solid var(--k-line);background:var(--k-card);min-height:56px;color:var(--k-ink);box-shadow:var(--k-shadow-sm);font:900 1.75rem/1 var(--k-font-display);letter-spacing:.02em;font-variant-numeric:tabular-nums;justify-content:center;align-items:center;padding:0 16px;text-decoration:none;display:flex}.k-support-phone:active{box-shadow:none;translate:2px 2px}.k-support-phone:focus-visible{outline:3px solid var(--k-focus);outline-offset:3px}.k-support-detail{font:500 var(--k-text-sm)/1.5 var(--k-font-body);color:var(--k-muted);margin:0}.k-support-urgent{border-color:var(--k-danger-ink);background:var(--k-danger-soft)}.k-support-urgent h2{color:var(--k-danger-ink)}.k-support-urgent .k-support-detail{color:var(--k-ink)}.k-support-pause .k-row-link{border-top:0}.k-about-hero{border:2px solid var(--k-on-acid);background:var(--k-acid);color:var(--k-on-acid);box-shadow:var(--k-shadow);justify-items:start;gap:10px;padding:18px 16px;display:grid}.k-about-hero .poiem-logo{width:132px;height:auto;color:var(--k-on-acid)}.k-about-hero .poiem-logo-letter{fill:var(--k-on-acid)}.k-about-hero h2{font:900 clamp(2rem, 9vw, 2.5rem)/.9 var(--k-font-display);text-transform:uppercase;color:var(--k-on-acid);margin:0}.k-about-hero p{max-width:42ch;font:500 var(--k-text-md)/1.5 var(--k-font-body);color:var(--k-on-acid);margin:0}.k-about-stamp{border:2px solid var(--k-on-acid);background:var(--k-card);color:var(--k-ink);font:600 var(--k-text-xs)/1.2 var(--k-font-mono);letter-spacing:.04em;padding:4px 8px;rotate:-2deg}.k-about-momo{grid-template-columns:72px minmax(0,1fr);align-items:start;gap:14px}.k-about-momo-art{border:2px solid var(--k-on-acid);background:var(--k-momo);width:72px;height:78px;box-shadow:var(--k-shadow-sm);border-radius:48% 48% 10% 10%;padding:4px;rotate:-5deg}.k-about-momo>div{gap:8px;display:grid}.k-about-momo p{font:500 var(--k-text-sm)/1.5 var(--k-font-body);color:var(--k-muted);margin:0}.k-about-links{gap:0;padding-block:4px}.k-about-links .k-row-link:first-child{border-top:0}:is(.k-coach-momo,.k-coach-avatar,.k-about-momo-art) .momo-sticker{width:100%;height:100%;box-shadow:none;background:0 0;border:0;border-radius:0;flex:none;display:block;transform:none}:is(.k-coach-momo,.k-coach-avatar,.k-about-momo-art) svg{width:100%;height:100%;display:block}.k-coach{min-height:100dvh}.k-coach-head{padding:18px var(--k-gutter) 6px;grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:14px;display:grid}.k-coach-momo{border:2px solid var(--k-on-acid);background:var(--k-momo);width:64px;height:68px;box-shadow:var(--k-shadow-sm);border-radius:48% 48% 10% 10%;padding:4px;rotate:-6deg}.k-coach-title{gap:4px;min-width:0;display:grid}.k-coach-title h1{font:900 clamp(2.25rem, 10vw, 2.75rem)/.86 var(--k-font-display);letter-spacing:-.01em;text-transform:uppercase;color:var(--k-ink);margin:0}.k-coach-sub{font:600 var(--k-text-xs)/1.3 var(--k-font-mono);color:var(--k-muted);margin:0}.k-coach-clear{align-self:start;min-width:44px}.k-coach-main{padding:10px var(--k-gutter) calc(var(--k-tabbar-h) + var(--safe-bottom,0px) + 150px);grid-template-columns:minmax(0,1fr);align-content:start;gap:14px;display:grid}.k-coach-main .error-banner{border:2px solid var(--k-danger-ink);background:var(--k-danger-soft);color:var(--k-danger-ink);box-shadow:none;font:600 var(--k-text-sm)/1.5 var(--k-font-body);border-radius:0;margin:0;padding:10px 14px}.k-coach-empty{box-shadow:var(--k-shadow);gap:10px;display:grid}.k-coach-empty h2{font:900 1.875rem/.95 var(--k-font-display);text-transform:uppercase;color:var(--k-ink);margin:0}.k-coach-empty>p{font:500 var(--k-text-md)/1.45 var(--k-font-body);color:var(--k-muted);margin:0}.k-coach-starters{gap:8px;margin-top:2px;display:grid}.k-coach-starter{border:2px solid var(--k-line);background:var(--tone);min-height:52px;color:var(--k-on-tone);font:700 var(--k-text-sm)/1.3 var(--k-font-body);text-align:left;cursor:pointer;align-items:center;gap:10px;padding:8px 12px;transition:translate .14s,box-shadow .14s;display:flex}.k-coach-starter.is-tone-butter{--tone:var(--k-butter)}.k-coach-starter.is-tone-peach{--tone:var(--k-peach)}.k-coach-starter.is-tone-mint{--tone:var(--k-mint)}.k-coach-starter svg{flex:none}.k-coach-starter:disabled{border-style:dashed;border-color:var(--k-hair-strong);color:var(--k-muted);cursor:default;background:0 0}.k-coach-starter:focus-visible{outline:3px solid var(--k-focus);outline-offset:2px}@media (hover:hover) and (pointer:fine){.k-coach-starter:not(:disabled):hover{box-shadow:var(--k-shadow-sm);translate:-1px -1px}}.k-coach-privacy{font:500 var(--k-text-xs)/1.5 var(--k-font-body);color:var(--k-muted);margin:0}.k-coach-thread{gap:12px;display:grid}.k-coach-msg{align-items:end;gap:4px 10px;max-width:100%;display:grid}.k-coach-msg.is-assistant{grid-template-columns:40px minmax(0,1fr);justify-self:stretch}.k-coach-msg.is-user{justify-self:end;justify-items:end;max-width:86%}.k-coach-avatar{border:2px solid var(--k-on-acid);background:var(--k-momo);border-radius:48% 48% 10% 10%;grid-row:1;width:40px;height:43px;padding:2px}.k-coach-bubble{border:2px solid var(--k-line);background:var(--k-card);min-width:0;color:var(--k-ink);padding:12px 14px}.k-coach-msg.is-assistant .k-coach-bubble{box-shadow:var(--k-shadow-sm)}.k-coach-msg.is-user .k-coach-bubble{background:var(--k-butter);color:var(--k-on-tone)}.k-coach-text{font:500 var(--k-text-md)/1.5 var(--k-font-body);overflow-wrap:anywhere;gap:8px;margin:0;display:grid}.k-coach-text p,.k-coach-text ul{margin:0}.k-coach-text ul{gap:4px;padding-left:1.2em;display:grid}.k-coach-text strong{font-weight:800}.k-coach-delete{min-width:44px;min-height:44px;color:var(--k-muted);font:600 var(--k-text-xs)/1 var(--k-font-body);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0 6px;text-decoration:underline}.k-coach-msg.is-assistant .k-coach-delete{grid-column:2;justify-self:start;margin:-6px 0 -10px -6px}.k-coach-msg.is-user .k-coach-delete{margin:-6px -6px -10px 0}.k-coach-delete:hover{color:var(--k-danger-ink)}.k-coach-delete:focus-visible{outline:3px solid var(--k-focus);outline-offset:0}.k-coach-msg.is-typing .k-coach-bubble{justify-self:start;gap:6px;padding:14px 16px;display:flex}.k-coach-dot{background:var(--k-ink);width:8px;height:8px;animation:1s ease-in-out infinite k-coach-dot}.k-coach-dot:nth-child(2){animation-delay:.15s}.k-coach-dot:nth-child(3){animation-delay:.3s}@keyframes k-coach-dot{0%,60%,to{opacity:.4;translate:0}30%{opacity:1;translate:0 -5px}}.k-coach-help{border:2px solid var(--k-line);background:var(--k-mint);color:var(--k-on-tone);gap:4px;padding:12px 14px;display:grid}.k-coach-help .k-eyebrow{color:var(--k-on-tone)}.k-coach-help ul{margin:0;padding:0;list-style:none;display:grid}.k-coach-help a{border-top:1px solid color-mix(in srgb, var(--k-on-tone) 22%, transparent);min-height:44px;color:var(--k-on-tone);font:700 var(--k-text-sm)/1.25 var(--k-font-body);justify-content:space-between;align-items:center;gap:10px;text-decoration:none;display:flex}.k-coach-help li:first-child a{border-top:0}.k-coach-help a:hover{text-underline-offset:4px;text-decoration:underline;text-decoration-thickness:2px}.k-coach-help a:focus-visible{outline:3px solid var(--k-focus);outline-offset:2px}.k-coach-compose{right:0;bottom:calc(var(--k-tabbar-h) + var(--safe-bottom,0px));z-index:calc(var(--k-z-nav) - 1);width:100%;max-width:var(--k-shell);padding:10px var(--k-gutter) 8px;border-top:2px solid var(--k-line);background:var(--k-ground);gap:6px;margin:0 auto;display:grid;position:fixed;left:0}.k-coach-compose .flow-allowance{margin:0}.k-coach-compose .pressable{--action-height:2.75rem;justify-self:start}.k-coach-form{grid-template-columns:minmax(0,1fr) 52px;gap:8px;margin:0;display:grid}.k-coach-input{border:2px solid var(--k-line);background:var(--k-card);width:100%;min-width:0;min-height:52px;color:var(--k-ink);box-shadow:none;font:600 var(--k-text-md)/1.2 var(--k-font-body);border-radius:0;padding:0 14px}.k-coach-input::placeholder{color:var(--k-muted);opacity:1}.k-coach-input:focus{outline:3px solid var(--k-focus);outline-offset:2px}.k-coach-send{border:2px solid var(--k-on-action);background:var(--k-action);width:52px;height:52px;color:var(--k-on-action);box-shadow:var(--k-shadow-sm);cursor:pointer;border-radius:0;place-items:center;padding:0;display:grid}.k-coach-send:active:not(:disabled){box-shadow:none;translate:2px 2px}.k-coach-send:disabled{border-color:var(--k-hair-strong);background:var(--k-sunken);color:var(--k-muted);box-shadow:none;cursor:default}.k-coach-send:focus-visible{outline:3px solid var(--k-focus);outline-offset:3px}.k-account{background:var(--k-ground);min-height:100dvh;color:var(--k-ink)}.k-account-bar{width:100%;max-width:1120px;padding:14px var(--k-gutter) 0;justify-content:space-between;align-items:center;gap:12px;margin:0 auto;display:flex}.k-account-bar .appearance-options{border:2px solid var(--k-line);background:var(--k-card);box-shadow:var(--k-shadow-sm);border-radius:0;gap:0;padding:0;display:flex}.k-account-bar .appearance-option{flex:0 0 44px}.k-account-bar .appearance-option-face{width:44px;min-height:44px;color:var(--k-ink);background:0 0;border-radius:0;padding:0;transform:none}.k-account-bar .appearance-option:hover input:not(:checked)+.appearance-option-face{background:var(--k-sunken);color:var(--k-ink);transform:none}.k-account-bar .appearance-option>input:checked+.appearance-option-face{background:var(--k-ink);color:var(--k-ground)}.k-account-bar .appearance-option>input:focus-visible+.appearance-option-face{outline:3px solid var(--k-focus);outline-offset:-5px}.k-account-layout{width:100%;max-width:var(--k-shell);padding:14px var(--k-gutter) 32px;gap:16px;margin:0 auto;display:grid}.k-account-poster{border:2px solid var(--k-on-acid);background:var(--k-acid);color:var(--k-on-acid);box-shadow:var(--k-shadow);grid-template-columns:minmax(0,1fr) 108px;grid-template-areas:"eyebrow eyebrow""headline stage""bubble bubble";align-items:center;gap:8px 14px;padding:16px;display:grid}.k-account-poster>.k-eyebrow{color:var(--k-on-acid);grid-area:eyebrow}.k-account-headline{font:900 clamp(2.5rem, 13vw, 3.5rem)/.84 var(--k-font-display);letter-spacing:-.01em;text-transform:uppercase;color:var(--k-on-acid);grid-area:headline;justify-items:start;gap:2px;margin:0;display:grid}.k-account-headline span:nth-child(2){color:#0000;-webkit-text-stroke:2px var(--k-on-acid)}.k-account-headline span:nth-child(3){border:2px solid var(--k-on-acid);background:var(--k-action);color:var(--k-on-action);box-shadow:3px 3px 0 var(--k-on-acid);margin-top:4px;padding:.06em .12em 0;rotate:-2deg}.k-account-stage{grid-area:stage;place-items:center;display:grid;position:relative}.k-account-momo{border:2px solid var(--k-on-acid);background:var(--k-momo);width:108px;height:116px;color:var(--k-on-tone);box-shadow:3px 3px 0 var(--k-on-acid);border-radius:48% 48% 10% 10%;place-items:center;padding:5px;display:grid;rotate:5deg}.k-account-momo-art,.k-account-momo .momo-sticker,.k-account-momo svg{width:100%;height:100%;display:block}.k-account-momo .momo-sticker{box-shadow:none;background:0 0;border:0;border-radius:0;flex:none;transform:none}.k-account-momo .food-club-fallback{width:56px;height:56px}.k-account-receipt{display:none}.k-account-bubble{grid-area:bubble;gap:4px;display:grid}.k-account-bubble .k-eyebrow{color:var(--k-on-acid)}.k-account-bubble p{border:2px solid var(--k-on-acid);background:var(--k-card);color:var(--k-ink);box-shadow:3px 3px 0 var(--k-on-acid);font:700 var(--k-text-sm)/1.35 var(--k-font-body);margin:0;padding:10px 12px}.k-account-description{display:none}.k-account-card{border:2px solid var(--k-line);background:var(--k-card);min-width:0;color:var(--k-ink);box-shadow:var(--k-shadow);text-align:left;border-radius:0;gap:14px;margin:0;padding:20px;animation:none;display:grid}.k-account-kicker{border-bottom:2px solid var(--k-line);padding-bottom:10px}.k-account-title{gap:6px;display:grid}.k-account-title h1{font:900 clamp(2.75rem, 12vw, 3.5rem)/.86 var(--k-font-display);letter-spacing:-.01em;text-transform:uppercase;color:var(--k-ink);margin:0}.k-account-title p{font:500 var(--k-text-md)/1.45 var(--k-font-body);color:var(--k-muted);margin:0}.k-account-claim{border:2px solid var(--k-line);background:var(--k-butter);color:var(--k-on-tone);font:700 var(--k-text-sm)/1.3 var(--k-font-body);align-items:center;gap:8px;margin:0;padding:10px 12px;display:flex}.k-account-claim svg{flex:none}.k-account .auth-tabs{border:2px solid var(--k-line);background:var(--k-card);box-shadow:none;border-radius:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0;padding:0;display:grid;position:relative}.k-account .auth-tab{min-height:48px;color:var(--k-ink);box-shadow:none;font:800 var(--k-text-sm)/1 var(--k-font-body);cursor:pointer;background:0 0;border:0;border-radius:0;place-items:center;padding:0 12px;display:grid;position:relative}.k-account .auth-tab-marker{background:var(--k-ink);box-shadow:none;border-radius:0;position:absolute;inset:0}.k-account .auth-tab-label{z-index:1;position:relative}.k-account .auth-tab.active{color:var(--k-ground);background:0 0}.k-account .auth-tab:focus-visible{outline:3px solid var(--k-focus);outline-offset:2px;z-index:2}.k-account .error-banner{border:2px solid var(--k-danger-ink);background:var(--k-danger-soft);color:var(--k-danger-ink);box-shadow:none;font:600 var(--k-text-sm)/1.5 var(--k-font-body);border-radius:0;margin:0;padding:10px 14px}.k-account .error-banner:focus-visible{outline:3px solid var(--k-focus);outline-offset:2px}.k-account .auth-form{text-align:left;gap:14px;margin:0;display:grid}.k-account .auth-fields{border:0;gap:14px;min-width:0;margin:0;padding:0;display:grid}.k-account .field{gap:6px;min-width:0;margin:0;display:grid}.k-account .field>label{font:600 var(--k-text-xs)/1.2 var(--k-font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--k-muted);margin:0}.k-account .field input{border:2px solid var(--k-line);background:var(--k-ground);width:100%;min-width:0;min-height:50px;color:var(--k-ink);box-shadow:none;font:700 var(--k-text-md)/1.2 var(--k-font-body);border-radius:0;margin:0;padding:0 12px;transform:none}.k-account .field input::placeholder{color:var(--k-muted);opacity:1;font-weight:500}.k-account .field input:focus{border-color:var(--k-line);box-shadow:none;outline:3px solid var(--k-focus);outline-offset:2px}.k-account .auth-password-tools{font:500 var(--k-text-xs)/1.3 var(--k-font-body);color:var(--k-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 12px;display:flex}.k-account .auth-show-password{min-height:44px;color:var(--k-ink);font:700 var(--k-text-sm)/1 var(--k-font-body);text-underline-offset:4px;cursor:pointer;background:0 0;border:0;margin-left:auto;padding:0 2px;text-decoration:underline;text-decoration-thickness:2px}.k-account .auth-show-password:focus-visible{outline:3px solid var(--k-focus);outline-offset:2px}.k-account .auth-password-strength{gap:6px;display:grid}.k-account .auth-password-meter{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;display:grid}.k-account .auth-password-meter-bar{border:1.5px solid var(--k-hair-strong);background:var(--k-sunken);transform-origin:0;border-radius:0;height:8px;display:block}.k-account .auth-password-meter-bar.is-on{border-color:var(--k-on-acid);background:var(--k-acid)}.k-account .auth-password-strength-label{font:500 var(--k-text-xs)/1.35 var(--k-font-body);color:var(--k-muted)}.k-account .auth-password-match{font:700 var(--k-text-xs)/1.35 var(--k-font-body)}.k-account .auth-password-match.is-match{color:var(--k-ink)}.k-account .auth-password-match.is-mismatch{color:var(--k-danger-ink)}.k-account .auth-submit-dock{margin:2px 0 0}.k-account .login-hint{text-align:center;margin:0}.k-account .login-hint a{min-height:44px;color:var(--k-ink);font:700 var(--k-text-sm)/1 var(--k-font-body);text-underline-offset:4px;align-items:center;text-decoration:underline;text-decoration-thickness:2px;display:inline-flex}.k-account .login-hint a:focus-visible{outline:3px solid var(--k-focus);outline-offset:2px}.k-account .auth-divider{font:600 var(--k-text-xs)/1 var(--k-font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--k-muted);align-items:center;gap:12px;margin:0;display:flex}.k-account .auth-divider:before,.k-account .auth-divider:after{content:"";background:var(--k-line);flex:1;height:2px}.k-account .login-google{justify-content:center;min-height:44px;display:flex}.k-account-foot{border-top:2px dashed var(--k-hair-strong);font:500 var(--k-text-xs)/1.4 var(--k-font-mono);color:var(--k-muted);text-align:center;justify-content:center;align-items:center;gap:6px;margin:0;padding-top:12px;display:flex}.k-account-foot svg{flex:none}.k-account.is-simple{padding:clamp(24px, 8vh, 72px) var(--k-gutter) 40px;align-content:start;justify-items:center;display:grid}.k-account.is-simple>.k-account-card{width:min(100%,440px)}.k-account-logo{width:120px}.k-account-simple-title{font:900 clamp(2.25rem, 10vw, 3rem)/.9 var(--k-font-display);letter-spacing:-.01em;text-transform:uppercase;color:var(--k-ink);text-wrap:balance;margin:0}.k-account-simple-sub{font:500 var(--k-text-md)/1.5 var(--k-font-body);color:var(--k-muted);margin:0}.k-account-card.is-session{text-align:center;box-shadow:none;justify-items:center}.k-account-card.is-session .k-account-logo{width:150px}@media (width<=899px){.k-account:not(.is-simple){padding-bottom:calc(96px + env(safe-area-inset-bottom,0px))}.k-account .auth-submit-dock{z-index:30;padding:10px max(var(--k-gutter), calc((100vw - 440px) / 2)) calc(14px + env(safe-area-inset-bottom,0px));border-top:2px solid var(--k-line);background:var(--k-ground);margin:0;position:fixed;bottom:0;left:0;right:0}.k-account .auth-submit-dock.is-keyboard-open{background:0 0;border-top:0;padding:4px 0 0;position:static}.k-account :is(input,button,a,.error-banner){scroll-margin-block:120px}}@media (width>=900px){.k-account-layout{grid-template-columns:minmax(0,1fr) minmax(360px,440px);align-items:start;gap:40px;max-width:1040px;padding-top:28px}.k-account-poster{grid-template-columns:minmax(0,1fr);grid-template-areas:"eyebrow""headline""stage""bubble""description";gap:16px;padding:28px;position:sticky;top:24px}.k-account-headline{flex-wrap:wrap;align-items:flex-end;gap:6px 14px;min-width:0;font-size:clamp(3.5rem,5vw,4.75rem);display:flex}.k-account-headline span:nth-child(3){margin-top:0}.k-account-stage{grid-template-columns:auto 1fr;place-items:end start;gap:20px}.k-account-momo{width:168px;height:180px;padding:8px}.k-account-receipt{border:2px solid var(--k-on-acid);background:var(--k-card);width:min(100%,240px);color:var(--k-ink);box-shadow:3px 3px 0 var(--k-on-acid);gap:6px;padding:12px 14px;display:grid;rotate:-3deg}.k-account-receipt-top{font:600 var(--k-text-xs)/1 var(--k-font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--k-muted);justify-content:space-between;align-items:center;gap:8px;display:flex}.k-account-receipt strong{font:800 var(--k-text-lg)/1.2 var(--k-font-body)}.k-account-receipt-kcal{font:600 var(--k-text-sm)/1 var(--k-font-body);align-items:baseline;gap:6px;display:flex}.k-account-receipt-kcal b{font:900 1.75rem/1 var(--k-font-display)}.k-account-receipt-kcal small{font:500 var(--k-text-xs)/1 var(--k-font-mono);color:var(--k-muted)}.k-account-bubble p{font-size:var(--k-text-md)}.k-account-description{max-width:46ch;font:500 var(--k-text-md)/1.5 var(--k-font-body);color:var(--k-on-acid);grid-area:description;margin:0;display:block}.k-account-description strong{font-weight:800}.k-account-card{padding:28px}}}.settings-input,.settings-select,.settings-key-toggle{min-height:44px}.range-chip,.discover-chip,.star-btn,.progress-log-btn,.ticket-note{min-width:44px;min-height:44px}.discover-search{padding-block:0}.discover-search input{min-height:44px}.ssc-btn{box-sizing:border-box;background-clip:padding-box;border:9px solid #0000;border-radius:50%;width:44px;height:44px}.ssc-btn:hover:not(:disabled){background-clip:padding-box}.log-pill-btn{box-sizing:border-box;background-clip:padding-box;border:8px solid #0000;justify-content:center;align-items:center;min-height:44px;display:inline-flex}.ticket-glass{min-height:44px}.back-link{align-items:center;min-height:44px;padding-right:8px;display:inline-flex}.home-chip{min-height:44px}.settings-row{align-items:center;min-height:56px}.settings-byok-note a{min-height:44px;padding-block:8px}.support-phone{align-items:center;min-height:44px;margin-bottom:0;display:inline-flex}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;transition-delay:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:.01ms!important}::view-transition-group(*){animation:none!important}::view-transition-old(*){animation:none!important}::view-transition-new(*){animation:none!important}}
