:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#faf7f0;--surface:#fff;--surface-tint:#f4efe3;--ink:#24332f;--ink-soft:#55625e;--ink-mute:#5f6d69;--line:#e6dfd0;--line-strong:#cfc6b2;--line-field:#858f8a;--teal:#176a5b;--teal-deep:#0f4f44;--teal-ink:#fff;--teal-soft:#e2efea;--teal-soft-ink:#0f4f44;--coral:#d67b5d;--coral-ink:#8f4127;--coral-soft:#f9e8e0;--gold:#d9aa4b;--gold-ink:#7a5a12;--gold-soft:#f7edd6;--danger-ink:#8c2f2f;--danger-soft:#f8e3e3;--radius:12px;--radius-lg:18px;--tap-sm:44px;--tap:48px;--tap-lg:52px;--text:1.125rem;--text-md:1.0625rem;--text-sm:1rem;--text-xs:.875rem;--text-lg:1.25rem;--text-title:1.5rem;--text-num:1.75rem;--gutter:16px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--shadow-sheet:0 -6px 28px #24332f29;--shadow-toast:0 4px 16px #24332f33;--font:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-display:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--nav-h:68px}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;background:var(--bg);font-size:100%}body{font-family:var(--font);font-size:var(--text);color:var(--ink);background:var(--bg);overscroll-behavior-y:none;-webkit-font-smoothing:antialiased;min-height:100dvh;margin:0;line-height:1.4}#root{flex-direction:column;min-height:100dvh;display:flex}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.005em;margin:0;line-height:1.25}h1{font-size:var(--text-title);font-weight:700}h2{font-size:var(--text);font-weight:650}h3{font-size:var(--text-md);font-weight:650}p{margin:0}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;-webkit-tap-highlight-color:transparent}button:disabled{cursor:default}:focus-visible{outline:3px solid var(--teal);outline-offset:2px;border-radius:6px}a{color:var(--teal-deep)}.num{font-variant-numeric:tabular-nums}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important}}.screen{padding:calc(var(--safe-top) + 6px) var(--gutter) calc(var(--nav-h) + var(--safe-bottom) + 20px);flex:1;width:100%;max-width:640px;margin:0 auto}.screen.no-nav{padding-bottom:calc(var(--safe-bottom) + 32px)}.screen-head{min-height:calc(var(--tap-sm) + 8px);align-items:center;gap:8px;margin-bottom:6px;display:flex}.screen-head .titles{flex-wrap:wrap;flex:auto;align-items:baseline;column-gap:10px;min-width:0;display:flex}.screen-sub{font-size:var(--text-sm);color:var(--ink-soft)}.screen-sub.gold{color:var(--gold-ink);font-weight:600}.screen-head .actions{flex:none;align-items:center;gap:4px;display:flex}.icon-btn{width:var(--tap-sm);height:var(--tap-sm);color:var(--teal-deep);background:0 0;border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.icon-btn svg{width:24px;height:24px}.icon-btn:active{background:var(--surface-tint)}.stack{flex-direction:column;gap:12px;display:flex}.stack-sm{flex-direction:column;gap:8px;display:flex}.stack-lg{flex-direction:column;gap:20px;display:flex}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.row-between{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.grow{flex:1;min-width:0}.muted{color:var(--ink-soft)}.small{font-size:var(--text-sm)}.wrap{overflow-wrap:break-word;min-width:0}.clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.section-head{justify-content:space-between;align-items:center;gap:8px;min-height:28px;margin:0 2px 6px;display:flex}.section-title{font-size:var(--text-sm);color:var(--ink-soft);margin:0 2px 6px;font-weight:650}.section-head .section-title{margin:0}.btn{min-height:var(--tap);border-radius:var(--radius);font-weight:650;font-size:var(--text-md);text-align:center;background:var(--surface-tint);color:var(--ink);-webkit-user-select:none;user-select:none;border:1.5px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 18px;line-height:1.2;text-decoration:none;transition:background .12s;display:inline-flex}.btn:disabled{opacity:.55}.btn svg{flex:none;width:20px;height:20px}.btn-primary{background:var(--teal);color:var(--teal-ink)}.btn-primary:active:not(:disabled){background:var(--teal-deep)}.btn-secondary{background:var(--surface);border-color:var(--line-strong)}.btn-secondary:active:not(:disabled){background:var(--surface-tint)}.btn-quiet{color:var(--teal-deep);min-height:var(--tap-sm);background:0 0;padding:0 10px}.btn-quiet:active:not(:disabled){background:var(--surface-tint)}.btn-danger{background:var(--danger-soft);color:var(--danger-ink)}.btn-danger-quiet{color:var(--danger-ink);min-height:var(--tap-sm);background:0 0;padding:0 10px}.btn-lg{min-height:var(--tap-lg);font-size:var(--text)}.btn-sm{min-height:var(--tap-sm);padding:0 14px}.btn-block{width:100%}.field{flex-direction:column;gap:4px;min-width:0;display:flex}.field label,.label{font-size:var(--text-sm);color:var(--ink-soft);font-weight:650}.field-inline{flex-wrap:wrap;align-items:center;gap:4px 12px;display:flex}.field-inline>label,.field-inline>.label{font-size:var(--text-md);color:var(--ink);flex:6em;font-weight:600}.field-inline>.select,.field-inline>.input{flex:11em;width:auto}.input,.select,.textarea{min-height:var(--tap);border-radius:var(--radius);border:1.5px solid var(--line-field);background:var(--surface);width:100%;min-width:0;font-size:var(--text);padding:8px 12px}.input:focus,.select:focus,.textarea:focus{border-color:var(--teal);box-shadow:0 0 0 2px var(--teal);outline:none}.input:disabled{background:var(--surface-tint);color:var(--ink-soft)}.input-lg{min-height:var(--tap-lg);font-size:1.1875rem}.textarea{resize:vertical;min-height:96px}.select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--ink-soft) 50%), linear-gradient(135deg, var(--ink-soft) 50%, transparent 50%);text-overflow:ellipsis;background-position:calc(100% - 20px) 55%,calc(100% - 14px) 55%;background-repeat:no-repeat;background-size:6px 6px;padding-right:36px}.help{font-size:var(--text-sm);color:var(--ink-soft)}.error-text{color:var(--danger-ink);font-size:var(--text-sm)}.check{min-height:var(--tap);cursor:pointer;align-items:center;gap:12px;display:flex}.check input{width:24px;height:24px;accent-color:var(--teal);flex:none}.segmented{background:var(--surface-tint);border-radius:var(--radius);gap:3px;padding:3px;display:inline-flex}.segmented button{min-height:var(--tap-sm);font-weight:650;font-size:var(--text-md);color:var(--ink-soft);background:0 0;border:0;border-radius:9px;padding:0 14px}.segmented button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:0 0 0 1px var(--line-strong)}.segmented.full{grid-auto-columns:1fr;grid-auto-flow:column;display:grid}.week{align-items:stretch;margin:0 -8px;display:flex}.week-arrow{width:var(--tap-sm);min-height:52px;color:var(--teal-deep);background:0 0;border:0;border-radius:10px;flex:none;justify-content:center;align-items:center;display:inline-flex}.week-arrow svg{width:22px;height:22px}.week-arrow:disabled{color:var(--line-strong)}.week-days{flex:1;grid-template-columns:repeat(7,1fr);gap:0;min-width:0;display:grid}.week-days button{min-height:52px;color:var(--ink-soft);background:0 0;border:0;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:1px;min-width:0;padding:4px 0;display:flex}.week-days button span:first-child{text-transform:uppercase;letter-spacing:.02em;font-size:.75rem;font-weight:650}.week-days button span.num{font-size:var(--text);color:var(--ink);font-weight:700;line-height:1.15}.week-days button:disabled{opacity:.35}.week-days button[aria-current=date]:not([aria-pressed=true]) span.num{color:var(--teal-deep);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:2px}.week-days button[aria-pressed=true]{background:var(--teal);color:var(--teal-ink)}.week-days button[aria-pressed=true] span.num{color:var(--teal-ink)}.week-days .dot{background:var(--teal);border-radius:50%;width:5px;height:5px}.week-days button[aria-pressed=true] .dot{background:var(--teal-ink)}.week-days .dot.dot-none{background:0 0}.goals{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);flex-direction:column;gap:10px;padding:12px 16px;display:flex}.macro-board{flex-direction:column;gap:12px;display:flex}.macro{flex-direction:column;gap:2px;display:flex}.macro-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:0 12px;display:flex}.macro-name{font-weight:700;font-size:var(--text)}.macro-goal{font-size:var(--text-sm);color:var(--ink-mute)}.macro-figures{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:0 16px;display:flex}.macro-fig{align-items:baseline;gap:6px;min-width:0;display:inline-flex}.macro-fig b{font-size:var(--text-num);letter-spacing:-.02em;white-space:nowrap;font-weight:700;line-height:1.15}.macro-fig small{font-size:var(--text-sm);color:var(--ink-soft);font-weight:600}.macro-fig.right{text-align:right;color:var(--teal-deep);margin-left:auto}.macro-fig.right.over{color:var(--gold-ink)}.macro-track{background:var(--surface-tint);border-radius:999px;height:8px;margin-top:4px;position:relative;overflow:hidden}.macro-fill{background:var(--teal);border-radius:999px;transition:width .32s cubic-bezier(.2,.7,.2,1);position:absolute;inset:0 auto 0 0}.macro-fill.over{background:var(--gold)}.macro-fill.provisional{background-image:repeating-linear-gradient(135deg,#0000 0 6px,#ffffff59 6px 10px)}.macro-note{font-size:var(--text-sm);color:var(--ink-soft);margin-top:2px}.secondary-line{border-top:1px solid var(--line);flex-wrap:wrap;gap:2px 18px;padding-top:8px;display:flex}.secondary-item{font-size:var(--text-sm);color:var(--ink-soft);flex-wrap:wrap;align-items:baseline;gap:0 6px;display:inline-flex}.secondary-item b{color:var(--ink);font-size:var(--text-md);white-space:nowrap}.secondary-item small{font-size:var(--text-xs);color:var(--ink-mute)}.goals-note{font-size:var(--text-sm);color:var(--ink-soft)}.list{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);flex-direction:column;display:flex;overflow:hidden}.list>*+*{border-top:1px solid var(--line)}.list-row{width:100%;min-height:52px;color:inherit;text-align:left;font:inherit;background:0 0;border:0;border-radius:0;align-items:center;gap:12px;padding:9px 14px;text-decoration:none;display:flex}button.list-row:active,.list-row>button.row-main:active{background:var(--surface-tint)}.list-row .main,.row-main{flex-direction:column;flex:auto;align-items:flex-start;gap:1px;min-width:0;display:flex}.row-main{text-align:left;color:inherit;font:inherit;background:0 0;border:0;justify-content:center;align-self:stretch;min-height:52px;margin:-9px 0 -9px -14px;padding:9px 0 9px 14px}.list-row .name{font-weight:650;font-size:var(--text-md);overflow-wrap:break-word;max-width:100%;line-height:1.3}.list-row .sub{color:var(--ink-soft);font-size:var(--text-sm);overflow-wrap:break-word;max-width:100%;line-height:1.35}.list-row .trail{flex:none;align-items:center;gap:6px;display:flex}.list-row .chev{width:18px;height:18px;color:var(--line-strong);flex:none}.list-row.pending{box-shadow:inset 4px 0 0 var(--gold)}.list-row.attention{box-shadow:inset 4px 0 0 var(--coral)}.list-row.draft{background:var(--gold-soft)}.state-line{font-size:var(--text-sm);color:var(--gold-ink);font-weight:600}.state-line.attention{color:var(--coral-ink)}.list-row.selected{background:var(--teal-soft)}.badge{font-size:var(--text-xs);background:var(--surface-tint);color:var(--ink-soft);border:0;border-radius:999px;align-items:center;padding:2px 10px;font-weight:650;display:inline-flex}button.badge{min-height:var(--tap-sm);padding:0 12px}.badge-gold{background:var(--gold-soft);color:var(--gold-ink)}.badge-coral{background:var(--coral-soft);color:var(--coral-ink)}.bottom-nav{padding:6px 10px calc(6px + var(--safe-bottom));background:var(--bg);border-top:1px solid var(--line);z-index:20;grid-template-columns:1fr 1.3fr 1fr;gap:6px;display:grid;position:fixed;bottom:0;left:0;right:0}.bottom-nav a{border-radius:var(--radius);min-height:54px;color:var(--ink-soft);overflow-wrap:break-word;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:1px;min-width:0;padding:2px 4px;font-size:.9375rem;font-weight:650;line-height:1.2;text-decoration:none;display:flex}.bottom-nav a[aria-current=page]{color:var(--teal-deep);background:var(--teal-soft)}.bottom-nav a.primary{background:var(--teal);color:var(--teal-ink);font-size:1rem}.bottom-nav a.primary[aria-current=page]{background:var(--teal-deep)}.bottom-nav svg{flex:none;width:24px;height:24px}.sheet-backdrop{left:0;right:0;top:var(--vv-top,0px);height:var(--vvh,100dvh);z-index:40;background:#24332f6b;justify-content:center;align-items:flex-end;display:flex;position:fixed}.sheet{width:100%;max-width:640px;max-height:calc(var(--vvh,100dvh) - var(--safe-top) - 12px);background:var(--bg);border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:var(--shadow-sheet);flex-direction:column;animation:.16s cubic-bezier(.2,.7,.2,1) sheet-in;display:flex}.sheet:focus{outline:none}.sheet.full{height:calc(var(--vvh,100dvh) - var(--safe-top));border-radius:0;max-height:none}.sheet-head{min-height:52px;padding:4px 8px 4px var(--gutter);border-bottom:1px solid var(--line);flex:none;align-items:center;gap:8px;display:flex}.sheet-head h2{min-width:0;font-size:var(--text);flex:auto}.sheet-head .btn-quiet{flex:none}.sheet-head .back{gap:2px;margin-left:-10px;padding-left:4px}.sheet-head .back svg{width:22px;height:22px}.sheet-body{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;min-height:0;padding:14px var(--gutter) 16px;flex:auto;overflow-y:auto}.sheet-foot{padding:10px var(--gutter) calc(10px + var(--safe-bottom));border-top:1px solid var(--line);background:var(--bg);flex-direction:column;flex:none;gap:4px;display:flex}.sheet-foot .row{justify-content:center}@keyframes sheet-in{0%{transform:translateY(16px)}to{transform:none}}.toasts{left:0;right:0;bottom:calc(var(--nav-h) + var(--safe-bottom) + 10px);padding:0 var(--gutter);z-index:60;pointer-events:none;justify-content:center;display:flex;position:fixed}body.sheet-open .toasts{bottom:auto;top:calc(var(--safe-top) + 8px)}.toast{border-radius:var(--radius);background:var(--ink);color:#fff;max-width:560px;min-height:48px;font-size:var(--text-md);box-shadow:var(--shadow-toast);pointer-events:auto;flex-wrap:wrap;align-items:center;gap:4px 12px;padding:6px 6px 6px 16px;animation:.16s ease-out toast-in;display:flex}.toast span{flex:10em;min-width:0;padding:6px 0}.toast button{min-height:var(--tap-sm);color:#fff;background:#ffffff29;border:0;border-radius:9px;flex:none;margin-left:auto;padding:0 16px;font-weight:700}@keyframes toast-in{0%{transform:translateY(8px)}to{transform:none}}.notice{border-radius:var(--radius);background:var(--surface-tint);font-size:var(--text-sm);flex-wrap:wrap;align-items:center;gap:4px 8px;min-height:48px;padding:6px 6px 6px 14px;display:flex}.notice>.text{flex:12em;min-width:0;padding:6px 0}.notice>.actions{flex-wrap:wrap;gap:4px;margin-left:auto;display:flex}.notice-gold{background:var(--gold-soft);color:var(--gold-ink)}.notice-coral{background:var(--coral-soft);color:var(--coral-ink)}.notice-teal{background:var(--teal-soft);color:var(--teal-soft-ink)}.notice .btn-quiet{color:inherit;text-underline-offset:3px;text-decoration:underline}.app-notices{width:calc(100% - 2 * var(--gutter));max-width:608px;margin:calc(var(--safe-top) + 8px) auto 0;flex-direction:column;gap:8px;display:flex}.inline-status{min-height:var(--tap-sm);color:var(--teal-deep);font-size:var(--text-sm);flex-wrap:wrap;align-items:center;gap:0 8px;font-weight:600;display:flex}.inline-status svg{flex:none;width:18px;height:18px}.inline-status .grow{flex:10em}.quiet-line{font-size:var(--text-sm);color:var(--ink-soft);padding:8px 2px}.stepper{grid-template-columns:var(--tap) minmax(3.5em, 5em) var(--tap);flex:none;align-items:center;gap:6px;display:grid}.stepper input{text-align:center;min-height:var(--tap);padding:4px 6px;font-size:1.375rem;font-weight:700}.stepper button{min-height:var(--tap);border-radius:var(--radius);border:1.5px solid var(--line-strong);background:var(--surface);font-size:1.5rem;font-weight:700;line-height:1}.amount-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.amount-row .select{flex:7em;width:auto}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{min-height:var(--tap-sm);border:1.5px solid var(--line-strong);background:var(--surface);min-width:52px;font-weight:650;font-size:var(--text-sm);border-radius:999px;padding:0 14px}.chip[aria-pressed=true]{background:var(--teal-soft);border-color:var(--teal);color:var(--teal-soft-ink)}.consequence{background:var(--surface-tint);border-radius:var(--radius);flex-direction:column;gap:6px;padding:10px 12px;display:flex}.consequence .adds{font-weight:650;font-size:var(--text-sm)}.consequence .caption{font-size:var(--text-xs);color:var(--ink-soft);font-weight:600}.after{grid-template-columns:repeat(auto-fit,minmax(5.5em,1fr));gap:2px 8px;display:grid}.after .cell b{font-size:var(--text-lg);font-variant-numeric:tabular-nums;line-height:1.2;display:block}.after .cell b.over{color:var(--gold-ink)}.after .cell span{font-size:var(--text-xs);color:var(--ink-soft)}.nutrients{font-variant-numeric:tabular-nums;grid-template-columns:1fr auto;gap:4px 12px;margin:0;display:grid}.nutrients dt{color:var(--ink-soft)}.nutrients dd{text-align:right;margin:0;font-weight:650}.disclosure{border-top:1px solid var(--line)}.disclosure>summary{min-height:var(--tap);font-weight:650;font-size:var(--text-md);color:var(--teal-deep);cursor:pointer;align-items:center;gap:8px;list-style:none;display:flex}.disclosure>summary::-webkit-details-marker{display:none}.disclosure>summary:before{content:"";border-bottom:2px solid;border-right:2px solid;width:8px;height:8px;margin:0 4px 0 2px;transition:transform .12s;transform:rotate(-45deg)}.disclosure[open]>summary:before{transform:rotate(45deg)}.disclosure>summary .hint{color:var(--gold-ink);font-weight:500;font-size:var(--text-sm)}.disclosure>.content{flex-direction:column;gap:10px;padding:2px 0 12px;display:flex}.note{font-size:var(--text-sm);color:var(--ink-soft)}.note-gold{color:var(--gold-ink)}.plate-mark{flex:none;width:56px;height:56px}.hero{align-items:center;gap:14px;display:flex}.scanner-frame{aspect-ratio:4/3;border-radius:var(--radius);background:#111;width:100%;max-height:44vh;position:relative;overflow:hidden}.scanner-frame video{object-fit:cover;width:100%;height:100%}.empty{text-align:center;color:var(--ink-soft);background:var(--surface-tint);border-radius:var(--radius-lg);font-size:var(--text-sm);padding:16px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);flex-direction:column;gap:12px;padding:14px 16px;display:flex}.pair{grid-template-columns:repeat(auto-fit,minmax(9.5em,1fr));gap:8px 12px;display:grid}.pair>.field-inline{align-content:start}.trio{grid-template-columns:repeat(auto-fit,minmax(5em,1fr));gap:8px;display:grid}.nutrient-set{border:0;flex-direction:column;gap:8px;min-width:0;margin:0;padding:0;display:flex}.nutrient-set legend{margin-bottom:6px;padding:0}.nutrient-row{flex-wrap:wrap;align-items:center;gap:6px 8px;display:flex}.nutrient-row label{font-weight:650;font-size:var(--text-md);flex:0 0 4.6em}.nutrient-row .input{flex:4.5em;width:auto}.nutrient-row .select{width:auto;font-size:var(--text-sm);flex:9em}.app-notices+.screen{padding-top:8px}@media (min-width:720px){.screen{padding-top:24px}}.screen-head{flex-wrap:wrap}.screen-head>h1{flex:1;min-width:0}.screen-head>.btn{flex-shrink:0}.journal-toolbar{justify-content:space-between;align-items:center;gap:4px;margin-top:-8px;display:flex}.date-control{min-height:44px;color:var(--ink-soft);font-size:var(--text-sm);background:0 0;border:0;min-width:0;padding:6px}.macro-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin:-4px 0 2px;display:flex}.eyebrow{font-size:var(--text-xs);color:var(--ink-soft);letter-spacing:.02em;font-weight:650}.target-profile{min-height:44px;color:var(--teal-deep);font-size:var(--text-sm);background:0 0;border:0;padding:4px 0 4px 8px;font-weight:600}.goals{gap:8px;padding:10px 14px}.macro-board{gap:10px}.macro-fig b{font-size:1.625rem}.macro-track{height:6px}.macro-goal{font-size:var(--text-xs)}.macro-name{font-size:var(--text-md)}.macro-fig small{font-weight:450}.secondary-line{font-size:var(--text-sm);gap:2px 14px}.target-options{gap:8px;display:grid}.target-option{border:1px solid var(--line-field);border-radius:var(--radius);background:var(--surface);text-align:left;gap:4px;min-height:52px;padding:12px;display:grid}.target-option span{font-size:var(--text-sm);color:var(--ink-soft)}.target-option[aria-pressed=true]{border-color:var(--teal);background:var(--teal-soft)}.diary-empty{color:var(--ink-soft);font-size:var(--text-sm);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;display:flex}.daily-tracking{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:8px 0 10px}.daily-tracking>.section-head{margin-bottom:3px}.water-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.water-main{text-align:left;background:0 0;border:0;flex:1;align-items:center;gap:10px;min-width:0;min-height:56px;padding:6px 0;display:flex}.water-main>span{flex-wrap:wrap;align-items:baseline;gap:6px;display:flex}.water-main .check-label{flex-basis:100%}.water-main strong{font-size:1.25rem}.water-main small{font-size:var(--text-xs);color:var(--ink-mute)}.water-mark{color:#356c86;flex:none;width:24px;height:30px}.water-add{white-space:nowrap;color:#245771;background:#edf4f7;border-color:#7898a9;flex:none}.water-track{background:#dce9ee;border-radius:4px;height:4px;margin:3px 0 7px;overflow:hidden}.water-track>span{background:#356c86;height:100%;transition:width .2s;display:block}.check-label{color:var(--ink-soft);font-size:var(--text-xs);font-weight:550;display:block}.checkin-row{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.checkin-item{text-align:left;background:0 0;border:0;flex-direction:column;flex:130px;justify-content:center;gap:2px;min-height:58px;padding:7px 0;display:flex}.checkin-item strong{font-size:var(--text-md);color:var(--teal-deep);font-weight:600}.checkin-item+.checkin-item{border-left:1px solid var(--line);padding-left:14px}.tracking-save-state{font-size:var(--text-xs);color:var(--gold-ink)}.tracking-date{color:var(--ink-mute);font-size:var(--text-sm);margin-bottom:10px}.tracking-number{font-variant-numeric:tabular-nums;font-size:1.5rem}.tracking-records{border-top:1px solid var(--line);margin-top:12px;padding-top:10px}.tracking-record{border-bottom:1px solid var(--line);align-items:center;gap:8px;padding:4px 0;display:flex}.tracking-record .row-main{background:0 0;border:0;min-height:44px;padding:6px 0}.tracking-record .sub{color:var(--ink-soft);font-size:var(--text-xs)}.compact-details{border-top:1px solid var(--line);margin:8px 0 0}.compact-details>summary{min-height:44px;font-size:var(--text-sm);color:var(--teal-deep);cursor:pointer;padding:10px 0;font-weight:600}.compact-details[open]>summary{margin-bottom:6px}.goal-section{border-bottom:1px solid var(--line);padding:14px 0}.goal-section>h2,.goal-section>.section-head{margin-bottom:10px}.goals-editor>.check-line{margin-top:10px}.goals-editor>.btn-primary{margin-top:18px}.goal-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.goal-fields.pair{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}.goal-fields .field{font-size:var(--text-sm);min-width:0}.goal-fields input{font-variant-numeric:tabular-nums}.unit-select{width:88px}.unit-select .input{min-height:44px}.check-line{min-height:44px;font-size:var(--text-sm);cursor:pointer;align-items:center;gap:10px;display:flex}.check-line input{accent-color:var(--teal);flex:none;width:20px;height:20px;margin:0}.settings-links{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.settings-link{text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;width:100%;min-height:56px;padding:12px 14px;display:flex}.settings-link+.settings-link{border-top:1px solid var(--line)}.settings-section{border-bottom:1px solid var(--line)}.settings-section>summary{cursor:pointer;min-height:48px;font-size:var(--text-md);padding:12px 0;font-weight:600}.settings-section>div{padding:4px 0 14px}.settings-section .btn{align-self:flex-start}.trend-controls{gap:10px;margin:8px 0 14px;display:grid}.trend-controls .field{max-width:220px}.trend-controls .segmented{width:100%}.trend-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:14px}.trend-change{flex-wrap:wrap;align-items:baseline;gap:8px;margin:8px 0;display:flex}.trend-change strong{font-variant-numeric:tabular-nums;font-size:1.5rem}.trend-change span{font-size:var(--text-xs);color:var(--ink-mute)}.trend-chart svg{width:100%;height:auto;margin-top:10px;display:block}.chart-grid{stroke:var(--line);stroke-width:1px}.chart-axis{fill:var(--ink-mute);font-size:11px;font-family:var(--font);font-variant-numeric:tabular-nums}.chart-bar,.chart-point{fill:var(--teal)}.chart-line{stroke:var(--teal);stroke-width:2px}.chart-bar.partial{fill:var(--teal-soft);stroke:var(--teal);stroke-width:1.2px}.chart-readout{justify-content:space-between;align-items:center;gap:10px;display:flex}.chart-readout>span{font-size:var(--text-sm);text-align:center;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:8px;display:flex}.chart-readout>span>span{color:var(--ink-soft)}.chart-legend{font-size:var(--text-xs);color:var(--ink-mute);justify-content:center;align-items:center;gap:8px;margin:8px 0;display:flex}.dash-sample{border-top:2px dashed var(--ink-mute);width:22px;display:inline-block}.chart-empty{text-align:center;color:var(--ink-soft);font-size:var(--text-sm);padding:25px 8px}.compact-status{font-size:var(--text-xs);color:var(--ink-soft);justify-content:space-between;align-items:center;gap:8px;display:flex}.table-scroll{max-width:100%;margin:8px 0;overflow-x:auto}.data-table{border-collapse:collapse;font-size:var(--text-xs);font-variant-numeric:tabular-nums;width:100%}.data-table th{text-align:left;background:var(--surface-tint);font-weight:600}.data-table th,.data-table td{border-bottom:1px solid var(--line);vertical-align:top;white-space:pre-line;padding:8px}.data-table td{min-width:65px}.report-editor{gap:14px;display:grid}.report-sections{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px;margin:0;padding:0;display:grid}.report-sections legend{font-size:var(--text-md);margin-bottom:4px;padding:0;font-weight:600}.report-preview{margin-top:4px;padding-top:4px}.report-preview:focus,.report-editor:focus{outline:none}.report-actions{flex-wrap:wrap;gap:8px;margin:14px 0;display:flex}.report-chart{margin:18px 0}.report-note{font-size:var(--text-sm);white-space:pre-wrap;padding:10px 0}.sheet-body>.stack{gap:12px}.sheet-body .consequence{border-block:1px solid var(--line);background:0 0;border-radius:0;padding:10px 0}.sheet-body .consequence .adds{font-weight:500}.sheet-body .disclosure .content{padding-top:4px}.sheet-body>.stack>div>h3{font-size:var(--text-md);line-height:1.3}.sheet-body .chips{gap:6px}.sheet-body .chip{padding-inline:10px}.sheet-head{min-height:48px}.sheet-foot{padding-top:8px;padding-bottom:calc(8px + var(--safe-bottom))}.input,.select,.textarea{border-width:1px}.list-row{padding-block:8px}.list-row .sub{font-size:.9375rem}button:not(:disabled):active{filter:brightness(.98)}.btn,.chip,.target-option,.settings-link{transition:background-color .14s,border-color .14s}@media (max-width:380px){.goal-fields{gap:6px}.macro-heading{gap:0 6px}.water-add{padding-inline:10px}.screen-head{column-gap:4px}}@media (min-width:700px){.trend-controls{grid-template-columns:1fr 1fr;align-items:center}.report-preview .report-chart{max-width:600px}}@media (prefers-reduced-motion:reduce){.water-track>span,.btn,.chip,.target-option,.settings-link{transition:none}}@supports (container-type:inline-size){.goals-editor,.report-editor{container-type:inline-size}@container (width<=17em){.goal-fields,.goal-fields.pair,.report-sections{grid-template-columns:1fr}}}.workout-week{font-size:var(--text-xs);color:var(--ink-soft);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding-top:4px;display:flex}.workout-week>div{gap:4px;display:flex}.workout-week>div>span{border:1px solid var(--line-strong);border-radius:50%;place-items:center;width:23px;height:23px;font-size:.6875rem;display:grid}.workout-week>div>span.done{background:var(--teal);color:#fff;border-color:var(--teal)}.journal-toolbar>.btn,.chart-readout>.btn{flex:none;min-width:44px}.return-today{align-self:flex-start;margin-top:-10px}.btn,.chip{transition:background .12s,border-color .12s,transform 90ms}.btn:active:not(:disabled),.chip:active:not(:disabled){transform:scale(.98)}.chip:disabled{opacity:.55}.chip-quiet{border-color:var(--line);background:var(--surface-tint);text-align:left;font-weight:600}.chip-approx{border-style:dashed}.input-sm{min-height:var(--tap-sm);font-size:var(--text-sm);padding:6px 10px}.select-sm{width:auto;min-height:var(--tap-sm);font-size:var(--text-sm);padding-top:4px;padding-bottom:4px}.tag{background:var(--gold-soft);color:var(--gold-ink);font-size:var(--text-xs);vertical-align:1px;border-radius:999px;margin-left:6px;padding:1px 7px;font-weight:650;display:inline-block}.describe-btn{margin-top:6px;padding-left:2px}.assistant{flex-direction:column;display:flex}.ask-empty{gap:14px;padding:8px 0 16px;display:grid}.ask-empty p{font-size:var(--text-md);margin:0}.chat{gap:12px;margin:0;padding:0 0 12px;list-style:none;display:grid}.msg{justify-items:start;gap:8px;display:grid}.msg>p{max-width:34ch;margin:0;line-height:1.4}.msg.me{justify-items:end}.msg.me>p{background:var(--teal-soft);color:var(--teal-soft-ink);border-radius:var(--radius-lg) var(--radius-lg) 6px var(--radius-lg);padding:9px 13px}.msg.app>p{color:var(--ink)}.thinking .dots{gap:5px;padding:10px 2px;display:inline-flex}.thinking .dots i{background:var(--ink-mute);border-radius:50%;width:7px;height:7px;animation:1.2s ease-in-out infinite dp-dot}.thinking .dots i:nth-child(2){animation-delay:.15s}.thinking .dots i:nth-child(3){animation-delay:.3s}@keyframes dp-dot{0%,80%,to{opacity:.25}40%{opacity:1}}.ask-bar{bottom:calc(var(--nav-h) + var(--safe-bottom) + 8px);background:var(--bg);align-items:flex-end;gap:8px;padding:8px 0;display:flex;position:sticky}.ask-input{min-height:var(--tap);resize:none;field-sizing:content;flex:1;max-height:9.5em;line-height:1.35}.ask-bar .btn{flex:none}.mic{min-width:var(--tap);padding:0 12px}.mic.is-recording{animation:1.4s ease-in-out infinite dp-rec}@keyframes dp-rec{50%{box-shadow:0 0 0 5px var(--danger-soft)}}.ask-clear{align-self:center;margin-top:4px}.proposal{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);gap:10px;width:100%;padding:12px 14px;display:grid}.proposal.is-closed{opacity:.7}.proposal-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.proposal-title{font-size:var(--text-md);overflow-wrap:anywhere;min-width:0}.proposal-items{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.proposal-item{border-bottom:1px solid var(--line)}.proposal-row{width:100%;min-height:var(--tap);text-align:left;color:inherit;font-size:var(--text-sm);background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;column-gap:10px;padding:6px 0;display:grid}.pi-name{overflow-wrap:anywhere}.pi-qty{color:var(--ink-soft);text-align:right}.pi-num{text-align:right;font-variant-numeric:tabular-nums;min-width:3.2em;font-weight:650}.proposal-item.needs .pi-qty{color:var(--gold-ink);font-weight:650}.proposal-item.left-out .pi-name,.proposal-item.left-out .pi-num{color:var(--ink-mute);text-decoration:line-through}.proposal-edit{gap:8px;padding:2px 0 12px;display:grid}.proposal-edit p{margin:0}.inline-amount{gap:8px;max-width:16rem;display:flex}.proposal-servings{font-size:var(--text-sm);color:var(--ink-soft);flex-wrap:wrap;gap:6px 14px;display:flex}.proposal-servings label{align-items:center;gap:6px;display:inline-flex}.proposal-servings .input{text-align:center;width:4.2em}.proposal-totals{font-size:var(--text-sm);color:var(--ink-soft);margin:0}.proposal-totals b{color:var(--ink);font-size:var(--text-md)}.proposal-changes{font-size:var(--text-sm);gap:6px;margin:0;display:grid}.proposal-changes>div{justify-content:space-between;gap:12px;display:flex}.proposal-changes dt{color:var(--ink-soft)}.proposal-changes dd{text-align:right;margin:0;font-weight:650}.proposal-changes s{color:var(--ink-mute);font-weight:400}.proposal-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.saved-line{color:var(--teal-deep);font-weight:650}.help.error{color:var(--danger-ink)}@media (prefers-reduced-motion:reduce){.btn:active:not(:disabled),.chip:active:not(:disabled){transform:none}.thinking .dots i,.mic.is-recording{animation:none}}:root{--bg:#f5f6f2;--surface:#fff;--surface-tint:#edf0e9;--ink:#1d332e;--ink-soft:#50625b;--ink-mute:#596a63;--line:#dce3da;--line-strong:#c5cec2;--line-field:#7f9086;--teal:#216a57;--teal-deep:#174c40;--teal-soft:#e3eee6;--radius:14px;--radius-lg:23px;--gutter:18px;--text-title:1.7rem;--text-md:1.0625rem;--text-sm:.9375rem;--shadow-soft:0 4px 18px #193d3110;--blue:#285b76;--blue-soft:#e8f2f7;--violet:#655475;--violet-soft:#f0edf5}body{background:radial-gradient(ellipse 90% 400px at 10% 0, #e8efe4 0, transparent 100%), var(--bg)}.screen{max-width:720px;padding-top:calc(var(--safe-top) + 14px);padding-bottom:calc(var(--nav-h) + 32px)}h1{letter-spacing:-.04em;font-weight:750}h2{letter-spacing:-.025em}.screen-head{gap:10px;min-height:52px;margin-bottom:9px}.screen-head .titles{flex-direction:column;align-items:flex-start;gap:1px;display:flex}.brand-eyebrow{letter-spacing:.2em;color:var(--ink-soft);font-size:.625rem;font-weight:750}.screen-head .icon-btn{border:1px solid var(--line);background:var(--surface);border-radius:50%;width:44px;height:44px}.screen-head .icon-btn svg{width:21px;height:21px}.journal-icon{vertical-align:middle;flex:none;width:21px;height:21px}.btn{box-shadow:none;min-height:46px;font-weight:650}.btn-primary{box-shadow:0 3px 8px #174c4012}.btn-secondary{border-color:var(--line-strong)}.btn:focus-visible,.text-action:focus-visible,.amount-preset:focus-visible{outline:3px solid var(--teal);outline-offset:3px}.input,.select,.textarea{border-radius:12px;min-height:48px;font-size:1rem;box-shadow:0 1px 2px #193d3105}.input::placeholder,.textarea::placeholder{color:#6c7972;opacity:1}.field{gap:7px}.field label,.label{font-size:.9375rem;font-weight:600}.section-title{letter-spacing:-.015em;color:var(--ink);align-items:center;gap:8px;font-size:1.0625rem;display:flex}.section-head{align-items:center;gap:8px;margin-bottom:10px}.section-head>.small{font-size:.8125rem}.section-kicker{color:var(--ink-soft);align-items:center;gap:6px;font-size:.8125rem;font-weight:550;display:flex}.text-action{color:var(--teal-deep);text-align:left;background:0 0;border:0;min-height:44px;padding:8px 0;font-size:.875rem;font-weight:600}.journal-toolbar{gap:4px;margin-top:-9px;margin-bottom:0}.journal-toolbar>.btn{min-width:44px;min-height:44px;font-size:1.6rem}.date-control{min-height:44px;padding:4px;font-size:.875rem}.today-screen>.stack{gap:14px}.today-screen .goals{color:#fff;background:linear-gradient(125deg,#153e34,#245949);border:0;border-radius:24px;gap:8px;padding:14px;box-shadow:0 8px 22px #163e3220}.today-screen .macro-heading{gap:8px;min-height:34px;margin:0}.today-screen .eyebrow{color:#e0eae4;letter-spacing:0;font-size:.8125rem;font-weight:600}.today-screen .target-profile{color:#fff;background:#ffffff12;border:1px solid #8bab9c;border-radius:20px;min-height:44px;padding:5px 10px;font-size:.8125rem}.macro-board{grid-template-columns:repeat(auto-fit,minmax(min(100%,5.7rem),1fr));align-items:start;gap:10px;display:grid}.macro{text-align:center;--macro-accent:#ecc09b;align-items:center;gap:4px;min-width:0}.macro-carbs{--macro-accent:#e1d790}.macro-fat{--macro-accent:#c0bedf}.macro-head{flex-direction:column;align-items:center;gap:1px}.macro-name{font-size:.9375rem;font-weight:650}.macro-goal{color:#deebe3;font-size:.75rem}.macro-ring-area{aspect-ratio:1;place-items:center;width:100%;max-width:88px;display:grid;position:relative}.macro-ring{fill:none;stroke-width:4px;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.ring-track{stroke:#ffffff27}.ring-progress{stroke:var(--macro-accent);stroke-linecap:round;transition:stroke-dasharray .3s}.macro-ring.provisional .ring-progress{opacity:.72}.macro-ring-area .macro-fig{flex-direction:column;align-items:center;gap:0;min-width:0;display:flex}.macro-ring-area .macro-fig b{letter-spacing:-.04em;font-size:1.375rem;font-weight:700}.macro-ring-area .macro-fig small{color:#e0eae4;font-size:.75rem;font-weight:450}.today-screen .macro-fig.right{color:#fff;flex-wrap:wrap;justify-content:center;gap:4px;margin:0}.today-screen .macro-fig.right b{letter-spacing:-.03em;font-size:1.05rem}.today-screen .macro-fig.right small{color:#e0eae4;font-size:.8125rem;font-weight:400}.today-screen .macro-fig.right.over,.today-screen .macro-fig.right.over small{color:#f2d59e}.macro-note{color:#e0eae4;max-width:100%;font-size:.6875rem;line-height:1.35}.today-screen .secondary-line{border-color:#729588;justify-content:center;gap:5px 16px;padding-top:10px}.today-screen .secondary-line,.today-screen .secondary-line small,.today-screen .secondary-name{color:#e0eae4;font-size:.8125rem}.today-screen .secondary-line b{color:#fff;font-size:.9375rem}.today-screen .goals-note{color:#e0eae4;font-size:.8125rem}.daily-panel{border:0;padding:0}.daily-panel>.section-head{margin:0 0 8px}.daily-panel>.section-head>.btn{min-height:44px;padding:0 2px;font-size:.8125rem}.hydration-card{background:linear-gradient(110deg,#e8f4f7,#f2f8fa);border:1px solid #c9dfe7;border-radius:20px;flex-wrap:wrap;align-items:center;gap:10px;padding:14px 16px;display:flex}.hydration-card .water-main{gap:12px;min-height:60px;padding:0}.water-main>span{gap:2px 6px}.water-main strong{letter-spacing:-.04em;color:#244e65;font-size:1.4rem}.water-main .check-label{color:#244e65;font-size:.9375rem;font-weight:650}.water-main small{color:#486776;font-size:.8125rem}.water-glass{color:#386d82;flex:none;width:42px;height:50px}.water-glass.large{width:64px;height:76px}.glass-shell{fill:#fff9}.glass-water{fill:#7bbbcf}.glass-wave{fill:#43859e;opacity:.5}.hydration-card .water-add{color:#285b76;background:#fff;border:1px solid #7d9faa;border-radius:14px;min-height:46px;padding:0 12px;font-size:.9375rem}.hydration-track{background:#cedfe6;border-radius:4px;flex-basis:100%;height:4px;overflow:hidden}.hydration-track>span{background:#477d95;border-radius:4px;height:100%;transition:width .2s;display:block}.checkin-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,8.25rem),1fr));gap:10px;margin-top:10px;display:grid}.checkin-card{border:1px solid var(--line);text-align:left;background:#fff;border-radius:20px;flex-direction:column;gap:7px;min-width:0;min-height:125px;padding:13px;display:flex;position:relative}.weight-card{color:#594c6d;background:linear-gradient(120deg,#f1edf6,#faf9fc);border-color:#ddd6e8}.activity-card{color:#70582b;background:linear-gradient(120deg,#f5eedf,#fbfaf4);border-color:#e9dfc6}.tile-heading{align-items:center;gap:6px;font-size:.875rem;font-weight:600;display:flex}.tile-heading .journal-icon:last-child{width:16px;height:16px;margin-left:auto}.checkin-card>strong{letter-spacing:-.03em;font-size:1.15rem;font-weight:700}.tile-context{color:var(--ink-soft);overflow-wrap:break-word;font-size:.75rem;line-height:1.4}.mini-trend{flex:none;width:100%;max-width:150px;height:32px;margin-top:auto;display:block}.activity-week{color:var(--ink-soft);margin-top:7px;padding-top:0;font-size:.8125rem}.activity-week>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:10px;min-height:44px;list-style:none;display:flex}.activity-week>summary::-webkit-details-marker{display:none}.activity-week>summary strong:after{content:" ⌄"}.activity-days{grid-template-columns:repeat(7,minmax(44px,1fr));gap:4px;margin:4px 0 8px;display:grid;overflow-x:auto}.activity-days>button{border:1px solid var(--line);background:var(--surface);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:1px;min-width:0;min-height:48px;font-size:.75rem;display:flex}.activity-days>button>span+span{font-size:.875rem;font-weight:650}.activity-days>.done{background:var(--teal);color:#fff;border-color:var(--teal)}.activity-days>.selected{outline:2px solid var(--ink-soft);outline-offset:1px}.activity-days>button:disabled{opacity:.45}.tracking-editor{gap:16px;display:grid}.tracking-date-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.date-field input{background:var(--surface-tint);border:0;border-radius:9px;max-width:100%;min-height:44px;padding:8px;font-size:.875rem}.water-overview{background:#eef7fa;border:1px solid #d5e6eb;border-radius:18px;align-items:center;gap:14px;padding:12px;display:flex}.water-overview>div,.weight-context>div{flex-direction:column;gap:2px;display:flex}.water-overview strong{letter-spacing:-.04em;color:#244e65;font-size:2rem}.water-overview .text-action{min-height:44px;padding:3px 0}.weight-context{background:var(--violet-soft);color:var(--violet);border-radius:18px;justify-content:space-between;align-items:center;gap:15px;padding:15px;display:flex}.weight-context strong{letter-spacing:-.03em;font-size:1.5rem}.weight-context small{color:var(--ink-soft);font-size:.8125rem}.weight-context>.mini-trend{max-width:120px}.amount-presets{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.amount-preset{background:var(--surface);color:#285b76;border:1px solid #adc5cf;border-radius:13px;flex-direction:column;align-items:center;gap:1px;min-height:58px;padding:9px 4px;display:flex}.amount-preset strong{font-size:1.2rem}.amount-preset span{font-size:.75rem}.amount-preset[aria-pressed=true]{background:#d8eaf1;border-color:#386d82;box-shadow:inset 0 0 0 1px #386d82}.number-stepper{grid-template-columns:46px minmax(0,1fr) 46px;align-items:stretch;gap:8px;display:grid}.number-stepper .tracking-number{text-align:center;letter-spacing:-.03em;min-height:60px;font-size:1.75rem}.step-control{border:1px solid var(--line-strong);background:var(--surface);border-radius:12px;font-size:1.5rem}.amount-preview{color:var(--ink-soft);justify-content:space-between;align-items:center;gap:8px;font-size:.875rem;display:flex}.amount-preview strong{color:var(--ink)}.workout-types{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.workout-type{border:1px solid var(--line-strong);background:var(--surface);border-radius:13px;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-height:65px;font-size:.875rem;display:flex}.workout-type[aria-pressed=true]{background:#f5ecd6;border-color:#8a713f;box-shadow:inset 0 0 0 1px #8a713f}.duration-presets{flex-wrap:wrap;gap:6px;display:flex}.duration-presets>.chip{flex:1;min-height:44px;font-size:.8125rem}.count-label{color:var(--ink-soft);padding:2px 6px;font-size:.75rem;font-weight:500;display:inline-flex}.record-button{border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;justify-content:space-between;align-items:center;gap:10px;width:100%;min-height:48px;font-size:.9375rem;display:flex}.record-button .journal-icon{width:16px;height:16px}.record-list{display:grid}.tracking-records{margin:0;padding-top:12px}.tracking-records>h3{margin-bottom:8px}.tracking-save-state{margin-top:5px;display:block}.diary-section{gap:12px;padding:2px 0}.diary-section>.section-head{margin-bottom:0}.meal-heading{color:var(--ink-soft);font-size:.9375rem}.meal-heading>.journal-icon{width:18px;height:18px}.diary-empty{background:#edf2e9;border:1px dashed #9ead9f;border-radius:18px;padding:14px 16px}.diary-empty>span{align-items:center;gap:8px;font-size:.9375rem;display:flex}.list{border-color:var(--line);border-radius:18px;box-shadow:0 2px 6px #193d3104}.list-row{gap:10px;min-height:60px;padding:12px 14px}.list-row .name{font-size:1rem;font-weight:600;line-height:1.35}.list-row .sub{font-size:.8125rem;line-height:1.45}.list-row:active{background:var(--surface-tint)}.list-row .row-main{padding-block:4px}.segmented{border:1px solid var(--line);background:#e9eee7;border-radius:14px;padding:3px}.segmented button{border-radius:10px;padding:4px 10px;font-size:.9375rem;font-weight:600}.segmented button[aria-pressed=true]{color:var(--teal-deep);box-shadow:0 1px 4px #193d3120}.bottom-nav{border-top:1px solid var(--line);max-width:720px;padding:6px 10px calc(7px + var(--safe-bottom));background:#fff;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;margin:auto;box-shadow:0 -4px 20px #183d3106}.bottom-nav a,.bottom-nav a.primary{min-height:53px;color:var(--ink-soft);background:0 0;border-radius:12px;gap:4px;padding:5px 2px;font-size:.8125rem;font-weight:650}.bottom-nav a>svg{width:21px;height:21px}.bottom-nav a.primary>svg{background:var(--teal);color:#fff;border-radius:9px;width:26px;height:26px;margin:-2px 0 -3px;padding:3px}.bottom-nav a[aria-current=page],.bottom-nav a.primary[aria-current=page]{color:var(--teal-deep);background:#e7f0e9}.progress-toolbar{gap:12px;margin-bottom:16px;display:grid}.metric-select{max-width:100%;display:block;position:relative}.metric-select>.journal-icon{pointer-events:none;color:var(--teal);position:absolute;top:14px;left:14px}.metric-select>.input{background:#fff;padding-left:44px;font-weight:600}.progress-toolbar>.segmented{grid-template-columns:repeat(3,1fr);width:100%;display:grid}.trend-panel{box-shadow:var(--shadow-soft);border-radius:23px;padding:16px}.progress-summary{grid-template-columns:1fr 1fr;gap:14px;margin:14px 0 3px;display:grid}.progress-summary>div{flex-direction:column;gap:3px;min-width:0;display:flex}.progress-summary strong{letter-spacing:-.04em;font-size:1.75rem;font-weight:700}.progress-summary strong small{letter-spacing:0;color:var(--ink-soft);font-size:.875rem;font-weight:500}.progress-summary>div+div{border-left:1px solid var(--line);padding-left:14px}.chart-basis{color:var(--ink-soft);margin-top:7px;font-size:.75rem;line-height:1.45}.interactive-chart{touch-action:pan-y;cursor:crosshair}.chart-axis{fill:#56685e;font-size:12px}.chart-grid{stroke:#e2e8df}.chart-selection{stroke:#d0dbd1;stroke-width:1px;stroke-dasharray:2 4}.chart-bar{fill:#4f8d79}.chart-bar.selected{fill:#205e4d}.chart-line{stroke-width:2px}.chart-halo{fill:none;stroke:var(--teal);opacity:.18;stroke-width:6px}.chart-point{fill:var(--teal)}.chart-target{stroke:#697868;stroke-width:1.5px;stroke-dasharray:4 4}.chart-readout{background:#f0f4ed;border-radius:12px;min-height:50px;margin-top:7px;padding:1px 3px}.chart-readout>span{gap:4px 10px}.chart-slider{display:block}.chart-slider input{width:100%;height:32px;accent-color:var(--teal);cursor:pointer;margin:2px 0}.chart-meta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.chart-meta .chart-legend{justify-content:flex-start;font-size:.75rem}.chart-meta .text-action{font-size:.8125rem}.chart-empty{flex-direction:column;align-items:center;gap:8px;padding:32px 10px;display:flex}.chart-empty .journal-icon{width:36px;height:36px;color:var(--teal)}.chart-empty span{font-size:.8125rem}.table-scroll{max-height:360px;overflow:auto}.data-table th{z-index:1;position:sticky;top:0}.data-table{font-size:.8125rem}.progress-log{margin-top:12px}.report-entry{text-align:left;background:#eaf0e4;border:1px solid #d5dfcf;border-radius:19px;align-items:center;gap:12px;width:100%;margin:16px 0 5px;padding:16px;display:flex}.report-entry>span:nth-child(2){flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.report-entry strong{font-size:.9375rem}.report-entry small{color:var(--ink-soft);font-size:.8125rem}.feature-icon{width:42px;height:42px;color:var(--teal);background:#fff;border-radius:12px;flex:none;place-items:center;display:grid}.sheet{background:var(--bg);border:1px solid #d9e1d7;border-bottom:0;border-radius:25px 25px 0 0;box-shadow:0 -12px 40px #142c3326}.sheet-head{background:var(--surface);border-bottom:1px solid var(--line);border-radius:24px 24px 0 0;gap:10px;min-height:60px;padding:8px 12px 8px 20px}.sheet-head h2{letter-spacing:-.025em;overflow-wrap:break-word;font-size:1.125rem}.sheet-head .btn{font-size:.9375rem}.sheet-body{padding:18px}.sheet-foot{background:var(--surface);padding:12px 18px calc(12px + var(--safe-bottom));box-shadow:0 -3px 10px #142c3305}.sheet-body .consequence{background:#eaf1e7;border:1px solid #d6e2cf;border-radius:16px;padding:13px}.sheet-body .consequence .adds{font-size:.875rem}.sheet-body .consequence .after .num{font-size:1.125rem}.sheet-body .consequence .caption{font-size:.75rem}.chips{gap:7px}.chip{border-radius:12px;min-height:44px;font-size:.9375rem;font-weight:550}.compact-details{margin-top:6px}.compact-details>summary{min-height:46px;font-size:.9375rem}.toast{opacity:1;border-radius:14px;font-size:.9375rem;animation:none;box-shadow:0 5px 25px #162f2a26}.toasts{bottom:calc(var(--nav-h) + 8px)}.empty{background:#eef2e9;border:1px dashed #aebcab;border-radius:18px;padding:20px;font-size:.9375rem}.settings-links{box-shadow:var(--shadow-soft);border-radius:19px}.settings-link{min-height:58px}.settings-section{background:0 0}.settings-section>summary{font-size:1rem}@supports (container-type:inline-size){.today-screen,.tracking-editor,.progress-screen{container-type:inline-size}@container (width<=19rem){.macro-board{grid-template-columns:1fr;gap:15px}.macro{text-align:left;grid-template-columns:1fr 1fr;align-items:center;display:grid}.macro-head{align-items:flex-start}.macro-ring-area{grid-area:1/2/span 2;justify-self:end;max-width:90px}.today-screen .macro-fig.right{justify-content:flex-start}.macro-note{grid-column:1/-1;font-size:.8125rem}.macro-goal{font-size:.8125rem}.amount-presets,.workout-types{grid-template-columns:repeat(2,minmax(0,1fr))}.progress-summary{grid-template-columns:1fr}.progress-summary>div+div{border-left:0;border-top:1px solid var(--line);padding:10px 0 0}.checkin-grid{grid-template-columns:1fr}}}@media (max-width:360px){:root{--gutter:12px}.today-screen .goals{padding:12px}.macro-board{gap:6px}.macro-ring-area .macro-fig b{font-size:1.25rem}.bottom-nav a{font-size:.6875rem}.checkin-card{padding:11px}.daily-panel>.section-head{flex-wrap:wrap}}@media (min-width:900px){.screen{padding-top:28px}.today-screen .goals{padding:20px}.macro-ring-area{max-width:118px}.macro-ring-area .macro-fig b{font-size:1.625rem}.progress-toolbar{grid-template-columns:1fr 1fr;align-items:center}}@media (prefers-reduced-motion:reduce){.ring-progress,.hydration-track>span{transition:none}}.library-tabs .count-label{background:#dbe6d8;border-radius:6px;margin-left:2px;padding:0 4px;font-size:.6875rem}.library-tools{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.library-tools>.search-field{flex:12em}.library-tools>.btn{flex:none;padding:0 12px;font-size:.875rem}.search-field{min-width:0;position:relative}.search-field>.journal-icon{color:var(--ink-soft);pointer-events:none;position:absolute;top:14px;left:13px}.search-field>.input{padding-left:42px;padding-right:38px}.search-field>button{width:44px;height:44px;color:var(--ink-soft);background:0 0;border:0;border-radius:10px;font-size:1.5rem;position:absolute;top:2px;right:3px}.library-list{gap:9px;margin-top:10px;display:grid}.library-row{border:1px solid var(--line);background:#fff;border-radius:18px;align-items:center;gap:10px;padding:13px 10px 13px 13px;display:flex;box-shadow:0 2px 9px #173d3105}.library-symbol{width:35px;height:39px;color:var(--teal);background:#eff3e9;border-radius:11px;flex:none;place-items:center;display:grid}.library-item{text-align:left;background:0 0;border:0;flex-direction:column;flex:1;gap:4px;min-width:0;min-height:48px;padding:0;display:flex}.library-item strong{overflow-wrap:break-word;font-size:1rem;font-weight:650;line-height:1.35}.library-item>span{color:var(--ink-soft);font-size:.8125rem}.library-item>small{color:var(--teal-deep);font-size:.75rem;line-height:1.5}.library-add{width:46px;min-height:56px;color:var(--teal-deep);background:#eaf2e9;border:1px solid #c9dacf;border-radius:13px;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:2px;font-size:.75rem;font-weight:650;display:flex}.library-add .journal-icon{width:20px;height:20px}.library-item:focus-visible{outline-offset:5px}.library-row .library-add:disabled{opacity:.5}.library-empty{text-align:center;background:#edf2e8;border:1px dashed #aebcab;border-radius:22px;flex-direction:column;align-items:center;gap:12px;padding:28px 22px;display:flex}.empty-emblem{width:64px;height:64px;color:var(--teal);background:#fff;border-radius:21px;place-items:center;display:grid}.empty-emblem>.journal-icon{width:33px;height:33px}.library-empty h2{font-size:1.2rem}.library-empty p{color:var(--ink-soft);font-size:.875rem;line-height:1.5}.library-empty>.btn{margin-top:3px}.library-empty>.text-action{text-align:center}.food-settings>summary{align-items:center;gap:8px;display:flex}.food-settings>summary:after{content:"+";color:var(--ink-soft);margin-left:auto;font-size:1.1rem}.food-settings[open]>summary:after{content:"−"}.food-settings>div{padding:4px 0 12px}.food-settings summary::-webkit-details-marker{display:none}.goal-jumps{flex-wrap:wrap;gap:6px;margin:6px 0 16px;display:flex}.goal-jumps>button{border:1px solid var(--line-strong);min-height:44px;color:var(--teal-deep);background:#fff;border-radius:12px;padding:6px 12px;font-size:.8125rem;font-weight:600}.goal-section{border:1px solid var(--line);background:#fff;border-radius:19px;margin:0 0 12px;padding:16px;scroll-margin-top:16px}.goal-section h2{align-items:center;gap:7px;font-size:1.0625rem;display:flex}.goal-section h2 .journal-icon{color:var(--teal)}.goal-fields .field{font-size:.8125rem;font-weight:550}.goal-fields .input{font-size:1.125rem;font-weight:600}.goal-fields{gap:10px}.goal-fields.pair{align-items:start}.water-goal-card{border-top:3px solid #82afc1}.weight-goal-card{border-top:3px solid #ad9ec1}.workout-goal-card{border-top:3px solid #c6ae78}.goals-editor>.check-line{margin:0 0 14px;font-size:.875rem}.goals-screen{padding-bottom:calc(var(--nav-h) + 105px)}.page-save-bar{left:0;right:0;bottom:var(--nav-h);background:var(--bg);border-top:1px solid var(--line);z-index:22;max-width:720px;margin:auto;padding:10px 18px;position:fixed}.page-save-bar .btn{min-height:48px}.goals-editor:has(.error-text) .page-save-bar{border-top-color:var(--danger-ink)}.food-search-field>.input{border-width:1px;min-height:54px;font-size:1.0625rem;box-shadow:0 3px 10px #193d3106}.food-search-field>.journal-icon{top:17px}.food-search-field>button{top:5px}.describe-btn{gap:7px;margin-top:8px;padding:0 3px;font-size:.875rem;display:flex}.describe-btn>.journal-icon{width:18px;height:18px}.food-entry-methods{grid-template-columns:1fr 1fr;gap:10px;display:grid}.food-entry-methods>.btn{justify-content:flex-start;gap:10px;min-height:54px;padding:0 12px;font-size:.875rem}.food-entry-methods>.btn>svg{width:23px;height:23px;color:var(--teal)}.search-start{text-align:center;color:var(--ink-soft);flex-direction:column;align-items:center;gap:9px;padding:32px 12px;font-size:.875rem;display:flex}.search-start>.journal-icon{width:35px;height:35px;color:var(--teal)}.search-start>strong{color:var(--ink);font-size:1.15rem}@media (max-width:360px){.library-row{gap:7px;padding-left:10px}.library-symbol{display:none}.library-tabs button{padding-inline:7px}.library-tabs .count-label{display:none}}@supports (container-type:inline-size){.library-screen,.add-screen{container-type:inline-size}@container (width<=19rem){.food-entry-methods{grid-template-columns:1fr}.library-row{flex-wrap:wrap}.library-symbol{display:none}.library-item{flex-basis:calc(100% - 60px)}.goal-fields.pair{grid-template-columns:1fr}}}.journal-toolbar>.btn,.date-control,.today-screen .target-profile,.daily-panel>.section-head>.btn,.activity-week>summary,.duration-presets>.chip,.water-overview .text-action,.chart-slider input{min-height:44px}.activity-days{grid-template-columns:repeat(7,minmax(44px,1fr));overflow-x:auto}.journal-profile{background:#e9f0e6;border:1px solid #d7e2d1;border-radius:18px;align-items:center;gap:12px;padding:16px;display:flex}.journal-profile>span{width:47px;height:47px;color:var(--teal-deep);background:#fff;border-radius:16px;place-items:center;font-size:1.3rem;font-weight:650;display:grid}.journal-profile>div{flex-direction:column;gap:3px;display:flex}.journal-profile small{color:var(--ink-soft);font-size:.8125rem}.settings-link{gap:12px}.settings-link>strong{flex:1}.settings-link>.journal-icon{color:var(--teal)}.settings-link>span:last-child{color:var(--ink-soft)}.tracking-editor .tracking-record .row-main{flex-direction:column;flex:1;align-items:flex-start;min-width:0;margin:0;padding:8px 0;display:flex}.tracking-editor .tracking-record{gap:10px;padding:4px 0}.tracking-editor .tracking-record>.btn{flex-shrink:0}.tracking-date-row{gap:6px}.date-field{min-width:0}.date-field input{min-width:0;max-width:100%}.goals-editor .page-save-bar .error-text{margin:0 0 8px;font-size:.875rem}.builder-ingredient{border-bottom:1px solid var(--line);gap:10px;padding:13px;display:grid}.builder-ingredient:last-child{border-bottom:0}.builder-ingredient-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.builder-ingredient-head strong{overflow-wrap:break-word;min-width:0;font-size:1rem}.builder-ingredient-head>.icon-btn{color:var(--danger-ink);flex:none;width:44px;height:44px}.remove-mark{transform:rotate(45deg)}.builder-quantity{grid-template-columns:minmax(65px,1fr) minmax(95px,2fr);gap:10px;display:grid}.builder-quantity>.field{min-width:0}.ingredient-macros{color:var(--ink-soft);font-size:.8125rem}.builder-totals{background:var(--teal-soft);border-radius:15px;gap:5px;padding:13px 15px;display:grid}.builder-totals strong{font-size:.9375rem;font-weight:600;line-height:1.5}.toast{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:6px;max-width:min(560px,100%);padding:4px 6px 4px 14px;display:grid}.toast>.toast-message{overflow-wrap:anywhere;padding:4px 0;line-height:1.35}.toast .toast-action{margin:0;padding-inline:12px}.toast .toast-dismiss{background:0 0;grid-column:3;place-items:center;min-width:44px;min-height:44px;margin:0;padding:0;display:grid}.toast .toast-dismiss:focus-visible{outline-color:#fff}
